pub fun main() ! Io -> Unit { val messageBox = Box("hello, world"); print!(messageBox.me().get()); } struct Box[T](value: T) { fun me(this) -> Box[T] { this } fun get(this) -> T { this.value } }