Guest User

FizzBuzzFramework.h

a guest
Jan 24th, 2016
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 47.75 KB | None | 0 0
  1. /*   [FizzBuzz Framework - The Leaderhip in FizzBuzz Computing since 2016]  FizzBuzz Enterprises©
  2.  FizzBuzzFramework.h  FizzBuzz Enterprises©
  3.  
  4. Implementation of  FizzBuzz Core and FizzBuzzOutputStrategy..
  5.  
  6. This code is multi-licensed under The Fizzbuzz Enterprises Shareable Code Community Edition License and The Fizzbuzz Enterprise Edition. 2016©
  7.  
  8. FizzBuzz Enterprises leverages Agile Software Craftsmanship and world-class Self-Documenting Clean Code Design to provide programmers worldwide with robust, scalable, Modern Turnkey Implementations of flexible, modular, cutting edge method system of Responsive Stack Architectures that accelerate response to theoretic and real-world Code Integration demands and reliably adapt to evolving software design, seamlessly and efficiently integrating and synchronizing with their existing legacy codebases, enhancing the inherent Information Sharing Capabilities of Code Production teams across the enterprise while giving them a Critical Competitive Advantage and taking them to the next level.
  9.  
  10. */
  11.  
  12.  
  13. #ifndef StringificationFactory
  14.  #ifndef ConvertTokenToNullTerminatedString
  15.   #define   ConvertTokensToNullTerminatedString(tokens...) #tokens
  16.  #endif
  17.  #define StringificationFactory(ContentTokens...)  ConvertTokensToNullTerminatedString(ContentTokens)
  18. #endif
  19.  
  20. #ifndef NumericalValueOutput
  21.  #define NumericalValueOutput(NumericalValue) _Pragma(StringificationFactory(message StringificationFactory(NumericalValue)))
  22. #endif
  23.  
  24. #ifndef StringValueOutput
  25.  #define StringValueOutput(StringValue) _Pragma(StringificationFactory(message StringValue))
  26. #endif
  27.  
  28.  
  29. #ifndef FatalException
  30.  #ifndef FatalExceptionDefault
  31.   #define FatalExceptionDefault "FatalException Has Occured:"
  32.  #endif
  33.  
  34.  #define FatalException(Message) NumericalValueOutput(FatalExceptionDefault Message)
  35. #endif
  36.  
  37. //TODO: unicode handling
  38. //TODO:Implement language selection based on user locale
  39. #ifndef FizzClassTokenEvaluator
  40.  #define FizzClassTokenEvaluator  StringValueOutput("Fizz")
  41. #endif
  42.  
  43. #ifndef BuzzClassTokenEvaluator
  44.  #define BuzzClassTokenEvaluator  StringValueOutput("Buzz")
  45. #endif
  46.  
  47. #ifndef FizzBuzzClassTokenEvaluator
  48.  #define FizzBuzzClassTokenEvaluator  StringValueOutput("FizzBuzz")
  49. #endif
  50.  
  51. #ifndef StageProgressionMessage
  52.  #define StageProgressionMessage "FizzBuzzFramework:Executing Next Stage of Evaluation Strategy"
  53. #endif
  54.  
  55.  
  56. #ifndef Error201
  57.  #define Error201 "Numerical value NUMBER of FizzBuzzClass has not been defined before initialization of FizzBuzzFramework: Assuming value of 1000"
  58. #endif
  59.  
  60. #ifndef TerminationMessage
  61.  #define TerminationMessage "FizzBuzzFramework: Normal termination"
  62. #endif
  63.  
  64. #ifndef NUMBER
  65. StringValueOutput(Error201)
  66.  #define NUMBER 1000
  67. #endif
  68.  
  69.  
  70.  
  71. //Enterprise Class Short-Circuit Evalutor
  72.  
  73. #if (NUMBER%3==0) && (NUMBER%5!=0)
  74. FizzClassTokenEvaluator
  75. #endif
  76.  
  77. #if (NUMBER%5==0) && (NUMBER%3!=0)
  78. BuzzClassTokenEvaluator
  79. #endif
  80.  
  81. #if (NUMBER%5==0) && (NUMBER%3==0)
  82. FizzBuzzClassTokenEvaluator
  83. #endif
  84.  
  85. #if (NUMBER%5!=0) && (NUMBER%3!=0)
  86. NumericalValueOutput(NUMBER)
  87. #endif
  88. //Numerical Decrement
  89. #ifndef NumericalDecrementAbstractToken
  90.  #define NumericalDecrementAbstractToken
  91. #define DecrementNumericalValue0 0
  92. #define DecrementNumericalValue1 0
  93. #define DecrementNumericalValue2 1
  94. #define DecrementNumericalValue3 2
  95. #define DecrementNumericalValue4 3
  96. #define DecrementNumericalValue5 4
  97. #define DecrementNumericalValue6 5
  98. #define DecrementNumericalValue7 6
  99. #define DecrementNumericalValue8 7
  100. #define DecrementNumericalValue9 8
  101. #define DecrementNumericalValue10 9
  102. #define DecrementNumericalValue11 10
  103. #define DecrementNumericalValue12 11
  104. #define DecrementNumericalValue13 12
  105. #define DecrementNumericalValue14 13
  106. #define DecrementNumericalValue15 14
  107. #define DecrementNumericalValue16 15
  108. #define DecrementNumericalValue17 16
  109. #define DecrementNumericalValue18 17
  110. #define DecrementNumericalValue19 18
  111. #define DecrementNumericalValue20 19
  112. #define DecrementNumericalValue21 20
  113. #define DecrementNumericalValue22 21
  114. #define DecrementNumericalValue23 22
  115. #define DecrementNumericalValue24 23
  116. #define DecrementNumericalValue25 24
  117. #define DecrementNumericalValue26 25
  118. #define DecrementNumericalValue27 26
  119. #define DecrementNumericalValue28 27
  120. #define DecrementNumericalValue29 28
  121. #define DecrementNumericalValue30 29
  122. #define DecrementNumericalValue31 30
  123. #define DecrementNumericalValue32 31
  124. #define DecrementNumericalValue33 32
  125. #define DecrementNumericalValue34 33
  126. #define DecrementNumericalValue35 34
  127. #define DecrementNumericalValue36 35
  128. #define DecrementNumericalValue37 36
  129. #define DecrementNumericalValue38 37
  130. #define DecrementNumericalValue39 38
  131. #define DecrementNumericalValue40 39
  132. #define DecrementNumericalValue41 40
  133. #define DecrementNumericalValue42 41
  134. #define DecrementNumericalValue43 42
  135. #define DecrementNumericalValue44 43
  136. #define DecrementNumericalValue45 44
  137. #define DecrementNumericalValue46 45
  138. #define DecrementNumericalValue47 46
  139. #define DecrementNumericalValue48 47
  140. #define DecrementNumericalValue49 48
  141. #define DecrementNumericalValue50 49
  142. #define DecrementNumericalValue51 50
  143. #define DecrementNumericalValue52 51
  144. #define DecrementNumericalValue53 52
  145. #define DecrementNumericalValue54 53
  146. #define DecrementNumericalValue55 54
  147. #define DecrementNumericalValue56 55
  148. #define DecrementNumericalValue57 56
  149. #define DecrementNumericalValue58 57
  150. #define DecrementNumericalValue59 58
  151. #define DecrementNumericalValue60 59
  152. #define DecrementNumericalValue61 60
  153. #define DecrementNumericalValue62 61
  154. #define DecrementNumericalValue63 62
  155. #define DecrementNumericalValue64 63
  156. #define DecrementNumericalValue65 64
  157. #define DecrementNumericalValue66 65
  158. #define DecrementNumericalValue67 66
  159. #define DecrementNumericalValue68 67
  160. #define DecrementNumericalValue69 68
  161. #define DecrementNumericalValue70 69
  162. #define DecrementNumericalValue71 70
  163. #define DecrementNumericalValue72 71
  164. #define DecrementNumericalValue73 72
  165. #define DecrementNumericalValue74 73
  166. #define DecrementNumericalValue75 74
  167. #define DecrementNumericalValue76 75
  168. #define DecrementNumericalValue77 76
  169. #define DecrementNumericalValue78 77
  170. #define DecrementNumericalValue79 78
  171. #define DecrementNumericalValue80 79
  172. #define DecrementNumericalValue81 80
  173. #define DecrementNumericalValue82 81
  174. #define DecrementNumericalValue83 82
  175. #define DecrementNumericalValue84 83
  176. #define DecrementNumericalValue85 84
  177. #define DecrementNumericalValue86 85
  178. #define DecrementNumericalValue87 86
  179. #define DecrementNumericalValue88 87
  180. #define DecrementNumericalValue89 88
  181. #define DecrementNumericalValue90 89
  182. #define DecrementNumericalValue91 90
  183. #define DecrementNumericalValue92 91
  184. #define DecrementNumericalValue93 92
  185. #define DecrementNumericalValue94 93
  186. #define DecrementNumericalValue95 94
  187. #define DecrementNumericalValue96 95
  188. #define DecrementNumericalValue97 96
  189. #define DecrementNumericalValue98 97
  190. #define DecrementNumericalValue99 98
  191. #define DecrementNumericalValue100 99
  192. #define DecrementNumericalValue101 100
  193. #define DecrementNumericalValue102 101
  194. #define DecrementNumericalValue103 102
  195. #define DecrementNumericalValue104 103
  196. #define DecrementNumericalValue105 104
  197. #define DecrementNumericalValue106 105
  198. #define DecrementNumericalValue107 106
  199. #define DecrementNumericalValue108 107
  200. #define DecrementNumericalValue109 108
  201. #define DecrementNumericalValue110 109
  202. #define DecrementNumericalValue111 110
  203. #define DecrementNumericalValue112 111
  204. #define DecrementNumericalValue113 112
  205. #define DecrementNumericalValue114 113
  206. #define DecrementNumericalValue115 114
  207. #define DecrementNumericalValue116 115
  208. #define DecrementNumericalValue117 116
  209. #define DecrementNumericalValue118 117
  210. #define DecrementNumericalValue119 118
  211. #define DecrementNumericalValue120 119
  212. #define DecrementNumericalValue121 120
  213. #define DecrementNumericalValue122 121
  214. #define DecrementNumericalValue123 122
  215. #define DecrementNumericalValue124 123
  216. #define DecrementNumericalValue125 124
  217. #define DecrementNumericalValue126 125
  218. #define DecrementNumericalValue127 126
  219. #define DecrementNumericalValue128 127
  220. #define DecrementNumericalValue129 128
  221. #define DecrementNumericalValue130 129
  222. #define DecrementNumericalValue131 130
  223. #define DecrementNumericalValue132 131
  224. #define DecrementNumericalValue133 132
  225. #define DecrementNumericalValue134 133
  226. #define DecrementNumericalValue135 134
  227. #define DecrementNumericalValue136 135
  228. #define DecrementNumericalValue137 136
  229. #define DecrementNumericalValue138 137
  230. #define DecrementNumericalValue139 138
  231. #define DecrementNumericalValue140 139
  232. #define DecrementNumericalValue141 140
  233. #define DecrementNumericalValue142 141
  234. #define DecrementNumericalValue143 142
  235. #define DecrementNumericalValue144 143
  236. #define DecrementNumericalValue145 144
  237. #define DecrementNumericalValue146 145
  238. #define DecrementNumericalValue147 146
  239. #define DecrementNumericalValue148 147
  240. #define DecrementNumericalValue149 148
  241. #define DecrementNumericalValue150 149
  242. #define DecrementNumericalValue151 150
  243. #define DecrementNumericalValue152 151
  244. #define DecrementNumericalValue153 152
  245. #define DecrementNumericalValue154 153
  246. #define DecrementNumericalValue155 154
  247. #define DecrementNumericalValue156 155
  248. #define DecrementNumericalValue157 156
  249. #define DecrementNumericalValue158 157
  250. #define DecrementNumericalValue159 158
  251. #define DecrementNumericalValue160 159
  252. #define DecrementNumericalValue161 160
  253. #define DecrementNumericalValue162 161
  254. #define DecrementNumericalValue163 162
  255. #define DecrementNumericalValue164 163
  256. #define DecrementNumericalValue165 164
  257. #define DecrementNumericalValue166 165
  258. #define DecrementNumericalValue167 166
  259. #define DecrementNumericalValue168 167
  260. #define DecrementNumericalValue169 168
  261. #define DecrementNumericalValue170 169
  262. #define DecrementNumericalValue171 170
  263. #define DecrementNumericalValue172 171
  264. #define DecrementNumericalValue173 172
  265. #define DecrementNumericalValue174 173
  266. #define DecrementNumericalValue175 174
  267. #define DecrementNumericalValue176 175
  268. #define DecrementNumericalValue177 176
  269. #define DecrementNumericalValue178 177
  270. #define DecrementNumericalValue179 178
  271. #define DecrementNumericalValue180 179
  272. #define DecrementNumericalValue181 180
  273. #define DecrementNumericalValue182 181
  274. #define DecrementNumericalValue183 182
  275. #define DecrementNumericalValue184 183
  276. #define DecrementNumericalValue185 184
  277. #define DecrementNumericalValue186 185
  278. #define DecrementNumericalValue187 186
  279. #define DecrementNumericalValue188 187
  280. #define DecrementNumericalValue189 188
  281. #define DecrementNumericalValue190 189
  282. #define DecrementNumericalValue191 190
  283. #define DecrementNumericalValue192 191
  284. #define DecrementNumericalValue193 192
  285. #define DecrementNumericalValue194 193
  286. #define DecrementNumericalValue195 194
  287. #define DecrementNumericalValue196 195
  288. #define DecrementNumericalValue197 196
  289. #define DecrementNumericalValue198 197
  290. #define DecrementNumericalValue199 198
  291.  
  292. #define DecrementNumericalValue200 199
  293. #define DecrementNumericalValue201 200
  294. #define DecrementNumericalValue202 201
  295. #define DecrementNumericalValue203 202
  296. #define DecrementNumericalValue204 203
  297. #define DecrementNumericalValue205 204
  298. #define DecrementNumericalValue206 205
  299. #define DecrementNumericalValue207 206
  300. #define DecrementNumericalValue208 207
  301. #define DecrementNumericalValue209 208
  302. #define DecrementNumericalValue210 209
  303. #define DecrementNumericalValue211 210
  304. #define DecrementNumericalValue212 211
  305. #define DecrementNumericalValue213 212
  306. #define DecrementNumericalValue214 213
  307. #define DecrementNumericalValue215 214
  308. #define DecrementNumericalValue216 215
  309. #define DecrementNumericalValue217 216
  310. #define DecrementNumericalValue218 217
  311. #define DecrementNumericalValue219 218
  312. #define DecrementNumericalValue220 219
  313. #define DecrementNumericalValue221 220
  314. #define DecrementNumericalValue222 221
  315. #define DecrementNumericalValue223 222
  316. #define DecrementNumericalValue224 223
  317. #define DecrementNumericalValue225 224
  318. #define DecrementNumericalValue226 225
  319. #define DecrementNumericalValue227 226
  320. #define DecrementNumericalValue228 227
  321. #define DecrementNumericalValue229 228
  322. #define DecrementNumericalValue230 229
  323. #define DecrementNumericalValue231 230
  324. #define DecrementNumericalValue232 231
  325. #define DecrementNumericalValue233 232
  326. #define DecrementNumericalValue234 233
  327. #define DecrementNumericalValue235 234
  328. #define DecrementNumericalValue236 235
  329. #define DecrementNumericalValue237 236
  330. #define DecrementNumericalValue238 237
  331. #define DecrementNumericalValue239 238
  332. #define DecrementNumericalValue240 239
  333. #define DecrementNumericalValue241 240
  334. #define DecrementNumericalValue242 241
  335. #define DecrementNumericalValue243 242
  336. #define DecrementNumericalValue244 243
  337. #define DecrementNumericalValue245 244
  338. #define DecrementNumericalValue246 245
  339. #define DecrementNumericalValue247 246
  340. #define DecrementNumericalValue248 247
  341. #define DecrementNumericalValue249 248
  342. #define DecrementNumericalValue250 249
  343. #define DecrementNumericalValue251 250
  344. #define DecrementNumericalValue252 251
  345. #define DecrementNumericalValue253 252
  346. #define DecrementNumericalValue254 253
  347. #define DecrementNumericalValue255 254
  348. #define DecrementNumericalValue256 255
  349. #define DecrementNumericalValue257 256
  350. #define DecrementNumericalValue258 257
  351. #define DecrementNumericalValue259 258
  352. #define DecrementNumericalValue260 259
  353. #define DecrementNumericalValue261 260
  354. #define DecrementNumericalValue262 261
  355. #define DecrementNumericalValue263 262
  356. #define DecrementNumericalValue264 263
  357. #define DecrementNumericalValue265 264
  358. #define DecrementNumericalValue266 265
  359. #define DecrementNumericalValue267 266
  360. #define DecrementNumericalValue268 267
  361. #define DecrementNumericalValue269 268
  362. #define DecrementNumericalValue270 269
  363. #define DecrementNumericalValue271 270
  364. #define DecrementNumericalValue272 271
  365. #define DecrementNumericalValue273 272
  366. #define DecrementNumericalValue274 273
  367. #define DecrementNumericalValue275 274
  368. #define DecrementNumericalValue276 275
  369. #define DecrementNumericalValue277 276
  370. #define DecrementNumericalValue278 277
  371. #define DecrementNumericalValue279 278
  372. #define DecrementNumericalValue280 279
  373. #define DecrementNumericalValue281 280
  374. #define DecrementNumericalValue282 281
  375. #define DecrementNumericalValue283 282
  376. #define DecrementNumericalValue284 283
  377. #define DecrementNumericalValue285 284
  378. #define DecrementNumericalValue286 285
  379. #define DecrementNumericalValue287 286
  380. #define DecrementNumericalValue288 287
  381. #define DecrementNumericalValue289 288
  382. #define DecrementNumericalValue290 289
  383. #define DecrementNumericalValue291 290
  384. #define DecrementNumericalValue292 291
  385. #define DecrementNumericalValue293 292
  386. #define DecrementNumericalValue294 293
  387. #define DecrementNumericalValue295 294
  388. #define DecrementNumericalValue296 295
  389. #define DecrementNumericalValue297 296
  390. #define DecrementNumericalValue298 297
  391. #define DecrementNumericalValue299 298
  392.  
  393.  
  394. #define DecrementNumericalValue300 299
  395. #define DecrementNumericalValue301 300
  396. #define DecrementNumericalValue302 301
  397. #define DecrementNumericalValue303 302
  398. #define DecrementNumericalValue304 303
  399. #define DecrementNumericalValue305 304
  400. #define DecrementNumericalValue306 305
  401. #define DecrementNumericalValue307 306
  402. #define DecrementNumericalValue308 307
  403. #define DecrementNumericalValue309 308
  404. #define DecrementNumericalValue310 309
  405. #define DecrementNumericalValue311 310
  406. #define DecrementNumericalValue312 311
  407. #define DecrementNumericalValue313 312
  408. #define DecrementNumericalValue314 313
  409. #define DecrementNumericalValue315 314
  410. #define DecrementNumericalValue316 315
  411. #define DecrementNumericalValue317 316
  412. #define DecrementNumericalValue318 317
  413. #define DecrementNumericalValue319 318
  414. #define DecrementNumericalValue320 319
  415. #define DecrementNumericalValue321 320
  416. #define DecrementNumericalValue322 321
  417. #define DecrementNumericalValue323 322
  418. #define DecrementNumericalValue324 323
  419. #define DecrementNumericalValue325 324
  420. #define DecrementNumericalValue326 325
  421. #define DecrementNumericalValue327 326
  422. #define DecrementNumericalValue328 327
  423. #define DecrementNumericalValue329 328
  424. #define DecrementNumericalValue330 329
  425. #define DecrementNumericalValue331 330
  426. #define DecrementNumericalValue332 331
  427. #define DecrementNumericalValue333 332
  428. #define DecrementNumericalValue334 333
  429. #define DecrementNumericalValue335 334
  430. #define DecrementNumericalValue336 335
  431. #define DecrementNumericalValue337 336
  432. #define DecrementNumericalValue338 337
  433. #define DecrementNumericalValue339 338
  434. #define DecrementNumericalValue340 339
  435. #define DecrementNumericalValue341 340
  436. #define DecrementNumericalValue342 341
  437. #define DecrementNumericalValue343 342
  438. #define DecrementNumericalValue344 343
  439. #define DecrementNumericalValue345 344
  440. #define DecrementNumericalValue346 345
  441. #define DecrementNumericalValue347 346
  442. #define DecrementNumericalValue348 347
  443. #define DecrementNumericalValue349 348
  444. #define DecrementNumericalValue350 349
  445. #define DecrementNumericalValue351 350
  446. #define DecrementNumericalValue352 351
  447. #define DecrementNumericalValue353 352
  448. #define DecrementNumericalValue354 353
  449. #define DecrementNumericalValue355 354
  450. #define DecrementNumericalValue356 355
  451. #define DecrementNumericalValue357 356
  452. #define DecrementNumericalValue358 357
  453. #define DecrementNumericalValue359 358
  454. #define DecrementNumericalValue360 359
  455. #define DecrementNumericalValue361 360
  456. #define DecrementNumericalValue362 361
  457. #define DecrementNumericalValue363 362
  458. #define DecrementNumericalValue364 363
  459. #define DecrementNumericalValue365 364
  460. #define DecrementNumericalValue366 365
  461. #define DecrementNumericalValue367 366
  462. #define DecrementNumericalValue368 367
  463. #define DecrementNumericalValue369 368
  464. #define DecrementNumericalValue370 369
  465. #define DecrementNumericalValue371 370
  466. #define DecrementNumericalValue372 371
  467. #define DecrementNumericalValue373 372
  468. #define DecrementNumericalValue374 373
  469. #define DecrementNumericalValue375 374
  470. #define DecrementNumericalValue376 375
  471. #define DecrementNumericalValue377 376
  472. #define DecrementNumericalValue378 377
  473. #define DecrementNumericalValue379 378
  474. #define DecrementNumericalValue380 379
  475. #define DecrementNumericalValue381 380
  476. #define DecrementNumericalValue382 381
  477. #define DecrementNumericalValue383 382
  478. #define DecrementNumericalValue384 383
  479. #define DecrementNumericalValue385 384
  480. #define DecrementNumericalValue386 385
  481. #define DecrementNumericalValue387 386
  482. #define DecrementNumericalValue388 387
  483. #define DecrementNumericalValue389 388
  484. #define DecrementNumericalValue390 389
  485. #define DecrementNumericalValue391 390
  486. #define DecrementNumericalValue392 391
  487. #define DecrementNumericalValue393 392
  488. #define DecrementNumericalValue394 393
  489. #define DecrementNumericalValue395 394
  490. #define DecrementNumericalValue396 395
  491. #define DecrementNumericalValue397 396
  492. #define DecrementNumericalValue398 397
  493. #define DecrementNumericalValue399 398
  494.  
  495. #define DecrementNumericalValue400 399
  496. #define DecrementNumericalValue401 400
  497. #define DecrementNumericalValue402 401
  498. #define DecrementNumericalValue403 402
  499. #define DecrementNumericalValue404 403
  500. #define DecrementNumericalValue405 404
  501. #define DecrementNumericalValue406 405
  502. #define DecrementNumericalValue407 406
  503. #define DecrementNumericalValue408 407
  504. #define DecrementNumericalValue409 408
  505. #define DecrementNumericalValue410 409
  506. #define DecrementNumericalValue411 410
  507. #define DecrementNumericalValue412 411
  508. #define DecrementNumericalValue413 412
  509. #define DecrementNumericalValue414 413
  510. #define DecrementNumericalValue415 414
  511. #define DecrementNumericalValue416 415
  512. #define DecrementNumericalValue417 416
  513. #define DecrementNumericalValue418 417
  514. #define DecrementNumericalValue419 418
  515. #define DecrementNumericalValue420 419
  516. #define DecrementNumericalValue421 420
  517. #define DecrementNumericalValue422 421
  518. #define DecrementNumericalValue423 422
  519. #define DecrementNumericalValue424 423
  520. #define DecrementNumericalValue425 424
  521. #define DecrementNumericalValue426 425
  522. #define DecrementNumericalValue427 426
  523. #define DecrementNumericalValue428 427
  524. #define DecrementNumericalValue429 428
  525. #define DecrementNumericalValue430 429
  526. #define DecrementNumericalValue431 430
  527. #define DecrementNumericalValue432 431
  528. #define DecrementNumericalValue433 432
  529. #define DecrementNumericalValue434 433
  530. #define DecrementNumericalValue435 434
  531. #define DecrementNumericalValue436 435
  532. #define DecrementNumericalValue437 436
  533. #define DecrementNumericalValue438 437
  534. #define DecrementNumericalValue439 438
  535. #define DecrementNumericalValue440 439
  536. #define DecrementNumericalValue441 440
  537. #define DecrementNumericalValue442 441
  538. #define DecrementNumericalValue443 442
  539. #define DecrementNumericalValue444 443
  540. #define DecrementNumericalValue445 444
  541. #define DecrementNumericalValue446 445
  542. #define DecrementNumericalValue447 446
  543. #define DecrementNumericalValue448 447
  544. #define DecrementNumericalValue449 448
  545. #define DecrementNumericalValue450 449
  546. #define DecrementNumericalValue451 450
  547. #define DecrementNumericalValue452 451
  548. #define DecrementNumericalValue453 452
  549. #define DecrementNumericalValue454 453
  550. #define DecrementNumericalValue455 454
  551. #define DecrementNumericalValue456 455
  552. #define DecrementNumericalValue457 456
  553. #define DecrementNumericalValue458 457
  554. #define DecrementNumericalValue459 458
  555. #define DecrementNumericalValue460 459
  556. #define DecrementNumericalValue461 460
  557. #define DecrementNumericalValue462 461
  558. #define DecrementNumericalValue463 462
  559. #define DecrementNumericalValue464 463
  560. #define DecrementNumericalValue465 464
  561. #define DecrementNumericalValue466 465
  562. #define DecrementNumericalValue467 466
  563. #define DecrementNumericalValue468 467
  564. #define DecrementNumericalValue469 468
  565. #define DecrementNumericalValue470 469
  566. #define DecrementNumericalValue471 470
  567. #define DecrementNumericalValue472 471
  568. #define DecrementNumericalValue473 472
  569. #define DecrementNumericalValue474 473
  570. #define DecrementNumericalValue475 474
  571. #define DecrementNumericalValue476 475
  572. #define DecrementNumericalValue477 476
  573. #define DecrementNumericalValue478 477
  574. #define DecrementNumericalValue479 478
  575. #define DecrementNumericalValue480 479
  576. #define DecrementNumericalValue481 480
  577. #define DecrementNumericalValue482 481
  578. #define DecrementNumericalValue483 482
  579. #define DecrementNumericalValue484 483
  580. #define DecrementNumericalValue485 484
  581. #define DecrementNumericalValue486 485
  582. #define DecrementNumericalValue487 486
  583. #define DecrementNumericalValue488 487
  584. #define DecrementNumericalValue489 488
  585. #define DecrementNumericalValue490 489
  586. #define DecrementNumericalValue491 490
  587. #define DecrementNumericalValue492 491
  588. #define DecrementNumericalValue493 492
  589. #define DecrementNumericalValue494 493
  590. #define DecrementNumericalValue495 494
  591. #define DecrementNumericalValue496 495
  592. #define DecrementNumericalValue497 496
  593. #define DecrementNumericalValue498 497
  594. #define DecrementNumericalValue499 498
  595.  
  596. #define DecrementNumericalValue400 399
  597. #define DecrementNumericalValue401 400
  598. #define DecrementNumericalValue402 401
  599. #define DecrementNumericalValue403 402
  600. #define DecrementNumericalValue404 403
  601. #define DecrementNumericalValue405 404
  602. #define DecrementNumericalValue406 405
  603. #define DecrementNumericalValue407 406
  604. #define DecrementNumericalValue408 407
  605. #define DecrementNumericalValue409 408
  606. #define DecrementNumericalValue410 409
  607. #define DecrementNumericalValue411 410
  608. #define DecrementNumericalValue412 411
  609. #define DecrementNumericalValue413 412
  610. #define DecrementNumericalValue414 413
  611. #define DecrementNumericalValue415 414
  612. #define DecrementNumericalValue416 415
  613. #define DecrementNumericalValue417 416
  614. #define DecrementNumericalValue418 417
  615. #define DecrementNumericalValue419 418
  616. #define DecrementNumericalValue420 419
  617. #define DecrementNumericalValue421 420
  618. #define DecrementNumericalValue422 421
  619. #define DecrementNumericalValue423 422
  620. #define DecrementNumericalValue424 423
  621. #define DecrementNumericalValue425 424
  622. #define DecrementNumericalValue426 425
  623. #define DecrementNumericalValue427 426
  624. #define DecrementNumericalValue428 427
  625. #define DecrementNumericalValue429 428
  626. #define DecrementNumericalValue430 429
  627. #define DecrementNumericalValue431 430
  628. #define DecrementNumericalValue432 431
  629. #define DecrementNumericalValue433 432
  630. #define DecrementNumericalValue434 433
  631. #define DecrementNumericalValue435 434
  632. #define DecrementNumericalValue436 435
  633. #define DecrementNumericalValue437 436
  634. #define DecrementNumericalValue438 437
  635. #define DecrementNumericalValue439 438
  636. #define DecrementNumericalValue440 439
  637. #define DecrementNumericalValue441 440
  638. #define DecrementNumericalValue442 441
  639. #define DecrementNumericalValue443 442
  640. #define DecrementNumericalValue444 443
  641. #define DecrementNumericalValue445 444
  642. #define DecrementNumericalValue446 445
  643. #define DecrementNumericalValue447 446
  644. #define DecrementNumericalValue448 447
  645. #define DecrementNumericalValue449 448
  646. #define DecrementNumericalValue450 449
  647. #define DecrementNumericalValue451 450
  648. #define DecrementNumericalValue452 451
  649. #define DecrementNumericalValue453 452
  650. #define DecrementNumericalValue454 453
  651. #define DecrementNumericalValue455 454
  652. #define DecrementNumericalValue456 455
  653. #define DecrementNumericalValue457 456
  654. #define DecrementNumericalValue458 457
  655. #define DecrementNumericalValue459 458
  656. #define DecrementNumericalValue460 459
  657. #define DecrementNumericalValue461 460
  658. #define DecrementNumericalValue462 461
  659. #define DecrementNumericalValue463 462
  660. #define DecrementNumericalValue464 463
  661. #define DecrementNumericalValue465 464
  662. #define DecrementNumericalValue466 465
  663. #define DecrementNumericalValue467 466
  664. #define DecrementNumericalValue468 467
  665. #define DecrementNumericalValue469 468
  666. #define DecrementNumericalValue470 469
  667. #define DecrementNumericalValue471 470
  668. #define DecrementNumericalValue472 471
  669. #define DecrementNumericalValue473 472
  670. #define DecrementNumericalValue474 473
  671. #define DecrementNumericalValue475 474
  672. #define DecrementNumericalValue476 475
  673. #define DecrementNumericalValue477 476
  674. #define DecrementNumericalValue478 477
  675. #define DecrementNumericalValue479 478
  676. #define DecrementNumericalValue480 479
  677. #define DecrementNumericalValue481 480
  678. #define DecrementNumericalValue482 481
  679. #define DecrementNumericalValue483 482
  680. #define DecrementNumericalValue484 483
  681. #define DecrementNumericalValue485 484
  682. #define DecrementNumericalValue486 485
  683. #define DecrementNumericalValue487 486
  684. #define DecrementNumericalValue488 487
  685. #define DecrementNumericalValue489 488
  686. #define DecrementNumericalValue490 489
  687. #define DecrementNumericalValue491 490
  688. #define DecrementNumericalValue492 491
  689. #define DecrementNumericalValue493 492
  690. #define DecrementNumericalValue494 493
  691. #define DecrementNumericalValue495 494
  692. #define DecrementNumericalValue496 495
  693. #define DecrementNumericalValue497 496
  694. #define DecrementNumericalValue498 497
  695. #define DecrementNumericalValue499 498
  696.  
  697. #define DecrementNumericalValue500 499
  698. #define DecrementNumericalValue501 500
  699. #define DecrementNumericalValue502 501
  700. #define DecrementNumericalValue503 502
  701. #define DecrementNumericalValue504 503
  702. #define DecrementNumericalValue505 504
  703. #define DecrementNumericalValue506 505
  704. #define DecrementNumericalValue507 506
  705. #define DecrementNumericalValue508 507
  706. #define DecrementNumericalValue509 508
  707. #define DecrementNumericalValue510 509
  708. #define DecrementNumericalValue511 510
  709. #define DecrementNumericalValue512 511
  710. #define DecrementNumericalValue513 512
  711. #define DecrementNumericalValue514 513
  712. #define DecrementNumericalValue515 514
  713. #define DecrementNumericalValue516 515
  714. #define DecrementNumericalValue517 516
  715. #define DecrementNumericalValue518 517
  716. #define DecrementNumericalValue519 518
  717. #define DecrementNumericalValue520 519
  718. #define DecrementNumericalValue521 520
  719. #define DecrementNumericalValue522 521
  720. #define DecrementNumericalValue523 522
  721. #define DecrementNumericalValue524 523
  722. #define DecrementNumericalValue525 524
  723. #define DecrementNumericalValue526 525
  724. #define DecrementNumericalValue527 526
  725. #define DecrementNumericalValue528 527
  726. #define DecrementNumericalValue529 528
  727. #define DecrementNumericalValue530 529
  728. #define DecrementNumericalValue531 530
  729. #define DecrementNumericalValue532 531
  730. #define DecrementNumericalValue533 532
  731. #define DecrementNumericalValue534 533
  732. #define DecrementNumericalValue535 534
  733. #define DecrementNumericalValue536 535
  734. #define DecrementNumericalValue537 536
  735. #define DecrementNumericalValue538 537
  736. #define DecrementNumericalValue539 538
  737. #define DecrementNumericalValue540 539
  738. #define DecrementNumericalValue541 540
  739. #define DecrementNumericalValue542 541
  740. #define DecrementNumericalValue543 542
  741. #define DecrementNumericalValue544 543
  742. #define DecrementNumericalValue545 544
  743. #define DecrementNumericalValue546 545
  744. #define DecrementNumericalValue547 546
  745. #define DecrementNumericalValue548 547
  746. #define DecrementNumericalValue549 548
  747. #define DecrementNumericalValue550 549
  748. #define DecrementNumericalValue551 550
  749. #define DecrementNumericalValue552 551
  750. #define DecrementNumericalValue553 552
  751. #define DecrementNumericalValue554 553
  752. #define DecrementNumericalValue555 554
  753. #define DecrementNumericalValue556 555
  754. #define DecrementNumericalValue557 556
  755. #define DecrementNumericalValue558 557
  756. #define DecrementNumericalValue559 558
  757. #define DecrementNumericalValue560 559
  758. #define DecrementNumericalValue561 560
  759. #define DecrementNumericalValue562 561
  760. #define DecrementNumericalValue563 562
  761. #define DecrementNumericalValue564 563
  762. #define DecrementNumericalValue565 564
  763. #define DecrementNumericalValue566 565
  764. #define DecrementNumericalValue567 566
  765. #define DecrementNumericalValue568 567
  766. #define DecrementNumericalValue569 568
  767. #define DecrementNumericalValue570 569
  768. #define DecrementNumericalValue571 570
  769. #define DecrementNumericalValue572 571
  770. #define DecrementNumericalValue573 572
  771. #define DecrementNumericalValue574 573
  772. #define DecrementNumericalValue575 574
  773. #define DecrementNumericalValue576 575
  774. #define DecrementNumericalValue577 576
  775. #define DecrementNumericalValue578 577
  776. #define DecrementNumericalValue579 578
  777. #define DecrementNumericalValue580 579
  778. #define DecrementNumericalValue581 580
  779. #define DecrementNumericalValue582 581
  780. #define DecrementNumericalValue583 582
  781. #define DecrementNumericalValue584 583
  782. #define DecrementNumericalValue585 584
  783. #define DecrementNumericalValue586 585
  784. #define DecrementNumericalValue587 586
  785. #define DecrementNumericalValue588 587
  786. #define DecrementNumericalValue589 588
  787. #define DecrementNumericalValue590 589
  788. #define DecrementNumericalValue591 590
  789. #define DecrementNumericalValue592 591
  790. #define DecrementNumericalValue593 592
  791. #define DecrementNumericalValue594 593
  792. #define DecrementNumericalValue595 594
  793. #define DecrementNumericalValue596 595
  794. #define DecrementNumericalValue597 596
  795. #define DecrementNumericalValue598 597
  796. #define DecrementNumericalValue599 598
  797.  
  798.  
  799.  
  800.  
  801. #define DecrementNumericalValue600 599
  802. #define DecrementNumericalValue601 600
  803. #define DecrementNumericalValue602 601
  804. #define DecrementNumericalValue603 602
  805. #define DecrementNumericalValue604 603
  806. #define DecrementNumericalValue605 604
  807. #define DecrementNumericalValue606 605
  808. #define DecrementNumericalValue607 606
  809. #define DecrementNumericalValue608 607
  810. #define DecrementNumericalValue609 608
  811. #define DecrementNumericalValue610 609
  812. #define DecrementNumericalValue611 610
  813. #define DecrementNumericalValue612 611
  814. #define DecrementNumericalValue613 612
  815. #define DecrementNumericalValue614 613
  816. #define DecrementNumericalValue615 614
  817. #define DecrementNumericalValue616 615
  818. #define DecrementNumericalValue617 616
  819. #define DecrementNumericalValue618 617
  820. #define DecrementNumericalValue619 618
  821. #define DecrementNumericalValue620 619
  822. #define DecrementNumericalValue621 620
  823. #define DecrementNumericalValue622 621
  824. #define DecrementNumericalValue623 622
  825. #define DecrementNumericalValue624 623
  826. #define DecrementNumericalValue625 624
  827. #define DecrementNumericalValue626 625
  828. #define DecrementNumericalValue627 626
  829. #define DecrementNumericalValue628 627
  830. #define DecrementNumericalValue629 628
  831. #define DecrementNumericalValue630 629
  832. #define DecrementNumericalValue631 630
  833. #define DecrementNumericalValue632 631
  834. #define DecrementNumericalValue633 632
  835. #define DecrementNumericalValue634 633
  836. #define DecrementNumericalValue635 634
  837. #define DecrementNumericalValue636 635
  838. #define DecrementNumericalValue637 636
  839. #define DecrementNumericalValue638 637
  840. #define DecrementNumericalValue639 638
  841. #define DecrementNumericalValue640 639
  842. #define DecrementNumericalValue641 640
  843. #define DecrementNumericalValue642 641
  844. #define DecrementNumericalValue643 642
  845. #define DecrementNumericalValue644 643
  846. #define DecrementNumericalValue645 644
  847. #define DecrementNumericalValue646 645
  848. #define DecrementNumericalValue647 646
  849. #define DecrementNumericalValue648 647
  850. #define DecrementNumericalValue649 648
  851. #define DecrementNumericalValue650 649
  852. #define DecrementNumericalValue651 650
  853. #define DecrementNumericalValue652 651
  854. #define DecrementNumericalValue653 652
  855. #define DecrementNumericalValue654 653
  856. #define DecrementNumericalValue655 654
  857. #define DecrementNumericalValue656 655
  858. #define DecrementNumericalValue657 656
  859. #define DecrementNumericalValue658 657
  860. #define DecrementNumericalValue659 658
  861. #define DecrementNumericalValue660 659
  862. #define DecrementNumericalValue661 660
  863. #define DecrementNumericalValue662 661
  864. #define DecrementNumericalValue663 662
  865. #define DecrementNumericalValue664 663
  866. #define DecrementNumericalValue665 664
  867. #define DecrementNumericalValue666 665
  868. #define DecrementNumericalValue667 666
  869. #define DecrementNumericalValue668 667
  870. #define DecrementNumericalValue669 668
  871. #define DecrementNumericalValue670 669
  872. #define DecrementNumericalValue671 670
  873. #define DecrementNumericalValue672 671
  874. #define DecrementNumericalValue673 672
  875. #define DecrementNumericalValue674 673
  876. #define DecrementNumericalValue675 674
  877. #define DecrementNumericalValue676 675
  878. #define DecrementNumericalValue677 676
  879. #define DecrementNumericalValue678 677
  880. #define DecrementNumericalValue679 678
  881. #define DecrementNumericalValue680 679
  882. #define DecrementNumericalValue681 680
  883. #define DecrementNumericalValue682 681
  884. #define DecrementNumericalValue683 682
  885. #define DecrementNumericalValue684 683
  886. #define DecrementNumericalValue685 684
  887. #define DecrementNumericalValue686 685
  888. #define DecrementNumericalValue687 686
  889. #define DecrementNumericalValue688 687
  890. #define DecrementNumericalValue689 688
  891. #define DecrementNumericalValue690 689
  892. #define DecrementNumericalValue691 690
  893. #define DecrementNumericalValue692 691
  894. #define DecrementNumericalValue693 692
  895. #define DecrementNumericalValue694 693
  896. #define DecrementNumericalValue695 694
  897. #define DecrementNumericalValue696 695
  898. #define DecrementNumericalValue697 696
  899. #define DecrementNumericalValue698 697
  900. #define DecrementNumericalValue699 698
  901.  
  902. #define DecrementNumericalValue700 699
  903. #define DecrementNumericalValue701 700
  904. #define DecrementNumericalValue702 701
  905. #define DecrementNumericalValue703 702
  906. #define DecrementNumericalValue704 703
  907. #define DecrementNumericalValue705 704
  908. #define DecrementNumericalValue706 705
  909. #define DecrementNumericalValue707 706
  910. #define DecrementNumericalValue708 707
  911. #define DecrementNumericalValue709 708
  912. #define DecrementNumericalValue710 709
  913. #define DecrementNumericalValue711 710
  914. #define DecrementNumericalValue712 711
  915. #define DecrementNumericalValue713 712
  916. #define DecrementNumericalValue714 713
  917. #define DecrementNumericalValue715 714
  918. #define DecrementNumericalValue716 715
  919. #define DecrementNumericalValue717 716
  920. #define DecrementNumericalValue718 717
  921. #define DecrementNumericalValue719 718
  922. #define DecrementNumericalValue720 719
  923. #define DecrementNumericalValue721 720
  924. #define DecrementNumericalValue722 721
  925. #define DecrementNumericalValue723 722
  926. #define DecrementNumericalValue724 723
  927. #define DecrementNumericalValue725 724
  928. #define DecrementNumericalValue726 725
  929. #define DecrementNumericalValue727 726
  930. #define DecrementNumericalValue728 727
  931. #define DecrementNumericalValue729 728
  932. #define DecrementNumericalValue730 729
  933. #define DecrementNumericalValue731 730
  934. #define DecrementNumericalValue732 731
  935. #define DecrementNumericalValue733 732
  936. #define DecrementNumericalValue734 733
  937. #define DecrementNumericalValue735 734
  938. #define DecrementNumericalValue736 735
  939. #define DecrementNumericalValue737 736
  940. #define DecrementNumericalValue738 737
  941. #define DecrementNumericalValue739 738
  942. #define DecrementNumericalValue740 739
  943. #define DecrementNumericalValue741 740
  944. #define DecrementNumericalValue742 741
  945. #define DecrementNumericalValue743 742
  946. #define DecrementNumericalValue744 743
  947. #define DecrementNumericalValue745 744
  948. #define DecrementNumericalValue746 745
  949. #define DecrementNumericalValue747 746
  950. #define DecrementNumericalValue748 747
  951. #define DecrementNumericalValue749 748
  952. #define DecrementNumericalValue750 749
  953. #define DecrementNumericalValue751 750
  954. #define DecrementNumericalValue752 751
  955. #define DecrementNumericalValue753 752
  956. #define DecrementNumericalValue754 753
  957. #define DecrementNumericalValue755 754
  958. #define DecrementNumericalValue756 755
  959. #define DecrementNumericalValue757 756
  960. #define DecrementNumericalValue758 757
  961. #define DecrementNumericalValue759 758
  962. #define DecrementNumericalValue760 759
  963. #define DecrementNumericalValue761 760
  964. #define DecrementNumericalValue762 761
  965. #define DecrementNumericalValue763 762
  966. #define DecrementNumericalValue764 763
  967. #define DecrementNumericalValue765 764
  968. #define DecrementNumericalValue766 765
  969. #define DecrementNumericalValue767 766
  970. #define DecrementNumericalValue768 767
  971. #define DecrementNumericalValue769 768
  972. #define DecrementNumericalValue770 769
  973. #define DecrementNumericalValue771 770
  974. #define DecrementNumericalValue772 771
  975. #define DecrementNumericalValue773 772
  976. #define DecrementNumericalValue774 773
  977. #define DecrementNumericalValue775 774
  978. #define DecrementNumericalValue776 775
  979. #define DecrementNumericalValue777 776
  980. #define DecrementNumericalValue778 777
  981. #define DecrementNumericalValue779 778
  982. #define DecrementNumericalValue780 779
  983. #define DecrementNumericalValue781 780
  984. #define DecrementNumericalValue782 781
  985. #define DecrementNumericalValue783 782
  986. #define DecrementNumericalValue784 783
  987. #define DecrementNumericalValue785 784
  988. #define DecrementNumericalValue786 785
  989. #define DecrementNumericalValue787 786
  990. #define DecrementNumericalValue788 787
  991. #define DecrementNumericalValue789 788
  992. #define DecrementNumericalValue790 789
  993. #define DecrementNumericalValue791 790
  994. #define DecrementNumericalValue792 791
  995. #define DecrementNumericalValue793 792
  996. #define DecrementNumericalValue794 793
  997. #define DecrementNumericalValue795 794
  998. #define DecrementNumericalValue796 795
  999. #define DecrementNumericalValue797 796
  1000. #define DecrementNumericalValue798 797
  1001. #define DecrementNumericalValue799 798
  1002.  
  1003. #define DecrementNumericalValue800 799
  1004. #define DecrementNumericalValue801 800
  1005. #define DecrementNumericalValue802 801
  1006. #define DecrementNumericalValue803 802
  1007. #define DecrementNumericalValue804 803
  1008. #define DecrementNumericalValue805 804
  1009. #define DecrementNumericalValue806 805
  1010. #define DecrementNumericalValue807 806
  1011. #define DecrementNumericalValue808 807
  1012. #define DecrementNumericalValue809 808
  1013. #define DecrementNumericalValue810 809
  1014. #define DecrementNumericalValue811 810
  1015. #define DecrementNumericalValue812 811
  1016. #define DecrementNumericalValue813 812
  1017. #define DecrementNumericalValue814 813
  1018. #define DecrementNumericalValue815 814
  1019. #define DecrementNumericalValue816 815
  1020. #define DecrementNumericalValue817 816
  1021. #define DecrementNumericalValue818 817
  1022. #define DecrementNumericalValue819 818
  1023. #define DecrementNumericalValue820 819
  1024. #define DecrementNumericalValue821 820
  1025. #define DecrementNumericalValue822 821
  1026. #define DecrementNumericalValue823 822
  1027. #define DecrementNumericalValue824 823
  1028. #define DecrementNumericalValue825 824
  1029. #define DecrementNumericalValue826 825
  1030. #define DecrementNumericalValue827 826
  1031. #define DecrementNumericalValue828 827
  1032. #define DecrementNumericalValue829 828
  1033. #define DecrementNumericalValue830 829
  1034. #define DecrementNumericalValue831 830
  1035. #define DecrementNumericalValue832 831
  1036. #define DecrementNumericalValue833 832
  1037. #define DecrementNumericalValue834 833
  1038. #define DecrementNumericalValue835 834
  1039. #define DecrementNumericalValue836 835
  1040. #define DecrementNumericalValue837 836
  1041. #define DecrementNumericalValue838 837
  1042. #define DecrementNumericalValue839 838
  1043. #define DecrementNumericalValue840 839
  1044. #define DecrementNumericalValue841 840
  1045. #define DecrementNumericalValue842 841
  1046. #define DecrementNumericalValue843 842
  1047. #define DecrementNumericalValue844 843
  1048. #define DecrementNumericalValue845 844
  1049. #define DecrementNumericalValue846 845
  1050. #define DecrementNumericalValue847 846
  1051. #define DecrementNumericalValue848 847
  1052. #define DecrementNumericalValue849 848
  1053. #define DecrementNumericalValue850 849
  1054. #define DecrementNumericalValue851 850
  1055. #define DecrementNumericalValue852 851
  1056. #define DecrementNumericalValue853 852
  1057. #define DecrementNumericalValue854 853
  1058. #define DecrementNumericalValue855 854
  1059. #define DecrementNumericalValue856 855
  1060. #define DecrementNumericalValue857 856
  1061. #define DecrementNumericalValue858 857
  1062. #define DecrementNumericalValue859 858
  1063. #define DecrementNumericalValue860 859
  1064. #define DecrementNumericalValue861 860
  1065. #define DecrementNumericalValue862 861
  1066. #define DecrementNumericalValue863 862
  1067. #define DecrementNumericalValue864 863
  1068. #define DecrementNumericalValue865 864
  1069. #define DecrementNumericalValue866 865
  1070. #define DecrementNumericalValue867 866
  1071. #define DecrementNumericalValue868 867
  1072. #define DecrementNumericalValue869 868
  1073. #define DecrementNumericalValue870 869
  1074. #define DecrementNumericalValue871 870
  1075. #define DecrementNumericalValue872 871
  1076. #define DecrementNumericalValue873 872
  1077. #define DecrementNumericalValue874 873
  1078. #define DecrementNumericalValue875 874
  1079. #define DecrementNumericalValue876 875
  1080. #define DecrementNumericalValue877 876
  1081. #define DecrementNumericalValue878 877
  1082. #define DecrementNumericalValue879 878
  1083. #define DecrementNumericalValue880 879
  1084. #define DecrementNumericalValue881 880
  1085. #define DecrementNumericalValue882 881
  1086. #define DecrementNumericalValue883 882
  1087. #define DecrementNumericalValue884 883
  1088. #define DecrementNumericalValue885 884
  1089. #define DecrementNumericalValue886 885
  1090. #define DecrementNumericalValue887 886
  1091. #define DecrementNumericalValue888 887
  1092. #define DecrementNumericalValue889 888
  1093. #define DecrementNumericalValue890 889
  1094. #define DecrementNumericalValue891 890
  1095. #define DecrementNumericalValue892 891
  1096. #define DecrementNumericalValue893 892
  1097. #define DecrementNumericalValue894 893
  1098. #define DecrementNumericalValue895 894
  1099. #define DecrementNumericalValue896 895
  1100. #define DecrementNumericalValue897 896
  1101. #define DecrementNumericalValue898 897
  1102. #define DecrementNumericalValue899 898
  1103.  
  1104.  
  1105.  
  1106. #define DecrementNumericalValue900 899
  1107. #define DecrementNumericalValue901 900
  1108. #define DecrementNumericalValue902 901
  1109. #define DecrementNumericalValue903 902
  1110. #define DecrementNumericalValue904 903
  1111. #define DecrementNumericalValue905 904
  1112. #define DecrementNumericalValue906 905
  1113. #define DecrementNumericalValue907 906
  1114. #define DecrementNumericalValue908 907
  1115. #define DecrementNumericalValue909 908
  1116. #define DecrementNumericalValue910 909
  1117. #define DecrementNumericalValue911 910
  1118. #define DecrementNumericalValue912 911
  1119. #define DecrementNumericalValue913 912
  1120. #define DecrementNumericalValue914 913
  1121. #define DecrementNumericalValue915 914
  1122. #define DecrementNumericalValue916 915
  1123. #define DecrementNumericalValue917 916
  1124. #define DecrementNumericalValue918 917
  1125. #define DecrementNumericalValue919 918
  1126. #define DecrementNumericalValue920 919
  1127. #define DecrementNumericalValue921 920
  1128. #define DecrementNumericalValue922 921
  1129. #define DecrementNumericalValue923 922
  1130. #define DecrementNumericalValue924 923
  1131. #define DecrementNumericalValue925 924
  1132. #define DecrementNumericalValue926 925
  1133. #define DecrementNumericalValue927 926
  1134. #define DecrementNumericalValue928 927
  1135. #define DecrementNumericalValue929 928
  1136. #define DecrementNumericalValue930 929
  1137. #define DecrementNumericalValue931 930
  1138. #define DecrementNumericalValue932 931
  1139. #define DecrementNumericalValue933 932
  1140. #define DecrementNumericalValue934 933
  1141. #define DecrementNumericalValue935 934
  1142. #define DecrementNumericalValue936 935
  1143. #define DecrementNumericalValue937 936
  1144. #define DecrementNumericalValue938 937
  1145. #define DecrementNumericalValue939 938
  1146. #define DecrementNumericalValue940 939
  1147. #define DecrementNumericalValue941 940
  1148. #define DecrementNumericalValue942 941
  1149. #define DecrementNumericalValue943 942
  1150. #define DecrementNumericalValue944 943
  1151. #define DecrementNumericalValue945 944
  1152. #define DecrementNumericalValue946 945
  1153. #define DecrementNumericalValue947 946
  1154. #define DecrementNumericalValue948 947
  1155. #define DecrementNumericalValue949 948
  1156. #define DecrementNumericalValue950 949
  1157. #define DecrementNumericalValue951 950
  1158. #define DecrementNumericalValue952 951
  1159. #define DecrementNumericalValue953 952
  1160. #define DecrementNumericalValue954 953
  1161. #define DecrementNumericalValue955 954
  1162. #define DecrementNumericalValue956 955
  1163. #define DecrementNumericalValue957 956
  1164. #define DecrementNumericalValue958 957
  1165. #define DecrementNumericalValue959 958
  1166. #define DecrementNumericalValue960 959
  1167. #define DecrementNumericalValue961 960
  1168. #define DecrementNumericalValue962 961
  1169. #define DecrementNumericalValue963 962
  1170. #define DecrementNumericalValue964 963
  1171. #define DecrementNumericalValue965 964
  1172. #define DecrementNumericalValue966 965
  1173. #define DecrementNumericalValue967 966
  1174. #define DecrementNumericalValue968 967
  1175. #define DecrementNumericalValue969 968
  1176. #define DecrementNumericalValue970 969
  1177. #define DecrementNumericalValue971 970
  1178. #define DecrementNumericalValue972 971
  1179. #define DecrementNumericalValue973 972
  1180. #define DecrementNumericalValue974 973
  1181. #define DecrementNumericalValue975 974
  1182. #define DecrementNumericalValue976 975
  1183. #define DecrementNumericalValue977 976
  1184. #define DecrementNumericalValue978 977
  1185. #define DecrementNumericalValue979 978
  1186. #define DecrementNumericalValue980 979
  1187. #define DecrementNumericalValue981 980
  1188. #define DecrementNumericalValue982 981
  1189. #define DecrementNumericalValue983 982
  1190. #define DecrementNumericalValue984 983
  1191. #define DecrementNumericalValue985 984
  1192. #define DecrementNumericalValue986 985
  1193. #define DecrementNumericalValue987 986
  1194. #define DecrementNumericalValue988 987
  1195. #define DecrementNumericalValue989 988
  1196. #define DecrementNumericalValue990 989
  1197. #define DecrementNumericalValue991 990
  1198. #define DecrementNumericalValue992 991
  1199. #define DecrementNumericalValue993 992
  1200. #define DecrementNumericalValue994 993
  1201. #define DecrementNumericalValue995 994
  1202. #define DecrementNumericalValue996 995
  1203. #define DecrementNumericalValue997 996
  1204. #define DecrementNumericalValue998 997
  1205. #define DecrementNumericalValue999 998
  1206.  
  1207. #define DecrementNumericalValue1000 999
  1208.  
  1209. //TODO:Implement handling of larger integer values
  1210. #endif
  1211.  
  1212. #ifndef EvaluateDecrementValue
  1213.  #define EvaluateDecrementValue(NumericalValue) DecrementNumericalValue##NumericalValue
  1214. #endif
  1215.  
  1216. #ifndef DecrementFactory
  1217.  #define DecrementFactory(NumericalValue) EvaluateDecrementValue(NumericalValue)
  1218. #endif
  1219.  
  1220.  
  1221.  
  1222.  
  1223. //Query Interface Implementation Data
  1224. #ifndef StateQueryMessage
  1225.  #define StateQueryMessage "FizzBuzz Internal Numerical State:"
  1226. #endif
  1227.  
  1228.  
  1229. #ifndef NumericalProcessingDiagnosticDefault
  1230.  #define NumericalProcessingDiagnosticDefault "Numerical processing stage: [FizzBuzz framework]"
  1231. #endif
  1232.  
  1233. #ifndef NUMBER
  1234. FatalException("FizzBuzz Framework Error144: NumericalProcessingStorageClass visitor pattern has failed to initialize the underlying data object. Please send an email with all details to our QA team at:  [email protected]")
  1235.  #error "FizzBuzzNumericalProcessing has caused FizzBuzz runtime to terminate in an unusual way"
  1236. #endif
  1237.  
  1238.  
  1239. #if NUMBER!=0
  1240. //Debug Mode
  1241.  #ifdef FizzBuzzFrameworkDEBUGBUILD
  1242. StringValueOutput(StateQueryMessage)
  1243. NumericalValueOutput(NUMBER)
  1244.  #endif
  1245.  #ifdef NumericalProcessingStorageClass
  1246.   #undef NumericalProcessingStorageClass
  1247.  #endif
  1248.  
  1249. //Begin Decrement Strategy
  1250.  #define NumericalProcessingStorageClass DecrementFactory(NUMBER)
  1251.  #undef NUMBER
  1252.  #define NUMBER NumericalProcessingStorageClass
  1253.  #ifdef FizzBuzzFrameworkDEBUGBUILD
  1254. StringValueOutput(NumericalProcessingDiagnosticDefault)
  1255.  #endif
  1256. #endif
  1257.  
  1258.  
  1259. //Next Stage Processing
  1260. #if NUMBER!=0
  1261.   #ifdef FizzBuzzFrameworkDEBUGBUILD
  1262.   StringValueOutput(StageProgressionMessage)
  1263.   #endif
  1264.  #include "FizzBuzzOutputStrategy.h"  
  1265. #else
  1266. StringValueOutput(TerminationMessage)
  1267.  #ifdef FizzBuzzFrameworkDEBUGBUILD
  1268.  NumericalValueOutput(NUMBER)
  1269.  #endif
  1270.  
  1271. #endif
Advertisement
Add Comment
Please, Sign In to add comment