Here's the completed code:
```
def binary_search(ordered_list, search_value):
first = 0
last = len(ordered_list) - 1
while first <= last:
middle = (first + last)//2
# Check whether the search value equals the value in the middle
if search_value == ordered_list[middle]:
return True
# Check whether the search value is smaller than the value in the middle
elif search_value < ordered_list[middle]:
# Set last to the value of middle minus one
last = middle - 1
else:
first = middle + 1
return False
print(binary_search([1,5,8,9,15,20,70,72], 5))
```
The code implements the binary search algorithm to find a value in an ordered list. It starts by setting the first and last indices of the list, and then it enters a loop that continues as long as there are still elements to search. In each iteration, it calculates the middle index of the remaining elements, and then it checks whether the search value equals the value in the middle. If it does, it returns True. Otherwise, it checks whether the search value is smaller than the value in the middle. If it is, it sets the last index to the value of middle minus one, effectively discarding the upper half of the remaining elements. If it isn't, it sets the first index to the value of middle plus one, effectively discarding the lower half of the remaining elements. If the loop completes without finding the search value, it returns False.