method scope implemented :D:D:D:D:D:D