func init if(linked("doData") and linked("GetData")) sys.add_var(this.name, 'dynamic') end end func doData(data) if(linked("GetData")) dt = d("Data") this.type = typeof(dt) blk.println(this.codename, ' = ', sys.if_null(dt), ';') end end func GetData(data) event("onEvent") if(linked("doData")) return(sub(this.codename, this.type)) else return(d("Data")) end end