/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */

?int:
    0?int=0
    1?int=1
    -1?int=-1
    0.5?int=0
    1.5?int=1
    -0.5?int=0
    -1.5?int=-1
    0.25?int=0
    -0.25?int=0
    1.75?int=1
    -1.75?int=-1
    1.01?int=1
    -1.01?int=-1
    0.01?int=0
    -0.01?int=0
    127?int=127
    128?int=128
    -127?int=-127
    -128?int=-128
    32767?int=32767
    32768?int=32768
    -32767?int=-32767
    -32768?int=-32768
    2147483647?int=2147483647
    2147483648?int=-2147483648
    -2147483647?int=-2147483647
    -2147483648?int=-2147483648
    4294967295?int=-1
    4294967296?int=0
    -4294967295?int=1
    -4294967296?int=0
    2147483647.1?int=2147483647
    2147483648.1?int=-2147483648
    -2147483647.1?int=-2147483647
    -2147483648.1?int=-2147483648
    4294967295.1?int=-1
    4294967296.1?int=0
    -4294967295.1?int=1
    -4294967296.1?int=0
    2147483647.5?int=2147483647
    2147483648.5?int=-2147483648
    -2147483647.5?int=-2147483647
    -2147483648.5?int=-2147483648
    4294967295.5?int=-1
    4294967296.5?int=0
    -4294967295.5?int=1
    -4294967296.5?int=0

?double
    0?double=0
    1?double=1
    -1?double=-1
    0.5?double=0.5
    1.5?double=1.5
    -0.5?double=-0.5
    -1.5?double=-1.5
    0.25?double=0.25
    -0.25?double=-0.25
    1.75?double=1.75
    -1.75?double=-1.75
    1.01?double=1.01
    -1.01?double=-1.01
    0.01?double=0.01
    -0.01?double=-0.01
    127?double=127
    128?double=128
    -127?double=-127
    -128?double=-128
    32767?double=32767
    32768?double=32768
    -32767?double=-32767
    -32768?double=-32768
    2147483647?double=2147483647
    2147483648?double=2147483648
    -2147483647?double=-2147483647
    -2147483648?double=-2147483648
    4294967295?double=4294967295
    4294967296?double=4294967296
    -4294967295?double=-4294967295
    -4294967296?double=-4294967296
    2147483647.1?double=2147483647.1
    2147483648.1?double=2147483648.1
    -2147483647.1?double=-2147483647.1
    -2147483648.1?double=-2147483648.1
    4294967295.1?double=4294967295.1
    4294967296.1?double=4294967296.1
    -4294967295.1?double=-4294967295.1
    -4294967296.1?double=-4294967296.1
    2147483647.5?double=2147483647.5
    2147483648.5?double=2147483648.5
    -2147483647.5?double=-2147483647.5
    -2147483648.5?double=-2147483648.5
    4294967295.5?double=4294967295.5
    4294967296.5?double=4294967296.5
    -4294967295.5?double=-4294967295.5
    -4294967296.5?double=-4294967296.5

?long
    0?long=0
    1?long=1
    -1?long=-1
    0.5?long=0
    1.5?long=1
    -0.5?long=0
    -1.5?long=-1
    0.25?long=0
    -0.25?long=0
    1.75?long=1
    -1.75?long=-1
    1.01?long=1
    -1.01?long=-1
    0.01?long=0
    -0.01?long=0
    127?long=127
    128?long=128
    -127?long=-127
    -128?long=-128
    32767?long=32767
    32768?long=32768
    -32767?long=-32767
    -32768?long=-32768
    2147483647?long=2147483647
    2147483648?long=2147483648
    -2147483647?long=-2147483647
    -2147483648?long=-2147483648
    4294967295?long=4294967295
    4294967296?long=4294967296
    -4294967295?long=-4294967295
    -4294967296?long=-4294967296
    2147483647.1?long=2147483647
    2147483648.1?long=2147483648
    -2147483647.1?long=-2147483647
    -2147483648.1?long=-2147483648
    4294967295.1?long=4294967295
    4294967296.1?long=4294967296
    -4294967295.1?long=-4294967295
    -4294967296.1?long=-4294967296
    2147483647.5?long=2147483647
    2147483648.5?long=2147483648
    -2147483647.5?long=-2147483647
    -2147483648.5?long=-2147483648
    4294967295.5?long=4294967295
    4294967296.5?long=4294967296
    -4294967295.5?long=-4294967295
    -4294967296.5?long=-4294967296

?long from date
    1304877615000 = 1304877615000

