api design; #10