added purchase methods and some other corrections