?float
    0?float=0
    1?float=1
    -1?float=-1
    0.5?float=0.5
    1.5?float=1.5
    -0.5?float=-0.5
    -1.5?float=-1.5
    0.25?float=0.25
    -0.25?float=-0.25
    1.75?float=1.75
    -1.75?float=-1.75
    1.01?float=1.00999999
    -1.01?float=-1.00999999
    0.01?float=0.01
    -0.01?float=-0.01
    127?float=127
    128?float=128
    -127?float=-127
    -128?float=-128
    32767?float=32767
    32768?float=32768
    -32767?float=-32767
    -32768?float=-32768
    2147483647?float=2147483648
    2147483648?float=2147483648
    -2147483647?float=-2147483648
    -2147483648?float=-2147483648
    4294967295?float=4294967296
    4294967296?float=4294967296
    -4294967295?float=-4294967296
    -4294967296?float=-4294967296
    2147483647.1?float=2147483648
    2147483648.1?float=2147483648
    -2147483647.1?float=-2147483648
    -2147483648.1?float=-2147483648
    4294967295.1?float=4294967296
    4294967296.1?float=4294967296
    -4294967295.1?float=-4294967296
    -4294967296.1?float=-4294967296
    2147483647.5?float=2147483648
    2147483648.5?float=2147483648
    -2147483647.5?float=-2147483648
    -2147483648.5?float=-2147483648
    4294967295.5?float=4294967296
    4294967296.5?float=4294967296
    -4294967295.5?float=-4294967296
    -4294967296.5?float=-4294967296

?byte
    0?byte=0
    1?byte=1
    -1?byte=-1
    0.5?byte=0
    1.5?byte=1
    -0.5?byte=0
    -1.5?byte=-1
    0.25?byte=0
    -0.25?byte=0
    1.75?byte=1
    -1.75?byte=-1
    1.01?byte=1
    -1.01?byte=-1
    0.01?byte=0
    -0.01?byte=0
    127?byte=127
    128?byte=-128
    -127?byte=-127
    -128?byte=-128
    32767?byte=-1
    32768?byte=0
    -32767?byte=1
    -32768?byte=0
    2147483647?byte=-1
    2147483648?byte=0
    -2147483647?byte=1
    -2147483648?byte=0
    4294967295?byte=-1
    4294967296?byte=0
    -4294967295?byte=1
    -4294967296?byte=0
    2147483647.1?byte=-1
    2147483648.1?byte=0
    -2147483647.1?byte=1
    -2147483648.1?byte=0
    4294967295.1?byte=-1
    4294967296.1?byte=0
    -4294967295.1?byte=1
    -4294967296.1?byte=0
    2147483647.5?byte=-1
    2147483648.5?byte=0
    -2147483647.5?byte=1
    -2147483648.5?byte=0
    4294967295.5?byte=-1
    4294967296.5?byte=0
    -4294967295.5?byte=1
    -4294967296.5?byte=0

?short
    0?short=0
    1?short=1
    -1?short=-1
    0.5?short=0
    1.5?short=1
    -0.5?short=0
    -1.5?short=-1
    0.25?short=0
    -0.25?short=0
    1.75?short=1
    -1.75?short=-1
    1.01?short=1
    -1.01?short=-1
    0.01?short=0
    -0.01?short=0
    127?short=127
    128?short=128
    -127?short=-127
    -128?short=-128
    32767?short=32767
    32768?short=-32768
    -32767?short=-32767
    -32768?short=-32768
    2147483647?short=-1
    2147483648?short=0
    -2147483647?short=1
    -2147483648?short=0
    4294967295?short=-1
    4294967296?short=0
    -4294967295?short=1
    -4294967296?short=0
    2147483647.1?short=-1
    2147483648.1?short=0
    -2147483647.1?short=1
    -2147483648.1?short=0
    4294967295.1?short=-1
    4294967296.1?short=0
    -4294967295.1?short=1
    -4294967296.1?short=0
    2147483647.5?short=-1
    2147483648.5?short=0
    -2147483647.5?short=1
    -2147483648.5?short=0
    4294967295.5?short=-1
    4294967296.5?short=0
    -4294967295.5?short=1
    -4294967296.5?short=0

