{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# OPTIONS_GHC -fno-warn-missing-fields #-}
{-# OPTIONS_GHC -fno-warn-missing-signatures #-}
{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
-----------------------------------------------------------------
-- Autogenerated by Thrift Compiler (0.10.0) --
-- --
-- DO NOT EDIT UNLESS YOU ARE SURE YOU KNOW WHAT YOU ARE DOING --
-----------------------------------------------------------------
module Email_Types where
import Prelude (($), (.), (>>=), (==), (++))
import qualified Prelude as P
import qualified Control.Exception as X
import qualified Control.Monad as M ( liftM, ap, when )
import Data.Functor ( (<$>) )
import qualified Data.ByteString.Lazy as LBS
import qualified Data.Hashable as H
import qualified Data.Int as I
import qualified Data.Maybe as M (catMaybes)
import qualified Data.Text.Lazy.Encoding as E ( decodeUtf8, encodeUtf8 )
import qualified Data.Text.Lazy as LT
import qualified GHC.Generics as G (Generic)
import qualified Data.Typeable as TY ( Typeable )
import qualified Data.HashMap.Strict as Map
import qualified Data.HashSet as Set
import qualified Data.Vector as Vector
import qualified Test.QuickCheck.Arbitrary as QC ( Arbitrary(..) )
import qualified Test.QuickCheck as QC ( elements )
import qualified Thrift as T
import qualified Thrift.Types as T
import qualified Thrift.Arbitraries as T
data EmailAddress = EmailAddress { emailAddress_address :: P.Maybe LT.Text
, emailAddress_displayName :: P.Maybe LT.Text
} deriving (P.Show,P.Eq,G.Generic,TY.Typeable)
instance H.Hashable EmailAddress where
hashWithSalt salt record = salt `H.hashWithSalt` emailAddress_address record `H.hashWithSalt` emailAddress_displayName record
instance QC.Arbitrary EmailAddress where
arbitrary = M.liftM EmailAddress (M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
shrink obj | obj == default_EmailAddress = []
| P.otherwise = M.catMaybes
[ if obj == default_EmailAddress{emailAddress_address = emailAddress_address obj} then P.Nothing else P.Just $ default_EmailAddress{emailAddress_address = emailAddress_address obj}
, if obj == default_EmailAddress{emailAddress_displayName = emailAddress_displayName obj} then P.Nothing else P.Just $ default_EmailAddress{emailAddress_displayName = emailAddress_displayName obj}
]
from_EmailAddress :: EmailAddress -> T.ThriftVal
from_EmailAddress record = T.TStruct $ Map.fromList $ M.catMaybes
[ (\_v2 -> (1, ("address",T.TString $ E.encodeUtf8 _v2))) <$> emailAddress_address record
, (\_v2 -> (2, ("displayName",T.TString $ E.encodeUtf8 _v2))) <$> emailAddress_displayName record
]
write_EmailAddress :: (T.Protocol p, T.Transport t) => p t -> EmailAddress -> P.IO ()
write_EmailAddress oprot record = T.writeVal oprot $ from_EmailAddress record
encode_EmailAddress :: (T.Protocol p, T.Transport t) => p t -> EmailAddress -> LBS.ByteString
encode_EmailAddress oprot record = T.serializeVal oprot $ from_EmailAddress record
to_EmailAddress :: T.ThriftVal -> EmailAddress
to_EmailAddress (T.TStruct fields) = EmailAddress{
emailAddress_address = P.maybe (P.Nothing) (\(_,_val4) -> P.Just (case _val4 of {T.TString _val5 -> E.decodeUtf8 _val5; _ -> P.error "wrong type"})) (Map.lookup (1) fields),
emailAddress_displayName = P.maybe (P.Nothing) (\(_,_val4) -> P.Just (case _val4 of {T.TString _val6 -> E.decodeUtf8 _val6; _ -> P.error "wrong type"})) (Map.lookup (2) fields)
}
to_EmailAddress _ = P.error "not a struct"
read_EmailAddress :: (T.Transport t, T.Protocol p) => p t -> P.IO EmailAddress
read_EmailAddress iprot = to_EmailAddress <$> T.readVal iprot (T.T_STRUCT typemap_EmailAddress)
decode_EmailAddress :: (T.Protocol p, T.Transport t) => p t -> LBS.ByteString -> EmailAddress
decode_EmailAddress iprot bs = to_EmailAddress $ T.deserializeVal iprot (T.T_STRUCT typemap_EmailAddress) bs
typemap_EmailAddress :: T.TypeMap
typemap_EmailAddress = Map.fromList [(1,("address",T.T_STRING)),(2,("displayName",T.T_STRING))]
default_EmailAddress :: EmailAddress
default_EmailAddress = EmailAddress{
emailAddress_address = P.Nothing,
emailAddress_displayName = P.Nothing}
data EmailCommunicationInfo = EmailCommunicationInfo { emailCommunicationInfo_messageId :: P.Maybe LT.Text
, emailCommunicationInfo_contentType :: P.Maybe LT.Text
, emailCommunicationInfo_userAgent :: P.Maybe LT.Text
, emailCommunicationInfo_inReplyToList :: P.Maybe (Vector.Vector LT.Text)
, emailCommunicationInfo_referenceList :: P.Maybe (Vector.Vector LT.Text)
, emailCommunicationInfo_senderAddress :: P.Maybe EmailAddress
, emailCommunicationInfo_returnPathAddress :: P.Maybe EmailAddress
, emailCommunicationInfo_toAddressList :: P.Maybe (Vector.Vector EmailAddress)
, emailCommunicationInfo_ccAddressList :: P.Maybe (Vector.Vector EmailAddress)
, emailCommunicationInfo_bccAddressList :: P.Maybe (Vector.Vector EmailAddress)
, emailCommunicationInfo_emailFolder :: P.Maybe LT.Text
, emailCommunicationInfo_subject :: P.Maybe LT.Text
, emailCommunicationInfo_quotedAddresses :: P.Maybe (Vector.Vector LT.Text)
, emailCommunicationInfo_attachmentPaths :: P.Maybe (Vector.Vector LT.Text)
, emailCommunicationInfo_salutation :: P.Maybe LT.Text
, emailCommunicationInfo_signature :: P.Maybe LT.Text
} deriving (P.Show,P.Eq,G.Generic,TY.Typeable)
instance H.Hashable EmailCommunicationInfo where
hashWithSalt salt record = salt `H.hashWithSalt` emailCommunicationInfo_messageId record `H.hashWithSalt` emailCommunicationInfo_contentType record `H.hashWithSalt` emailCommunicationInfo_userAgent record `H.hashWithSalt` emailCommunicationInfo_inReplyToList record `H.hashWithSalt` emailCommunicationInfo_referenceList record `H.hashWithSalt` emailCommunicationInfo_senderAddress record `H.hashWithSalt` emailCommunicationInfo_returnPathAddress record `H.hashWithSalt` emailCommunicationInfo_toAddressList record `H.hashWithSalt` emailCommunicationInfo_ccAddressList record `H.hashWithSalt` emailCommunicationInfo_bccAddressList record `H.hashWithSalt` emailCommunicationInfo_emailFolder record `H.hashWithSalt` emailCommunicationInfo_subject record `H.hashWithSalt` emailCommunicationInfo_quotedAddresses record `H.hashWithSalt` emailCommunicationInfo_attachmentPaths record `H.hashWithSalt` emailCommunicationInfo_salutation record `H.hashWithSalt` emailCommunicationInfo_signature record
instance QC.Arbitrary EmailCommunicationInfo where
arbitrary = M.liftM EmailCommunicationInfo (M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
`M.ap`(M.liftM P.Just QC.arbitrary)
shrink obj | obj == default_EmailCommunicationInfo = []
| P.otherwise = M.catMaybes
[ if obj == default_EmailCommunicationInfo{emailCommunicationInfo_messageId = emailCommunicationInfo_messageId obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_messageId = emailCommunicationInfo_messageId obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_contentType = emailCommunicationInfo_contentType obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_contentType = emailCommunicationInfo_contentType obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_userAgent = emailCommunicationInfo_userAgent obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_userAgent = emailCommunicationInfo_userAgent obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_inReplyToList = emailCommunicationInfo_inReplyToList obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_inReplyToList = emailCommunicationInfo_inReplyToList obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_referenceList = emailCommunicationInfo_referenceList obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_referenceList = emailCommunicationInfo_referenceList obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_senderAddress = emailCommunicationInfo_senderAddress obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_senderAddress = emailCommunicationInfo_senderAddress obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_returnPathAddress = emailCommunicationInfo_returnPathAddress obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_returnPathAddress = emailCommunicationInfo_returnPathAddress obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_toAddressList = emailCommunicationInfo_toAddressList obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_toAddressList = emailCommunicationInfo_toAddressList obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_ccAddressList = emailCommunicationInfo_ccAddressList obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_ccAddressList = emailCommunicationInfo_ccAddressList obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_bccAddressList = emailCommunicationInfo_bccAddressList obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_bccAddressList = emailCommunicationInfo_bccAddressList obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_emailFolder = emailCommunicationInfo_emailFolder obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_emailFolder = emailCommunicationInfo_emailFolder obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_subject = emailCommunicationInfo_subject obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_subject = emailCommunicationInfo_subject obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_quotedAddresses = emailCommunicationInfo_quotedAddresses obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_quotedAddresses = emailCommunicationInfo_quotedAddresses obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_attachmentPaths = emailCommunicationInfo_attachmentPaths obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_attachmentPaths = emailCommunicationInfo_attachmentPaths obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_salutation = emailCommunicationInfo_salutation obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_salutation = emailCommunicationInfo_salutation obj}
, if obj == default_EmailCommunicationInfo{emailCommunicationInfo_signature = emailCommunicationInfo_signature obj} then P.Nothing else P.Just $ default_EmailCommunicationInfo{emailCommunicationInfo_signature = emailCommunicationInfo_signature obj}
]
from_EmailCommunicationInfo :: EmailCommunicationInfo -> T.ThriftVal
from_EmailCommunicationInfo record = T.TStruct $ Map.fromList $ M.catMaybes
[ (\_v9 -> (1, ("messageId",T.TString $ E.encodeUtf8 _v9))) <$> emailCommunicationInfo_messageId record
, (\_v9 -> (2, ("contentType",T.TString $ E.encodeUtf8 _v9))) <$> emailCommunicationInfo_contentType record
, (\_v9 -> (3, ("userAgent",T.TString $ E.encodeUtf8 _v9))) <$> emailCommunicationInfo_userAgent record
, (\_v9 -> (4, ("inReplyToList",T.TList T.T_STRING $ P.map (\_v11 -> T.TString $ E.encodeUtf8 _v11) $ Vector.toList _v9))) <$> emailCommunicationInfo_inReplyToList record
, (\_v9 -> (5, ("referenceList",T.TList T.T_STRING $ P.map (\_v13 -> T.TString $ E.encodeUtf8 _v13) $ Vector.toList _v9))) <$> emailCommunicationInfo_referenceList record
, (\_v9 -> (6, ("senderAddress",from_EmailAddress _v9))) <$> emailCommunicationInfo_senderAddress record
, (\_v9 -> (7, ("returnPathAddress",from_EmailAddress _v9))) <$> emailCommunicationInfo_returnPathAddress record
, (\_v9 -> (8, ("toAddressList",T.TList (T.T_STRUCT typemap_EmailAddress) $ P.map (\_v15 -> from_EmailAddress _v15) $ Vector.toList _v9))) <$> emailCommunicationInfo_toAddressList record
, (\_v9 -> (9, ("ccAddressList",T.TList (T.T_STRUCT typemap_EmailAddress) $ P.map (\_v17 -> from_EmailAddress _v17) $ Vector.toList _v9))) <$> emailCommunicationInfo_ccAddressList record
, (\_v9 -> (10, ("bccAddressList",T.TList (T.T_STRUCT typemap_EmailAddress) $ P.map (\_v19 -> from_EmailAddress _v19) $ Vector.toList _v9))) <$> emailCommunicationInfo_bccAddressList record
, (\_v9 -> (11, ("emailFolder",T.TString $ E.encodeUtf8 _v9))) <$> emailCommunicationInfo_emailFolder record
, (\_v9 -> (12, ("subject",T.TString $ E.encodeUtf8 _v9))) <$> emailCommunicationInfo_subject record
, (\_v9 -> (13, ("quotedAddresses",T.TList T.T_STRING $ P.map (\_v21 -> T.TString $ E.encodeUtf8 _v21) $ Vector.toList _v9))) <$> emailCommunicationInfo_quotedAddresses record
, (\_v9 -> (14, ("attachmentPaths",T.TList T.T_STRING $ P.map (\_v23 -> T.TString $ E.encodeUtf8 _v23) $ Vector.toList _v9))) <$> emailCommunicationInfo_attachmentPaths record
, (\_v9 -> (15, ("salutation",T.TString $ E.encodeUtf8 _v9))) <$> emailCommunicationInfo_salutation record
, (\_v9 -> (16, ("signature",T.TString $ E.encodeUtf8 _v9))) <$> emailCommunicationInfo_signature record
]
write_EmailCommunicationInfo :: (T.Protocol p, T.Transport t) => p t -> EmailCommunicationInfo -> P.IO ()
write_EmailCommunicationInfo oprot record = T.writeVal oprot $ from_EmailCommunicationInfo record
encode_EmailCommunicationInfo :: (T.Protocol p, T.Transport t) => p t -> EmailCommunicationInfo -> LBS.ByteString
encode_EmailCommunicationInfo oprot record = T.serializeVal oprot $ from_EmailCommunicationInfo record
to_EmailCommunicationInfo :: T.ThriftVal -> EmailCommunicationInfo
to_EmailCommunicationInfo (T.TStruct fields) = EmailCommunicationInfo{
emailCommunicationInfo_messageId = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TString _val26 -> E.decodeUtf8 _val26; _ -> P.error "wrong type"})) (Map.lookup (1) fields),
emailCommunicationInfo_contentType = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TString _val27 -> E.decodeUtf8 _val27; _ -> P.error "wrong type"})) (Map.lookup (2) fields),
emailCommunicationInfo_userAgent = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TString _val28 -> E.decodeUtf8 _val28; _ -> P.error "wrong type"})) (Map.lookup (3) fields),
emailCommunicationInfo_inReplyToList = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TList _ _val29 -> (Vector.fromList $ P.map (\_v30 -> (case _v30 of {T.TString _val31 -> E.decodeUtf8 _val31; _ -> P.error "wrong type"})) _val29); _ -> P.error "wrong type"})) (Map.lookup (4) fields),
emailCommunicationInfo_referenceList = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TList _ _val32 -> (Vector.fromList $ P.map (\_v33 -> (case _v33 of {T.TString _val34 -> E.decodeUtf8 _val34; _ -> P.error "wrong type"})) _val32); _ -> P.error "wrong type"})) (Map.lookup (5) fields),
emailCommunicationInfo_senderAddress = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TStruct _val35 -> (to_EmailAddress (T.TStruct _val35)); _ -> P.error "wrong type"})) (Map.lookup (6) fields),
emailCommunicationInfo_returnPathAddress = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TStruct _val36 -> (to_EmailAddress (T.TStruct _val36)); _ -> P.error "wrong type"})) (Map.lookup (7) fields),
emailCommunicationInfo_toAddressList = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TList _ _val37 -> (Vector.fromList $ P.map (\_v38 -> (case _v38 of {T.TStruct _val39 -> (to_EmailAddress (T.TStruct _val39)); _ -> P.error "wrong type"})) _val37); _ -> P.error "wrong type"})) (Map.lookup (8) fields),
emailCommunicationInfo_ccAddressList = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TList _ _val40 -> (Vector.fromList $ P.map (\_v41 -> (case _v41 of {T.TStruct _val42 -> (to_EmailAddress (T.TStruct _val42)); _ -> P.error "wrong type"})) _val40); _ -> P.error "wrong type"})) (Map.lookup (9) fields),
emailCommunicationInfo_bccAddressList = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TList _ _val43 -> (Vector.fromList $ P.map (\_v44 -> (case _v44 of {T.TStruct _val45 -> (to_EmailAddress (T.TStruct _val45)); _ -> P.error "wrong type"})) _val43); _ -> P.error "wrong type"})) (Map.lookup (10) fields),
emailCommunicationInfo_emailFolder = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TString _val46 -> E.decodeUtf8 _val46; _ -> P.error "wrong type"})) (Map.lookup (11) fields),
emailCommunicationInfo_subject = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TString _val47 -> E.decodeUtf8 _val47; _ -> P.error "wrong type"})) (Map.lookup (12) fields),
emailCommunicationInfo_quotedAddresses = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TList _ _val48 -> (Vector.fromList $ P.map (\_v49 -> (case _v49 of {T.TString _val50 -> E.decodeUtf8 _val50; _ -> P.error "wrong type"})) _val48); _ -> P.error "wrong type"})) (Map.lookup (13) fields),
emailCommunicationInfo_attachmentPaths = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TList _ _val51 -> (Vector.fromList $ P.map (\_v52 -> (case _v52 of {T.TString _val53 -> E.decodeUtf8 _val53; _ -> P.error "wrong type"})) _val51); _ -> P.error "wrong type"})) (Map.lookup (14) fields),
emailCommunicationInfo_salutation = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TString _val54 -> E.decodeUtf8 _val54; _ -> P.error "wrong type"})) (Map.lookup (15) fields),
emailCommunicationInfo_signature = P.maybe (P.Nothing) (\(_,_val25) -> P.Just (case _val25 of {T.TString _val55 -> E.decodeUtf8 _val55; _ -> P.error "wrong type"})) (Map.lookup (16) fields)
}
to_EmailCommunicationInfo _ = P.error "not a struct"
read_EmailCommunicationInfo :: (T.Transport t, T.Protocol p) => p t -> P.IO EmailCommunicationInfo
read_EmailCommunicationInfo iprot = to_EmailCommunicationInfo <$> T.readVal iprot (T.T_STRUCT typemap_EmailCommunicationInfo)
decode_EmailCommunicationInfo :: (T.Protocol p, T.Transport t) => p t -> LBS.ByteString -> EmailCommunicationInfo
decode_EmailCommunicationInfo iprot bs = to_EmailCommunicationInfo $ T.deserializeVal iprot (T.T_STRUCT typemap_EmailCommunicationInfo) bs
typemap_EmailCommunicationInfo :: T.TypeMap
typemap_EmailCommunicationInfo = Map.fromList [(1,("messageId",T.T_STRING)),(2,("contentType",T.T_STRING)),(3,("userAgent",T.T_STRING)),(4,("inReplyToList",(T.T_LIST T.T_STRING))),(5,("referenceList",(T.T_LIST T.T_STRING))),(6,("senderAddress",(T.T_STRUCT typemap_EmailAddress))),(7,("returnPathAddress",(T.T_STRUCT typemap_EmailAddress))),(8,("toAddressList",(T.T_LIST (T.T_STRUCT typemap_EmailAddress)))),(9,("ccAddressList",(T.T_LIST (T.T_STRUCT typemap_EmailAddress)))),(10,("bccAddressList",(T.T_LIST (T.T_STRUCT typemap_EmailAddress)))),(11,("emailFolder",T.T_STRING)),(12,("subject",T.T_STRING)),(13,("quotedAddresses",(T.T_LIST T.T_STRING))),(14,("attachmentPaths",(T.T_LIST T.T_STRING))),(15,("salutation",T.T_STRING)),(16,("signature",T.T_STRING))]
default_EmailCommunicationInfo :: EmailCommunicationInfo
default_EmailCommunicationInfo = EmailCommunicationInfo{
emailCommunicationInfo_messageId = P.Nothing,
emailCommunicationInfo_contentType = P.Nothing,
emailCommunicationInfo_userAgent = P.Nothing,
emailCommunicationInfo_inReplyToList = P.Nothing,
emailCommunicationInfo_referenceList = P.Nothing,
emailCommunicationInfo_senderAddress = P.Nothing,
emailCommunicationInfo_returnPathAddress = P.Nothing,
emailCommunicationInfo_toAddressList = P.Nothing,
emailCommunicationInfo_ccAddressList = P.Nothing,
emailCommunicationInfo_bccAddressList = P.Nothing,
emailCommunicationInfo_emailFolder = P.Nothing,
emailCommunicationInfo_subject = P.Nothing,
emailCommunicationInfo_quotedAddresses = P.Nothing,
emailCommunicationInfo_attachmentPaths = P.Nothing,
emailCommunicationInfo_salutation = P.Nothing,
emailCommunicationInfo_signature = P.Nothing}