libv8 3.11.8.17 → 3.16.14.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (754) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -2
  3. data/Gemfile +1 -1
  4. data/Rakefile +6 -7
  5. data/lib/libv8/version.rb +1 -1
  6. data/vendor/v8/.gitignore +24 -3
  7. data/vendor/v8/AUTHORS +7 -0
  8. data/vendor/v8/ChangeLog +839 -0
  9. data/vendor/v8/DEPS +1 -1
  10. data/vendor/v8/Makefile.android +92 -0
  11. data/vendor/v8/OWNERS +11 -0
  12. data/vendor/v8/PRESUBMIT.py +71 -0
  13. data/vendor/v8/SConstruct +34 -39
  14. data/vendor/v8/build/android.gypi +56 -37
  15. data/vendor/v8/build/common.gypi +112 -30
  16. data/vendor/v8/build/gyp_v8 +1 -1
  17. data/vendor/v8/build/standalone.gypi +15 -11
  18. data/vendor/v8/include/v8-debug.h +9 -1
  19. data/vendor/v8/include/v8-preparser.h +4 -3
  20. data/vendor/v8/include/v8-profiler.h +25 -25
  21. data/vendor/v8/include/v8-testing.h +4 -3
  22. data/vendor/v8/include/v8.h +994 -540
  23. data/vendor/v8/preparser/preparser-process.cc +3 -3
  24. data/vendor/v8/samples/lineprocessor.cc +20 -27
  25. data/vendor/v8/samples/process.cc +18 -14
  26. data/vendor/v8/samples/shell.cc +16 -15
  27. data/vendor/v8/src/SConscript +15 -14
  28. data/vendor/v8/src/accessors.cc +169 -77
  29. data/vendor/v8/src/accessors.h +4 -0
  30. data/vendor/v8/src/allocation-inl.h +2 -2
  31. data/vendor/v8/src/allocation.h +7 -7
  32. data/vendor/v8/src/api.cc +810 -497
  33. data/vendor/v8/src/api.h +85 -60
  34. data/vendor/v8/src/arm/assembler-arm-inl.h +179 -22
  35. data/vendor/v8/src/arm/assembler-arm.cc +633 -264
  36. data/vendor/v8/src/arm/assembler-arm.h +264 -197
  37. data/vendor/v8/src/arm/builtins-arm.cc +117 -27
  38. data/vendor/v8/src/arm/code-stubs-arm.cc +1241 -700
  39. data/vendor/v8/src/arm/code-stubs-arm.h +35 -138
  40. data/vendor/v8/src/arm/codegen-arm.cc +285 -16
  41. data/vendor/v8/src/arm/codegen-arm.h +22 -0
  42. data/vendor/v8/src/arm/constants-arm.cc +5 -3
  43. data/vendor/v8/src/arm/constants-arm.h +24 -11
  44. data/vendor/v8/src/arm/debug-arm.cc +3 -3
  45. data/vendor/v8/src/arm/deoptimizer-arm.cc +382 -92
  46. data/vendor/v8/src/arm/disasm-arm.cc +61 -12
  47. data/vendor/v8/src/arm/frames-arm.h +0 -14
  48. data/vendor/v8/src/arm/full-codegen-arm.cc +332 -304
  49. data/vendor/v8/src/arm/ic-arm.cc +180 -259
  50. data/vendor/v8/src/arm/lithium-arm.cc +364 -316
  51. data/vendor/v8/src/arm/lithium-arm.h +512 -275
  52. data/vendor/v8/src/arm/lithium-codegen-arm.cc +1768 -809
  53. data/vendor/v8/src/arm/lithium-codegen-arm.h +97 -35
  54. data/vendor/v8/src/arm/lithium-gap-resolver-arm.cc +12 -5
  55. data/vendor/v8/src/arm/macro-assembler-arm.cc +439 -228
  56. data/vendor/v8/src/arm/macro-assembler-arm.h +116 -70
  57. data/vendor/v8/src/arm/regexp-macro-assembler-arm.cc +54 -44
  58. data/vendor/v8/src/arm/regexp-macro-assembler-arm.h +3 -10
  59. data/vendor/v8/src/arm/simulator-arm.cc +272 -238
  60. data/vendor/v8/src/arm/simulator-arm.h +38 -8
  61. data/vendor/v8/src/arm/stub-cache-arm.cc +522 -895
  62. data/vendor/v8/src/array.js +101 -70
  63. data/vendor/v8/src/assembler.cc +270 -19
  64. data/vendor/v8/src/assembler.h +110 -15
  65. data/vendor/v8/src/ast.cc +79 -69
  66. data/vendor/v8/src/ast.h +255 -301
  67. data/vendor/v8/src/atomicops.h +7 -1
  68. data/vendor/v8/src/atomicops_internals_tsan.h +335 -0
  69. data/vendor/v8/src/bootstrapper.cc +481 -418
  70. data/vendor/v8/src/bootstrapper.h +4 -4
  71. data/vendor/v8/src/builtins.cc +498 -311
  72. data/vendor/v8/src/builtins.h +75 -47
  73. data/vendor/v8/src/checks.cc +2 -1
  74. data/vendor/v8/src/checks.h +8 -0
  75. data/vendor/v8/src/code-stubs-hydrogen.cc +253 -0
  76. data/vendor/v8/src/code-stubs.cc +249 -84
  77. data/vendor/v8/src/code-stubs.h +501 -169
  78. data/vendor/v8/src/codegen.cc +36 -18
  79. data/vendor/v8/src/codegen.h +25 -3
  80. data/vendor/v8/src/collection.js +54 -17
  81. data/vendor/v8/src/compilation-cache.cc +24 -16
  82. data/vendor/v8/src/compilation-cache.h +15 -6
  83. data/vendor/v8/src/compiler.cc +497 -195
  84. data/vendor/v8/src/compiler.h +246 -38
  85. data/vendor/v8/src/contexts.cc +64 -24
  86. data/vendor/v8/src/contexts.h +60 -29
  87. data/vendor/v8/src/conversions-inl.h +24 -14
  88. data/vendor/v8/src/conversions.h +7 -4
  89. data/vendor/v8/src/counters.cc +21 -12
  90. data/vendor/v8/src/counters.h +44 -16
  91. data/vendor/v8/src/cpu-profiler.h +1 -1
  92. data/vendor/v8/src/d8-debug.cc +2 -2
  93. data/vendor/v8/src/d8-readline.cc +13 -2
  94. data/vendor/v8/src/d8.cc +681 -273
  95. data/vendor/v8/src/d8.gyp +4 -4
  96. data/vendor/v8/src/d8.h +38 -18
  97. data/vendor/v8/src/d8.js +0 -617
  98. data/vendor/v8/src/data-flow.h +55 -0
  99. data/vendor/v8/src/date.js +1 -42
  100. data/vendor/v8/src/dateparser-inl.h +5 -1
  101. data/vendor/v8/src/debug-agent.cc +10 -15
  102. data/vendor/v8/src/debug-debugger.js +147 -149
  103. data/vendor/v8/src/debug.cc +323 -164
  104. data/vendor/v8/src/debug.h +26 -14
  105. data/vendor/v8/src/deoptimizer.cc +765 -290
  106. data/vendor/v8/src/deoptimizer.h +130 -28
  107. data/vendor/v8/src/disassembler.cc +10 -4
  108. data/vendor/v8/src/elements-kind.cc +7 -2
  109. data/vendor/v8/src/elements-kind.h +19 -0
  110. data/vendor/v8/src/elements.cc +607 -285
  111. data/vendor/v8/src/elements.h +36 -13
  112. data/vendor/v8/src/execution.cc +52 -31
  113. data/vendor/v8/src/execution.h +4 -4
  114. data/vendor/v8/src/extensions/externalize-string-extension.cc +5 -4
  115. data/vendor/v8/src/extensions/gc-extension.cc +5 -1
  116. data/vendor/v8/src/extensions/statistics-extension.cc +153 -0
  117. data/vendor/v8/src/{inspector.h → extensions/statistics-extension.h} +12 -23
  118. data/vendor/v8/src/factory.cc +101 -134
  119. data/vendor/v8/src/factory.h +36 -31
  120. data/vendor/v8/src/flag-definitions.h +102 -25
  121. data/vendor/v8/src/flags.cc +9 -5
  122. data/vendor/v8/src/frames-inl.h +10 -0
  123. data/vendor/v8/src/frames.cc +116 -26
  124. data/vendor/v8/src/frames.h +96 -12
  125. data/vendor/v8/src/full-codegen.cc +219 -74
  126. data/vendor/v8/src/full-codegen.h +63 -21
  127. data/vendor/v8/src/func-name-inferrer.cc +8 -7
  128. data/vendor/v8/src/func-name-inferrer.h +5 -3
  129. data/vendor/v8/src/gdb-jit.cc +71 -57
  130. data/vendor/v8/src/global-handles.cc +230 -101
  131. data/vendor/v8/src/global-handles.h +26 -27
  132. data/vendor/v8/src/globals.h +17 -19
  133. data/vendor/v8/src/handles-inl.h +59 -12
  134. data/vendor/v8/src/handles.cc +180 -200
  135. data/vendor/v8/src/handles.h +80 -11
  136. data/vendor/v8/src/hashmap.h +60 -40
  137. data/vendor/v8/src/heap-inl.h +107 -45
  138. data/vendor/v8/src/heap-profiler.cc +38 -19
  139. data/vendor/v8/src/heap-profiler.h +24 -14
  140. data/vendor/v8/src/heap.cc +1123 -738
  141. data/vendor/v8/src/heap.h +385 -146
  142. data/vendor/v8/src/hydrogen-instructions.cc +700 -217
  143. data/vendor/v8/src/hydrogen-instructions.h +1158 -472
  144. data/vendor/v8/src/hydrogen.cc +3319 -1662
  145. data/vendor/v8/src/hydrogen.h +411 -170
  146. data/vendor/v8/src/ia32/assembler-ia32-inl.h +46 -16
  147. data/vendor/v8/src/ia32/assembler-ia32.cc +131 -61
  148. data/vendor/v8/src/ia32/assembler-ia32.h +115 -57
  149. data/vendor/v8/src/ia32/builtins-ia32.cc +99 -5
  150. data/vendor/v8/src/ia32/code-stubs-ia32.cc +787 -495
  151. data/vendor/v8/src/ia32/code-stubs-ia32.h +10 -100
  152. data/vendor/v8/src/ia32/codegen-ia32.cc +227 -23
  153. data/vendor/v8/src/ia32/codegen-ia32.h +14 -0
  154. data/vendor/v8/src/ia32/deoptimizer-ia32.cc +428 -87
  155. data/vendor/v8/src/ia32/disasm-ia32.cc +28 -1
  156. data/vendor/v8/src/ia32/frames-ia32.h +6 -16
  157. data/vendor/v8/src/ia32/full-codegen-ia32.cc +280 -272
  158. data/vendor/v8/src/ia32/ic-ia32.cc +150 -250
  159. data/vendor/v8/src/ia32/lithium-codegen-ia32.cc +1600 -517
  160. data/vendor/v8/src/ia32/lithium-codegen-ia32.h +90 -24
  161. data/vendor/v8/src/ia32/lithium-gap-resolver-ia32.cc +10 -6
  162. data/vendor/v8/src/ia32/lithium-gap-resolver-ia32.h +2 -2
  163. data/vendor/v8/src/ia32/lithium-ia32.cc +405 -302
  164. data/vendor/v8/src/ia32/lithium-ia32.h +526 -271
  165. data/vendor/v8/src/ia32/macro-assembler-ia32.cc +378 -119
  166. data/vendor/v8/src/ia32/macro-assembler-ia32.h +62 -28
  167. data/vendor/v8/src/ia32/regexp-macro-assembler-ia32.cc +43 -30
  168. data/vendor/v8/src/ia32/regexp-macro-assembler-ia32.h +2 -10
  169. data/vendor/v8/src/ia32/stub-cache-ia32.cc +492 -678
  170. data/vendor/v8/src/ic-inl.h +9 -4
  171. data/vendor/v8/src/ic.cc +836 -923
  172. data/vendor/v8/src/ic.h +228 -247
  173. data/vendor/v8/src/incremental-marking-inl.h +26 -30
  174. data/vendor/v8/src/incremental-marking.cc +276 -248
  175. data/vendor/v8/src/incremental-marking.h +29 -37
  176. data/vendor/v8/src/interface.cc +34 -25
  177. data/vendor/v8/src/interface.h +69 -25
  178. data/vendor/v8/src/interpreter-irregexp.cc +2 -2
  179. data/vendor/v8/src/isolate.cc +382 -76
  180. data/vendor/v8/src/isolate.h +109 -56
  181. data/vendor/v8/src/json-parser.h +217 -104
  182. data/vendor/v8/src/json-stringifier.h +745 -0
  183. data/vendor/v8/src/json.js +10 -132
  184. data/vendor/v8/src/jsregexp-inl.h +106 -0
  185. data/vendor/v8/src/jsregexp.cc +517 -285
  186. data/vendor/v8/src/jsregexp.h +145 -117
  187. data/vendor/v8/src/list-inl.h +35 -22
  188. data/vendor/v8/src/list.h +46 -19
  189. data/vendor/v8/src/lithium-allocator-inl.h +22 -2
  190. data/vendor/v8/src/lithium-allocator.cc +85 -70
  191. data/vendor/v8/src/lithium-allocator.h +21 -39
  192. data/vendor/v8/src/lithium.cc +259 -5
  193. data/vendor/v8/src/lithium.h +131 -32
  194. data/vendor/v8/src/liveedit-debugger.js +52 -3
  195. data/vendor/v8/src/liveedit.cc +393 -113
  196. data/vendor/v8/src/liveedit.h +7 -3
  197. data/vendor/v8/src/log-utils.cc +4 -2
  198. data/vendor/v8/src/log.cc +170 -140
  199. data/vendor/v8/src/log.h +62 -11
  200. data/vendor/v8/src/macro-assembler.h +17 -0
  201. data/vendor/v8/src/macros.py +2 -0
  202. data/vendor/v8/src/mark-compact-inl.h +3 -23
  203. data/vendor/v8/src/mark-compact.cc +801 -830
  204. data/vendor/v8/src/mark-compact.h +154 -47
  205. data/vendor/v8/src/marking-thread.cc +85 -0
  206. data/vendor/v8/src/{inspector.cc → marking-thread.h} +32 -24
  207. data/vendor/v8/src/math.js +12 -18
  208. data/vendor/v8/src/messages.cc +18 -8
  209. data/vendor/v8/src/messages.js +314 -261
  210. data/vendor/v8/src/mips/assembler-mips-inl.h +58 -6
  211. data/vendor/v8/src/mips/assembler-mips.cc +92 -75
  212. data/vendor/v8/src/mips/assembler-mips.h +54 -60
  213. data/vendor/v8/src/mips/builtins-mips.cc +116 -17
  214. data/vendor/v8/src/mips/code-stubs-mips.cc +919 -556
  215. data/vendor/v8/src/mips/code-stubs-mips.h +22 -131
  216. data/vendor/v8/src/mips/codegen-mips.cc +281 -6
  217. data/vendor/v8/src/mips/codegen-mips.h +22 -0
  218. data/vendor/v8/src/mips/constants-mips.cc +2 -0
  219. data/vendor/v8/src/mips/constants-mips.h +12 -2
  220. data/vendor/v8/src/mips/deoptimizer-mips.cc +286 -50
  221. data/vendor/v8/src/mips/disasm-mips.cc +13 -0
  222. data/vendor/v8/src/mips/full-codegen-mips.cc +297 -284
  223. data/vendor/v8/src/mips/ic-mips.cc +182 -263
  224. data/vendor/v8/src/mips/lithium-codegen-mips.cc +1208 -556
  225. data/vendor/v8/src/mips/lithium-codegen-mips.h +72 -19
  226. data/vendor/v8/src/mips/lithium-gap-resolver-mips.cc +9 -2
  227. data/vendor/v8/src/mips/lithium-mips.cc +290 -302
  228. data/vendor/v8/src/mips/lithium-mips.h +463 -266
  229. data/vendor/v8/src/mips/macro-assembler-mips.cc +208 -115
  230. data/vendor/v8/src/mips/macro-assembler-mips.h +67 -24
  231. data/vendor/v8/src/mips/regexp-macro-assembler-mips.cc +40 -25
  232. data/vendor/v8/src/mips/regexp-macro-assembler-mips.h +3 -9
  233. data/vendor/v8/src/mips/simulator-mips.cc +112 -40
  234. data/vendor/v8/src/mips/simulator-mips.h +5 -0
  235. data/vendor/v8/src/mips/stub-cache-mips.cc +502 -884
  236. data/vendor/v8/src/mirror-debugger.js +157 -30
  237. data/vendor/v8/src/mksnapshot.cc +88 -14
  238. data/vendor/v8/src/object-observe.js +235 -0
  239. data/vendor/v8/src/objects-debug.cc +178 -176
  240. data/vendor/v8/src/objects-inl.h +1333 -486
  241. data/vendor/v8/src/objects-printer.cc +125 -43
  242. data/vendor/v8/src/objects-visiting-inl.h +578 -6
  243. data/vendor/v8/src/objects-visiting.cc +2 -2
  244. data/vendor/v8/src/objects-visiting.h +172 -79
  245. data/vendor/v8/src/objects.cc +3533 -2885
  246. data/vendor/v8/src/objects.h +1352 -1131
  247. data/vendor/v8/src/optimizing-compiler-thread.cc +152 -0
  248. data/vendor/v8/src/optimizing-compiler-thread.h +111 -0
  249. data/vendor/v8/src/parser.cc +390 -500
  250. data/vendor/v8/src/parser.h +45 -33
  251. data/vendor/v8/src/platform-cygwin.cc +10 -21
  252. data/vendor/v8/src/platform-freebsd.cc +36 -41
  253. data/vendor/v8/src/platform-linux.cc +160 -124
  254. data/vendor/v8/src/platform-macos.cc +30 -27
  255. data/vendor/v8/src/platform-nullos.cc +17 -1
  256. data/vendor/v8/src/platform-openbsd.cc +19 -50
  257. data/vendor/v8/src/platform-posix.cc +14 -0
  258. data/vendor/v8/src/platform-solaris.cc +20 -53
  259. data/vendor/v8/src/platform-win32.cc +49 -26
  260. data/vendor/v8/src/platform.h +40 -1
  261. data/vendor/v8/src/preparser.cc +8 -5
  262. data/vendor/v8/src/preparser.h +2 -2
  263. data/vendor/v8/src/prettyprinter.cc +16 -0
  264. data/vendor/v8/src/prettyprinter.h +2 -0
  265. data/vendor/v8/src/profile-generator-inl.h +1 -0
  266. data/vendor/v8/src/profile-generator.cc +209 -147
  267. data/vendor/v8/src/profile-generator.h +15 -12
  268. data/vendor/v8/src/property-details.h +46 -31
  269. data/vendor/v8/src/property.cc +27 -46
  270. data/vendor/v8/src/property.h +163 -83
  271. data/vendor/v8/src/proxy.js +7 -2
  272. data/vendor/v8/src/regexp-macro-assembler-irregexp.cc +4 -13
  273. data/vendor/v8/src/regexp-macro-assembler-irregexp.h +1 -2
  274. data/vendor/v8/src/regexp-macro-assembler-tracer.cc +1 -11
  275. data/vendor/v8/src/regexp-macro-assembler-tracer.h +0 -1
  276. data/vendor/v8/src/regexp-macro-assembler.cc +31 -14
  277. data/vendor/v8/src/regexp-macro-assembler.h +14 -11
  278. data/vendor/v8/src/regexp-stack.cc +1 -0
  279. data/vendor/v8/src/regexp.js +9 -8
  280. data/vendor/v8/src/rewriter.cc +18 -7
  281. data/vendor/v8/src/runtime-profiler.cc +52 -43
  282. data/vendor/v8/src/runtime-profiler.h +0 -25
  283. data/vendor/v8/src/runtime.cc +2006 -2023
  284. data/vendor/v8/src/runtime.h +56 -49
  285. data/vendor/v8/src/safepoint-table.cc +12 -18
  286. data/vendor/v8/src/safepoint-table.h +11 -8
  287. data/vendor/v8/src/scanner.cc +1 -0
  288. data/vendor/v8/src/scanner.h +4 -10
  289. data/vendor/v8/src/scopeinfo.cc +35 -9
  290. data/vendor/v8/src/scopeinfo.h +64 -3
  291. data/vendor/v8/src/scopes.cc +251 -156
  292. data/vendor/v8/src/scopes.h +61 -27
  293. data/vendor/v8/src/serialize.cc +348 -396
  294. data/vendor/v8/src/serialize.h +125 -114
  295. data/vendor/v8/src/small-pointer-list.h +11 -11
  296. data/vendor/v8/src/{smart-array-pointer.h → smart-pointers.h} +64 -15
  297. data/vendor/v8/src/snapshot-common.cc +64 -15
  298. data/vendor/v8/src/snapshot-empty.cc +7 -1
  299. data/vendor/v8/src/snapshot.h +9 -2
  300. data/vendor/v8/src/spaces-inl.h +17 -0
  301. data/vendor/v8/src/spaces.cc +477 -183
  302. data/vendor/v8/src/spaces.h +238 -58
  303. data/vendor/v8/src/splay-tree-inl.h +8 -7
  304. data/vendor/v8/src/splay-tree.h +24 -10
  305. data/vendor/v8/src/store-buffer.cc +12 -5
  306. data/vendor/v8/src/store-buffer.h +2 -4
  307. data/vendor/v8/src/string-search.h +22 -6
  308. data/vendor/v8/src/string-stream.cc +11 -8
  309. data/vendor/v8/src/string.js +47 -15
  310. data/vendor/v8/src/stub-cache.cc +461 -224
  311. data/vendor/v8/src/stub-cache.h +164 -102
  312. data/vendor/v8/src/sweeper-thread.cc +105 -0
  313. data/vendor/v8/src/sweeper-thread.h +81 -0
  314. data/vendor/v8/src/token.h +1 -0
  315. data/vendor/v8/src/transitions-inl.h +220 -0
  316. data/vendor/v8/src/transitions.cc +160 -0
  317. data/vendor/v8/src/transitions.h +207 -0
  318. data/vendor/v8/src/type-info.cc +182 -181
  319. data/vendor/v8/src/type-info.h +31 -19
  320. data/vendor/v8/src/unicode-inl.h +62 -106
  321. data/vendor/v8/src/unicode.cc +57 -67
  322. data/vendor/v8/src/unicode.h +45 -91
  323. data/vendor/v8/src/uri.js +57 -29
  324. data/vendor/v8/src/utils.h +105 -5
  325. data/vendor/v8/src/v8-counters.cc +54 -11
  326. data/vendor/v8/src/v8-counters.h +134 -19
  327. data/vendor/v8/src/v8.cc +29 -29
  328. data/vendor/v8/src/v8.h +1 -0
  329. data/vendor/v8/src/v8conversions.cc +26 -22
  330. data/vendor/v8/src/v8globals.h +56 -43
  331. data/vendor/v8/src/v8natives.js +83 -30
  332. data/vendor/v8/src/v8threads.cc +42 -21
  333. data/vendor/v8/src/v8threads.h +4 -1
  334. data/vendor/v8/src/v8utils.cc +9 -93
  335. data/vendor/v8/src/v8utils.h +37 -33
  336. data/vendor/v8/src/variables.cc +6 -3
  337. data/vendor/v8/src/variables.h +6 -13
  338. data/vendor/v8/src/version.cc +2 -2
  339. data/vendor/v8/src/vm-state-inl.h +11 -0
  340. data/vendor/v8/src/x64/assembler-x64-inl.h +39 -8
  341. data/vendor/v8/src/x64/assembler-x64.cc +78 -64
  342. data/vendor/v8/src/x64/assembler-x64.h +38 -33
  343. data/vendor/v8/src/x64/builtins-x64.cc +105 -7
  344. data/vendor/v8/src/x64/code-stubs-x64.cc +790 -413
  345. data/vendor/v8/src/x64/code-stubs-x64.h +10 -106
  346. data/vendor/v8/src/x64/codegen-x64.cc +210 -8
  347. data/vendor/v8/src/x64/codegen-x64.h +20 -1
  348. data/vendor/v8/src/x64/deoptimizer-x64.cc +336 -75
  349. data/vendor/v8/src/x64/disasm-x64.cc +15 -0
  350. data/vendor/v8/src/x64/frames-x64.h +0 -14
  351. data/vendor/v8/src/x64/full-codegen-x64.cc +293 -270
  352. data/vendor/v8/src/x64/ic-x64.cc +153 -251
  353. data/vendor/v8/src/x64/lithium-codegen-x64.cc +1379 -531
  354. data/vendor/v8/src/x64/lithium-codegen-x64.h +67 -23
  355. data/vendor/v8/src/x64/lithium-gap-resolver-x64.cc +2 -2
  356. data/vendor/v8/src/x64/lithium-x64.cc +349 -289
  357. data/vendor/v8/src/x64/lithium-x64.h +460 -250
  358. data/vendor/v8/src/x64/macro-assembler-x64.cc +350 -177
  359. data/vendor/v8/src/x64/macro-assembler-x64.h +67 -49
  360. data/vendor/v8/src/x64/regexp-macro-assembler-x64.cc +46 -33
  361. data/vendor/v8/src/x64/regexp-macro-assembler-x64.h +2 -3
  362. data/vendor/v8/src/x64/stub-cache-x64.cc +484 -653
  363. data/vendor/v8/src/zone-inl.h +9 -27
  364. data/vendor/v8/src/zone.cc +5 -5
  365. data/vendor/v8/src/zone.h +53 -27
  366. data/vendor/v8/test/benchmarks/testcfg.py +5 -0
  367. data/vendor/v8/test/cctest/cctest.cc +4 -0
  368. data/vendor/v8/test/cctest/cctest.gyp +3 -1
  369. data/vendor/v8/test/cctest/cctest.h +57 -9
  370. data/vendor/v8/test/cctest/cctest.status +15 -15
  371. data/vendor/v8/test/cctest/test-accessors.cc +26 -0
  372. data/vendor/v8/test/cctest/test-alloc.cc +22 -30
  373. data/vendor/v8/test/cctest/test-api.cc +1943 -314
  374. data/vendor/v8/test/cctest/test-assembler-arm.cc +133 -13
  375. data/vendor/v8/test/cctest/test-assembler-ia32.cc +1 -1
  376. data/vendor/v8/test/cctest/test-assembler-mips.cc +12 -0
  377. data/vendor/v8/test/cctest/test-ast.cc +4 -2
  378. data/vendor/v8/test/cctest/test-compiler.cc +61 -29
  379. data/vendor/v8/test/cctest/test-dataflow.cc +2 -2
  380. data/vendor/v8/test/cctest/test-debug.cc +212 -33
  381. data/vendor/v8/test/cctest/test-decls.cc +257 -11
  382. data/vendor/v8/test/cctest/test-dictionary.cc +24 -10
  383. data/vendor/v8/test/cctest/test-disasm-arm.cc +118 -1
  384. data/vendor/v8/test/cctest/test-disasm-ia32.cc +3 -2
  385. data/vendor/v8/test/cctest/test-flags.cc +14 -1
  386. data/vendor/v8/test/cctest/test-func-name-inference.cc +7 -4
  387. data/vendor/v8/test/cctest/test-global-object.cc +51 -0
  388. data/vendor/v8/test/cctest/test-hashing.cc +32 -23
  389. data/vendor/v8/test/cctest/test-heap-profiler.cc +131 -77
  390. data/vendor/v8/test/cctest/test-heap.cc +1084 -143
  391. data/vendor/v8/test/cctest/test-list.cc +1 -1
  392. data/vendor/v8/test/cctest/test-liveedit.cc +3 -2
  393. data/vendor/v8/test/cctest/test-lockers.cc +12 -13
  394. data/vendor/v8/test/cctest/test-log.cc +10 -8
  395. data/vendor/v8/test/cctest/test-macro-assembler-x64.cc +2 -2
  396. data/vendor/v8/test/cctest/test-mark-compact.cc +44 -22
  397. data/vendor/v8/test/cctest/test-object-observe.cc +434 -0
  398. data/vendor/v8/test/cctest/test-parsing.cc +86 -39
  399. data/vendor/v8/test/cctest/test-platform-linux.cc +6 -0
  400. data/vendor/v8/test/cctest/test-platform-win32.cc +7 -0
  401. data/vendor/v8/test/cctest/test-random.cc +5 -4
  402. data/vendor/v8/test/cctest/test-regexp.cc +137 -101
  403. data/vendor/v8/test/cctest/test-serialize.cc +150 -230
  404. data/vendor/v8/test/cctest/test-sockets.cc +1 -1
  405. data/vendor/v8/test/cctest/test-spaces.cc +139 -0
  406. data/vendor/v8/test/cctest/test-strings.cc +736 -74
  407. data/vendor/v8/test/cctest/test-thread-termination.cc +10 -11
  408. data/vendor/v8/test/cctest/test-threads.cc +4 -4
  409. data/vendor/v8/test/cctest/test-utils.cc +16 -0
  410. data/vendor/v8/test/cctest/test-weakmaps.cc +7 -3
  411. data/vendor/v8/test/cctest/testcfg.py +64 -5
  412. data/vendor/v8/test/es5conform/testcfg.py +5 -0
  413. data/vendor/v8/test/message/message.status +1 -1
  414. data/vendor/v8/test/message/overwritten-builtins.out +3 -0
  415. data/vendor/v8/test/message/testcfg.py +89 -8
  416. data/vendor/v8/test/message/try-catch-finally-no-message.out +26 -26
  417. data/vendor/v8/test/mjsunit/accessor-map-sharing.js +18 -2
  418. data/vendor/v8/test/mjsunit/allocation-site-info.js +126 -0
  419. data/vendor/v8/test/mjsunit/array-bounds-check-removal.js +62 -1
  420. data/vendor/v8/test/mjsunit/array-iteration.js +1 -1
  421. data/vendor/v8/test/mjsunit/array-literal-transitions.js +2 -0
  422. data/vendor/v8/test/mjsunit/array-natives-elements.js +317 -0
  423. data/vendor/v8/test/mjsunit/array-reduce.js +8 -8
  424. data/vendor/v8/test/mjsunit/array-slice.js +12 -0
  425. data/vendor/v8/test/mjsunit/array-store-and-grow.js +4 -1
  426. data/vendor/v8/test/mjsunit/assert-opt-and-deopt.js +1 -1
  427. data/vendor/v8/test/mjsunit/bugs/bug-2337.js +53 -0
  428. data/vendor/v8/test/mjsunit/compare-known-objects-slow.js +69 -0
  429. data/vendor/v8/test/mjsunit/compiler/alloc-object-huge.js +3 -1
  430. data/vendor/v8/test/mjsunit/compiler/inline-accessors.js +368 -0
  431. data/vendor/v8/test/mjsunit/compiler/inline-arguments.js +87 -1
  432. data/vendor/v8/test/mjsunit/compiler/inline-closures.js +49 -0
  433. data/vendor/v8/test/mjsunit/compiler/inline-construct.js +55 -43
  434. data/vendor/v8/test/mjsunit/compiler/inline-literals.js +39 -0
  435. data/vendor/v8/test/mjsunit/compiler/multiply-add.js +69 -0
  436. data/vendor/v8/test/mjsunit/compiler/optimized-closures.js +57 -0
  437. data/vendor/v8/test/mjsunit/compiler/parallel-proto-change.js +44 -0
  438. data/vendor/v8/test/mjsunit/compiler/property-static.js +69 -0
  439. data/vendor/v8/test/mjsunit/compiler/proto-chain-constant.js +55 -0
  440. data/vendor/v8/test/mjsunit/compiler/proto-chain-load.js +44 -0
  441. data/vendor/v8/test/mjsunit/compiler/regress-gvn.js +3 -2
  442. data/vendor/v8/test/mjsunit/compiler/regress-or.js +6 -2
  443. data/vendor/v8/test/mjsunit/compiler/rotate.js +224 -0
  444. data/vendor/v8/test/mjsunit/compiler/uint32.js +173 -0
  445. data/vendor/v8/test/mjsunit/count-based-osr.js +2 -1
  446. data/vendor/v8/test/mjsunit/d8-os.js +3 -3
  447. data/vendor/v8/test/mjsunit/date-parse.js +3 -0
  448. data/vendor/v8/test/mjsunit/date.js +22 -0
  449. data/vendor/v8/test/mjsunit/debug-break-inline.js +1 -0
  450. data/vendor/v8/test/mjsunit/debug-evaluate-locals-optimized-double.js +22 -12
  451. data/vendor/v8/test/mjsunit/debug-evaluate-locals-optimized.js +21 -10
  452. data/vendor/v8/test/mjsunit/debug-liveedit-compile-error.js +60 -0
  453. data/vendor/v8/test/mjsunit/debug-liveedit-double-call.js +142 -0
  454. data/vendor/v8/test/mjsunit/debug-liveedit-literals.js +94 -0
  455. data/vendor/v8/test/mjsunit/debug-liveedit-restart-frame.js +153 -0
  456. data/vendor/v8/test/mjsunit/debug-multiple-breakpoints.js +1 -1
  457. data/vendor/v8/test/mjsunit/debug-script-breakpoints-closure.js +67 -0
  458. data/vendor/v8/test/mjsunit/debug-script-breakpoints-nested.js +82 -0
  459. data/vendor/v8/test/mjsunit/debug-script.js +4 -2
  460. data/vendor/v8/test/mjsunit/debug-set-variable-value.js +308 -0
  461. data/vendor/v8/test/mjsunit/debug-stepout-scope-part1.js +190 -0
  462. data/vendor/v8/test/mjsunit/debug-stepout-scope-part2.js +83 -0
  463. data/vendor/v8/test/mjsunit/debug-stepout-scope-part3.js +80 -0
  464. data/vendor/v8/test/mjsunit/debug-stepout-scope-part4.js +80 -0
  465. data/vendor/v8/test/mjsunit/debug-stepout-scope-part5.js +77 -0
  466. data/vendor/v8/test/mjsunit/debug-stepout-scope-part6.js +79 -0
  467. data/vendor/v8/test/mjsunit/debug-stepout-scope-part7.js +79 -0
  468. data/vendor/v8/test/mjsunit/{debug-stepout-scope.js → debug-stepout-scope-part8.js} +0 -189
  469. data/vendor/v8/test/mjsunit/delete-non-configurable.js +74 -0
  470. data/vendor/v8/test/mjsunit/deopt-minus-zero.js +56 -0
  471. data/vendor/v8/test/mjsunit/elements-kind.js +6 -4
  472. data/vendor/v8/test/mjsunit/elements-length-no-holey.js +33 -0
  473. data/vendor/v8/test/mjsunit/elements-transition-hoisting.js +46 -19
  474. data/vendor/v8/test/mjsunit/error-accessors.js +54 -0
  475. data/vendor/v8/test/mjsunit/error-constructors.js +1 -14
  476. data/vendor/v8/test/mjsunit/error-tostring.js +8 -0
  477. data/vendor/v8/test/mjsunit/eval-stack-trace.js +204 -0
  478. data/vendor/v8/test/mjsunit/external-array.js +364 -1
  479. data/vendor/v8/test/mjsunit/fast-array-length.js +37 -0
  480. data/vendor/v8/test/mjsunit/fast-non-keyed.js +113 -0
  481. data/vendor/v8/test/mjsunit/fast-prototype.js +117 -0
  482. data/vendor/v8/test/mjsunit/function-call.js +14 -18
  483. data/vendor/v8/test/mjsunit/fuzz-natives-part1.js +230 -0
  484. data/vendor/v8/test/mjsunit/fuzz-natives-part2.js +229 -0
  485. data/vendor/v8/test/mjsunit/fuzz-natives-part3.js +229 -0
  486. data/vendor/v8/test/mjsunit/{fuzz-natives.js → fuzz-natives-part4.js} +12 -2
  487. data/vendor/v8/test/mjsunit/generated-transition-stub.js +218 -0
  488. data/vendor/v8/test/mjsunit/greedy.js +1 -1
  489. data/vendor/v8/test/mjsunit/harmony/block-conflicts.js +2 -1
  490. data/vendor/v8/test/mjsunit/harmony/block-let-crankshaft.js +1 -1
  491. data/vendor/v8/test/mjsunit/harmony/collections.js +69 -11
  492. data/vendor/v8/test/mjsunit/harmony/debug-blockscopes.js +2 -2
  493. data/vendor/v8/test/mjsunit/harmony/module-linking.js +180 -3
  494. data/vendor/v8/test/mjsunit/harmony/module-parsing.js +31 -0
  495. data/vendor/v8/test/mjsunit/harmony/module-recompile.js +87 -0
  496. data/vendor/v8/test/mjsunit/harmony/module-resolution.js +15 -2
  497. data/vendor/v8/test/mjsunit/harmony/object-observe.js +1056 -0
  498. data/vendor/v8/test/mjsunit/harmony/proxies-json.js +178 -0
  499. data/vendor/v8/test/mjsunit/harmony/proxies.js +25 -10
  500. data/vendor/v8/test/mjsunit/json-parser-recursive.js +33 -0
  501. data/vendor/v8/test/mjsunit/json-stringify-recursive.js +52 -0
  502. data/vendor/v8/test/mjsunit/json.js +38 -2
  503. data/vendor/v8/test/mjsunit/json2.js +153 -0
  504. data/vendor/v8/test/mjsunit/limit-locals.js +5 -4
  505. data/vendor/v8/test/mjsunit/manual-parallel-recompile.js +79 -0
  506. data/vendor/v8/test/mjsunit/math-exp-precision.js +64 -0
  507. data/vendor/v8/test/mjsunit/math-floor-negative.js +59 -0
  508. data/vendor/v8/test/mjsunit/math-floor-of-div-minus-zero.js +41 -0
  509. data/vendor/v8/test/mjsunit/math-floor-of-div-nosudiv.js +288 -0
  510. data/vendor/v8/test/mjsunit/math-floor-of-div.js +81 -9
  511. data/vendor/v8/test/mjsunit/{math-floor.js → math-floor-part1.js} +1 -72
  512. data/vendor/v8/test/mjsunit/math-floor-part2.js +76 -0
  513. data/vendor/v8/test/mjsunit/math-floor-part3.js +78 -0
  514. data/vendor/v8/test/mjsunit/math-floor-part4.js +76 -0
  515. data/vendor/v8/test/mjsunit/mirror-object.js +43 -9
  516. data/vendor/v8/test/mjsunit/mjsunit.js +1 -1
  517. data/vendor/v8/test/mjsunit/mjsunit.status +52 -27
  518. data/vendor/v8/test/mjsunit/mul-exhaustive-part1.js +491 -0
  519. data/vendor/v8/test/mjsunit/mul-exhaustive-part10.js +470 -0
  520. data/vendor/v8/test/mjsunit/mul-exhaustive-part2.js +525 -0
  521. data/vendor/v8/test/mjsunit/mul-exhaustive-part3.js +532 -0
  522. data/vendor/v8/test/mjsunit/mul-exhaustive-part4.js +509 -0
  523. data/vendor/v8/test/mjsunit/mul-exhaustive-part5.js +505 -0
  524. data/vendor/v8/test/mjsunit/mul-exhaustive-part6.js +554 -0
  525. data/vendor/v8/test/mjsunit/mul-exhaustive-part7.js +497 -0
  526. data/vendor/v8/test/mjsunit/mul-exhaustive-part8.js +526 -0
  527. data/vendor/v8/test/mjsunit/mul-exhaustive-part9.js +533 -0
  528. data/vendor/v8/test/mjsunit/new-function.js +34 -0
  529. data/vendor/v8/test/mjsunit/numops-fuzz-part1.js +1172 -0
  530. data/vendor/v8/test/mjsunit/numops-fuzz-part2.js +1178 -0
  531. data/vendor/v8/test/mjsunit/numops-fuzz-part3.js +1178 -0
  532. data/vendor/v8/test/mjsunit/numops-fuzz-part4.js +1177 -0
  533. data/vendor/v8/test/mjsunit/object-define-property.js +107 -2
  534. data/vendor/v8/test/mjsunit/override-read-only-property.js +6 -4
  535. data/vendor/v8/test/mjsunit/packed-elements.js +2 -2
  536. data/vendor/v8/test/mjsunit/parse-int-float.js +4 -4
  537. data/vendor/v8/test/mjsunit/pixel-array-rounding.js +1 -1
  538. data/vendor/v8/test/mjsunit/readonly.js +228 -0
  539. data/vendor/v8/test/mjsunit/regexp-capture-3.js +16 -18
  540. data/vendor/v8/test/mjsunit/regexp-capture.js +2 -0
  541. data/vendor/v8/test/mjsunit/regexp-global.js +122 -0
  542. data/vendor/v8/test/mjsunit/regexp-results-cache.js +78 -0
  543. data/vendor/v8/test/mjsunit/regress/regress-1117.js +12 -3
  544. data/vendor/v8/test/mjsunit/regress/regress-1118.js +1 -1
  545. data/vendor/v8/test/mjsunit/regress/regress-115100.js +36 -0
  546. data/vendor/v8/test/mjsunit/regress/regress-1199637.js +1 -3
  547. data/vendor/v8/test/mjsunit/regress/regress-121407.js +1 -1
  548. data/vendor/v8/test/mjsunit/regress/regress-131923.js +30 -0
  549. data/vendor/v8/test/mjsunit/regress/regress-131994.js +70 -0
  550. data/vendor/v8/test/mjsunit/regress/regress-133211.js +35 -0
  551. data/vendor/v8/test/mjsunit/regress/regress-133211b.js +39 -0
  552. data/vendor/v8/test/mjsunit/regress/regress-136048.js +34 -0
  553. data/vendor/v8/test/mjsunit/regress/regress-137768.js +73 -0
  554. data/vendor/v8/test/mjsunit/regress/regress-143967.js +34 -0
  555. data/vendor/v8/test/mjsunit/regress/regress-145201.js +107 -0
  556. data/vendor/v8/test/mjsunit/regress/regress-147497.js +45 -0
  557. data/vendor/v8/test/mjsunit/regress/regress-148378.js +38 -0
  558. data/vendor/v8/test/mjsunit/regress/regress-1563.js +1 -1
  559. data/vendor/v8/test/mjsunit/regress/regress-1591.js +48 -0
  560. data/vendor/v8/test/mjsunit/regress/regress-164442.js +45 -0
  561. data/vendor/v8/test/mjsunit/regress/regress-165637.js +61 -0
  562. data/vendor/v8/test/mjsunit/regress/regress-166379.js +39 -0
  563. data/vendor/v8/test/mjsunit/regress/regress-166553.js +33 -0
  564. data/vendor/v8/test/mjsunit/regress/regress-1692.js +1 -1
  565. data/vendor/v8/test/mjsunit/regress/regress-171641.js +40 -0
  566. data/vendor/v8/test/mjsunit/regress/regress-1980.js +1 -1
  567. data/vendor/v8/test/mjsunit/regress/regress-2073.js +99 -0
  568. data/vendor/v8/test/mjsunit/regress/regress-2119.js +36 -0
  569. data/vendor/v8/test/mjsunit/regress/regress-2156.js +39 -0
  570. data/vendor/v8/test/mjsunit/regress/regress-2163.js +70 -0
  571. data/vendor/v8/test/mjsunit/regress/regress-2170.js +58 -0
  572. data/vendor/v8/test/mjsunit/regress/regress-2172.js +35 -0
  573. data/vendor/v8/test/mjsunit/regress/regress-2185-2.js +145 -0
  574. data/vendor/v8/test/mjsunit/regress/regress-2185.js +38 -0
  575. data/vendor/v8/test/mjsunit/regress/regress-2186.js +49 -0
  576. data/vendor/v8/test/mjsunit/regress/regress-2193.js +58 -0
  577. data/vendor/v8/test/mjsunit/regress/regress-2219.js +32 -0
  578. data/vendor/v8/test/mjsunit/regress/regress-2225.js +65 -0
  579. data/vendor/v8/test/mjsunit/regress/regress-2226.js +36 -0
  580. data/vendor/v8/test/mjsunit/regress/regress-2234.js +41 -0
  581. data/vendor/v8/test/mjsunit/regress/regress-2243.js +31 -0
  582. data/vendor/v8/test/mjsunit/regress/regress-2249.js +33 -0
  583. data/vendor/v8/test/mjsunit/regress/regress-2250.js +68 -0
  584. data/vendor/v8/test/mjsunit/regress/regress-2261.js +113 -0
  585. data/vendor/v8/test/mjsunit/regress/regress-2263.js +30 -0
  586. data/vendor/v8/test/mjsunit/regress/regress-2284.js +32 -0
  587. data/vendor/v8/test/mjsunit/regress/regress-2285.js +32 -0
  588. data/vendor/v8/test/mjsunit/regress/regress-2286.js +32 -0
  589. data/vendor/v8/test/mjsunit/regress/regress-2289.js +34 -0
  590. data/vendor/v8/test/mjsunit/regress/regress-2291.js +36 -0
  591. data/vendor/v8/test/mjsunit/regress/regress-2294.js +70 -0
  592. data/vendor/v8/test/mjsunit/regress/regress-2296.js +40 -0
  593. data/vendor/v8/test/mjsunit/regress/regress-2315.js +40 -0
  594. data/vendor/v8/test/mjsunit/regress/regress-2318.js +66 -0
  595. data/vendor/v8/test/mjsunit/regress/regress-2322.js +36 -0
  596. data/vendor/v8/test/mjsunit/regress/regress-2326.js +54 -0
  597. data/vendor/v8/test/mjsunit/regress/regress-2336.js +53 -0
  598. data/vendor/v8/test/mjsunit/regress/regress-2339.js +59 -0
  599. data/vendor/v8/test/mjsunit/regress/regress-2346.js +123 -0
  600. data/vendor/v8/test/mjsunit/regress/regress-2373.js +29 -0
  601. data/vendor/v8/test/mjsunit/regress/regress-2374.js +33 -0
  602. data/vendor/v8/test/mjsunit/regress/regress-2398.js +41 -0
  603. data/vendor/v8/test/mjsunit/regress/regress-2410.js +36 -0
  604. data/vendor/v8/test/mjsunit/regress/regress-2416.js +75 -0
  605. data/vendor/v8/test/mjsunit/regress/regress-2419.js +37 -0
  606. data/vendor/v8/test/mjsunit/regress/regress-2433.js +36 -0
  607. data/vendor/v8/test/mjsunit/regress/regress-2437.js +156 -0
  608. data/vendor/v8/test/mjsunit/regress/regress-2438.js +52 -0
  609. data/vendor/v8/test/mjsunit/regress/regress-2443.js +129 -0
  610. data/vendor/v8/test/mjsunit/regress/regress-2444.js +120 -0
  611. data/vendor/v8/test/mjsunit/regress/regress-2489.js +50 -0
  612. data/vendor/v8/test/mjsunit/regress/regress-2499.js +40 -0
  613. data/vendor/v8/test/mjsunit/regress/regress-334.js +1 -1
  614. data/vendor/v8/test/mjsunit/regress/regress-492.js +39 -1
  615. data/vendor/v8/test/mjsunit/regress/regress-builtin-array-op.js +38 -0
  616. data/vendor/v8/test/mjsunit/regress/regress-cnlt-elements.js +43 -0
  617. data/vendor/v8/test/mjsunit/regress/regress-cnlt-enum-indices.js +45 -0
  618. data/vendor/v8/test/mjsunit/regress/regress-cntl-descriptors-enum.js +46 -0
  619. data/vendor/v8/test/mjsunit/regress/regress-convert-enum.js +60 -0
  620. data/vendor/v8/test/mjsunit/regress/regress-convert-enum2.js +46 -0
  621. data/vendor/v8/test/mjsunit/regress/regress-convert-transition.js +40 -0
  622. data/vendor/v8/test/mjsunit/regress/regress-crbug-119926.js +3 -1
  623. data/vendor/v8/test/mjsunit/regress/regress-crbug-125148.js +90 -0
  624. data/vendor/v8/test/mjsunit/regress/regress-crbug-134055.js +63 -0
  625. data/vendor/v8/test/mjsunit/regress/regress-crbug-134609.js +59 -0
  626. data/vendor/v8/test/mjsunit/regress/regress-crbug-135008.js +45 -0
  627. data/vendor/v8/test/mjsunit/regress/regress-crbug-135066.js +55 -0
  628. data/vendor/v8/test/mjsunit/regress/regress-crbug-137689.js +47 -0
  629. data/vendor/v8/test/mjsunit/regress/regress-crbug-138887.js +48 -0
  630. data/vendor/v8/test/mjsunit/regress/regress-crbug-140083.js +44 -0
  631. data/vendor/v8/test/mjsunit/regress/regress-crbug-142087.js +38 -0
  632. data/vendor/v8/test/mjsunit/regress/regress-crbug-142218.js +44 -0
  633. data/vendor/v8/test/mjsunit/regress/regress-crbug-145961.js +39 -0
  634. data/vendor/v8/test/mjsunit/regress/regress-crbug-146910.js +33 -0
  635. data/vendor/v8/test/mjsunit/regress/regress-crbug-147475.js +48 -0
  636. data/vendor/v8/test/mjsunit/regress/regress-crbug-148376.js +35 -0
  637. data/vendor/v8/test/mjsunit/regress/regress-crbug-150545.js +53 -0
  638. data/vendor/v8/test/mjsunit/regress/regress-crbug-150729.js +39 -0
  639. data/vendor/v8/test/mjsunit/regress/regress-crbug-157019.js +54 -0
  640. data/vendor/v8/test/mjsunit/regress/regress-crbug-157520.js +38 -0
  641. data/vendor/v8/test/mjsunit/regress/regress-crbug-158185.js +39 -0
  642. data/vendor/v8/test/mjsunit/regress/regress-crbug-160010.js +35 -0
  643. data/vendor/v8/test/mjsunit/regress/regress-crbug-162085.js +71 -0
  644. data/vendor/v8/test/mjsunit/regress/regress-crbug-168545.js +34 -0
  645. data/vendor/v8/test/mjsunit/regress/regress-crbug-170856.js +33 -0
  646. data/vendor/v8/test/mjsunit/regress/regress-crbug-172345.js +34 -0
  647. data/vendor/v8/test/mjsunit/regress/regress-crbug-173974.js +36 -0
  648. data/vendor/v8/test/mjsunit/regress/regress-crbug-18639.js +9 -5
  649. data/vendor/v8/test/mjsunit/regress/regress-debug-code-recompilation.js +2 -1
  650. data/vendor/v8/test/mjsunit/regress/regress-deep-proto.js +45 -0
  651. data/vendor/v8/test/mjsunit/regress/regress-delete-empty-double.js +40 -0
  652. data/vendor/v8/test/mjsunit/regress/regress-iteration-order.js +42 -0
  653. data/vendor/v8/test/mjsunit/regress/regress-json-stringify-gc.js +41 -0
  654. data/vendor/v8/test/mjsunit/regress/regress-latin-1.js +78 -0
  655. data/vendor/v8/test/mjsunit/regress/regress-load-elements.js +49 -0
  656. data/vendor/v8/test/mjsunit/regress/regress-observe-empty-double-array.js +38 -0
  657. data/vendor/v8/test/mjsunit/regress/regress-undefined-store-keyed-fast-element.js +37 -0
  658. data/vendor/v8/test/mjsunit/shift-for-integer-div.js +59 -0
  659. data/vendor/v8/test/mjsunit/stack-traces-gc.js +119 -0
  660. data/vendor/v8/test/mjsunit/stack-traces-overflow.js +122 -0
  661. data/vendor/v8/test/mjsunit/stack-traces.js +39 -1
  662. data/vendor/v8/test/mjsunit/str-to-num.js +7 -2
  663. data/vendor/v8/test/mjsunit/strict-mode.js +36 -11
  664. data/vendor/v8/test/mjsunit/string-charcodeat.js +3 -0
  665. data/vendor/v8/test/mjsunit/string-natives.js +72 -0
  666. data/vendor/v8/test/mjsunit/string-split.js +17 -0
  667. data/vendor/v8/test/mjsunit/testcfg.py +76 -6
  668. data/vendor/v8/test/mjsunit/tools/tickprocessor.js +4 -1
  669. data/vendor/v8/test/mjsunit/try-finally-continue.js +72 -0
  670. data/vendor/v8/test/mjsunit/typed-array-slice.js +61 -0
  671. data/vendor/v8/test/mjsunit/unbox-double-arrays.js +2 -0
  672. data/vendor/v8/test/mjsunit/uri.js +12 -0
  673. data/vendor/v8/test/mjsunit/with-readonly.js +4 -2
  674. data/vendor/v8/test/mozilla/mozilla.status +19 -113
  675. data/vendor/v8/test/mozilla/testcfg.py +122 -3
  676. data/vendor/v8/test/preparser/preparser.status +5 -0
  677. data/vendor/v8/test/preparser/strict-identifiers.pyt +1 -1
  678. data/vendor/v8/test/preparser/testcfg.py +101 -5
  679. data/vendor/v8/test/sputnik/sputnik.status +1 -1
  680. data/vendor/v8/test/sputnik/testcfg.py +5 -0
  681. data/vendor/v8/test/test262/README +2 -2
  682. data/vendor/v8/test/test262/test262.status +13 -36
  683. data/vendor/v8/test/test262/testcfg.py +102 -8
  684. data/vendor/v8/tools/android-build.sh +0 -0
  685. data/vendor/v8/tools/android-ll-prof.sh +69 -0
  686. data/vendor/v8/tools/android-run.py +109 -0
  687. data/vendor/v8/tools/android-sync.sh +105 -0
  688. data/vendor/v8/tools/bash-completion.sh +0 -0
  689. data/vendor/v8/tools/check-static-initializers.sh +0 -0
  690. data/vendor/v8/tools/common-includes.sh +15 -22
  691. data/vendor/v8/tools/disasm.py +4 -4
  692. data/vendor/v8/tools/fuzz-harness.sh +0 -0
  693. data/vendor/v8/tools/gen-postmortem-metadata.py +6 -8
  694. data/vendor/v8/tools/grokdump.py +404 -129
  695. data/vendor/v8/tools/gyp/v8.gyp +105 -43
  696. data/vendor/v8/tools/linux-tick-processor +5 -5
  697. data/vendor/v8/tools/ll_prof.py +75 -15
  698. data/vendor/v8/tools/merge-to-branch.sh +2 -2
  699. data/vendor/v8/tools/plot-timer-events +70 -0
  700. data/vendor/v8/tools/plot-timer-events.js +510 -0
  701. data/vendor/v8/tools/presubmit.py +1 -0
  702. data/vendor/v8/tools/push-to-trunk.sh +14 -4
  703. data/vendor/v8/tools/run-llprof.sh +69 -0
  704. data/vendor/v8/tools/run-tests.py +372 -0
  705. data/vendor/v8/tools/run-valgrind.py +1 -1
  706. data/vendor/v8/tools/status-file-converter.py +39 -0
  707. data/vendor/v8/tools/test-server.py +224 -0
  708. data/vendor/v8/tools/test-wrapper-gypbuild.py +13 -16
  709. data/vendor/v8/tools/test.py +10 -19
  710. data/vendor/v8/tools/testrunner/README +174 -0
  711. data/vendor/v8/tools/testrunner/__init__.py +26 -0
  712. data/vendor/v8/tools/testrunner/local/__init__.py +26 -0
  713. data/vendor/v8/tools/testrunner/local/commands.py +153 -0
  714. data/vendor/v8/tools/testrunner/local/execution.py +182 -0
  715. data/vendor/v8/tools/testrunner/local/old_statusfile.py +460 -0
  716. data/vendor/v8/tools/testrunner/local/progress.py +238 -0
  717. data/vendor/v8/tools/testrunner/local/statusfile.py +145 -0
  718. data/vendor/v8/tools/testrunner/local/testsuite.py +187 -0
  719. data/vendor/v8/tools/testrunner/local/utils.py +108 -0
  720. data/vendor/v8/tools/testrunner/local/verbose.py +99 -0
  721. data/vendor/v8/tools/testrunner/network/__init__.py +26 -0
  722. data/vendor/v8/tools/testrunner/network/distro.py +90 -0
  723. data/vendor/v8/tools/testrunner/network/endpoint.py +124 -0
  724. data/vendor/v8/tools/testrunner/network/network_execution.py +253 -0
  725. data/vendor/v8/tools/testrunner/network/perfdata.py +120 -0
  726. data/vendor/v8/tools/testrunner/objects/__init__.py +26 -0
  727. data/vendor/v8/tools/testrunner/objects/context.py +50 -0
  728. data/vendor/v8/tools/testrunner/objects/output.py +60 -0
  729. data/vendor/v8/tools/testrunner/objects/peer.py +80 -0
  730. data/vendor/v8/tools/testrunner/objects/testcase.py +83 -0
  731. data/vendor/v8/tools/testrunner/objects/workpacket.py +90 -0
  732. data/vendor/v8/tools/testrunner/server/__init__.py +26 -0
  733. data/vendor/v8/tools/testrunner/server/compression.py +111 -0
  734. data/vendor/v8/tools/testrunner/server/constants.py +51 -0
  735. data/vendor/v8/tools/testrunner/server/daemon.py +147 -0
  736. data/vendor/v8/tools/testrunner/server/local_handler.py +119 -0
  737. data/vendor/v8/tools/testrunner/server/main.py +245 -0
  738. data/vendor/v8/tools/testrunner/server/presence_handler.py +120 -0
  739. data/vendor/v8/tools/testrunner/server/signatures.py +63 -0
  740. data/vendor/v8/tools/testrunner/server/status_handler.py +112 -0
  741. data/vendor/v8/tools/testrunner/server/work_handler.py +150 -0
  742. data/vendor/v8/tools/tick-processor.html +168 -0
  743. data/vendor/v8/tools/tickprocessor-driver.js +5 -3
  744. data/vendor/v8/tools/tickprocessor.js +58 -15
  745. metadata +534 -30
  746. data/patches/add-freebsd9-and-freebsd10-to-gyp-GetFlavor.patch +0 -11
  747. data/patches/do-not-imply-vfp3-and-armv7.patch +0 -44
  748. data/patches/fPIC-on-x64.patch +0 -14
  749. data/vendor/v8/src/liveobjectlist-inl.h +0 -126
  750. data/vendor/v8/src/liveobjectlist.cc +0 -2631
  751. data/vendor/v8/src/liveobjectlist.h +0 -319
  752. data/vendor/v8/test/mjsunit/mul-exhaustive.js +0 -4629
  753. data/vendor/v8/test/mjsunit/numops-fuzz.js +0 -4609
  754. data/vendor/v8/test/mjsunit/regress/regress-1969.js +0 -5045
