add sorted argument key functionality for scalability
update docs