type DynamoUserCollection … func (d DynamoUserCollection) FetchDynamoUser(ctx context.Context, id common.UserId, server common.ChatServer) (u *DynamoUserRecord, err error) { … } func FetchDynamoUserCollection(server common.ChatServer, userIds []common.UserId) (newCollection DynamoUserCollection, err error) { … } const concurrentSave … func (uc DynamoUserCollection) monitorchanges() { … } func fetchOrCreateUserStoreRecord(ctx context.Context, id common.UserId, serverid string) (record *DynamoUserRecord, err error) { … }