updated description, fix bugs