adding binary search algorithm, just because.