Implements required methods and passes original tests