should this not be ::epsilon() ?