updated more funtions to look nice and interact well