@@ -1,319 +0,0 @@
1
- // Copyright 2011 the V8 project authors. All rights reserved.
2
- // Redistribution and use in source and binary forms, with or without
3
- // modification, are permitted provided that the following conditions are
4
- // met:
5
- //
6
- // * Redistributions of source code must retain the above copyright
7
- // notice, this list of conditions and the following disclaimer.
8
- // * Redistributions in binary form must reproduce the above
9
- // copyright notice, this list of conditions and the following
10
- // disclaimer in the documentation and/or other materials provided
11
- // with the distribution.
12
- // * Neither the name of Google Inc. nor the names of its
13
- // contributors may be used to endorse or promote products derived
14
- // from this software without specific prior written permission.
15
- //
16
- // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17
- // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18
- // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19
- // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20
- // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21
- // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22
- // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23
- // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24
- // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
- // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26
- // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
-
28
- #ifndef V8_LIVEOBJECTLIST_H_
29
- #define V8_LIVEOBJECTLIST_H_
30
-
31
- #include "v8.h"
32
-
33
- #include "checks.h"
34
- #include "heap.h"
35
- #include "objects.h"
36
- #include "globals.h"
37
-
38
- namespace v8 {
39
- namespace internal {
40
-
41
- #ifdef LIVE_OBJECT_LIST
42
-
43
- #ifdef DEBUG
44
- // The following symbol when defined enables thorough verification of lol data.
45
- // FLAG_verify_lol will also need to set to true to enable the verification.
46
- #define VERIFY_LOL
47
- #endif
48
-
49
-
50
- typedef int LiveObjectType;
51
- class LolFilter;
52
- class LiveObjectSummary;
53
- class DumpWriter;
54
- class SummaryWriter;
55
-
56
-
57
- // The LiveObjectList is both a mechanism for tracking a live capture of
58
- // objects in the JS heap, as well as is the data structure which represents
59
- // each of those captures. Unlike a snapshot, the lol is live. For example,
60
- // if an object in a captured lol dies and is collected by the GC, the lol
61
- // will reflect that the object is no longer available. The term
62
- // LiveObjectList (and lol) is used to describe both the mechanism and the
63
- // data structure depending on context of use.
64
- //
65
- // In captured lols, objects are tracked using their address and an object id.
66
- // The object id is unique. Once assigned to an object, the object id can never
67
- // be assigned to another object. That is unless all captured lols are deleted
68
- // which allows the user to start over with a fresh set of lols and object ids.
69
- // The uniqueness of the object ids allows the user to track specific objects
70
- // and inspect its longevity while debugging JS code in execution.
71
- //
72
- // The lol comes with utility functions to capture, dump, summarize, and diff
73
- // captured lols amongst other functionality. These functionality are
74
- // accessible via the v8 debugger interface.
75
- class LiveObjectList {
76
- public:
77
- inline static void GCEpilogue();
78
- inline static void GCPrologue();
79
- inline static void IterateElements(ObjectVisitor* v);
80
- inline static void ProcessNonLive(HeapObject* obj);
81
- inline static void UpdateReferencesForScavengeGC();
82
-
83
- // Note: LOLs can be listed by calling Dump(0, <lol id>), and 2 LOLs can be
84
- // compared/diff'ed using Dump(<lol id1>, <lol id2>, ...). This will yield
85
- // a verbose dump of all the objects in the resultant lists.
86
- // Similarly, a summarized result of a LOL listing or a diff can be
87
- // attained using the Summarize(0, <lol id>) and Summarize(<lol id1,
88
- // <lol id2>, ...) respectively.
89
-
90
- static MaybeObject* Capture();
91
- static bool Delete(int id);
92
- static MaybeObject* Dump(int id1,
93
- int id2,
94
- int start_idx,
95
- int dump_limit,
96
- Handle<JSObject> filter_obj);
97
- static MaybeObject* Info(int start_idx, int dump_limit);
98
- static MaybeObject* Summarize(int id1, int id2, Handle<JSObject> filter_obj);
99
-
100
- static void Reset();
101
- static Object* GetObj(int obj_id);
102
- static int GetObjId(Object* obj);
103
- static Object* GetObjId(Handle<String> address);
104
- static MaybeObject* GetObjRetainers(int obj_id,
105
- Handle<JSObject> instance_filter,
106
- bool verbose,
107
- int start,
108
- int count,
109
- Handle<JSObject> filter_obj);
110
-
111
- static Object* GetPath(int obj_id1,
112
- int obj_id2,
113
- Handle<JSObject> instance_filter);
114
- static Object* PrintObj(int obj_id);
115
-
116
- private:
117
- struct Element {
118
- int id_;
119
- HeapObject* obj_;
120
- };
121
-
122
- explicit LiveObjectList(LiveObjectList* prev, int capacity);
123
- ~LiveObjectList();
124
-
125
- static void GCEpiloguePrivate();
126
- static void IterateElementsPrivate(ObjectVisitor* v);
127
-
128
- static void DoProcessNonLive(HeapObject* obj);
129
-
130
- static int CompareElement(const Element* a, const Element* b);
131
-
132
- static Object* GetPathPrivate(HeapObject* obj1, HeapObject* obj2);
133
-
134
- static int GetRetainers(Handle<HeapObject> target,
135
- Handle<JSObject> instance_filter,
136
- Handle<FixedArray> retainers_arr,
137
- int start,
138
- int dump_limit,
139
- int* total_count,
140
- LolFilter* filter,
141
- LiveObjectSummary* summary,
142
- JSFunction* arguments_function,
143
- Handle<Object> error);
144
-
145
- static MaybeObject* DumpPrivate(DumpWriter* writer,
146
- int start,
147
- int dump_limit,
148
- LolFilter* filter);
149
- static MaybeObject* SummarizePrivate(SummaryWriter* writer,
150
- LolFilter* filter,
151
- bool is_tracking_roots);
152
-
153
- static bool NeedLOLProcessing() { return (last() != NULL); }
154
- static void NullifyNonLivePointer(HeapObject** p) {
155
- // Mask out the low bit that marks this as a heap object. We'll use this
156
- // cleared bit as an indicator that this pointer needs to be collected.
157
- //
158
- // Meanwhile, we still preserve its approximate value so that we don't
159
- // have to resort the elements list all the time.
160
- //
161
- // Note: Doing so also makes this HeapObject* look like an SMI. Hence,
162
- // GC pointer updater will ignore it when it gets scanned.
163
- *p = reinterpret_cast<HeapObject*>((*p)->address());
164
- }
165
-
166
- LiveObjectList* prev() { return prev_; }
167
- LiveObjectList* next() { return next_; }
168
- int id() { return id_; }
169
-
170
- static int list_count() { return list_count_; }
171
- static LiveObjectList* last() { return last_; }
172
-
173
- inline static LiveObjectList* FindLolForId(int id, LiveObjectList* start_lol);
174
- int TotalObjCount() { return GetTotalObjCountAndSize(NULL); }
175
- int GetTotalObjCountAndSize(int* size_p);
176
-
177
- bool Add(HeapObject* obj);
178
- Element* Find(HeapObject* obj);
179
- static void NullifyMostRecent(HeapObject* obj);
180
- void Sort();
181
- static void SortAll();
182
-
183
- static void PurgeDuplicates(); // Only to be called by GCEpilogue.
184
-
185
- #ifdef VERIFY_LOL
186
- static void Verify(bool match_heap_exactly = false);
187
- static void VerifyNotInFromSpace();
188
- #endif
189
-
190
- // Iterates the elements in every lol and returns the one that matches the
191
- // specified key. If no matching element is found, then it returns NULL.
192
- template <typename T>
193
- inline static LiveObjectList::Element*
194
- FindElementFor(T (*GetValue)(LiveObjectList::Element*), T key);
195
-
196
- inline static int GetElementId(Element* element);
197
- inline static HeapObject* GetElementObj(Element* element);
198
-
199
- // Instance fields.
200
- LiveObjectList* prev_;
201
- LiveObjectList* next_;
202
- int id_;
203
- int capacity_;
204
- int obj_count_;
205
- Element* elements_;
206
-
207
- // Statics for managing all the lists.
208
- static uint32_t next_element_id_;
209
- static int list_count_;
210
- static int last_id_;
211
- static LiveObjectList* first_;
212
- static LiveObjectList* last_;
213
-
214
- friend class LolIterator;
215
- friend class LolForwardIterator;
216
- friend class LolDumpWriter;
217
- friend class RetainersDumpWriter;
218
- friend class RetainersSummaryWriter;
219
- friend class UpdateLiveObjectListVisitor;
220
- };
221
-
222
-
223
- // Helper class for updating the LiveObjectList HeapObject pointers.
224
- class UpdateLiveObjectListVisitor: public ObjectVisitor {
225
- public:
226
- void VisitPointer(Object** p) { UpdatePointer(p); }
227
-
228
- void VisitPointers(Object** start, Object** end) {
229
- // Copy all HeapObject pointers in [start, end).
230
- for (Object** p = start; p < end; p++) UpdatePointer(p);
231
- }
232
-
233
- private:
234
- // Based on Heap::ScavengeObject() but only does forwarding of pointers
235
- // to live new space objects, and not actually keep them alive.
236
- void UpdatePointer(Object** p) {
237
- Object* object = *p;
238
- if (!HEAP->InNewSpace(object)) return;
239
-
240
- HeapObject* heap_obj = HeapObject::cast(object);
241
- ASSERT(HEAP->InFromSpace(heap_obj));
242
-
243
- // We use the first word (where the map pointer usually is) of a heap
244
- // object to record the forwarding pointer. A forwarding pointer can
245
- // point to an old space, the code space, or the to space of the new
246
- // generation.
247
- MapWord first_word = heap_obj->map_word();
248
-
249
- // If the first word is a forwarding address, the object has already been
250
- // copied.
251
- if (first_word.IsForwardingAddress()) {
252
- *p = first_word.ToForwardingAddress();
253
- return;
254
-
255
- // Else, it's a dead object.
256
- } else {
257
- LiveObjectList::NullifyNonLivePointer(reinterpret_cast<HeapObject**>(p));
258
- }
259
- }
260
- };
261
-
262
-
263
- #else // !LIVE_OBJECT_LIST
264
-
265
-
266
- class LiveObjectList {
267
- public:
268
- inline static void GCEpilogue() {}
269
- inline static void GCPrologue() {}
270
- inline static void IterateElements(ObjectVisitor* v) {}
271
- inline static void ProcessNonLive(HeapObject* obj) {}
272
- inline static void UpdateReferencesForScavengeGC() {}
273
-
274
- inline static MaybeObject* Capture() { return HEAP->undefined_value(); }
275
- inline static bool Delete(int id) { return false; }
276
- inline static MaybeObject* Dump(int id1,
277
- int id2,
278
- int start_idx,
279
- int dump_limit,
280
- Handle<JSObject> filter_obj) {
281
- return HEAP->undefined_value();
282
- }
283
- inline static MaybeObject* Info(int start_idx, int dump_limit) {
284
- return HEAP->undefined_value();
285
- }
286
- inline static MaybeObject* Summarize(int id1,
287
- int id2,
288
- Handle<JSObject> filter_obj) {
289
- return HEAP->undefined_value();
290
- }
291
-
292
- inline static void Reset() {}
293
- inline static Object* GetObj(int obj_id) { return HEAP->undefined_value(); }
294
- inline static Object* GetObjId(Handle<String> address) {
295
- return HEAP->undefined_value();
296
- }
297
- inline static MaybeObject* GetObjRetainers(int obj_id,
298
- Handle<JSObject> instance_filter,
299
- bool verbose,
300
- int start,
301
- int count,
302
- Handle<JSObject> filter_obj) {
303
- return HEAP->undefined_value();
304
- }
305
-
306
- inline static Object* GetPath(int obj_id1,
307
- int obj_id2,
308
- Handle<JSObject> instance_filter) {
309
- return HEAP->undefined_value();
310
- }
311
- inline static Object* PrintObj(int obj_id) { return HEAP->undefined_value(); }
312
- };
313
-
314
-
315
- #endif // LIVE_OBJECT_LIST
316
-
317
- } } // namespace v8::internal
318
-
319
- #endif // V8_LIVEOBJECTLIST_H_
@@ -1,4629 +0,0 @@
1
- // Copyright 2008 the V8 project authors. All rights reserved.
2
- // Redistribution and use in source and binary forms, with or without
3
- // modification, are permitted provided that the following conditions are
4
- // met:
5
- //
6
- // * Redistributions of source code must retain the above copyright
7
- // notice, this list of conditions and the following disclaimer.
8
- // * Redistributions in binary form must reproduce the above
9
- // copyright notice, this list of conditions and the following
10
- // disclaimer in the documentation and/or other materials provided
11
- // with the distribution.
12
- // * Neither the name of Google Inc. nor the names of its
13
- // contributors may be used to endorse or promote products derived
14
- // from this software without specific prior written permission.
15
- //
16
- // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17
- // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18
- // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19
- // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20
- // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21
- // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22
- // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23
- // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24
- // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
- // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26
- // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
-
28
- var x;
29
-
30
- // Converts a number to string respecting -0.
31
- function stringify(n) {
32
- if ((1 / n) === -Infinity) return "-0";
33
- return String(n);
34
- }
35
-
36
- function f(expected, y) {
37
- function testEval(string, x, y) {
38
- var mulFunction = Function("x, y", "return " + string);
39
- return mulFunction(x, y);
40
- }
41
- function mulTest(expected, x, y) {
42
- assertEquals(expected, x * y);
43
- assertEquals(expected, testEval(stringify(x) + " * y", x, y));
44
- assertEquals(expected, testEval("x * " + stringify(y), x, y));
45
- assertEquals(expected, testEval(stringify(x) + " * " + stringify(y), x, y));
46
- }
47
- mulTest(expected, x, y);
48
- mulTest(-expected, -x, y);
49
- mulTest(-expected, x, -y);
50
- mulTest(expected, -x, -y);
51
- if (x === y) return; // Symmetric cases not necessary.
52
- mulTest(expected, y, x);
53
- mulTest(-expected, -y, x);
54
- mulTest(-expected, y, -x);
55
- mulTest(expected, -y, -x);
56
- }
57
-
58
- x = 0;
59
- f(0, 0);
60
- x = 1;
61
- f(0, 0);
62
- f(1, 1);
63
- x = 2;
64
- f(0, 0);
65
- f(2, 1);
66
- f(4, 2);
67
- x = 3;
68
- f(0, 0);
69
- f(3, 1);
70
- f(6, 2);
71
- f(9, 3);
72
- x = 4;
73
- f(0, 0);
74
- f(4, 1);
75
- f(8, 2);
76
- f(12, 3);
77
- f(16, 4);
78
- x = 5;
79
- f(0, 0);
80
- f(5, 1);
81
- f(10, 2);
82
- f(15, 3);
83
- f(20, 4);
84
- f(25, 5);
85
- x = 7;
86
- f(0, 0);
87
- f(7, 1);
88
- f(14, 2);
89
- f(21, 3);
90
- f(28, 4);
91
- f(35, 5);
92
- f(49, 7);
93
- x = 8;
94
- f(0, 0);
95
- f(8, 1);
96
- f(16, 2);
97
- f(24, 3);
98
- f(32, 4);
99
- f(40, 5);
100
- f(56, 7);
101
- f(64, 8);
102
- x = 9;
103
- f(0, 0);
104
- f(9, 1);
105
- f(18, 2);
106
- f(27, 3);
107
- f(36, 4);
108
- f(45, 5);
109
- f(63, 7);
110
- f(72, 8);
111
- f(81, 9);
112
- x = 15;
113
- f(0, 0);
114
- f(15, 1);
115
- f(30, 2);
116
- f(45, 3);
117
- f(60, 4);
118
- f(75, 5);
119
- f(105, 7);
120
- f(120, 8);
121
- f(135, 9);
122
- f(225, 15);
123
- x = 16;
124
- f(0, 0);
125
- f(16, 1);
126
- f(32, 2);
127
- f(48, 3);
128
- f(64, 4);
129
- f(80, 5);
130
- f(112, 7);
131
- f(128, 8);
132
- f(144, 9);
133
- f(240, 15);
134
- f(256, 16);
135
- x = 17;
136
- f(0, 0);
137
- f(17, 1);
138
- f(34, 2);
139
- f(51, 3);
140
- f(68, 4);
141
- f(85, 5);
142
- f(119, 7);
143
- f(136, 8);
144
- f(153, 9);
145
- f(255, 15);
146
- f(272, 16);
147
- f(289, 17);
148
- x = 31;
149
- f(0, 0);
150
- f(31, 1);
151
- f(62, 2);
152
- f(93, 3);
153
- f(124, 4);
154
- f(155, 5);
155
- f(217, 7);
156
- f(248, 8);
157
- f(279, 9);
158
- f(465, 15);
159
- f(496, 16);
160
- f(527, 17);
161
- f(961, 31);
162
- x = 32;
163
- f(0, 0);
164
- f(32, 1);
165
- f(64, 2);
166
- f(96, 3);
167
- f(128, 4);
168
- f(160, 5);
169
- f(224, 7);
170
- f(256, 8);
171
- f(288, 9);
172
- f(480, 15);
173
- f(512, 16);
174
- f(544, 17);
175
- f(992, 31);
176
- f(1024, 32);
177
- x = 33;
178
- f(0, 0);
179
- f(33, 1);
180
- f(66, 2);
181
- f(99, 3);
182
- f(132, 4);
183
- f(165, 5);
184
- f(231, 7);
185
- f(264, 8);
186
- f(297, 9);
187
- f(495, 15);
188
- f(528, 16);
189
- f(561, 17);
190
- f(1023, 31);
191
- f(1056, 32);
192
- f(1089, 33);
193
- x = 63;
194
- f(0, 0);
195
- f(63, 1);
196
- f(126, 2);
197
- f(189, 3);
198
- f(252, 4);
199
- f(315, 5);
200
- f(441, 7);
201
- f(504, 8);
202
- f(567, 9);
203
- f(945, 15);
204
- f(1008, 16);
205
- f(1071, 17);
206
- f(1953, 31);
207
- f(2016, 32);
208
- f(2079, 33);
209
- f(3969, 63);
210
- x = 64;
211
- f(0, 0);
212
- f(64, 1);
213
- f(128, 2);
214
- f(192, 3);
215
- f(256, 4);
216
- f(320, 5);
217
- f(448, 7);
218
- f(512, 8);
219
- f(576, 9);
220
- f(960, 15);
221
- f(1024, 16);
222
- f(1088, 17);
223
- f(1984, 31);
224
- f(2048, 32);
225
- f(2112, 33);
226
- f(4032, 63);
227
- f(4096, 64);
228
- x = 65;
229
- f(0, 0);
230
- f(65, 1);
231
- f(130, 2);
232
- f(195, 3);
233
- f(260, 4);
234
- f(325, 5);
235
- f(455, 7);
236
- f(520, 8);
237
- f(585, 9);
238
- f(975, 15);
239
- f(1040, 16);
240
- f(1105, 17);
241
- f(2015, 31);
242
- f(2080, 32);
243
- f(2145, 33);
244
- f(4095, 63);
245
- f(4160, 64);
246
- f(4225, 65);
247
- x = 127;
248
- f(0, 0);
249
- f(127, 1);
250
- f(254, 2);
251
- f(381, 3);
252
- f(508, 4);
253
- f(635, 5);
254
- f(889, 7);
255
- f(1016, 8);
256
- f(1143, 9);
257
- f(1905, 15);
258
- f(2032, 16);
259
- f(2159, 17);
260
- f(3937, 31);
261
- f(4064, 32);
262
- f(4191, 33);
263
- f(8001, 63);
264
- f(8128, 64);
265
- f(8255, 65);
266
- f(16129, 127);
267
- x = 128;
268
- f(0, 0);
269
- f(128, 1);
270
- f(256, 2);
271
- f(384, 3);
272
- f(512, 4);
273
- f(640, 5);
274
- f(896, 7);
275
- f(1024, 8);
276
- f(1152, 9);
277
- f(1920, 15);
278
- f(2048, 16);
279
- f(2176, 17);
280
- f(3968, 31);
281
- f(4096, 32);
282
- f(4224, 33);
283
- f(8064, 63);
284
- f(8192, 64);
285
- f(8320, 65);
286
- f(16256, 127);
287
- f(16384, 128);
288
- x = 129;
289
- f(0, 0);
290
- f(129, 1);
291
- f(258, 2);
292
- f(387, 3);
293
- f(516, 4);
294
- f(645, 5);
295
- f(903, 7);
296
- f(1032, 8);
297
- f(1161, 9);
298
- f(1935, 15);
299
- f(2064, 16);
300
- f(2193, 17);
301
- f(3999, 31);
302
- f(4128, 32);
303
- f(4257, 33);
304
- f(8127, 63);
305
- f(8256, 64);
306
- f(8385, 65);
307
- f(16383, 127);
308
- f(16512, 128);
309
- f(16641, 129);
310
- x = 255;
311
- f(0, 0);
312
- f(255, 1);
313
- f(510, 2);
314
- f(765, 3);
315
- f(1020, 4);
316
- f(1275, 5);
317
- f(1785, 7);
318
- f(2040, 8);
319
- f(2295, 9);
320
- f(3825, 15);
321
- f(4080, 16);
322
- f(4335, 17);
323
- f(7905, 31);
324
- f(8160, 32);
325
- f(8415, 33);
326
- f(16065, 63);
327
- f(16320, 64);
328
- f(16575, 65);
329
- f(32385, 127);
330
- f(32640, 128);
331
- f(32895, 129);
332
- f(65025, 255);
333
- x = 256;
334
- f(0, 0);
335
- f(256, 1);
336
- f(512, 2);
337
- f(768, 3);
338
- f(1024, 4);
339
- f(1280, 5);
340
- f(1792, 7);
341
- f(2048, 8);
342
- f(2304, 9);
343
- f(3840, 15);
344
- f(4096, 16);
345
- f(4352, 17);
346
- f(7936, 31);
347
- f(8192, 32);
348
- f(8448, 33);
349
- f(16128, 63);
350
- f(16384, 64);
351
- f(16640, 65);
352
- f(32512, 127);
353
- f(32768, 128);
354
- f(33024, 129);
355
- f(65280, 255);
356
- f(65536, 256);
357
- x = 257;
358
- f(0, 0);
359
- f(257, 1);
360
- f(514, 2);
361
- f(771, 3);
362
- f(1028, 4);
363
- f(1285, 5);
364
- f(1799, 7);
365
- f(2056, 8);
366
- f(2313, 9);
367
- f(3855, 15);
368
- f(4112, 16);
369
- f(4369, 17);
370
- f(7967, 31);
371
- f(8224, 32);
372
- f(8481, 33);
373
- f(16191, 63);
374
- f(16448, 64);
375
- f(16705, 65);
376
- f(32639, 127);
377
- f(32896, 128);
378
- f(33153, 129);
379
- f(65535, 255);
380
- f(65792, 256);
381
- f(66049, 257);
382
- x = 511;
383
- f(0, 0);
384
- f(511, 1);
385
- f(1022, 2);
386
- f(1533, 3);
387
- f(2044, 4);
388
- f(2555, 5);
389
- f(3577, 7);
390
- f(4088, 8);
391
- f(4599, 9);
392
- f(7665, 15);
393
- f(8176, 16);
394
- f(8687, 17);
395
- f(15841, 31);
396
- f(16352, 32);
397
- f(16863, 33);
398
- f(32193, 63);
399
- f(32704, 64);
400
- f(33215, 65);
401
- f(64897, 127);
402
- f(65408, 128);
403
- f(65919, 129);
404
- f(130305, 255);
405
- f(130816, 256);
406
- f(131327, 257);
407
- f(261121, 511);
408
- x = 512;
409
- f(0, 0);
410
- f(512, 1);
411
- f(1024, 2);
412
- f(1536, 3);
413
- f(2048, 4);
414
- f(2560, 5);
415
- f(3584, 7);
416
- f(4096, 8);
417
- f(4608, 9);
418
- f(7680, 15);
419
- f(8192, 16);
420
- f(8704, 17);
421
- f(15872, 31);
422
- f(16384, 32);
423
- f(16896, 33);
424
- f(32256, 63);
425
- f(32768, 64);
426
- f(33280, 65);
427
- f(65024, 127);
428
- f(65536, 128);
429
- f(66048, 129);
430
- f(130560, 255);
431
- f(131072, 256);
432
- f(131584, 257);
433
- f(261632, 511);
434
- f(262144, 512);
435
- x = 513;
436
- f(0, 0);
437
- f(513, 1);
438
- f(1026, 2);
439
- f(1539, 3);
440
- f(2052, 4);
441
- f(2565, 5);
442
- f(3591, 7);
443
- f(4104, 8);
444
- f(4617, 9);
445
- f(7695, 15);
446
- f(8208, 16);
447
- f(8721, 17);
448
- f(15903, 31);
449
- f(16416, 32);
450
- f(16929, 33);
451
- f(32319, 63);
452
- f(32832, 64);
453
- f(33345, 65);
454
- f(65151, 127);
455
- f(65664, 128);
456
- f(66177, 129);
457
- f(130815, 255);
458
- f(131328, 256);
459
- f(131841, 257);
460
- f(262143, 511);
461
- f(262656, 512);
462
- f(263169, 513);
463
- x = 1023;
464
- f(0, 0);
465
- f(1023, 1);
466
- f(2046, 2);
467
- f(3069, 3);
468
- f(4092, 4);
469
- f(5115, 5);
470
- f(7161, 7);
471
- f(8184, 8);
472
- f(9207, 9);
473
- f(15345, 15);
474
- f(16368, 16);
475
- f(17391, 17);
476
- f(31713, 31);
477
- f(32736, 32);
478
- f(33759, 33);
479
- f(64449, 63);
480
- f(65472, 64);
481
- f(66495, 65);
482
- f(129921, 127);
483
- f(130944, 128);
484
- f(131967, 129);
485
- f(260865, 255);
486
- f(261888, 256);
487
- f(262911, 257);
488
- f(522753, 511);
489
- f(523776, 512);
490
- f(524799, 513);
491
- f(1046529, 1023);
492
- x = 1024;
493
- f(0, 0);
494
- f(1024, 1);
495
- f(2048, 2);
496
- f(3072, 3);
497
- f(4096, 4);
498
- f(5120, 5);
499
- f(7168, 7);
500
- f(8192, 8);
501
- f(9216, 9);
502
- f(15360, 15);
503
- f(16384, 16);
504
- f(17408, 17);
505
- f(31744, 31);
506
- f(32768, 32);
507
- f(33792, 33);
508
- f(64512, 63);
509
- f(65536, 64);
510
- f(66560, 65);
511
- f(130048, 127);
512
- f(131072, 128);
513
- f(132096, 129);
514
- f(261120, 255);
515
- f(262144, 256);
516
- f(263168, 257);
517
- f(523264, 511);
518
- f(524288, 512);
519
- f(525312, 513);
520
- f(1047552, 1023);
521
- f(1048576, 1024);
522
- x = 1025;
523
- f(0, 0);
524
- f(1025, 1);
525
- f(2050, 2);
526
- f(3075, 3);
527
- f(4100, 4);
528
- f(5125, 5);
529
- f(7175, 7);
530
- f(8200, 8);
531
- f(9225, 9);
532
- f(15375, 15);
533
- f(16400, 16);
534
- f(17425, 17);
535
- f(31775, 31);
536
- f(32800, 32);
537
- f(33825, 33);
538
- f(64575, 63);
539
- f(65600, 64);
540
- f(66625, 65);
541
- f(130175, 127);
542
- f(131200, 128);
543
- f(132225, 129);
544
- f(261375, 255);
545
- f(262400, 256);
546
- f(263425, 257);
547
- f(523775, 511);
548
- f(524800, 512);
549
- f(525825, 513);
550
- f(1048575, 1023);
551
- f(1049600, 1024);
552
- f(1050625, 1025);
553
- x = 2047;
554
- f(0, 0);
555
- f(2047, 1);
556
- f(4094, 2);
557
- f(6141, 3);
558
- f(8188, 4);
559
- f(10235, 5);
560
- f(14329, 7);
561
- f(16376, 8);
562
- f(18423, 9);
563
- f(30705, 15);
564
- f(32752, 16);
565
- f(34799, 17);
566
- f(63457, 31);
567
- f(65504, 32);
568
- f(67551, 33);
569
- f(128961, 63);
570
- f(131008, 64);
571
- f(133055, 65);
572
- f(259969, 127);
573
- f(262016, 128);
574
- f(264063, 129);
575
- f(521985, 255);
576
- f(524032, 256);
577
- f(526079, 257);
578
- f(1046017, 511);
579
- f(1048064, 512);
580
- f(1050111, 513);
581
- f(2094081, 1023);
582
- f(2096128, 1024);
583
- f(2098175, 1025);
584
- f(4190209, 2047);
585
- x = 2048;
586
- f(0, 0);
587
- f(2048, 1);
588
- f(4096, 2);
589
- f(6144, 3);
590
- f(8192, 4);
591
- f(10240, 5);
592
- f(14336, 7);
593
- f(16384, 8);
594
- f(18432, 9);
595
- f(30720, 15);
596
- f(32768, 16);
597
- f(34816, 17);
598
- f(63488, 31);
599
- f(65536, 32);
600
- f(67584, 33);
601
- f(129024, 63);
602
- f(131072, 64);
603
- f(133120, 65);
604
- f(260096, 127);
605
- f(262144, 128);
606
- f(264192, 129);
607
- f(522240, 255);
608
- f(524288, 256);
609
- f(526336, 257);
610
- f(1046528, 511);
611
- f(1048576, 512);
612
- f(1050624, 513);
613
- f(2095104, 1023);
614
- f(2097152, 1024);
615
- f(2099200, 1025);
616
- f(4192256, 2047);
617
- f(4194304, 2048);
618
- x = 2049;
619
- f(0, 0);
620
- f(2049, 1);
621
- f(4098, 2);
622
- f(6147, 3);
623
- f(8196, 4);
624
- f(10245, 5);
625
- f(14343, 7);
626
- f(16392, 8);
627
- f(18441, 9);
628
- f(30735, 15);
629
- f(32784, 16);
630
- f(34833, 17);
631
- f(63519, 31);
632
- f(65568, 32);
633
- f(67617, 33);
634
- f(129087, 63);
635
- f(131136, 64);
636
- f(133185, 65);
637
- f(260223, 127);
638
- f(262272, 128);
639
- f(264321, 129);
640
- f(522495, 255);
641
- f(524544, 256);
642
- f(526593, 257);
643
- f(1047039, 511);
644
- f(1049088, 512);
645
- f(1051137, 513);
646
- f(2096127, 1023);
647
- f(2098176, 1024);
648
- f(2100225, 1025);
649
- f(4194303, 2047);
650
- f(4196352, 2048);
651
- f(4198401, 2049);
652
- x = 4095;
653
- f(0, 0);
654
- f(4095, 1);
655
- f(8190, 2);
656
- f(12285, 3);
657
- f(16380, 4);
658
- f(20475, 5);
659
- f(28665, 7);
660
- f(32760, 8);
661
- f(36855, 9);
662
- f(61425, 15);
663
- f(65520, 16);
664
- f(69615, 17);
665
- f(126945, 31);
666
- f(131040, 32);
667
- f(135135, 33);
668
- f(257985, 63);
669
- f(262080, 64);
670
- f(266175, 65);
671
- f(520065, 127);
672
- f(524160, 128);
673
- f(528255, 129);
674
- f(1044225, 255);
675
- f(1048320, 256);
676
- f(1052415, 257);
677
- f(2092545, 511);
678
- f(2096640, 512);
679
- f(2100735, 513);
680
- f(4189185, 1023);
681
- f(4193280, 1024);
682
- f(4197375, 1025);
683
- f(8382465, 2047);
684
- f(8386560, 2048);
685
- f(8390655, 2049);
686
- f(16769025, 4095);
687
- x = 4096;
688
- f(0, 0);
689
- f(4096, 1);
690
- f(8192, 2);
691
- f(12288, 3);
692
- f(16384, 4);
693
- f(20480, 5);
694
- f(28672, 7);
695
- f(32768, 8);
696
- f(36864, 9);
697
- f(61440, 15);
698
- f(65536, 16);
699
- f(69632, 17);
700
- f(126976, 31);
701
- f(131072, 32);
702
- f(135168, 33);
703
- f(258048, 63);
704
- f(262144, 64);
705
- f(266240, 65);
706
- f(520192, 127);
707
- f(524288, 128);
708
- f(528384, 129);
709
- f(1044480, 255);
710
- f(1048576, 256);
711
- f(1052672, 257);
712
- f(2093056, 511);
713
- f(2097152, 512);
714
- f(2101248, 513);
715
- f(4190208, 1023);
716
- f(4194304, 1024);
717
- f(4198400, 1025);
718
- f(8384512, 2047);
719
- f(8388608, 2048);
720
- f(8392704, 2049);
721
- f(16773120, 4095);
722
- f(16777216, 4096);
723
- x = 4097;
724
- f(0, 0);
725
- f(4097, 1);
726
- f(8194, 2);
727
- f(12291, 3);
728
- f(16388, 4);
729
- f(20485, 5);
730
- f(28679, 7);
731
- f(32776, 8);
732
- f(36873, 9);
733
- f(61455, 15);
734
- f(65552, 16);
735
- f(69649, 17);
736
- f(127007, 31);
737
- f(131104, 32);
738
- f(135201, 33);
739
- f(258111, 63);
740
- f(262208, 64);
741
- f(266305, 65);
742
- f(520319, 127);
743
- f(524416, 128);
744
- f(528513, 129);
745
- f(1044735, 255);
746
- f(1048832, 256);
747
- f(1052929, 257);
748
- f(2093567, 511);
749
- f(2097664, 512);
750
- f(2101761, 513);
751
- f(4191231, 1023);
752
- f(4195328, 1024);
753
- f(4199425, 1025);
754
- f(8386559, 2047);
755
- f(8390656, 2048);
756
- f(8394753, 2049);
757
- f(16777215, 4095);
758
- f(16781312, 4096);
759
- f(16785409, 4097);
760
- x = 8191;
761
- f(0, 0);
762
- f(8191, 1);
763
- f(16382, 2);
764
- f(24573, 3);
765
- f(32764, 4);
766
- f(40955, 5);
767
- f(57337, 7);
768
- f(65528, 8);
769
- f(73719, 9);
770
- f(122865, 15);
771
- f(131056, 16);
772
- f(139247, 17);
773
- f(253921, 31);
774
- f(262112, 32);
775
- f(270303, 33);
776
- f(516033, 63);
777
- f(524224, 64);
778
- f(532415, 65);
779
- f(1040257, 127);
780
- f(1048448, 128);
781
- f(1056639, 129);
782
- f(2088705, 255);
783
- f(2096896, 256);
784
- f(2105087, 257);
785
- f(4185601, 511);
786
- f(4193792, 512);
787
- f(4201983, 513);
788
- f(8379393, 1023);
789
- f(8387584, 1024);
790
- f(8395775, 1025);
791
- f(16766977, 2047);
792
- f(16775168, 2048);
793
- f(16783359, 2049);
794
- f(33542145, 4095);
795
- f(33550336, 4096);
796
- f(33558527, 4097);
797
- f(67092481, 8191);
798
- x = 8192;
799
- f(0, 0);
800
- f(8192, 1);
801
- f(16384, 2);
802
- f(24576, 3);
803
- f(32768, 4);
804
- f(40960, 5);
805
- f(57344, 7);
806
- f(65536, 8);
807
- f(73728, 9);
808
- f(122880, 15);
809
- f(131072, 16);
810
- f(139264, 17);
811
- f(253952, 31);
812
- f(262144, 32);
813
- f(270336, 33);
814
- f(516096, 63);
815
- f(524288, 64);
816
- f(532480, 65);
817
- f(1040384, 127);
818
- f(1048576, 128);
819
- f(1056768, 129);
820
- f(2088960, 255);
821
- f(2097152, 256);
822
- f(2105344, 257);
823
- f(4186112, 511);
824
- f(4194304, 512);
825
- f(4202496, 513);
826
- f(8380416, 1023);
827
- f(8388608, 1024);
828
- f(8396800, 1025);
829
- f(16769024, 2047);
830
- f(16777216, 2048);
831
- f(16785408, 2049);
832
- f(33546240, 4095);
833
- f(33554432, 4096);
834
- f(33562624, 4097);
835
- f(67100672, 8191);
836
- f(67108864, 8192);
837
- x = 8193;
838
- f(0, 0);
839
- f(8193, 1);
840
- f(16386, 2);
841
- f(24579, 3);
842
- f(32772, 4);
843
- f(40965, 5);
844
- f(57351, 7);
845
- f(65544, 8);
846
- f(73737, 9);
847
- f(122895, 15);
848
- f(131088, 16);
849
- f(139281, 17);
850
- f(253983, 31);
851
- f(262176, 32);
852
- f(270369, 33);
853
- f(516159, 63);
854
- f(524352, 64);
855
- f(532545, 65);
856
- f(1040511, 127);
857
- f(1048704, 128);
858
- f(1056897, 129);
859
- f(2089215, 255);
860
- f(2097408, 256);
861
- f(2105601, 257);
862
- f(4186623, 511);
863
- f(4194816, 512);
864
- f(4203009, 513);
865
- f(8381439, 1023);
866
- f(8389632, 1024);
867
- f(8397825, 1025);
868
- f(16771071, 2047);
869
- f(16779264, 2048);
870
- f(16787457, 2049);
871
- f(33550335, 4095);
872
- f(33558528, 4096);
873
- f(33566721, 4097);
874
- f(67108863, 8191);
875
- f(67117056, 8192);
876
- f(67125249, 8193);
877
- x = 16383;
878
- f(0, 0);
879
- f(16383, 1);
880
- f(32766, 2);
881
- f(49149, 3);
882
- f(65532, 4);
883
- f(81915, 5);
884
- f(114681, 7);
885
- f(131064, 8);
886
- f(147447, 9);
887
- f(245745, 15);
888
- f(262128, 16);
889
- f(278511, 17);
890
- f(507873, 31);
891
- f(524256, 32);
892
- f(540639, 33);
893
- f(1032129, 63);
894
- f(1048512, 64);
895
- f(1064895, 65);
896
- f(2080641, 127);
897
- f(2097024, 128);
898
- f(2113407, 129);
899
- f(4177665, 255);
900
- f(4194048, 256);
901
- f(4210431, 257);
902
- f(8371713, 511);
903
- f(8388096, 512);
904
- f(8404479, 513);
905
- f(16759809, 1023);
906
- f(16776192, 1024);
907
- f(16792575, 1025);
908
- f(33536001, 2047);
909
- f(33552384, 2048);
910
- f(33568767, 2049);
911
- f(67088385, 4095);
912
- f(67104768, 4096);
913
- f(67121151, 4097);
914
- f(134193153, 8191);
915
- f(134209536, 8192);
916
- f(134225919, 8193);
917
- f(268402689, 16383);
918
- x = 16384;
919
- f(0, 0);
920
- f(16384, 1);
921
- f(32768, 2);
922
- f(49152, 3);
923
- f(65536, 4);
924
- f(81920, 5);
925
- f(114688, 7);
926
- f(131072, 8);
927
- f(147456, 9);
928
- f(245760, 15);
929
- f(262144, 16);
930
- f(278528, 17);
931
- f(507904, 31);
932
- f(524288, 32);
933
- f(540672, 33);
934
- f(1032192, 63);
935
- f(1048576, 64);
936
- f(1064960, 65);
937
- f(2080768, 127);
938
- f(2097152, 128);
939
- f(2113536, 129);
940
- f(4177920, 255);
941
- f(4194304, 256);
942
- f(4210688, 257);
943
- f(8372224, 511);
944
- f(8388608, 512);
945
- f(8404992, 513);
946
- f(16760832, 1023);
947
- f(16777216, 1024);
948
- f(16793600, 1025);
949
- f(33538048, 2047);
950
- f(33554432, 2048);
951
- f(33570816, 2049);
952
- f(67092480, 4095);
953
- f(67108864, 4096);
954
- f(67125248, 4097);
955
- f(134201344, 8191);
956
- f(134217728, 8192);
957
- f(134234112, 8193);
958
- f(268419072, 16383);
959
- f(268435456, 16384);
960
- x = 16385;
961
- f(0, 0);
962
- f(16385, 1);
963
- f(32770, 2);
964
- f(49155, 3);
965
- f(65540, 4);
966
- f(81925, 5);
967
- f(114695, 7);
968
- f(131080, 8);
969
- f(147465, 9);
970
- f(245775, 15);
971
- f(262160, 16);
972
- f(278545, 17);
973
- f(507935, 31);
974
- f(524320, 32);
975
- f(540705, 33);
976
- f(1032255, 63);
977
- f(1048640, 64);
978
- f(1065025, 65);
979
- f(2080895, 127);
980
- f(2097280, 128);
981
- f(2113665, 129);
982
- f(4178175, 255);
983
- f(4194560, 256);
984
- f(4210945, 257);
985
- f(8372735, 511);
986
- f(8389120, 512);
987
- f(8405505, 513);
988
- f(16761855, 1023);
989
- f(16778240, 1024);
990
- f(16794625, 1025);
991
- f(33540095, 2047);
992
- f(33556480, 2048);
993
- f(33572865, 2049);
994
- f(67096575, 4095);
995
- f(67112960, 4096);
996
- f(67129345, 4097);
997
- f(134209535, 8191);
998
- f(134225920, 8192);
999
- f(134242305, 8193);
1000
- f(268435455, 16383);
1001
- f(268451840, 16384);
1002
- f(268468225, 16385);
1003
- x = 32767;
1004
- f(0, 0);
1005
- f(32767, 1);
1006
- f(65534, 2);
1007
- f(98301, 3);
1008
- f(131068, 4);
1009
- f(163835, 5);
1010
- f(229369, 7);
1011
- f(262136, 8);
1012
- f(294903, 9);
1013
- f(491505, 15);
1014
- f(524272, 16);
1015
- f(557039, 17);
1016
- f(1015777, 31);
1017
- f(1048544, 32);
1018
- f(1081311, 33);
1019
- f(2064321, 63);
1020
- f(2097088, 64);
1021
- f(2129855, 65);
1022
- f(4161409, 127);
1023
- f(4194176, 128);
1024
- f(4226943, 129);
1025
- f(8355585, 255);
1026
- f(8388352, 256);
1027
- f(8421119, 257);
1028
- f(16743937, 511);
1029
- f(16776704, 512);
1030
- f(16809471, 513);
1031
- f(33520641, 1023);
1032
- f(33553408, 1024);
1033
- f(33586175, 1025);
1034
- f(67074049, 2047);
1035
- f(67106816, 2048);
1036
- f(67139583, 2049);
1037
- f(134180865, 4095);
1038
- f(134213632, 4096);
1039
- f(134246399, 4097);
1040
- f(268394497, 8191);
1041
- f(268427264, 8192);
1042
- f(268460031, 8193);
1043
- f(536821761, 16383);
1044
- f(536854528, 16384);
1045
- f(536887295, 16385);
1046
- f(1073676289, 32767);
1047
- x = 32768;
1048
- f(0, 0);
1049
- f(32768, 1);
1050
- f(65536, 2);
1051
- f(98304, 3);
1052
- f(131072, 4);
1053
- f(163840, 5);
1054
- f(229376, 7);
1055
- f(262144, 8);
1056
- f(294912, 9);
1057
- f(491520, 15);
1058
- f(524288, 16);
1059
- f(557056, 17);
1060
- f(1015808, 31);
1061
- f(1048576, 32);
1062
- f(1081344, 33);
1063
- f(2064384, 63);
1064
- f(2097152, 64);
1065
- f(2129920, 65);
1066
- f(4161536, 127);
1067
- f(4194304, 128);
1068
- f(4227072, 129);
1069
- f(8355840, 255);
1070
- f(8388608, 256);
1071
- f(8421376, 257);
1072
- f(16744448, 511);
1073
- f(16777216, 512);
1074
- f(16809984, 513);
1075
- f(33521664, 1023);
1076
- f(33554432, 1024);
1077
- f(33587200, 1025);
1078
- f(67076096, 2047);
1079
- f(67108864, 2048);
1080
- f(67141632, 2049);
1081
- f(134184960, 4095);
1082
- f(134217728, 4096);
1083
- f(134250496, 4097);
1084
- f(268402688, 8191);
1085
- f(268435456, 8192);
1086
- f(268468224, 8193);
1087
- f(536838144, 16383);
1088
- f(536870912, 16384);
1089
- f(536903680, 16385);
1090
- f(1073709056, 32767);
1091
- f(1073741824, 32768);
1092
- x = 32769;
1093
- f(0, 0);
1094
- f(32769, 1);
1095
- f(65538, 2);
1096
- f(98307, 3);
1097
- f(131076, 4);
1098
- f(163845, 5);
1099
- f(229383, 7);
1100
- f(262152, 8);
1101
- f(294921, 9);
1102
- f(491535, 15);
1103
- f(524304, 16);
1104
- f(557073, 17);
1105
- f(1015839, 31);
1106
- f(1048608, 32);
1107
- f(1081377, 33);
1108
- f(2064447, 63);
1109
- f(2097216, 64);
1110
- f(2129985, 65);
1111
- f(4161663, 127);
1112
- f(4194432, 128);
1113
- f(4227201, 129);
1114
- f(8356095, 255);
1115
- f(8388864, 256);
1116
- f(8421633, 257);
1117
- f(16744959, 511);
1118
- f(16777728, 512);
1119
- f(16810497, 513);
1120
- f(33522687, 1023);
1121
- f(33555456, 1024);
1122
- f(33588225, 1025);
1123
- f(67078143, 2047);
1124
- f(67110912, 2048);
1125
- f(67143681, 2049);
1126
- f(134189055, 4095);
1127
- f(134221824, 4096);
1128
- f(134254593, 4097);
1129
- f(268410879, 8191);
1130
- f(268443648, 8192);
1131
- f(268476417, 8193);
1132
- f(536854527, 16383);
1133
- f(536887296, 16384);
1134
- f(536920065, 16385);
1135
- f(1073741823, 32767);
1136
- f(1073774592, 32768);
1137
- f(1073807361, 32769);
1138
- x = 65535;
1139
- f(0, 0);
1140
- f(65535, 1);
1141
- f(131070, 2);
1142
- f(196605, 3);
1143
- f(262140, 4);
1144
- f(327675, 5);
1145
- f(458745, 7);
1146
- f(524280, 8);
1147
- f(589815, 9);
1148
- f(983025, 15);
1149
- f(1048560, 16);
1150
- f(1114095, 17);
1151
- f(2031585, 31);
1152
- f(2097120, 32);
1153
- f(2162655, 33);
1154
- f(4128705, 63);
1155
- f(4194240, 64);
1156
- f(4259775, 65);
1157
- f(8322945, 127);
1158
- f(8388480, 128);
1159
- f(8454015, 129);
1160
- f(16711425, 255);
1161
- f(16776960, 256);
1162
- f(16842495, 257);
1163
- f(33488385, 511);
1164
- f(33553920, 512);
1165
- f(33619455, 513);
1166
- f(67042305, 1023);
1167
- f(67107840, 1024);
1168
- f(67173375, 1025);
1169
- f(134150145, 2047);
1170
- f(134215680, 2048);
1171
- f(134281215, 2049);
1172
- f(268365825, 4095);
1173
- f(268431360, 4096);
1174
- f(268496895, 4097);
1175
- f(536797185, 8191);
1176
- f(536862720, 8192);
1177
- f(536928255, 8193);
1178
- f(1073659905, 16383);
1179
- f(1073725440, 16384);
1180
- f(1073790975, 16385);
1181
- f(2147385345, 32767);
1182
- f(2147450880, 32768);
1183
- f(2147516415, 32769);
1184
- f(4294836225, 65535);
1185
- x = 65536;
1186
- f(0, 0);
1187
- f(65536, 1);
1188
- f(131072, 2);
1189
- f(196608, 3);
1190
- f(262144, 4);
1191
- f(327680, 5);
1192
- f(458752, 7);
1193
- f(524288, 8);
1194
- f(589824, 9);
1195
- f(983040, 15);
1196
- f(1048576, 16);
1197
- f(1114112, 17);
1198
- f(2031616, 31);
1199
- f(2097152, 32);
1200
- f(2162688, 33);
1201
- f(4128768, 63);
1202
- f(4194304, 64);
1203
- f(4259840, 65);
1204
- f(8323072, 127);
1205
- f(8388608, 128);
1206
- f(8454144, 129);
1207
- f(16711680, 255);
1208
- f(16777216, 256);
1209
- f(16842752, 257);
1210
- f(33488896, 511);
1211
- f(33554432, 512);
1212
- f(33619968, 513);
1213
- f(67043328, 1023);
1214
- f(67108864, 1024);
1215
- f(67174400, 1025);
1216
- f(134152192, 2047);
1217
- f(134217728, 2048);
1218
- f(134283264, 2049);
1219
- f(268369920, 4095);
1220
- f(268435456, 4096);
1221
- f(268500992, 4097);
1222
- f(536805376, 8191);
1223
- f(536870912, 8192);
1224
- f(536936448, 8193);
1225
- f(1073676288, 16383);
1226
- f(1073741824, 16384);
1227
- f(1073807360, 16385);
1228
- f(2147418112, 32767);
1229
- f(2147483648, 32768);
1230
- f(2147549184, 32769);
1231
- f(4294901760, 65535);
1232
- f(4294967296, 65536);
1233
- x = 65537;
1234
- f(0, 0);
1235
- f(65537, 1);
1236
- f(131074, 2);
1237
- f(196611, 3);
1238
- f(262148, 4);
1239
- f(327685, 5);
1240
- f(458759, 7);
1241
- f(524296, 8);
1242
- f(589833, 9);
1243
- f(983055, 15);
1244
- f(1048592, 16);
1245
- f(1114129, 17);
1246
- f(2031647, 31);
1247
- f(2097184, 32);
1248
- f(2162721, 33);
1249
- f(4128831, 63);
1250
- f(4194368, 64);
1251
- f(4259905, 65);
1252
- f(8323199, 127);
1253
- f(8388736, 128);
1254
- f(8454273, 129);
1255
- f(16711935, 255);
1256
- f(16777472, 256);
1257
- f(16843009, 257);
1258
- f(33489407, 511);
1259
- f(33554944, 512);
1260
- f(33620481, 513);
1261
- f(67044351, 1023);
1262
- f(67109888, 1024);
1263
- f(67175425, 1025);
1264
- f(134154239, 2047);
1265
- f(134219776, 2048);
1266
- f(134285313, 2049);
1267
- f(268374015, 4095);
1268
- f(268439552, 4096);
1269
- f(268505089, 4097);
1270
- f(536813567, 8191);
1271
- f(536879104, 8192);
1272
- f(536944641, 8193);
1273
- f(1073692671, 16383);
1274
- f(1073758208, 16384);
1275
- f(1073823745, 16385);
1276
- f(2147450879, 32767);
1277
- f(2147516416, 32768);
1278
- f(2147581953, 32769);
1279
- f(4294967295, 65535);
1280
- f(4295032832, 65536);
1281
- f(4295098369, 65537);
1282
- x = 131071;
1283
- f(0, 0);
1284
- f(131071, 1);
1285
- f(262142, 2);
1286
- f(393213, 3);
1287
- f(524284, 4);
1288
- f(655355, 5);
1289
- f(917497, 7);
1290
- f(1048568, 8);
1291
- f(1179639, 9);
1292
- f(1966065, 15);
1293
- f(2097136, 16);
1294
- f(2228207, 17);
1295
- f(4063201, 31);
1296
- f(4194272, 32);
1297
- f(4325343, 33);
1298
- f(8257473, 63);
1299
- f(8388544, 64);
1300
- f(8519615, 65);
1301
- f(16646017, 127);
1302
- f(16777088, 128);
1303
- f(16908159, 129);
1304
- f(33423105, 255);
1305
- f(33554176, 256);
1306
- f(33685247, 257);
1307
- f(66977281, 511);
1308
- f(67108352, 512);
1309
- f(67239423, 513);
1310
- f(134085633, 1023);
1311
- f(134216704, 1024);
1312
- f(134347775, 1025);
1313
- f(268302337, 2047);
1314
- f(268433408, 2048);
1315
- f(268564479, 2049);
1316
- f(536735745, 4095);
1317
- f(536866816, 4096);
1318
- f(536997887, 4097);
1319
- f(1073602561, 8191);
1320
- f(1073733632, 8192);
1321
- f(1073864703, 8193);
1322
- f(2147336193, 16383);
1323
- f(2147467264, 16384);
1324
- f(2147598335, 16385);
1325
- f(4294803457, 32767);
1326
- f(4294934528, 32768);
1327
- f(4295065599, 32769);
1328
- f(8589737985, 65535);
1329
- f(8589869056, 65536);
1330
- f(8590000127, 65537);
1331
- f(17179607041, 131071);
1332
- x = 131072;
1333
- f(0, 0);
1334
- f(131072, 1);
1335
- f(262144, 2);
1336
- f(393216, 3);
1337
- f(524288, 4);
1338
- f(655360, 5);
1339
- f(917504, 7);
1340
- f(1048576, 8);
1341
- f(1179648, 9);
1342
- f(1966080, 15);
1343
- f(2097152, 16);
1344
- f(2228224, 17);
1345
- f(4063232, 31);
1346
- f(4194304, 32);
1347
- f(4325376, 33);
1348
- f(8257536, 63);
1349
- f(8388608, 64);
1350
- f(8519680, 65);
1351
- f(16646144, 127);
1352
- f(16777216, 128);
1353
- f(16908288, 129);
1354
- f(33423360, 255);
1355
- f(33554432, 256);
1356
- f(33685504, 257);
1357
- f(66977792, 511);
1358
- f(67108864, 512);
1359
- f(67239936, 513);
1360
- f(134086656, 1023);
1361
- f(134217728, 1024);
1362
- f(134348800, 1025);
1363
- f(268304384, 2047);
1364
- f(268435456, 2048);
1365
- f(268566528, 2049);
1366
- f(536739840, 4095);
1367
- f(536870912, 4096);
1368
- f(537001984, 4097);
1369
- f(1073610752, 8191);
1370
- f(1073741824, 8192);
1371
- f(1073872896, 8193);
1372
- f(2147352576, 16383);
1373
- f(2147483648, 16384);
1374
- f(2147614720, 16385);
1375
- f(4294836224, 32767);
1376
- f(4294967296, 32768);
1377
- f(4295098368, 32769);
1378
- f(8589803520, 65535);
1379
- f(8589934592, 65536);
1380
- f(8590065664, 65537);
1381
- f(17179738112, 131071);
1382
- f(17179869184, 131072);
1383
- x = 131073;
1384
- f(0, 0);
1385
- f(131073, 1);
1386
- f(262146, 2);
1387
- f(393219, 3);
1388
- f(524292, 4);
1389
- f(655365, 5);
1390
- f(917511, 7);
1391
- f(1048584, 8);
1392
- f(1179657, 9);
1393
- f(1966095, 15);
1394
- f(2097168, 16);
1395
- f(2228241, 17);
1396
- f(4063263, 31);
1397
- f(4194336, 32);
1398
- f(4325409, 33);
1399
- f(8257599, 63);
1400
- f(8388672, 64);
1401
- f(8519745, 65);
1402
- f(16646271, 127);
1403
- f(16777344, 128);
1404
- f(16908417, 129);
1405
- f(33423615, 255);
1406
- f(33554688, 256);
1407
- f(33685761, 257);
1408
- f(66978303, 511);
1409
- f(67109376, 512);
1410
- f(67240449, 513);
1411
- f(134087679, 1023);
1412
- f(134218752, 1024);
1413
- f(134349825, 1025);
1414
- f(268306431, 2047);
1415
- f(268437504, 2048);
1416
- f(268568577, 2049);
1417
- f(536743935, 4095);
1418
- f(536875008, 4096);
1419
- f(537006081, 4097);
1420
- f(1073618943, 8191);
1421
- f(1073750016, 8192);
1422
- f(1073881089, 8193);
1423
- f(2147368959, 16383);
1424
- f(2147500032, 16384);
1425
- f(2147631105, 16385);
1426
- f(4294868991, 32767);
1427
- f(4295000064, 32768);
1428
- f(4295131137, 32769);
1429
- f(8589869055, 65535);
1430
- f(8590000128, 65536);
1431
- f(8590131201, 65537);
1432
- f(17179869183, 131071);
1433
- f(17180000256, 131072);
1434
- f(17180131329, 131073);
1435
- x = 262143;
1436
- f(0, 0);
1437
- f(262143, 1);
1438
- f(524286, 2);
1439
- f(786429, 3);
1440
- f(1048572, 4);
1441
- f(1310715, 5);
1442
- f(1835001, 7);
1443
- f(2097144, 8);
1444
- f(2359287, 9);
1445
- f(3932145, 15);
1446
- f(4194288, 16);
1447
- f(4456431, 17);
1448
- f(8126433, 31);
1449
- f(8388576, 32);
1450
- f(8650719, 33);
1451
- f(16515009, 63);
1452
- f(16777152, 64);
1453
- f(17039295, 65);
1454
- f(33292161, 127);
1455
- f(33554304, 128);
1456
- f(33816447, 129);
1457
- f(66846465, 255);
1458
- f(67108608, 256);
1459
- f(67370751, 257);
1460
- f(133955073, 511);
1461
- f(134217216, 512);
1462
- f(134479359, 513);
1463
- f(268172289, 1023);
1464
- f(268434432, 1024);
1465
- f(268696575, 1025);
1466
- f(536606721, 2047);
1467
- f(536868864, 2048);
1468
- f(537131007, 2049);
1469
- f(1073475585, 4095);
1470
- f(1073737728, 4096);
1471
- f(1073999871, 4097);
1472
- f(2147213313, 8191);
1473
- f(2147475456, 8192);
1474
- f(2147737599, 8193);
1475
- f(4294688769, 16383);
1476
- f(4294950912, 16384);
1477
- f(4295213055, 16385);
1478
- f(8589639681, 32767);
1479
- f(8589901824, 32768);
1480
- f(8590163967, 32769);
1481
- f(17179541505, 65535);
1482
- f(17179803648, 65536);
1483
- f(17180065791, 65537);
1484
- f(34359345153, 131071);
1485
- f(34359607296, 131072);
1486
- f(34359869439, 131073);
1487
- f(68718952449, 262143);
1488
- x = 262144;
1489
- f(0, 0);
1490
- f(262144, 1);
1491
- f(524288, 2);
1492
- f(786432, 3);
1493
- f(1048576, 4);
1494
- f(1310720, 5);
1495
- f(1835008, 7);
1496
- f(2097152, 8);
1497
- f(2359296, 9);
1498
- f(3932160, 15);
1499
- f(4194304, 16);
1500
- f(4456448, 17);
1501
- f(8126464, 31);
1502
- f(8388608, 32);
1503
- f(8650752, 33);
1504
- f(16515072, 63);
1505
- f(16777216, 64);
1506
- f(17039360, 65);
1507
- f(33292288, 127);
1508
- f(33554432, 128);
1509
- f(33816576, 129);
1510
- f(66846720, 255);
1511
- f(67108864, 256);
1512
- f(67371008, 257);
1513
- f(133955584, 511);
1514
- f(134217728, 512);
1515
- f(134479872, 513);
1516
- f(268173312, 1023);
1517
- f(268435456, 1024);
1518
- f(268697600, 1025);
1519
- f(536608768, 2047);
1520
- f(536870912, 2048);
1521
- f(537133056, 2049);
1522
- f(1073479680, 4095);
1523
- f(1073741824, 4096);
1524
- f(1074003968, 4097);
1525
- f(2147221504, 8191);
1526
- f(2147483648, 8192);
1527
- f(2147745792, 8193);
1528
- f(4294705152, 16383);
1529
- f(4294967296, 16384);
1530
- f(4295229440, 16385);
1531
- f(8589672448, 32767);
1532
- f(8589934592, 32768);
1533
- f(8590196736, 32769);
1534
- f(17179607040, 65535);
1535
- f(17179869184, 65536);
1536
- f(17180131328, 65537);
1537
- f(34359476224, 131071);
1538
- f(34359738368, 131072);
1539
- f(34360000512, 131073);
1540
- f(68719214592, 262143);
1541
- f(68719476736, 262144);
1542
- x = 262145;
1543
- f(0, 0);
1544
- f(262145, 1);
1545
- f(524290, 2);
1546
- f(786435, 3);
1547
- f(1048580, 4);
1548
- f(1310725, 5);
1549
- f(1835015, 7);
1550
- f(2097160, 8);
1551
- f(2359305, 9);
1552
- f(3932175, 15);
1553
- f(4194320, 16);
1554
- f(4456465, 17);
1555
- f(8126495, 31);
1556
- f(8388640, 32);
1557
- f(8650785, 33);
1558
- f(16515135, 63);
1559
- f(16777280, 64);
1560
- f(17039425, 65);
1561
- f(33292415, 127);
1562
- f(33554560, 128);
1563
- f(33816705, 129);
1564
- f(66846975, 255);
1565
- f(67109120, 256);
1566
- f(67371265, 257);
1567
- f(133956095, 511);
1568
- f(134218240, 512);
1569
- f(134480385, 513);
1570
- f(268174335, 1023);
1571
- f(268436480, 1024);
1572
- f(268698625, 1025);
1573
- f(536610815, 2047);
1574
- f(536872960, 2048);
1575
- f(537135105, 2049);
1576
- f(1073483775, 4095);
1577
- f(1073745920, 4096);
1578
- f(1074008065, 4097);
1579
- f(2147229695, 8191);
1580
- f(2147491840, 8192);
1581
- f(2147753985, 8193);
1582
- f(4294721535, 16383);
1583
- f(4294983680, 16384);
1584
- f(4295245825, 16385);
1585
- f(8589705215, 32767);
1586
- f(8589967360, 32768);
1587
- f(8590229505, 32769);
1588
- f(17179672575, 65535);
1589
- f(17179934720, 65536);
1590
- f(17180196865, 65537);
1591
- f(34359607295, 131071);
1592
- f(34359869440, 131072);
1593
- f(34360131585, 131073);
1594
- f(68719476735, 262143);
1595
- f(68719738880, 262144);
1596
- f(68720001025, 262145);
1597
- x = 524287;
1598
- f(0, 0);
1599
- f(524287, 1);
1600
- f(1048574, 2);
1601
- f(1572861, 3);
1602
- f(2097148, 4);
1603
- f(2621435, 5);
1604
- f(3670009, 7);
1605
- f(4194296, 8);
1606
- f(4718583, 9);
1607
- f(7864305, 15);
1608
- f(8388592, 16);
1609
- f(8912879, 17);
1610
- f(16252897, 31);
1611
- f(16777184, 32);
1612
- f(17301471, 33);
1613
- f(33030081, 63);
1614
- f(33554368, 64);
1615
- f(34078655, 65);
1616
- f(66584449, 127);
1617
- f(67108736, 128);
1618
- f(67633023, 129);
1619
- f(133693185, 255);
1620
- f(134217472, 256);
1621
- f(134741759, 257);
1622
- f(267910657, 511);
1623
- f(268434944, 512);
1624
- f(268959231, 513);
1625
- f(536345601, 1023);
1626
- f(536869888, 1024);
1627
- f(537394175, 1025);
1628
- f(1073215489, 2047);
1629
- f(1073739776, 2048);
1630
- f(1074264063, 2049);
1631
- f(2146955265, 4095);
1632
- f(2147479552, 4096);
1633
- f(2148003839, 4097);
1634
- f(4294434817, 8191);
1635
- f(4294959104, 8192);
1636
- f(4295483391, 8193);
1637
- f(8589393921, 16383);
1638
- f(8589918208, 16384);
1639
- f(8590442495, 16385);
1640
- f(17179312129, 32767);
1641
- f(17179836416, 32768);
1642
- f(17180360703, 32769);
1643
- f(34359148545, 65535);
1644
- f(34359672832, 65536);
1645
- f(34360197119, 65537);
1646
- f(68718821377, 131071);
1647
- f(68719345664, 131072);
1648
- f(68719869951, 131073);
1649
- f(137438167041, 262143);
1650
- f(137438691328, 262144);
1651
- f(137439215615, 262145);
1652
- f(274876858369, 524287);
1653
- x = 524288;
1654
- f(0, 0);
1655
- f(524288, 1);
1656
- f(1048576, 2);
1657
- f(1572864, 3);
1658
- f(2097152, 4);
1659
- f(2621440, 5);
1660
- f(3670016, 7);
1661
- f(4194304, 8);
1662
- f(4718592, 9);
1663
- f(7864320, 15);
1664
- f(8388608, 16);
1665
- f(8912896, 17);
1666
- f(16252928, 31);
1667
- f(16777216, 32);
1668
- f(17301504, 33);
1669
- f(33030144, 63);
1670
- f(33554432, 64);
1671
- f(34078720, 65);
1672
- f(66584576, 127);
1673
- f(67108864, 128);
1674
- f(67633152, 129);
1675
- f(133693440, 255);
1676
- f(134217728, 256);
1677
- f(134742016, 257);
1678
- f(267911168, 511);
1679
- f(268435456, 512);
1680
- f(268959744, 513);
1681
- f(536346624, 1023);
1682
- f(536870912, 1024);
1683
- f(537395200, 1025);
1684
- f(1073217536, 2047);
1685
- f(1073741824, 2048);
1686
- f(1074266112, 2049);
1687
- f(2146959360, 4095);
1688
- f(2147483648, 4096);
1689
- f(2148007936, 4097);
1690
- f(4294443008, 8191);
1691
- f(4294967296, 8192);
1692
- f(4295491584, 8193);
1693
- f(8589410304, 16383);
1694
- f(8589934592, 16384);
1695
- f(8590458880, 16385);
1696
- f(17179344896, 32767);
1697
- f(17179869184, 32768);
1698
- f(17180393472, 32769);
1699
- f(34359214080, 65535);
1700
- f(34359738368, 65536);
1701
- f(34360262656, 65537);
1702
- f(68718952448, 131071);
1703
- f(68719476736, 131072);
1704
- f(68720001024, 131073);
1705
- f(137438429184, 262143);
1706
- f(137438953472, 262144);
1707
- f(137439477760, 262145);
1708
- f(274877382656, 524287);
1709
- f(274877906944, 524288);
1710
- x = 524289;
1711
- f(0, 0);
1712
- f(524289, 1);
1713
- f(1048578, 2);
1714
- f(1572867, 3);
1715
- f(2097156, 4);
1716
- f(2621445, 5);
1717
- f(3670023, 7);
1718
- f(4194312, 8);
1719
- f(4718601, 9);
1720
- f(7864335, 15);
1721
- f(8388624, 16);
1722
- f(8912913, 17);
1723
- f(16252959, 31);
1724
- f(16777248, 32);
1725
- f(17301537, 33);
1726
- f(33030207, 63);
1727
- f(33554496, 64);
1728
- f(34078785, 65);
1729
- f(66584703, 127);
1730
- f(67108992, 128);
1731
- f(67633281, 129);
1732
- f(133693695, 255);
1733
- f(134217984, 256);
1734
- f(134742273, 257);
1735
- f(267911679, 511);
1736
- f(268435968, 512);
1737
- f(268960257, 513);
1738
- f(536347647, 1023);
1739
- f(536871936, 1024);
1740
- f(537396225, 1025);
1741
- f(1073219583, 2047);
1742
- f(1073743872, 2048);
1743
- f(1074268161, 2049);
1744
- f(2146963455, 4095);
1745
- f(2147487744, 4096);
1746
- f(2148012033, 4097);
1747
- f(4294451199, 8191);
1748
- f(4294975488, 8192);
1749
- f(4295499777, 8193);
1750
- f(8589426687, 16383);
1751
- f(8589950976, 16384);
1752
- f(8590475265, 16385);
1753
- f(17179377663, 32767);
1754
- f(17179901952, 32768);
1755
- f(17180426241, 32769);
1756
- f(34359279615, 65535);
1757
- f(34359803904, 65536);
1758
- f(34360328193, 65537);
1759
- f(68719083519, 131071);
1760
- f(68719607808, 131072);
1761
- f(68720132097, 131073);
1762
- f(137438691327, 262143);
1763
- f(137439215616, 262144);
1764
- f(137439739905, 262145);
1765
- f(274877906943, 524287);
1766
- f(274878431232, 524288);
1767
- f(274878955521, 524289);
1768
- x = 1048575;
1769
- f(0, 0);
1770
- f(1048575, 1);
1771
- f(2097150, 2);
1772
- f(3145725, 3);
1773
- f(4194300, 4);
1774
- f(5242875, 5);
1775
- f(7340025, 7);
1776
- f(8388600, 8);
1777
- f(9437175, 9);
1778
- f(15728625, 15);
1779
- f(16777200, 16);
1780
- f(17825775, 17);
1781
- f(32505825, 31);
1782
- f(33554400, 32);
1783
- f(34602975, 33);
1784
- f(66060225, 63);
1785
- f(67108800, 64);
1786
- f(68157375, 65);
1787
- f(133169025, 127);
1788
- f(134217600, 128);
1789
- f(135266175, 129);
1790
- f(267386625, 255);
1791
- f(268435200, 256);
1792
- f(269483775, 257);
1793
- f(535821825, 511);
1794
- f(536870400, 512);
1795
- f(537918975, 513);
1796
- f(1072692225, 1023);
1797
- f(1073740800, 1024);
1798
- f(1074789375, 1025);
1799
- f(2146433025, 2047);
1800
- f(2147481600, 2048);
1801
- f(2148530175, 2049);
1802
- f(4293914625, 4095);
1803
- f(4294963200, 4096);
1804
- f(4296011775, 4097);
1805
- f(8588877825, 8191);
1806
- f(8589926400, 8192);
1807
- f(8590974975, 8193);
1808
- f(17178804225, 16383);
1809
- f(17179852800, 16384);
1810
- f(17180901375, 16385);
1811
- f(34358657025, 32767);
1812
- f(34359705600, 32768);
1813
- f(34360754175, 32769);
1814
- f(68718362625, 65535);
1815
- f(68719411200, 65536);
1816
- f(68720459775, 65537);
1817
- f(137437773825, 131071);
1818
- f(137438822400, 131072);
1819
- f(137439870975, 131073);
1820
- f(274876596225, 262143);
1821
- f(274877644800, 262144);
1822
- f(274878693375, 262145);
1823
- f(549754241025, 524287);
1824
- f(549755289600, 524288);
1825
- f(549756338175, 524289);
1826
- f(1099509530625, 1048575);
1827
- x = 1048576;
1828
- f(0, 0);
1829
- f(1048576, 1);
1830
- f(2097152, 2);
1831
- f(3145728, 3);
1832
- f(4194304, 4);
1833
- f(5242880, 5);
1834
- f(7340032, 7);
1835
- f(8388608, 8);
1836
- f(9437184, 9);
1837
- f(15728640, 15);
1838
- f(16777216, 16);
1839
- f(17825792, 17);
1840
- f(32505856, 31);
1841
- f(33554432, 32);
1842
- f(34603008, 33);
1843
- f(66060288, 63);
1844
- f(67108864, 64);
1845
- f(68157440, 65);
1846
- f(133169152, 127);
1847
- f(134217728, 128);
1848
- f(135266304, 129);
1849
- f(267386880, 255);
1850
- f(268435456, 256);
1851
- f(269484032, 257);
1852
- f(535822336, 511);
1853
- f(536870912, 512);
1854
- f(537919488, 513);
1855
- f(1072693248, 1023);
1856
- f(1073741824, 1024);
1857
- f(1074790400, 1025);
1858
- f(2146435072, 2047);
1859
- f(2147483648, 2048);
1860
- f(2148532224, 2049);
1861
- f(4293918720, 4095);
1862
- f(4294967296, 4096);
1863
- f(4296015872, 4097);
1864
- f(8588886016, 8191);
1865
- f(8589934592, 8192);
1866
- f(8590983168, 8193);
1867
- f(17178820608, 16383);
1868
- f(17179869184, 16384);
1869
- f(17180917760, 16385);
1870
- f(34358689792, 32767);
1871
- f(34359738368, 32768);
1872
- f(34360786944, 32769);
1873
- f(68718428160, 65535);
1874
- f(68719476736, 65536);
1875
- f(68720525312, 65537);
1876
- f(137437904896, 131071);
1877
- f(137438953472, 131072);
1878
- f(137440002048, 131073);
1879
- f(274876858368, 262143);
1880
- f(274877906944, 262144);
1881
- f(274878955520, 262145);
1882
- f(549754765312, 524287);
1883
- f(549755813888, 524288);
1884
- f(549756862464, 524289);
1885
- f(1099510579200, 1048575);
1886
- f(1099511627776, 1048576);
1887
- x = 1048577;
1888
- f(0, 0);
1889
- f(1048577, 1);
1890
- f(2097154, 2);
1891
- f(3145731, 3);
1892
- f(4194308, 4);
1893
- f(5242885, 5);
1894
- f(7340039, 7);
1895
- f(8388616, 8);
1896
- f(9437193, 9);
1897
- f(15728655, 15);
1898
- f(16777232, 16);
1899
- f(17825809, 17);
1900
- f(32505887, 31);
1901
- f(33554464, 32);
1902
- f(34603041, 33);
1903
- f(66060351, 63);
1904
- f(67108928, 64);
1905
- f(68157505, 65);
1906
- f(133169279, 127);
1907
- f(134217856, 128);
1908
- f(135266433, 129);
1909
- f(267387135, 255);
1910
- f(268435712, 256);
1911
- f(269484289, 257);
1912
- f(535822847, 511);
1913
- f(536871424, 512);
1914
- f(537920001, 513);
1915
- f(1072694271, 1023);
1916
- f(1073742848, 1024);
1917
- f(1074791425, 1025);
1918
- f(2146437119, 2047);
1919
- f(2147485696, 2048);
1920
- f(2148534273, 2049);
1921
- f(4293922815, 4095);
1922
- f(4294971392, 4096);
1923
- f(4296019969, 4097);
1924
- f(8588894207, 8191);
1925
- f(8589942784, 8192);
1926
- f(8590991361, 8193);
1927
- f(17178836991, 16383);
1928
- f(17179885568, 16384);
1929
- f(17180934145, 16385);
1930
- f(34358722559, 32767);
1931
- f(34359771136, 32768);
1932
- f(34360819713, 32769);
1933
- f(68718493695, 65535);
1934
- f(68719542272, 65536);
1935
- f(68720590849, 65537);
1936
- f(137438035967, 131071);
1937
- f(137439084544, 131072);
1938
- f(137440133121, 131073);
1939
- f(274877120511, 262143);
1940
- f(274878169088, 262144);
1941
- f(274879217665, 262145);
1942
- f(549755289599, 524287);
1943
- f(549756338176, 524288);
1944
- f(549757386753, 524289);
1945
- f(1099511627775, 1048575);
1946
- f(1099512676352, 1048576);
1947
- f(1099513724929, 1048577);
1948
- x = 2097151;
1949
- f(0, 0);
1950
- f(2097151, 1);
1951
- f(4194302, 2);
1952
- f(6291453, 3);
1953
- f(8388604, 4);
1954
- f(10485755, 5);
1955
- f(14680057, 7);
1956
- f(16777208, 8);
1957
- f(18874359, 9);
1958
- f(31457265, 15);
1959
- f(33554416, 16);
1960
- f(35651567, 17);
1961
- f(65011681, 31);
1962
- f(67108832, 32);
1963
- f(69205983, 33);
1964
- f(132120513, 63);
1965
- f(134217664, 64);
1966
- f(136314815, 65);
1967
- f(266338177, 127);
1968
- f(268435328, 128);
1969
- f(270532479, 129);
1970
- f(534773505, 255);
1971
- f(536870656, 256);
1972
- f(538967807, 257);
1973
- f(1071644161, 511);
1974
- f(1073741312, 512);
1975
- f(1075838463, 513);
1976
- f(2145385473, 1023);
1977
- f(2147482624, 1024);
1978
- f(2149579775, 1025);
1979
- f(4292868097, 2047);
1980
- f(4294965248, 2048);
1981
- f(4297062399, 2049);
1982
- f(8587833345, 4095);
1983
- f(8589930496, 4096);
1984
- f(8592027647, 4097);
1985
- f(17177763841, 8191);
1986
- f(17179860992, 8192);
1987
- f(17181958143, 8193);
1988
- f(34357624833, 16383);
1989
- f(34359721984, 16384);
1990
- f(34361819135, 16385);
1991
- f(68717346817, 32767);
1992
- f(68719443968, 32768);
1993
- f(68721541119, 32769);
1994
- f(137436790785, 65535);
1995
- f(137438887936, 65536);
1996
- f(137440985087, 65537);
1997
- f(274875678721, 131071);
1998
- f(274877775872, 131072);
1999
- f(274879873023, 131073);
2000
- f(549753454593, 262143);
2001
- f(549755551744, 262144);
2002
- f(549757648895, 262145);
2003
- f(1099509006337, 524287);
2004
- f(1099511103488, 524288);
2005
- f(1099513200639, 524289);
2006
- f(2199020109825, 1048575);
2007
- f(2199022206976, 1048576);
2008
- f(2199024304127, 1048577);
2009
- f(4398042316801, 2097151);
2010
- x = 2097152;
2011
- f(0, 0);
2012
- f(2097152, 1);
2013
- f(4194304, 2);
2014
- f(6291456, 3);
2015
- f(8388608, 4);
2016
- f(10485760, 5);
2017
- f(14680064, 7);
2018
- f(16777216, 8);
2019
- f(18874368, 9);
2020
- f(31457280, 15);
2021
- f(33554432, 16);
2022
- f(35651584, 17);
2023
- f(65011712, 31);
2024
- f(67108864, 32);
2025
- f(69206016, 33);
2026
- f(132120576, 63);
2027
- f(134217728, 64);
2028
- f(136314880, 65);
2029
- f(266338304, 127);
2030
- f(268435456, 128);
2031
- f(270532608, 129);
2032
- f(534773760, 255);
2033
- f(536870912, 256);
2034
- f(538968064, 257);
2035
- f(1071644672, 511);
2036
- f(1073741824, 512);
2037
- f(1075838976, 513);
2038
- f(2145386496, 1023);
2039
- f(2147483648, 1024);
2040
- f(2149580800, 1025);
2041
- f(4292870144, 2047);
2042
- f(4294967296, 2048);
2043
- f(4297064448, 2049);
2044
- f(8587837440, 4095);
2045
- f(8589934592, 4096);
2046
- f(8592031744, 4097);
2047
- f(17177772032, 8191);
2048
- f(17179869184, 8192);
2049
- f(17181966336, 8193);
2050
- f(34357641216, 16383);
2051
- f(34359738368, 16384);
2052
- f(34361835520, 16385);
2053
- f(68717379584, 32767);
2054
- f(68719476736, 32768);
2055
- f(68721573888, 32769);
2056
- f(137436856320, 65535);
2057
- f(137438953472, 65536);
2058
- f(137441050624, 65537);
2059
- f(274875809792, 131071);
2060
- f(274877906944, 131072);
2061
- f(274880004096, 131073);
2062
- f(549753716736, 262143);
2063
- f(549755813888, 262144);
2064
- f(549757911040, 262145);
2065
- f(1099509530624, 524287);
2066
- f(1099511627776, 524288);
2067
- f(1099513724928, 524289);
2068
- f(2199021158400, 1048575);
2069
- f(2199023255552, 1048576);
2070
- f(2199025352704, 1048577);
2071
- f(4398044413952, 2097151);
2072
- f(4398046511104, 2097152);
2073
- x = 2097153;
2074
- f(0, 0);
2075
- f(2097153, 1);
2076
- f(4194306, 2);
2077
- f(6291459, 3);
2078
- f(8388612, 4);
2079
- f(10485765, 5);
2080
- f(14680071, 7);
2081
- f(16777224, 8);
2082
- f(18874377, 9);
2083
- f(31457295, 15);
2084
- f(33554448, 16);
2085
- f(35651601, 17);
2086
- f(65011743, 31);
2087
- f(67108896, 32);
2088
- f(69206049, 33);
2089
- f(132120639, 63);
2090
- f(134217792, 64);
2091
- f(136314945, 65);
2092
- f(266338431, 127);
2093
- f(268435584, 128);
2094
- f(270532737, 129);
2095
- f(534774015, 255);
2096
- f(536871168, 256);
2097
- f(538968321, 257);
2098
- f(1071645183, 511);
2099
- f(1073742336, 512);
2100
- f(1075839489, 513);
2101
- f(2145387519, 1023);
2102
- f(2147484672, 1024);
2103
- f(2149581825, 1025);
2104
- f(4292872191, 2047);
2105
- f(4294969344, 2048);
2106
- f(4297066497, 2049);
2107
- f(8587841535, 4095);
2108
- f(8589938688, 4096);
2109
- f(8592035841, 4097);
2110
- f(17177780223, 8191);
2111
- f(17179877376, 8192);
2112
- f(17181974529, 8193);
2113
- f(34357657599, 16383);
2114
- f(34359754752, 16384);
2115
- f(34361851905, 16385);
2116
- f(68717412351, 32767);
2117
- f(68719509504, 32768);
2118
- f(68721606657, 32769);
2119
- f(137436921855, 65535);
2120
- f(137439019008, 65536);
2121
- f(137441116161, 65537);
2122
- f(274875940863, 131071);
2123
- f(274878038016, 131072);
2124
- f(274880135169, 131073);
2125
- f(549753978879, 262143);
2126
- f(549756076032, 262144);
2127
- f(549758173185, 262145);
2128
- f(1099510054911, 524287);
2129
- f(1099512152064, 524288);
2130
- f(1099514249217, 524289);
2131
- f(2199022206975, 1048575);
2132
- f(2199024304128, 1048576);
2133
- f(2199026401281, 1048577);
2134
- f(4398046511103, 2097151);
2135
- f(4398048608256, 2097152);
2136
- f(4398050705409, 2097153);
2137
- x = 4194303;
2138
- f(0, 0);
2139
- f(4194303, 1);
2140
- f(8388606, 2);
2141
- f(12582909, 3);
2142
- f(16777212, 4);
2143
- f(20971515, 5);
2144
- f(29360121, 7);
2145
- f(33554424, 8);
2146
- f(37748727, 9);
2147
- f(62914545, 15);
2148
- f(67108848, 16);
2149
- f(71303151, 17);
2150
- f(130023393, 31);
2151
- f(134217696, 32);
2152
- f(138411999, 33);
2153
- f(264241089, 63);
2154
- f(268435392, 64);
2155
- f(272629695, 65);
2156
- f(532676481, 127);
2157
- f(536870784, 128);
2158
- f(541065087, 129);
2159
- f(1069547265, 255);
2160
- f(1073741568, 256);
2161
- f(1077935871, 257);
2162
- f(2143288833, 511);
2163
- f(2147483136, 512);
2164
- f(2151677439, 513);
2165
- f(4290771969, 1023);
2166
- f(4294966272, 1024);
2167
- f(4299160575, 1025);
2168
- f(8585738241, 2047);
2169
- f(8589932544, 2048);
2170
- f(8594126847, 2049);
2171
- f(17175670785, 4095);
2172
- f(17179865088, 4096);
2173
- f(17184059391, 4097);
2174
- f(34355535873, 8191);
2175
- f(34359730176, 8192);
2176
- f(34363924479, 8193);
2177
- f(68715266049, 16383);
2178
- f(68719460352, 16384);
2179
- f(68723654655, 16385);
2180
- f(137434726401, 32767);
2181
- f(137438920704, 32768);
2182
- f(137443115007, 32769);
2183
- f(274873647105, 65535);
2184
- f(274877841408, 65536);
2185
- f(274882035711, 65537);
2186
- f(549751488513, 131071);
2187
- f(549755682816, 131072);
2188
- f(549759877119, 131073);
2189
- f(1099507171329, 262143);
2190
- f(1099511365632, 262144);
2191
- f(1099515559935, 262145);
2192
- f(2199018536961, 524287);
2193
- f(2199022731264, 524288);
2194
- f(2199026925567, 524289);
2195
- f(4398041268225, 1048575);
2196
- f(4398045462528, 1048576);
2197
- f(4398049656831, 1048577);
2198
- f(8796086730753, 2097151);
2199
- f(8796090925056, 2097152);
2200
- f(8796095119359, 2097153);
2201
- f(17592177655809, 4194303);
2202
- x = 4194304;
2203
- f(0, 0);
2204
- f(4194304, 1);
2205
- f(8388608, 2);
2206
- f(12582912, 3);
2207
- f(16777216, 4);
2208
- f(20971520, 5);
2209
- f(29360128, 7);
2210
- f(33554432, 8);
2211
- f(37748736, 9);
2212
- f(62914560, 15);
2213
- f(67108864, 16);
2214
- f(71303168, 17);
2215
- f(130023424, 31);
2216
- f(134217728, 32);
2217
- f(138412032, 33);
2218
- f(264241152, 63);
2219
- f(268435456, 64);
2220
- f(272629760, 65);
2221
- f(532676608, 127);
2222
- f(536870912, 128);
2223
- f(541065216, 129);
2224
- f(1069547520, 255);
2225
- f(1073741824, 256);
2226
- f(1077936128, 257);
2227
- f(2143289344, 511);
2228
- f(2147483648, 512);
2229
- f(2151677952, 513);
2230
- f(4290772992, 1023);
2231
- f(4294967296, 1024);
2232
- f(4299161600, 1025);
2233
- f(8585740288, 2047);
2234
- f(8589934592, 2048);
2235
- f(8594128896, 2049);
2236
- f(17175674880, 4095);
2237
- f(17179869184, 4096);
2238
- f(17184063488, 4097);
2239
- f(34355544064, 8191);
2240
- f(34359738368, 8192);
2241
- f(34363932672, 8193);
2242
- f(68715282432, 16383);
2243
- f(68719476736, 16384);
2244
- f(68723671040, 16385);
2245
- f(137434759168, 32767);
2246
- f(137438953472, 32768);
2247
- f(137443147776, 32769);
2248
- f(274873712640, 65535);
2249
- f(274877906944, 65536);
2250
- f(274882101248, 65537);
2251
- f(549751619584, 131071);
2252
- f(549755813888, 131072);
2253
- f(549760008192, 131073);
2254
- f(1099507433472, 262143);
2255
- f(1099511627776, 262144);
2256
- f(1099515822080, 262145);
2257
- f(2199019061248, 524287);
2258
- f(2199023255552, 524288);
2259
- f(2199027449856, 524289);
2260
- f(4398042316800, 1048575);
2261
- f(4398046511104, 1048576);
2262
- f(4398050705408, 1048577);
2263
- f(8796088827904, 2097151);
2264
- f(8796093022208, 2097152);
2265
- f(8796097216512, 2097153);
2266
- f(17592181850112, 4194303);
2267
- f(17592186044416, 4194304);
2268
- x = 4194305;
2269
- f(0, 0);
2270
- f(4194305, 1);
2271
- f(8388610, 2);
2272
- f(12582915, 3);
2273
- f(16777220, 4);
2274
- f(20971525, 5);
2275
- f(29360135, 7);
2276
- f(33554440, 8);
2277
- f(37748745, 9);
2278
- f(62914575, 15);
2279
- f(67108880, 16);
2280
- f(71303185, 17);
2281
- f(130023455, 31);
2282
- f(134217760, 32);
2283
- f(138412065, 33);
2284
- f(264241215, 63);
2285
- f(268435520, 64);
2286
- f(272629825, 65);
2287
- f(532676735, 127);
2288
- f(536871040, 128);
2289
- f(541065345, 129);
2290
- f(1069547775, 255);
2291
- f(1073742080, 256);
2292
- f(1077936385, 257);
2293
- f(2143289855, 511);
2294
- f(2147484160, 512);
2295
- f(2151678465, 513);
2296
- f(4290774015, 1023);
2297
- f(4294968320, 1024);
2298
- f(4299162625, 1025);
2299
- f(8585742335, 2047);
2300
- f(8589936640, 2048);
2301
- f(8594130945, 2049);
2302
- f(17175678975, 4095);
2303
- f(17179873280, 4096);
2304
- f(17184067585, 4097);
2305
- f(34355552255, 8191);
2306
- f(34359746560, 8192);
2307
- f(34363940865, 8193);
2308
- f(68715298815, 16383);
2309
- f(68719493120, 16384);
2310
- f(68723687425, 16385);
2311
- f(137434791935, 32767);
2312
- f(137438986240, 32768);
2313
- f(137443180545, 32769);
2314
- f(274873778175, 65535);
2315
- f(274877972480, 65536);
2316
- f(274882166785, 65537);
2317
- f(549751750655, 131071);
2318
- f(549755944960, 131072);
2319
- f(549760139265, 131073);
2320
- f(1099507695615, 262143);
2321
- f(1099511889920, 262144);
2322
- f(1099516084225, 262145);
2323
- f(2199019585535, 524287);
2324
- f(2199023779840, 524288);
2325
- f(2199027974145, 524289);
2326
- f(4398043365375, 1048575);
2327
- f(4398047559680, 1048576);
2328
- f(4398051753985, 1048577);
2329
- f(8796090925055, 2097151);
2330
- f(8796095119360, 2097152);
2331
- f(8796099313665, 2097153);
2332
- f(17592186044415, 4194303);
2333
- f(17592190238720, 4194304);
2334
- f(17592194433025, 4194305);
2335
- x = 8388607;
2336
- f(0, 0);
2337
- f(8388607, 1);
2338
- f(16777214, 2);
2339
- f(25165821, 3);
2340
- f(33554428, 4);
2341
- f(41943035, 5);
2342
- f(58720249, 7);
2343
- f(67108856, 8);
2344
- f(75497463, 9);
2345
- f(125829105, 15);
2346
- f(134217712, 16);
2347
- f(142606319, 17);
2348
- f(260046817, 31);
2349
- f(268435424, 32);
2350
- f(276824031, 33);
2351
- f(528482241, 63);
2352
- f(536870848, 64);
2353
- f(545259455, 65);
2354
- f(1065353089, 127);
2355
- f(1073741696, 128);
2356
- f(1082130303, 129);
2357
- f(2139094785, 255);
2358
- f(2147483392, 256);
2359
- f(2155871999, 257);
2360
- f(4286578177, 511);
2361
- f(4294966784, 512);
2362
- f(4303355391, 513);
2363
- f(8581544961, 1023);
2364
- f(8589933568, 1024);
2365
- f(8598322175, 1025);
2366
- f(17171478529, 2047);
2367
- f(17179867136, 2048);
2368
- f(17188255743, 2049);
2369
- f(34351345665, 4095);
2370
- f(34359734272, 4096);
2371
- f(34368122879, 4097);
2372
- f(68711079937, 8191);
2373
- f(68719468544, 8192);
2374
- f(68727857151, 8193);
2375
- f(137430548481, 16383);
2376
- f(137438937088, 16384);
2377
- f(137447325695, 16385);
2378
- f(274869485569, 32767);
2379
- f(274877874176, 32768);
2380
- f(274886262783, 32769);
2381
- f(549747359745, 65535);
2382
- f(549755748352, 65536);
2383
- f(549764136959, 65537);
2384
- f(1099503108097, 131071);
2385
- f(1099511496704, 131072);
2386
- f(1099519885311, 131073);
2387
- f(2199014604801, 262143);
2388
- f(2199022993408, 262144);
2389
- f(2199031382015, 262145);
2390
- f(4398037598209, 524287);
2391
- f(4398045986816, 524288);
2392
- f(4398054375423, 524289);
2393
- f(8796083585025, 1048575);
2394
- f(8796091973632, 1048576);
2395
- f(8796100362239, 1048577);
2396
- f(17592175558657, 2097151);
2397
- f(17592183947264, 2097152);
2398
- f(17592192335871, 2097153);
2399
- f(35184359505921, 4194303);
2400
- f(35184367894528, 4194304);
2401
- f(35184376283135, 4194305);
2402
- f(70368727400449, 8388607);
2403
- x = 8388608;
2404
- f(0, 0);
2405
- f(8388608, 1);
2406
- f(16777216, 2);
2407
- f(25165824, 3);
2408
- f(33554432, 4);
2409
- f(41943040, 5);
2410
- f(58720256, 7);
2411
- f(67108864, 8);
2412
- f(75497472, 9);
2413
- f(125829120, 15);
2414
- f(134217728, 16);
2415
- f(142606336, 17);
2416
- f(260046848, 31);
2417
- f(268435456, 32);
2418
- f(276824064, 33);
2419
- f(528482304, 63);
2420
- f(536870912, 64);
2421
- f(545259520, 65);
2422
- f(1065353216, 127);
2423
- f(1073741824, 128);
2424
- f(1082130432, 129);
2425
- f(2139095040, 255);
2426
- f(2147483648, 256);
2427
- f(2155872256, 257);
2428
- f(4286578688, 511);
2429
- f(4294967296, 512);
2430
- f(4303355904, 513);
2431
- f(8581545984, 1023);
2432
- f(8589934592, 1024);
2433
- f(8598323200, 1025);
2434
- f(17171480576, 2047);
2435
- f(17179869184, 2048);
2436
- f(17188257792, 2049);
2437
- f(34351349760, 4095);
2438
- f(34359738368, 4096);
2439
- f(34368126976, 4097);
2440
- f(68711088128, 8191);
2441
- f(68719476736, 8192);
2442
- f(68727865344, 8193);
2443
- f(137430564864, 16383);
2444
- f(137438953472, 16384);
2445
- f(137447342080, 16385);
2446
- f(274869518336, 32767);
2447
- f(274877906944, 32768);
2448
- f(274886295552, 32769);
2449
- f(549747425280, 65535);
2450
- f(549755813888, 65536);
2451
- f(549764202496, 65537);
2452
- f(1099503239168, 131071);
2453
- f(1099511627776, 131072);
2454
- f(1099520016384, 131073);
2455
- f(2199014866944, 262143);
2456
- f(2199023255552, 262144);
2457
- f(2199031644160, 262145);
2458
- f(4398038122496, 524287);
2459
- f(4398046511104, 524288);
2460
- f(4398054899712, 524289);
2461
- f(8796084633600, 1048575);
2462
- f(8796093022208, 1048576);
2463
- f(8796101410816, 1048577);
2464
- f(17592177655808, 2097151);
2465
- f(17592186044416, 2097152);
2466
- f(17592194433024, 2097153);
2467
- f(35184363700224, 4194303);
2468
- f(35184372088832, 4194304);
2469
- f(35184380477440, 4194305);
2470
- f(70368735789056, 8388607);
2471
- f(70368744177664, 8388608);
2472
- x = 8388609;
2473
- f(0, 0);
2474
- f(8388609, 1);
2475
- f(16777218, 2);
2476
- f(25165827, 3);
2477
- f(33554436, 4);
2478
- f(41943045, 5);
2479
- f(58720263, 7);
2480
- f(67108872, 8);
2481
- f(75497481, 9);
2482
- f(125829135, 15);
2483
- f(134217744, 16);
2484
- f(142606353, 17);
2485
- f(260046879, 31);
2486
- f(268435488, 32);
2487
- f(276824097, 33);
2488
- f(528482367, 63);
2489
- f(536870976, 64);
2490
- f(545259585, 65);
2491
- f(1065353343, 127);
2492
- f(1073741952, 128);
2493
- f(1082130561, 129);
2494
- f(2139095295, 255);
2495
- f(2147483904, 256);
2496
- f(2155872513, 257);
2497
- f(4286579199, 511);
2498
- f(4294967808, 512);
2499
- f(4303356417, 513);
2500
- f(8581547007, 1023);
2501
- f(8589935616, 1024);
2502
- f(8598324225, 1025);
2503
- f(17171482623, 2047);
2504
- f(17179871232, 2048);
2505
- f(17188259841, 2049);
2506
- f(34351353855, 4095);
2507
- f(34359742464, 4096);
2508
- f(34368131073, 4097);
2509
- f(68711096319, 8191);
2510
- f(68719484928, 8192);
2511
- f(68727873537, 8193);
2512
- f(137430581247, 16383);
2513
- f(137438969856, 16384);
2514
- f(137447358465, 16385);
2515
- f(274869551103, 32767);
2516
- f(274877939712, 32768);
2517
- f(274886328321, 32769);
2518
- f(549747490815, 65535);
2519
- f(549755879424, 65536);
2520
- f(549764268033, 65537);
2521
- f(1099503370239, 131071);
2522
- f(1099511758848, 131072);
2523
- f(1099520147457, 131073);
2524
- f(2199015129087, 262143);
2525
- f(2199023517696, 262144);
2526
- f(2199031906305, 262145);
2527
- f(4398038646783, 524287);
2528
- f(4398047035392, 524288);
2529
- f(4398055424001, 524289);
2530
- f(8796085682175, 1048575);
2531
- f(8796094070784, 1048576);
2532
- f(8796102459393, 1048577);
2533
- f(17592179752959, 2097151);
2534
- f(17592188141568, 2097152);
2535
- f(17592196530177, 2097153);
2536
- f(35184367894527, 4194303);
2537
- f(35184376283136, 4194304);
2538
- f(35184384671745, 4194305);
2539
- f(70368744177663, 8388607);
2540
- f(70368752566272, 8388608);
2541
- f(70368760954881, 8388609);
2542
- x = 16777215;
2543
- f(0, 0);
2544
- f(16777215, 1);
2545
- f(33554430, 2);
2546
- f(50331645, 3);
2547
- f(67108860, 4);
2548
- f(83886075, 5);
2549
- f(117440505, 7);
2550
- f(134217720, 8);
2551
- f(150994935, 9);
2552
- f(251658225, 15);
2553
- f(268435440, 16);
2554
- f(285212655, 17);
2555
- f(520093665, 31);
2556
- f(536870880, 32);
2557
- f(553648095, 33);
2558
- f(1056964545, 63);
2559
- f(1073741760, 64);
2560
- f(1090518975, 65);
2561
- f(2130706305, 127);
2562
- f(2147483520, 128);
2563
- f(2164260735, 129);
2564
- f(4278189825, 255);
2565
- f(4294967040, 256);
2566
- f(4311744255, 257);
2567
- f(8573156865, 511);
2568
- f(8589934080, 512);
2569
- f(8606711295, 513);
2570
- f(17163090945, 1023);
2571
- f(17179868160, 1024);
2572
- f(17196645375, 1025);
2573
- f(34342959105, 2047);
2574
- f(34359736320, 2048);
2575
- f(34376513535, 2049);
2576
- f(68702695425, 4095);
2577
- f(68719472640, 4096);
2578
- f(68736249855, 4097);
2579
- f(137422168065, 8191);
2580
- f(137438945280, 8192);
2581
- f(137455722495, 8193);
2582
- f(274861113345, 16383);
2583
- f(274877890560, 16384);
2584
- f(274894667775, 16385);
2585
- f(549739003905, 32767);
2586
- f(549755781120, 32768);
2587
- f(549772558335, 32769);
2588
- f(1099494785025, 65535);
2589
- f(1099511562240, 65536);
2590
- f(1099528339455, 65537);
2591
- f(2199006347265, 131071);
2592
- f(2199023124480, 131072);
2593
- f(2199039901695, 131073);
2594
- f(4398029471745, 262143);
2595
- f(4398046248960, 262144);
2596
- f(4398063026175, 262145);
2597
- f(8796075720705, 524287);
2598
- f(8796092497920, 524288);
2599
- f(8796109275135, 524289);
2600
- f(17592168218625, 1048575);
2601
- f(17592184995840, 1048576);
2602
- f(17592201773055, 1048577);
2603
- f(35184353214465, 2097151);
2604
- f(35184369991680, 2097152);
2605
- f(35184386768895, 2097153);
2606
- f(70368723206145, 4194303);
2607
- f(70368739983360, 4194304);
2608
- f(70368756760575, 4194305);
2609
- f(140737463189505, 8388607);
2610
- f(140737479966720, 8388608);
2611
- f(140737496743935, 8388609);
2612
- f(281474943156225, 16777215);
2613
- x = 16777216;
2614
- f(0, 0);
2615
- f(16777216, 1);
2616
- f(33554432, 2);
2617
- f(50331648, 3);
2618
- f(67108864, 4);
2619
- f(83886080, 5);
2620
- f(117440512, 7);
2621
- f(134217728, 8);
2622
- f(150994944, 9);
2623
- f(251658240, 15);
2624
- f(268435456, 16);
2625
- f(285212672, 17);
2626
- f(520093696, 31);
2627
- f(536870912, 32);
2628
- f(553648128, 33);
2629
- f(1056964608, 63);
2630
- f(1073741824, 64);
2631
- f(1090519040, 65);
2632
- f(2130706432, 127);
2633
- f(2147483648, 128);
2634
- f(2164260864, 129);
2635
- f(4278190080, 255);
2636
- f(4294967296, 256);
2637
- f(4311744512, 257);
2638
- f(8573157376, 511);
2639
- f(8589934592, 512);
2640
- f(8606711808, 513);
2641
- f(17163091968, 1023);
2642
- f(17179869184, 1024);
2643
- f(17196646400, 1025);
2644
- f(34342961152, 2047);
2645
- f(34359738368, 2048);
2646
- f(34376515584, 2049);
2647
- f(68702699520, 4095);
2648
- f(68719476736, 4096);
2649
- f(68736253952, 4097);
2650
- f(137422176256, 8191);
2651
- f(137438953472, 8192);
2652
- f(137455730688, 8193);
2653
- f(274861129728, 16383);
2654
- f(274877906944, 16384);
2655
- f(274894684160, 16385);
2656
- f(549739036672, 32767);
2657
- f(549755813888, 32768);
2658
- f(549772591104, 32769);
2659
- f(1099494850560, 65535);
2660
- f(1099511627776, 65536);
2661
- f(1099528404992, 65537);
2662
- f(2199006478336, 131071);
2663
- f(2199023255552, 131072);
2664
- f(2199040032768, 131073);
2665
- f(4398029733888, 262143);
2666
- f(4398046511104, 262144);
2667
- f(4398063288320, 262145);
2668
- f(8796076244992, 524287);
2669
- f(8796093022208, 524288);
2670
- f(8796109799424, 524289);
2671
- f(17592169267200, 1048575);
2672
- f(17592186044416, 1048576);
2673
- f(17592202821632, 1048577);
2674
- f(35184355311616, 2097151);
2675
- f(35184372088832, 2097152);
2676
- f(35184388866048, 2097153);
2677
- f(70368727400448, 4194303);
2678
- f(70368744177664, 4194304);
2679
- f(70368760954880, 4194305);
2680
- f(140737471578112, 8388607);
2681
- f(140737488355328, 8388608);
2682
- f(140737505132544, 8388609);
2683
- f(281474959933440, 16777215);
2684
- f(281474976710656, 16777216);
2685
- x = 16777217;
2686
- f(0, 0);
2687
- f(16777217, 1);
2688
- f(33554434, 2);
2689
- f(50331651, 3);
2690
- f(67108868, 4);
2691
- f(83886085, 5);
2692
- f(117440519, 7);
2693
- f(134217736, 8);
2694
- f(150994953, 9);
2695
- f(251658255, 15);
2696
- f(268435472, 16);
2697
- f(285212689, 17);
2698
- f(520093727, 31);
2699
- f(536870944, 32);
2700
- f(553648161, 33);
2701
- f(1056964671, 63);
2702
- f(1073741888, 64);
2703
- f(1090519105, 65);
2704
- f(2130706559, 127);
2705
- f(2147483776, 128);
2706
- f(2164260993, 129);
2707
- f(4278190335, 255);
2708
- f(4294967552, 256);
2709
- f(4311744769, 257);
2710
- f(8573157887, 511);
2711
- f(8589935104, 512);
2712
- f(8606712321, 513);
2713
- f(17163092991, 1023);
2714
- f(17179870208, 1024);
2715
- f(17196647425, 1025);
2716
- f(34342963199, 2047);
2717
- f(34359740416, 2048);
2718
- f(34376517633, 2049);
2719
- f(68702703615, 4095);
2720
- f(68719480832, 4096);
2721
- f(68736258049, 4097);
2722
- f(137422184447, 8191);
2723
- f(137438961664, 8192);
2724
- f(137455738881, 8193);
2725
- f(274861146111, 16383);
2726
- f(274877923328, 16384);
2727
- f(274894700545, 16385);
2728
- f(549739069439, 32767);
2729
- f(549755846656, 32768);
2730
- f(549772623873, 32769);
2731
- f(1099494916095, 65535);
2732
- f(1099511693312, 65536);
2733
- f(1099528470529, 65537);
2734
- f(2199006609407, 131071);
2735
- f(2199023386624, 131072);
2736
- f(2199040163841, 131073);
2737
- f(4398029996031, 262143);
2738
- f(4398046773248, 262144);
2739
- f(4398063550465, 262145);
2740
- f(8796076769279, 524287);
2741
- f(8796093546496, 524288);
2742
- f(8796110323713, 524289);
2743
- f(17592170315775, 1048575);
2744
- f(17592187092992, 1048576);
2745
- f(17592203870209, 1048577);
2746
- f(35184357408767, 2097151);
2747
- f(35184374185984, 2097152);
2748
- f(35184390963201, 2097153);
2749
- f(70368731594751, 4194303);
2750
- f(70368748371968, 4194304);
2751
- f(70368765149185, 4194305);
2752
- f(140737479966719, 8388607);
2753
- f(140737496743936, 8388608);
2754
- f(140737513521153, 8388609);
2755
- f(281474976710655, 16777215);
2756
- f(281474993487872, 16777216);
2757
- f(281475010265089, 16777217);
2758
- x = 33554431;
2759
- f(0, 0);
2760
- f(33554431, 1);
2761
- f(67108862, 2);
2762
- f(100663293, 3);
2763
- f(134217724, 4);
2764
- f(167772155, 5);
2765
- f(234881017, 7);
2766
- f(268435448, 8);
2767
- f(301989879, 9);
2768
- f(503316465, 15);
2769
- f(536870896, 16);
2770
- f(570425327, 17);
2771
- f(1040187361, 31);
2772
- f(1073741792, 32);
2773
- f(1107296223, 33);
2774
- f(2113929153, 63);
2775
- f(2147483584, 64);
2776
- f(2181038015, 65);
2777
- f(4261412737, 127);
2778
- f(4294967168, 128);
2779
- f(4328521599, 129);
2780
- f(8556379905, 255);
2781
- f(8589934336, 256);
2782
- f(8623488767, 257);
2783
- f(17146314241, 511);
2784
- f(17179868672, 512);
2785
- f(17213423103, 513);
2786
- f(34326182913, 1023);
2787
- f(34359737344, 1024);
2788
- f(34393291775, 1025);
2789
- f(68685920257, 2047);
2790
- f(68719474688, 2048);
2791
- f(68753029119, 2049);
2792
- f(137405394945, 4095);
2793
- f(137438949376, 4096);
2794
- f(137472503807, 4097);
2795
- f(274844344321, 8191);
2796
- f(274877898752, 8192);
2797
- f(274911453183, 8193);
2798
- f(549722243073, 16383);
2799
- f(549755797504, 16384);
2800
- f(549789351935, 16385);
2801
- f(1099478040577, 32767);
2802
- f(1099511595008, 32768);
2803
- f(1099545149439, 32769);
2804
- f(2198989635585, 65535);
2805
- f(2199023190016, 65536);
2806
- f(2199056744447, 65537);
2807
- f(4398012825601, 131071);
2808
- f(4398046380032, 131072);
2809
- f(4398079934463, 131073);
2810
- f(8796059205633, 262143);
2811
- f(8796092760064, 262144);
2812
- f(8796126314495, 262145);
2813
- f(17592151965697, 524287);
2814
- f(17592185520128, 524288);
2815
- f(17592219074559, 524289);
2816
- f(35184337485825, 1048575);
2817
- f(35184371040256, 1048576);
2818
- f(35184404594687, 1048577);
2819
- f(70368708526081, 2097151);
2820
- f(70368742080512, 2097152);
2821
- f(70368775634943, 2097153);
2822
- f(140737450606593, 4194303);
2823
- f(140737484161024, 4194304);
2824
- f(140737517715455, 4194305);
2825
- f(281474934767617, 8388607);
2826
- f(281474968322048, 8388608);
2827
- f(281475001876479, 8388609);
2828
- f(562949903089665, 16777215);
2829
- f(562949936644096, 16777216);
2830
- f(562949970198527, 16777217);
2831
- f(1125899839733761, 33554431);
2832
- x = 33554432;
2833
- f(0, 0);
2834
- f(33554432, 1);
2835
- f(67108864, 2);
2836
- f(100663296, 3);
2837
- f(134217728, 4);
2838
- f(167772160, 5);
2839
- f(234881024, 7);
2840
- f(268435456, 8);
2841
- f(301989888, 9);
2842
- f(503316480, 15);
2843
- f(536870912, 16);
2844
- f(570425344, 17);
2845
- f(1040187392, 31);
2846
- f(1073741824, 32);
2847
- f(1107296256, 33);
2848
- f(2113929216, 63);
2849
- f(2147483648, 64);
2850
- f(2181038080, 65);
2851
- f(4261412864, 127);
2852
- f(4294967296, 128);
2853
- f(4328521728, 129);
2854
- f(8556380160, 255);
2855
- f(8589934592, 256);
2856
- f(8623489024, 257);
2857
- f(17146314752, 511);
2858
- f(17179869184, 512);
2859
- f(17213423616, 513);
2860
- f(34326183936, 1023);
2861
- f(34359738368, 1024);
2862
- f(34393292800, 1025);
2863
- f(68685922304, 2047);
2864
- f(68719476736, 2048);
2865
- f(68753031168, 2049);
2866
- f(137405399040, 4095);
2867
- f(137438953472, 4096);
2868
- f(137472507904, 4097);
2869
- f(274844352512, 8191);
2870
- f(274877906944, 8192);
2871
- f(274911461376, 8193);
2872
- f(549722259456, 16383);
2873
- f(549755813888, 16384);
2874
- f(549789368320, 16385);
2875
- f(1099478073344, 32767);
2876
- f(1099511627776, 32768);
2877
- f(1099545182208, 32769);
2878
- f(2198989701120, 65535);
2879
- f(2199023255552, 65536);
2880
- f(2199056809984, 65537);
2881
- f(4398012956672, 131071);
2882
- f(4398046511104, 131072);
2883
- f(4398080065536, 131073);
2884
- f(8796059467776, 262143);
2885
- f(8796093022208, 262144);
2886
- f(8796126576640, 262145);
2887
- f(17592152489984, 524287);
2888
- f(17592186044416, 524288);
2889
- f(17592219598848, 524289);
2890
- f(35184338534400, 1048575);
2891
- f(35184372088832, 1048576);
2892
- f(35184405643264, 1048577);
2893
- f(70368710623232, 2097151);
2894
- f(70368744177664, 2097152);
2895
- f(70368777732096, 2097153);
2896
- f(140737454800896, 4194303);
2897
- f(140737488355328, 4194304);
2898
- f(140737521909760, 4194305);
2899
- f(281474943156224, 8388607);
2900
- f(281474976710656, 8388608);
2901
- f(281475010265088, 8388609);
2902
- f(562949919866880, 16777215);
2903
- f(562949953421312, 16777216);
2904
- f(562949986975744, 16777217);
2905
- f(1125899873288192, 33554431);
2906
- f(1125899906842624, 33554432);
2907
- x = 33554433;
2908
- f(0, 0);
2909
- f(33554433, 1);
2910
- f(67108866, 2);
2911
- f(100663299, 3);
2912
- f(134217732, 4);
2913
- f(167772165, 5);
2914
- f(234881031, 7);
2915
- f(268435464, 8);
2916
- f(301989897, 9);
2917
- f(503316495, 15);
2918
- f(536870928, 16);
2919
- f(570425361, 17);
2920
- f(1040187423, 31);
2921
- f(1073741856, 32);
2922
- f(1107296289, 33);
2923
- f(2113929279, 63);
2924
- f(2147483712, 64);
2925
- f(2181038145, 65);
2926
- f(4261412991, 127);
2927
- f(4294967424, 128);
2928
- f(4328521857, 129);
2929
- f(8556380415, 255);
2930
- f(8589934848, 256);
2931
- f(8623489281, 257);
2932
- f(17146315263, 511);
2933
- f(17179869696, 512);
2934
- f(17213424129, 513);
2935
- f(34326184959, 1023);
2936
- f(34359739392, 1024);
2937
- f(34393293825, 1025);
2938
- f(68685924351, 2047);
2939
- f(68719478784, 2048);
2940
- f(68753033217, 2049);
2941
- f(137405403135, 4095);
2942
- f(137438957568, 4096);
2943
- f(137472512001, 4097);
2944
- f(274844360703, 8191);
2945
- f(274877915136, 8192);
2946
- f(274911469569, 8193);
2947
- f(549722275839, 16383);
2948
- f(549755830272, 16384);
2949
- f(549789384705, 16385);
2950
- f(1099478106111, 32767);
2951
- f(1099511660544, 32768);
2952
- f(1099545214977, 32769);
2953
- f(2198989766655, 65535);
2954
- f(2199023321088, 65536);
2955
- f(2199056875521, 65537);
2956
- f(4398013087743, 131071);
2957
- f(4398046642176, 131072);
2958
- f(4398080196609, 131073);
2959
- f(8796059729919, 262143);
2960
- f(8796093284352, 262144);
2961
- f(8796126838785, 262145);
2962
- f(17592153014271, 524287);
2963
- f(17592186568704, 524288);
2964
- f(17592220123137, 524289);
2965
- f(35184339582975, 1048575);
2966
- f(35184373137408, 1048576);
2967
- f(35184406691841, 1048577);
2968
- f(70368712720383, 2097151);
2969
- f(70368746274816, 2097152);
2970
- f(70368779829249, 2097153);
2971
- f(140737458995199, 4194303);
2972
- f(140737492549632, 4194304);
2973
- f(140737526104065, 4194305);
2974
- f(281474951544831, 8388607);
2975
- f(281474985099264, 8388608);
2976
- f(281475018653697, 8388609);
2977
- f(562949936644095, 16777215);
2978
- f(562949970198528, 16777216);
2979
- f(562950003752961, 16777217);
2980
- f(1125899906842623, 33554431);
2981
- f(1125899940397056, 33554432);
2982
- f(1125899973951489, 33554433);
2983
- x = 67108863;
2984
- f(0, 0);
2985
- f(67108863, 1);
2986
- f(134217726, 2);
2987
- f(201326589, 3);
2988
- f(268435452, 4);
2989
- f(335544315, 5);
2990
- f(469762041, 7);
2991
- f(536870904, 8);
2992
- f(603979767, 9);
2993
- f(1006632945, 15);
2994
- f(1073741808, 16);
2995
- f(1140850671, 17);
2996
- f(2080374753, 31);
2997
- f(2147483616, 32);
2998
- f(2214592479, 33);
2999
- f(4227858369, 63);
3000
- f(4294967232, 64);
3001
- f(4362076095, 65);
3002
- f(8522825601, 127);
3003
- f(8589934464, 128);
3004
- f(8657043327, 129);
3005
- f(17112760065, 255);
3006
- f(17179868928, 256);
3007
- f(17246977791, 257);
3008
- f(34292628993, 511);
3009
- f(34359737856, 512);
3010
- f(34426846719, 513);
3011
- f(68652366849, 1023);
3012
- f(68719475712, 1024);
3013
- f(68786584575, 1025);
3014
- f(137371842561, 2047);
3015
- f(137438951424, 2048);
3016
- f(137506060287, 2049);
3017
- f(274810793985, 4095);
3018
- f(274877902848, 4096);
3019
- f(274945011711, 4097);
3020
- f(549688696833, 8191);
3021
- f(549755805696, 8192);
3022
- f(549822914559, 8193);
3023
- f(1099444502529, 16383);
3024
- f(1099511611392, 16384);
3025
- f(1099578720255, 16385);
3026
- f(2198956113921, 32767);
3027
- f(2199023222784, 32768);
3028
- f(2199090331647, 32769);
3029
- f(4397979336705, 65535);
3030
- f(4398046445568, 65536);
3031
- f(4398113554431, 65537);
3032
- f(8796025782273, 131071);
3033
- f(8796092891136, 131072);
3034
- f(8796159999999, 131073);
3035
- f(17592118673409, 262143);
3036
- f(17592185782272, 262144);
3037
- f(17592252891135, 262145);
3038
- f(35184304455681, 524287);
3039
- f(35184371564544, 524288);
3040
- f(35184438673407, 524289);
3041
- f(70368676020225, 1048575);
3042
- f(70368743129088, 1048576);
3043
- f(70368810237951, 1048577);
3044
- f(140737419149313, 2097151);
3045
- f(140737486258176, 2097152);
3046
- f(140737553367039, 2097153);
3047
- f(281474905407489, 4194303);
3048
- f(281474972516352, 4194304);
3049
- f(281475039625215, 4194305);
3050
- f(562949877923841, 8388607);
3051
- f(562949945032704, 8388608);
3052
- f(562950012141567, 8388609);
3053
- f(1125899822956545, 16777215);
3054
- f(1125899890065408, 16777216);
3055
- f(1125899957174271, 16777217);
3056
- x = 67108864;
3057
- f(0, 0);
3058
- f(67108864, 1);
3059
- f(134217728, 2);
3060
- f(201326592, 3);
3061
- f(268435456, 4);
3062
- f(335544320, 5);
3063
- f(469762048, 7);
3064
- f(536870912, 8);
3065
- f(603979776, 9);
3066
- f(1006632960, 15);
3067
- f(1073741824, 16);
3068
- f(1140850688, 17);
3069
- f(2080374784, 31);
3070
- f(2147483648, 32);
3071
- f(2214592512, 33);
3072
- f(4227858432, 63);
3073
- f(4294967296, 64);
3074
- f(4362076160, 65);
3075
- f(8522825728, 127);
3076
- f(8589934592, 128);
3077
- f(8657043456, 129);
3078
- f(17112760320, 255);
3079
- f(17179869184, 256);
3080
- f(17246978048, 257);
3081
- f(34292629504, 511);
3082
- f(34359738368, 512);
3083
- f(34426847232, 513);
3084
- f(68652367872, 1023);
3085
- f(68719476736, 1024);
3086
- f(68786585600, 1025);
3087
- f(137371844608, 2047);
3088
- f(137438953472, 2048);
3089
- f(137506062336, 2049);
3090
- f(274810798080, 4095);
3091
- f(274877906944, 4096);
3092
- f(274945015808, 4097);
3093
- f(549688705024, 8191);
3094
- f(549755813888, 8192);
3095
- f(549822922752, 8193);
3096
- f(1099444518912, 16383);
3097
- f(1099511627776, 16384);
3098
- f(1099578736640, 16385);
3099
- f(2198956146688, 32767);
3100
- f(2199023255552, 32768);
3101
- f(2199090364416, 32769);
3102
- f(4397979402240, 65535);
3103
- f(4398046511104, 65536);
3104
- f(4398113619968, 65537);
3105
- f(8796025913344, 131071);
3106
- f(8796093022208, 131072);
3107
- f(8796160131072, 131073);
3108
- f(17592118935552, 262143);
3109
- f(17592186044416, 262144);
3110
- f(17592253153280, 262145);
3111
- f(35184304979968, 524287);
3112
- f(35184372088832, 524288);
3113
- f(35184439197696, 524289);
3114
- f(70368677068800, 1048575);
3115
- f(70368744177664, 1048576);
3116
- f(70368811286528, 1048577);
3117
- f(140737421246464, 2097151);
3118
- f(140737488355328, 2097152);
3119
- f(140737555464192, 2097153);
3120
- f(281474909601792, 4194303);
3121
- f(281474976710656, 4194304);
3122
- f(281475043819520, 4194305);
3123
- f(562949886312448, 8388607);
3124
- f(562949953421312, 8388608);
3125
- f(562950020530176, 8388609);
3126
- f(1125899839733760, 16777215);
3127
- f(1125899906842624, 16777216);
3128
- f(1125899973951488, 16777217);
3129
- x = 67108865;
3130
- f(0, 0);
3131
- f(67108865, 1);
3132
- f(134217730, 2);
3133
- f(201326595, 3);
3134
- f(268435460, 4);
3135
- f(335544325, 5);
3136
- f(469762055, 7);
3137
- f(536870920, 8);
3138
- f(603979785, 9);
3139
- f(1006632975, 15);
3140
- f(1073741840, 16);
3141
- f(1140850705, 17);
3142
- f(2080374815, 31);
3143
- f(2147483680, 32);
3144
- f(2214592545, 33);
3145
- f(4227858495, 63);
3146
- f(4294967360, 64);
3147
- f(4362076225, 65);
3148
- f(8522825855, 127);
3149
- f(8589934720, 128);
3150
- f(8657043585, 129);
3151
- f(17112760575, 255);
3152
- f(17179869440, 256);
3153
- f(17246978305, 257);
3154
- f(34292630015, 511);
3155
- f(34359738880, 512);
3156
- f(34426847745, 513);
3157
- f(68652368895, 1023);
3158
- f(68719477760, 1024);
3159
- f(68786586625, 1025);
3160
- f(137371846655, 2047);
3161
- f(137438955520, 2048);
3162
- f(137506064385, 2049);
3163
- f(274810802175, 4095);
3164
- f(274877911040, 4096);
3165
- f(274945019905, 4097);
3166
- f(549688713215, 8191);
3167
- f(549755822080, 8192);
3168
- f(549822930945, 8193);
3169
- f(1099444535295, 16383);
3170
- f(1099511644160, 16384);
3171
- f(1099578753025, 16385);
3172
- f(2198956179455, 32767);
3173
- f(2199023288320, 32768);
3174
- f(2199090397185, 32769);
3175
- f(4397979467775, 65535);
3176
- f(4398046576640, 65536);
3177
- f(4398113685505, 65537);
3178
- f(8796026044415, 131071);
3179
- f(8796093153280, 131072);
3180
- f(8796160262145, 131073);
3181
- f(17592119197695, 262143);
3182
- f(17592186306560, 262144);
3183
- f(17592253415425, 262145);
3184
- f(35184305504255, 524287);
3185
- f(35184372613120, 524288);
3186
- f(35184439721985, 524289);
3187
- f(70368678117375, 1048575);
3188
- f(70368745226240, 1048576);
3189
- f(70368812335105, 1048577);
3190
- f(140737423343615, 2097151);
3191
- f(140737490452480, 2097152);
3192
- f(140737557561345, 2097153);
3193
- f(281474913796095, 4194303);
3194
- f(281474980904960, 4194304);
3195
- f(281475048013825, 4194305);
3196
- f(562949894701055, 8388607);
3197
- f(562949961809920, 8388608);
3198
- f(562950028918785, 8388609);
3199
- f(1125899856510975, 16777215);
3200
- f(1125899923619840, 16777216);
3201
- f(1125899990728705, 16777217);
3202
- x = 134217727;
3203
- f(0, 0);
3204
- f(134217727, 1);
3205
- f(268435454, 2);
3206
- f(402653181, 3);
3207
- f(536870908, 4);
3208
- f(671088635, 5);
3209
- f(939524089, 7);
3210
- f(1073741816, 8);
3211
- f(1207959543, 9);
3212
- f(2013265905, 15);
3213
- f(2147483632, 16);
3214
- f(2281701359, 17);
3215
- f(4160749537, 31);
3216
- f(4294967264, 32);
3217
- f(4429184991, 33);
3218
- f(8455716801, 63);
3219
- f(8589934528, 64);
3220
- f(8724152255, 65);
3221
- f(17045651329, 127);
3222
- f(17179869056, 128);
3223
- f(17314086783, 129);
3224
- f(34225520385, 255);
3225
- f(34359738112, 256);
3226
- f(34493955839, 257);
3227
- f(68585258497, 511);
3228
- f(68719476224, 512);
3229
- f(68853693951, 513);
3230
- f(137304734721, 1023);
3231
- f(137438952448, 1024);
3232
- f(137573170175, 1025);
3233
- f(274743687169, 2047);
3234
- f(274877904896, 2048);
3235
- f(275012122623, 2049);
3236
- f(549621592065, 4095);
3237
- f(549755809792, 4096);
3238
- f(549890027519, 4097);
3239
- f(1099377401857, 8191);
3240
- f(1099511619584, 8192);
3241
- f(1099645837311, 8193);
3242
- f(2198889021441, 16383);
3243
- f(2199023239168, 16384);
3244
- f(2199157456895, 16385);
3245
- f(4397912260609, 32767);
3246
- f(4398046478336, 32768);
3247
- f(4398180696063, 32769);
3248
- f(8795958738945, 65535);
3249
- f(8796092956672, 65536);
3250
- f(8796227174399, 65537);
3251
- f(17592051695617, 131071);
3252
- f(17592185913344, 131072);
3253
- f(17592320131071, 131073);
3254
- f(35184237608961, 262143);
3255
- f(35184371826688, 262144);
3256
- f(35184506044415, 262145);
3257
- f(70368609435649, 524287);
3258
- f(70368743653376, 524288);
3259
- f(70368877871103, 524289);
3260
- f(140737353089025, 1048575);
3261
- f(140737487306752, 1048576);
3262
- f(140737621524479, 1048577);
3263
- f(281474840395777, 2097151);
3264
- f(281474974613504, 2097152);
3265
- f(281475108831231, 2097153);
3266
- f(562949815009281, 4194303);
3267
- f(562949949227008, 4194304);
3268
- f(562950083444735, 4194305);
3269
- f(1125899764236289, 8388607);
3270
- f(1125899898454016, 8388608);
3271
- f(1125900032671743, 8388609);
3272
- x = 134217728;
3273
- f(0, 0);
3274
- f(134217728, 1);
3275
- f(268435456, 2);
3276
- f(402653184, 3);
3277
- f(536870912, 4);
3278
- f(671088640, 5);
3279
- f(939524096, 7);
3280
- f(1073741824, 8);
3281
- f(1207959552, 9);
3282
- f(2013265920, 15);
3283
- f(2147483648, 16);
3284
- f(2281701376, 17);
3285
- f(4160749568, 31);
3286
- f(4294967296, 32);
3287
- f(4429185024, 33);
3288
- f(8455716864, 63);
3289
- f(8589934592, 64);
3290
- f(8724152320, 65);
3291
- f(17045651456, 127);
3292
- f(17179869184, 128);
3293
- f(17314086912, 129);
3294
- f(34225520640, 255);
3295
- f(34359738368, 256);
3296
- f(34493956096, 257);
3297
- f(68585259008, 511);
3298
- f(68719476736, 512);
3299
- f(68853694464, 513);
3300
- f(137304735744, 1023);
3301
- f(137438953472, 1024);
3302
- f(137573171200, 1025);
3303
- f(274743689216, 2047);
3304
- f(274877906944, 2048);
3305
- f(275012124672, 2049);
3306
- f(549621596160, 4095);
3307
- f(549755813888, 4096);
3308
- f(549890031616, 4097);
3309
- f(1099377410048, 8191);
3310
- f(1099511627776, 8192);
3311
- f(1099645845504, 8193);
3312
- f(2198889037824, 16383);
3313
- f(2199023255552, 16384);
3314
- f(2199157473280, 16385);
3315
- f(4397912293376, 32767);
3316
- f(4398046511104, 32768);
3317
- f(4398180728832, 32769);
3318
- f(8795958804480, 65535);
3319
- f(8796093022208, 65536);
3320
- f(8796227239936, 65537);
3321
- f(17592051826688, 131071);
3322
- f(17592186044416, 131072);
3323
- f(17592320262144, 131073);
3324
- f(35184237871104, 262143);
3325
- f(35184372088832, 262144);
3326
- f(35184506306560, 262145);
3327
- f(70368609959936, 524287);
3328
- f(70368744177664, 524288);
3329
- f(70368878395392, 524289);
3330
- f(140737354137600, 1048575);
3331
- f(140737488355328, 1048576);
3332
- f(140737622573056, 1048577);
3333
- f(281474842492928, 2097151);
3334
- f(281474976710656, 2097152);
3335
- f(281475110928384, 2097153);
3336
- f(562949819203584, 4194303);
3337
- f(562949953421312, 4194304);
3338
- f(562950087639040, 4194305);
3339
- f(1125899772624896, 8388607);
3340
- f(1125899906842624, 8388608);
3341
- f(1125900041060352, 8388609);
3342
- x = 134217729;
3343
- f(0, 0);
3344
- f(134217729, 1);
3345
- f(268435458, 2);
3346
- f(402653187, 3);
3347
- f(536870916, 4);
3348
- f(671088645, 5);
3349
- f(939524103, 7);
3350
- f(1073741832, 8);
3351
- f(1207959561, 9);
3352
- f(2013265935, 15);
3353
- f(2147483664, 16);
3354
- f(2281701393, 17);
3355
- f(4160749599, 31);
3356
- f(4294967328, 32);
3357
- f(4429185057, 33);
3358
- f(8455716927, 63);
3359
- f(8589934656, 64);
3360
- f(8724152385, 65);
3361
- f(17045651583, 127);
3362
- f(17179869312, 128);
3363
- f(17314087041, 129);
3364
- f(34225520895, 255);
3365
- f(34359738624, 256);
3366
- f(34493956353, 257);
3367
- f(68585259519, 511);
3368
- f(68719477248, 512);
3369
- f(68853694977, 513);
3370
- f(137304736767, 1023);
3371
- f(137438954496, 1024);
3372
- f(137573172225, 1025);
3373
- f(274743691263, 2047);
3374
- f(274877908992, 2048);
3375
- f(275012126721, 2049);
3376
- f(549621600255, 4095);
3377
- f(549755817984, 4096);
3378
- f(549890035713, 4097);
3379
- f(1099377418239, 8191);
3380
- f(1099511635968, 8192);
3381
- f(1099645853697, 8193);
3382
- f(2198889054207, 16383);
3383
- f(2199023271936, 16384);
3384
- f(2199157489665, 16385);
3385
- f(4397912326143, 32767);
3386
- f(4398046543872, 32768);
3387
- f(4398180761601, 32769);
3388
- f(8795958870015, 65535);
3389
- f(8796093087744, 65536);
3390
- f(8796227305473, 65537);
3391
- f(17592051957759, 131071);
3392
- f(17592186175488, 131072);
3393
- f(17592320393217, 131073);
3394
- f(35184238133247, 262143);
3395
- f(35184372350976, 262144);
3396
- f(35184506568705, 262145);
3397
- f(70368610484223, 524287);
3398
- f(70368744701952, 524288);
3399
- f(70368878919681, 524289);
3400
- f(140737355186175, 1048575);
3401
- f(140737489403904, 1048576);
3402
- f(140737623621633, 1048577);
3403
- f(281474844590079, 2097151);
3404
- f(281474978807808, 2097152);
3405
- f(281475113025537, 2097153);
3406
- f(562949823397887, 4194303);
3407
- f(562949957615616, 4194304);
3408
- f(562950091833345, 4194305);
3409
- f(1125899781013503, 8388607);
3410
- f(1125899915231232, 8388608);
3411
- f(1125900049448961, 8388609);
3412
- x = 268435455;
3413
- f(0, 0);
3414
- f(268435455, 1);
3415
- f(536870910, 2);
3416
- f(805306365, 3);
3417
- f(1073741820, 4);
3418
- f(1342177275, 5);
3419
- f(1879048185, 7);
3420
- f(2147483640, 8);
3421
- f(2415919095, 9);
3422
- f(4026531825, 15);
3423
- f(4294967280, 16);
3424
- f(4563402735, 17);
3425
- f(8321499105, 31);
3426
- f(8589934560, 32);
3427
- f(8858370015, 33);
3428
- f(16911433665, 63);
3429
- f(17179869120, 64);
3430
- f(17448304575, 65);
3431
- f(34091302785, 127);
3432
- f(34359738240, 128);
3433
- f(34628173695, 129);
3434
- f(68451041025, 255);
3435
- f(68719476480, 256);
3436
- f(68987911935, 257);
3437
- f(137170517505, 511);
3438
- f(137438952960, 512);
3439
- f(137707388415, 513);
3440
- f(274609470465, 1023);
3441
- f(274877905920, 1024);
3442
- f(275146341375, 1025);
3443
- f(549487376385, 2047);
3444
- f(549755811840, 2048);
3445
- f(550024247295, 2049);
3446
- f(1099243188225, 4095);
3447
- f(1099511623680, 4096);
3448
- f(1099780059135, 4097);
3449
- f(2198754811905, 8191);
3450
- f(2199023247360, 8192);
3451
- f(2199291682815, 8193);
3452
- f(4397778059265, 16383);
3453
- f(4398046494720, 16384);
3454
- f(4398314930175, 16385);
3455
- f(8795824553985, 32767);
3456
- f(8796092989440, 32768);
3457
- f(8796361424895, 32769);
3458
- f(17591917543425, 65535);
3459
- f(17592185978880, 65536);
3460
- f(17592454414335, 65537);
3461
- f(35184103522305, 131071);
3462
- f(35184371957760, 131072);
3463
- f(35184640393215, 131073);
3464
- f(70368475480065, 262143);
3465
- f(70368743915520, 262144);
3466
- f(70369012350975, 262145);
3467
- f(140737219395585, 524287);
3468
- f(140737487831040, 524288);
3469
- f(140737756266495, 524289);
3470
- f(281474707226625, 1048575);
3471
- f(281474975662080, 1048576);
3472
- f(281475244097535, 1048577);
3473
- f(562949682888705, 2097151);
3474
- f(562949951324160, 2097152);
3475
- f(562950219759615, 2097153);
3476
- f(1125899634212865, 4194303);
3477
- f(1125899902648320, 4194304);
3478
- f(1125900171083775, 4194305);
3479
- x = 268435456;
3480
- f(0, 0);
3481
- f(268435456, 1);
3482
- f(536870912, 2);
3483
- f(805306368, 3);
3484
- f(1073741824, 4);
3485
- f(1342177280, 5);
3486
- f(1879048192, 7);
3487
- f(2147483648, 8);
3488
- f(2415919104, 9);
3489
- f(4026531840, 15);
3490
- f(4294967296, 16);
3491
- f(4563402752, 17);
3492
- f(8321499136, 31);
3493
- f(8589934592, 32);
3494
- f(8858370048, 33);
3495
- f(16911433728, 63);
3496
- f(17179869184, 64);
3497
- f(17448304640, 65);
3498
- f(34091302912, 127);
3499
- f(34359738368, 128);
3500
- f(34628173824, 129);
3501
- f(68451041280, 255);
3502
- f(68719476736, 256);
3503
- f(68987912192, 257);
3504
- f(137170518016, 511);
3505
- f(137438953472, 512);
3506
- f(137707388928, 513);
3507
- f(274609471488, 1023);
3508
- f(274877906944, 1024);
3509
- f(275146342400, 1025);
3510
- f(549487378432, 2047);
3511
- f(549755813888, 2048);
3512
- f(550024249344, 2049);
3513
- f(1099243192320, 4095);
3514
- f(1099511627776, 4096);
3515
- f(1099780063232, 4097);
3516
- f(2198754820096, 8191);
3517
- f(2199023255552, 8192);
3518
- f(2199291691008, 8193);
3519
- f(4397778075648, 16383);
3520
- f(4398046511104, 16384);
3521
- f(4398314946560, 16385);
3522
- f(8795824586752, 32767);
3523
- f(8796093022208, 32768);
3524
- f(8796361457664, 32769);
3525
- f(17591917608960, 65535);
3526
- f(17592186044416, 65536);
3527
- f(17592454479872, 65537);
3528
- f(35184103653376, 131071);
3529
- f(35184372088832, 131072);
3530
- f(35184640524288, 131073);
3531
- f(70368475742208, 262143);
3532
- f(70368744177664, 262144);
3533
- f(70369012613120, 262145);
3534
- f(140737219919872, 524287);
3535
- f(140737488355328, 524288);
3536
- f(140737756790784, 524289);
3537
- f(281474708275200, 1048575);
3538
- f(281474976710656, 1048576);
3539
- f(281475245146112, 1048577);
3540
- f(562949684985856, 2097151);
3541
- f(562949953421312, 2097152);
3542
- f(562950221856768, 2097153);
3543
- f(1125899638407168, 4194303);
3544
- f(1125899906842624, 4194304);
3545
- f(1125900175278080, 4194305);
3546
- x = 268435457;
3547
- f(0, 0);
3548
- f(268435457, 1);
3549
- f(536870914, 2);
3550
- f(805306371, 3);
3551
- f(1073741828, 4);
3552
- f(1342177285, 5);
3553
- f(1879048199, 7);
3554
- f(2147483656, 8);
3555
- f(2415919113, 9);
3556
- f(4026531855, 15);
3557
- f(4294967312, 16);
3558
- f(4563402769, 17);
3559
- f(8321499167, 31);
3560
- f(8589934624, 32);
3561
- f(8858370081, 33);
3562
- f(16911433791, 63);
3563
- f(17179869248, 64);
3564
- f(17448304705, 65);
3565
- f(34091303039, 127);
3566
- f(34359738496, 128);
3567
- f(34628173953, 129);
3568
- f(68451041535, 255);
3569
- f(68719476992, 256);
3570
- f(68987912449, 257);
3571
- f(137170518527, 511);
3572
- f(137438953984, 512);
3573
- f(137707389441, 513);
3574
- f(274609472511, 1023);
3575
- f(274877907968, 1024);
3576
- f(275146343425, 1025);
3577
- f(549487380479, 2047);
3578
- f(549755815936, 2048);
3579
- f(550024251393, 2049);
3580
- f(1099243196415, 4095);
3581
- f(1099511631872, 4096);
3582
- f(1099780067329, 4097);
3583
- f(2198754828287, 8191);
3584
- f(2199023263744, 8192);
3585
- f(2199291699201, 8193);
3586
- f(4397778092031, 16383);
3587
- f(4398046527488, 16384);
3588
- f(4398314962945, 16385);
3589
- f(8795824619519, 32767);
3590
- f(8796093054976, 32768);
3591
- f(8796361490433, 32769);
3592
- f(17591917674495, 65535);
3593
- f(17592186109952, 65536);
3594
- f(17592454545409, 65537);
3595
- f(35184103784447, 131071);
3596
- f(35184372219904, 131072);
3597
- f(35184640655361, 131073);
3598
- f(70368476004351, 262143);
3599
- f(70368744439808, 262144);
3600
- f(70369012875265, 262145);
3601
- f(140737220444159, 524287);
3602
- f(140737488879616, 524288);
3603
- f(140737757315073, 524289);
3604
- f(281474709323775, 1048575);
3605
- f(281474977759232, 1048576);
3606
- f(281475246194689, 1048577);
3607
- f(562949687083007, 2097151);
3608
- f(562949955518464, 2097152);
3609
- f(562950223953921, 2097153);
3610
- f(1125899642601471, 4194303);
3611
- f(1125899911036928, 4194304);
3612
- f(1125900179472385, 4194305);
3613
- x = 536870911;
3614
- f(0, 0);
3615
- f(536870911, 1);
3616
- f(1073741822, 2);
3617
- f(1610612733, 3);
3618
- f(2147483644, 4);
3619
- f(2684354555, 5);
3620
- f(3758096377, 7);
3621
- f(4294967288, 8);
3622
- f(4831838199, 9);
3623
- f(8053063665, 15);
3624
- f(8589934576, 16);
3625
- f(9126805487, 17);
3626
- f(16642998241, 31);
3627
- f(17179869152, 32);
3628
- f(17716740063, 33);
3629
- f(33822867393, 63);
3630
- f(34359738304, 64);
3631
- f(34896609215, 65);
3632
- f(68182605697, 127);
3633
- f(68719476608, 128);
3634
- f(69256347519, 129);
3635
- f(136902082305, 255);
3636
- f(137438953216, 256);
3637
- f(137975824127, 257);
3638
- f(274341035521, 511);
3639
- f(274877906432, 512);
3640
- f(275414777343, 513);
3641
- f(549218941953, 1023);
3642
- f(549755812864, 1024);
3643
- f(550292683775, 1025);
3644
- f(1098974754817, 2047);
3645
- f(1099511625728, 2048);
3646
- f(1100048496639, 2049);
3647
- f(2198486380545, 4095);
3648
- f(2199023251456, 4096);
3649
- f(2199560122367, 4097);
3650
- f(4397509632001, 8191);
3651
- f(4398046502912, 8192);
3652
- f(4398583373823, 8193);
3653
- f(8795556134913, 16383);
3654
- f(8796093005824, 16384);
3655
- f(8796629876735, 16385);
3656
- f(17591649140737, 32767);
3657
- f(17592186011648, 32768);
3658
- f(17592722882559, 32769);
3659
- f(35183835152385, 65535);
3660
- f(35184372023296, 65536);
3661
- f(35184908894207, 65537);
3662
- f(70368207175681, 131071);
3663
- f(70368744046592, 131072);
3664
- f(70369280917503, 131073);
3665
- f(140736951222273, 262143);
3666
- f(140737488093184, 262144);
3667
- f(140738024964095, 262145);
3668
- f(281474439315457, 524287);
3669
- f(281474976186368, 524288);
3670
- f(281475513057279, 524289);
3671
- f(562949415501825, 1048575);
3672
- f(562949952372736, 1048576);
3673
- f(562950489243647, 1048577);
3674
- f(1125899367874561, 2097151);
3675
- f(1125899904745472, 2097152);
3676
- f(1125900441616383, 2097153);
3677
- x = 536870912;
3678
- f(0, 0);
3679
- f(536870912, 1);
3680
- f(1073741824, 2);
3681
- f(1610612736, 3);
3682
- f(2147483648, 4);
3683
- f(2684354560, 5);
3684
- f(3758096384, 7);
3685
- f(4294967296, 8);
3686
- f(4831838208, 9);
3687
- f(8053063680, 15);
3688
- f(8589934592, 16);
3689
- f(9126805504, 17);
3690
- f(16642998272, 31);
3691
- f(17179869184, 32);
3692
- f(17716740096, 33);
3693
- f(33822867456, 63);
3694
- f(34359738368, 64);
3695
- f(34896609280, 65);
3696
- f(68182605824, 127);
3697
- f(68719476736, 128);
3698
- f(69256347648, 129);
3699
- f(136902082560, 255);
3700
- f(137438953472, 256);
3701
- f(137975824384, 257);
3702
- f(274341036032, 511);
3703
- f(274877906944, 512);
3704
- f(275414777856, 513);
3705
- f(549218942976, 1023);
3706
- f(549755813888, 1024);
3707
- f(550292684800, 1025);
3708
- f(1098974756864, 2047);
3709
- f(1099511627776, 2048);
3710
- f(1100048498688, 2049);
3711
- f(2198486384640, 4095);
3712
- f(2199023255552, 4096);
3713
- f(2199560126464, 4097);
3714
- f(4397509640192, 8191);
3715
- f(4398046511104, 8192);
3716
- f(4398583382016, 8193);
3717
- f(8795556151296, 16383);
3718
- f(8796093022208, 16384);
3719
- f(8796629893120, 16385);
3720
- f(17591649173504, 32767);
3721
- f(17592186044416, 32768);
3722
- f(17592722915328, 32769);
3723
- f(35183835217920, 65535);
3724
- f(35184372088832, 65536);
3725
- f(35184908959744, 65537);
3726
- f(70368207306752, 131071);
3727
- f(70368744177664, 131072);
3728
- f(70369281048576, 131073);
3729
- f(140736951484416, 262143);
3730
- f(140737488355328, 262144);
3731
- f(140738025226240, 262145);
3732
- f(281474439839744, 524287);
3733
- f(281474976710656, 524288);
3734
- f(281475513581568, 524289);
3735
- f(562949416550400, 1048575);
3736
- f(562949953421312, 1048576);
3737
- f(562950490292224, 1048577);
3738
- f(1125899369971712, 2097151);
3739
- f(1125899906842624, 2097152);
3740
- f(1125900443713536, 2097153);
3741
- x = 536870913;
3742
- f(0, 0);
3743
- f(536870913, 1);
3744
- f(1073741826, 2);
3745
- f(1610612739, 3);
3746
- f(2147483652, 4);
3747
- f(2684354565, 5);
3748
- f(3758096391, 7);
3749
- f(4294967304, 8);
3750
- f(4831838217, 9);
3751
- f(8053063695, 15);
3752
- f(8589934608, 16);
3753
- f(9126805521, 17);
3754
- f(16642998303, 31);
3755
- f(17179869216, 32);
3756
- f(17716740129, 33);
3757
- f(33822867519, 63);
3758
- f(34359738432, 64);
3759
- f(34896609345, 65);
3760
- f(68182605951, 127);
3761
- f(68719476864, 128);
3762
- f(69256347777, 129);
3763
- f(136902082815, 255);
3764
- f(137438953728, 256);
3765
- f(137975824641, 257);
3766
- f(274341036543, 511);
3767
- f(274877907456, 512);
3768
- f(275414778369, 513);
3769
- f(549218943999, 1023);
3770
- f(549755814912, 1024);
3771
- f(550292685825, 1025);
3772
- f(1098974758911, 2047);
3773
- f(1099511629824, 2048);
3774
- f(1100048500737, 2049);
3775
- f(2198486388735, 4095);
3776
- f(2199023259648, 4096);
3777
- f(2199560130561, 4097);
3778
- f(4397509648383, 8191);
3779
- f(4398046519296, 8192);
3780
- f(4398583390209, 8193);
3781
- f(8795556167679, 16383);
3782
- f(8796093038592, 16384);
3783
- f(8796629909505, 16385);
3784
- f(17591649206271, 32767);
3785
- f(17592186077184, 32768);
3786
- f(17592722948097, 32769);
3787
- f(35183835283455, 65535);
3788
- f(35184372154368, 65536);
3789
- f(35184909025281, 65537);
3790
- f(70368207437823, 131071);
3791
- f(70368744308736, 131072);
3792
- f(70369281179649, 131073);
3793
- f(140736951746559, 262143);
3794
- f(140737488617472, 262144);
3795
- f(140738025488385, 262145);
3796
- f(281474440364031, 524287);
3797
- f(281474977234944, 524288);
3798
- f(281475514105857, 524289);
3799
- f(562949417598975, 1048575);
3800
- f(562949954469888, 1048576);
3801
- f(562950491340801, 1048577);
3802
- f(1125899372068863, 2097151);
3803
- f(1125899908939776, 2097152);
3804
- f(1125900445810689, 2097153);
3805
- x = 1073741823;
3806
- f(0, 0);
3807
- f(1073741823, 1);
3808
- f(2147483646, 2);
3809
- f(3221225469, 3);
3810
- f(4294967292, 4);
3811
- f(5368709115, 5);
3812
- f(7516192761, 7);
3813
- f(8589934584, 8);
3814
- f(9663676407, 9);
3815
- f(16106127345, 15);
3816
- f(17179869168, 16);
3817
- f(18253610991, 17);
3818
- f(33285996513, 31);
3819
- f(34359738336, 32);
3820
- f(35433480159, 33);
3821
- f(67645734849, 63);
3822
- f(68719476672, 64);
3823
- f(69793218495, 65);
3824
- f(136365211521, 127);
3825
- f(137438953344, 128);
3826
- f(138512695167, 129);
3827
- f(273804164865, 255);
3828
- f(274877906688, 256);
3829
- f(275951648511, 257);
3830
- f(548682071553, 511);
3831
- f(549755813376, 512);
3832
- f(550829555199, 513);
3833
- f(1098437884929, 1023);
3834
- f(1099511626752, 1024);
3835
- f(1100585368575, 1025);
3836
- f(2197949511681, 2047);
3837
- f(2199023253504, 2048);
3838
- f(2200096995327, 2049);
3839
- f(4396972765185, 4095);
3840
- f(4398046507008, 4096);
3841
- f(4399120248831, 4097);
3842
- f(8795019272193, 8191);
3843
- f(8796093014016, 8192);
3844
- f(8797166755839, 8193);
3845
- f(17591112286209, 16383);
3846
- f(17592186028032, 16384);
3847
- f(17593259769855, 16385);
3848
- f(35183298314241, 32767);
3849
- f(35184372056064, 32768);
3850
- f(35185445797887, 32769);
3851
- f(70367670370305, 65535);
3852
- f(70368744112128, 65536);
3853
- f(70369817853951, 65537);
3854
- f(140736414482433, 131071);
3855
- f(140737488224256, 131072);
3856
- f(140738561966079, 131073);
3857
- f(281473902706689, 262143);
3858
- f(281474976448512, 262144);
3859
- f(281476050190335, 262145);
3860
- f(562948879155201, 524287);
3861
- f(562949952897024, 524288);
3862
- f(562951026638847, 524289);
3863
- f(1125898832052225, 1048575);
3864
- f(1125899905794048, 1048576);
3865
- f(1125900979535871, 1048577);
3866
- x = 1073741824;
3867
- f(0, 0);
3868
- f(1073741824, 1);
3869
- f(2147483648, 2);
3870
- f(3221225472, 3);
3871
- f(4294967296, 4);
3872
- f(5368709120, 5);
3873
- f(7516192768, 7);
3874
- f(8589934592, 8);
3875
- f(9663676416, 9);
3876
- f(16106127360, 15);
3877
- f(17179869184, 16);
3878
- f(18253611008, 17);
3879
- f(33285996544, 31);
3880
- f(34359738368, 32);
3881
- f(35433480192, 33);
3882
- f(67645734912, 63);
3883
- f(68719476736, 64);
3884
- f(69793218560, 65);
3885
- f(136365211648, 127);
3886
- f(137438953472, 128);
3887
- f(138512695296, 129);
3888
- f(273804165120, 255);
3889
- f(274877906944, 256);
3890
- f(275951648768, 257);
3891
- f(548682072064, 511);
3892
- f(549755813888, 512);
3893
- f(550829555712, 513);
3894
- f(1098437885952, 1023);
3895
- f(1099511627776, 1024);
3896
- f(1100585369600, 1025);
3897
- f(2197949513728, 2047);
3898
- f(2199023255552, 2048);
3899
- f(2200096997376, 2049);
3900
- f(4396972769280, 4095);
3901
- f(4398046511104, 4096);
3902
- f(4399120252928, 4097);
3903
- f(8795019280384, 8191);
3904
- f(8796093022208, 8192);
3905
- f(8797166764032, 8193);
3906
- f(17591112302592, 16383);
3907
- f(17592186044416, 16384);
3908
- f(17593259786240, 16385);
3909
- f(35183298347008, 32767);
3910
- f(35184372088832, 32768);
3911
- f(35185445830656, 32769);
3912
- f(70367670435840, 65535);
3913
- f(70368744177664, 65536);
3914
- f(70369817919488, 65537);
3915
- f(140736414613504, 131071);
3916
- f(140737488355328, 131072);
3917
- f(140738562097152, 131073);
3918
- f(281473902968832, 262143);
3919
- f(281474976710656, 262144);
3920
- f(281476050452480, 262145);
3921
- f(562948879679488, 524287);
3922
- f(562949953421312, 524288);
3923
- f(562951027163136, 524289);
3924
- f(1125898833100800, 1048575);
3925
- f(1125899906842624, 1048576);
3926
- f(1125900980584448, 1048577);
3927
- x = 1073741825;
3928
- f(0, 0);
3929
- f(1073741825, 1);
3930
- f(2147483650, 2);
3931
- f(3221225475, 3);
3932
- f(4294967300, 4);
3933
- f(5368709125, 5);
3934
- f(7516192775, 7);
3935
- f(8589934600, 8);
3936
- f(9663676425, 9);
3937
- f(16106127375, 15);
3938
- f(17179869200, 16);
3939
- f(18253611025, 17);
3940
- f(33285996575, 31);
3941
- f(34359738400, 32);
3942
- f(35433480225, 33);
3943
- f(67645734975, 63);
3944
- f(68719476800, 64);
3945
- f(69793218625, 65);
3946
- f(136365211775, 127);
3947
- f(137438953600, 128);
3948
- f(138512695425, 129);
3949
- f(273804165375, 255);
3950
- f(274877907200, 256);
3951
- f(275951649025, 257);
3952
- f(548682072575, 511);
3953
- f(549755814400, 512);
3954
- f(550829556225, 513);
3955
- f(1098437886975, 1023);
3956
- f(1099511628800, 1024);
3957
- f(1100585370625, 1025);
3958
- f(2197949515775, 2047);
3959
- f(2199023257600, 2048);
3960
- f(2200096999425, 2049);
3961
- f(4396972773375, 4095);
3962
- f(4398046515200, 4096);
3963
- f(4399120257025, 4097);
3964
- f(8795019288575, 8191);
3965
- f(8796093030400, 8192);
3966
- f(8797166772225, 8193);
3967
- f(17591112318975, 16383);
3968
- f(17592186060800, 16384);
3969
- f(17593259802625, 16385);
3970
- f(35183298379775, 32767);
3971
- f(35184372121600, 32768);
3972
- f(35185445863425, 32769);
3973
- f(70367670501375, 65535);
3974
- f(70368744243200, 65536);
3975
- f(70369817985025, 65537);
3976
- f(140736414744575, 131071);
3977
- f(140737488486400, 131072);
3978
- f(140738562228225, 131073);
3979
- f(281473903230975, 262143);
3980
- f(281474976972800, 262144);
3981
- f(281476050714625, 262145);
3982
- f(562948880203775, 524287);
3983
- f(562949953945600, 524288);
3984
- f(562951027687425, 524289);
3985
- f(1125898834149375, 1048575);
3986
- f(1125899907891200, 1048576);
3987
- f(1125900981633025, 1048577);
3988
- x = 2147483647;
3989
- f(0, 0);
3990
- f(2147483647, 1);
3991
- f(4294967294, 2);
3992
- f(6442450941, 3);
3993
- f(8589934588, 4);
3994
- f(10737418235, 5);
3995
- f(15032385529, 7);
3996
- f(17179869176, 8);
3997
- f(19327352823, 9);
3998
- f(32212254705, 15);
3999
- f(34359738352, 16);
4000
- f(36507221999, 17);
4001
- f(66571993057, 31);
4002
- f(68719476704, 32);
4003
- f(70866960351, 33);
4004
- f(135291469761, 63);
4005
- f(137438953408, 64);
4006
- f(139586437055, 65);
4007
- f(272730423169, 127);
4008
- f(274877906816, 128);
4009
- f(277025390463, 129);
4010
- f(547608329985, 255);
4011
- f(549755813632, 256);
4012
- f(551903297279, 257);
4013
- f(1097364143617, 511);
4014
- f(1099511627264, 512);
4015
- f(1101659110911, 513);
4016
- f(2196875770881, 1023);
4017
- f(2199023254528, 1024);
4018
- f(2201170738175, 1025);
4019
- f(4395899025409, 2047);
4020
- f(4398046509056, 2048);
4021
- f(4400193992703, 2049);
4022
- f(8793945534465, 4095);
4023
- f(8796093018112, 4096);
4024
- f(8798240501759, 4097);
4025
- f(17590038552577, 8191);
4026
- f(17592186036224, 8192);
4027
- f(17594333519871, 8193);
4028
- f(35182224588801, 16383);
4029
- f(35184372072448, 16384);
4030
- f(35186519556095, 16385);
4031
- f(70366596661249, 32767);
4032
- f(70368744144896, 32768);
4033
- f(70370891628543, 32769);
4034
- f(140735340806145, 65535);
4035
- f(140737488289792, 65536);
4036
- f(140739635773439, 65537);
4037
- f(281472829095937, 131071);
4038
- f(281474976579584, 131072);
4039
- f(281477124063231, 131073);
4040
- f(562947805675521, 262143);
4041
- f(562949953159168, 262144);
4042
- f(562952100642815, 262145);
4043
- f(1125897758834689, 524287);
4044
- f(1125899906318336, 524288);
4045
- f(1125902053801983, 524289);
4046
- x = 2147483648;
4047
- f(0, 0);
4048
- f(2147483648, 1);
4049
- f(4294967296, 2);
4050
- f(6442450944, 3);
4051
- f(8589934592, 4);
4052
- f(10737418240, 5);
4053
- f(15032385536, 7);
4054
- f(17179869184, 8);
4055
- f(19327352832, 9);
4056
- f(32212254720, 15);
4057
- f(34359738368, 16);
4058
- f(36507222016, 17);
4059
- f(66571993088, 31);
4060
- f(68719476736, 32);
4061
- f(70866960384, 33);
4062
- f(135291469824, 63);
4063
- f(137438953472, 64);
4064
- f(139586437120, 65);
4065
- f(272730423296, 127);
4066
- f(274877906944, 128);
4067
- f(277025390592, 129);
4068
- f(547608330240, 255);
4069
- f(549755813888, 256);
4070
- f(551903297536, 257);
4071
- f(1097364144128, 511);
4072
- f(1099511627776, 512);
4073
- f(1101659111424, 513);
4074
- f(2196875771904, 1023);
4075
- f(2199023255552, 1024);
4076
- f(2201170739200, 1025);
4077
- f(4395899027456, 2047);
4078
- f(4398046511104, 2048);
4079
- f(4400193994752, 2049);
4080
- f(8793945538560, 4095);
4081
- f(8796093022208, 4096);
4082
- f(8798240505856, 4097);
4083
- f(17590038560768, 8191);
4084
- f(17592186044416, 8192);
4085
- f(17594333528064, 8193);
4086
- f(35182224605184, 16383);
4087
- f(35184372088832, 16384);
4088
- f(35186519572480, 16385);
4089
- f(70366596694016, 32767);
4090
- f(70368744177664, 32768);
4091
- f(70370891661312, 32769);
4092
- f(140735340871680, 65535);
4093
- f(140737488355328, 65536);
4094
- f(140739635838976, 65537);
4095
- f(281472829227008, 131071);
4096
- f(281474976710656, 131072);
4097
- f(281477124194304, 131073);
4098
- f(562947805937664, 262143);
4099
- f(562949953421312, 262144);
4100
- f(562952100904960, 262145);
4101
- f(1125897759358976, 524287);
4102
- f(1125899906842624, 524288);
4103
- f(1125902054326272, 524289);
4104
- x = 2147483649;
4105
- f(0, 0);
4106
- f(2147483649, 1);
4107
- f(4294967298, 2);
4108
- f(6442450947, 3);
4109
- f(8589934596, 4);
4110
- f(10737418245, 5);
4111
- f(15032385543, 7);
4112
- f(17179869192, 8);
4113
- f(19327352841, 9);
4114
- f(32212254735, 15);
4115
- f(34359738384, 16);
4116
- f(36507222033, 17);
4117
- f(66571993119, 31);
4118
- f(68719476768, 32);
4119
- f(70866960417, 33);
4120
- f(135291469887, 63);
4121
- f(137438953536, 64);
4122
- f(139586437185, 65);
4123
- f(272730423423, 127);
4124
- f(274877907072, 128);
4125
- f(277025390721, 129);
4126
- f(547608330495, 255);
4127
- f(549755814144, 256);
4128
- f(551903297793, 257);
4129
- f(1097364144639, 511);
4130
- f(1099511628288, 512);
4131
- f(1101659111937, 513);
4132
- f(2196875772927, 1023);
4133
- f(2199023256576, 1024);
4134
- f(2201170740225, 1025);
4135
- f(4395899029503, 2047);
4136
- f(4398046513152, 2048);
4137
- f(4400193996801, 2049);
4138
- f(8793945542655, 4095);
4139
- f(8796093026304, 4096);
4140
- f(8798240509953, 4097);
4141
- f(17590038568959, 8191);
4142
- f(17592186052608, 8192);
4143
- f(17594333536257, 8193);
4144
- f(35182224621567, 16383);
4145
- f(35184372105216, 16384);
4146
- f(35186519588865, 16385);
4147
- f(70366596726783, 32767);
4148
- f(70368744210432, 32768);
4149
- f(70370891694081, 32769);
4150
- f(140735340937215, 65535);
4151
- f(140737488420864, 65536);
4152
- f(140739635904513, 65537);
4153
- f(281472829358079, 131071);
4154
- f(281474976841728, 131072);
4155
- f(281477124325377, 131073);
4156
- f(562947806199807, 262143);
4157
- f(562949953683456, 262144);
4158
- f(562952101167105, 262145);
4159
- f(1125897759883263, 524287);
4160
- f(1125899907366912, 524288);
4161
- f(1125902054850561, 524289);
4162
- x = 4294967295;
4163
- f(0, 0);
4164
- f(4294967295, 1);
4165
- f(8589934590, 2);
4166
- f(12884901885, 3);
4167
- f(17179869180, 4);
4168
- f(21474836475, 5);
4169
- f(30064771065, 7);
4170
- f(34359738360, 8);
4171
- f(38654705655, 9);
4172
- f(64424509425, 15);
4173
- f(68719476720, 16);
4174
- f(73014444015, 17);
4175
- f(133143986145, 31);
4176
- f(137438953440, 32);
4177
- f(141733920735, 33);
4178
- f(270582939585, 63);
4179
- f(274877906880, 64);
4180
- f(279172874175, 65);
4181
- f(545460846465, 127);
4182
- f(549755813760, 128);
4183
- f(554050781055, 129);
4184
- f(1095216660225, 255);
4185
- f(1099511627520, 256);
4186
- f(1103806594815, 257);
4187
- f(2194728287745, 511);
4188
- f(2199023255040, 512);
4189
- f(2203318222335, 513);
4190
- f(4393751542785, 1023);
4191
- f(4398046510080, 1024);
4192
- f(4402341477375, 1025);
4193
- f(8791798052865, 2047);
4194
- f(8796093020160, 2048);
4195
- f(8800387987455, 2049);
4196
- f(17587891073025, 4095);
4197
- f(17592186040320, 4096);
4198
- f(17596481007615, 4097);
4199
- f(35180077113345, 8191);
4200
- f(35184372080640, 8192);
4201
- f(35188667047935, 8193);
4202
- f(70364449193985, 16383);
4203
- f(70368744161280, 16384);
4204
- f(70373039128575, 16385);
4205
- f(140733193355265, 32767);
4206
- f(140737488322560, 32768);
4207
- f(140741783289855, 32769);
4208
- f(281470681677825, 65535);
4209
- f(281474976645120, 65536);
4210
- f(281479271612415, 65537);
4211
- f(562945658322945, 131071);
4212
- f(562949953290240, 131072);
4213
- f(562954248257535, 131073);
4214
- f(1125895611613185, 262143);
4215
- f(1125899906580480, 262144);
4216
- f(1125904201547775, 262145);
4217
- x = 4294967296;
4218
- f(0, 0);
4219
- f(4294967296, 1);
4220
- f(8589934592, 2);
4221
- f(12884901888, 3);
4222
- f(17179869184, 4);
4223
- f(21474836480, 5);
4224
- f(30064771072, 7);
4225
- f(34359738368, 8);
4226
- f(38654705664, 9);
4227
- f(64424509440, 15);
4228
- f(68719476736, 16);
4229
- f(73014444032, 17);
4230
- f(133143986176, 31);
4231
- f(137438953472, 32);
4232
- f(141733920768, 33);
4233
- f(270582939648, 63);
4234
- f(274877906944, 64);
4235
- f(279172874240, 65);
4236
- f(545460846592, 127);
4237
- f(549755813888, 128);
4238
- f(554050781184, 129);
4239
- f(1095216660480, 255);
4240
- f(1099511627776, 256);
4241
- f(1103806595072, 257);
4242
- f(2194728288256, 511);
4243
- f(2199023255552, 512);
4244
- f(2203318222848, 513);
4245
- f(4393751543808, 1023);
4246
- f(4398046511104, 1024);
4247
- f(4402341478400, 1025);
4248
- f(8791798054912, 2047);
4249
- f(8796093022208, 2048);
4250
- f(8800387989504, 2049);
4251
- f(17587891077120, 4095);
4252
- f(17592186044416, 4096);
4253
- f(17596481011712, 4097);
4254
- f(35180077121536, 8191);
4255
- f(35184372088832, 8192);
4256
- f(35188667056128, 8193);
4257
- f(70364449210368, 16383);
4258
- f(70368744177664, 16384);
4259
- f(70373039144960, 16385);
4260
- f(140733193388032, 32767);
4261
- f(140737488355328, 32768);
4262
- f(140741783322624, 32769);
4263
- f(281470681743360, 65535);
4264
- f(281474976710656, 65536);
4265
- f(281479271677952, 65537);
4266
- f(562945658454016, 131071);
4267
- f(562949953421312, 131072);
4268
- f(562954248388608, 131073);
4269
- f(1125895611875328, 262143);
4270
- f(1125899906842624, 262144);
4271
- f(1125904201809920, 262145);
4272
- x = 4294967297;
4273
- f(0, 0);
4274
- f(4294967297, 1);
4275
- f(8589934594, 2);
4276
- f(12884901891, 3);
4277
- f(17179869188, 4);
4278
- f(21474836485, 5);
4279
- f(30064771079, 7);
4280
- f(34359738376, 8);
4281
- f(38654705673, 9);
4282
- f(64424509455, 15);
4283
- f(68719476752, 16);
4284
- f(73014444049, 17);
4285
- f(133143986207, 31);
4286
- f(137438953504, 32);
4287
- f(141733920801, 33);
4288
- f(270582939711, 63);
4289
- f(274877907008, 64);
4290
- f(279172874305, 65);
4291
- f(545460846719, 127);
4292
- f(549755814016, 128);
4293
- f(554050781313, 129);
4294
- f(1095216660735, 255);
4295
- f(1099511628032, 256);
4296
- f(1103806595329, 257);
4297
- f(2194728288767, 511);
4298
- f(2199023256064, 512);
4299
- f(2203318223361, 513);
4300
- f(4393751544831, 1023);
4301
- f(4398046512128, 1024);
4302
- f(4402341479425, 1025);
4303
- f(8791798056959, 2047);
4304
- f(8796093024256, 2048);
4305
- f(8800387991553, 2049);
4306
- f(17587891081215, 4095);
4307
- f(17592186048512, 4096);
4308
- f(17596481015809, 4097);
4309
- f(35180077129727, 8191);
4310
- f(35184372097024, 8192);
4311
- f(35188667064321, 8193);
4312
- f(70364449226751, 16383);
4313
- f(70368744194048, 16384);
4314
- f(70373039161345, 16385);
4315
- f(140733193420799, 32767);
4316
- f(140737488388096, 32768);
4317
- f(140741783355393, 32769);
4318
- f(281470681808895, 65535);
4319
- f(281474976776192, 65536);
4320
- f(281479271743489, 65537);
4321
- f(562945658585087, 131071);
4322
- f(562949953552384, 131072);
4323
- f(562954248519681, 131073);
4324
- f(1125895612137471, 262143);
4325
- f(1125899907104768, 262144);
4326
- f(1125904202072065, 262145);
4327
- x = 8589934591;
4328
- f(0, 0);
4329
- f(8589934591, 1);
4330
- f(17179869182, 2);
4331
- f(25769803773, 3);
4332
- f(34359738364, 4);
4333
- f(42949672955, 5);
4334
- f(60129542137, 7);
4335
- f(68719476728, 8);
4336
- f(77309411319, 9);
4337
- f(128849018865, 15);
4338
- f(137438953456, 16);
4339
- f(146028888047, 17);
4340
- f(266287972321, 31);
4341
- f(274877906912, 32);
4342
- f(283467841503, 33);
4343
- f(541165879233, 63);
4344
- f(549755813824, 64);
4345
- f(558345748415, 65);
4346
- f(1090921693057, 127);
4347
- f(1099511627648, 128);
4348
- f(1108101562239, 129);
4349
- f(2190433320705, 255);
4350
- f(2199023255296, 256);
4351
- f(2207613189887, 257);
4352
- f(4389456576001, 511);
4353
- f(4398046510592, 512);
4354
- f(4406636445183, 513);
4355
- f(8787503086593, 1023);
4356
- f(8796093021184, 1024);
4357
- f(8804682955775, 1025);
4358
- f(17583596107777, 2047);
4359
- f(17592186042368, 2048);
4360
- f(17600775976959, 2049);
4361
- f(35175782150145, 4095);
4362
- f(35184372084736, 4096);
4363
- f(35192962019327, 4097);
4364
- f(70360154234881, 8191);
4365
- f(70368744169472, 8192);
4366
- f(70377334104063, 8193);
4367
- f(140728898404353, 16383);
4368
- f(140737488338944, 16384);
4369
- f(140746078273535, 16385);
4370
- f(281466386743297, 32767);
4371
- f(281474976677888, 32768);
4372
- f(281483566612479, 32769);
4373
- f(562941363421185, 65535);
4374
- f(562949953355776, 65536);
4375
- f(562958543290367, 65537);
4376
- f(1125891316776961, 131071);
4377
- f(1125899906711552, 131072);
4378
- f(1125908496646143, 131073);
4379
- x = 8589934592;
4380
- f(0, 0);
4381
- f(8589934592, 1);
4382
- f(17179869184, 2);
4383
- f(25769803776, 3);
4384
- f(34359738368, 4);
4385
- f(42949672960, 5);
4386
- f(60129542144, 7);
4387
- f(68719476736, 8);
4388
- f(77309411328, 9);
4389
- f(128849018880, 15);
4390
- f(137438953472, 16);
4391
- f(146028888064, 17);
4392
- f(266287972352, 31);
4393
- f(274877906944, 32);
4394
- f(283467841536, 33);
4395
- f(541165879296, 63);
4396
- f(549755813888, 64);
4397
- f(558345748480, 65);
4398
- f(1090921693184, 127);
4399
- f(1099511627776, 128);
4400
- f(1108101562368, 129);
4401
- f(2190433320960, 255);
4402
- f(2199023255552, 256);
4403
- f(2207613190144, 257);
4404
- f(4389456576512, 511);
4405
- f(4398046511104, 512);
4406
- f(4406636445696, 513);
4407
- f(8787503087616, 1023);
4408
- f(8796093022208, 1024);
4409
- f(8804682956800, 1025);
4410
- f(17583596109824, 2047);
4411
- f(17592186044416, 2048);
4412
- f(17600775979008, 2049);
4413
- f(35175782154240, 4095);
4414
- f(35184372088832, 4096);
4415
- f(35192962023424, 4097);
4416
- f(70360154243072, 8191);
4417
- f(70368744177664, 8192);
4418
- f(70377334112256, 8193);
4419
- f(140728898420736, 16383);
4420
- f(140737488355328, 16384);
4421
- f(140746078289920, 16385);
4422
- f(281466386776064, 32767);
4423
- f(281474976710656, 32768);
4424
- f(281483566645248, 32769);
4425
- f(562941363486720, 65535);
4426
- f(562949953421312, 65536);
4427
- f(562958543355904, 65537);
4428
- f(1125891316908032, 131071);
4429
- f(1125899906842624, 131072);
4430
- f(1125908496777216, 131073);
4431
- x = 8589934593;
4432
- f(0, 0);
4433
- f(8589934593, 1);
4434
- f(17179869186, 2);
4435
- f(25769803779, 3);
4436
- f(34359738372, 4);
4437
- f(42949672965, 5);
4438
- f(60129542151, 7);
4439
- f(68719476744, 8);
4440
- f(77309411337, 9);
4441
- f(128849018895, 15);
4442
- f(137438953488, 16);
4443
- f(146028888081, 17);
4444
- f(266287972383, 31);
4445
- f(274877906976, 32);
4446
- f(283467841569, 33);
4447
- f(541165879359, 63);
4448
- f(549755813952, 64);
4449
- f(558345748545, 65);
4450
- f(1090921693311, 127);
4451
- f(1099511627904, 128);
4452
- f(1108101562497, 129);
4453
- f(2190433321215, 255);
4454
- f(2199023255808, 256);
4455
- f(2207613190401, 257);
4456
- f(4389456577023, 511);
4457
- f(4398046511616, 512);
4458
- f(4406636446209, 513);
4459
- f(8787503088639, 1023);
4460
- f(8796093023232, 1024);
4461
- f(8804682957825, 1025);
4462
- f(17583596111871, 2047);
4463
- f(17592186046464, 2048);
4464
- f(17600775981057, 2049);
4465
- f(35175782158335, 4095);
4466
- f(35184372092928, 4096);
4467
- f(35192962027521, 4097);
4468
- f(70360154251263, 8191);
4469
- f(70368744185856, 8192);
4470
- f(70377334120449, 8193);
4471
- f(140728898437119, 16383);
4472
- f(140737488371712, 16384);
4473
- f(140746078306305, 16385);
4474
- f(281466386808831, 32767);
4475
- f(281474976743424, 32768);
4476
- f(281483566678017, 32769);
4477
- f(562941363552255, 65535);
4478
- f(562949953486848, 65536);
4479
- f(562958543421441, 65537);
4480
- f(1125891317039103, 131071);
4481
- f(1125899906973696, 131072);
4482
- f(1125908496908289, 131073);
4483
- x = 17179869183;
4484
- f(0, 0);
4485
- f(17179869183, 1);
4486
- f(34359738366, 2);
4487
- f(51539607549, 3);
4488
- f(68719476732, 4);
4489
- f(85899345915, 5);
4490
- f(120259084281, 7);
4491
- f(137438953464, 8);
4492
- f(154618822647, 9);
4493
- f(257698037745, 15);
4494
- f(274877906928, 16);
4495
- f(292057776111, 17);
4496
- f(532575944673, 31);
4497
- f(549755813856, 32);
4498
- f(566935683039, 33);
4499
- f(1082331758529, 63);
4500
- f(1099511627712, 64);
4501
- f(1116691496895, 65);
4502
- f(2181843386241, 127);
4503
- f(2199023255424, 128);
4504
- f(2216203124607, 129);
4505
- f(4380866641665, 255);
4506
- f(4398046510848, 256);
4507
- f(4415226380031, 257);
4508
- f(8778913152513, 511);
4509
- f(8796093021696, 512);
4510
- f(8813272890879, 513);
4511
- f(17575006174209, 1023);
4512
- f(17592186043392, 1024);
4513
- f(17609365912575, 1025);
4514
- f(35167192217601, 2047);
4515
- f(35184372086784, 2048);
4516
- f(35201551955967, 2049);
4517
- f(70351564304385, 4095);
4518
- f(70368744173568, 4096);
4519
- f(70385924042751, 4097);
4520
- f(140720308477953, 8191);
4521
- f(140737488347136, 8192);
4522
- f(140754668216319, 8193);
4523
- f(281457796825089, 16383);
4524
- f(281474976694272, 16384);
4525
- f(281492156563455, 16385);
4526
- f(562932773519361, 32767);
4527
- f(562949953388544, 32768);
4528
- f(562967133257727, 32769);
4529
- f(1125882726907905, 65535);
4530
- f(1125899906777088, 65536);
4531
- f(1125917086646271, 65537);
4532
- x = 17179869184;
4533
- f(0, 0);
4534
- f(17179869184, 1);
4535
- f(34359738368, 2);
4536
- f(51539607552, 3);
4537
- f(68719476736, 4);
4538
- f(85899345920, 5);
4539
- f(120259084288, 7);
4540
- f(137438953472, 8);
4541
- f(154618822656, 9);
4542
- f(257698037760, 15);
4543
- f(274877906944, 16);
4544
- f(292057776128, 17);
4545
- f(532575944704, 31);
4546
- f(549755813888, 32);
4547
- f(566935683072, 33);
4548
- f(1082331758592, 63);
4549
- f(1099511627776, 64);
4550
- f(1116691496960, 65);
4551
- f(2181843386368, 127);
4552
- f(2199023255552, 128);
4553
- f(2216203124736, 129);
4554
- f(4380866641920, 255);
4555
- f(4398046511104, 256);
4556
- f(4415226380288, 257);
4557
- f(8778913153024, 511);
4558
- f(8796093022208, 512);
4559
- f(8813272891392, 513);
4560
- f(17575006175232, 1023);
4561
- f(17592186044416, 1024);
4562
- f(17609365913600, 1025);
4563
- f(35167192219648, 2047);
4564
- f(35184372088832, 2048);
4565
- f(35201551958016, 2049);
4566
- f(70351564308480, 4095);
4567
- f(70368744177664, 4096);
4568
- f(70385924046848, 4097);
4569
- f(140720308486144, 8191);
4570
- f(140737488355328, 8192);
4571
- f(140754668224512, 8193);
4572
- f(281457796841472, 16383);
4573
- f(281474976710656, 16384);
4574
- f(281492156579840, 16385);
4575
- f(562932773552128, 32767);
4576
- f(562949953421312, 32768);
4577
- f(562967133290496, 32769);
4578
- f(1125882726973440, 65535);
4579
- f(1125899906842624, 65536);
4580
- f(1125917086711808, 65537);
4581
- x = 17179869185;
4582
- f(0, 0);
4583
- f(17179869185, 1);
4584
- f(34359738370, 2);
4585
- f(51539607555, 3);
4586
- f(68719476740, 4);
4587
- f(85899345925, 5);
4588
- f(120259084295, 7);
4589
- f(137438953480, 8);
4590
- f(154618822665, 9);
4591
- f(257698037775, 15);
4592
- f(274877906960, 16);
4593
- f(292057776145, 17);
4594
- f(532575944735, 31);
4595
- f(549755813920, 32);
4596
- f(566935683105, 33);
4597
- f(1082331758655, 63);
4598
- f(1099511627840, 64);
4599
- f(1116691497025, 65);
4600
- f(2181843386495, 127);
4601
- f(2199023255680, 128);
4602
- f(2216203124865, 129);
4603
- f(4380866642175, 255);
4604
- f(4398046511360, 256);
4605
- f(4415226380545, 257);
4606
- f(8778913153535, 511);
4607
- f(8796093022720, 512);
4608
- f(8813272891905, 513);
4609
- f(17575006176255, 1023);
4610
- f(17592186045440, 1024);
4611
- f(17609365914625, 1025);
4612
- f(35167192221695, 2047);
4613
- f(35184372090880, 2048);
4614
- f(35201551960065, 2049);
4615
- f(70351564312575, 4095);
4616
- f(70368744181760, 4096);
4617
- f(70385924050945, 4097);
4618
- f(140720308494335, 8191);
4619
- f(140737488363520, 8192);
4620
- f(140754668232705, 8193);
4621
- f(281457796857855, 16383);
4622
- f(281474976727040, 16384);
4623
- f(281492156596225, 16385);
4624
- f(562932773584895, 32767);
4625
- f(562949953454080, 32768);
4626
- f(562967133323265, 32769);
4627
- f(1125882727038975, 65535);
4628
- f(1125899906908160, 65536);
4629
- f(1125917086777345, 65537);