add LongCalculable and DoubleCalculable