Naive implementations complete