code: func NewAuthWithAssumedRole(roleArn, sessionName, region string, stsAuth Auth) (Auth, error) {
  	return newCachedMutexedWarmedUpAuth(&stsCreds{
  		RoleARN:     roleArn,
  		SessionName: sessionName,
  		Region:      region,
  		STSAuth:     stsAuth,
  	})
  }
docs: // NewAuthWithAssumedRole will call STS in a given region to assume a role
  // stsAuth object is used to authenticate to STS to fetch temporary credentials
  // for the desired role.