modificaton of API1~2