?floor
    0?floor=0
    1?floor=1
    -1?floor=-1
    0.5?floor=0
    1.5?floor=1
    -0.5?floor=-1
    -1.5?floor=-2
    0.25?floor=0
    -0.25?floor=-1
    1.75?floor=1
    -1.75?floor=-2
    1.01?floor=1
    -1.01?floor=-2
    0.01?floor=0
    -0.01?floor=-1
    127?floor=127
    128?floor=128
    -127?floor=-127
    -128?floor=-128
    32767?floor=32767
    32768?floor=32768
    -32767?floor=-32767
    -32768?floor=-32768
    2147483647?floor=2147483647
    2147483648?floor=2147483648
    -2147483647?floor=-2147483647
    -2147483648?floor=-2147483648
    4294967295?floor=4294967295
    4294967296?floor=4294967296
    -4294967295?floor=-4294967295
    -4294967296?floor=-4294967296
    2147483647.1?floor=2147483647
    2147483648.1?floor=2147483648
    -2147483647.1?floor=-2147483648
    -2147483648.1?floor=-2147483649
    4294967295.1?floor=4294967295
    4294967296.1?floor=4294967296
    -4294967295.1?floor=-4294967296
    -4294967296.1?floor=-4294967297
    2147483647.5?floor=2147483647
    2147483648.5?floor=2147483648
    -2147483647.5?floor=-2147483648
    -2147483648.5?floor=-2147483649
    4294967295.5?floor=4294967295
    4294967296.5?floor=4294967296
    -4294967295.5?floor=-4294967296
    -4294967296.5?floor=-4294967297

?ceiling
    0?ceiling=0
    1?ceiling=1
    -1?ceiling=-1
    0.5?ceiling=1
    1.5?ceiling=2
    -0.5?ceiling=0
    -1.5?ceiling=-1
    0.25?ceiling=1
    -0.25?ceiling=0
    1.75?ceiling=2
    -1.75?ceiling=-1
    1.01?ceiling=2
    -1.01?ceiling=-1
    0.01?ceiling=1
    -0.01?ceiling=0
    127?ceiling=127
    128?ceiling=128
    -127?ceiling=-127
    -128?ceiling=-128
    32767?ceiling=32767
    32768?ceiling=32768
    -32767?ceiling=-32767
    -32768?ceiling=-32768
    2147483647?ceiling=2147483647
    2147483648?ceiling=2147483648
    -2147483647?ceiling=-2147483647
    -2147483648?ceiling=-2147483648
    4294967295?ceiling=4294967295
    4294967296?ceiling=4294967296
    -4294967295?ceiling=-4294967295
    -4294967296?ceiling=-4294967296
    2147483647.1?ceiling=2147483648
    2147483648.1?ceiling=2147483649
    -2147483647.1?ceiling=-2147483647
    -2147483648.1?ceiling=-2147483648
    4294967295.1?ceiling=4294967296
    4294967296.1?ceiling=4294967297
    -4294967295.1?ceiling=-4294967295
    -4294967296.1?ceiling=-4294967296
    2147483647.5?ceiling=2147483648
    2147483648.5?ceiling=2147483649
    -2147483647.5?ceiling=-2147483647
    -2147483648.5?ceiling=-2147483648
    4294967295.5?ceiling=4294967296
    4294967296.5?ceiling=4294967297
    -4294967295.5?ceiling=-4294967295
    -4294967296.5?ceiling=-4294967296

?round
    0?round=0
    1?round=1
    -1?round=-1
    0.5?round=1
    1.5?round=2
    -0.5?round=0
    -1.5?round=-1
    0.25?round=0
    -0.25?round=0
    1.75?round=2
    -1.75?round=-2
    1.01?round=1
    -1.01?round=-1
    0.01?round=0
    -0.01?round=0
    127?round=127
    128?round=128
    -127?round=-127
    -128?round=-128
    32767?round=32767
    32768?round=32768
    -32767?round=-32767
    -32768?round=-32768
    2147483647?round=2147483647
    2147483648?round=2147483648
    -2147483647?round=-2147483647
    -2147483648?round=-2147483648
    4294967295?round=4294967295
    4294967296?round=4294967296
    -4294967295?round=-4294967295
    -4294967296?round=-4294967296
    2147483647.1?round=2147483647
    2147483648.1?round=2147483648
    -2147483647.1?round=-2147483647
    -2147483648.1?round=-2147483648
    4294967295.1?round=4294967295
    4294967296.1?round=4294967296
    -4294967295.1?round=-4294967295
    -4294967296.1?round=-4294967296
    2147483647.5?round=2147483648
    2147483648.5?round=2147483649
    -2147483647.5?round=-2147483647
    -2147483648.5?round=-2147483648
    4294967295.5?round=4294967296
    4294967296.5?round=4294967297
    -4294967295.5?round=-4294967295
    -4294967296.5?round=-4294967296
