func (o *LinkTokenCreateRequestAccountSubtypes) GetInvestmentOk() (*map[string]map[string]interface{}, bool) {
	if o == nil || o.Investment == nil {
		return nil, false
	}
	return o.Investment, true
}
GetInvestmentOk returns a tuple with the Investment field value if set, nil otherwise
and a boolean to check if the value has been set.
package plaid
import (
	"encoding/json"
)
type LinkTokenCreateRequestAccountSubtypes struct {
	Depository *map[string]map[string]interface{} `json:"depository,omitempty"`
	Credit *map[string]map[string]interface{} `json:"credit,omitempty"`
	Loan *map[string]map[string]interface{} `json:"loan,omitempty"`
	Investment *map[string]map[string]interface{} `json:"investment,omitempty"`
}
func NewLinkTokenCreateRequestAccountSubtypes() *LinkTokenCreateRequestAccountSubtypes {
	this := LinkTokenCreateRequestAccountSubtypes{}
	return &this
}
func NewLinkTokenCreateRequestAccountSubtypesWithDefaults() *LinkTokenCreateRequestAccountSubtypes {
	this := LinkTokenCreateRequestAccountSubtypes{}
	return &this
}
func (o *LinkTokenCreateRequestAccountSubtypes) GetDepository() map[string]map[string]interface{} {
	if o == nil || o.Depository == nil {
		var ret map[string]map[string]interface{}
		return ret
	}
	return *o.Depository
}
func (o *LinkTokenCreateRequestAccountSubtypes) GetDepositoryOk() (*map[string]map[string]interface{}, bool) {
	if o == nil || o.Depository == nil {
		return nil, false
	}
	return o.Depository, true
}
func (o *LinkTokenCreateRequestAccountSubtypes) HasDepository() bool {
	if o != nil && o.Depository != nil {
		return true
	}
	return false
}
func (o *LinkTokenCreateRequestAccountSubtypes) SetDepository(v map[string]map[string]interface{}) {
	o.Depository = &v
}
func (o *LinkTokenCreateRequestAccountSubtypes) GetCredit() map[string]map[string]interface{} {
	if o == nil || o.Credit == nil {
		var ret map[string]map[string]interface{}
		return ret
	}
	return *o.Credit
}
func (o *LinkTokenCreateRequestAccountSubtypes) GetCreditOk() (*map[string]map[string]interface{}, bool) {
	if o == nil || o.Credit == nil {
		return nil, false
	}
	return o.Credit, true
}
func (o *LinkTokenCreateRequestAccountSubtypes) HasCredit() bool {
	if o != nil && o.Credit != nil {
		return true
	}
	return false
}
func (o *LinkTokenCreateRequestAccountSubtypes) SetCredit(v map[string]map[string]interface{}) {
	o.Credit = &v
}
func (o *LinkTokenCreateRequestAccountSubtypes) GetLoan() map[string]map[string]interface{} {
	if o == nil || o.Loan == nil {
		var ret map[string]map[string]interface{}
		return ret
	}
	return *o.Loan
}
func (o *LinkTokenCreateRequestAccountSubtypes) GetLoanOk() (*map[string]map[string]interface{}, bool) {
	if o == nil || o.Loan == nil {
		return nil, false
	}
	return o.Loan, true
}
func (o *LinkTokenCreateRequestAccountSubtypes) HasLoan() bool {
	if o != nil && o.Loan != nil {
		return true
	}
	return false
}
func (o *LinkTokenCreateRequestAccountSubtypes) SetLoan(v map[string]map[string]interface{}) {
	o.Loan = &v
}
func (o *LinkTokenCreateRequestAccountSubtypes) GetInvestment() map[string]map[string]interface{} {
	if o == nil || o.Investment == nil {
		var ret map[string]map[string]interface{}
		return ret
	}
	return *o.Investment
}