now almost all of functions work, need to improve on UI