refining the api signatures