case'int':returntypeof(value)!=='number'?Either.failure(projectProblem('not a number')):(value|0)===value?Either.of(valueasany):Either.failure(projectProblem('not an integer'))
case'float':returntypeof(value)!=='number'?Either.failure(projectProblem('not a number')):Either.of(valueasany);