implement find
implement sorting