added some approximation methods