done through object.method and instance_eval