finished most of requests base