most functionality is there