add ceil(), floor()