Use a much simpler implementation