added binary search lib