crushed awful bug hell with Infinity and created type-wise dynamic Calculatable comparison function