Index: tests/.expect/bitmanip3.x86.txt
===================================================================
--- tests/.expect/bitmanip3.x86.txt	(revision 4d3e1605462220790e87c2aa9142eac04f5cf9a2)
+++ tests/.expect/bitmanip3.x86.txt	(revision 4d3e1605462220790e87c2aa9142eac04f5cf9a2)
@@ -0,0 +1,1665 @@
+
+is_pow2
+
+signed char
+0b00000000 false 0b00001101 false
+0b00000001 true 0b00001110 false
+0b00000010 true 0b00001111 false
+0b00000100 true 0b00010001 false
+0b00001000 true 0b00010101 false
+0b00010000 true 0b00011101 false
+0b00100000 true 0b00101101 false
+0b01000000 true 0b01001101 false
+0b10000000 true 0b10001101 false
+
+unsigned char
+0b00000000 false 0b00001101 false
+0b00000001 true 0b00001110 false
+0b00000010 true 0b00001111 false
+0b00000100 true 0b00010001 false
+0b00001000 true 0b00010101 false
+0b00010000 true 0b00011101 false
+0b00100000 true 0b00101101 false
+0b01000000 true 0b01001101 false
+0b10000000 true 0b10001101 false
+
+short int
+0b0000000000000000 false 0b0000000000001101 false
+0b0000000000000001 true 0b0000000000001110 false
+0b0000000000000010 true 0b0000000000001111 false
+0b0000000000000100 true 0b0000000000010001 false
+0b0000000000001000 true 0b0000000000010101 false
+0b0000000000010000 true 0b0000000000011101 false
+0b0000000000100000 true 0b0000000000101101 false
+0b0000000001000000 true 0b0000000001001101 false
+0b0000000010000000 true 0b0000000010001101 false
+0b0000000100000000 true 0b0000000100001101 false
+0b0000001000000000 true 0b0000001000001101 false
+0b0000010000000000 true 0b0000010000001101 false
+0b0000100000000000 true 0b0000100000001101 false
+0b0001000000000000 true 0b0001000000001101 false
+0b0010000000000000 true 0b0010000000001101 false
+0b0100000000000000 true 0b0100000000001101 false
+0b1000000000000000 true 0b1000000000001101 false
+
+unsigned short int
+0b0000000000000000 false 0b0000000000001101 false
+0b0000000000000001 true 0b0000000000001110 false
+0b0000000000000010 true 0b0000000000001111 false
+0b0000000000000100 true 0b0000000000010001 false
+0b0000000000001000 true 0b0000000000010101 false
+0b0000000000010000 true 0b0000000000011101 false
+0b0000000000100000 true 0b0000000000101101 false
+0b0000000001000000 true 0b0000000001001101 false
+0b0000000010000000 true 0b0000000010001101 false
+0b0000000100000000 true 0b0000000100001101 false
+0b0000001000000000 true 0b0000001000001101 false
+0b0000010000000000 true 0b0000010000001101 false
+0b0000100000000000 true 0b0000100000001101 false
+0b0001000000000000 true 0b0001000000001101 false
+0b0010000000000000 true 0b0010000000001101 false
+0b0100000000000000 true 0b0100000000001101 false
+0b1000000000000000 true 0b1000000000001101 false
+
+int
+0b00000000000000000000000000000000 false 0b00000000000000000000000000001101 false
+0b00000000000000000000000000000001 true 0b00000000000000000000000000001110 false
+0b00000000000000000000000000000010 true 0b00000000000000000000000000001111 false
+0b00000000000000000000000000000100 true 0b00000000000000000000000000010001 false
+0b00000000000000000000000000001000 true 0b00000000000000000000000000010101 false
+0b00000000000000000000000000010000 true 0b00000000000000000000000000011101 false
+0b00000000000000000000000000100000 true 0b00000000000000000000000000101101 false
+0b00000000000000000000000001000000 true 0b00000000000000000000000001001101 false
+0b00000000000000000000000010000000 true 0b00000000000000000000000010001101 false
+0b00000000000000000000000100000000 true 0b00000000000000000000000100001101 false
+0b00000000000000000000001000000000 true 0b00000000000000000000001000001101 false
+0b00000000000000000000010000000000 true 0b00000000000000000000010000001101 false
+0b00000000000000000000100000000000 true 0b00000000000000000000100000001101 false
+0b00000000000000000001000000000000 true 0b00000000000000000001000000001101 false
+0b00000000000000000010000000000000 true 0b00000000000000000010000000001101 false
+0b00000000000000000100000000000000 true 0b00000000000000000100000000001101 false
+0b00000000000000001000000000000000 true 0b00000000000000001000000000001101 false
+0b00000000000000010000000000000000 true 0b00000000000000010000000000001101 false
+0b00000000000000100000000000000000 true 0b00000000000000100000000000001101 false
+0b00000000000001000000000000000000 true 0b00000000000001000000000000001101 false
+0b00000000000010000000000000000000 true 0b00000000000010000000000000001101 false
+0b00000000000100000000000000000000 true 0b00000000000100000000000000001101 false
+0b00000000001000000000000000000000 true 0b00000000001000000000000000001101 false
+0b00000000010000000000000000000000 true 0b00000000010000000000000000001101 false
+0b00000000100000000000000000000000 true 0b00000000100000000000000000001101 false
+0b00000001000000000000000000000000 true 0b00000001000000000000000000001101 false
+0b00000010000000000000000000000000 true 0b00000010000000000000000000001101 false
+0b00000100000000000000000000000000 true 0b00000100000000000000000000001101 false
+0b00001000000000000000000000000000 true 0b00001000000000000000000000001101 false
+0b00010000000000000000000000000000 true 0b00010000000000000000000000001101 false
+0b00100000000000000000000000000000 true 0b00100000000000000000000000001101 false
+0b01000000000000000000000000000000 true 0b01000000000000000000000000001101 false
+0b10000000000000000000000000000000 true 0b10000000000000000000000000001101 false
+
+unsigned int
+0b00000000000000000000000000000000 false 0b00000000000000000000000000001101 false
+0b00000000000000000000000000000001 true 0b00000000000000000000000000001110 false
+0b00000000000000000000000000000010 true 0b00000000000000000000000000001111 false
+0b00000000000000000000000000000100 true 0b00000000000000000000000000010001 false
+0b00000000000000000000000000001000 true 0b00000000000000000000000000010101 false
+0b00000000000000000000000000010000 true 0b00000000000000000000000000011101 false
+0b00000000000000000000000000100000 true 0b00000000000000000000000000101101 false
+0b00000000000000000000000001000000 true 0b00000000000000000000000001001101 false
+0b00000000000000000000000010000000 true 0b00000000000000000000000010001101 false
+0b00000000000000000000000100000000 true 0b00000000000000000000000100001101 false
+0b00000000000000000000001000000000 true 0b00000000000000000000001000001101 false
+0b00000000000000000000010000000000 true 0b00000000000000000000010000001101 false
+0b00000000000000000000100000000000 true 0b00000000000000000000100000001101 false
+0b00000000000000000001000000000000 true 0b00000000000000000001000000001101 false
+0b00000000000000000010000000000000 true 0b00000000000000000010000000001101 false
+0b00000000000000000100000000000000 true 0b00000000000000000100000000001101 false
+0b00000000000000001000000000000000 true 0b00000000000000001000000000001101 false
+0b00000000000000010000000000000000 true 0b00000000000000010000000000001101 false
+0b00000000000000100000000000000000 true 0b00000000000000100000000000001101 false
+0b00000000000001000000000000000000 true 0b00000000000001000000000000001101 false
+0b00000000000010000000000000000000 true 0b00000000000010000000000000001101 false
+0b00000000000100000000000000000000 true 0b00000000000100000000000000001101 false
+0b00000000001000000000000000000000 true 0b00000000001000000000000000001101 false
+0b00000000010000000000000000000000 true 0b00000000010000000000000000001101 false
+0b00000000100000000000000000000000 true 0b00000000100000000000000000001101 false
+0b00000001000000000000000000000000 true 0b00000001000000000000000000001101 false
+0b00000010000000000000000000000000 true 0b00000010000000000000000000001101 false
+0b00000100000000000000000000000000 true 0b00000100000000000000000000001101 false
+0b00001000000000000000000000000000 true 0b00001000000000000000000000001101 false
+0b00010000000000000000000000000000 true 0b00010000000000000000000000001101 false
+0b00100000000000000000000000000000 true 0b00100000000000000000000000001101 false
+0b01000000000000000000000000000000 true 0b01000000000000000000000000001101 false
+0b10000000000000000000000000000000 true 0b10000000000000000000000000001101 false
+
+long int
+0b00000000000000000000000000000000 false 0b00000000000000000000000000001101 false
+0b00000000000000000000000000000001 true 0b00000000000000000000000000001110 false
+0b00000000000000000000000000000010 true 0b00000000000000000000000000001111 false
+0b00000000000000000000000000000100 true 0b00000000000000000000000000010001 false
+0b00000000000000000000000000001000 true 0b00000000000000000000000000010101 false
+0b00000000000000000000000000010000 true 0b00000000000000000000000000011101 false
+0b00000000000000000000000000100000 true 0b00000000000000000000000000101101 false
+0b00000000000000000000000001000000 true 0b00000000000000000000000001001101 false
+0b00000000000000000000000010000000 true 0b00000000000000000000000010001101 false
+0b00000000000000000000000100000000 true 0b00000000000000000000000100001101 false
+0b00000000000000000000001000000000 true 0b00000000000000000000001000001101 false
+0b00000000000000000000010000000000 true 0b00000000000000000000010000001101 false
+0b00000000000000000000100000000000 true 0b00000000000000000000100000001101 false
+0b00000000000000000001000000000000 true 0b00000000000000000001000000001101 false
+0b00000000000000000010000000000000 true 0b00000000000000000010000000001101 false
+0b00000000000000000100000000000000 true 0b00000000000000000100000000001101 false
+0b00000000000000001000000000000000 true 0b00000000000000001000000000001101 false
+0b00000000000000010000000000000000 true 0b00000000000000010000000000001101 false
+0b00000000000000100000000000000000 true 0b00000000000000100000000000001101 false
+0b00000000000001000000000000000000 true 0b00000000000001000000000000001101 false
+0b00000000000010000000000000000000 true 0b00000000000010000000000000001101 false
+0b00000000000100000000000000000000 true 0b00000000000100000000000000001101 false
+0b00000000001000000000000000000000 true 0b00000000001000000000000000001101 false
+0b00000000010000000000000000000000 true 0b00000000010000000000000000001101 false
+0b00000000100000000000000000000000 true 0b00000000100000000000000000001101 false
+0b00000001000000000000000000000000 true 0b00000001000000000000000000001101 false
+0b00000010000000000000000000000000 true 0b00000010000000000000000000001101 false
+0b00000100000000000000000000000000 true 0b00000100000000000000000000001101 false
+0b00001000000000000000000000000000 true 0b00001000000000000000000000001101 false
+0b00010000000000000000000000000000 true 0b00010000000000000000000000001101 false
+0b00100000000000000000000000000000 true 0b00100000000000000000000000001101 false
+0b01000000000000000000000000000000 true 0b01000000000000000000000000001101 false
+0b10000000000000000000000000000000 true 0b10000000000000000000000000001101 false
+
+unsigned long int
+0b00000000000000000000000000000000 false 0b00000000000000000000000000001101 false
+0b00000000000000000000000000000001 true 0b00000000000000000000000000001110 false
+0b00000000000000000000000000000010 true 0b00000000000000000000000000001111 false
+0b00000000000000000000000000000100 true 0b00000000000000000000000000010001 false
+0b00000000000000000000000000001000 true 0b00000000000000000000000000010101 false
+0b00000000000000000000000000010000 true 0b00000000000000000000000000011101 false
+0b00000000000000000000000000100000 true 0b00000000000000000000000000101101 false
+0b00000000000000000000000001000000 true 0b00000000000000000000000001001101 false
+0b00000000000000000000000010000000 true 0b00000000000000000000000010001101 false
+0b00000000000000000000000100000000 true 0b00000000000000000000000100001101 false
+0b00000000000000000000001000000000 true 0b00000000000000000000001000001101 false
+0b00000000000000000000010000000000 true 0b00000000000000000000010000001101 false
+0b00000000000000000000100000000000 true 0b00000000000000000000100000001101 false
+0b00000000000000000001000000000000 true 0b00000000000000000001000000001101 false
+0b00000000000000000010000000000000 true 0b00000000000000000010000000001101 false
+0b00000000000000000100000000000000 true 0b00000000000000000100000000001101 false
+0b00000000000000001000000000000000 true 0b00000000000000001000000000001101 false
+0b00000000000000010000000000000000 true 0b00000000000000010000000000001101 false
+0b00000000000000100000000000000000 true 0b00000000000000100000000000001101 false
+0b00000000000001000000000000000000 true 0b00000000000001000000000000001101 false
+0b00000000000010000000000000000000 true 0b00000000000010000000000000001101 false
+0b00000000000100000000000000000000 true 0b00000000000100000000000000001101 false
+0b00000000001000000000000000000000 true 0b00000000001000000000000000001101 false
+0b00000000010000000000000000000000 true 0b00000000010000000000000000001101 false
+0b00000000100000000000000000000000 true 0b00000000100000000000000000001101 false
+0b00000001000000000000000000000000 true 0b00000001000000000000000000001101 false
+0b00000010000000000000000000000000 true 0b00000010000000000000000000001101 false
+0b00000100000000000000000000000000 true 0b00000100000000000000000000001101 false
+0b00001000000000000000000000000000 true 0b00001000000000000000000000001101 false
+0b00010000000000000000000000000000 true 0b00010000000000000000000000001101 false
+0b00100000000000000000000000000000 true 0b00100000000000000000000000001101 false
+0b01000000000000000000000000000000 true 0b01000000000000000000000000001101 false
+0b10000000000000000000000000000000 true 0b10000000000000000000000000001101 false
+
+long long int
+0b0000000000000000000000000000000000000000000000000000000000000000 false 0b0000000000000000000000000000000000000000000000000000000000001101 false
+0b0000000000000000000000000000000000000000000000000000000000000001 true 0b0000000000000000000000000000000000000000000000000000000000001110 false
+0b0000000000000000000000000000000000000000000000000000000000000010 true 0b0000000000000000000000000000000000000000000000000000000000001111 false
+0b0000000000000000000000000000000000000000000000000000000000000100 true 0b0000000000000000000000000000000000000000000000000000000000010001 false
+0b0000000000000000000000000000000000000000000000000000000000001000 true 0b0000000000000000000000000000000000000000000000000000000000010101 false
+0b0000000000000000000000000000000000000000000000000000000000010000 true 0b0000000000000000000000000000000000000000000000000000000000011101 false
+0b0000000000000000000000000000000000000000000000000000000000100000 true 0b0000000000000000000000000000000000000000000000000000000000101101 false
+0b0000000000000000000000000000000000000000000000000000000001000000 true 0b0000000000000000000000000000000000000000000000000000000001001101 false
+0b0000000000000000000000000000000000000000000000000000000010000000 true 0b0000000000000000000000000000000000000000000000000000000010001101 false
+0b0000000000000000000000000000000000000000000000000000000100000000 true 0b0000000000000000000000000000000000000000000000000000000100001101 false
+0b0000000000000000000000000000000000000000000000000000001000000000 true 0b0000000000000000000000000000000000000000000000000000001000001101 false
+0b0000000000000000000000000000000000000000000000000000010000000000 true 0b0000000000000000000000000000000000000000000000000000010000001101 false
+0b0000000000000000000000000000000000000000000000000000100000000000 true 0b0000000000000000000000000000000000000000000000000000100000001101 false
+0b0000000000000000000000000000000000000000000000000001000000000000 true 0b0000000000000000000000000000000000000000000000000001000000001101 false
+0b0000000000000000000000000000000000000000000000000010000000000000 true 0b0000000000000000000000000000000000000000000000000010000000001101 false
+0b0000000000000000000000000000000000000000000000000100000000000000 true 0b0000000000000000000000000000000000000000000000000100000000001101 false
+0b0000000000000000000000000000000000000000000000001000000000000000 true 0b0000000000000000000000000000000000000000000000001000000000001101 false
+0b0000000000000000000000000000000000000000000000010000000000000000 true 0b0000000000000000000000000000000000000000000000010000000000001101 false
+0b0000000000000000000000000000000000000000000000100000000000000000 true 0b0000000000000000000000000000000000000000000000100000000000001101 false
+0b0000000000000000000000000000000000000000000001000000000000000000 true 0b0000000000000000000000000000000000000000000001000000000000001101 false
+0b0000000000000000000000000000000000000000000010000000000000000000 true 0b0000000000000000000000000000000000000000000010000000000000001101 false
+0b0000000000000000000000000000000000000000000100000000000000000000 true 0b0000000000000000000000000000000000000000000100000000000000001101 false
+0b0000000000000000000000000000000000000000001000000000000000000000 true 0b0000000000000000000000000000000000000000001000000000000000001101 false
+0b0000000000000000000000000000000000000000010000000000000000000000 true 0b0000000000000000000000000000000000000000010000000000000000001101 false
+0b0000000000000000000000000000000000000000100000000000000000000000 true 0b0000000000000000000000000000000000000000100000000000000000001101 false
+0b0000000000000000000000000000000000000001000000000000000000000000 true 0b0000000000000000000000000000000000000001000000000000000000001101 false
+0b0000000000000000000000000000000000000010000000000000000000000000 true 0b0000000000000000000000000000000000000010000000000000000000001101 false
+0b0000000000000000000000000000000000000100000000000000000000000000 true 0b0000000000000000000000000000000000000100000000000000000000001101 false
+0b0000000000000000000000000000000000001000000000000000000000000000 true 0b0000000000000000000000000000000000001000000000000000000000001101 false
+0b0000000000000000000000000000000000010000000000000000000000000000 true 0b0000000000000000000000000000000000010000000000000000000000001101 false
+0b0000000000000000000000000000000000100000000000000000000000000000 true 0b0000000000000000000000000000000000100000000000000000000000001101 false
+0b0000000000000000000000000000000001000000000000000000000000000000 true 0b0000000000000000000000000000000001000000000000000000000000001101 false
+0b0000000000000000000000000000000010000000000000000000000000000000 true 0b0000000000000000000000000000000010000000000000000000000000001101 false
+0b0000000000000000000000000000000100000000000000000000000000000000 true 0b0000000000000000000000000000000100000000000000000000000000001101 false
+0b0000000000000000000000000000001000000000000000000000000000000000 true 0b0000000000000000000000000000001000000000000000000000000000001101 false
+0b0000000000000000000000000000010000000000000000000000000000000000 true 0b0000000000000000000000000000010000000000000000000000000000001101 false
+0b0000000000000000000000000000100000000000000000000000000000000000 true 0b0000000000000000000000000000100000000000000000000000000000001101 false
+0b0000000000000000000000000001000000000000000000000000000000000000 true 0b0000000000000000000000000001000000000000000000000000000000001101 false
+0b0000000000000000000000000010000000000000000000000000000000000000 true 0b0000000000000000000000000010000000000000000000000000000000001101 false
+0b0000000000000000000000000100000000000000000000000000000000000000 true 0b0000000000000000000000000100000000000000000000000000000000001101 false
+0b0000000000000000000000001000000000000000000000000000000000000000 true 0b0000000000000000000000001000000000000000000000000000000000001101 false
+0b0000000000000000000000010000000000000000000000000000000000000000 true 0b0000000000000000000000010000000000000000000000000000000000001101 false
+0b0000000000000000000000100000000000000000000000000000000000000000 true 0b0000000000000000000000100000000000000000000000000000000000001101 false
+0b0000000000000000000001000000000000000000000000000000000000000000 true 0b0000000000000000000001000000000000000000000000000000000000001101 false
+0b0000000000000000000010000000000000000000000000000000000000000000 true 0b0000000000000000000010000000000000000000000000000000000000001101 false
+0b0000000000000000000100000000000000000000000000000000000000000000 true 0b0000000000000000000100000000000000000000000000000000000000001101 false
+0b0000000000000000001000000000000000000000000000000000000000000000 true 0b0000000000000000001000000000000000000000000000000000000000001101 false
+0b0000000000000000010000000000000000000000000000000000000000000000 true 0b0000000000000000010000000000000000000000000000000000000000001101 false
+0b0000000000000000100000000000000000000000000000000000000000000000 true 0b0000000000000000100000000000000000000000000000000000000000001101 false
+0b0000000000000001000000000000000000000000000000000000000000000000 true 0b0000000000000001000000000000000000000000000000000000000000001101 false
+0b0000000000000010000000000000000000000000000000000000000000000000 true 0b0000000000000010000000000000000000000000000000000000000000001101 false
+0b0000000000000100000000000000000000000000000000000000000000000000 true 0b0000000000000100000000000000000000000000000000000000000000001101 false
+0b0000000000001000000000000000000000000000000000000000000000000000 true 0b0000000000001000000000000000000000000000000000000000000000001101 false
+0b0000000000010000000000000000000000000000000000000000000000000000 true 0b0000000000010000000000000000000000000000000000000000000000001101 false
+0b0000000000100000000000000000000000000000000000000000000000000000 true 0b0000000000100000000000000000000000000000000000000000000000001101 false
+0b0000000001000000000000000000000000000000000000000000000000000000 true 0b0000000001000000000000000000000000000000000000000000000000001101 false
+0b0000000010000000000000000000000000000000000000000000000000000000 true 0b0000000010000000000000000000000000000000000000000000000000001101 false
+0b0000000100000000000000000000000000000000000000000000000000000000 true 0b0000000100000000000000000000000000000000000000000000000000001101 false
+0b0000001000000000000000000000000000000000000000000000000000000000 true 0b0000001000000000000000000000000000000000000000000000000000001101 false
+0b0000010000000000000000000000000000000000000000000000000000000000 true 0b0000010000000000000000000000000000000000000000000000000000001101 false
+0b0000100000000000000000000000000000000000000000000000000000000000 true 0b0000100000000000000000000000000000000000000000000000000000001101 false
+0b0001000000000000000000000000000000000000000000000000000000000000 true 0b0001000000000000000000000000000000000000000000000000000000001101 false
+0b0010000000000000000000000000000000000000000000000000000000000000 true 0b0010000000000000000000000000000000000000000000000000000000001101 false
+0b0100000000000000000000000000000000000000000000000000000000000000 true 0b0100000000000000000000000000000000000000000000000000000000001101 false
+0b1000000000000000000000000000000000000000000000000000000000000000 true 0b1000000000000000000000000000000000000000000000000000000000001101 false
+
+unsigned long long int
+0b0000000000000000000000000000000000000000000000000000000000000000 false 0b0000000000000000000000000000000000000000000000000000000000001101 false
+0b0000000000000000000000000000000000000000000000000000000000000001 true 0b0000000000000000000000000000000000000000000000000000000000001110 false
+0b0000000000000000000000000000000000000000000000000000000000000010 true 0b0000000000000000000000000000000000000000000000000000000000001111 false
+0b0000000000000000000000000000000000000000000000000000000000000100 true 0b0000000000000000000000000000000000000000000000000000000000010001 false
+0b0000000000000000000000000000000000000000000000000000000000001000 true 0b0000000000000000000000000000000000000000000000000000000000010101 false
+0b0000000000000000000000000000000000000000000000000000000000010000 true 0b0000000000000000000000000000000000000000000000000000000000011101 false
+0b0000000000000000000000000000000000000000000000000000000000100000 true 0b0000000000000000000000000000000000000000000000000000000000101101 false
+0b0000000000000000000000000000000000000000000000000000000001000000 true 0b0000000000000000000000000000000000000000000000000000000001001101 false
+0b0000000000000000000000000000000000000000000000000000000010000000 true 0b0000000000000000000000000000000000000000000000000000000010001101 false
+0b0000000000000000000000000000000000000000000000000000000100000000 true 0b0000000000000000000000000000000000000000000000000000000100001101 false
+0b0000000000000000000000000000000000000000000000000000001000000000 true 0b0000000000000000000000000000000000000000000000000000001000001101 false
+0b0000000000000000000000000000000000000000000000000000010000000000 true 0b0000000000000000000000000000000000000000000000000000010000001101 false
+0b0000000000000000000000000000000000000000000000000000100000000000 true 0b0000000000000000000000000000000000000000000000000000100000001101 false
+0b0000000000000000000000000000000000000000000000000001000000000000 true 0b0000000000000000000000000000000000000000000000000001000000001101 false
+0b0000000000000000000000000000000000000000000000000010000000000000 true 0b0000000000000000000000000000000000000000000000000010000000001101 false
+0b0000000000000000000000000000000000000000000000000100000000000000 true 0b0000000000000000000000000000000000000000000000000100000000001101 false
+0b0000000000000000000000000000000000000000000000001000000000000000 true 0b0000000000000000000000000000000000000000000000001000000000001101 false
+0b0000000000000000000000000000000000000000000000010000000000000000 true 0b0000000000000000000000000000000000000000000000010000000000001101 false
+0b0000000000000000000000000000000000000000000000100000000000000000 true 0b0000000000000000000000000000000000000000000000100000000000001101 false
+0b0000000000000000000000000000000000000000000001000000000000000000 true 0b0000000000000000000000000000000000000000000001000000000000001101 false
+0b0000000000000000000000000000000000000000000010000000000000000000 true 0b0000000000000000000000000000000000000000000010000000000000001101 false
+0b0000000000000000000000000000000000000000000100000000000000000000 true 0b0000000000000000000000000000000000000000000100000000000000001101 false
+0b0000000000000000000000000000000000000000001000000000000000000000 true 0b0000000000000000000000000000000000000000001000000000000000001101 false
+0b0000000000000000000000000000000000000000010000000000000000000000 true 0b0000000000000000000000000000000000000000010000000000000000001101 false
+0b0000000000000000000000000000000000000000100000000000000000000000 true 0b0000000000000000000000000000000000000000100000000000000000001101 false
+0b0000000000000000000000000000000000000001000000000000000000000000 true 0b0000000000000000000000000000000000000001000000000000000000001101 false
+0b0000000000000000000000000000000000000010000000000000000000000000 true 0b0000000000000000000000000000000000000010000000000000000000001101 false
+0b0000000000000000000000000000000000000100000000000000000000000000 true 0b0000000000000000000000000000000000000100000000000000000000001101 false
+0b0000000000000000000000000000000000001000000000000000000000000000 true 0b0000000000000000000000000000000000001000000000000000000000001101 false
+0b0000000000000000000000000000000000010000000000000000000000000000 true 0b0000000000000000000000000000000000010000000000000000000000001101 false
+0b0000000000000000000000000000000000100000000000000000000000000000 true 0b0000000000000000000000000000000000100000000000000000000000001101 false
+0b0000000000000000000000000000000001000000000000000000000000000000 true 0b0000000000000000000000000000000001000000000000000000000000001101 false
+0b0000000000000000000000000000000010000000000000000000000000000000 true 0b0000000000000000000000000000000010000000000000000000000000001101 false
+0b0000000000000000000000000000000100000000000000000000000000000000 true 0b0000000000000000000000000000000100000000000000000000000000001101 false
+0b0000000000000000000000000000001000000000000000000000000000000000 true 0b0000000000000000000000000000001000000000000000000000000000001101 false
+0b0000000000000000000000000000010000000000000000000000000000000000 true 0b0000000000000000000000000000010000000000000000000000000000001101 false
+0b0000000000000000000000000000100000000000000000000000000000000000 true 0b0000000000000000000000000000100000000000000000000000000000001101 false
+0b0000000000000000000000000001000000000000000000000000000000000000 true 0b0000000000000000000000000001000000000000000000000000000000001101 false
+0b0000000000000000000000000010000000000000000000000000000000000000 true 0b0000000000000000000000000010000000000000000000000000000000001101 false
+0b0000000000000000000000000100000000000000000000000000000000000000 true 0b0000000000000000000000000100000000000000000000000000000000001101 false
+0b0000000000000000000000001000000000000000000000000000000000000000 true 0b0000000000000000000000001000000000000000000000000000000000001101 false
+0b0000000000000000000000010000000000000000000000000000000000000000 true 0b0000000000000000000000010000000000000000000000000000000000001101 false
+0b0000000000000000000000100000000000000000000000000000000000000000 true 0b0000000000000000000000100000000000000000000000000000000000001101 false
+0b0000000000000000000001000000000000000000000000000000000000000000 true 0b0000000000000000000001000000000000000000000000000000000000001101 false
+0b0000000000000000000010000000000000000000000000000000000000000000 true 0b0000000000000000000010000000000000000000000000000000000000001101 false
+0b0000000000000000000100000000000000000000000000000000000000000000 true 0b0000000000000000000100000000000000000000000000000000000000001101 false
+0b0000000000000000001000000000000000000000000000000000000000000000 true 0b0000000000000000001000000000000000000000000000000000000000001101 false
+0b0000000000000000010000000000000000000000000000000000000000000000 true 0b0000000000000000010000000000000000000000000000000000000000001101 false
+0b0000000000000000100000000000000000000000000000000000000000000000 true 0b0000000000000000100000000000000000000000000000000000000000001101 false
+0b0000000000000001000000000000000000000000000000000000000000000000 true 0b0000000000000001000000000000000000000000000000000000000000001101 false
+0b0000000000000010000000000000000000000000000000000000000000000000 true 0b0000000000000010000000000000000000000000000000000000000000001101 false
+0b0000000000000100000000000000000000000000000000000000000000000000 true 0b0000000000000100000000000000000000000000000000000000000000001101 false
+0b0000000000001000000000000000000000000000000000000000000000000000 true 0b0000000000001000000000000000000000000000000000000000000000001101 false
+0b0000000000010000000000000000000000000000000000000000000000000000 true 0b0000000000010000000000000000000000000000000000000000000000001101 false
+0b0000000000100000000000000000000000000000000000000000000000000000 true 0b0000000000100000000000000000000000000000000000000000000000001101 false
+0b0000000001000000000000000000000000000000000000000000000000000000 true 0b0000000001000000000000000000000000000000000000000000000000001101 false
+0b0000000010000000000000000000000000000000000000000000000000000000 true 0b0000000010000000000000000000000000000000000000000000000000001101 false
+0b0000000100000000000000000000000000000000000000000000000000000000 true 0b0000000100000000000000000000000000000000000000000000000000001101 false
+0b0000001000000000000000000000000000000000000000000000000000000000 true 0b0000001000000000000000000000000000000000000000000000000000001101 false
+0b0000010000000000000000000000000000000000000000000000000000000000 true 0b0000010000000000000000000000000000000000000000000000000000001101 false
+0b0000100000000000000000000000000000000000000000000000000000000000 true 0b0000100000000000000000000000000000000000000000000000000000001101 false
+0b0001000000000000000000000000000000000000000000000000000000000000 true 0b0001000000000000000000000000000000000000000000000000000000001101 false
+0b0010000000000000000000000000000000000000000000000000000000000000 true 0b0010000000000000000000000000000000000000000000000000000000001101 false
+0b0100000000000000000000000000000000000000000000000000000000000000 true 0b0100000000000000000000000000000000000000000000000000000000001101 false
+0b1000000000000000000000000000000000000000000000000000000000000000 true 0b1000000000000000000000000000000000000000000000000000000000001101 false
+
+
+floor2
+
+signed char
+floor(0, 0) = 0, floor(2, 0) = 0, floor(-2, 0) = 0
+floor(1, 1) = 1, floor(3, 1) = 3, floor(-3, 1) = -3
+floor(2, 2) = 2, floor(4, 2) = 4, floor(-4, 2) = -4
+floor(4, 4) = 4, floor(6, 4) = 4, floor(-6, 4) = -8
+floor(8, 8) = 8, floor(10, 8) = 8, floor(-10, 8) = -16
+floor(16, 16) = 16, floor(18, 16) = 16, floor(-18, 16) = -32
+floor(32, 32) = 32, floor(34, 32) = 32, floor(-34, 32) = -64
+floor(64, 64) = 64, floor(66, 64) = 64, floor(-66, 64) = -128
+floor(-128, -128) = -128, floor(-126, -128) = -128, floor(126, -128) = 0
+
+unsigned char
+floor(0, 0) = 0, floor(2, 0) = 0, floor(254, 0) = 0
+floor(1, 1) = 1, floor(3, 1) = 3, floor(253, 1) = 253
+floor(2, 2) = 2, floor(4, 2) = 4, floor(252, 2) = 252
+floor(4, 4) = 4, floor(6, 4) = 4, floor(250, 4) = 248
+floor(8, 8) = 8, floor(10, 8) = 8, floor(246, 8) = 240
+floor(16, 16) = 16, floor(18, 16) = 16, floor(238, 16) = 224
+floor(32, 32) = 32, floor(34, 32) = 32, floor(222, 32) = 192
+floor(64, 64) = 64, floor(66, 64) = 64, floor(190, 64) = 128
+floor(128, 128) = 128, floor(130, 128) = 128, floor(126, 128) = 0
+
+short int
+floor(0, 0) = 0, floor(2, 0) = 0, floor(-2, 0) = 0
+floor(1 1) = 1, floor(3 1) = 3, floor(-3 1) = -3
+floor(2 2) = 2, floor(4 2) = 4, floor(-4 2) = -4
+floor(4 4) = 4, floor(6 4) = 4, floor(-6 4) = -8
+floor(8 8) = 8, floor(10 8) = 8, floor(-10 8) = -16
+floor(16 16) = 16, floor(18 16) = 16, floor(-18 16) = -32
+floor(32 32) = 32, floor(34 32) = 32, floor(-34 32) = -64
+floor(64 64) = 64, floor(66 64) = 64, floor(-66 64) = -128
+floor(128 128) = 128, floor(130 128) = 128, floor(-130 128) = -256
+floor(256 256) = 256, floor(258 256) = 256, floor(-258 256) = -512
+floor(512 512) = 512, floor(514 512) = 512, floor(-514 512) = -1024
+floor(1024 1024) = 1024, floor(1026 1024) = 1024, floor(-1026 1024) = -2048
+floor(2048 2048) = 2048, floor(2050 2048) = 2048, floor(-2050 2048) = -4096
+floor(4096 4096) = 4096, floor(4098 4096) = 4096, floor(-4098 4096) = -8192
+floor(8192 8192) = 8192, floor(8194 8192) = 8192, floor(-8194 8192) = -16384
+floor(16384 16384) = 16384, floor(16386 16384) = 16384, floor(-16386 16384) = -32768
+floor(-32768 -32768) = -32768, floor(-32766 -32768) = -32768, floor(32766 -32768) = 0
+
+unsigned short int
+floor(0, 0) = 0, floor(2, 0) = 0, floor(65534, 0) = 0
+floor(1, 1) = 1, floor(3, 1) = 3, floor(65533, 1) = 65533
+floor(2, 2) = 2, floor(4, 2) = 4, floor(65532, 2) = 65532
+floor(4, 4) = 4, floor(6, 4) = 4, floor(65530, 4) = 65528
+floor(8, 8) = 8, floor(10, 8) = 8, floor(65526, 8) = 65520
+floor(16, 16) = 16, floor(18, 16) = 16, floor(65518, 16) = 65504
+floor(32, 32) = 32, floor(34, 32) = 32, floor(65502, 32) = 65472
+floor(64, 64) = 64, floor(66, 64) = 64, floor(65470, 64) = 65408
+floor(128, 128) = 128, floor(130, 128) = 128, floor(65406, 128) = 65280
+floor(256, 256) = 256, floor(258, 256) = 256, floor(65278, 256) = 65024
+floor(512, 512) = 512, floor(514, 512) = 512, floor(65022, 512) = 64512
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(64510, 1024) = 63488
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(63486, 2048) = 61440
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(61438, 4096) = 57344
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(57342, 8192) = 49152
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(49150, 16384) = 32768
+floor(32768, 32768) = 32768, floor(32770, 32768) = 32768, floor(32766, 32768) = 0
+
+int
+floor(0, 0) = 0, floor(2, 0) = 0, floor(-2, 0) = 0
+floor(1, 1) = 1, floor(3, 1) = 3, floor(-3, 1) = -3
+floor(2, 2) = 2, floor(4, 2) = 4, floor(-4, 2) = -4
+floor(4, 4) = 4, floor(6, 4) = 4, floor(-6, 4) = -8
+floor(8, 8) = 8, floor(10, 8) = 8, floor(-10, 8) = -16
+floor(16, 16) = 16, floor(18, 16) = 16, floor(-18, 16) = -32
+floor(32, 32) = 32, floor(34, 32) = 32, floor(-34, 32) = -64
+floor(64, 64) = 64, floor(66, 64) = 64, floor(-66, 64) = -128
+floor(128, 128) = 128, floor(130, 128) = 128, floor(-130, 128) = -256
+floor(256, 256) = 256, floor(258, 256) = 256, floor(-258, 256) = -512
+floor(512, 512) = 512, floor(514, 512) = 512, floor(-514, 512) = -1024
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(-1026, 1024) = -2048
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(-2050, 2048) = -4096
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(-4098, 4096) = -8192
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(-8194, 8192) = -16384
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(-16386, 16384) = -32768
+floor(32768, 32768) = 32768, floor(32770, 32768) = 32768, floor(-32770, 32768) = -65536
+floor(65536, 65536) = 65536, floor(65538, 65536) = 65536, floor(-65538, 65536) = -131072
+floor(131072, 131072) = 131072, floor(131074, 131072) = 131072, floor(-131074, 131072) = -262144
+floor(262144, 262144) = 262144, floor(262146, 262144) = 262144, floor(-262146, 262144) = -524288
+floor(524288, 524288) = 524288, floor(524290, 524288) = 524288, floor(-524290, 524288) = -1048576
+floor(1048576, 1048576) = 1048576, floor(1048578, 1048576) = 1048576, floor(-1048578, 1048576) = -2097152
+floor(2097152, 2097152) = 2097152, floor(2097154, 2097152) = 2097152, floor(-2097154, 2097152) = -4194304
+floor(4194304, 4194304) = 4194304, floor(4194306, 4194304) = 4194304, floor(-4194306, 4194304) = -8388608
+floor(8388608, 8388608) = 8388608, floor(8388610, 8388608) = 8388608, floor(-8388610, 8388608) = -16777216
+floor(16777216, 16777216) = 16777216, floor(16777218, 16777216) = 16777216, floor(-16777218, 16777216) = -33554432
+floor(33554432, 33554432) = 33554432, floor(33554434, 33554432) = 33554432, floor(-33554434, 33554432) = -67108864
+floor(67108864, 67108864) = 67108864, floor(67108866, 67108864) = 67108864, floor(-67108866, 67108864) = -134217728
+floor(134217728, 134217728) = 134217728, floor(134217730, 134217728) = 134217728, floor(-134217730, 134217728) = -268435456
+floor(268435456, 268435456) = 268435456, floor(268435458, 268435456) = 268435456, floor(-268435458, 268435456) = -536870912
+floor(536870912, 536870912) = 536870912, floor(536870914, 536870912) = 536870912, floor(-536870914, 536870912) = -1073741824
+floor(1073741824, 1073741824) = 1073741824, floor(1073741826, 1073741824) = 1073741824, floor(-1073741826, 1073741824) = -2147483648
+floor(-2147483648, -2147483648) = -2147483648, floor(-2147483646, -2147483648) = -2147483648, floor(2147483646, -2147483648) = 0
+
+unsigned int
+floor(0, 0) = 0, floor(2, 0) = 0, floor(4294967294, 0) = 0
+floor(1, 1) = 1, floor(3, 1) = 3, floor(4294967293, 1) = 4294967293
+floor(2, 2) = 2, floor(4, 2) = 4, floor(4294967292, 2) = 4294967292
+floor(4, 4) = 4, floor(6, 4) = 4, floor(4294967290, 4) = 4294967288
+floor(8, 8) = 8, floor(10, 8) = 8, floor(4294967286, 8) = 4294967280
+floor(16, 16) = 16, floor(18, 16) = 16, floor(4294967278, 16) = 4294967264
+floor(32, 32) = 32, floor(34, 32) = 32, floor(4294967262, 32) = 4294967232
+floor(64, 64) = 64, floor(66, 64) = 64, floor(4294967230, 64) = 4294967168
+floor(128, 128) = 128, floor(130, 128) = 128, floor(4294967166, 128) = 4294967040
+floor(256, 256) = 256, floor(258, 256) = 256, floor(4294967038, 256) = 4294966784
+floor(512, 512) = 512, floor(514, 512) = 512, floor(4294966782, 512) = 4294966272
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(4294966270, 1024) = 4294965248
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(4294965246, 2048) = 4294963200
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(4294963198, 4096) = 4294959104
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(4294959102, 8192) = 4294950912
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(4294950910, 16384) = 4294934528
+floor(32768, 32768) = 32768, floor(32770, 32768) = 32768, floor(4294934526, 32768) = 4294901760
+floor(65536, 65536) = 65536, floor(65538, 65536) = 65536, floor(4294901758, 65536) = 4294836224
+floor(131072, 131072) = 131072, floor(131074, 131072) = 131072, floor(4294836222, 131072) = 4294705152
+floor(262144, 262144) = 262144, floor(262146, 262144) = 262144, floor(4294705150, 262144) = 4294443008
+floor(524288, 524288) = 524288, floor(524290, 524288) = 524288, floor(4294443006, 524288) = 4293918720
+floor(1048576, 1048576) = 1048576, floor(1048578, 1048576) = 1048576, floor(4293918718, 1048576) = 4292870144
+floor(2097152, 2097152) = 2097152, floor(2097154, 2097152) = 2097152, floor(4292870142, 2097152) = 4290772992
+floor(4194304, 4194304) = 4194304, floor(4194306, 4194304) = 4194304, floor(4290772990, 4194304) = 4286578688
+floor(8388608, 8388608) = 8388608, floor(8388610, 8388608) = 8388608, floor(4286578686, 8388608) = 4278190080
+floor(16777216, 16777216) = 16777216, floor(16777218, 16777216) = 16777216, floor(4278190078, 16777216) = 4261412864
+floor(33554432, 33554432) = 33554432, floor(33554434, 33554432) = 33554432, floor(4261412862, 33554432) = 4227858432
+floor(67108864, 67108864) = 67108864, floor(67108866, 67108864) = 67108864, floor(4227858430, 67108864) = 4160749568
+floor(134217728, 134217728) = 134217728, floor(134217730, 134217728) = 134217728, floor(4160749566, 134217728) = 4026531840
+floor(268435456, 268435456) = 268435456, floor(268435458, 268435456) = 268435456, floor(4026531838, 268435456) = 3758096384
+floor(536870912, 536870912) = 536870912, floor(536870914, 536870912) = 536870912, floor(3758096382, 536870912) = 3221225472
+floor(1073741824, 1073741824) = 1073741824, floor(1073741826, 1073741824) = 1073741824, floor(3221225470, 1073741824) = 2147483648
+floor(2147483648, 2147483648) = 2147483648, floor(2147483650, 2147483648) = 2147483648, floor(2147483646, 2147483648) = 0
+
+long int
+floor(0, 0) = 0, floor(2, 0) = 0, floor(-2, 0) = 0
+floor(1, 1) = 1, floor(3, 1) = 3, floor(-3, 1) = -3
+floor(2, 2) = 2, floor(4, 2) = 4, floor(-4, 2) = -4
+floor(4, 4) = 4, floor(6, 4) = 4, floor(-6, 4) = -8
+floor(8, 8) = 8, floor(10, 8) = 8, floor(-10, 8) = -16
+floor(16, 16) = 16, floor(18, 16) = 16, floor(-18, 16) = -32
+floor(32, 32) = 32, floor(34, 32) = 32, floor(-34, 32) = -64
+floor(64, 64) = 64, floor(66, 64) = 64, floor(-66, 64) = -128
+floor(128, 128) = 128, floor(130, 128) = 128, floor(-130, 128) = -256
+floor(256, 256) = 256, floor(258, 256) = 256, floor(-258, 256) = -512
+floor(512, 512) = 512, floor(514, 512) = 512, floor(-514, 512) = -1024
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(-1026, 1024) = -2048
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(-2050, 2048) = -4096
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(-4098, 4096) = -8192
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(-8194, 8192) = -16384
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(-16386, 16384) = -32768
+floor(32768, 32768) = 32768, floor(32770, 32768) = 32768, floor(-32770, 32768) = -65536
+floor(65536, 65536) = 65536, floor(65538, 65536) = 65536, floor(-65538, 65536) = -131072
+floor(131072, 131072) = 131072, floor(131074, 131072) = 131072, floor(-131074, 131072) = -262144
+floor(262144, 262144) = 262144, floor(262146, 262144) = 262144, floor(-262146, 262144) = -524288
+floor(524288, 524288) = 524288, floor(524290, 524288) = 524288, floor(-524290, 524288) = -1048576
+floor(1048576, 1048576) = 1048576, floor(1048578, 1048576) = 1048576, floor(-1048578, 1048576) = -2097152
+floor(2097152, 2097152) = 2097152, floor(2097154, 2097152) = 2097152, floor(-2097154, 2097152) = -4194304
+floor(4194304, 4194304) = 4194304, floor(4194306, 4194304) = 4194304, floor(-4194306, 4194304) = -8388608
+floor(8388608, 8388608) = 8388608, floor(8388610, 8388608) = 8388608, floor(-8388610, 8388608) = -16777216
+floor(16777216, 16777216) = 16777216, floor(16777218, 16777216) = 16777216, floor(-16777218, 16777216) = -33554432
+floor(33554432, 33554432) = 33554432, floor(33554434, 33554432) = 33554432, floor(-33554434, 33554432) = -67108864
+floor(67108864, 67108864) = 67108864, floor(67108866, 67108864) = 67108864, floor(-67108866, 67108864) = -134217728
+floor(134217728, 134217728) = 134217728, floor(134217730, 134217728) = 134217728, floor(-134217730, 134217728) = -268435456
+floor(268435456, 268435456) = 268435456, floor(268435458, 268435456) = 268435456, floor(-268435458, 268435456) = -536870912
+floor(536870912, 536870912) = 536870912, floor(536870914, 536870912) = 536870912, floor(-536870914, 536870912) = -1073741824
+floor(1073741824, 1073741824) = 1073741824, floor(1073741826, 1073741824) = 1073741824, floor(-1073741826, 1073741824) = -2147483648
+floor(-2147483648, -2147483648) = -2147483648, floor(-2147483646, -2147483648) = -2147483648, floor(2147483646, -2147483648) = 0
+
+unsigned long int
+floor(0, 0) = 0, floor(2, 0) = 0, floor(4294967294, 0) = 0
+floor(1, 1) = 1, floor(3, 1) = 3, floor(4294967293, 1) = 4294967293
+floor(2, 2) = 2, floor(4, 2) = 4, floor(4294967292, 2) = 4294967292
+floor(4, 4) = 4, floor(6, 4) = 4, floor(4294967290, 4) = 4294967288
+floor(8, 8) = 8, floor(10, 8) = 8, floor(4294967286, 8) = 4294967280
+floor(16, 16) = 16, floor(18, 16) = 16, floor(4294967278, 16) = 4294967264
+floor(32, 32) = 32, floor(34, 32) = 32, floor(4294967262, 32) = 4294967232
+floor(64, 64) = 64, floor(66, 64) = 64, floor(4294967230, 64) = 4294967168
+floor(128, 128) = 128, floor(130, 128) = 128, floor(4294967166, 128) = 4294967040
+floor(256, 256) = 256, floor(258, 256) = 256, floor(4294967038, 256) = 4294966784
+floor(512, 512) = 512, floor(514, 512) = 512, floor(4294966782, 512) = 4294966272
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(4294966270, 1024) = 4294965248
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(4294965246, 2048) = 4294963200
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(4294963198, 4096) = 4294959104
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(4294959102, 8192) = 4294950912
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(4294950910, 16384) = 4294934528
+floor(32768, 32768) = 32768, floor(32770, 32768) = 32768, floor(4294934526, 32768) = 4294901760
+floor(65536, 65536) = 65536, floor(65538, 65536) = 65536, floor(4294901758, 65536) = 4294836224
+floor(131072, 131072) = 131072, floor(131074, 131072) = 131072, floor(4294836222, 131072) = 4294705152
+floor(262144, 262144) = 262144, floor(262146, 262144) = 262144, floor(4294705150, 262144) = 4294443008
+floor(524288, 524288) = 524288, floor(524290, 524288) = 524288, floor(4294443006, 524288) = 4293918720
+floor(1048576, 1048576) = 1048576, floor(1048578, 1048576) = 1048576, floor(4293918718, 1048576) = 4292870144
+floor(2097152, 2097152) = 2097152, floor(2097154, 2097152) = 2097152, floor(4292870142, 2097152) = 4290772992
+floor(4194304, 4194304) = 4194304, floor(4194306, 4194304) = 4194304, floor(4290772990, 4194304) = 4286578688
+floor(8388608, 8388608) = 8388608, floor(8388610, 8388608) = 8388608, floor(4286578686, 8388608) = 4278190080
+floor(16777216, 16777216) = 16777216, floor(16777218, 16777216) = 16777216, floor(4278190078, 16777216) = 4261412864
+floor(33554432, 33554432) = 33554432, floor(33554434, 33554432) = 33554432, floor(4261412862, 33554432) = 4227858432
+floor(67108864, 67108864) = 67108864, floor(67108866, 67108864) = 67108864, floor(4227858430, 67108864) = 4160749568
+floor(134217728, 134217728) = 134217728, floor(134217730, 134217728) = 134217728, floor(4160749566, 134217728) = 4026531840
+floor(268435456, 268435456) = 268435456, floor(268435458, 268435456) = 268435456, floor(4026531838, 268435456) = 3758096384
+floor(536870912, 536870912) = 536870912, floor(536870914, 536870912) = 536870912, floor(3758096382, 536870912) = 3221225472
+floor(1073741824, 1073741824) = 1073741824, floor(1073741826, 1073741824) = 1073741824, floor(3221225470, 1073741824) = 2147483648
+floor(2147483648, 2147483648) = 2147483648, floor(2147483650, 2147483648) = 2147483648, floor(2147483646, 2147483648) = 0
+
+long long int
+floor(0 0) = 0, floor(2 0) = 0, floor(-2 0) = 0
+floor(1 1) = 1, floor(3 1) = 3, floor(-3 1) = -3
+floor(2 2) = 2, floor(4 2) = 4, floor(-4 2) = -4
+floor(4 4) = 4, floor(6 4) = 4, floor(-6 4) = -8
+floor(8 8) = 8, floor(10 8) = 8, floor(-10 8) = -16
+floor(16 16) = 16, floor(18 16) = 16, floor(-18 16) = -32
+floor(32 32) = 32, floor(34 32) = 32, floor(-34 32) = -64
+floor(64 64) = 64, floor(66 64) = 64, floor(-66 64) = -128
+floor(128 128) = 128, floor(130 128) = 128, floor(-130 128) = -256
+floor(256 256) = 256, floor(258 256) = 256, floor(-258 256) = -512
+floor(512 512) = 512, floor(514 512) = 512, floor(-514 512) = -1024
+floor(1024 1024) = 1024, floor(1026 1024) = 1024, floor(-1026 1024) = -2048
+floor(2048 2048) = 2048, floor(2050 2048) = 2048, floor(-2050 2048) = -4096
+floor(4096 4096) = 4096, floor(4098 4096) = 4096, floor(-4098 4096) = -8192
+floor(8192 8192) = 8192, floor(8194 8192) = 8192, floor(-8194 8192) = -16384
+floor(16384 16384) = 16384, floor(16386 16384) = 16384, floor(-16386 16384) = -32768
+floor(32768 32768) = 32768, floor(32770 32768) = 32768, floor(-32770 32768) = -65536
+floor(65536 65536) = 65536, floor(65538 65536) = 65536, floor(-65538 65536) = -131072
+floor(131072 131072) = 131072, floor(131074 131072) = 131072, floor(-131074 131072) = -262144
+floor(262144 262144) = 262144, floor(262146 262144) = 262144, floor(-262146 262144) = -524288
+floor(524288 524288) = 524288, floor(524290 524288) = 524288, floor(-524290 524288) = -1048576
+floor(1048576 1048576) = 1048576, floor(1048578 1048576) = 1048576, floor(-1048578 1048576) = -2097152
+floor(2097152 2097152) = 2097152, floor(2097154 2097152) = 2097152, floor(-2097154 2097152) = -4194304
+floor(4194304 4194304) = 4194304, floor(4194306 4194304) = 4194304, floor(-4194306 4194304) = -8388608
+floor(8388608 8388608) = 8388608, floor(8388610 8388608) = 8388608, floor(-8388610 8388608) = -16777216
+floor(16777216 16777216) = 16777216, floor(16777218 16777216) = 16777216, floor(-16777218 16777216) = -33554432
+floor(33554432 33554432) = 33554432, floor(33554434 33554432) = 33554432, floor(-33554434 33554432) = -67108864
+floor(67108864 67108864) = 67108864, floor(67108866 67108864) = 67108864, floor(-67108866 67108864) = -134217728
+floor(134217728 134217728) = 134217728, floor(134217730 134217728) = 134217728, floor(-134217730 134217728) = -268435456
+floor(268435456 268435456) = 268435456, floor(268435458 268435456) = 268435456, floor(-268435458 268435456) = -536870912
+floor(536870912 536870912) = 536870912, floor(536870914 536870912) = 536870912, floor(-536870914 536870912) = -1073741824
+floor(1073741824 1073741824) = 1073741824, floor(1073741826 1073741824) = 1073741824, floor(-1073741826 1073741824) = -2147483648
+floor(2147483648 2147483648) = 2147483648, floor(2147483650 2147483648) = 2147483648, floor(-2147483650 2147483648) = -4294967296
+floor(4294967296 4294967296) = 4294967296, floor(4294967298 4294967296) = 4294967296, floor(-4294967298 4294967296) = -8589934592
+floor(8589934592 8589934592) = 8589934592, floor(8589934594 8589934592) = 8589934592, floor(-8589934594 8589934592) = -17179869184
+floor(17179869184 17179869184) = 17179869184, floor(17179869186 17179869184) = 17179869184, floor(-17179869186 17179869184) = -34359738368
+floor(34359738368 34359738368) = 34359738368, floor(34359738370 34359738368) = 34359738368, floor(-34359738370 34359738368) = -68719476736
+floor(68719476736 68719476736) = 68719476736, floor(68719476738 68719476736) = 68719476736, floor(-68719476738 68719476736) = -137438953472
+floor(137438953472 137438953472) = 137438953472, floor(137438953474 137438953472) = 137438953472, floor(-137438953474 137438953472) = -274877906944
+floor(274877906944 274877906944) = 274877906944, floor(274877906946 274877906944) = 274877906944, floor(-274877906946 274877906944) = -549755813888
+floor(549755813888 549755813888) = 549755813888, floor(549755813890 549755813888) = 549755813888, floor(-549755813890 549755813888) = -1099511627776
+floor(1099511627776 1099511627776) = 1099511627776, floor(1099511627778 1099511627776) = 1099511627776, floor(-1099511627778 1099511627776) = -2199023255552
+floor(2199023255552 2199023255552) = 2199023255552, floor(2199023255554 2199023255552) = 2199023255552, floor(-2199023255554 2199023255552) = -4398046511104
+floor(4398046511104 4398046511104) = 4398046511104, floor(4398046511106 4398046511104) = 4398046511104, floor(-4398046511106 4398046511104) = -8796093022208
+floor(8796093022208 8796093022208) = 8796093022208, floor(8796093022210 8796093022208) = 8796093022208, floor(-8796093022210 8796093022208) = -17592186044416
+floor(17592186044416 17592186044416) = 17592186044416, floor(17592186044418 17592186044416) = 17592186044416, floor(-17592186044418 17592186044416) = -35184372088832
+floor(35184372088832 35184372088832) = 35184372088832, floor(35184372088834 35184372088832) = 35184372088832, floor(-35184372088834 35184372088832) = -70368744177664
+floor(70368744177664 70368744177664) = 70368744177664, floor(70368744177666 70368744177664) = 70368744177664, floor(-70368744177666 70368744177664) = -140737488355328
+floor(140737488355328 140737488355328) = 140737488355328, floor(140737488355330 140737488355328) = 140737488355328, floor(-140737488355330 140737488355328) = -281474976710656
+floor(281474976710656 281474976710656) = 281474976710656, floor(281474976710658 281474976710656) = 281474976710656, floor(-281474976710658 281474976710656) = -562949953421312
+floor(562949953421312 562949953421312) = 562949953421312, floor(562949953421314 562949953421312) = 562949953421312, floor(-562949953421314 562949953421312) = -1125899906842624
+floor(1125899906842624 1125899906842624) = 1125899906842624, floor(1125899906842626 1125899906842624) = 1125899906842624, floor(-1125899906842626 1125899906842624) = -2251799813685248
+floor(2251799813685248 2251799813685248) = 2251799813685248, floor(2251799813685250 2251799813685248) = 2251799813685248, floor(-2251799813685250 2251799813685248) = -4503599627370496
+floor(4503599627370496 4503599627370496) = 4503599627370496, floor(4503599627370498 4503599627370496) = 4503599627370496, floor(-4503599627370498 4503599627370496) = -9007199254740992
+floor(9007199254740992 9007199254740992) = 9007199254740992, floor(9007199254740994 9007199254740992) = 9007199254740992, floor(-9007199254740994 9007199254740992) = -18014398509481984
+floor(18014398509481984 18014398509481984) = 18014398509481984, floor(18014398509481986 18014398509481984) = 18014398509481984, floor(-18014398509481986 18014398509481984) = -36028797018963968
+floor(36028797018963968 36028797018963968) = 36028797018963968, floor(36028797018963970 36028797018963968) = 36028797018963968, floor(-36028797018963970 36028797018963968) = -72057594037927936
+floor(72057594037927936 72057594037927936) = 72057594037927936, floor(72057594037927938 72057594037927936) = 72057594037927936, floor(-72057594037927938 72057594037927936) = -144115188075855872
+floor(144115188075855872 144115188075855872) = 144115188075855872, floor(144115188075855874 144115188075855872) = 144115188075855872, floor(-144115188075855874 144115188075855872) = -288230376151711744
+floor(288230376151711744 288230376151711744) = 288230376151711744, floor(288230376151711746 288230376151711744) = 288230376151711744, floor(-288230376151711746 288230376151711744) = -576460752303423488
+floor(576460752303423488 576460752303423488) = 576460752303423488, floor(576460752303423490 576460752303423488) = 576460752303423488, floor(-576460752303423490 576460752303423488) = -1152921504606846976
+floor(1152921504606846976 1152921504606846976) = 1152921504606846976, floor(1152921504606846978 1152921504606846976) = 1152921504606846976, floor(-1152921504606846978 1152921504606846976) = -2305843009213693952
+floor(2305843009213693952 2305843009213693952) = 2305843009213693952, floor(2305843009213693954 2305843009213693952) = 2305843009213693952, floor(-2305843009213693954 2305843009213693952) = -4611686018427387904
+floor(4611686018427387904 4611686018427387904) = 4611686018427387904, floor(4611686018427387906 4611686018427387904) = 4611686018427387904, floor(-4611686018427387906 4611686018427387904) = -9223372036854775808
+floor(-9223372036854775808 -9223372036854775808) = -9223372036854775808, floor(-9223372036854775806 -9223372036854775808) = -9223372036854775808, floor(9223372036854775806 -9223372036854775808) = 0
+
+unsigned long long int
+floor(0, 0) = 0, floor(2, 0) = 0, floor(18446744073709551614, 0) = 0
+floor(1, 1) = 1, floor(3, 1) = 3, floor(18446744073709551613, 1) = 18446744073709551613
+floor(2, 2) = 2, floor(4, 2) = 4, floor(18446744073709551612, 2) = 18446744073709551612
+floor(4, 4) = 4, floor(6, 4) = 4, floor(18446744073709551610, 4) = 18446744073709551608
+floor(8, 8) = 8, floor(10, 8) = 8, floor(18446744073709551606, 8) = 18446744073709551600
+floor(16, 16) = 16, floor(18, 16) = 16, floor(18446744073709551598, 16) = 18446744073709551584
+floor(32, 32) = 32, floor(34, 32) = 32, floor(18446744073709551582, 32) = 18446744073709551552
+floor(64, 64) = 64, floor(66, 64) = 64, floor(18446744073709551550, 64) = 18446744073709551488
+floor(128, 128) = 128, floor(130, 128) = 128, floor(18446744073709551486, 128) = 18446744073709551360
+floor(256, 256) = 256, floor(258, 256) = 256, floor(18446744073709551358, 256) = 18446744073709551104
+floor(512, 512) = 512, floor(514, 512) = 512, floor(18446744073709551102, 512) = 18446744073709550592
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(18446744073709550590, 1024) = 18446744073709549568
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(18446744073709549566, 2048) = 18446744073709547520
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(18446744073709547518, 4096) = 18446744073709543424
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(18446744073709543422, 8192) = 18446744073709535232
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(18446744073709535230, 16384) = 18446744073709518848
+floor(32768, 32768) = 32768, floor(32770, 32768) = 32768, floor(18446744073709518846, 32768) = 18446744073709486080
+floor(65536, 65536) = 65536, floor(65538, 65536) = 65536, floor(18446744073709486078, 65536) = 18446744073709420544
+floor(131072, 131072) = 131072, floor(131074, 131072) = 131072, floor(18446744073709420542, 131072) = 18446744073709289472
+floor(262144, 262144) = 262144, floor(262146, 262144) = 262144, floor(18446744073709289470, 262144) = 18446744073709027328
+floor(524288, 524288) = 524288, floor(524290, 524288) = 524288, floor(18446744073709027326, 524288) = 18446744073708503040
+floor(1048576, 1048576) = 1048576, floor(1048578, 1048576) = 1048576, floor(18446744073708503038, 1048576) = 18446744073707454464
+floor(2097152, 2097152) = 2097152, floor(2097154, 2097152) = 2097152, floor(18446744073707454462, 2097152) = 18446744073705357312
+floor(4194304, 4194304) = 4194304, floor(4194306, 4194304) = 4194304, floor(18446744073705357310, 4194304) = 18446744073701163008
+floor(8388608, 8388608) = 8388608, floor(8388610, 8388608) = 8388608, floor(18446744073701163006, 8388608) = 18446744073692774400
+floor(16777216, 16777216) = 16777216, floor(16777218, 16777216) = 16777216, floor(18446744073692774398, 16777216) = 18446744073675997184
+floor(33554432, 33554432) = 33554432, floor(33554434, 33554432) = 33554432, floor(18446744073675997182, 33554432) = 18446744073642442752
+floor(67108864, 67108864) = 67108864, floor(67108866, 67108864) = 67108864, floor(18446744073642442750, 67108864) = 18446744073575333888
+floor(134217728, 134217728) = 134217728, floor(134217730, 134217728) = 134217728, floor(18446744073575333886, 134217728) = 18446744073441116160
+floor(268435456, 268435456) = 268435456, floor(268435458, 268435456) = 268435456, floor(18446744073441116158, 268435456) = 18446744073172680704
+floor(536870912, 536870912) = 536870912, floor(536870914, 536870912) = 536870912, floor(18446744073172680702, 536870912) = 18446744072635809792
+floor(1073741824, 1073741824) = 1073741824, floor(1073741826, 1073741824) = 1073741824, floor(18446744072635809790, 1073741824) = 18446744071562067968
+floor(2147483648, 2147483648) = 2147483648, floor(2147483650, 2147483648) = 2147483648, floor(18446744071562067966, 2147483648) = 18446744069414584320
+floor(4294967296, 4294967296) = 4294967296, floor(4294967298, 4294967296) = 4294967296, floor(18446744069414584318, 4294967296) = 18446744065119617024
+floor(8589934592, 8589934592) = 8589934592, floor(8589934594, 8589934592) = 8589934592, floor(18446744065119617022, 8589934592) = 18446744056529682432
+floor(17179869184, 17179869184) = 17179869184, floor(17179869186, 17179869184) = 17179869184, floor(18446744056529682430, 17179869184) = 18446744039349813248
+floor(34359738368, 34359738368) = 34359738368, floor(34359738370, 34359738368) = 34359738368, floor(18446744039349813246, 34359738368) = 18446744004990074880
+floor(68719476736, 68719476736) = 68719476736, floor(68719476738, 68719476736) = 68719476736, floor(18446744004990074878, 68719476736) = 18446743936270598144
+floor(137438953472, 137438953472) = 137438953472, floor(137438953474, 137438953472) = 137438953472, floor(18446743936270598142, 137438953472) = 18446743798831644672
+floor(274877906944, 274877906944) = 274877906944, floor(274877906946, 274877906944) = 274877906944, floor(18446743798831644670, 274877906944) = 18446743523953737728
+floor(549755813888, 549755813888) = 549755813888, floor(549755813890, 549755813888) = 549755813888, floor(18446743523953737726, 549755813888) = 18446742974197923840
+floor(1099511627776, 1099511627776) = 1099511627776, floor(1099511627778, 1099511627776) = 1099511627776, floor(18446742974197923838, 1099511627776) = 18446741874686296064
+floor(2199023255552, 2199023255552) = 2199023255552, floor(2199023255554, 2199023255552) = 2199023255552, floor(18446741874686296062, 2199023255552) = 18446739675663040512
+floor(4398046511104, 4398046511104) = 4398046511104, floor(4398046511106, 4398046511104) = 4398046511104, floor(18446739675663040510, 4398046511104) = 18446735277616529408
+floor(8796093022208, 8796093022208) = 8796093022208, floor(8796093022210, 8796093022208) = 8796093022208, floor(18446735277616529406, 8796093022208) = 18446726481523507200
+floor(17592186044416, 17592186044416) = 17592186044416, floor(17592186044418, 17592186044416) = 17592186044416, floor(18446726481523507198, 17592186044416) = 18446708889337462784
+floor(35184372088832, 35184372088832) = 35184372088832, floor(35184372088834, 35184372088832) = 35184372088832, floor(18446708889337462782, 35184372088832) = 18446673704965373952
+floor(70368744177664, 70368744177664) = 70368744177664, floor(70368744177666, 70368744177664) = 70368744177664, floor(18446673704965373950, 70368744177664) = 18446603336221196288
+floor(140737488355328, 140737488355328) = 140737488355328, floor(140737488355330, 140737488355328) = 140737488355328, floor(18446603336221196286, 140737488355328) = 18446462598732840960
+floor(281474976710656, 281474976710656) = 281474976710656, floor(281474976710658, 281474976710656) = 281474976710656, floor(18446462598732840958, 281474976710656) = 18446181123756130304
+floor(562949953421312, 562949953421312) = 562949953421312, floor(562949953421314, 562949953421312) = 562949953421312, floor(18446181123756130302, 562949953421312) = 18445618173802708992
+floor(1125899906842624, 1125899906842624) = 1125899906842624, floor(1125899906842626, 1125899906842624) = 1125899906842624, floor(18445618173802708990, 1125899906842624) = 18444492273895866368
+floor(2251799813685248, 2251799813685248) = 2251799813685248, floor(2251799813685250, 2251799813685248) = 2251799813685248, floor(18444492273895866366, 2251799813685248) = 18442240474082181120
+floor(4503599627370496, 4503599627370496) = 4503599627370496, floor(4503599627370498, 4503599627370496) = 4503599627370496, floor(18442240474082181118, 4503599627370496) = 18437736874454810624
+floor(9007199254740992, 9007199254740992) = 9007199254740992, floor(9007199254740994, 9007199254740992) = 9007199254740992, floor(18437736874454810622, 9007199254740992) = 18428729675200069632
+floor(18014398509481984, 18014398509481984) = 18014398509481984, floor(18014398509481986, 18014398509481984) = 18014398509481984, floor(18428729675200069630, 18014398509481984) = 18410715276690587648
+floor(36028797018963968, 36028797018963968) = 36028797018963968, floor(36028797018963970, 36028797018963968) = 36028797018963968, floor(18410715276690587646, 36028797018963968) = 18374686479671623680
+floor(72057594037927936, 72057594037927936) = 72057594037927936, floor(72057594037927938, 72057594037927936) = 72057594037927936, floor(18374686479671623678, 72057594037927936) = 18302628885633695744
+floor(144115188075855872, 144115188075855872) = 144115188075855872, floor(144115188075855874, 144115188075855872) = 144115188075855872, floor(18302628885633695742, 144115188075855872) = 18158513697557839872
+floor(288230376151711744, 288230376151711744) = 288230376151711744, floor(288230376151711746, 288230376151711744) = 288230376151711744, floor(18158513697557839870, 288230376151711744) = 17870283321406128128
+floor(576460752303423488, 576460752303423488) = 576460752303423488, floor(576460752303423490, 576460752303423488) = 576460752303423488, floor(17870283321406128126, 576460752303423488) = 17293822569102704640
+floor(1152921504606846976, 1152921504606846976) = 1152921504606846976, floor(1152921504606846978, 1152921504606846976) = 1152921504606846976, floor(17293822569102704638, 1152921504606846976) = 16140901064495857664
+floor(2305843009213693952, 2305843009213693952) = 2305843009213693952, floor(2305843009213693954, 2305843009213693952) = 2305843009213693952, floor(16140901064495857662, 2305843009213693952) = 13835058055282163712
+floor(4611686018427387904, 4611686018427387904) = 4611686018427387904, floor(4611686018427387906, 4611686018427387904) = 4611686018427387904, floor(13835058055282163710, 4611686018427387904) = 9223372036854775808
+floor(9223372036854775808, 9223372036854775808) = 9223372036854775808, floor(9223372036854775810, 9223372036854775808) = 9223372036854775808, floor(9223372036854775806, 9223372036854775808) = 0
+
+
+floor
+
+signed char
+floor(1, 1) = 1, floor(3, 1) = 3, floor(-3, 1) = -3
+floor(2, 2) = 2, floor(4, 2) = 4, floor(-4, 2) = -4
+floor(4, 4) = 4, floor(6, 4) = 4, floor(-6, 4) = -4
+floor(8, 8) = 8, floor(10, 8) = 8, floor(-10, 8) = -8
+floor(16, 16) = 16, floor(18, 16) = 16, floor(-18, 16) = -16
+floor(32, 32) = 32, floor(34, 32) = 32, floor(-34, 32) = -32
+floor(64, 64) = 64, floor(66, 64) = 64, floor(-66, 64) = -64
+floor(-128, -128) = -128, floor(-126, -128) = 0, floor(126, -128) = 0
+
+unsigned char
+floor(1, 1) = 1, floor(3, 1) = 3, floor(253, 1) = 253
+floor(2, 2) = 2, floor(4, 2) = 4, floor(252, 2) = 252
+floor(4, 4) = 4, floor(6, 4) = 4, floor(250, 4) = 248
+floor(8, 8) = 8, floor(10, 8) = 8, floor(246, 8) = 240
+floor(16, 16) = 16, floor(18, 16) = 16, floor(238, 16) = 224
+floor(32, 32) = 32, floor(34, 32) = 32, floor(222, 32) = 192
+floor(64, 64) = 64, floor(66, 64) = 64, floor(190, 64) = 128
+floor(128, 128) = 128, floor(130, 128) = 128, floor(126, 128) = 0
+
+short int
+floor(1, 1) = 1, floor(3, 1) = 3, floor(-3, 1) = 65533
+floor(2, 2) = 2, floor(4, 2) = 4, floor(-4, 2) = 65532
+floor(4, 4) = 4, floor(6, 4) = 4, floor(-6, 4) = 65532
+floor(8, 8) = 8, floor(10, 8) = 8, floor(-10, 8) = 65528
+floor(16, 16) = 16, floor(18, 16) = 16, floor(-18, 16) = 65520
+floor(32, 32) = 32, floor(34, 32) = 32, floor(-34, 32) = 65504
+floor(64, 64) = 64, floor(66, 64) = 64, floor(-66, 64) = 65472
+floor(128, 128) = 128, floor(130, 128) = 128, floor(-130, 128) = 65408
+floor(256, 256) = 256, floor(258, 256) = 256, floor(-258, 256) = 65280
+floor(512, 512) = 512, floor(514, 512) = 512, floor(-514, 512) = 65024
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(-1026, 1024) = 64512
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(-2050, 2048) = 63488
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(-4098, 4096) = 61440
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(-8194, 8192) = 57344
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(-16386, 16384) = 49152
+floor(-32768, -32768) = 32768, floor(-32766, -32768) = 0, floor(32766, -32768) = 0
+
+unsigned short int
+floor(1, 1) = 1, floor(3, 1) = 3, floor(65533, 1) = 65533
+floor(2, 2) = 2, floor(4, 2) = 4, floor(65532, 2) = 65532
+floor(4, 4) = 4, floor(6, 4) = 4, floor(65530, 4) = 65528
+floor(8, 8) = 8, floor(10, 8) = 8, floor(65526, 8) = 65520
+floor(16, 16) = 16, floor(18, 16) = 16, floor(65518, 16) = 65504
+floor(32, 32) = 32, floor(34, 32) = 32, floor(65502, 32) = 65472
+floor(64, 64) = 64, floor(66, 64) = 64, floor(65470, 64) = 65408
+floor(128, 128) = 128, floor(130, 128) = 128, floor(65406, 128) = 65280
+floor(256, 256) = 256, floor(258, 256) = 256, floor(65278, 256) = 65024
+floor(512, 512) = 512, floor(514, 512) = 512, floor(65022, 512) = 64512
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(64510, 1024) = 63488
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(63486, 2048) = 61440
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(61438, 4096) = 57344
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(57342, 8192) = 49152
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(49150, 16384) = 32768
+floor(32768, 32768) = 32768, floor(32770, 32768) = 32768, floor(32766, 32768) = 0
+
+int
+floor(1, 1) = 1, floor(3, 1) = 3, floor(-3, 1) = -3
+floor(2, 2) = 2, floor(4, 2) = 4, floor(-4, 2) = -4
+floor(4, 4) = 4, floor(6, 4) = 4, floor(-6, 4) = -4
+floor(8, 8) = 8, floor(10, 8) = 8, floor(-10, 8) = -8
+floor(16, 16) = 16, floor(18, 16) = 16, floor(-18, 16) = -16
+floor(32, 32) = 32, floor(34, 32) = 32, floor(-34, 32) = -32
+floor(64, 64) = 64, floor(66, 64) = 64, floor(-66, 64) = -64
+floor(128, 128) = 128, floor(130, 128) = 128, floor(-130, 128) = -128
+floor(256, 256) = 256, floor(258, 256) = 256, floor(-258, 256) = -256
+floor(512, 512) = 512, floor(514, 512) = 512, floor(-514, 512) = -512
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(-1026, 1024) = -1024
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(-2050, 2048) = -2048
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(-4098, 4096) = -4096
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(-8194, 8192) = -8192
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(-16386, 16384) = -16384
+floor(32768, 32768) = 32768, floor(32770, 32768) = 32768, floor(-32770, 32768) = -32768
+floor(65536, 65536) = 65536, floor(65538, 65536) = 65536, floor(-65538, 65536) = -65536
+floor(131072, 131072) = 131072, floor(131074, 131072) = 131072, floor(-131074, 131072) = -131072
+floor(262144, 262144) = 262144, floor(262146, 262144) = 262144, floor(-262146, 262144) = -262144
+floor(524288, 524288) = 524288, floor(524290, 524288) = 524288, floor(-524290, 524288) = -524288
+floor(1048576, 1048576) = 1048576, floor(1048578, 1048576) = 1048576, floor(-1048578, 1048576) = -1048576
+floor(2097152, 2097152) = 2097152, floor(2097154, 2097152) = 2097152, floor(-2097154, 2097152) = -2097152
+floor(4194304, 4194304) = 4194304, floor(4194306, 4194304) = 4194304, floor(-4194306, 4194304) = -4194304
+floor(8388608, 8388608) = 8388608, floor(8388610, 8388608) = 8388608, floor(-8388610, 8388608) = -8388608
+floor(16777216, 16777216) = 16777216, floor(16777218, 16777216) = 16777216, floor(-16777218, 16777216) = -16777216
+floor(33554432, 33554432) = 33554432, floor(33554434, 33554432) = 33554432, floor(-33554434, 33554432) = -33554432
+floor(67108864, 67108864) = 67108864, floor(67108866, 67108864) = 67108864, floor(-67108866, 67108864) = -67108864
+floor(134217728, 134217728) = 134217728, floor(134217730, 134217728) = 134217728, floor(-134217730, 134217728) = -134217728
+floor(268435456, 268435456) = 268435456, floor(268435458, 268435456) = 268435456, floor(-268435458, 268435456) = -268435456
+floor(536870912, 536870912) = 536870912, floor(536870914, 536870912) = 536870912, floor(-536870914, 536870912) = -536870912
+floor(1073741824, 1073741824) = 1073741824, floor(1073741826, 1073741824) = 1073741824, floor(-1073741826, 1073741824) = -1073741824
+floor(-2147483648, -2147483648) = -2147483648, floor(-2147483646, -2147483648) = 0, floor(2147483646, -2147483648) = 0
+
+unsigned int
+floor(1, 1) = 1, floor(3, 1) = 3, floor(4294967293, 1) = 4294967293
+floor(2, 2) = 2, floor(4, 2) = 4, floor(4294967292, 2) = 4294967292
+floor(4, 4) = 4, floor(6, 4) = 4, floor(4294967290, 4) = 4294967288
+floor(8, 8) = 8, floor(10, 8) = 8, floor(4294967286, 8) = 4294967280
+floor(16, 16) = 16, floor(18, 16) = 16, floor(4294967278, 16) = 4294967264
+floor(32, 32) = 32, floor(34, 32) = 32, floor(4294967262, 32) = 4294967232
+floor(64, 64) = 64, floor(66, 64) = 64, floor(4294967230, 64) = 4294967168
+floor(128, 128) = 128, floor(130, 128) = 128, floor(4294967166, 128) = 4294967040
+floor(256, 256) = 256, floor(258, 256) = 256, floor(4294967038, 256) = 4294966784
+floor(512, 512) = 512, floor(514, 512) = 512, floor(4294966782, 512) = 4294966272
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(4294966270, 1024) = 4294965248
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(4294965246, 2048) = 4294963200
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(4294963198, 4096) = 4294959104
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(4294959102, 8192) = 4294950912
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(4294950910, 16384) = 4294934528
+floor(32768, 32768) = 32768, floor(32770, 32768) = 32768, floor(4294934526, 32768) = 4294901760
+floor(65536, 65536) = 65536, floor(65538, 65536) = 65536, floor(4294901758, 65536) = 4294836224
+floor(131072, 131072) = 131072, floor(131074, 131072) = 131072, floor(4294836222, 131072) = 4294705152
+floor(262144, 262144) = 262144, floor(262146, 262144) = 262144, floor(4294705150, 262144) = 4294443008
+floor(524288, 524288) = 524288, floor(524290, 524288) = 524288, floor(4294443006, 524288) = 4293918720
+floor(1048576, 1048576) = 1048576, floor(1048578, 1048576) = 1048576, floor(4293918718, 1048576) = 4292870144
+floor(2097152, 2097152) = 2097152, floor(2097154, 2097152) = 2097152, floor(4292870142, 2097152) = 4290772992
+floor(4194304, 4194304) = 4194304, floor(4194306, 4194304) = 4194304, floor(4290772990, 4194304) = 4286578688
+floor(8388608, 8388608) = 8388608, floor(8388610, 8388608) = 8388608, floor(4286578686, 8388608) = 4278190080
+floor(16777216, 16777216) = 16777216, floor(16777218, 16777216) = 16777216, floor(4278190078, 16777216) = 4261412864
+floor(33554432, 33554432) = 33554432, floor(33554434, 33554432) = 33554432, floor(4261412862, 33554432) = 4227858432
+floor(67108864, 67108864) = 67108864, floor(67108866, 67108864) = 67108864, floor(4227858430, 67108864) = 4160749568
+floor(134217728, 134217728) = 134217728, floor(134217730, 134217728) = 134217728, floor(4160749566, 134217728) = 4026531840
+floor(268435456, 268435456) = 268435456, floor(268435458, 268435456) = 268435456, floor(4026531838, 268435456) = 3758096384
+floor(536870912, 536870912) = 536870912, floor(536870914, 536870912) = 536870912, floor(3758096382, 536870912) = 3221225472
+floor(1073741824, 1073741824) = 1073741824, floor(1073741826, 1073741824) = 1073741824, floor(3221225470, 1073741824) = 2147483648
+floor(2147483648, 2147483648) = 2147483648, floor(2147483650, 2147483648) = 2147483648, floor(2147483646, 2147483648) = 0
+
+long int
+floor(1, 1) = 1, floor(3, 1) = 3, floor(-3, 1) = -3
+floor(2, 2) = 2, floor(4, 2) = 4, floor(-4, 2) = -4
+floor(4, 4) = 4, floor(6, 4) = 4, floor(-6, 4) = -4
+floor(8, 8) = 8, floor(10, 8) = 8, floor(-10, 8) = -8
+floor(16, 16) = 16, floor(18, 16) = 16, floor(-18, 16) = -16
+floor(32, 32) = 32, floor(34, 32) = 32, floor(-34, 32) = -32
+floor(64, 64) = 64, floor(66, 64) = 64, floor(-66, 64) = -64
+floor(128, 128) = 128, floor(130, 128) = 128, floor(-130, 128) = -128
+floor(256, 256) = 256, floor(258, 256) = 256, floor(-258, 256) = -256
+floor(512, 512) = 512, floor(514, 512) = 512, floor(-514, 512) = -512
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(-1026, 1024) = -1024
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(-2050, 2048) = -2048
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(-4098, 4096) = -4096
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(-8194, 8192) = -8192
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(-16386, 16384) = -16384
+floor(32768, 32768) = 32768, floor(32770, 32768) = 32768, floor(-32770, 32768) = -32768
+floor(65536, 65536) = 65536, floor(65538, 65536) = 65536, floor(-65538, 65536) = -65536
+floor(131072, 131072) = 131072, floor(131074, 131072) = 131072, floor(-131074, 131072) = -131072
+floor(262144, 262144) = 262144, floor(262146, 262144) = 262144, floor(-262146, 262144) = -262144
+floor(524288, 524288) = 524288, floor(524290, 524288) = 524288, floor(-524290, 524288) = -524288
+floor(1048576, 1048576) = 1048576, floor(1048578, 1048576) = 1048576, floor(-1048578, 1048576) = -1048576
+floor(2097152, 2097152) = 2097152, floor(2097154, 2097152) = 2097152, floor(-2097154, 2097152) = -2097152
+floor(4194304, 4194304) = 4194304, floor(4194306, 4194304) = 4194304, floor(-4194306, 4194304) = -4194304
+floor(8388608, 8388608) = 8388608, floor(8388610, 8388608) = 8388608, floor(-8388610, 8388608) = -8388608
+floor(16777216, 16777216) = 16777216, floor(16777218, 16777216) = 16777216, floor(-16777218, 16777216) = -16777216
+floor(33554432, 33554432) = 33554432, floor(33554434, 33554432) = 33554432, floor(-33554434, 33554432) = -33554432
+floor(67108864, 67108864) = 67108864, floor(67108866, 67108864) = 67108864, floor(-67108866, 67108864) = -67108864
+floor(134217728, 134217728) = 134217728, floor(134217730, 134217728) = 134217728, floor(-134217730, 134217728) = -134217728
+floor(268435456, 268435456) = 268435456, floor(268435458, 268435456) = 268435456, floor(-268435458, 268435456) = -268435456
+floor(536870912, 536870912) = 536870912, floor(536870914, 536870912) = 536870912, floor(-536870914, 536870912) = -536870912
+floor(1073741824, 1073741824) = 1073741824, floor(1073741826, 1073741824) = 1073741824, floor(-1073741826, 1073741824) = -1073741824
+floor(-2147483648, -2147483648) = -2147483648, floor(-2147483646, -2147483648) = 0, floor(2147483646, -2147483648) = 0
+
+unsigned long int
+floor(1, 1) = 1, floor(3, 1) = 3, floor(4294967293, 1) = 4294967293
+floor(2, 2) = 2, floor(4, 2) = 4, floor(4294967292, 2) = 4294967292
+floor(4, 4) = 4, floor(6, 4) = 4, floor(4294967290, 4) = 4294967288
+floor(8, 8) = 8, floor(10, 8) = 8, floor(4294967286, 8) = 4294967280
+floor(16, 16) = 16, floor(18, 16) = 16, floor(4294967278, 16) = 4294967264
+floor(32, 32) = 32, floor(34, 32) = 32, floor(4294967262, 32) = 4294967232
+floor(64, 64) = 64, floor(66, 64) = 64, floor(4294967230, 64) = 4294967168
+floor(128, 128) = 128, floor(130, 128) = 128, floor(4294967166, 128) = 4294967040
+floor(256, 256) = 256, floor(258, 256) = 256, floor(4294967038, 256) = 4294966784
+floor(512, 512) = 512, floor(514, 512) = 512, floor(4294966782, 512) = 4294966272
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(4294966270, 1024) = 4294965248
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(4294965246, 2048) = 4294963200
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(4294963198, 4096) = 4294959104
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(4294959102, 8192) = 4294950912
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(4294950910, 16384) = 4294934528
+floor(32768, 32768) = 32768, floor(32770, 32768) = 32768, floor(4294934526, 32768) = 4294901760
+floor(65536, 65536) = 65536, floor(65538, 65536) = 65536, floor(4294901758, 65536) = 4294836224
+floor(131072, 131072) = 131072, floor(131074, 131072) = 131072, floor(4294836222, 131072) = 4294705152
+floor(262144, 262144) = 262144, floor(262146, 262144) = 262144, floor(4294705150, 262144) = 4294443008
+floor(524288, 524288) = 524288, floor(524290, 524288) = 524288, floor(4294443006, 524288) = 4293918720
+floor(1048576, 1048576) = 1048576, floor(1048578, 1048576) = 1048576, floor(4293918718, 1048576) = 4292870144
+floor(2097152, 2097152) = 2097152, floor(2097154, 2097152) = 2097152, floor(4292870142, 2097152) = 4290772992
+floor(4194304, 4194304) = 4194304, floor(4194306, 4194304) = 4194304, floor(4290772990, 4194304) = 4286578688
+floor(8388608, 8388608) = 8388608, floor(8388610, 8388608) = 8388608, floor(4286578686, 8388608) = 4278190080
+floor(16777216, 16777216) = 16777216, floor(16777218, 16777216) = 16777216, floor(4278190078, 16777216) = 4261412864
+floor(33554432, 33554432) = 33554432, floor(33554434, 33554432) = 33554432, floor(4261412862, 33554432) = 4227858432
+floor(67108864, 67108864) = 67108864, floor(67108866, 67108864) = 67108864, floor(4227858430, 67108864) = 4160749568
+floor(134217728, 134217728) = 134217728, floor(134217730, 134217728) = 134217728, floor(4160749566, 134217728) = 4026531840
+floor(268435456, 268435456) = 268435456, floor(268435458, 268435456) = 268435456, floor(4026531838, 268435456) = 3758096384
+floor(536870912, 536870912) = 536870912, floor(536870914, 536870912) = 536870912, floor(3758096382, 536870912) = 3221225472
+floor(1073741824, 1073741824) = 1073741824, floor(1073741826, 1073741824) = 1073741824, floor(3221225470, 1073741824) = 2147483648
+floor(2147483648, 2147483648) = 2147483648, floor(2147483650, 2147483648) = 2147483648, floor(2147483646, 2147483648) = 0
+
+long long int
+floor(1, 1) = 1, floor(3, 1) = 3, floor(-3, 1) = -3
+floor(2, 2) = 2, floor(4, 2) = 4, floor(-4, 2) = -4
+floor(4, 4) = 4, floor(6, 4) = 4, floor(-6, 4) = -4
+floor(8, 8) = 8, floor(10, 8) = 8, floor(-10, 8) = -8
+floor(16, 16) = 16, floor(18, 16) = 16, floor(-18, 16) = -16
+floor(32, 32) = 32, floor(34, 32) = 32, floor(-34, 32) = -32
+floor(64, 64) = 64, floor(66, 64) = 64, floor(-66, 64) = -64
+floor(128, 128) = 128, floor(130, 128) = 128, floor(-130, 128) = -128
+floor(256, 256) = 256, floor(258, 256) = 256, floor(-258, 256) = -256
+floor(512, 512) = 512, floor(514, 512) = 512, floor(-514, 512) = -512
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(-1026, 1024) = -1024
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(-2050, 2048) = -2048
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(-4098, 4096) = -4096
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(-8194, 8192) = -8192
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(-16386, 16384) = -16384
+floor(32768, 32768) = 32768, floor(32770, 32768) = 32768, floor(-32770, 32768) = -32768
+floor(65536, 65536) = 65536, floor(65538, 65536) = 65536, floor(-65538, 65536) = -65536
+floor(131072, 131072) = 131072, floor(131074, 131072) = 131072, floor(-131074, 131072) = -131072
+floor(262144, 262144) = 262144, floor(262146, 262144) = 262144, floor(-262146, 262144) = -262144
+floor(524288, 524288) = 524288, floor(524290, 524288) = 524288, floor(-524290, 524288) = -524288
+floor(1048576, 1048576) = 1048576, floor(1048578, 1048576) = 1048576, floor(-1048578, 1048576) = -1048576
+floor(2097152, 2097152) = 2097152, floor(2097154, 2097152) = 2097152, floor(-2097154, 2097152) = -2097152
+floor(4194304, 4194304) = 4194304, floor(4194306, 4194304) = 4194304, floor(-4194306, 4194304) = -4194304
+floor(8388608, 8388608) = 8388608, floor(8388610, 8388608) = 8388608, floor(-8388610, 8388608) = -8388608
+floor(16777216, 16777216) = 16777216, floor(16777218, 16777216) = 16777216, floor(-16777218, 16777216) = -16777216
+floor(33554432, 33554432) = 33554432, floor(33554434, 33554432) = 33554432, floor(-33554434, 33554432) = -33554432
+floor(67108864, 67108864) = 67108864, floor(67108866, 67108864) = 67108864, floor(-67108866, 67108864) = -67108864
+floor(134217728, 134217728) = 134217728, floor(134217730, 134217728) = 134217728, floor(-134217730, 134217728) = -134217728
+floor(268435456, 268435456) = 268435456, floor(268435458, 268435456) = 268435456, floor(-268435458, 268435456) = -268435456
+floor(536870912, 536870912) = 536870912, floor(536870914, 536870912) = 536870912, floor(-536870914, 536870912) = -536870912
+floor(1073741824, 1073741824) = 1073741824, floor(1073741826, 1073741824) = 1073741824, floor(-1073741826, 1073741824) = -1073741824
+floor(2147483648, 2147483648) = 2147483648, floor(2147483650, 2147483648) = 2147483648, floor(-2147483650, 2147483648) = -2147483648
+floor(4294967296, 4294967296) = 4294967296, floor(4294967298, 4294967296) = 4294967296, floor(-4294967298, 4294967296) = -4294967296
+floor(8589934592, 8589934592) = 8589934592, floor(8589934594, 8589934592) = 8589934592, floor(-8589934594, 8589934592) = -8589934592
+floor(17179869184, 17179869184) = 17179869184, floor(17179869186, 17179869184) = 17179869184, floor(-17179869186, 17179869184) = -17179869184
+floor(34359738368, 34359738368) = 34359738368, floor(34359738370, 34359738368) = 34359738368, floor(-34359738370, 34359738368) = -34359738368
+floor(68719476736, 68719476736) = 68719476736, floor(68719476738, 68719476736) = 68719476736, floor(-68719476738, 68719476736) = -68719476736
+floor(137438953472, 137438953472) = 137438953472, floor(137438953474, 137438953472) = 137438953472, floor(-137438953474, 137438953472) = -137438953472
+floor(274877906944, 274877906944) = 274877906944, floor(274877906946, 274877906944) = 274877906944, floor(-274877906946, 274877906944) = -274877906944
+floor(549755813888, 549755813888) = 549755813888, floor(549755813890, 549755813888) = 549755813888, floor(-549755813890, 549755813888) = -549755813888
+floor(1099511627776, 1099511627776) = 1099511627776, floor(1099511627778, 1099511627776) = 1099511627776, floor(-1099511627778, 1099511627776) = -1099511627776
+floor(2199023255552, 2199023255552) = 2199023255552, floor(2199023255554, 2199023255552) = 2199023255552, floor(-2199023255554, 2199023255552) = -2199023255552
+floor(4398046511104, 4398046511104) = 4398046511104, floor(4398046511106, 4398046511104) = 4398046511104, floor(-4398046511106, 4398046511104) = -4398046511104
+floor(8796093022208, 8796093022208) = 8796093022208, floor(8796093022210, 8796093022208) = 8796093022208, floor(-8796093022210, 8796093022208) = -8796093022208
+floor(17592186044416, 17592186044416) = 17592186044416, floor(17592186044418, 17592186044416) = 17592186044416, floor(-17592186044418, 17592186044416) = -17592186044416
+floor(35184372088832, 35184372088832) = 35184372088832, floor(35184372088834, 35184372088832) = 35184372088832, floor(-35184372088834, 35184372088832) = -35184372088832
+floor(70368744177664, 70368744177664) = 70368744177664, floor(70368744177666, 70368744177664) = 70368744177664, floor(-70368744177666, 70368744177664) = -70368744177664
+floor(140737488355328, 140737488355328) = 140737488355328, floor(140737488355330, 140737488355328) = 140737488355328, floor(-140737488355330, 140737488355328) = -140737488355328
+floor(281474976710656, 281474976710656) = 281474976710656, floor(281474976710658, 281474976710656) = 281474976710656, floor(-281474976710658, 281474976710656) = -281474976710656
+floor(562949953421312, 562949953421312) = 562949953421312, floor(562949953421314, 562949953421312) = 562949953421312, floor(-562949953421314, 562949953421312) = -562949953421312
+floor(1125899906842624, 1125899906842624) = 1125899906842624, floor(1125899906842626, 1125899906842624) = 1125899906842624, floor(-1125899906842626, 1125899906842624) = -1125899906842624
+floor(2251799813685248, 2251799813685248) = 2251799813685248, floor(2251799813685250, 2251799813685248) = 2251799813685248, floor(-2251799813685250, 2251799813685248) = -2251799813685248
+floor(4503599627370496, 4503599627370496) = 4503599627370496, floor(4503599627370498, 4503599627370496) = 4503599627370496, floor(-4503599627370498, 4503599627370496) = -4503599627370496
+floor(9007199254740992, 9007199254740992) = 9007199254740992, floor(9007199254740994, 9007199254740992) = 9007199254740992, floor(-9007199254740994, 9007199254740992) = -9007199254740992
+floor(18014398509481984, 18014398509481984) = 18014398509481984, floor(18014398509481986, 18014398509481984) = 18014398509481984, floor(-18014398509481986, 18014398509481984) = -18014398509481984
+floor(36028797018963968, 36028797018963968) = 36028797018963968, floor(36028797018963970, 36028797018963968) = 36028797018963968, floor(-36028797018963970, 36028797018963968) = -36028797018963968
+floor(72057594037927936, 72057594037927936) = 72057594037927936, floor(72057594037927938, 72057594037927936) = 72057594037927936, floor(-72057594037927938, 72057594037927936) = -72057594037927936
+floor(144115188075855872, 144115188075855872) = 144115188075855872, floor(144115188075855874, 144115188075855872) = 144115188075855872, floor(-144115188075855874, 144115188075855872) = -144115188075855872
+floor(288230376151711744, 288230376151711744) = 288230376151711744, floor(288230376151711746, 288230376151711744) = 288230376151711744, floor(-288230376151711746, 288230376151711744) = -288230376151711744
+floor(576460752303423488, 576460752303423488) = 576460752303423488, floor(576460752303423490, 576460752303423488) = 576460752303423488, floor(-576460752303423490, 576460752303423488) = -576460752303423488
+floor(1152921504606846976, 1152921504606846976) = 1152921504606846976, floor(1152921504606846978, 1152921504606846976) = 1152921504606846976, floor(-1152921504606846978, 1152921504606846976) = -1152921504606846976
+floor(2305843009213693952, 2305843009213693952) = 2305843009213693952, floor(2305843009213693954, 2305843009213693952) = 2305843009213693952, floor(-2305843009213693954, 2305843009213693952) = -2305843009213693952
+floor(4611686018427387904, 4611686018427387904) = 4611686018427387904, floor(4611686018427387906, 4611686018427387904) = 4611686018427387904, floor(-4611686018427387906, 4611686018427387904) = -4611686018427387904
+floor(-9223372036854775808, -9223372036854775808) = -9223372036854775808, floor(-9223372036854775806, -9223372036854775808) = 0, floor(9223372036854775806, -9223372036854775808) = 0
+
+unsigned long long int
+floor(1, 1) = 1, floor(3, 1) = 3, floor(18446744073709551613, 1) = 18446744073709551613
+floor(2, 2) = 2, floor(4, 2) = 4, floor(18446744073709551612, 2) = 18446744073709551612
+floor(4, 4) = 4, floor(6, 4) = 4, floor(18446744073709551610, 4) = 18446744073709551608
+floor(8, 8) = 8, floor(10, 8) = 8, floor(18446744073709551606, 8) = 18446744073709551600
+floor(16, 16) = 16, floor(18, 16) = 16, floor(18446744073709551598, 16) = 18446744073709551584
+floor(32, 32) = 32, floor(34, 32) = 32, floor(18446744073709551582, 32) = 18446744073709551552
+floor(64, 64) = 64, floor(66, 64) = 64, floor(18446744073709551550, 64) = 18446744073709551488
+floor(128, 128) = 128, floor(130, 128) = 128, floor(18446744073709551486, 128) = 18446744073709551360
+floor(256, 256) = 256, floor(258, 256) = 256, floor(18446744073709551358, 256) = 18446744073709551104
+floor(512, 512) = 512, floor(514, 512) = 512, floor(18446744073709551102, 512) = 18446744073709550592
+floor(1024, 1024) = 1024, floor(1026, 1024) = 1024, floor(18446744073709550590, 1024) = 18446744073709549568
+floor(2048, 2048) = 2048, floor(2050, 2048) = 2048, floor(18446744073709549566, 2048) = 18446744073709547520
+floor(4096, 4096) = 4096, floor(4098, 4096) = 4096, floor(18446744073709547518, 4096) = 18446744073709543424
+floor(8192, 8192) = 8192, floor(8194, 8192) = 8192, floor(18446744073709543422, 8192) = 18446744073709535232
+floor(16384, 16384) = 16384, floor(16386, 16384) = 16384, floor(18446744073709535230, 16384) = 18446744073709518848
+floor(32768, 32768) = 32768, floor(32770, 32768) = 32768, floor(18446744073709518846, 32768) = 18446744073709486080
+floor(65536, 65536) = 65536, floor(65538, 65536) = 65536, floor(18446744073709486078, 65536) = 18446744073709420544
+floor(131072, 131072) = 131072, floor(131074, 131072) = 131072, floor(18446744073709420542, 131072) = 18446744073709289472
+floor(262144, 262144) = 262144, floor(262146, 262144) = 262144, floor(18446744073709289470, 262144) = 18446744073709027328
+floor(524288, 524288) = 524288, floor(524290, 524288) = 524288, floor(18446744073709027326, 524288) = 18446744073708503040
+floor(1048576, 1048576) = 1048576, floor(1048578, 1048576) = 1048576, floor(18446744073708503038, 1048576) = 18446744073707454464
+floor(2097152, 2097152) = 2097152, floor(2097154, 2097152) = 2097152, floor(18446744073707454462, 2097152) = 18446744073705357312
+floor(4194304, 4194304) = 4194304, floor(4194306, 4194304) = 4194304, floor(18446744073705357310, 4194304) = 18446744073701163008
+floor(8388608, 8388608) = 8388608, floor(8388610, 8388608) = 8388608, floor(18446744073701163006, 8388608) = 18446744073692774400
+floor(16777216, 16777216) = 16777216, floor(16777218, 16777216) = 16777216, floor(18446744073692774398, 16777216) = 18446744073675997184
+floor(33554432, 33554432) = 33554432, floor(33554434, 33554432) = 33554432, floor(18446744073675997182, 33554432) = 18446744073642442752
+floor(67108864, 67108864) = 67108864, floor(67108866, 67108864) = 67108864, floor(18446744073642442750, 67108864) = 18446744073575333888
+floor(134217728, 134217728) = 134217728, floor(134217730, 134217728) = 134217728, floor(18446744073575333886, 134217728) = 18446744073441116160
+floor(268435456, 268435456) = 268435456, floor(268435458, 268435456) = 268435456, floor(18446744073441116158, 268435456) = 18446744073172680704
+floor(536870912, 536870912) = 536870912, floor(536870914, 536870912) = 536870912, floor(18446744073172680702, 536870912) = 18446744072635809792
+floor(1073741824, 1073741824) = 1073741824, floor(1073741826, 1073741824) = 1073741824, floor(18446744072635809790, 1073741824) = 18446744071562067968
+floor(2147483648, 2147483648) = 2147483648, floor(2147483650, 2147483648) = 2147483648, floor(18446744071562067966, 2147483648) = 18446744069414584320
+floor(4294967296, 4294967296) = 4294967296, floor(4294967298, 4294967296) = 4294967296, floor(18446744069414584318, 4294967296) = 18446744065119617024
+floor(8589934592, 8589934592) = 8589934592, floor(8589934594, 8589934592) = 8589934592, floor(18446744065119617022, 8589934592) = 18446744056529682432
+floor(17179869184, 17179869184) = 17179869184, floor(17179869186, 17179869184) = 17179869184, floor(18446744056529682430, 17179869184) = 18446744039349813248
+floor(34359738368, 34359738368) = 34359738368, floor(34359738370, 34359738368) = 34359738368, floor(18446744039349813246, 34359738368) = 18446744004990074880
+floor(68719476736, 68719476736) = 68719476736, floor(68719476738, 68719476736) = 68719476736, floor(18446744004990074878, 68719476736) = 18446743936270598144
+floor(137438953472, 137438953472) = 137438953472, floor(137438953474, 137438953472) = 137438953472, floor(18446743936270598142, 137438953472) = 18446743798831644672
+floor(274877906944, 274877906944) = 274877906944, floor(274877906946, 274877906944) = 274877906944, floor(18446743798831644670, 274877906944) = 18446743523953737728
+floor(549755813888, 549755813888) = 549755813888, floor(549755813890, 549755813888) = 549755813888, floor(18446743523953737726, 549755813888) = 18446742974197923840
+floor(1099511627776, 1099511627776) = 1099511627776, floor(1099511627778, 1099511627776) = 1099511627776, floor(18446742974197923838, 1099511627776) = 18446741874686296064
+floor(2199023255552, 2199023255552) = 2199023255552, floor(2199023255554, 2199023255552) = 2199023255552, floor(18446741874686296062, 2199023255552) = 18446739675663040512
+floor(4398046511104, 4398046511104) = 4398046511104, floor(4398046511106, 4398046511104) = 4398046511104, floor(18446739675663040510, 4398046511104) = 18446735277616529408
+floor(8796093022208, 8796093022208) = 8796093022208, floor(8796093022210, 8796093022208) = 8796093022208, floor(18446735277616529406, 8796093022208) = 18446726481523507200
+floor(17592186044416, 17592186044416) = 17592186044416, floor(17592186044418, 17592186044416) = 17592186044416, floor(18446726481523507198, 17592186044416) = 18446708889337462784
+floor(35184372088832, 35184372088832) = 35184372088832, floor(35184372088834, 35184372088832) = 35184372088832, floor(18446708889337462782, 35184372088832) = 18446673704965373952
+floor(70368744177664, 70368744177664) = 70368744177664, floor(70368744177666, 70368744177664) = 70368744177664, floor(18446673704965373950, 70368744177664) = 18446603336221196288
+floor(140737488355328, 140737488355328) = 140737488355328, floor(140737488355330, 140737488355328) = 140737488355328, floor(18446603336221196286, 140737488355328) = 18446462598732840960
+floor(281474976710656, 281474976710656) = 281474976710656, floor(281474976710658, 281474976710656) = 281474976710656, floor(18446462598732840958, 281474976710656) = 18446181123756130304
+floor(562949953421312, 562949953421312) = 562949953421312, floor(562949953421314, 562949953421312) = 562949953421312, floor(18446181123756130302, 562949953421312) = 18445618173802708992
+floor(1125899906842624, 1125899906842624) = 1125899906842624, floor(1125899906842626, 1125899906842624) = 1125899906842624, floor(18445618173802708990, 1125899906842624) = 18444492273895866368
+floor(2251799813685248, 2251799813685248) = 2251799813685248, floor(2251799813685250, 2251799813685248) = 2251799813685248, floor(18444492273895866366, 2251799813685248) = 18442240474082181120
+floor(4503599627370496, 4503599627370496) = 4503599627370496, floor(4503599627370498, 4503599627370496) = 4503599627370496, floor(18442240474082181118, 4503599627370496) = 18437736874454810624
+floor(9007199254740992, 9007199254740992) = 9007199254740992, floor(9007199254740994, 9007199254740992) = 9007199254740992, floor(18437736874454810622, 9007199254740992) = 18428729675200069632
+floor(18014398509481984, 18014398509481984) = 18014398509481984, floor(18014398509481986, 18014398509481984) = 18014398509481984, floor(18428729675200069630, 18014398509481984) = 18410715276690587648
+floor(36028797018963968, 36028797018963968) = 36028797018963968, floor(36028797018963970, 36028797018963968) = 36028797018963968, floor(18410715276690587646, 36028797018963968) = 18374686479671623680
+floor(72057594037927936, 72057594037927936) = 72057594037927936, floor(72057594037927938, 72057594037927936) = 72057594037927936, floor(18374686479671623678, 72057594037927936) = 18302628885633695744
+floor(144115188075855872, 144115188075855872) = 144115188075855872, floor(144115188075855874, 144115188075855872) = 144115188075855872, floor(18302628885633695742, 144115188075855872) = 18158513697557839872
+floor(288230376151711744, 288230376151711744) = 288230376151711744, floor(288230376151711746, 288230376151711744) = 288230376151711744, floor(18158513697557839870, 288230376151711744) = 17870283321406128128
+floor(576460752303423488, 576460752303423488) = 576460752303423488, floor(576460752303423490, 576460752303423488) = 576460752303423488, floor(17870283321406128126, 576460752303423488) = 17293822569102704640
+floor(1152921504606846976, 1152921504606846976) = 1152921504606846976, floor(1152921504606846978, 1152921504606846976) = 1152921504606846976, floor(17293822569102704638, 1152921504606846976) = 16140901064495857664
+floor(2305843009213693952, 2305843009213693952) = 2305843009213693952, floor(2305843009213693954, 2305843009213693952) = 2305843009213693952, floor(16140901064495857662, 2305843009213693952) = 13835058055282163712
+floor(4611686018427387904, 4611686018427387904) = 4611686018427387904, floor(4611686018427387906, 4611686018427387904) = 4611686018427387904, floor(13835058055282163710, 4611686018427387904) = 9223372036854775808
+floor(9223372036854775808, 9223372036854775808) = 9223372036854775808, floor(9223372036854775810, 9223372036854775808) = 9223372036854775808, floor(9223372036854775806, 9223372036854775808) = 0
+
+
+ceiling2
+
+signed char
+ceiling(0, 0) = 0, ceiling(2, 0) = 0, ceiling(-2, 0) = 0
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(-3, 1) = -3
+ceiling(2, 2) = 2, ceiling(4, 2) = 4, ceiling(-4, 2) = -4
+ceiling(4, 4) = 4, ceiling(6, 4) = 8, ceiling(-6, 4) = -4
+ceiling(8, 8) = 8, ceiling(10, 8) = 16, ceiling(-10, 8) = -8
+ceiling(16, 16) = 16, ceiling(18, 16) = 32, ceiling(-18, 16) = -16
+ceiling(32, 32) = 32, ceiling(34, 32) = 64, ceiling(-34, 32) = -32
+ceiling(64, 64) = 64, ceiling(66, 64) = -128, ceiling(-66, 64) = -64
+ceiling(-128, -128) = -128, ceiling(-126, -128) = 0, ceiling(126, -128) = -128
+
+unsigned char
+ceiling(0, 0) = 0, ceiling(2, 0) = 0, ceiling(254, 0) = 0
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(253, 1) = 253
+ceiling(2, 2) = 2, ceiling(4, 2) = 4, ceiling(252, 2) = 252
+ceiling(4, 4) = 4, ceiling(6, 4) = 8, ceiling(250, 4) = 252
+ceiling(8, 8) = 8, ceiling(10, 8) = 16, ceiling(246, 8) = 248
+ceiling(16, 16) = 16, ceiling(18, 16) = 32, ceiling(238, 16) = 240
+ceiling(32, 32) = 32, ceiling(34, 32) = 64, ceiling(222, 32) = 224
+ceiling(64, 64) = 64, ceiling(66, 64) = 128, ceiling(190, 64) = 192
+ceiling(128, 128) = 128, ceiling(130, 128) = 0, ceiling(126, 128) = 128
+
+short int
+ceiling(0, 0) = 0, ceiling(2, 0) = 0, ceiling(-2, 0) = 0
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(-3, 1) = -3
+ceiling(2, 2) = 2, ceiling(4, 2) = 4, ceiling(-4, 2) = -4
+ceiling(4, 4) = 4, ceiling(6, 4) = 8, ceiling(-6, 4) = -4
+ceiling(8, 8) = 8, ceiling(10, 8) = 16, ceiling(-10, 8) = -8
+ceiling(16, 16) = 16, ceiling(18, 16) = 32, ceiling(-18, 16) = -16
+ceiling(32, 32) = 32, ceiling(34, 32) = 64, ceiling(-34, 32) = -32
+ceiling(64, 64) = 64, ceiling(66, 64) = 128, ceiling(-66, 64) = -64
+ceiling(128, 128) = 128, ceiling(130, 128) = 256, ceiling(-130, 128) = -128
+ceiling(256, 256) = 256, ceiling(258, 256) = 512, ceiling(-258, 256) = -256
+ceiling(512, 512) = 512, ceiling(514, 512) = 1024, ceiling(-514, 512) = -512
+ceiling(1024, 1024) = 1024, ceiling(1026, 1024) = 2048, ceiling(-1026, 1024) = -1024
+ceiling(2048, 2048) = 2048, ceiling(2050, 2048) = 4096, ceiling(-2050, 2048) = -2048
+ceiling(4096, 4096) = 4096, ceiling(4098, 4096) = 8192, ceiling(-4098, 4096) = -4096
+ceiling(8192, 8192) = 8192, ceiling(8194, 8192) = 16384, ceiling(-8194, 8192) = -8192
+ceiling(16384, 16384) = 16384, ceiling(16386, 16384) = -32768, ceiling(-16386, 16384) = -16384
+ceiling(-32768, -32768) = -32768, ceiling(-32766, -32768) = 0, ceiling(32766, -32768) = -32768
+
+unsigned short int
+ceiling(0, 0) = 0, ceiling(2, 0) = 0, ceiling(65534, 0) = 0
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(65533, 1) = 65533
+ceiling(2, 2) = 2, ceiling(4, 2) = 4, ceiling(65532, 2) = 65532
+ceiling(4, 4) = 4, ceiling(6, 4) = 8, ceiling(65530, 4) = 65532
+ceiling(8, 8) = 8, ceiling(10, 8) = 16, ceiling(65526, 8) = 65528
+ceiling(16, 16) = 16, ceiling(18, 16) = 32, ceiling(65518, 16) = 65520
+ceiling(32, 32) = 32, ceiling(34, 32) = 64, ceiling(65502, 32) = 65504
+ceiling(64, 64) = 64, ceiling(66, 64) = 128, ceiling(65470, 64) = 65472
+ceiling(128, 128) = 128, ceiling(130, 128) = 256, ceiling(65406, 128) = 65408
+ceiling(256, 256) = 256, ceiling(258, 256) = 512, ceiling(65278, 256) = 65280
+ceiling(512, 512) = 512, ceiling(514, 512) = 1024, ceiling(65022, 512) = 65024
+ceiling(1024, 1024) = 1024, ceiling(1026, 1024) = 2048, ceiling(64510, 1024) = 64512
+ceiling(2048, 2048) = 2048, ceiling(2050, 2048) = 4096, ceiling(63486, 2048) = 63488
+ceiling(4096, 4096) = 4096, ceiling(4098, 4096) = 8192, ceiling(61438, 4096) = 61440
+ceiling(8192, 8192) = 8192, ceiling(8194, 8192) = 16384, ceiling(57342, 8192) = 57344
+ceiling(16384, 16384) = 16384, ceiling(16386, 16384) = 32768, ceiling(49150, 16384) = 49152
+ceiling(32768, 32768) = 32768, ceiling(32770, 32768) = 0, ceiling(32766, 32768) = 32768
+
+int
+ceiling(0, 0) = 0, ceiling(2, 0) = 0, ceiling(-2, 0) = 0
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(-3, 1) = -3
+ceiling(2, 2) = 2, ceiling(4, 2) = 4, ceiling(-4, 2) = -4
+ceiling(4, 4) = 4, ceiling(6, 4) = 8, ceiling(-6, 4) = -4
+ceiling(8, 8) = 8, ceiling(10, 8) = 16, ceiling(-10, 8) = -8
+ceiling(16, 16) = 16, ceiling(18, 16) = 32, ceiling(-18, 16) = -16
+ceiling(32, 32) = 32, ceiling(34, 32) = 64, ceiling(-34, 32) = -32
+ceiling(64, 64) = 64, ceiling(66, 64) = 128, ceiling(-66, 64) = -64
+ceiling(128, 128) = 128, ceiling(130, 128) = 256, ceiling(-130, 128) = -128
+ceiling(256, 256) = 256, ceiling(258, 256) = 512, ceiling(-258, 256) = -256
+ceiling(512, 512) = 512, ceiling(514, 512) = 1024, ceiling(-514, 512) = -512
+ceiling(1024, 1024) = 1024, ceiling(1026, 1024) = 2048, ceiling(-1026, 1024) = -1024
+ceiling(2048, 2048) = 2048, ceiling(2050, 2048) = 4096, ceiling(-2050, 2048) = -2048
+ceiling(4096, 4096) = 4096, ceiling(4098, 4096) = 8192, ceiling(-4098, 4096) = -4096
+ceiling(8192, 8192) = 8192, ceiling(8194, 8192) = 16384, ceiling(-8194, 8192) = -8192
+ceiling(16384, 16384) = 16384, ceiling(16386, 16384) = 32768, ceiling(-16386, 16384) = -16384
+ceiling(32768, 32768) = 32768, ceiling(32770, 32768) = 65536, ceiling(-32770, 32768) = -32768
+ceiling(65536, 65536) = 65536, ceiling(65538, 65536) = 131072, ceiling(-65538, 65536) = -65536
+ceiling(131072, 131072) = 131072, ceiling(131074, 131072) = 262144, ceiling(-131074, 131072) = -131072
+ceiling(262144, 262144) = 262144, ceiling(262146, 262144) = 524288, ceiling(-262146, 262144) = -262144
+ceiling(524288, 524288) = 524288, ceiling(524290, 524288) = 1048576, ceiling(-524290, 524288) = -524288
+ceiling(1048576, 1048576) = 1048576, ceiling(1048578, 1048576) = 2097152, ceiling(-1048578, 1048576) = -1048576
+ceiling(2097152, 2097152) = 2097152, ceiling(2097154, 2097152) = 4194304, ceiling(-2097154, 2097152) = -2097152
+ceiling(4194304, 4194304) = 4194304, ceiling(4194306, 4194304) = 8388608, ceiling(-4194306, 4194304) = -4194304
+ceiling(8388608, 8388608) = 8388608, ceiling(8388610, 8388608) = 16777216, ceiling(-8388610, 8388608) = -8388608
+ceiling(16777216, 16777216) = 16777216, ceiling(16777218, 16777216) = 33554432, ceiling(-16777218, 16777216) = -16777216
+ceiling(33554432, 33554432) = 33554432, ceiling(33554434, 33554432) = 67108864, ceiling(-33554434, 33554432) = -33554432
+ceiling(67108864, 67108864) = 67108864, ceiling(67108866, 67108864) = 134217728, ceiling(-67108866, 67108864) = -67108864
+ceiling(134217728, 134217728) = 134217728, ceiling(134217730, 134217728) = 268435456, ceiling(-134217730, 134217728) = -134217728
+ceiling(268435456, 268435456) = 268435456, ceiling(268435458, 268435456) = 536870912, ceiling(-268435458, 268435456) = -268435456
+ceiling(536870912, 536870912) = 536870912, ceiling(536870914, 536870912) = 1073741824, ceiling(-536870914, 536870912) = -536870912
+ceiling(1073741824, 1073741824) = 1073741824, ceiling(1073741826, 1073741824) = -2147483648, ceiling(-1073741826, 1073741824) = -1073741824
+ceiling(-2147483648, -2147483648) = -2147483648, ceiling(-2147483646, -2147483648) = 0, ceiling(2147483646, -2147483648) = -2147483648
+
+unsigned int
+ceiling(0, 0) = 0, ceiling(2, 0) = 0, ceiling(4294967294, 0) = 0
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(4294967293, 1) = 4294967293
+ceiling(2, 2) = 2, ceiling(4, 2) = 4, ceiling(4294967292, 2) = 4294967292
+ceiling(4, 4) = 4, ceiling(6, 4) = 8, ceiling(4294967290, 4) = 4294967292
+ceiling(8, 8) = 8, ceiling(10, 8) = 16, ceiling(4294967286, 8) = 4294967288
+ceiling(16, 16) = 16, ceiling(18, 16) = 32, ceiling(4294967278, 16) = 4294967280
+ceiling(32, 32) = 32, ceiling(34, 32) = 64, ceiling(4294967262, 32) = 4294967264
+ceiling(64, 64) = 64, ceiling(66, 64) = 128, ceiling(4294967230, 64) = 4294967232
+ceiling(128, 128) = 128, ceiling(130, 128) = 256, ceiling(4294967166, 128) = 4294967168
+ceiling(256, 256) = 256, ceiling(258, 256) = 512, ceiling(4294967038, 256) = 4294967040
+ceiling(512, 512) = 512, ceiling(514, 512) = 1024, ceiling(4294966782, 512) = 4294966784
+ceiling(1024, 1024) = 1024, ceiling(1026, 1024) = 2048, ceiling(4294966270, 1024) = 4294966272
+ceiling(2048, 2048) = 2048, ceiling(2050, 2048) = 4096, ceiling(4294965246, 2048) = 4294965248
+ceiling(4096, 4096) = 4096, ceiling(4098, 4096) = 8192, ceiling(4294963198, 4096) = 4294963200
+ceiling(8192, 8192) = 8192, ceiling(8194, 8192) = 16384, ceiling(4294959102, 8192) = 4294959104
+ceiling(16384, 16384) = 16384, ceiling(16386, 16384) = 32768, ceiling(4294950910, 16384) = 4294950912
+ceiling(32768, 32768) = 32768, ceiling(32770, 32768) = 65536, ceiling(4294934526, 32768) = 4294934528
+ceiling(65536, 65536) = 65536, ceiling(65538, 65536) = 131072, ceiling(4294901758, 65536) = 4294901760
+ceiling(131072, 131072) = 131072, ceiling(131074, 131072) = 262144, ceiling(4294836222, 131072) = 4294836224
+ceiling(262144, 262144) = 262144, ceiling(262146, 262144) = 524288, ceiling(4294705150, 262144) = 4294705152
+ceiling(524288, 524288) = 524288, ceiling(524290, 524288) = 1048576, ceiling(4294443006, 524288) = 4294443008
+ceiling(1048576, 1048576) = 1048576, ceiling(1048578, 1048576) = 2097152, ceiling(4293918718, 1048576) = 4293918720
+ceiling(2097152, 2097152) = 2097152, ceiling(2097154, 2097152) = 4194304, ceiling(4292870142, 2097152) = 4292870144
+ceiling(4194304, 4194304) = 4194304, ceiling(4194306, 4194304) = 8388608, ceiling(4290772990, 4194304) = 4290772992
+ceiling(8388608, 8388608) = 8388608, ceiling(8388610, 8388608) = 16777216, ceiling(4286578686, 8388608) = 4286578688
+ceiling(16777216, 16777216) = 16777216, ceiling(16777218, 16777216) = 33554432, ceiling(4278190078, 16777216) = 4278190080
+ceiling(33554432, 33554432) = 33554432, ceiling(33554434, 33554432) = 67108864, ceiling(4261412862, 33554432) = 4261412864
+ceiling(67108864, 67108864) = 67108864, ceiling(67108866, 67108864) = 134217728, ceiling(4227858430, 67108864) = 4227858432
+ceiling(134217728, 134217728) = 134217728, ceiling(134217730, 134217728) = 268435456, ceiling(4160749566, 134217728) = 4160749568
+ceiling(268435456, 268435456) = 268435456, ceiling(268435458, 268435456) = 536870912, ceiling(4026531838, 268435456) = 4026531840
+ceiling(536870912, 536870912) = 536870912, ceiling(536870914, 536870912) = 1073741824, ceiling(3758096382, 536870912) = 3758096384
+ceiling(1073741824, 1073741824) = 1073741824, ceiling(1073741826, 1073741824) = 2147483648, ceiling(3221225470, 1073741824) = 3221225472
+ceiling(2147483648, 2147483648) = 2147483648, ceiling(2147483650, 2147483648) = 0, ceiling(2147483646, 2147483648) = 2147483648
+
+long int
+ceiling(0, 0) = 0, ceiling(2, 0) = 0, ceiling(-2, 0) = 0
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(-3, 1) = -3
+ceiling(2, 2) = 2, ceiling(4, 2) = 4, ceiling(-4, 2) = -4
+ceiling(4, 4) = 4, ceiling(6, 4) = 8, ceiling(-6, 4) = -4
+ceiling(8, 8) = 8, ceiling(10, 8) = 16, ceiling(-10, 8) = -8
+ceiling(16, 16) = 16, ceiling(18, 16) = 32, ceiling(-18, 16) = -16
+ceiling(32, 32) = 32, ceiling(34, 32) = 64, ceiling(-34, 32) = -32
+ceiling(64, 64) = 64, ceiling(66, 64) = 128, ceiling(-66, 64) = -64
+ceiling(128, 128) = 128, ceiling(130, 128) = 256, ceiling(-130, 128) = -128
+ceiling(256, 256) = 256, ceiling(258, 256) = 512, ceiling(-258, 256) = -256
+ceiling(512, 512) = 512, ceiling(514, 512) = 1024, ceiling(-514, 512) = -512
+ceiling(1024, 1024) = 1024, ceiling(1026, 1024) = 2048, ceiling(-1026, 1024) = -1024
+ceiling(2048, 2048) = 2048, ceiling(2050, 2048) = 4096, ceiling(-2050, 2048) = -2048
+ceiling(4096, 4096) = 4096, ceiling(4098, 4096) = 8192, ceiling(-4098, 4096) = -4096
+ceiling(8192, 8192) = 8192, ceiling(8194, 8192) = 16384, ceiling(-8194, 8192) = -8192
+ceiling(16384, 16384) = 16384, ceiling(16386, 16384) = 32768, ceiling(-16386, 16384) = -16384
+ceiling(32768, 32768) = 32768, ceiling(32770, 32768) = 65536, ceiling(-32770, 32768) = -32768
+ceiling(65536, 65536) = 65536, ceiling(65538, 65536) = 131072, ceiling(-65538, 65536) = -65536
+ceiling(131072, 131072) = 131072, ceiling(131074, 131072) = 262144, ceiling(-131074, 131072) = -131072
+ceiling(262144, 262144) = 262144, ceiling(262146, 262144) = 524288, ceiling(-262146, 262144) = -262144
+ceiling(524288, 524288) = 524288, ceiling(524290, 524288) = 1048576, ceiling(-524290, 524288) = -524288
+ceiling(1048576, 1048576) = 1048576, ceiling(1048578, 1048576) = 2097152, ceiling(-1048578, 1048576) = -1048576
+ceiling(2097152, 2097152) = 2097152, ceiling(2097154, 2097152) = 4194304, ceiling(-2097154, 2097152) = -2097152
+ceiling(4194304, 4194304) = 4194304, ceiling(4194306, 4194304) = 8388608, ceiling(-4194306, 4194304) = -4194304
+ceiling(8388608, 8388608) = 8388608, ceiling(8388610, 8388608) = 16777216, ceiling(-8388610, 8388608) = -8388608
+ceiling(16777216, 16777216) = 16777216, ceiling(16777218, 16777216) = 33554432, ceiling(-16777218, 16777216) = -16777216
+ceiling(33554432, 33554432) = 33554432, ceiling(33554434, 33554432) = 67108864, ceiling(-33554434, 33554432) = -33554432
+ceiling(67108864, 67108864) = 67108864, ceiling(67108866, 67108864) = 134217728, ceiling(-67108866, 67108864) = -67108864
+ceiling(134217728, 134217728) = 134217728, ceiling(134217730, 134217728) = 268435456, ceiling(-134217730, 134217728) = -134217728
+ceiling(268435456, 268435456) = 268435456, ceiling(268435458, 268435456) = 536870912, ceiling(-268435458, 268435456) = -268435456
+ceiling(536870912, 536870912) = 536870912, ceiling(536870914, 536870912) = 1073741824, ceiling(-536870914, 536870912) = -536870912
+ceiling(1073741824, 1073741824) = 1073741824, ceiling(1073741826, 1073741824) = -2147483648, ceiling(-1073741826, 1073741824) = -1073741824
+ceiling(-2147483648, -2147483648) = -2147483648, ceiling(-2147483646, -2147483648) = 0, ceiling(2147483646, -2147483648) = -2147483648
+
+unsigned long int
+ceiling(0, 0) = 0, ceiling(2, 0) = 0, ceiling(4294967294, 0) = 0
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(4294967293, 1) = 4294967293
+ceiling(2, 2) = 2, ceiling(4, 2) = 4, ceiling(4294967292, 2) = 4294967292
+ceiling(4, 4) = 4, ceiling(6, 4) = 8, ceiling(4294967290, 4) = 4294967292
+ceiling(8, 8) = 8, ceiling(10, 8) = 16, ceiling(4294967286, 8) = 4294967288
+ceiling(16, 16) = 16, ceiling(18, 16) = 32, ceiling(4294967278, 16) = 4294967280
+ceiling(32, 32) = 32, ceiling(34, 32) = 64, ceiling(4294967262, 32) = 4294967264
+ceiling(64, 64) = 64, ceiling(66, 64) = 128, ceiling(4294967230, 64) = 4294967232
+ceiling(128, 128) = 128, ceiling(130, 128) = 256, ceiling(4294967166, 128) = 4294967168
+ceiling(256, 256) = 256, ceiling(258, 256) = 512, ceiling(4294967038, 256) = 4294967040
+ceiling(512, 512) = 512, ceiling(514, 512) = 1024, ceiling(4294966782, 512) = 4294966784
+ceiling(1024, 1024) = 1024, ceiling(1026, 1024) = 2048, ceiling(4294966270, 1024) = 4294966272
+ceiling(2048, 2048) = 2048, ceiling(2050, 2048) = 4096, ceiling(4294965246, 2048) = 4294965248
+ceiling(4096, 4096) = 4096, ceiling(4098, 4096) = 8192, ceiling(4294963198, 4096) = 4294963200
+ceiling(8192, 8192) = 8192, ceiling(8194, 8192) = 16384, ceiling(4294959102, 8192) = 4294959104
+ceiling(16384, 16384) = 16384, ceiling(16386, 16384) = 32768, ceiling(4294950910, 16384) = 4294950912
+ceiling(32768, 32768) = 32768, ceiling(32770, 32768) = 65536, ceiling(4294934526, 32768) = 4294934528
+ceiling(65536, 65536) = 65536, ceiling(65538, 65536) = 131072, ceiling(4294901758, 65536) = 4294901760
+ceiling(131072, 131072) = 131072, ceiling(131074, 131072) = 262144, ceiling(4294836222, 131072) = 4294836224
+ceiling(262144, 262144) = 262144, ceiling(262146, 262144) = 524288, ceiling(4294705150, 262144) = 4294705152
+ceiling(524288, 524288) = 524288, ceiling(524290, 524288) = 1048576, ceiling(4294443006, 524288) = 4294443008
+ceiling(1048576, 1048576) = 1048576, ceiling(1048578, 1048576) = 2097152, ceiling(4293918718, 1048576) = 4293918720
+ceiling(2097152, 2097152) = 2097152, ceiling(2097154, 2097152) = 4194304, ceiling(4292870142, 2097152) = 4292870144
+ceiling(4194304, 4194304) = 4194304, ceiling(4194306, 4194304) = 8388608, ceiling(4290772990, 4194304) = 4290772992
+ceiling(8388608, 8388608) = 8388608, ceiling(8388610, 8388608) = 16777216, ceiling(4286578686, 8388608) = 4286578688
+ceiling(16777216, 16777216) = 16777216, ceiling(16777218, 16777216) = 33554432, ceiling(4278190078, 16777216) = 4278190080
+ceiling(33554432, 33554432) = 33554432, ceiling(33554434, 33554432) = 67108864, ceiling(4261412862, 33554432) = 4261412864
+ceiling(67108864, 67108864) = 67108864, ceiling(67108866, 67108864) = 134217728, ceiling(4227858430, 67108864) = 4227858432
+ceiling(134217728, 134217728) = 134217728, ceiling(134217730, 134217728) = 268435456, ceiling(4160749566, 134217728) = 4160749568
+ceiling(268435456, 268435456) = 268435456, ceiling(268435458, 268435456) = 536870912, ceiling(4026531838, 268435456) = 4026531840
+ceiling(536870912, 536870912) = 536870912, ceiling(536870914, 536870912) = 1073741824, ceiling(3758096382, 536870912) = 3758096384
+ceiling(1073741824, 1073741824) = 1073741824, ceiling(1073741826, 1073741824) = 2147483648, ceiling(3221225470, 1073741824) = 3221225472
+ceiling(2147483648, 2147483648) = 2147483648, ceiling(2147483650, 2147483648) = 0, ceiling(2147483646, 2147483648) = 2147483648
+
+long long int
+ceiling(0, 0) = 0, ceiling(2, 0) = 0, ceiling(-2, 0) = 0
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(-3, 1) = -3
+ceiling(2, 2) = 2, ceiling(4, 2) = 4, ceiling(-4, 2) = -4
+ceiling(4, 4) = 4, ceiling(6, 4) = 8, ceiling(-6, 4) = -4
+ceiling(8, 8) = 8, ceiling(10, 8) = 16, ceiling(-10, 8) = -8
+ceiling(16, 16) = 16, ceiling(18, 16) = 32, ceiling(-18, 16) = -16
+ceiling(32, 32) = 32, ceiling(34, 32) = 64, ceiling(-34, 32) = -32
+ceiling(64, 64) = 64, ceiling(66, 64) = 128, ceiling(-66, 64) = -64
+ceiling(128, 128) = 128, ceiling(130, 128) = 256, ceiling(-130, 128) = -128
+ceiling(256, 256) = 256, ceiling(258, 256) = 512, ceiling(-258, 256) = -256
+ceiling(512, 512) = 512, ceiling(514, 512) = 1024, ceiling(-514, 512) = -512
+ceiling(1024, 1024) = 1024, ceiling(1026, 1024) = 2048, ceiling(-1026, 1024) = -1024
+ceiling(2048, 2048) = 2048, ceiling(2050, 2048) = 4096, ceiling(-2050, 2048) = -2048
+ceiling(4096, 4096) = 4096, ceiling(4098, 4096) = 8192, ceiling(-4098, 4096) = -4096
+ceiling(8192, 8192) = 8192, ceiling(8194, 8192) = 16384, ceiling(-8194, 8192) = -8192
+ceiling(16384, 16384) = 16384, ceiling(16386, 16384) = 32768, ceiling(-16386, 16384) = -16384
+ceiling(32768, 32768) = 32768, ceiling(32770, 32768) = 65536, ceiling(-32770, 32768) = -32768
+ceiling(65536, 65536) = 65536, ceiling(65538, 65536) = 131072, ceiling(-65538, 65536) = -65536
+ceiling(131072, 131072) = 131072, ceiling(131074, 131072) = 262144, ceiling(-131074, 131072) = -131072
+ceiling(262144, 262144) = 262144, ceiling(262146, 262144) = 524288, ceiling(-262146, 262144) = -262144
+ceiling(524288, 524288) = 524288, ceiling(524290, 524288) = 1048576, ceiling(-524290, 524288) = -524288
+ceiling(1048576, 1048576) = 1048576, ceiling(1048578, 1048576) = 2097152, ceiling(-1048578, 1048576) = -1048576
+ceiling(2097152, 2097152) = 2097152, ceiling(2097154, 2097152) = 4194304, ceiling(-2097154, 2097152) = -2097152
+ceiling(4194304, 4194304) = 4194304, ceiling(4194306, 4194304) = 8388608, ceiling(-4194306, 4194304) = -4194304
+ceiling(8388608, 8388608) = 8388608, ceiling(8388610, 8388608) = 16777216, ceiling(-8388610, 8388608) = -8388608
+ceiling(16777216, 16777216) = 16777216, ceiling(16777218, 16777216) = 33554432, ceiling(-16777218, 16777216) = -16777216
+ceiling(33554432, 33554432) = 33554432, ceiling(33554434, 33554432) = 67108864, ceiling(-33554434, 33554432) = -33554432
+ceiling(67108864, 67108864) = 67108864, ceiling(67108866, 67108864) = 134217728, ceiling(-67108866, 67108864) = -67108864
+ceiling(134217728, 134217728) = 134217728, ceiling(134217730, 134217728) = 268435456, ceiling(-134217730, 134217728) = -134217728
+ceiling(268435456, 268435456) = 268435456, ceiling(268435458, 268435456) = 536870912, ceiling(-268435458, 268435456) = -268435456
+ceiling(536870912, 536870912) = 536870912, ceiling(536870914, 536870912) = 1073741824, ceiling(-536870914, 536870912) = -536870912
+ceiling(1073741824, 1073741824) = 1073741824, ceiling(1073741826, 1073741824) = 2147483648, ceiling(-1073741826, 1073741824) = -1073741824
+ceiling(2147483648, 2147483648) = 2147483648, ceiling(2147483650, 2147483648) = 4294967296, ceiling(-2147483650, 2147483648) = -2147483648
+ceiling(4294967296, 4294967296) = 4294967296, ceiling(4294967298, 4294967296) = 8589934592, ceiling(-4294967298, 4294967296) = -4294967296
+ceiling(8589934592, 8589934592) = 8589934592, ceiling(8589934594, 8589934592) = 17179869184, ceiling(-8589934594, 8589934592) = -8589934592
+ceiling(17179869184, 17179869184) = 17179869184, ceiling(17179869186, 17179869184) = 34359738368, ceiling(-17179869186, 17179869184) = -17179869184
+ceiling(34359738368, 34359738368) = 34359738368, ceiling(34359738370, 34359738368) = 68719476736, ceiling(-34359738370, 34359738368) = -34359738368
+ceiling(68719476736, 68719476736) = 68719476736, ceiling(68719476738, 68719476736) = 137438953472, ceiling(-68719476738, 68719476736) = -68719476736
+ceiling(137438953472, 137438953472) = 137438953472, ceiling(137438953474, 137438953472) = 274877906944, ceiling(-137438953474, 137438953472) = -137438953472
+ceiling(274877906944, 274877906944) = 274877906944, ceiling(274877906946, 274877906944) = 549755813888, ceiling(-274877906946, 274877906944) = -274877906944
+ceiling(549755813888, 549755813888) = 549755813888, ceiling(549755813890, 549755813888) = 1099511627776, ceiling(-549755813890, 549755813888) = -549755813888
+ceiling(1099511627776, 1099511627776) = 1099511627776, ceiling(1099511627778, 1099511627776) = 2199023255552, ceiling(-1099511627778, 1099511627776) = -1099511627776
+ceiling(2199023255552, 2199023255552) = 2199023255552, ceiling(2199023255554, 2199023255552) = 4398046511104, ceiling(-2199023255554, 2199023255552) = -2199023255552
+ceiling(4398046511104, 4398046511104) = 4398046511104, ceiling(4398046511106, 4398046511104) = 8796093022208, ceiling(-4398046511106, 4398046511104) = -4398046511104
+ceiling(8796093022208, 8796093022208) = 8796093022208, ceiling(8796093022210, 8796093022208) = 17592186044416, ceiling(-8796093022210, 8796093022208) = -8796093022208
+ceiling(17592186044416, 17592186044416) = 17592186044416, ceiling(17592186044418, 17592186044416) = 35184372088832, ceiling(-17592186044418, 17592186044416) = -17592186044416
+ceiling(35184372088832, 35184372088832) = 35184372088832, ceiling(35184372088834, 35184372088832) = 70368744177664, ceiling(-35184372088834, 35184372088832) = -35184372088832
+ceiling(70368744177664, 70368744177664) = 70368744177664, ceiling(70368744177666, 70368744177664) = 140737488355328, ceiling(-70368744177666, 70368744177664) = -70368744177664
+ceiling(140737488355328, 140737488355328) = 140737488355328, ceiling(140737488355330, 140737488355328) = 281474976710656, ceiling(-140737488355330, 140737488355328) = -140737488355328
+ceiling(281474976710656, 281474976710656) = 281474976710656, ceiling(281474976710658, 281474976710656) = 562949953421312, ceiling(-281474976710658, 281474976710656) = -281474976710656
+ceiling(562949953421312, 562949953421312) = 562949953421312, ceiling(562949953421314, 562949953421312) = 1125899906842624, ceiling(-562949953421314, 562949953421312) = -562949953421312
+ceiling(1125899906842624, 1125899906842624) = 1125899906842624, ceiling(1125899906842626, 1125899906842624) = 2251799813685248, ceiling(-1125899906842626, 1125899906842624) = -1125899906842624
+ceiling(2251799813685248, 2251799813685248) = 2251799813685248, ceiling(2251799813685250, 2251799813685248) = 4503599627370496, ceiling(-2251799813685250, 2251799813685248) = -2251799813685248
+ceiling(4503599627370496, 4503599627370496) = 4503599627370496, ceiling(4503599627370498, 4503599627370496) = 9007199254740992, ceiling(-4503599627370498, 4503599627370496) = -4503599627370496
+ceiling(9007199254740992, 9007199254740992) = 9007199254740992, ceiling(9007199254740994, 9007199254740992) = 18014398509481984, ceiling(-9007199254740994, 9007199254740992) = -9007199254740992
+ceiling(18014398509481984, 18014398509481984) = 18014398509481984, ceiling(18014398509481986, 18014398509481984) = 36028797018963968, ceiling(-18014398509481986, 18014398509481984) = -18014398509481984
+ceiling(36028797018963968, 36028797018963968) = 36028797018963968, ceiling(36028797018963970, 36028797018963968) = 72057594037927936, ceiling(-36028797018963970, 36028797018963968) = -36028797018963968
+ceiling(72057594037927936, 72057594037927936) = 72057594037927936, ceiling(72057594037927938, 72057594037927936) = 144115188075855872, ceiling(-72057594037927938, 72057594037927936) = -72057594037927936
+ceiling(144115188075855872, 144115188075855872) = 144115188075855872, ceiling(144115188075855874, 144115188075855872) = 288230376151711744, ceiling(-144115188075855874, 144115188075855872) = -144115188075855872
+ceiling(288230376151711744, 288230376151711744) = 288230376151711744, ceiling(288230376151711746, 288230376151711744) = 576460752303423488, ceiling(-288230376151711746, 288230376151711744) = -288230376151711744
+ceiling(576460752303423488, 576460752303423488) = 576460752303423488, ceiling(576460752303423490, 576460752303423488) = 1152921504606846976, ceiling(-576460752303423490, 576460752303423488) = -576460752303423488
+ceiling(1152921504606846976, 1152921504606846976) = 1152921504606846976, ceiling(1152921504606846978, 1152921504606846976) = 2305843009213693952, ceiling(-1152921504606846978, 1152921504606846976) = -1152921504606846976
+ceiling(2305843009213693952, 2305843009213693952) = 2305843009213693952, ceiling(2305843009213693954, 2305843009213693952) = 4611686018427387904, ceiling(-2305843009213693954, 2305843009213693952) = -2305843009213693952
+ceiling(4611686018427387904, 4611686018427387904) = 4611686018427387904, ceiling(4611686018427387906, 4611686018427387904) = -9223372036854775808, ceiling(-4611686018427387906, 4611686018427387904) = -4611686018427387904
+ceiling(-9223372036854775808, -9223372036854775808) = -9223372036854775808, ceiling(-9223372036854775806, -9223372036854775808) = 0, ceiling(9223372036854775806, -9223372036854775808) = -9223372036854775808
+
+unsigned long long int
+ceiling(0, 0) = 0, ceiling(2, 0) = 0, ceiling(18446744073709551614, 0) = 0
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(18446744073709551613, 1) = 18446744073709551613
+ceiling(2, 2) = 2, ceiling(4, 2) = 4, ceiling(18446744073709551612, 2) = 18446744073709551612
+ceiling(4, 4) = 4, ceiling(6, 4) = 8, ceiling(18446744073709551610, 4) = 18446744073709551612
+ceiling(8, 8) = 8, ceiling(10, 8) = 16, ceiling(18446744073709551606, 8) = 18446744073709551608
+ceiling(16, 16) = 16, ceiling(18, 16) = 32, ceiling(18446744073709551598, 16) = 18446744073709551600
+ceiling(32, 32) = 32, ceiling(34, 32) = 64, ceiling(18446744073709551582, 32) = 18446744073709551584
+ceiling(64, 64) = 64, ceiling(66, 64) = 128, ceiling(18446744073709551550, 64) = 18446744073709551552
+ceiling(128, 128) = 128, ceiling(130, 128) = 256, ceiling(18446744073709551486, 128) = 18446744073709551488
+ceiling(256, 256) = 256, ceiling(258, 256) = 512, ceiling(18446744073709551358, 256) = 18446744073709551360
+ceiling(512, 512) = 512, ceiling(514, 512) = 1024, ceiling(18446744073709551102, 512) = 18446744073709551104
+ceiling(1024, 1024) = 1024, ceiling(1026, 1024) = 2048, ceiling(18446744073709550590, 1024) = 18446744073709550592
+ceiling(2048, 2048) = 2048, ceiling(2050, 2048) = 4096, ceiling(18446744073709549566, 2048) = 18446744073709549568
+ceiling(4096, 4096) = 4096, ceiling(4098, 4096) = 8192, ceiling(18446744073709547518, 4096) = 18446744073709547520
+ceiling(8192, 8192) = 8192, ceiling(8194, 8192) = 16384, ceiling(18446744073709543422, 8192) = 18446744073709543424
+ceiling(16384, 16384) = 16384, ceiling(16386, 16384) = 32768, ceiling(18446744073709535230, 16384) = 18446744073709535232
+ceiling(32768, 32768) = 32768, ceiling(32770, 32768) = 65536, ceiling(18446744073709518846, 32768) = 18446744073709518848
+ceiling(65536, 65536) = 65536, ceiling(65538, 65536) = 131072, ceiling(18446744073709486078, 65536) = 18446744073709486080
+ceiling(131072, 131072) = 131072, ceiling(131074, 131072) = 262144, ceiling(18446744073709420542, 131072) = 18446744073709420544
+ceiling(262144, 262144) = 262144, ceiling(262146, 262144) = 524288, ceiling(18446744073709289470, 262144) = 18446744073709289472
+ceiling(524288, 524288) = 524288, ceiling(524290, 524288) = 1048576, ceiling(18446744073709027326, 524288) = 18446744073709027328
+ceiling(1048576, 1048576) = 1048576, ceiling(1048578, 1048576) = 2097152, ceiling(18446744073708503038, 1048576) = 18446744073708503040
+ceiling(2097152, 2097152) = 2097152, ceiling(2097154, 2097152) = 4194304, ceiling(18446744073707454462, 2097152) = 18446744073707454464
+ceiling(4194304, 4194304) = 4194304, ceiling(4194306, 4194304) = 8388608, ceiling(18446744073705357310, 4194304) = 18446744073705357312
+ceiling(8388608, 8388608) = 8388608, ceiling(8388610, 8388608) = 16777216, ceiling(18446744073701163006, 8388608) = 18446744073701163008
+ceiling(16777216, 16777216) = 16777216, ceiling(16777218, 16777216) = 33554432, ceiling(18446744073692774398, 16777216) = 18446744073692774400
+ceiling(33554432, 33554432) = 33554432, ceiling(33554434, 33554432) = 67108864, ceiling(18446744073675997182, 33554432) = 18446744073675997184
+ceiling(67108864, 67108864) = 67108864, ceiling(67108866, 67108864) = 134217728, ceiling(18446744073642442750, 67108864) = 18446744073642442752
+ceiling(134217728, 134217728) = 134217728, ceiling(134217730, 134217728) = 268435456, ceiling(18446744073575333886, 134217728) = 18446744073575333888
+ceiling(268435456, 268435456) = 268435456, ceiling(268435458, 268435456) = 536870912, ceiling(18446744073441116158, 268435456) = 18446744073441116160
+ceiling(536870912, 536870912) = 536870912, ceiling(536870914, 536870912) = 1073741824, ceiling(18446744073172680702, 536870912) = 18446744073172680704
+ceiling(1073741824, 1073741824) = 1073741824, ceiling(1073741826, 1073741824) = 2147483648, ceiling(18446744072635809790, 1073741824) = 18446744072635809792
+ceiling(2147483648, 2147483648) = 2147483648, ceiling(2147483650, 2147483648) = 4294967296, ceiling(18446744071562067966, 2147483648) = 18446744071562067968
+ceiling(4294967296, 4294967296) = 4294967296, ceiling(4294967298, 4294967296) = 8589934592, ceiling(18446744069414584318, 4294967296) = 18446744069414584320
+ceiling(8589934592, 8589934592) = 8589934592, ceiling(8589934594, 8589934592) = 17179869184, ceiling(18446744065119617022, 8589934592) = 18446744065119617024
+ceiling(17179869184, 17179869184) = 17179869184, ceiling(17179869186, 17179869184) = 34359738368, ceiling(18446744056529682430, 17179869184) = 18446744056529682432
+ceiling(34359738368, 34359738368) = 34359738368, ceiling(34359738370, 34359738368) = 68719476736, ceiling(18446744039349813246, 34359738368) = 18446744039349813248
+ceiling(68719476736, 68719476736) = 68719476736, ceiling(68719476738, 68719476736) = 137438953472, ceiling(18446744004990074878, 68719476736) = 18446744004990074880
+ceiling(137438953472, 137438953472) = 137438953472, ceiling(137438953474, 137438953472) = 274877906944, ceiling(18446743936270598142, 137438953472) = 18446743936270598144
+ceiling(274877906944, 274877906944) = 274877906944, ceiling(274877906946, 274877906944) = 549755813888, ceiling(18446743798831644670, 274877906944) = 18446743798831644672
+ceiling(549755813888, 549755813888) = 549755813888, ceiling(549755813890, 549755813888) = 1099511627776, ceiling(18446743523953737726, 549755813888) = 18446743523953737728
+ceiling(1099511627776, 1099511627776) = 1099511627776, ceiling(1099511627778, 1099511627776) = 2199023255552, ceiling(18446742974197923838, 1099511627776) = 18446742974197923840
+ceiling(2199023255552, 2199023255552) = 2199023255552, ceiling(2199023255554, 2199023255552) = 4398046511104, ceiling(18446741874686296062, 2199023255552) = 18446741874686296064
+ceiling(4398046511104, 4398046511104) = 4398046511104, ceiling(4398046511106, 4398046511104) = 8796093022208, ceiling(18446739675663040510, 4398046511104) = 18446739675663040512
+ceiling(8796093022208, 8796093022208) = 8796093022208, ceiling(8796093022210, 8796093022208) = 17592186044416, ceiling(18446735277616529406, 8796093022208) = 18446735277616529408
+ceiling(17592186044416, 17592186044416) = 17592186044416, ceiling(17592186044418, 17592186044416) = 35184372088832, ceiling(18446726481523507198, 17592186044416) = 18446726481523507200
+ceiling(35184372088832, 35184372088832) = 35184372088832, ceiling(35184372088834, 35184372088832) = 70368744177664, ceiling(18446708889337462782, 35184372088832) = 18446708889337462784
+ceiling(70368744177664, 70368744177664) = 70368744177664, ceiling(70368744177666, 70368744177664) = 140737488355328, ceiling(18446673704965373950, 70368744177664) = 18446673704965373952
+ceiling(140737488355328, 140737488355328) = 140737488355328, ceiling(140737488355330, 140737488355328) = 281474976710656, ceiling(18446603336221196286, 140737488355328) = 18446603336221196288
+ceiling(281474976710656, 281474976710656) = 281474976710656, ceiling(281474976710658, 281474976710656) = 562949953421312, ceiling(18446462598732840958, 281474976710656) = 18446462598732840960
+ceiling(562949953421312, 562949953421312) = 562949953421312, ceiling(562949953421314, 562949953421312) = 1125899906842624, ceiling(18446181123756130302, 562949953421312) = 18446181123756130304
+ceiling(1125899906842624, 1125899906842624) = 1125899906842624, ceiling(1125899906842626, 1125899906842624) = 2251799813685248, ceiling(18445618173802708990, 1125899906842624) = 18445618173802708992
+ceiling(2251799813685248, 2251799813685248) = 2251799813685248, ceiling(2251799813685250, 2251799813685248) = 4503599627370496, ceiling(18444492273895866366, 2251799813685248) = 18444492273895866368
+ceiling(4503599627370496, 4503599627370496) = 4503599627370496, ceiling(4503599627370498, 4503599627370496) = 9007199254740992, ceiling(18442240474082181118, 4503599627370496) = 18442240474082181120
+ceiling(9007199254740992, 9007199254740992) = 9007199254740992, ceiling(9007199254740994, 9007199254740992) = 18014398509481984, ceiling(18437736874454810622, 9007199254740992) = 18437736874454810624
+ceiling(18014398509481984, 18014398509481984) = 18014398509481984, ceiling(18014398509481986, 18014398509481984) = 36028797018963968, ceiling(18428729675200069630, 18014398509481984) = 18428729675200069632
+ceiling(36028797018963968, 36028797018963968) = 36028797018963968, ceiling(36028797018963970, 36028797018963968) = 72057594037927936, ceiling(18410715276690587646, 36028797018963968) = 18410715276690587648
+ceiling(72057594037927936, 72057594037927936) = 72057594037927936, ceiling(72057594037927938, 72057594037927936) = 144115188075855872, ceiling(18374686479671623678, 72057594037927936) = 18374686479671623680
+ceiling(144115188075855872, 144115188075855872) = 144115188075855872, ceiling(144115188075855874, 144115188075855872) = 288230376151711744, ceiling(18302628885633695742, 144115188075855872) = 18302628885633695744
+ceiling(288230376151711744, 288230376151711744) = 288230376151711744, ceiling(288230376151711746, 288230376151711744) = 576460752303423488, ceiling(18158513697557839870, 288230376151711744) = 18158513697557839872
+ceiling(576460752303423488, 576460752303423488) = 576460752303423488, ceiling(576460752303423490, 576460752303423488) = 1152921504606846976, ceiling(17870283321406128126, 576460752303423488) = 17870283321406128128
+ceiling(1152921504606846976, 1152921504606846976) = 1152921504606846976, ceiling(1152921504606846978, 1152921504606846976) = 2305843009213693952, ceiling(17293822569102704638, 1152921504606846976) = 17293822569102704640
+ceiling(2305843009213693952, 2305843009213693952) = 2305843009213693952, ceiling(2305843009213693954, 2305843009213693952) = 4611686018427387904, ceiling(16140901064495857662, 2305843009213693952) = 16140901064495857664
+ceiling(4611686018427387904, 4611686018427387904) = 4611686018427387904, ceiling(4611686018427387906, 4611686018427387904) = 9223372036854775808, ceiling(13835058055282163710, 4611686018427387904) = 13835058055282163712
+ceiling(9223372036854775808, 9223372036854775808) = 9223372036854775808, ceiling(9223372036854775810, 9223372036854775808) = 0, ceiling(9223372036854775806, 9223372036854775808) = 9223372036854775808
+
+
+ceiling
+
+signed char
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(-3, 1) = -3
+ceiling(2, 2) = 1, ceiling(4, 2) = 2, ceiling(-4, 2) = -1
+ceiling(4, 4) = 1, ceiling(6, 4) = 2, ceiling(-6, 4) = 0
+ceiling(8, 8) = 1, ceiling(10, 8) = 2, ceiling(-10, 8) = 0
+ceiling(16, 16) = 1, ceiling(18, 16) = 2, ceiling(-18, 16) = 0
+ceiling(32, 32) = 1, ceiling(34, 32) = 2, ceiling(-34, 32) = 0
+ceiling(64, 64) = 1, ceiling(66, 64) = -1, ceiling(-66, 64) = 0
+ceiling(-128, -128) = 0, ceiling(-126, -128) = 0, ceiling(126, -128) = 0
+
+unsigned char
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(253, 1) = 253
+ceiling(2, 2) = 1, ceiling(4, 2) = 2, ceiling(252, 2) = 126
+ceiling(4, 4) = 1, ceiling(6, 4) = 2, ceiling(250, 4) = 63
+ceiling(8, 8) = 1, ceiling(10, 8) = 2, ceiling(246, 8) = 31
+ceiling(16, 16) = 1, ceiling(18, 16) = 2, ceiling(238, 16) = 15
+ceiling(32, 32) = 1, ceiling(34, 32) = 2, ceiling(222, 32) = 7
+ceiling(64, 64) = 1, ceiling(66, 64) = 2, ceiling(190, 64) = 3
+ceiling(128, 128) = 1, ceiling(130, 128) = 0, ceiling(126, 128) = 1
+
+short int
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(-3, 1) = 65533
+ceiling(2, 2) = 1, ceiling(4, 2) = 2, ceiling(-4, 2) = 65535
+ceiling(4, 4) = 1, ceiling(6, 4) = 2, ceiling(-6, 4) = 0
+ceiling(8, 8) = 1, ceiling(10, 8) = 2, ceiling(-10, 8) = 0
+ceiling(16, 16) = 1, ceiling(18, 16) = 2, ceiling(-18, 16) = 0
+ceiling(32, 32) = 1, ceiling(34, 32) = 2, ceiling(-34, 32) = 0
+ceiling(64, 64) = 1, ceiling(66, 64) = 2, ceiling(-66, 64) = 0
+ceiling(128, 128) = 1, ceiling(130, 128) = 2, ceiling(-130, 128) = 0
+ceiling(256, 256) = 1, ceiling(258, 256) = 2, ceiling(-258, 256) = 0
+ceiling(512, 512) = 1, ceiling(514, 512) = 2, ceiling(-514, 512) = 0
+ceiling(1024, 1024) = 1, ceiling(1026, 1024) = 2, ceiling(-1026, 1024) = 0
+ceiling(2048, 2048) = 1, ceiling(2050, 2048) = 2, ceiling(-2050, 2048) = 0
+ceiling(4096, 4096) = 1, ceiling(4098, 4096) = 2, ceiling(-4098, 4096) = 0
+ceiling(8192, 8192) = 1, ceiling(8194, 8192) = 2, ceiling(-8194, 8192) = 0
+ceiling(16384, 16384) = 1, ceiling(16386, 16384) = 65535, ceiling(-16386, 16384) = 0
+ceiling(-32768, -32768) = 0, ceiling(-32766, -32768) = 0, ceiling(32766, -32768) = 0
+
+unsigned short int
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(65533, 1) = 65533
+ceiling(2, 2) = 1, ceiling(4, 2) = 2, ceiling(65532, 2) = 32766
+ceiling(4, 4) = 1, ceiling(6, 4) = 2, ceiling(65530, 4) = 16383
+ceiling(8, 8) = 1, ceiling(10, 8) = 2, ceiling(65526, 8) = 8191
+ceiling(16, 16) = 1, ceiling(18, 16) = 2, ceiling(65518, 16) = 4095
+ceiling(32, 32) = 1, ceiling(34, 32) = 2, ceiling(65502, 32) = 2047
+ceiling(64, 64) = 1, ceiling(66, 64) = 2, ceiling(65470, 64) = 1023
+ceiling(128, 128) = 1, ceiling(130, 128) = 2, ceiling(65406, 128) = 511
+ceiling(256, 256) = 1, ceiling(258, 256) = 2, ceiling(65278, 256) = 255
+ceiling(512, 512) = 1, ceiling(514, 512) = 2, ceiling(65022, 512) = 127
+ceiling(1024, 1024) = 1, ceiling(1026, 1024) = 2, ceiling(64510, 1024) = 63
+ceiling(2048, 2048) = 1, ceiling(2050, 2048) = 2, ceiling(63486, 2048) = 31
+ceiling(4096, 4096) = 1, ceiling(4098, 4096) = 2, ceiling(61438, 4096) = 15
+ceiling(8192, 8192) = 1, ceiling(8194, 8192) = 2, ceiling(57342, 8192) = 7
+ceiling(16384, 16384) = 1, ceiling(16386, 16384) = 2, ceiling(49150, 16384) = 3
+ceiling(32768, 32768) = 1, ceiling(32770, 32768) = 0, ceiling(32766, 32768) = 1
+
+int
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(-3, 1) = -3
+ceiling(2, 2) = 1, ceiling(4, 2) = 2, ceiling(-4, 2) = -1
+ceiling(4, 4) = 1, ceiling(6, 4) = 2, ceiling(-6, 4) = 0
+ceiling(8, 8) = 1, ceiling(10, 8) = 2, ceiling(-10, 8) = 0
+ceiling(16, 16) = 1, ceiling(18, 16) = 2, ceiling(-18, 16) = 0
+ceiling(32, 32) = 1, ceiling(34, 32) = 2, ceiling(-34, 32) = 0
+ceiling(64, 64) = 1, ceiling(66, 64) = 2, ceiling(-66, 64) = 0
+ceiling(128, 128) = 1, ceiling(130, 128) = 2, ceiling(-130, 128) = 0
+ceiling(256, 256) = 1, ceiling(258, 256) = 2, ceiling(-258, 256) = 0
+ceiling(512, 512) = 1, ceiling(514, 512) = 2, ceiling(-514, 512) = 0
+ceiling(1024, 1024) = 1, ceiling(1026, 1024) = 2, ceiling(-1026, 1024) = 0
+ceiling(2048, 2048) = 1, ceiling(2050, 2048) = 2, ceiling(-2050, 2048) = 0
+ceiling(4096, 4096) = 1, ceiling(4098, 4096) = 2, ceiling(-4098, 4096) = 0
+ceiling(8192, 8192) = 1, ceiling(8194, 8192) = 2, ceiling(-8194, 8192) = 0
+ceiling(16384, 16384) = 1, ceiling(16386, 16384) = 2, ceiling(-16386, 16384) = 0
+ceiling(32768, 32768) = 1, ceiling(32770, 32768) = 2, ceiling(-32770, 32768) = 0
+ceiling(65536, 65536) = 1, ceiling(65538, 65536) = 2, ceiling(-65538, 65536) = 0
+ceiling(131072, 131072) = 1, ceiling(131074, 131072) = 2, ceiling(-131074, 131072) = 0
+ceiling(262144, 262144) = 1, ceiling(262146, 262144) = 2, ceiling(-262146, 262144) = 0
+ceiling(524288, 524288) = 1, ceiling(524290, 524288) = 2, ceiling(-524290, 524288) = 0
+ceiling(1048576, 1048576) = 1, ceiling(1048578, 1048576) = 2, ceiling(-1048578, 1048576) = 0
+ceiling(2097152, 2097152) = 1, ceiling(2097154, 2097152) = 2, ceiling(-2097154, 2097152) = 0
+ceiling(4194304, 4194304) = 1, ceiling(4194306, 4194304) = 2, ceiling(-4194306, 4194304) = 0
+ceiling(8388608, 8388608) = 1, ceiling(8388610, 8388608) = 2, ceiling(-8388610, 8388608) = 0
+ceiling(16777216, 16777216) = 1, ceiling(16777218, 16777216) = 2, ceiling(-16777218, 16777216) = 0
+ceiling(33554432, 33554432) = 1, ceiling(33554434, 33554432) = 2, ceiling(-33554434, 33554432) = 0
+ceiling(67108864, 67108864) = 1, ceiling(67108866, 67108864) = 2, ceiling(-67108866, 67108864) = 0
+ceiling(134217728, 134217728) = 1, ceiling(134217730, 134217728) = 2, ceiling(-134217730, 134217728) = 0
+ceiling(268435456, 268435456) = 1, ceiling(268435458, 268435456) = 2, ceiling(-268435458, 268435456) = 0
+ceiling(536870912, 536870912) = 1, ceiling(536870914, 536870912) = 2, ceiling(-536870914, 536870912) = 0
+ceiling(1073741824, 1073741824) = 1, ceiling(1073741826, 1073741824) = -1, ceiling(-1073741826, 1073741824) = 0
+ceiling(-2147483648, -2147483648) = 0, ceiling(-2147483646, -2147483648) = 0, ceiling(2147483646, -2147483648) = 0
+
+unsigned int
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(4294967293, 1) = 4294967293
+ceiling(2, 2) = 1, ceiling(4, 2) = 2, ceiling(4294967292, 2) = 2147483646
+ceiling(4, 4) = 1, ceiling(6, 4) = 2, ceiling(4294967290, 4) = 1073741823
+ceiling(8, 8) = 1, ceiling(10, 8) = 2, ceiling(4294967286, 8) = 536870911
+ceiling(16, 16) = 1, ceiling(18, 16) = 2, ceiling(4294967278, 16) = 268435455
+ceiling(32, 32) = 1, ceiling(34, 32) = 2, ceiling(4294967262, 32) = 134217727
+ceiling(64, 64) = 1, ceiling(66, 64) = 2, ceiling(4294967230, 64) = 67108863
+ceiling(128, 128) = 1, ceiling(130, 128) = 2, ceiling(4294967166, 128) = 33554431
+ceiling(256, 256) = 1, ceiling(258, 256) = 2, ceiling(4294967038, 256) = 16777215
+ceiling(512, 512) = 1, ceiling(514, 512) = 2, ceiling(4294966782, 512) = 8388607
+ceiling(1024, 1024) = 1, ceiling(1026, 1024) = 2, ceiling(4294966270, 1024) = 4194303
+ceiling(2048, 2048) = 1, ceiling(2050, 2048) = 2, ceiling(4294965246, 2048) = 2097151
+ceiling(4096, 4096) = 1, ceiling(4098, 4096) = 2, ceiling(4294963198, 4096) = 1048575
+ceiling(8192, 8192) = 1, ceiling(8194, 8192) = 2, ceiling(4294959102, 8192) = 524287
+ceiling(16384, 16384) = 1, ceiling(16386, 16384) = 2, ceiling(4294950910, 16384) = 262143
+ceiling(32768, 32768) = 1, ceiling(32770, 32768) = 2, ceiling(4294934526, 32768) = 131071
+ceiling(65536, 65536) = 1, ceiling(65538, 65536) = 2, ceiling(4294901758, 65536) = 65535
+ceiling(131072, 131072) = 1, ceiling(131074, 131072) = 2, ceiling(4294836222, 131072) = 32767
+ceiling(262144, 262144) = 1, ceiling(262146, 262144) = 2, ceiling(4294705150, 262144) = 16383
+ceiling(524288, 524288) = 1, ceiling(524290, 524288) = 2, ceiling(4294443006, 524288) = 8191
+ceiling(1048576, 1048576) = 1, ceiling(1048578, 1048576) = 2, ceiling(4293918718, 1048576) = 4095
+ceiling(2097152, 2097152) = 1, ceiling(2097154, 2097152) = 2, ceiling(4292870142, 2097152) = 2047
+ceiling(4194304, 4194304) = 1, ceiling(4194306, 4194304) = 2, ceiling(4290772990, 4194304) = 1023
+ceiling(8388608, 8388608) = 1, ceiling(8388610, 8388608) = 2, ceiling(4286578686, 8388608) = 511
+ceiling(16777216, 16777216) = 1, ceiling(16777218, 16777216) = 2, ceiling(4278190078, 16777216) = 255
+ceiling(33554432, 33554432) = 1, ceiling(33554434, 33554432) = 2, ceiling(4261412862, 33554432) = 127
+ceiling(67108864, 67108864) = 1, ceiling(67108866, 67108864) = 2, ceiling(4227858430, 67108864) = 63
+ceiling(134217728, 134217728) = 1, ceiling(134217730, 134217728) = 2, ceiling(4160749566, 134217728) = 31
+ceiling(268435456, 268435456) = 1, ceiling(268435458, 268435456) = 2, ceiling(4026531838, 268435456) = 15
+ceiling(536870912, 536870912) = 1, ceiling(536870914, 536870912) = 2, ceiling(3758096382, 536870912) = 7
+ceiling(1073741824, 1073741824) = 1, ceiling(1073741826, 1073741824) = 2, ceiling(3221225470, 1073741824) = 3
+ceiling(2147483648, 2147483648) = 1, ceiling(2147483650, 2147483648) = 0, ceiling(2147483646, 2147483648) = 1
+
+long int
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(-3, 1) = -3
+ceiling(2, 2) = 1, ceiling(4, 2) = 2, ceiling(-4, 2) = -1
+ceiling(4, 4) = 1, ceiling(6, 4) = 2, ceiling(-6, 4) = 0
+ceiling(8, 8) = 1, ceiling(10, 8) = 2, ceiling(-10, 8) = 0
+ceiling(16, 16) = 1, ceiling(18, 16) = 2, ceiling(-18, 16) = 0
+ceiling(32, 32) = 1, ceiling(34, 32) = 2, ceiling(-34, 32) = 0
+ceiling(64, 64) = 1, ceiling(66, 64) = 2, ceiling(-66, 64) = 0
+ceiling(128, 128) = 1, ceiling(130, 128) = 2, ceiling(-130, 128) = 0
+ceiling(256, 256) = 1, ceiling(258, 256) = 2, ceiling(-258, 256) = 0
+ceiling(512, 512) = 1, ceiling(514, 512) = 2, ceiling(-514, 512) = 0
+ceiling(1024, 1024) = 1, ceiling(1026, 1024) = 2, ceiling(-1026, 1024) = 0
+ceiling(2048, 2048) = 1, ceiling(2050, 2048) = 2, ceiling(-2050, 2048) = 0
+ceiling(4096, 4096) = 1, ceiling(4098, 4096) = 2, ceiling(-4098, 4096) = 0
+ceiling(8192, 8192) = 1, ceiling(8194, 8192) = 2, ceiling(-8194, 8192) = 0
+ceiling(16384, 16384) = 1, ceiling(16386, 16384) = 2, ceiling(-16386, 16384) = 0
+ceiling(32768, 32768) = 1, ceiling(32770, 32768) = 2, ceiling(-32770, 32768) = 0
+ceiling(65536, 65536) = 1, ceiling(65538, 65536) = 2, ceiling(-65538, 65536) = 0
+ceiling(131072, 131072) = 1, ceiling(131074, 131072) = 2, ceiling(-131074, 131072) = 0
+ceiling(262144, 262144) = 1, ceiling(262146, 262144) = 2, ceiling(-262146, 262144) = 0
+ceiling(524288, 524288) = 1, ceiling(524290, 524288) = 2, ceiling(-524290, 524288) = 0
+ceiling(1048576, 1048576) = 1, ceiling(1048578, 1048576) = 2, ceiling(-1048578, 1048576) = 0
+ceiling(2097152, 2097152) = 1, ceiling(2097154, 2097152) = 2, ceiling(-2097154, 2097152) = 0
+ceiling(4194304, 4194304) = 1, ceiling(4194306, 4194304) = 2, ceiling(-4194306, 4194304) = 0
+ceiling(8388608, 8388608) = 1, ceiling(8388610, 8388608) = 2, ceiling(-8388610, 8388608) = 0
+ceiling(16777216, 16777216) = 1, ceiling(16777218, 16777216) = 2, ceiling(-16777218, 16777216) = 0
+ceiling(33554432, 33554432) = 1, ceiling(33554434, 33554432) = 2, ceiling(-33554434, 33554432) = 0
+ceiling(67108864, 67108864) = 1, ceiling(67108866, 67108864) = 2, ceiling(-67108866, 67108864) = 0
+ceiling(134217728, 134217728) = 1, ceiling(134217730, 134217728) = 2, ceiling(-134217730, 134217728) = 0
+ceiling(268435456, 268435456) = 1, ceiling(268435458, 268435456) = 2, ceiling(-268435458, 268435456) = 0
+ceiling(536870912, 536870912) = 1, ceiling(536870914, 536870912) = 2, ceiling(-536870914, 536870912) = 0
+ceiling(1073741824, 1073741824) = 1, ceiling(1073741826, 1073741824) = -1, ceiling(-1073741826, 1073741824) = 0
+ceiling(-2147483648, -2147483648) = 0, ceiling(-2147483646, -2147483648) = 0, ceiling(2147483646, -2147483648) = 0
+
+unsigned long int
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(4294967293, 1) = 4294967293
+ceiling(2, 2) = 1, ceiling(4, 2) = 2, ceiling(4294967292, 2) = 2147483646
+ceiling(4, 4) = 1, ceiling(6, 4) = 2, ceiling(4294967290, 4) = 1073741823
+ceiling(8, 8) = 1, ceiling(10, 8) = 2, ceiling(4294967286, 8) = 536870911
+ceiling(16, 16) = 1, ceiling(18, 16) = 2, ceiling(4294967278, 16) = 268435455
+ceiling(32, 32) = 1, ceiling(34, 32) = 2, ceiling(4294967262, 32) = 134217727
+ceiling(64, 64) = 1, ceiling(66, 64) = 2, ceiling(4294967230, 64) = 67108863
+ceiling(128, 128) = 1, ceiling(130, 128) = 2, ceiling(4294967166, 128) = 33554431
+ceiling(256, 256) = 1, ceiling(258, 256) = 2, ceiling(4294967038, 256) = 16777215
+ceiling(512, 512) = 1, ceiling(514, 512) = 2, ceiling(4294966782, 512) = 8388607
+ceiling(1024, 1024) = 1, ceiling(1026, 1024) = 2, ceiling(4294966270, 1024) = 4194303
+ceiling(2048, 2048) = 1, ceiling(2050, 2048) = 2, ceiling(4294965246, 2048) = 2097151
+ceiling(4096, 4096) = 1, ceiling(4098, 4096) = 2, ceiling(4294963198, 4096) = 1048575
+ceiling(8192, 8192) = 1, ceiling(8194, 8192) = 2, ceiling(4294959102, 8192) = 524287
+ceiling(16384, 16384) = 1, ceiling(16386, 16384) = 2, ceiling(4294950910, 16384) = 262143
+ceiling(32768, 32768) = 1, ceiling(32770, 32768) = 2, ceiling(4294934526, 32768) = 131071
+ceiling(65536, 65536) = 1, ceiling(65538, 65536) = 2, ceiling(4294901758, 65536) = 65535
+ceiling(131072, 131072) = 1, ceiling(131074, 131072) = 2, ceiling(4294836222, 131072) = 32767
+ceiling(262144, 262144) = 1, ceiling(262146, 262144) = 2, ceiling(4294705150, 262144) = 16383
+ceiling(524288, 524288) = 1, ceiling(524290, 524288) = 2, ceiling(4294443006, 524288) = 8191
+ceiling(1048576, 1048576) = 1, ceiling(1048578, 1048576) = 2, ceiling(4293918718, 1048576) = 4095
+ceiling(2097152, 2097152) = 1, ceiling(2097154, 2097152) = 2, ceiling(4292870142, 2097152) = 2047
+ceiling(4194304, 4194304) = 1, ceiling(4194306, 4194304) = 2, ceiling(4290772990, 4194304) = 1023
+ceiling(8388608, 8388608) = 1, ceiling(8388610, 8388608) = 2, ceiling(4286578686, 8388608) = 511
+ceiling(16777216, 16777216) = 1, ceiling(16777218, 16777216) = 2, ceiling(4278190078, 16777216) = 255
+ceiling(33554432, 33554432) = 1, ceiling(33554434, 33554432) = 2, ceiling(4261412862, 33554432) = 127
+ceiling(67108864, 67108864) = 1, ceiling(67108866, 67108864) = 2, ceiling(4227858430, 67108864) = 63
+ceiling(134217728, 134217728) = 1, ceiling(134217730, 134217728) = 2, ceiling(4160749566, 134217728) = 31
+ceiling(268435456, 268435456) = 1, ceiling(268435458, 268435456) = 2, ceiling(4026531838, 268435456) = 15
+ceiling(536870912, 536870912) = 1, ceiling(536870914, 536870912) = 2, ceiling(3758096382, 536870912) = 7
+ceiling(1073741824, 1073741824) = 1, ceiling(1073741826, 1073741824) = 2, ceiling(3221225470, 1073741824) = 3
+ceiling(2147483648, 2147483648) = 1, ceiling(2147483650, 2147483648) = 0, ceiling(2147483646, 2147483648) = 1
+
+long long int
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(-3, 1) = -3
+ceiling(2, 2) = 1, ceiling(4, 2) = 2, ceiling(-4, 2) = -1
+ceiling(4, 4) = 1, ceiling(6, 4) = 2, ceiling(-6, 4) = 0
+ceiling(8, 8) = 1, ceiling(10, 8) = 2, ceiling(-10, 8) = 0
+ceiling(16, 16) = 1, ceiling(18, 16) = 2, ceiling(-18, 16) = 0
+ceiling(32, 32) = 1, ceiling(34, 32) = 2, ceiling(-34, 32) = 0
+ceiling(64, 64) = 1, ceiling(66, 64) = 2, ceiling(-66, 64) = 0
+ceiling(128, 128) = 1, ceiling(130, 128) = 2, ceiling(-130, 128) = 0
+ceiling(256, 256) = 1, ceiling(258, 256) = 2, ceiling(-258, 256) = 0
+ceiling(512, 512) = 1, ceiling(514, 512) = 2, ceiling(-514, 512) = 0
+ceiling(1024, 1024) = 1, ceiling(1026, 1024) = 2, ceiling(-1026, 1024) = 0
+ceiling(2048, 2048) = 1, ceiling(2050, 2048) = 2, ceiling(-2050, 2048) = 0
+ceiling(4096, 4096) = 1, ceiling(4098, 4096) = 2, ceiling(-4098, 4096) = 0
+ceiling(8192, 8192) = 1, ceiling(8194, 8192) = 2, ceiling(-8194, 8192) = 0
+ceiling(16384, 16384) = 1, ceiling(16386, 16384) = 2, ceiling(-16386, 16384) = 0
+ceiling(32768, 32768) = 1, ceiling(32770, 32768) = 2, ceiling(-32770, 32768) = 0
+ceiling(65536, 65536) = 1, ceiling(65538, 65536) = 2, ceiling(-65538, 65536) = 0
+ceiling(131072, 131072) = 1, ceiling(131074, 131072) = 2, ceiling(-131074, 131072) = 0
+ceiling(262144, 262144) = 1, ceiling(262146, 262144) = 2, ceiling(-262146, 262144) = 0
+ceiling(524288, 524288) = 1, ceiling(524290, 524288) = 2, ceiling(-524290, 524288) = 0
+ceiling(1048576, 1048576) = 1, ceiling(1048578, 1048576) = 2, ceiling(-1048578, 1048576) = 0
+ceiling(2097152, 2097152) = 1, ceiling(2097154, 2097152) = 2, ceiling(-2097154, 2097152) = 0
+ceiling(4194304, 4194304) = 1, ceiling(4194306, 4194304) = 2, ceiling(-4194306, 4194304) = 0
+ceiling(8388608, 8388608) = 1, ceiling(8388610, 8388608) = 2, ceiling(-8388610, 8388608) = 0
+ceiling(16777216, 16777216) = 1, ceiling(16777218, 16777216) = 2, ceiling(-16777218, 16777216) = 0
+ceiling(33554432, 33554432) = 1, ceiling(33554434, 33554432) = 2, ceiling(-33554434, 33554432) = 0
+ceiling(67108864, 67108864) = 1, ceiling(67108866, 67108864) = 2, ceiling(-67108866, 67108864) = 0
+ceiling(134217728, 134217728) = 1, ceiling(134217730, 134217728) = 2, ceiling(-134217730, 134217728) = 0
+ceiling(268435456, 268435456) = 1, ceiling(268435458, 268435456) = 2, ceiling(-268435458, 268435456) = 0
+ceiling(536870912, 536870912) = 1, ceiling(536870914, 536870912) = 2, ceiling(-536870914, 536870912) = 0
+ceiling(1073741824, 1073741824) = 1, ceiling(1073741826, 1073741824) = 2, ceiling(-1073741826, 1073741824) = 0
+ceiling(2147483648, 2147483648) = 1, ceiling(2147483650, 2147483648) = 2, ceiling(-2147483650, 2147483648) = 0
+ceiling(4294967296, 4294967296) = 1, ceiling(4294967298, 4294967296) = 2, ceiling(-4294967298, 4294967296) = 0
+ceiling(8589934592, 8589934592) = 1, ceiling(8589934594, 8589934592) = 2, ceiling(-8589934594, 8589934592) = 0
+ceiling(17179869184, 17179869184) = 1, ceiling(17179869186, 17179869184) = 2, ceiling(-17179869186, 17179869184) = 0
+ceiling(34359738368, 34359738368) = 1, ceiling(34359738370, 34359738368) = 2, ceiling(-34359738370, 34359738368) = 0
+ceiling(68719476736, 68719476736) = 1, ceiling(68719476738, 68719476736) = 2, ceiling(-68719476738, 68719476736) = 0
+ceiling(137438953472, 137438953472) = 1, ceiling(137438953474, 137438953472) = 2, ceiling(-137438953474, 137438953472) = 0
+ceiling(274877906944, 274877906944) = 1, ceiling(274877906946, 274877906944) = 2, ceiling(-274877906946, 274877906944) = 0
+ceiling(549755813888, 549755813888) = 1, ceiling(549755813890, 549755813888) = 2, ceiling(-549755813890, 549755813888) = 0
+ceiling(1099511627776, 1099511627776) = 1, ceiling(1099511627778, 1099511627776) = 2, ceiling(-1099511627778, 1099511627776) = 0
+ceiling(2199023255552, 2199023255552) = 1, ceiling(2199023255554, 2199023255552) = 2, ceiling(-2199023255554, 2199023255552) = 0
+ceiling(4398046511104, 4398046511104) = 1, ceiling(4398046511106, 4398046511104) = 2, ceiling(-4398046511106, 4398046511104) = 0
+ceiling(8796093022208, 8796093022208) = 1, ceiling(8796093022210, 8796093022208) = 2, ceiling(-8796093022210, 8796093022208) = 0
+ceiling(17592186044416, 17592186044416) = 1, ceiling(17592186044418, 17592186044416) = 2, ceiling(-17592186044418, 17592186044416) = 0
+ceiling(35184372088832, 35184372088832) = 1, ceiling(35184372088834, 35184372088832) = 2, ceiling(-35184372088834, 35184372088832) = 0
+ceiling(70368744177664, 70368744177664) = 1, ceiling(70368744177666, 70368744177664) = 2, ceiling(-70368744177666, 70368744177664) = 0
+ceiling(140737488355328, 140737488355328) = 1, ceiling(140737488355330, 140737488355328) = 2, ceiling(-140737488355330, 140737488355328) = 0
+ceiling(281474976710656, 281474976710656) = 1, ceiling(281474976710658, 281474976710656) = 2, ceiling(-281474976710658, 281474976710656) = 0
+ceiling(562949953421312, 562949953421312) = 1, ceiling(562949953421314, 562949953421312) = 2, ceiling(-562949953421314, 562949953421312) = 0
+ceiling(1125899906842624, 1125899906842624) = 1, ceiling(1125899906842626, 1125899906842624) = 2, ceiling(-1125899906842626, 1125899906842624) = 0
+ceiling(2251799813685248, 2251799813685248) = 1, ceiling(2251799813685250, 2251799813685248) = 2, ceiling(-2251799813685250, 2251799813685248) = 0
+ceiling(4503599627370496, 4503599627370496) = 1, ceiling(4503599627370498, 4503599627370496) = 2, ceiling(-4503599627370498, 4503599627370496) = 0
+ceiling(9007199254740992, 9007199254740992) = 1, ceiling(9007199254740994, 9007199254740992) = 2, ceiling(-9007199254740994, 9007199254740992) = 0
+ceiling(18014398509481984, 18014398509481984) = 1, ceiling(18014398509481986, 18014398509481984) = 2, ceiling(-18014398509481986, 18014398509481984) = 0
+ceiling(36028797018963968, 36028797018963968) = 1, ceiling(36028797018963970, 36028797018963968) = 2, ceiling(-36028797018963970, 36028797018963968) = 0
+ceiling(72057594037927936, 72057594037927936) = 1, ceiling(72057594037927938, 72057594037927936) = 2, ceiling(-72057594037927938, 72057594037927936) = 0
+ceiling(144115188075855872, 144115188075855872) = 1, ceiling(144115188075855874, 144115188075855872) = 2, ceiling(-144115188075855874, 144115188075855872) = 0
+ceiling(288230376151711744, 288230376151711744) = 1, ceiling(288230376151711746, 288230376151711744) = 2, ceiling(-288230376151711746, 288230376151711744) = 0
+ceiling(576460752303423488, 576460752303423488) = 1, ceiling(576460752303423490, 576460752303423488) = 2, ceiling(-576460752303423490, 576460752303423488) = 0
+ceiling(1152921504606846976, 1152921504606846976) = 1, ceiling(1152921504606846978, 1152921504606846976) = 2, ceiling(-1152921504606846978, 1152921504606846976) = 0
+ceiling(2305843009213693952, 2305843009213693952) = 1, ceiling(2305843009213693954, 2305843009213693952) = 2, ceiling(-2305843009213693954, 2305843009213693952) = 0
+ceiling(4611686018427387904, 4611686018427387904) = 1, ceiling(4611686018427387906, 4611686018427387904) = -1, ceiling(-4611686018427387906, 4611686018427387904) = 0
+ceiling(-9223372036854775808, -9223372036854775808) = 0, ceiling(-9223372036854775806, -9223372036854775808) = 0, ceiling(9223372036854775806, -9223372036854775808) = 0
+
+unsigned long long int
+ceiling(1, 1) = 1, ceiling(3, 1) = 3, ceiling(18446744073709551613, 1) = 18446744073709551613
+ceiling(2, 2) = 1, ceiling(4, 2) = 2, ceiling(18446744073709551612, 2) = 9223372036854775806
+ceiling(4, 4) = 1, ceiling(6, 4) = 2, ceiling(18446744073709551610, 4) = 4611686018427387903
+ceiling(8, 8) = 1, ceiling(10, 8) = 2, ceiling(18446744073709551606, 8) = 2305843009213693951
+ceiling(16, 16) = 1, ceiling(18, 16) = 2, ceiling(18446744073709551598, 16) = 1152921504606846975
+ceiling(32, 32) = 1, ceiling(34, 32) = 2, ceiling(18446744073709551582, 32) = 576460752303423487
+ceiling(64, 64) = 1, ceiling(66, 64) = 2, ceiling(18446744073709551550, 64) = 288230376151711743
+ceiling(128, 128) = 1, ceiling(130, 128) = 2, ceiling(18446744073709551486, 128) = 144115188075855871
+ceiling(256, 256) = 1, ceiling(258, 256) = 2, ceiling(18446744073709551358, 256) = 72057594037927935
+ceiling(512, 512) = 1, ceiling(514, 512) = 2, ceiling(18446744073709551102, 512) = 36028797018963967
+ceiling(1024, 1024) = 1, ceiling(1026, 1024) = 2, ceiling(18446744073709550590, 1024) = 18014398509481983
+ceiling(2048, 2048) = 1, ceiling(2050, 2048) = 2, ceiling(18446744073709549566, 2048) = 9007199254740991
+ceiling(4096, 4096) = 1, ceiling(4098, 4096) = 2, ceiling(18446744073709547518, 4096) = 4503599627370495
+ceiling(8192, 8192) = 1, ceiling(8194, 8192) = 2, ceiling(18446744073709543422, 8192) = 2251799813685247
+ceiling(16384, 16384) = 1, ceiling(16386, 16384) = 2, ceiling(18446744073709535230, 16384) = 1125899906842623
+ceiling(32768, 32768) = 1, ceiling(32770, 32768) = 2, ceiling(18446744073709518846, 32768) = 562949953421311
+ceiling(65536, 65536) = 1, ceiling(65538, 65536) = 2, ceiling(18446744073709486078, 65536) = 281474976710655
+ceiling(131072, 131072) = 1, ceiling(131074, 131072) = 2, ceiling(18446744073709420542, 131072) = 140737488355327
+ceiling(262144, 262144) = 1, ceiling(262146, 262144) = 2, ceiling(18446744073709289470, 262144) = 70368744177663
+ceiling(524288, 524288) = 1, ceiling(524290, 524288) = 2, ceiling(18446744073709027326, 524288) = 35184372088831
+ceiling(1048576, 1048576) = 1, ceiling(1048578, 1048576) = 2, ceiling(18446744073708503038, 1048576) = 17592186044415
+ceiling(2097152, 2097152) = 1, ceiling(2097154, 2097152) = 2, ceiling(18446744073707454462, 2097152) = 8796093022207
+ceiling(4194304, 4194304) = 1, ceiling(4194306, 4194304) = 2, ceiling(18446744073705357310, 4194304) = 4398046511103
+ceiling(8388608, 8388608) = 1, ceiling(8388610, 8388608) = 2, ceiling(18446744073701163006, 8388608) = 2199023255551
+ceiling(16777216, 16777216) = 1, ceiling(16777218, 16777216) = 2, ceiling(18446744073692774398, 16777216) = 1099511627775
+ceiling(33554432, 33554432) = 1, ceiling(33554434, 33554432) = 2, ceiling(18446744073675997182, 33554432) = 549755813887
+ceiling(67108864, 67108864) = 1, ceiling(67108866, 67108864) = 2, ceiling(18446744073642442750, 67108864) = 274877906943
+ceiling(134217728, 134217728) = 1, ceiling(134217730, 134217728) = 2, ceiling(18446744073575333886, 134217728) = 137438953471
+ceiling(268435456, 268435456) = 1, ceiling(268435458, 268435456) = 2, ceiling(18446744073441116158, 268435456) = 68719476735
+ceiling(536870912, 536870912) = 1, ceiling(536870914, 536870912) = 2, ceiling(18446744073172680702, 536870912) = 34359738367
+ceiling(1073741824, 1073741824) = 1, ceiling(1073741826, 1073741824) = 2, ceiling(18446744072635809790, 1073741824) = 17179869183
+ceiling(2147483648, 2147483648) = 1, ceiling(2147483650, 2147483648) = 2, ceiling(18446744071562067966, 2147483648) = 8589934591
+ceiling(4294967296, 4294967296) = 1, ceiling(4294967298, 4294967296) = 2, ceiling(18446744069414584318, 4294967296) = 4294967295
+ceiling(8589934592, 8589934592) = 1, ceiling(8589934594, 8589934592) = 2, ceiling(18446744065119617022, 8589934592) = 2147483647
+ceiling(17179869184, 17179869184) = 1, ceiling(17179869186, 17179869184) = 2, ceiling(18446744056529682430, 17179869184) = 1073741823
+ceiling(34359738368, 34359738368) = 1, ceiling(34359738370, 34359738368) = 2, ceiling(18446744039349813246, 34359738368) = 536870911
+ceiling(68719476736, 68719476736) = 1, ceiling(68719476738, 68719476736) = 2, ceiling(18446744004990074878, 68719476736) = 268435455
+ceiling(137438953472, 137438953472) = 1, ceiling(137438953474, 137438953472) = 2, ceiling(18446743936270598142, 137438953472) = 134217727
+ceiling(274877906944, 274877906944) = 1, ceiling(274877906946, 274877906944) = 2, ceiling(18446743798831644670, 274877906944) = 67108863
+ceiling(549755813888, 549755813888) = 1, ceiling(549755813890, 549755813888) = 2, ceiling(18446743523953737726, 549755813888) = 33554431
+ceiling(1099511627776, 1099511627776) = 1, ceiling(1099511627778, 1099511627776) = 2, ceiling(18446742974197923838, 1099511627776) = 16777215
+ceiling(2199023255552, 2199023255552) = 1, ceiling(2199023255554, 2199023255552) = 2, ceiling(18446741874686296062, 2199023255552) = 8388607
+ceiling(4398046511104, 4398046511104) = 1, ceiling(4398046511106, 4398046511104) = 2, ceiling(18446739675663040510, 4398046511104) = 4194303
+ceiling(8796093022208, 8796093022208) = 1, ceiling(8796093022210, 8796093022208) = 2, ceiling(18446735277616529406, 8796093022208) = 2097151
+ceiling(17592186044416, 17592186044416) = 1, ceiling(17592186044418, 17592186044416) = 2, ceiling(18446726481523507198, 17592186044416) = 1048575
+ceiling(35184372088832, 35184372088832) = 1, ceiling(35184372088834, 35184372088832) = 2, ceiling(18446708889337462782, 35184372088832) = 524287
+ceiling(70368744177664, 70368744177664) = 1, ceiling(70368744177666, 70368744177664) = 2, ceiling(18446673704965373950, 70368744177664) = 262143
+ceiling(140737488355328, 140737488355328) = 1, ceiling(140737488355330, 140737488355328) = 2, ceiling(18446603336221196286, 140737488355328) = 131071
+ceiling(281474976710656, 281474976710656) = 1, ceiling(281474976710658, 281474976710656) = 2, ceiling(18446462598732840958, 281474976710656) = 65535
+ceiling(562949953421312, 562949953421312) = 1, ceiling(562949953421314, 562949953421312) = 2, ceiling(18446181123756130302, 562949953421312) = 32767
+ceiling(1125899906842624, 1125899906842624) = 1, ceiling(1125899906842626, 1125899906842624) = 2, ceiling(18445618173802708990, 1125899906842624) = 16383
+ceiling(2251799813685248, 2251799813685248) = 1, ceiling(2251799813685250, 2251799813685248) = 2, ceiling(18444492273895866366, 2251799813685248) = 8191
+ceiling(4503599627370496, 4503599627370496) = 1, ceiling(4503599627370498, 4503599627370496) = 2, ceiling(18442240474082181118, 4503599627370496) = 4095
+ceiling(9007199254740992, 9007199254740992) = 1, ceiling(9007199254740994, 9007199254740992) = 2, ceiling(18437736874454810622, 9007199254740992) = 2047
+ceiling(18014398509481984, 18014398509481984) = 1, ceiling(18014398509481986, 18014398509481984) = 2, ceiling(18428729675200069630, 18014398509481984) = 1023
+ceiling(36028797018963968, 36028797018963968) = 1, ceiling(36028797018963970, 36028797018963968) = 2, ceiling(18410715276690587646, 36028797018963968) = 511
+ceiling(72057594037927936, 72057594037927936) = 1, ceiling(72057594037927938, 72057594037927936) = 2, ceiling(18374686479671623678, 72057594037927936) = 255
+ceiling(144115188075855872, 144115188075855872) = 1, ceiling(144115188075855874, 144115188075855872) = 2, ceiling(18302628885633695742, 144115188075855872) = 127
+ceiling(288230376151711744, 288230376151711744) = 1, ceiling(288230376151711746, 288230376151711744) = 2, ceiling(18158513697557839870, 288230376151711744) = 63
+ceiling(576460752303423488, 576460752303423488) = 1, ceiling(576460752303423490, 576460752303423488) = 2, ceiling(17870283321406128126, 576460752303423488) = 31
+ceiling(1152921504606846976, 1152921504606846976) = 1, ceiling(1152921504606846978, 1152921504606846976) = 2, ceiling(17293822569102704638, 1152921504606846976) = 15
+ceiling(2305843009213693952, 2305843009213693952) = 1, ceiling(2305843009213693954, 2305843009213693952) = 2, ceiling(16140901064495857662, 2305843009213693952) = 7
+ceiling(4611686018427387904, 4611686018427387904) = 1, ceiling(4611686018427387906, 4611686018427387904) = 2, ceiling(13835058055282163710, 4611686018427387904) = 3
+ceiling(9223372036854775808, 9223372036854775808) = 1, ceiling(9223372036854775810, 9223372036854775808) = 0, ceiling(9223372036854775806, 9223372036854775808) = 1
+
