-- | 'Vpc' constructor.
--
-- The fields accessible through corresponding lenses are:
--
-- * 'vpcCidrBlock' @::@ 'Text'
--
-- * 'vpcDhcpOptionsId' @::@ 'Text'
--
-- * 'vpcInstanceTenancy' @::@ 'Tenancy'
--
-- * 'vpcIsDefault' @::@ 'Bool'
--
-- * 'vpcState' @::@ 'VpcState'
--
-- * 'vpcTags' @::@ ['Tag']
--
-- * 'vpcVpcId' @::@ 'Text'
--
vpc :: Text -- ^ 'vpcVpcId'
    -> VpcState -- ^ 'vpcState'
    -> Text -- ^ 'vpcCidrBlock'
    -> Text -- ^ 'vpcDhcpOptionsId'
    -> Tenancy -- ^ 'vpcInstanceTenancy'
    -> Bool -- ^ 'vpcIsDefault'
    -> Vpc
vpc p1 p2 p3 p4 p5 p6 = Vpc
    { _vpcVpcId           = p1
    , _vpcState           = p2
    , _vpcCidrBlock       = p3
    , _vpcDhcpOptionsId   = p4
    , _vpcInstanceTenancy = p5
    , _vpcIsDefault       = p6
    , _vpcTags            = mempty
    }
vpc :: Text -- ^ 'vpcVpcId'
    -> VpcState -- ^ 'vpcState'
    -> Text -- ^ 'vpcCidrBlock'
    -> Text -- ^ 'vpcDhcpOptionsId'
    -> Tenancy -- ^ 'vpcInstanceTenancy'
    -> Bool -- ^ 'vpcIsDefault'
    -> Vpc
vpc p1 p2 p3 p4 p5 p6 = Vpc
    { _vpcVpcId           = p1
    , _vpcState           = p2
    , _vpcCidrBlock       = p3
    , _vpcDhcpOptionsId   = p4
    , _vpcInstanceTenancy = p5
    , _vpcIsDefault       = p6
    , _vpcTags            = mempty
    }
vpc p1 p2 p3 p4 p5 p6 = Vpc
    { _vpcVpcId           = p1
    , _vpcState           = p2
    , _vpcCidrBlock       = p3
    , _vpcDhcpOptionsId   = p4
    , _vpcInstanceTenancy = p5
    , _vpcIsDefault       = p6
    , _vpcTags            = mempty
    }