Uninitialized 'val' fields in implicit construction types must be mutable and marked with the '[ ]' attribute. Consider using ...