fixed functionalety bugs