Best Python code snippet using autopy
farms.ts
Source:farms.ts  
1import { serializeTokens } from './tokens'2import { SerializedFarmConfig } from './types'3const serializedTokens = serializeTokens()4const farms: SerializedFarmConfig[] = [5  /**6   * These 3 farms (PID 0, 251, 252) should always be at the top of the file.7   */8  {9    pid: 0,10    lpSymbol: 'CAKE',11    lpAddresses: {12      97: '0x9C21123D94b93361a29B2C2EFB3d5CD8B17e0A9e',13      56: '0x0e09fabb73bd3ade0a17ecc321fd13a19e81ce82',14    },15    token: serializedTokens.syrup,16    quoteToken: serializedTokens.wbnb,17  },18  {19    pid: 251,20    lpSymbol: 'CAKE-BNB LP',21    lpAddresses: {22      97: '0x3ed8936cAFDF85cfDBa29Fbe5940A5b0524824F4',23      56: '0x0eD7e52944161450477ee417DE9Cd3a859b14fD0',24    },25    token: serializedTokens.cake,26    quoteToken: serializedTokens.wbnb,27  },28  {29    pid: 252,30    lpSymbol: 'BUSD-BNB LP',31    lpAddresses: {32      97: '',33      56: '0x58F876857a02D6762E0101bb5C46A8c1ED44Dc16',34    },35    token: serializedTokens.busd,36    quoteToken: serializedTokens.wbnb,37  },38  /**39   * V3 by order of release (some may be out of PID order due to multiplier boost)40   */41  {42    pid: 429,43    lpSymbol: 'CHESS-USDC LP',44    lpAddresses: {45      97: '',46      56: '0x1472976e0b97f5b2fc93f1fff14e2b5c4447b64f',47    },48    token: serializedTokens.chess,49    quoteToken: serializedTokens.usdc,50  },51  {52    pid: 447,53    lpSymbol: 'GNT-BNB LP',54    lpAddresses: {55      97: '',56      56: '0x3747e3e107223539FD09bb730b055A1f11F78Adf',57    },58    token: serializedTokens.gnt,59    quoteToken: serializedTokens.wbnb,60    isCommunity: true,61  },62  {63    pid: 425,64    lpSymbol: 'DVI-BNB LP',65    lpAddresses: {66      97: '',67      56: '0x89ebf9cd99864f6e51bd7a578965922029cab977',68    },69    token: serializedTokens.dvi,70    quoteToken: serializedTokens.wbnb,71    isCommunity: true,72  },73  {74    pid: 439,75    lpSymbol: 'MCRN-BNB LP',76    lpAddresses: {77      97: '',78      56: '0xe8D5d81dac092Ae61d097f84EFE230759BF2e522',79    },80    token: serializedTokens.mcrn,81    quoteToken: serializedTokens.wbnb,82    isCommunity: true,83  },84  {85    pid: 456,86    lpSymbol: 'TLOS-BNB LP',87    lpAddresses: {88      97: '',89      56: '0x3eDb06e2d182d133864fe7C0f9B4C204bBf61D4E',90    },91    token: serializedTokens.tlos,92    quoteToken: serializedTokens.wbnb,93  },94  {95    pid: 455,96    lpSymbol: 'HERO-BNB LP',97    lpAddresses: {98      97: '',99      56: '0x5d937c3966002cbD9d32c890a59439b4b300a14d',100    },101    token: serializedTokens.stephero,102    quoteToken: serializedTokens.wbnb,103  },104  {105    pid: 449,106    lpSymbol: 'BP-BNB LP',107    lpAddresses: {108      97: '',109      56: '0x2bF2dEB40639201C9A94c9e33b4852D9AEa5fd2D',110    },111    token: serializedTokens.bp,112    quoteToken: serializedTokens.wbnb,113  },114  {115    pid: 454,116    lpSymbol: 'BSCDEFI-BNB LP',117    lpAddresses: {118      97: '',119      56: '0x5B0A3b98C2f01741A11E57A9d0595B254E62F9F2',120    },121    token: serializedTokens.bscdefi,122    quoteToken: serializedTokens.wbnb,123  },124  {125    pid: 453,126    lpSymbol: 'QBT-BNB LP',127    lpAddresses: {128      97: '',129      56: '0x67EFeF66A55c4562144B9AcfCFbc62F9E4269b3e',130    },131    token: serializedTokens.qbt,132    quoteToken: serializedTokens.wbnb,133  },134  {135    pid: 452,136    lpSymbol: 'NAOS-BNB LP',137    lpAddresses: {138      97: '',139      56: '0xcaa662ad41a662b81be2aea5d59ec0697628665f',140    },141    token: serializedTokens.naos,142    quoteToken: serializedTokens.wbnb,143  },144  {145    pid: 451,146    lpSymbol: 'PHA-BUSD LP',147    lpAddresses: {148      97: '',149      56: '0x4ddd56e2f34338839BB5953515833950eA680aFb',150    },151    token: serializedTokens.pha,152    quoteToken: serializedTokens.busd,153  },154  {155    pid: 314,156    lpSymbol: 'BEL-BNB LP',157    lpAddresses: {158      97: '',159      56: '0x69DEE989c30b5fFe40867f5FC14F00E4bCE7B681',160    },161    token: serializedTokens.bel,162    quoteToken: serializedTokens.wbnb,163  },164  {165    pid: 446,166    lpSymbol: 'BMON-BUSD LP',167    lpAddresses: {168      97: '',169      56: '0x00e53C169dA54a7E11172aEEDf8Eb87F060F479e',170    },171    token: serializedTokens.bmon,172    quoteToken: serializedTokens.busd,173    isCommunity: true,174  },175  {176    pid: 450,177    lpSymbol: 'SFUND-BNB LP',178    lpAddresses: {179      97: '',180      56: '0x74fA517715C4ec65EF01d55ad5335f90dce7CC87',181    },182    token: serializedTokens.sfund,183    quoteToken: serializedTokens.wbnb,184    isCommunity: true,185  },186  {187    pid: 448,188    lpSymbol: 'RUSD-BUSD LP',189    lpAddresses: {190      97: '',191      56: '0x59FaC9e98479fc9979aE2a0C7422Af50bCBB9B26',192    },193    token: serializedTokens.rusd,194    quoteToken: serializedTokens.busd,195    isCommunity: true,196  },197  {198    pid: 317,199    lpSymbol: 'RAMP-BUSD LP',200    lpAddresses: {201      97: '',202      56: '0xE834bf723f5bDff34a5D1129F3c31Ea4787Bc76a',203    },204    token: serializedTokens.ramp,205    quoteToken: serializedTokens.busd,206  },207  {208    pid: 445,209    lpSymbol: 'POTS-BUSD LP',210    lpAddresses: {211      97: '',212      56: '0xF90BAA331Cfd40F094476E752Bf272892170d399',213    },214    token: serializedTokens.pots,215    quoteToken: serializedTokens.busd,216  },217  {218    pid: 397,219    lpSymbol: 'TUSD-BUSD LP',220    lpAddresses: {221      97: '',222      56: '0x2e28b9b74d6d99d4697e913b82b41ef1cac51c6c',223    },224    token: serializedTokens.tusd,225    quoteToken: serializedTokens.busd,226  },227  {228    pid: 443,229    lpSymbol: 'BTT-BUSD LP',230    lpAddresses: {231      97: '',232      56: '0xdcfbb12ded3fea12d2a078bc6324131cd14bf835',233    },234    token: serializedTokens.btt,235    quoteToken: serializedTokens.busd,236  },237  {238    pid: 442,239    lpSymbol: 'TRX-BUSD LP',240    lpAddresses: {241      97: '',242      56: '0xb5d108578be3750209d1b3a8f45ffee8c5a75146',243    },244    token: serializedTokens.trx,245    quoteToken: serializedTokens.busd,246  },247  {248    pid: 441,249    lpSymbol: 'WIN-BUSD LP',250    lpAddresses: {251      97: '',252      56: '0x6a445ceb72c8b1751755386c3990055ff92e14a0',253    },254    token: serializedTokens.win,255    quoteToken: serializedTokens.busd,256  },257  {258    pid: 436,259    lpSymbol: 'BABYCAKE-BNB LP',260    lpAddresses: {261      97: '',262      56: '0xb5e33fE13a821e55ED33C884589a804B1b4F6fD8',263    },264    token: serializedTokens.babycake,265    quoteToken: serializedTokens.wbnb,266    isCommunity: true,267  },268  {269    pid: 437,270    lpSymbol: 'BMON-BNB LP',271    lpAddresses: {272      97: '',273      56: '0x3C2b7B578Dd2175A1c3524Aa0D515106282Bf108',274    },275    token: serializedTokens.bmon,276    quoteToken: serializedTokens.wbnb,277    isCommunity: true,278  },279  {280    pid: 440,281    lpSymbol: 'HERO-BNB LP',282    lpAddresses: {283      97: '',284      56: '0xe267018C943E77992e7e515724B07b9CE7938124',285    },286    token: serializedTokens.hero,287    quoteToken: serializedTokens.wbnb,288    isCommunity: true,289  },290  {291    pid: 438,292    lpSymbol: 'WSG-BNB LP',293    lpAddresses: {294      97: '',295      56: '0x37Ff7D4459ad96E0B01275E5efffe091f33c2CAD',296    },297    token: serializedTokens.wsg,298    quoteToken: serializedTokens.wbnb,299    isCommunity: true,300  },301  {302    pid: 435,303    lpSymbol: 'REVV-BNB LP',304    lpAddresses: {305      97: '',306      56: '0x1cc18962b919ef90085a8b21f8ddc95824fbad9e',307    },308    token: serializedTokens.revv,309    quoteToken: serializedTokens.wbnb,310  },311  {312    pid: 367,313    lpSymbol: 'BTT-BNB LP',314    lpAddresses: {315      97: '',316      56: '0x946696344e7d4346b223e1cf77035a76690d6a73',317    },318    token: serializedTokens.btt,319    quoteToken: serializedTokens.wbnb,320  },321  {322    pid: 434,323    lpSymbol: 'SKILL-BNB LP',324    lpAddresses: {325      97: '',326      56: '0xc19dfd34d3ba5816df9cbdaa02d32a9f8dc6f6fc',327    },328    token: serializedTokens.skill,329    quoteToken: serializedTokens.wbnb,330  },331  {332    pid: 369,333    lpSymbol: 'WIN-BNB LP',334    lpAddresses: {335      97: '',336      56: '0x894bd57afd8efc93d9171cb585d11d0977557425',337    },338    token: serializedTokens.win,339    quoteToken: serializedTokens.wbnb,340  },341  {342    pid: 433,343    lpSymbol: 'IF-BUSD LP',344    lpAddresses: {345      97: '',346      56: '0x7b4682D2B3f8670b125aF6AEA8d7eD2Daa43Bdc1',347    },348    token: serializedTokens.if,349    quoteToken: serializedTokens.busd,350  },351  {352    pid: 432,353    lpSymbol: 'SPS-BNB LP',354    lpAddresses: {355      97: '',356      56: '0xfdfde3af740a22648b9dd66d05698e5095940850',357    },358    token: serializedTokens.sps,359    quoteToken: serializedTokens.wbnb,360  },361  {362    pid: 431,363    lpSymbol: 'C98-BNB LP',364    lpAddresses: {365      97: '',366      56: '0x92247860A03F48d5c6425c7CA35CDcFCB1013AA1',367    },368    token: serializedTokens.c98,369    quoteToken: serializedTokens.wbnb,370  },371  {372    pid: 430,373    lpSymbol: 'AXS-BNB LP',374    lpAddresses: {375      97: '',376      56: '0xC2d00De94795e60FB76Bc37d899170996cBdA436',377    },378    token: serializedTokens.axs,379    quoteToken: serializedTokens.wbnb,380  },381  {382    pid: 379,383    lpSymbol: 'PMON-BUSD LP',384    lpAddresses: {385      97: '',386      56: '0xcdb0016d97fd0e7ec2c3b78aa4786cbd8e19c14c',387    },388    token: serializedTokens.pmon,389    quoteToken: serializedTokens.busd,390  },391  {392    pid: 368,393    lpSymbol: 'TRX-BNB LP',394    lpAddresses: {395      97: '',396      56: '0x3cd338c3bb249b6b3c55799f85a589febbbff9dd',397    },398    token: serializedTokens.trx,399    quoteToken: serializedTokens.wbnb,400  },401  {402    pid: 428,403    lpSymbol: 'TITAN-BUSD LP',404    lpAddresses: {405      97: '',406      56: '0x9392a1f471d9aa14c0b8eb28bd7a3f4a814727be',407    },408    token: serializedTokens.titan,409    quoteToken: serializedTokens.busd,410  },411  {412    pid: 427,413    lpSymbol: 'ONE-BNB LP',414    lpAddresses: {415      97: '',416      56: '0x9d2296e2fe3cdbf2eb3e3e2ca8811bafa42eedff',417    },418    token: serializedTokens.harmony,419    quoteToken: serializedTokens.wbnb,420  },421  {422    pid: 426,423    lpSymbol: 'MASK-BNB LP',424    lpAddresses: {425      97: '',426      56: '0x46c6bA71af7648cD7f67D0AD4d16f75bE251ed12',427    },428    token: serializedTokens.mask,429    quoteToken: serializedTokens.wbnb,430  },431  {432    pid: 339,433    lpSymbol: 'GUM-BNB LP',434    lpAddresses: {435      97: '',436      56: '0x28Ea5894D4DBbE90bB58eE3BAB2869387d711c87',437    },438    token: serializedTokens.gum,439    quoteToken: serializedTokens.wbnb,440  },441  {442    pid: 424,443    lpSymbol: 'ADX-BUSD LP',444    lpAddresses: {445      97: '',446      56: '0x0648ff5de80adf54aac07ece2490f50a418dde23',447    },448    token: serializedTokens.adx,449    quoteToken: serializedTokens.busd,450  },451  {452    pid: 423,453    lpSymbol: 'USDC-USDT LP',454    lpAddresses: {455      97: '',456      56: '0xec6557348085aa57c72514d67070dc863c0a5a8c',457    },458    token: serializedTokens.usdc,459    quoteToken: serializedTokens.usdt,460  },461  {462    pid: 422,463    lpSymbol: 'CAKE-USDT LP',464    lpAddresses: {465      97: '',466      56: '0xA39Af17CE4a8eb807E076805Da1e2B8EA7D0755b',467    },468    token: serializedTokens.cake,469    quoteToken: serializedTokens.usdt,470  },471  {472    pid: 357,473    lpSymbol: 'SUTER-BNB LP',474    lpAddresses: {475      97: '',476      56: '0x2d5DB889392Bc3c8B023A8631ca230A033eEA1B8',477    },478    token: serializedTokens.suter,479    quoteToken: serializedTokens.wbnb,480  },481  {482    pid: 421,483    lpSymbol: 'BSCPAD-BNB LP',484    lpAddresses: {485      97: '',486      56: '0xba01662e978de7d67f8ffc937726215eb8995d17',487    },488    token: serializedTokens.bscpad,489    quoteToken: serializedTokens.wbnb,490  },491  {492    pid: 420,493    lpSymbol: 'RABBIT-BNB LP',494    lpAddresses: {495      97: '',496      56: '0x04b56A5B3f45CFeaFbfDCFc999c14be5434f2146',497    },498    token: serializedTokens.rabbit,499    quoteToken: serializedTokens.wbnb,500  },501  {502    pid: 419,503    lpSymbol: 'WAULTx-BNB LP',504    lpAddresses: {505      97: '',506      56: '0x3e4370204f598205998143F07ebCC486E441b456',507    },508    token: serializedTokens.waultx,509    quoteToken: serializedTokens.wbnb,510  },511  {512    pid: 418,513    lpSymbol: 'WEX-BNB LP',514    lpAddresses: {515      97: '',516      56: '0x547A355E70cd1F8CAF531B950905aF751dBEF5E6',517    },518    token: serializedTokens.wex,519    quoteToken: serializedTokens.wbnb,520  },521  {522    pid: 417,523    lpSymbol: 'FORM-BUSD LP',524    lpAddresses: {525      97: '',526      56: '0x3E19C18Fe3458A6065D8F0844cB7Eae52C9DAE07',527    },528    token: serializedTokens.form,529    quoteToken: serializedTokens.busd,530  },531  {532    pid: 416,533    lpSymbol: 'ORBS-BUSD LP',534    lpAddresses: {535      97: '',536      56: '0xB87b857670A44356f2b70337E0F218713D2378e8',537    },538    token: serializedTokens.orbs,539    quoteToken: serializedTokens.busd,540  },541  {542    pid: 415,543    lpSymbol: 'DG-BNB LP',544    lpAddresses: {545      97: '',546      56: '0x8b2824d57eebf07f5aff5c91fa67ed7c501a9f43',547    },548    token: serializedTokens.$dg,549    quoteToken: serializedTokens.wbnb,550  },551  {552    pid: 414,553    lpSymbol: 'WOO-BNB LP',554    lpAddresses: {555      97: '',556      56: '0x89eE0491CE55d2f7472A97602a95426216167189',557    },558    token: serializedTokens.woo,559    quoteToken: serializedTokens.wbnb,560  },561  {562    pid: 413,563    lpSymbol: 'HTB-BNB LP',564    lpAddresses: {565      97: '',566      56: '0x2a995d355d5df641e878c0f366685741fd18d004',567    },568    token: serializedTokens.htb,569    quoteToken: serializedTokens.wbnb,570  },571  {572    pid: 351,573    lpSymbol: 'JGN-BNB LP',574    lpAddresses: {575      97: '',576      56: '0x7275278C94b5e20708380561C4Af98F38dDC6374',577    },578    token: serializedTokens.jgn,579    quoteToken: serializedTokens.wbnb,580  },581  {582    pid: 337,583    lpSymbol: 'DFT-BNB LP',584    lpAddresses: {585      97: '',586      56: '0x24d3B0eD4C444A4f6882d527cBF67aDc8c026582',587    },588    token: serializedTokens.dft,589    quoteToken: serializedTokens.wbnb,590  },591  {592    pid: 412,593    lpSymbol: 'HAI-BNB LP',594    lpAddresses: {595      97: '',596      56: '0x289841bFb694767bCb56fBc7B741aB4B4D97D490',597    },598    token: serializedTokens.hai,599    quoteToken: serializedTokens.wbnb,600  },601  {602    pid: 411,603    lpSymbol: 'O3-BUSD LP',604    lpAddresses: {605      97: '',606      56: '0x7759283571Da8c0928786A96AE601944E10461Ff',607    },608    token: serializedTokens.o3,609    quoteToken: serializedTokens.busd,610  },611  {612    pid: 410,613    lpSymbol: 'AMPL-BUSD LP',614    lpAddresses: {615      97: '',616      56: '0x6e98beb694ff1cdb1ee130edd2b21b0298683d58',617    },618    token: serializedTokens.ampl,619    quoteToken: serializedTokens.busd,620  },621  {622    pid: 343,623    lpSymbol: 'ODDZ-BNB LP',624    lpAddresses: {625      97: '',626      56: '0x3c2c77353E2F6AC1578807b6b2336Bf3a3CbB014',627    },628    token: serializedTokens.oddz,629    quoteToken: serializedTokens.wbnb,630  },631  {632    pid: 409,633    lpSymbol: 'ETH-USDC LP',634    lpAddresses: {635      97: '',636      56: '0xEa26B78255Df2bBC31C1eBf60010D78670185bD0',637    },638    token: serializedTokens.eth,639    quoteToken: serializedTokens.usdc,640  },641  {642    pid: 408,643    lpSymbol: 'BTCB-ETH LP',644    lpAddresses: {645      97: '',646      56: '0xD171B26E4484402de70e3Ea256bE5A2630d7e88D',647    },648    token: serializedTokens.btcb,649    quoteToken: serializedTokens.eth,650  },651  {652    pid: 347,653    lpSymbol: 'BONDLY-BNB LP',654    lpAddresses: {655      97: '',656      56: '0xb8b4383B49d451BBeA63BC4421466E1086da6f18',657    },658    token: serializedTokens.bondly,659    quoteToken: serializedTokens.wbnb,660  },661  {662    pid: 407,663    lpSymbol: 'MARSH-BNB LP',664    lpAddresses: {665      97: '',666      56: '0x222f93187f15f354d41ff6a7703ef7e18cdd5103',667    },668    token: serializedTokens.marsh,669    quoteToken: serializedTokens.wbnb,670  },671  {672    pid: 406,673    lpSymbol: 'BORING-BNB LP',674    lpAddresses: {675      97: '',676      56: '0xDfA808Da5CFB9ABA5Fb3748FF85888F79174F378',677    },678    token: serializedTokens.boring,679    quoteToken: serializedTokens.wbnb,680  },681  {682    pid: 405,683    lpSymbol: 'MBOX-BNB LP',684    lpAddresses: {685      97: '',686      56: '0x8FA59693458289914dB0097F5F366d771B7a7C3F',687    },688    token: serializedTokens.mbox,689    quoteToken: serializedTokens.wbnb,690  },691  {692    pid: 404,693    lpSymbol: 'ATA-BNB LP',694    lpAddresses: {695      97: '',696      56: '0xef7767677867552cfa699148b96a03358a9be779',697    },698    token: serializedTokens.ata,699    quoteToken: serializedTokens.wbnb,700  },701  {702    pid: 403,703    lpSymbol: 'MX-BUSD LP',704    lpAddresses: {705      97: '',706      56: '0x41f049d990d38305504631c9835f6f856bf1ba67',707    },708    token: serializedTokens.mx,709    quoteToken: serializedTokens.busd,710  },711  {712    pid: 402,713    lpSymbol: 'bCFX-BUSD LP',714    lpAddresses: {715      97: '',716      56: '0xA0387eBeA6be90849c2261b911fBBD52B4C9eAC4',717    },718    token: serializedTokens.bcfx,719    quoteToken: serializedTokens.busd,720  },721  {722    pid: 401,723    lpSymbol: 'QKC-BUSD LP',724    lpAddresses: {725      97: '',726      56: '0x8853e3309a31583ea438f7704681f46f0d4d909b',727    },728    token: serializedTokens.qkc,729    quoteToken: serializedTokens.busd,730  },731  {732    pid: 400,733    lpSymbol: 'KTN-BNB LP',734    lpAddresses: {735      97: '',736      56: '0x48028de4a9b0d3d91180333d796021ec7757ba1b',737    },738    token: serializedTokens.ktn,739    quoteToken: serializedTokens.wbnb,740  },741  {742    pid: 399,743    lpSymbol: 'MTRG-BUSD LP',744    lpAddresses: {745      97: '',746      56: '0x4dcA4D427511bC327639b222DA18FA5e334F686F',747    },748    token: serializedTokens.mtrg,749    quoteToken: serializedTokens.busd,750  },751  {752    pid: 398,753    lpSymbol: 'SWG-BNB LP',754    lpAddresses: {755      97: '',756      56: '0x226af4e918fcf3e62e5eeec867a3e78aaa7bb01d',757    },758    token: serializedTokens.swg,759    quoteToken: serializedTokens.wbnb,760  },761  {762    pid: 396,763    lpSymbol: 'VRT-BNB LP',764    lpAddresses: {765      97: '',766      56: '0xef5212ada83ec2cc105c409df10b8806d20e3b35',767    },768    token: serializedTokens.vrt,769    quoteToken: serializedTokens.wbnb,770  },771  {772    pid: 395,773    lpSymbol: 'EZ-BNB LP',774    lpAddresses: {775      97: '',776      56: '0x51bf99bbae59b67e5ce2fa9c17b683384773f8b3',777    },778    token: serializedTokens.ez,779    quoteToken: serializedTokens.wbnb,780  },781  {782    pid: 394,783    lpSymbol: 'KALM-BNB LP',784    lpAddresses: {785      97: '',786      56: '0xc74f7243766269dec5b85b0ef4af186e909c1b06',787    },788    token: serializedTokens.kalm,789    quoteToken: serializedTokens.wbnb,790  },791  {792    pid: 393,793    lpSymbol: 'pOPEN-BNB LP',794    lpAddresses: {795      97: '',796      56: '0x1090c996fd1490d15dd7906322ee676a5cc3cf82',797    },798    token: serializedTokens.popen,799    quoteToken: serializedTokens.wbnb,800  },801  {802    pid: 335,803    lpSymbol: 'LIEN-BNB LP',804    lpAddresses: {805      97: '',806      56: '0xa4963B38b271c0D714593063497Fc786Fa4029Ce',807    },808    token: serializedTokens.lien,809    quoteToken: serializedTokens.wbnb,810  },811  {812    pid: 392,813    lpSymbol: 'WELL-BUSD LP',814    lpAddresses: {815      97: '',816      56: '0x1d94cb25895abd6ccfef863c53372bb462aa6b86',817    },818    token: serializedTokens.well,819    quoteToken: serializedTokens.busd,820  },821  {822    pid: 391,823    lpSymbol: 'DERI-BUSD LP',824    lpAddresses: {825      97: '',826      56: '0xdc7188ac11e124b1fa650b73ba88bf615ef15256',827    },828    token: serializedTokens.deri,829    quoteToken: serializedTokens.busd,830  },831  {832    pid: 390,833    lpSymbol: 'CHR-BUSD LP',834    lpAddresses: {835      97: '',836      56: '0x6045931e511ef7e53a4a817f971e0ca28c758809',837    },838    token: serializedTokens.chr,839    quoteToken: serializedTokens.busd,840  },841  {842    pid: 389,843    lpSymbol: 'CAKE-BUSD LP',844    lpAddresses: {845      97: '',846      56: '0x804678fa97d91B974ec2af3c843270886528a9E6',847    },848    token: serializedTokens.cake,849    quoteToken: serializedTokens.busd,850  },851  {852    pid: 388,853    lpSymbol: 'CYC-BNB LP',854    lpAddresses: {855      97: '',856      56: '0xecf30fbecfa642012f54212a3be92eef1e48edac',857    },858    token: serializedTokens.cyc,859    quoteToken: serializedTokens.wbnb,860  },861  {862    pid: 387,863    lpSymbol: 'XEND-BNB LP',864    lpAddresses: {865      97: '',866      56: '0xcecfc2789af72ed151589a96a59f3a1abc65c3b5',867    },868    token: serializedTokens.xend,869    quoteToken: serializedTokens.wbnb,870  },871  {872    pid: 296,873    lpSymbol: 'HGET-BNB LP',874    lpAddresses: {875      97: '',876      56: '0xF74ee1e10e097dc326a2ad004F9Cc95CB71088d3',877    },878    token: serializedTokens.hget,879    quoteToken: serializedTokens.wbnb,880  },881  {882    pid: 386,883    lpSymbol: 'HOTCROSS-BNB LP',884    lpAddresses: {885      97: '',886      56: '0xf23bad605e94de0e3b60c9718a43a94a5af43915',887    },888    token: serializedTokens.hotcross,889    quoteToken: serializedTokens.wbnb,890  },891  {892    pid: 385,893    lpSymbol: 'RFOX-BNB LP',894    lpAddresses: {895      97: '',896      56: '0x8e04b3972b5c25766c681dfd30a8a1cbf6dcc8c1',897    },898    token: serializedTokens.rfox,899    quoteToken: serializedTokens.wbnb,900  },901  {902    pid: 384,903    lpSymbol: 'WMASS-BUSD LP',904    lpAddresses: {905      97: '',906      56: '0xec95ff6281c3ad8e27372fa6675eb337640b8e5e',907    },908    token: serializedTokens.wmass,909    quoteToken: serializedTokens.busd,910  },911  {912    pid: 383,913    lpSymbol: 'UBXT-BUSD LP',914    lpAddresses: {915      97: '',916      56: '0x8d3ff27d2ad6a9556b7c4f82f4d602d20114bc90',917    },918    token: serializedTokens.ubxt,919    quoteToken: serializedTokens.busd,920  },921  {922    pid: 381,923    lpSymbol: 'BTR-BUSD LP',924    lpAddresses: {925      97: '',926      56: '0xbc7ac609fa730239190a70952e64ee1dfc2530ac',927    },928    token: serializedTokens.btr,929    quoteToken: serializedTokens.busd,930  },931  {932    pid: 380,933    lpSymbol: 'ÏDOGE-BNB LP',934    lpAddresses: {935      97: '',936      56: '0x2030845Ce7d4224523fd2F03Ca20Afe4aAD1D890',937    },938    token: serializedTokens.Ïdoge,939    quoteToken: serializedTokens.wbnb,940  },941  {942    pid: 378,943    lpSymbol: 'ONE-BUSD LP',944    lpAddresses: {945      97: '',946      56: '0x4d057f769d930eafd597b49d6fb2e1009a73a702',947    },948    token: serializedTokens.one,949    quoteToken: serializedTokens.busd,950  },951  {952    pid: 377,953    lpSymbol: 'FINE-BNB LP',954    lpAddresses: {955      97: '',956      56: '0xc309a6d2f1537922e06f15aa2eb21caa1b2eedb6',957    },958    token: serializedTokens.fine,959    quoteToken: serializedTokens.wbnb,960  },961  {962    pid: 376,963    lpSymbol: 'DOGE-BNB LP',964    lpAddresses: {965      97: '',966      56: '0xac109c8025f272414fd9e2faa805a583708a017f',967    },968    token: serializedTokens.doge,969    quoteToken: serializedTokens.wbnb,970  },971  {972    pid: 310,973    lpSymbol: 'bMXX-BNB LP',974    lpAddresses: {975      97: '',976      56: '0xc20A92a1424b29b78DFaF92FD35D4cf8A06419B4',977    },978    token: serializedTokens.bmxx,979    quoteToken: serializedTokens.wbnb,980  },981  {982    pid: 375,983    lpSymbol: 'OIN-BUSD LP',984    lpAddresses: {985      97: '',986      56: '0x6a00e41561ac36a78dba1d09091b0f00c4e53724',987    },988    token: serializedTokens.oin,989    quoteToken: serializedTokens.busd,990  },991  {992    pid: 374,993    lpSymbol: 'HYFI-BNB LP',994    lpAddresses: {995      97: '',996      56: '0x0716725d78081a9e0e1ff81516f5415b399e274d',997    },998    token: serializedTokens.hyfi,999    quoteToken: serializedTokens.wbnb,1000  },1001  {1002    pid: 373,1003    lpSymbol: 'KUN-BUSD LP',1004    lpAddresses: {1005      97: '',1006      56: '0xea61020e5a128d2bec67d48f7cfbe3408db7e391',1007    },1008    token: serializedTokens.kun,1009    quoteToken: serializedTokens.busd,1010  },1011  {1012    pid: 372,1013    lpSymbol: 'KUN-QSD LP',1014    lpAddresses: {1015      97: '',1016      56: '0x4eafbf68a2d50291ffd163d4e00ad0f040aae707',1017    },1018    token: serializedTokens.kun,1019    quoteToken: serializedTokens.qsd,1020  },1021  {1022    pid: 371,1023    lpSymbol: 'MATH-BUSD LP',1024    lpAddresses: {1025      97: '',1026      56: '0xb7cada0f120ca46745a024e6b9fe907b2fe10cf3',1027    },1028    token: serializedTokens.math,1029    quoteToken: serializedTokens.busd,1030  },1031  {1032    pid: 370,1033    lpSymbol: 'mCOIN-UST LP',1034    lpAddresses: {1035      97: '',1036      56: '0xbcf01a42f6bc42f3cfe81b05519565044d65d22a',1037    },1038    token: serializedTokens.mcoin,1039    quoteToken: serializedTokens.ust,1040  },1041  {1042    pid: 366,1043    lpSymbol: 'PNT-pBTC LP',1044    lpAddresses: {1045      97: '',1046      56: '0xdaa89d335926628367b47852989bb22ee62ca5de',1047    },1048    token: serializedTokens.pnt,1049    quoteToken: serializedTokens.pbtc,1050  },1051  {1052    pid: 311,1053    lpSymbol: 'xMARK-BUSD LP',1054    lpAddresses: {1055      97: '',1056      56: '0xAa40f1AC20AAFcFEE8595Da606D78C503C7e70A3',1057    },1058    token: serializedTokens.xmark,1059    quoteToken: serializedTokens.busd,1060  },1061  {1062    pid: 365,1063    lpSymbol: 'BTCB-BUSD LP',1064    lpAddresses: {1065      97: '',1066      56: '0xf45cd219aef8618a92baa7ad848364a158a24f33',1067    },1068    token: serializedTokens.btcb,1069    quoteToken: serializedTokens.busd,1070  },1071  {1072    pid: 364,1073    lpSymbol: 'LMT-BNB LP',1074    lpAddresses: {1075      97: '',1076      56: '0x8271d7eafeeb8f24d7c9fe1acce2ae20611972e5',1077    },1078    token: serializedTokens.lmt,1079    quoteToken: serializedTokens.wbnb,1080  },1081  {1082    pid: 363,1083    lpSymbol: 'DFD-BUSD LP',1084    lpAddresses: {1085      97: '',1086      56: '0x029d66f9c0469450b7b4834b8ddc6a1118cec3e1',1087    },1088    token: serializedTokens.dfd,1089    quoteToken: serializedTokens.busd,1090  },1091  {1092    pid: 362,1093    lpSymbol: 'ALPACA-BUSD LP',1094    lpAddresses: {1095      97: '',1096      56: '0x7752e1fa9f3a2e860856458517008558deb989e3',1097    },1098    token: serializedTokens.alpaca,1099    quoteToken: serializedTokens.busd,1100  },1101  {1102    pid: 361,1103    lpSymbol: 'ÏBTC-BTCB LP',1104    lpAddresses: {1105      97: '',1106      56: '0x8046fa66753928F35f7Db23ae0188ee6743C2FBA',1107    },1108    token: serializedTokens.Ïbtc,1109    quoteToken: serializedTokens.btcb,1110  },1111  {1112    pid: 304,1113    lpSymbol: 'SWINGBY-BNB LP',1114    lpAddresses: {1115      97: '',1116      56: '0x4Fd6D315bEf387fAD2322fbc64368fC443F0886D',1117    },1118    token: serializedTokens.swingby,1119    quoteToken: serializedTokens.wbnb,1120  },1121  {1122    pid: 360,1123    lpSymbol: 'XED-BNB LP',1124    lpAddresses: {1125      97: '',1126      56: '0xa7A0b605343dF36B748FF4B5f7578b3F2D0651CE',1127    },1128    token: serializedTokens.xed,1129    quoteToken: serializedTokens.wbnb,1130  },1131  {1132    pid: 359,1133    lpSymbol: 'HAKKA-BUSD LP',1134    lpAddresses: {1135      97: '',1136      56: '0x2C624C9Ecf16Cb81aB85cC2C0B0c5e12A09AFDa6',1137    },1138    token: serializedTokens.hakka,1139    quoteToken: serializedTokens.busd,1140  },1141  {1142    pid: 358,1143    lpSymbol: 'CGG-BNB LP',1144    lpAddresses: {1145      97: '',1146      56: '0x0604471c532F9fEBAD3E37190B667f44BD0894b3',1147    },1148    token: serializedTokens.cgg,1149    quoteToken: serializedTokens.wbnb,1150  },1151  {1152    pid: 356,1153    lpSymbol: 'bROOBEE-BNB LP',1154    lpAddresses: {1155      97: '',1156      56: '0x950FD020F8E4B8C57285EC7020b7a204348dadFa',1157    },1158    token: serializedTokens.broobee,1159    quoteToken: serializedTokens.wbnb,1160  },1161  {1162    pid: 355,1163    lpSymbol: 'HZN-BNB LP',1164    lpAddresses: {1165      97: '',1166      56: '0xDc9a574b9B341D4a98cE29005b614e1E27430E74',1167    },1168    token: serializedTokens.hzn,1169    quoteToken: serializedTokens.wbnb,1170  },1171  {1172    pid: 354,1173    lpSymbol: 'ALPA-BNB LP',1174    lpAddresses: {1175      97: '',1176      56: '0x4cC442220BE1cE560C1f2573f8CA8f460B3E4172',1177    },1178    token: serializedTokens.alpa,1179    quoteToken: serializedTokens.wbnb,1180  },1181  {1182    pid: 353,1183    lpSymbol: 'PERL-BNB LP',1184    lpAddresses: {1185      97: '',1186      56: '0x61010e6CbA3b56ba47E9dFd56Da682daCFe76131',1187    },1188    token: serializedTokens.perl,1189    quoteToken: serializedTokens.wbnb,1190  },1191  {1192    pid: 352,1193    lpSymbol: 'TLM-BNB LP',1194    lpAddresses: {1195      97: '',1196      56: '0xE6b421a4408c82381b226Ab5B6F8C4b639044359',1197    },1198    token: serializedTokens.tlm,1199    quoteToken: serializedTokens.wbnb,1200  },1201  {1202    pid: 350,1203    lpSymbol: 'EPS-BNB LP',1204    lpAddresses: {1205      97: '',1206      56: '0xddE420cbB3794ebD8FFC3Ac69F9c78e5d1411870',1207    },1208    token: serializedTokens.eps,1209    quoteToken: serializedTokens.wbnb,1210  },1211  {1212    pid: 349,1213    lpSymbol: 'ARPA-BNB LP',1214    lpAddresses: {1215      97: '',1216      56: '0x9730c791743300E9f984C9264395ce705A55Da7c',1217    },1218    token: serializedTokens.arpa,1219    quoteToken: serializedTokens.wbnb,1220  },1221  {1222    pid: 348,1223    lpSymbol: 'ITAM-BNB LP',1224    lpAddresses: {1225      97: '',1226      56: '0xd02DA76c813b9cd4516eD50442923E625f90228f',1227    },1228    token: serializedTokens.itam,1229    quoteToken: serializedTokens.wbnb,1230  },1231  {1232    pid: 346,1233    lpSymbol: 'TKO-BNB LP',1234    lpAddresses: {1235      97: '',1236      56: '0xFFd4B200d3C77A0B691B5562D804b3bd54294e6e',1237    },1238    token: serializedTokens.tko,1239    quoteToken: serializedTokens.wbnb,1240  },1241  {1242    pid: 345,1243    lpSymbol: 'APYS-BNB LP',1244    lpAddresses: {1245      97: '',1246      56: '0x510b29a93ebf098f3fC24A16541aAA0114D07056',1247    },1248    token: serializedTokens.apys,1249    quoteToken: serializedTokens.wbnb,1250  },1251  {1252    pid: 344,1253    lpSymbol: 'HOO-BUSD LP',1254    lpAddresses: {1255      97: '',1256      56: '0x3e42C1f7239231E3752B507764445dd8e6A570d5',1257    },1258    token: serializedTokens.hoo,1259    quoteToken: serializedTokens.busd,1260  },1261  {1262    pid: 342,1263    lpSymbol: 'EASY-BNB LP',1264    lpAddresses: {1265      97: '',1266      56: '0x20c6De8983Fb2D641c55004646aEF40b4EA66E18',1267    },1268    token: serializedTokens.easy,1269    quoteToken: serializedTokens.wbnb,1270  },1271  {1272    pid: 341,1273    lpSymbol: 'NRV-BNB LP',1274    lpAddresses: {1275      97: '',1276      56: '0xE482249Cd295C0d1e9D2baAEE71e66de21024C68',1277    },1278    token: serializedTokens.nrv,1279    quoteToken: serializedTokens.wbnb,1280  },1281  {1282    pid: 340,1283    lpSymbol: 'DEGO-BNB LP',1284    lpAddresses: {1285      97: '',1286      56: '0xF1Ec67fA1881796BFf63Db3E1A301cE9cb787Fad',1287    },1288    token: serializedTokens.dego,1289    quoteToken: serializedTokens.wbnb,1290  },1291  {1292    pid: 338,1293    lpSymbol: 'pBTC-BNB LP',1294    lpAddresses: {1295      97: '',1296      56: '0x0362ba706DFE8ED12Ec1470aB171d8Dcb1C72B8D',1297    },1298    token: serializedTokens.pbtc,1299    quoteToken: serializedTokens.wbnb,1300  },1301  {1302    pid: 336,1303    lpSymbol: 'SWTH-BNB LP',1304    lpAddresses: {1305      97: '',1306      56: '0x123D475E13aA54A43a7421d94CAa4459dA021c77',1307    },1308    token: serializedTokens.swth,1309    quoteToken: serializedTokens.wbnb,1310  },1311  {1312    pid: 334,1313    lpSymbol: 'ZIL-BNB LP',1314    lpAddresses: {1315      97: '',1316      56: '0x6A97867a4b7Eb7646ffB1F359ad582e9903aa1C2',1317    },1318    token: serializedTokens.zil,1319    quoteToken: serializedTokens.wbnb,1320  },1321  {1322    pid: 333,1323    lpSymbol: 'pCWS-BNB LP',1324    lpAddresses: {1325      97: '',1326      56: '0x6615CE60D71513aA4849269dD63821D324A23F8C',1327    },1328    token: serializedTokens.pcws,1329    quoteToken: serializedTokens.wbnb,1330  },1331  {1332    pid: 332,1333    lpSymbol: 'bBADGER-BTCB LP',1334    lpAddresses: {1335      97: '',1336      56: '0x5A58609dA96469E9dEf3fE344bC39B00d18eb9A5',1337    },1338    token: serializedTokens.bbadger,1339    quoteToken: serializedTokens.btcb,1340  },1341  {1342    pid: 331,1343    lpSymbol: 'bDIGG-BTCB LP',1344    lpAddresses: {1345      97: '',1346      56: '0x81d776C90c89B8d51E9497D58338933127e2fA80',1347    },1348    token: serializedTokens.bdigg,1349    quoteToken: serializedTokens.btcb,1350  },1351  {1352    pid: 330,1353    lpSymbol: 'LTO-BNB LP',1354    lpAddresses: {1355      97: '',1356      56: '0xa5Bb44c6F5fD9B836E5a654c8AbbCCc96A15deE5',1357    },1358    token: serializedTokens.lto,1359    quoteToken: serializedTokens.wbnb,1360  },1361  {1362    pid: 329,1363    lpSymbol: 'MIR-UST LP',1364    lpAddresses: {1365      97: '',1366      56: '0x89666d026696660e93Bf6edf57B71A68615768B7',1367    },1368    token: serializedTokens.mir,1369    quoteToken: serializedTokens.ust,1370  },1371  {1372    pid: 328,1373    lpSymbol: 'TRADE-BNB LP',1374    lpAddresses: {1375      97: '',1376      56: '0x8F6baf368E7A4f6e2C9c995f22702d5e654A0237',1377    },1378    token: serializedTokens.trade,1379    quoteToken: serializedTokens.wbnb,1380  },1381  {1382    pid: 327,1383    lpSymbol: 'DUSK-BNB LP',1384    lpAddresses: {1385      97: '',1386      56: '0x678EDb8B268e73dB57b7694c163e1dc296b6e219',1387    },1388    token: serializedTokens.dusk,1389    quoteToken: serializedTokens.wbnb,1390  },1391  {1392    pid: 326,1393    lpSymbol: 'BIFI-BNB LP',1394    lpAddresses: {1395      97: '',1396      56: '0x3f1A9f3D9aaD8bD339eD4853F345d2eF89fbfE0c',1397    },1398    token: serializedTokens.bifi,1399    quoteToken: serializedTokens.wbnb,1400  },1401  {1402    pid: 325,1403    lpSymbol: 'TXL-BUSD LP',1404    lpAddresses: {1405      97: '',1406      56: '0x1434BB50196A0C7eA825940b1DFd8aAd25d79817',1407    },1408    token: serializedTokens.txl,1409    quoteToken: serializedTokens.busd,1410  },1411  {1412    pid: 324,1413    lpSymbol: 'COS-BNB LP',1414    lpAddresses: {1415      97: '',1416      56: '0xe98585bBb2dc81854fF100A3d9D7B0F53E0dafEd',1417    },1418    token: serializedTokens.cos,1419    quoteToken: serializedTokens.wbnb,1420  },1421  {1422    pid: 323,1423    lpSymbol: 'BUNNY-BNB LP',1424    lpAddresses: {1425      97: '',1426      56: '0x5aFEf8567414F29f0f927A0F2787b188624c10E2',1427    },1428    token: serializedTokens.bunny,1429    quoteToken: serializedTokens.wbnb,1430  },1431  {1432    pid: 322,1433    lpSymbol: 'ALICE-BNB LP',1434    lpAddresses: {1435      97: '',1436      56: '0xcAD7019D6d84a3294b0494aEF02e73BD0f2572Eb',1437    },1438    token: serializedTokens.alice,1439    quoteToken: serializedTokens.wbnb,1440  },1441  {1442    pid: 321,1443    lpSymbol: 'FOR-BUSD LP',1444    lpAddresses: {1445      97: '',1446      56: '0xE60B4e87645093A42fa9dcC5d0C8Df6E67f1f9d2',1447    },1448    token: serializedTokens.for,1449    quoteToken: serializedTokens.busd,1450  },1451  {1452    pid: 320,1453    lpSymbol: 'BUX-BNB LP',1454    lpAddresses: {1455      97: '',1456      56: '0x222C3CbB89647bF77822435Bd4c234A04272A77A',1457    },1458    token: serializedTokens.bux,1459    quoteToken: serializedTokens.wbnb,1460  },1461  {1462    pid: 319,1463    lpSymbol: 'NULS-BUSD LP',1464    lpAddresses: {1465      97: '',1466      56: '0x853784B7BDe87d858555715c0123374242db7943',1467    },1468    token: serializedTokens.nuls,1469    quoteToken: serializedTokens.busd,1470  },1471  {1472    pid: 318,1473    lpSymbol: 'BELT-BNB LP',1474    lpAddresses: {1475      97: '',1476      56: '0xF3Bc6FC080ffCC30d93dF48BFA2aA14b869554bb',1477    },1478    token: serializedTokens.belt,1479    quoteToken: serializedTokens.wbnb,1480  },1481  {1482    pid: 316,1483    lpSymbol: 'BFI-BNB LP',1484    lpAddresses: {1485      97: '',1486      56: '0x153Ad7d25B0b810497483d0cEE8AF42Fc533FeC8',1487    },1488    token: serializedTokens.bfi,1489    quoteToken: serializedTokens.wbnb,1490  },1491  {1492    pid: 315,1493    lpSymbol: 'DEXE-BUSD LP',1494    lpAddresses: {1495      97: '',1496      56: '0x3578B1f9BCE98D2F4D293b422d8850fdf48B1f21',1497    },1498    token: serializedTokens.dexe,1499    quoteToken: serializedTokens.busd,1500  },1501  {1502    pid: 313,1503    lpSymbol: 'TPT-BUSD LP',1504    lpAddresses: {1505      97: '',1506      56: '0x6D0c831254221ba121fB53fb44Df289A6558867d',1507    },1508    token: serializedTokens.tpt,1509    quoteToken: serializedTokens.busd,1510  },1511  {1512    pid: 312,1513    lpSymbol: 'WATCH-BNB LP',1514    lpAddresses: {1515      97: '',1516      56: '0x13321AcfF4A27f3d2bcA64b8bEaC6e5FdAAAf12C',1517    },1518    token: serializedTokens.watch,1519    quoteToken: serializedTokens.wbnb,1520  },1521  {1522    pid: 309,1523    lpSymbol: 'IOTX-BUSD LP',1524    lpAddresses: {1525      97: '',1526      56: '0xc13aA76AAc067c86aE38028019F414D731b3D86A',1527    },1528    token: serializedTokens.iotx,1529    quoteToken: serializedTokens.busd,1530  },1531  {1532    pid: 308,1533    lpSymbol: 'BOR-BNB LP',1534    lpAddresses: {1535      97: '',1536      56: '0xe094c686aD6cDda57b9564457F541FBF099B948A',1537    },1538    token: serializedTokens.bor,1539    quoteToken: serializedTokens.wbnb,1540  },1541  {1542    pid: 307,1543    lpSymbol: 'bOPEN-BNB LP',1544    lpAddresses: {1545      97: '',1546      56: '0xc7A9c2af263ebB86139Cca9349e49b17129Ba033',1547    },1548    token: serializedTokens.bopen,1549    quoteToken: serializedTokens.wbnb,1550  },1551  {1552    pid: 306,1553    lpSymbol: 'SUSHI-ETH LP',1554    lpAddresses: {1555      97: '',1556      56: '0x16aFc4F2Ad82986bbE2a4525601F8199AB9c832D',1557    },1558    token: serializedTokens.sushi,1559    quoteToken: serializedTokens.eth,1560  },1561  {1562    pid: 305,1563    lpSymbol: 'DODO-BNB LP',1564    lpAddresses: {1565      97: '',1566      56: '0xA9986Fcbdb23c2E8B11AB40102990a08f8E58f06',1567    },1568    token: serializedTokens.dodo,1569    quoteToken: serializedTokens.wbnb,1570  },1571  {1572    pid: 303,1573    lpSymbol: 'BRY-BNB LP',1574    lpAddresses: {1575      97: '',1576      56: '0x21dD71aB78EDE3033c976948f769D506E4F489eE',1577    },1578    token: serializedTokens.bry,1579    quoteToken: serializedTokens.wbnb,1580  },1581  {1582    pid: 302,1583    lpSymbol: 'ZEE-BNB LP',1584    lpAddresses: {1585      97: '',1586      56: '0x8e799cB0737525CeB8A6C6Ad07f748535fF6377B',1587    },1588    token: serializedTokens.zee,1589    quoteToken: serializedTokens.wbnb,1590  },1591  {1592    pid: 301,1593    lpSymbol: 'SWGb-BNB LP',1594    lpAddresses: {1595      97: '',1596      56: '0x856f9AD94cA8680B899214Bb1EB3d235a3C33Afe',1597    },1598    token: serializedTokens.swgb,1599    quoteToken: serializedTokens.wbnb,1600  },1601  {1602    pid: 300,1603    lpSymbol: 'COMP-ETH LP',1604    lpAddresses: {1605      97: '',1606      56: '0x37908620dEf1491Dd591b5a2d16022A33cDDA415',1607    },1608    token: serializedTokens.comp,1609    quoteToken: serializedTokens.eth,1610  },1611  {1612    pid: 299,1613    lpSymbol: 'SFP-BNB LP',1614    lpAddresses: {1615      97: '',1616      56: '0x942b294e59a8c47a0F7F20DF105B082710F7C305',1617    },1618    token: serializedTokens.sfp,1619    quoteToken: serializedTokens.wbnb,1620  },1621  {1622    pid: 298,1623    lpSymbol: 'LINA-BUSD LP',1624    lpAddresses: {1625      97: '',1626      56: '0xC5768c5371568Cf1114cddD52CAeD163A42626Ed',1627    },1628    token: serializedTokens.lina,1629    quoteToken: serializedTokens.busd,1630  },1631  {1632    pid: 297,1633    lpSymbol: 'LIT-BNB LP',1634    lpAddresses: {1635      97: '',1636      56: '0x1F37d4226d23d09044B8005c127C0517BD7e94fD',1637    },1638    token: serializedTokens.lit,1639    quoteToken: serializedTokens.wbnb,1640  },1641  {1642    pid: 295,1643    lpSymbol: 'BDO-BNB LP',1644    lpAddresses: {1645      97: '',1646      56: '0x4288706624e3dD839b069216eB03B8B9819C10d2',1647    },1648    token: serializedTokens.bdo,1649    quoteToken: serializedTokens.wbnb,1650  },1651  {1652    pid: 294,1653    lpSymbol: 'EGLD-BNB LP',1654    lpAddresses: {1655      97: '',1656      56: '0xcD68856b6E72E99b5eEaAE7d41Bb4A3b484c700D',1657    },1658    token: serializedTokens.egld,1659    quoteToken: serializedTokens.wbnb,1660  },1661  {1662    pid: 293,1663    lpSymbol: 'UST-BUSD LP',1664    lpAddresses: {1665      97: '',1666      56: '0x05faf555522Fa3F93959F86B41A3808666093210',1667    },1668    token: serializedTokens.ust,1669    quoteToken: serializedTokens.busd,1670  },1671  {1672    pid: 292,1673    lpSymbol: 'mAMZN-UST LP',1674    lpAddresses: {1675      97: '',1676      56: '0xC05654C66756eBB82c518598c5f1ea1a0199a563',1677    },1678    token: serializedTokens.mamzn,1679    quoteToken: serializedTokens.ust,1680  },1681  {1682    pid: 291,1683    lpSymbol: 'mGOOGL-UST LP',1684    lpAddresses: {1685      97: '',1686      56: '0xA3BfBbAd526C6B856B1Fdf73F99BCD894761fbf3',1687    },1688    token: serializedTokens.mgoogl,1689    quoteToken: serializedTokens.ust,1690  },1691  {1692    pid: 290,1693    lpSymbol: 'mNFLX-UST LP',1694    lpAddresses: {1695      97: '',1696      56: '0x91417426C3FEaA3Ca795921eB9FdD9715ad92537',1697    },1698    token: serializedTokens.mnflx,1699    quoteToken: serializedTokens.ust,1700  },1701  {1702    pid: 289,1703    lpSymbol: 'mTSLA-UST LP',1704    lpAddresses: {1705      97: '',1706      56: '0xEc6b56a736859AE8ea4bEdA16279Ecd8c60dA7EA',1707    },1708    token: serializedTokens.mtsla,1709    quoteToken: serializedTokens.ust,1710  },1711  {1712    pid: 288,1713    lpSymbol: 'wSOTE-BNB LP',1714    lpAddresses: {1715      97: '',1716      56: '0x7653D2c31440f04d2c6520D482dC5DbD7650f70a',1717    },1718    token: serializedTokens.wsote,1719    quoteToken: serializedTokens.wbnb,1720  },1721  {1722    pid: 287,1723    lpSymbol: 'FRONT-BNB LP',1724    lpAddresses: {1725      97: '',1726      56: '0xC6b668548aA4A56792e8002A920d3159728121D5',1727    },1728    token: serializedTokens.front,1729    quoteToken: serializedTokens.wbnb,1730  },1731  {1732    pid: 286,1733    lpSymbol: 'Helmet-BNB LP',1734    lpAddresses: {1735      97: '',1736      56: '0xC869A9943b702B03770B6A92d2b2d25cf3a3f571',1737    },1738    token: serializedTokens.helmet,1739    quoteToken: serializedTokens.wbnb,1740  },1741  {1742    pid: 285,1743    lpSymbol: 'BTCST-BNB LP',1744    lpAddresses: {1745      97: '',1746      56: '0xB2678C414ebC63c9CC6d1a0fC45f43E249B50fdE',1747    },1748    token: serializedTokens.btcst,1749    quoteToken: serializedTokens.wbnb,1750  },1751  {1752    pid: 284,1753    lpSymbol: 'LTC-BNB LP',1754    lpAddresses: {1755      97: '',1756      56: '0x71b01eBdDD797c8E9E0b003ea2f4FD207fBF46cC',1757    },1758    token: serializedTokens.ltc,1759    quoteToken: serializedTokens.wbnb,1760  },1761  {1762    pid: 283,1763    lpSymbol: 'USDC-BUSD LP',1764    lpAddresses: {1765      97: '',1766      56: '0x2354ef4DF11afacb85a5C7f98B624072ECcddbB1',1767    },1768    token: serializedTokens.usdc,1769    quoteToken: serializedTokens.busd,1770  },1771  {1772    pid: 282,1773    lpSymbol: 'DAI-BUSD LP',1774    lpAddresses: {1775      97: '',1776      56: '0x66FDB2eCCfB58cF098eaa419e5EfDe841368e489',1777    },1778    token: serializedTokens.dai,1779    quoteToken: serializedTokens.busd,1780  },1781  {1782    pid: 281,1783    lpSymbol: 'BSCX-BNB LP',1784    lpAddresses: {1785      97: '',1786      56: '0x47C42b0A056A9C6e9C65b9Ef79020Af518e767A5',1787    },1788    token: serializedTokens.bscx,1789    quoteToken: serializedTokens.wbnb,1790  },1791  {1792    pid: 280,1793    lpSymbol: 'TEN-BNB LP',1794    lpAddresses: {1795      97: '',1796      56: '0x1B415C3ec8095AfBF9d78882b3a6263c4ad141B5',1797    },1798    token: serializedTokens.ten,1799    quoteToken: serializedTokens.wbnb,1800  },1801  {1802    pid: 279,1803    lpSymbol: 'bALBT-BNB LP',1804    lpAddresses: {1805      97: '',1806      56: '0x24EB18bA412701f278B172ef96697c4622b19da6',1807    },1808    token: serializedTokens.balbt,1809    quoteToken: serializedTokens.wbnb,1810  },1811  {1812    pid: 278,1813    lpSymbol: 'REEF-BNB LP',1814    lpAddresses: {1815      97: '',1816      56: '0xd63b5CecB1f40d626307B92706Df357709D05827',1817    },1818    token: serializedTokens.reef,1819    quoteToken: serializedTokens.wbnb,1820  },1821  {1822    pid: 277,1823    lpSymbol: 'Ditto-BNB LP',1824    lpAddresses: {1825      97: '',1826      56: '0x8645148dE4E339964bA480AE3478653b5bc6E211',1827    },1828    token: serializedTokens.ditto,1829    quoteToken: serializedTokens.wbnb,1830  },1831  {1832    pid: 276,1833    lpSymbol: 'VAI-BUSD LP',1834    lpAddresses: {1835      97: '',1836      56: '0x133ee93FE93320e1182923E1a640912eDE17C90C',1837    },1838    token: serializedTokens.vai,1839    quoteToken: serializedTokens.busd,1840  },1841  {1842    pid: 275,1843    lpSymbol: 'BLK-BNB LP',1844    lpAddresses: {1845      97: '',1846      56: '0x356Dd24BfF8e23BdE0430f00ad0C290E33438bD7',1847    },1848    token: serializedTokens.blink,1849    quoteToken: serializedTokens.wbnb,1850  },1851  {1852    pid: 274,1853    lpSymbol: 'UNFI-BNB LP',1854    lpAddresses: {1855      97: '',1856      56: '0x44EA47F2765fd5D26b7eF0222736AD6FD6f61950',1857    },1858    token: serializedTokens.unfi,1859    quoteToken: serializedTokens.wbnb,1860  },1861  {1862    pid: 273,1863    lpSymbol: 'HARD-BNB LP',1864    lpAddresses: {1865      97: '',1866      56: '0x73566ca86248bD12F0979793e4671e99a40299A7',1867    },1868    token: serializedTokens.hard,1869    quoteToken: serializedTokens.wbnb,1870  },1871  {1872    pid: 272,1873    lpSymbol: 'CTK-BNB LP',1874    lpAddresses: {1875      97: '',1876      56: '0x460b4193Ec4C1a17372Aa5FDcd44c520ba658646',1877    },1878    token: serializedTokens.ctk,1879    quoteToken: serializedTokens.wbnb,1880  },1881  {1882    pid: 271,1883    lpSymbol: 'SXP-BNB LP',1884    lpAddresses: {1885      97: '',1886      56: '0xD8E2F8b6Db204c405543953Ef6359912FE3A88d6',1887    },1888    token: serializedTokens.sxp,1889    quoteToken: serializedTokens.wbnb,1890  },1891  {1892    pid: 270,1893    lpSymbol: 'INJ-BNB LP',1894    lpAddresses: {1895      97: '',1896      56: '0x1BdCebcA3b93af70b58C41272AEa2231754B23ca',1897    },1898    token: serializedTokens.inj,1899    quoteToken: serializedTokens.wbnb,1900  },1901  {1902    pid: 269,1903    lpSymbol: 'FIL-BNB LP',1904    lpAddresses: {1905      97: '',1906      56: '0xD9bCcbbbDFd9d67BEb5d2273102CE0762421D1e3',1907    },1908    token: serializedTokens.fil,1909    quoteToken: serializedTokens.wbnb,1910  },1911  {1912    pid: 268,1913    lpSymbol: 'UNI-BNB LP',1914    lpAddresses: {1915      97: '',1916      56: '0x014608E87AF97a054C9a49f81E1473076D51d9a3',1917    },1918    token: serializedTokens.uni,1919    quoteToken: serializedTokens.wbnb,1920  },1921  {1922    pid: 267,1923    lpSymbol: 'YFI-BNB LP',1924    lpAddresses: {1925      97: '',1926      56: '0xCE383277847f8217392eeA98C5a8B4a7D27811b0',1927    },1928    token: serializedTokens.yfi,1929    quoteToken: serializedTokens.wbnb,1930  },1931  {1932    pid: 266,1933    lpSymbol: 'ATOM-BNB LP',1934    lpAddresses: {1935      97: '',1936      56: '0x468b2DC8DC75990eE3E9dc0648965Ad6294E7914',1937    },1938    token: serializedTokens.atom,1939    quoteToken: serializedTokens.wbnb,1940  },1941  {1942    pid: 265,1943    lpSymbol: 'XRP-BNB LP',1944    lpAddresses: {1945      97: '',1946      56: '0x03F18135c44C64ebFdCBad8297fe5bDafdBbdd86',1947    },1948    token: serializedTokens.xrp,1949    quoteToken: serializedTokens.wbnb,1950  },1951  {1952    pid: 264,1953    lpSymbol: 'USDT-BNB LP',1954    lpAddresses: {1955      97: '',1956      56: '0x16b9a82891338f9bA80E2D6970FddA79D1eb0daE',1957    },1958    token: serializedTokens.usdt,1959    quoteToken: serializedTokens.wbnb,1960  },1961  {1962    pid: 263,1963    lpSymbol: 'ALPHA-BNB LP',1964    lpAddresses: {1965      97: '',1966      56: '0xACF47CBEaab5c8A6Ee99263cfE43995f89fB3206',1967    },1968    token: serializedTokens.alpha,1969    quoteToken: serializedTokens.wbnb,1970  },1971  {1972    pid: 262,1973    lpSymbol: 'BTCB-BNB LP',1974    lpAddresses: {1975      97: '',1976      56: '0x61EB789d75A95CAa3fF50ed7E47b96c132fEc082',1977    },1978    token: serializedTokens.btcb,1979    quoteToken: serializedTokens.wbnb,1980  },1981  {1982    pid: 261,1983    lpSymbol: 'ETH-BNB LP',1984    lpAddresses: {1985      97: '',1986      56: '0x74E4716E431f45807DCF19f284c7aA99F18a4fbc',1987    },1988    token: serializedTokens.eth,1989    quoteToken: serializedTokens.wbnb,1990  },1991  {1992    pid: 260,1993    lpSymbol: 'XVS-BNB LP',1994    lpAddresses: {1995      97: '',1996      56: '0x7EB5D86FD78f3852a3e0e064f2842d45a3dB6EA2',1997    },1998    token: serializedTokens.xvs,1999    quoteToken: serializedTokens.wbnb,2000  },2001  {2002    pid: 259,2003    lpSymbol: 'TWT-BNB LP',2004    lpAddresses: {2005      97: '',2006      56: '0x3DcB1787a95D2ea0Eb7d00887704EeBF0D79bb13',2007    },2008    token: serializedTokens.twt,2009    quoteToken: serializedTokens.wbnb,2010  },2011  {2012    pid: 258,2013    lpSymbol: 'USDT-BUSD LP',2014    lpAddresses: {2015      97: '',2016      56: '0x7EFaEf62fDdCCa950418312c6C91Aef321375A00',2017    },2018    token: serializedTokens.usdt,2019    quoteToken: serializedTokens.busd,2020  },2021  {2022    pid: 257,2023    lpSymbol: 'LINK-BNB LP',2024    lpAddresses: {2025      97: '',2026      56: '0x824eb9faDFb377394430d2744fa7C42916DE3eCe',2027    },2028    token: serializedTokens.link,2029    quoteToken: serializedTokens.wbnb,2030  },2031  {2032    pid: 256,2033    lpSymbol: 'EOS-BNB LP',2034    lpAddresses: {2035      97: '',2036      56: '0xB6e34b5C65Eda51bb1BD4ea5F79d385Fb94b9504',2037    },2038    token: serializedTokens.eos,2039    quoteToken: serializedTokens.wbnb,2040  },2041  {2042    pid: 255,2043    lpSymbol: 'DOT-BNB LP',2044    lpAddresses: {2045      97: '',2046      56: '0xDd5bAd8f8b360d76d12FdA230F8BAF42fe0022CF',2047    },2048    token: serializedTokens.dot,2049    quoteToken: serializedTokens.wbnb,2050  },2051  {2052    pid: 254,2053    lpSymbol: 'BAND-BNB LP',2054    lpAddresses: {2055      97: '',2056      56: '0x168B273278F3A8d302De5E879aA30690B7E6c28f',2057    },2058    token: serializedTokens.band,2059    quoteToken: serializedTokens.wbnb,2060  },2061  {2062    pid: 253,2063    lpSymbol: 'ADA-BNB LP',2064    lpAddresses: {2065      97: '',2066      56: '0x28415ff2C35b65B9E5c7de82126b4015ab9d031F',2067    },2068    token: serializedTokens.ada,2069    quoteToken: serializedTokens.wbnb,2070  },2071  /**2072   * V2 farms, set to be removed once unstaked2073   */2074  {2075    pid: 139,2076    lpSymbol: 'CAKE-BNB LP',2077    lpAddresses: {2078      97: '',2079      56: '0xFB7E9FE9D13561AdA7131Fa746942a14F7dd4Cf6',2080    },2081    token: serializedTokens.cake,2082    quoteToken: serializedTokens.wbnb,2083  },2084  {2085    pid: 250,2086    lpSymbol: 'ÏBTC-BTCB LP',2087    lpAddresses: {2088      97: '',2089      56: '0xFD09CDbd6A7dCAd8AC47df4F139443a729264763',2090    },2091    token: serializedTokens.Ïbtc,2092    quoteToken: serializedTokens.btcb,2093  },2094  {2095    pid: 193,2096    lpSymbol: 'SWINGBY-BNB LP',2097    lpAddresses: {2098      97: '',2099      56: '0xA0e3F72BAFcc5d52F0052a39165FD40D3d4d34Fc',2100    },2101    token: serializedTokens.swingby,2102    quoteToken: serializedTokens.wbnb,2103  },2104  {2105    pid: 249,2106    lpSymbol: 'XED-BNB LP',2107    lpAddresses: {2108      97: '',2109      56: '0xBbE20dA99db94Fa1077F1C9A5d256761dAf89C60',2110    },2111    token: serializedTokens.xed,2112    quoteToken: serializedTokens.wbnb,2113  },2114  {2115    pid: 248,2116    lpSymbol: 'HAKKA-BUSD LP',2117    lpAddresses: {2118      97: '',2119      56: '0x9ed1ca73AA8F1ccdc3c3a174E77014f8900411CE',2120    },2121    token: serializedTokens.hakka,2122    quoteToken: serializedTokens.busd,2123  },2124  {2125    pid: 247,2126    lpSymbol: 'CGG-BNB LP',2127    lpAddresses: {2128      97: '',2129      56: '0xB9aA8B0d67DE546aaa82091065a64B7F1C4B1a1F',2130    },2131    token: serializedTokens.cgg,2132    quoteToken: serializedTokens.wbnb,2133  },2134  {2135    pid: 246,2136    lpSymbol: 'SUTER-BNB LP',2137    lpAddresses: {2138      97: '',2139      56: '0x6f41c9226fa89a552009c3AC087BA74b83772C52',2140    },2141    token: serializedTokens.suter,2142    quoteToken: serializedTokens.wbnb,2143  },2144  {2145    pid: 245,2146    lpSymbol: 'bROOBEE-BNB LP',2147    lpAddresses: {2148      97: '',2149      56: '0x5Ac5184eA06dE24ce8ED2133f58b4Aa2CEd2dC3b',2150    },2151    token: serializedTokens.broobee,2152    quoteToken: serializedTokens.wbnb,2153  },2154  {2155    pid: 244,2156    lpSymbol: 'HZN-BNB LP',2157    lpAddresses: {2158      97: '',2159      56: '0xF7fcD7e7B3853bf59bCA9183476F218ED07eD3B0',2160    },2161    token: serializedTokens.hzn,2162    quoteToken: serializedTokens.wbnb,2163  },2164  {2165    pid: 243,2166    lpSymbol: 'ALPA-BNB LP',2167    lpAddresses: {2168      97: '',2169      56: '0xBB41898A3051A6b6D4A36a1c43e906b05799B744',2170    },2171    token: serializedTokens.alpa,2172    quoteToken: serializedTokens.wbnb,2173  },2174  {2175    pid: 242,2176    lpSymbol: 'PERL-BNB LP',2177    lpAddresses: {2178      97: '',2179      56: '0xB1C2e08A992a619DA570425E78828A8508654f4F',2180    },2181    token: serializedTokens.perl,2182    quoteToken: serializedTokens.wbnb,2183  },2184  {2185    pid: 241,2186    lpSymbol: 'TLM-BNB LP',2187    lpAddresses: {2188      97: '',2189      56: '0x25f15Cb3D3B3753702E1d5c4E5f6F0720b197843',2190    },2191    token: serializedTokens.tlm,2192    quoteToken: serializedTokens.wbnb,2193  },2194  {2195    pid: 240,2196    lpSymbol: 'JGN-BNB LP',2197    lpAddresses: {2198      97: '',2199      56: '0x8fD5ca41B2B44e4713590584f97c85f9FF59F00D',2200    },2201    token: serializedTokens.jgn,2202    quoteToken: serializedTokens.wbnb,2203  },2204  {2205    pid: 239,2206    lpSymbol: 'EPS-BNB LP',2207    lpAddresses: {2208      97: '',2209      56: '0x43bc6C256240e657Ad84aFb86825E21B48FEDe78',2210    },2211    token: serializedTokens.eps,2212    quoteToken: serializedTokens.wbnb,2213  },2214  {2215    pid: 238,2216    lpSymbol: 'ARPA-BNB LP',2217    lpAddresses: {2218      97: '',2219      56: '0xD55e5A7b886aE9657b95641c6A7dc5A662EcAbF3',2220    },2221    token: serializedTokens.arpa,2222    quoteToken: serializedTokens.wbnb,2223  },2224  {2225    pid: 237,2226    lpSymbol: 'ITAM-BNB LP',2227    lpAddresses: {2228      97: '',2229      56: '0x3e78b0eD211a49e263fF9b3F0B410932a021E368',2230    },2231    token: serializedTokens.itam,2232    quoteToken: serializedTokens.wbnb,2233  },2234  {2235    pid: 236,2236    lpSymbol: 'BONDLY-BNB LP',2237    lpAddresses: {2238      97: '',2239      56: '0x2205a6424ec4D74a7588450fB71ffd0C4A3Ead65',2240    },2241    token: serializedTokens.bondly,2242    quoteToken: serializedTokens.wbnb,2243  },2244  {2245    pid: 235,2246    lpSymbol: 'TKO-BNB LP',2247    lpAddresses: {2248      97: '',2249      56: '0xc43EdF4a7e89160135C2553E9868446fef9C18DD',2250    },2251    token: serializedTokens.tko,2252    quoteToken: serializedTokens.wbnb,2253  },2254  {2255    pid: 234,2256    lpSymbol: 'APYS-BNB LP',2257    lpAddresses: {2258      97: '',2259      56: '0x7A5523f50a80790cAD011167E20bD21056A2f04A',2260    },2261    token: serializedTokens.apys,2262    quoteToken: serializedTokens.wbnb,2263  },2264  {2265    pid: 233,2266    lpSymbol: 'HOO-BUSD LP',2267    lpAddresses: {2268      97: '',2269      56: '0xc12dAD966505443b5aad7b0C55716c13d285B520',2270    },2271    token: serializedTokens.hoo,2272    quoteToken: serializedTokens.busd,2273  },2274  {2275    pid: 232,2276    lpSymbol: 'ODDZ-BNB LP',2277    lpAddresses: {2278      97: '',2279      56: '0x3B0a7d1030bcDFf45ABB7B03C04110FcCc8095BC',2280    },2281    token: serializedTokens.oddz,2282    quoteToken: serializedTokens.wbnb,2283  },2284  {2285    pid: 231,2286    lpSymbol: 'EASY-BNB LP',2287    lpAddresses: {2288      97: '',2289      56: '0x4b0ec41404a7FF59BaE33C8Dc420804c58B7bF24',2290    },2291    token: serializedTokens.easy,2292    quoteToken: serializedTokens.wbnb,2293  },2294  {2295    pid: 230,2296    lpSymbol: 'NRV-BNB LP',2297    lpAddresses: {2298      97: '',2299      56: '0x25dea33a42c7775F6945fae22A8fFBfAC9fB22CD',2300    },2301    token: serializedTokens.nrv,2302    quoteToken: serializedTokens.wbnb,2303  },2304  {2305    pid: 229,2306    lpSymbol: 'DEGO-BNB LP',2307    lpAddresses: {2308      97: '',2309      56: '0x6108aBd546AF17D8f7aFAe59EBfb4A01132A11Bb',2310    },2311    token: serializedTokens.dego,2312    quoteToken: serializedTokens.wbnb,2313  },2314  {2315    pid: 228,2316    lpSymbol: 'GUM-BNB LP',2317    lpAddresses: {2318      97: '',2319      56: '0xA99d1926a3c15DC4Fb83aB3Fafd63B6C3E87CF22',2320    },2321    token: serializedTokens.gum,2322    quoteToken: serializedTokens.wbnb,2323  },2324  {2325    pid: 227,2326    lpSymbol: 'pBTC-BNB LP',2327    lpAddresses: {2328      97: '',2329      56: '0xaccd6673FFc24cD56B080D71384327f78fD92496',2330    },2331    token: serializedTokens.pbtc,2332    quoteToken: serializedTokens.wbnb,2333  },2334  {2335    pid: 226,2336    lpSymbol: 'DFT-BNB LP',2337    lpAddresses: {2338      97: '',2339      56: '0xe86d075051f20eb8c741007Cb8e262f4519944ee',2340    },2341    token: serializedTokens.dft,2342    quoteToken: serializedTokens.wbnb,2343  },2344  {2345    pid: 225,2346    lpSymbol: 'SWTH-BNB LP',2347    lpAddresses: {2348      97: '',2349      56: '0x4f6dfFc9795d35dc1D92c2a7B23Cb7d6EF190B33',2350    },2351    token: serializedTokens.swth,2352    quoteToken: serializedTokens.wbnb,2353  },2354  {2355    pid: 224,2356    lpSymbol: 'LIEN-BNB LP',2357    lpAddresses: {2358      97: '',2359      56: '0xbe7BDE4aD1c136038Dc9f57ef94d1d16e6F9CbF7',2360    },2361    token: serializedTokens.lien,2362    quoteToken: serializedTokens.wbnb,2363  },2364  {2365    pid: 223,2366    lpSymbol: 'ZIL-BNB LP',2367    lpAddresses: {2368      97: '',2369      56: '0xcBDf499db66Df19A66aB48F16C790FF9eE872add',2370    },2371    token: serializedTokens.zil,2372    quoteToken: serializedTokens.wbnb,2373  },2374  {2375    pid: 222,2376    lpSymbol: 'pCWS-BNB LP',2377    lpAddresses: {2378      97: '',2379      56: '0xe3D941e74141311436F82523817EBaa26462967d',2380    },2381    token: serializedTokens.pcws,2382    quoteToken: serializedTokens.wbnb,2383  },2384  {2385    pid: 221,2386    lpSymbol: 'bBADGER-BTCB LP',2387    lpAddresses: {2388      97: '',2389      56: '0x87Ae7b5c43D4e160cDB9427a78BA87B9503ee37b',2390    },2391    token: serializedTokens.bbadger,2392    quoteToken: serializedTokens.btcb,2393  },2394  {2395    pid: 220,2396    lpSymbol: 'bDIGG-BTCB LP',2397    lpAddresses: {2398      97: '',2399      56: '0xfbfa92e037e37F946c0105902640914E3aCe6752',2400    },2401    token: serializedTokens.bdigg,2402    quoteToken: serializedTokens.btcb,2403  },2404  {2405    pid: 219,2406    lpSymbol: 'LTO-BNB LP',2407    lpAddresses: {2408      97: '',2409      56: '0xF62e92292772F24EAa6B6B8a105c9FC7B8F31EC5',2410    },2411    token: serializedTokens.lto,2412    quoteToken: serializedTokens.wbnb,2413  },2414  {2415    pid: 218,2416    lpSymbol: 'MIR-UST LP',2417    lpAddresses: {2418      97: '',2419      56: '0x905186a70ba3Eb50090d1d0f6914F5460B4DdB40',2420    },2421    token: serializedTokens.mir,2422    quoteToken: serializedTokens.ust,2423  },2424  {2425    pid: 217,2426    lpSymbol: 'TRADE-BNB LP',2427    lpAddresses: {2428      97: '',2429      56: '0x52fCfB6d91Bcf1F1f6d375D0f6c303688b0E8550',2430    },2431    token: serializedTokens.trade,2432    quoteToken: serializedTokens.wbnb,2433  },2434  {2435    pid: 216,2436    lpSymbol: 'DUSK-BNB LP',2437    lpAddresses: {2438      97: '',2439      56: '0x69773f622cE228Ca7dEd42D8C34Eba8582e85dcA',2440    },2441    token: serializedTokens.dusk,2442    quoteToken: serializedTokens.wbnb,2443  },2444  {2445    pid: 215,2446    lpSymbol: 'BIFI-BNB LP',2447    lpAddresses: {2448      97: '',2449      56: '0x01956F08A55e4FF9775bc01aF6ACb09144564837',2450    },2451    token: serializedTokens.bifi,2452    quoteToken: serializedTokens.wbnb,2453  },2454  {2455    pid: 214,2456    lpSymbol: 'TXL-BUSD LP',2457    lpAddresses: {2458      97: '',2459      56: '0x8Ba7eB4056338fd7271E1b7431C8ca3827eF907c',2460    },2461    token: serializedTokens.txl,2462    quoteToken: serializedTokens.busd,2463  },2464  {2465    pid: 213,2466    lpSymbol: 'COS-BNB LP',2467    lpAddresses: {2468      97: '',2469      56: '0xAfB2e729A24629aBdE8E55CEB0e1f899bEe0f70f',2470    },2471    token: serializedTokens.cos,2472    quoteToken: serializedTokens.wbnb,2473  },2474  {2475    pid: 212,2476    lpSymbol: 'BUNNY-BNB LP',2477    lpAddresses: {2478      97: '',2479      56: '0x283FA8d459Da6e3165B2faF7FA0DD0137503DECf',2480    },2481    token: serializedTokens.bunny,2482    quoteToken: serializedTokens.wbnb,2483  },2484  {2485    pid: 211,2486    lpSymbol: 'ALICE-BNB LP',2487    lpAddresses: {2488      97: '',2489      56: '0x9e1BB5033d47BF8F16FC017CEC0959De7FF00833',2490    },2491    token: serializedTokens.alice,2492    quoteToken: serializedTokens.wbnb,2493  },2494  {2495    pid: 210,2496    lpSymbol: 'FOR-BUSD LP',2497    lpAddresses: {2498      97: '',2499      56: '0xaBB817B07663521Cf64B006EC9D0FF185b65cfE5',2500    },2501    token: serializedTokens.for,2502    quoteToken: serializedTokens.busd,2503  },2504  {2505    pid: 209,2506    lpSymbol: 'BUX-BNB LP',2507    lpAddresses: {2508      97: '',2509      56: '0x7aA4eb5c3bF33e3AD41A47e26b3Bd9b902984610',2510    },2511    token: serializedTokens.bux,2512    quoteToken: serializedTokens.wbnb,2513  },2514  {2515    pid: 208,2516    lpSymbol: 'NULS-BUSD LP',2517    lpAddresses: {2518      97: '',2519      56: '0xaB46737CAAFbB99999f8b91E4D3C6D4D28E10e05',2520    },2521    token: serializedTokens.nuls,2522    quoteToken: serializedTokens.busd,2523  },2524  {2525    pid: 207,2526    lpSymbol: 'BELT-BNB LP',2527    lpAddresses: {2528      97: '',2529      56: '0x446ff2C0F5350bF2dadD0e0F1AaAA573b362CA6B',2530    },2531    token: serializedTokens.belt,2532    quoteToken: serializedTokens.wbnb,2533  },2534  {2535    pid: 206,2536    lpSymbol: 'RAMP-BUSD LP',2537    lpAddresses: {2538      97: '',2539      56: '0x6ED589e69D1927AC45054cBb6E57877879384d6F',2540    },2541    token: serializedTokens.ramp,2542    quoteToken: serializedTokens.busd,2543  },2544  {2545    pid: 205,2546    lpSymbol: 'BFI-BNB LP',2547    lpAddresses: {2548      97: '',2549      56: '0xFFA2357f1E6f48d74b1c18c363c3Fe58A032405a',2550    },2551    token: serializedTokens.bfi,2552    quoteToken: serializedTokens.wbnb,2553  },2554  {2555    pid: 204,2556    lpSymbol: 'DEXE-BUSD LP',2557    lpAddresses: {2558      97: '',2559      56: '0x534b0b0700c0cfF9785852707f07f60E7C0bc07E',2560    },2561    token: serializedTokens.dexe,2562    quoteToken: serializedTokens.busd,2563  },2564  {2565    pid: 203,2566    lpSymbol: 'BEL-BNB LP',2567    lpAddresses: {2568      97: '',2569      56: '0x2013265224E3cB6A53C67130F9Fe53Ae36CFcfdd',2570    },2571    token: serializedTokens.bel,2572    quoteToken: serializedTokens.wbnb,2573  },2574  {2575    pid: 202,2576    lpSymbol: 'TPT-BUSD LP',2577    lpAddresses: {2578      97: '',2579      56: '0xC14c2dd21d6aEA3C2068A1F8e58d41D3c28F9288',2580    },2581    token: serializedTokens.tpt,2582    quoteToken: serializedTokens.busd,2583  },2584  {2585    pid: 201,2586    lpSymbol: 'WATCH-BNB LP',2587    lpAddresses: {2588      97: '',2589      56: '0xD5fBfFf5faB9d29f614d9bd50AF9b1356C53049C',2590    },2591    token: serializedTokens.watch,2592    quoteToken: serializedTokens.wbnb,2593  },2594  {2595    pid: 200,2596    lpSymbol: 'xMARK-BUSD LP',2597    lpAddresses: {2598      97: '',2599      56: '0x601aE41C5a65b2089a6af2CcfaF984896a1f52AD',2600    },2601    token: serializedTokens.xmark,2602    quoteToken: serializedTokens.busd,2603  },2604  {2605    pid: 199,2606    lpSymbol: 'bMXX-BNB LP',2607    lpAddresses: {2608      97: '',2609      56: '0x037d38c7DfF5732DAA5f8C05478Eb75cdf24f42B',2610    },2611    token: serializedTokens.bmxx,2612    quoteToken: serializedTokens.wbnb,2613  },2614  {2615    pid: 198,2616    lpSymbol: 'IOTX-BUSD LP',2617    lpAddresses: {2618      97: '',2619      56: '0x8503462D0d4D3ce73e857bCC7D0Ef1125B0d66fF',2620    },2621    token: serializedTokens.iotx,2622    quoteToken: serializedTokens.busd,2623  },2624  {2625    pid: 197,2626    lpSymbol: 'BOR-BNB LP',2627    lpAddresses: {2628      97: '',2629      56: '0xE0243Ce3b50bd551168cE6964F178507d0a1acD5',2630    },2631    token: serializedTokens.bor,2632    quoteToken: serializedTokens.wbnb,2633  },2634  {2635    pid: 196,2636    lpSymbol: 'bOPEN-BNB LP',2637    lpAddresses: {2638      97: '',2639      56: '0xD2FcF98EaeD2c08e9BcA854802C07b93D27913aC',2640    },2641    token: serializedTokens.bopen,2642    quoteToken: serializedTokens.wbnb,2643  },2644  {2645    pid: 195,2646    lpSymbol: 'SUSHI-ETH LP',2647    lpAddresses: {2648      97: '',2649      56: '0x3BECbb09F622187B544C0892EeDeB58C004117e1',2650    },2651    token: serializedTokens.sushi,2652    quoteToken: serializedTokens.eth,2653  },2654  {2655    pid: 194,2656    lpSymbol: 'DODO-BNB LP',2657    lpAddresses: {2658      97: '',2659      56: '0x220e34306a93002fB7947C9Fc633d6f538bd5032',2660    },2661    token: serializedTokens.dodo,2662    quoteToken: serializedTokens.wbnb,2663  },2664  {2665    pid: 192,2666    lpSymbol: 'BRY-BNB LP',2667    lpAddresses: {2668      97: '',2669      56: '0xC3E303647cbD43EC22989275e7ecFA8952A6BA02',2670    },2671    token: serializedTokens.bry,2672    quoteToken: serializedTokens.wbnb,2673  },2674  {2675    pid: 191,2676    lpSymbol: 'ZEE-BNB LP',2677    lpAddresses: {2678      97: '',2679      56: '0x6d1299B158bd13F4B50e951aaBf2Aa501FD87E52',2680    },2681    token: serializedTokens.zee,2682    quoteToken: serializedTokens.wbnb,2683  },2684  {2685    pid: 190,2686    lpSymbol: 'SWGb-BNB LP',2687    lpAddresses: {2688      97: '',2689      56: '0xd2A5008d555371e97F30B6dD71597b4F1eDB0f20',2690    },2691    token: serializedTokens.swgb,2692    quoteToken: serializedTokens.wbnb,2693  },2694  {2695    pid: 189,2696    lpSymbol: 'COMP-ETH LP',2697    lpAddresses: {2698      97: '',2699      56: '0x6A55a9176f11c1118f01CBaf6c4033a5c1B22a81',2700    },2701    token: serializedTokens.comp,2702    quoteToken: serializedTokens.eth,2703  },2704  {2705    pid: 188,2706    lpSymbol: 'SFP-BNB LP',2707    lpAddresses: {2708      97: '',2709      56: '0x01744B868fe98dB669EBf4e9CA557462BAA6097c',2710    },2711    token: serializedTokens.sfp,2712    quoteToken: serializedTokens.wbnb,2713  },2714  {2715    pid: 187,2716    lpSymbol: 'LINA-BUSD LP',2717    lpAddresses: {2718      97: '',2719      56: '0xb923A2Beeb0834528D20b8973A2c69088571aA9E',2720    },2721    token: serializedTokens.lina,2722    quoteToken: serializedTokens.busd,2723  },2724  {2725    pid: 186,2726    lpSymbol: 'LIT-BNB LP',2727    lpAddresses: {2728      97: '',2729      56: '0x41D69Beda3AFF2FFE48E715e2f4248Cb272cFf30',2730    },2731    token: serializedTokens.lit,2732    quoteToken: serializedTokens.wbnb,2733  },2734  {2735    pid: 185,2736    lpSymbol: 'HGET-BNB LP',2737    lpAddresses: {2738      97: '',2739      56: '0x239aD1874114B2235485e34b14c48dB73CCA3ffb',2740    },2741    token: serializedTokens.hget,2742    quoteToken: serializedTokens.wbnb,2743  },2744  {2745    pid: 184,2746    lpSymbol: 'BDO-BNB LP',2747    lpAddresses: {2748      97: '',2749      56: '0xF7045D7dE334a3F6c1254f98167b2af130eEA8E6',2750    },2751    token: serializedTokens.bdo,2752    quoteToken: serializedTokens.wbnb,2753  },2754  {2755    pid: 183,2756    lpSymbol: 'EGLD-BNB LP',2757    lpAddresses: {2758      97: '',2759      56: '0xB4670bBEce2D02c4D30786D173985A984686042C',2760    },2761    token: serializedTokens.egld,2762    quoteToken: serializedTokens.wbnb,2763  },2764  {2765    pid: 182,2766    lpSymbol: 'UST-BUSD LP',2767    lpAddresses: {2768      97: '',2769      56: '0x1719606031F1E0B3CCaCa11A2CF550Ef8feBEB0F',2770    },2771    token: serializedTokens.ust,2772    quoteToken: serializedTokens.busd,2773  },2774  {2775    pid: 181,2776    lpSymbol: 'mAMZN-UST LP',2777    lpAddresses: {2778      97: '',2779      56: '0x2c065E42B464ef38480778B0624A207A09042481',2780    },2781    token: serializedTokens.mamzn,2782    quoteToken: serializedTokens.ust,2783  },2784  {2785    pid: 180,2786    lpSymbol: 'mGOOGL-UST LP',2787    lpAddresses: {2788      97: '',2789      56: '0x74d8Dbac5053d31E904a821A3B4C411Bd4dd2307',2790    },2791    token: serializedTokens.mgoogl,2792    quoteToken: serializedTokens.ust,2793  },2794  {2795    pid: 179,2796    lpSymbol: 'mNFLX-UST LP',2797    lpAddresses: {2798      97: '',2799      56: '0xe1d76359FE4Eb7f0dAd1D719256c22890864718E',2800    },2801    token: serializedTokens.mnflx,2802    quoteToken: serializedTokens.ust,2803  },2804  {2805    pid: 178,2806    lpSymbol: 'mTSLA-UST LP',2807    lpAddresses: {2808      97: '',2809      56: '0x36285DDD149949f366b5aFb3f41Cea71d35B8c9e',2810    },2811    token: serializedTokens.mtsla,2812    quoteToken: serializedTokens.ust,2813  },2814  {2815    pid: 177,2816    lpSymbol: 'wSOTE-BNB LP',2817    lpAddresses: {2818      97: '',2819      56: '0xe5909de3822d589c220Fb4FA1660A0Fd251Fa87d',2820    },2821    token: serializedTokens.wsote,2822    quoteToken: serializedTokens.wbnb,2823  },2824  {2825    pid: 176,2826    lpSymbol: 'FRONT-BNB LP',2827    lpAddresses: {2828      97: '',2829      56: '0x84Df48B3e900C79539F6c523D6F528802BeAa713',2830    },2831    token: serializedTokens.front,2832    quoteToken: serializedTokens.wbnb,2833  },2834  {2835    pid: 175,2836    lpSymbol: 'Helmet-BNB LP',2837    lpAddresses: {2838      97: '',2839      56: '0xD09648792d7e77523ae311Fa5A8F38E4684A5f15',2840    },2841    token: serializedTokens.helmet,2842    quoteToken: serializedTokens.wbnb,2843  },2844  {2845    pid: 174,2846    lpSymbol: 'BTCST-BNB LP',2847    lpAddresses: {2848      97: '',2849      56: '0xf967845A6D30C44b555C49C50530076dF5D7fd75',2850    },2851    token: serializedTokens.btcst,2852    quoteToken: serializedTokens.wbnb,2853  },2854  {2855    pid: 173,2856    lpSymbol: 'LTC-BNB LP',2857    lpAddresses: {2858      97: '',2859      56: '0x286E8d71722c585c9A82876B1B2FB4dEe9fc536E',2860    },2861    token: serializedTokens.ltc,2862    quoteToken: serializedTokens.wbnb,2863  },2864  {2865    pid: 172,2866    lpSymbol: 'USDC-BUSD LP',2867    lpAddresses: {2868      97: '',2869      56: '0x05FC2ac8a4FA697501087C916c87b8a5dc4f7b46',2870    },2871    token: serializedTokens.usdc,2872    quoteToken: serializedTokens.busd,2873  },2874  {2875    pid: 171,2876    lpSymbol: 'DAI-BUSD LP',2877    lpAddresses: {2878      97: '',2879      56: '0xdaFE10aA3AB6758596aDAC70f6873C49F5a9bf86',2880    },2881    token: serializedTokens.dai,2882    quoteToken: serializedTokens.busd,2883  },2884  {2885    pid: 170,2886    lpSymbol: 'BSCX-BNB LP',2887    lpAddresses: {2888      97: '',2889      56: '0x5fE5394BBc394345737b8e6e48be2804E89eC0eB',2890    },2891    token: serializedTokens.bscx,2892    quoteToken: serializedTokens.wbnb,2893  },2894  {2895    pid: 169,2896    lpSymbol: 'TEN-BNB LP',2897    lpAddresses: {2898      97: '',2899      56: '0x003C4d60de42eAD30739dD204BD153fE69E20Fb2',2900    },2901    token: serializedTokens.ten,2902    quoteToken: serializedTokens.wbnb,2903  },2904  {2905    pid: 168,2906    lpSymbol: 'bALBT-BNB LP',2907    lpAddresses: {2908      97: '',2909      56: '0x1B8ab50d894CfE793B44057F681A950E87Bd0331',2910    },2911    token: serializedTokens.balbt,2912    quoteToken: serializedTokens.wbnb,2913  },2914  {2915    pid: 167,2916    lpSymbol: 'REEF-BNB LP',2917    lpAddresses: {2918      97: '',2919      56: '0x074ed2De503580887073A0F788E035C0fbe13F48',2920    },2921    token: serializedTokens.reef,2922    quoteToken: serializedTokens.wbnb,2923  },2924  {2925    pid: 166,2926    lpSymbol: 'Ditto-BNB LP',2927    lpAddresses: {2928      97: '',2929      56: '0xb33D432eACe45DF62F0145228B550b214DCaA6D4',2930    },2931    token: serializedTokens.ditto,2932    quoteToken: serializedTokens.wbnb,2933  },2934  {2935    pid: 165,2936    lpSymbol: 'VAI-BUSD LP',2937    lpAddresses: {2938      97: '',2939      56: '0x9d95063661fa34B67E0Be0cc71Cf92fc6126aF37',2940    },2941    token: serializedTokens.vai,2942    quoteToken: serializedTokens.busd,2943  },2944  {2945    pid: 164,2946    lpSymbol: 'BLK-BNB LP',2947    lpAddresses: {2948      97: '',2949      56: '0xdA5a79fFe24739876a52AEF0d419aBB3b2517922',2950    },2951    token: serializedTokens.blink,2952    quoteToken: serializedTokens.wbnb,2953  },2954  {2955    pid: 163,2956    lpSymbol: 'UNFI-BNB LP',2957    lpAddresses: {2958      97: '',2959      56: '0x029f944CD3afa7c229122b19c706d8B7c01e062a',2960    },2961    token: serializedTokens.unfi,2962    quoteToken: serializedTokens.wbnb,2963  },2964  {2965    pid: 162,2966    lpSymbol: 'HARD-BNB LP',2967    lpAddresses: {2968      97: '',2969      56: '0x158e337e7Dcfcd8FC512840208BB522d122bB19d',2970    },2971    token: serializedTokens.hard,2972    quoteToken: serializedTokens.wbnb,2973  },2974  {2975    pid: 161,2976    lpSymbol: 'CTK-BNB LP',2977    lpAddresses: {2978      97: '',2979      56: '0xcbb3fCE7134aF9ef2f3DCe0EAE96db68961b1337',2980    },2981    token: serializedTokens.ctk,2982    quoteToken: serializedTokens.wbnb,2983  },2984  {2985    pid: 160,2986    lpSymbol: 'SXP-BNB LP',2987    lpAddresses: {2988      97: '',2989      56: '0x6294D8518b7321dc22E32AA907A89B1DAfc1aDbB',2990    },2991    token: serializedTokens.sxp,2992    quoteToken: serializedTokens.wbnb,2993  },2994  {2995    pid: 159,2996    lpSymbol: 'INJ-BNB LP',2997    lpAddresses: {2998      97: '',2999      56: '0x0444712EE8DFF8913B2b44CB1D2a0273b4CDaBe9',3000    },3001    token: serializedTokens.inj,3002    quoteToken: serializedTokens.wbnb,3003  },3004  {3005    pid: 158,3006    lpSymbol: 'FIL-BNB LP',3007    lpAddresses: {3008      97: '',3009      56: '0xD027c0B352578b1Cf57f472107591CaE5fa27Eb1',3010    },3011    token: serializedTokens.fil,3012    quoteToken: serializedTokens.wbnb,3013  },3014  {3015    pid: 157,3016    lpSymbol: 'UNI-BNB LP',3017    lpAddresses: {3018      97: '',3019      56: '0x2937202a53C82E36bC8beCFBe79795bedF284804',3020    },3021    token: serializedTokens.uni,3022    quoteToken: serializedTokens.wbnb,3023  },3024  {3025    pid: 156,3026    lpSymbol: 'YFI-BNB LP',3027    lpAddresses: {3028      97: '',3029      56: '0xfffad7374c894E65b498BDBD489a9a5324A59F60',3030    },3031    token: serializedTokens.yfi,3032    quoteToken: serializedTokens.wbnb,3033  },3034  {3035    pid: 155,3036    lpSymbol: 'YFII-BNB LP',3037    lpAddresses: {3038      97: '',3039      56: '0x237E7016Ff50D3B704A7e07571aE08628909A116',3040    },3041    token: serializedTokens.yfii,3042    quoteToken: serializedTokens.wbnb,3043  },3044  {3045    pid: 154,3046    lpSymbol: 'ATOM-BNB LP',3047    lpAddresses: {3048      97: '',3049      56: '0x7DD05eF533b1eBCE7815c90678D4B7344E32b8c9',3050    },3051    token: serializedTokens.atom,3052    quoteToken: serializedTokens.wbnb,3053  },3054  {3055    pid: 153,3056    lpSymbol: 'XRP-BNB LP',3057    lpAddresses: {3058      97: '',3059      56: '0x0F640E3ec77415Fd810D18B3ac000cD8a172E22f',3060    },3061    token: serializedTokens.xrp,3062    quoteToken: serializedTokens.wbnb,3063  },3064  {3065    pid: 152,3066    lpSymbol: 'USDT-BNB LP',3067    lpAddresses: {3068      97: '',3069      56: '0x4160910ca32eAD83B6d4b32107974397D2579c2d',3070    },3071    token: serializedTokens.usdt,3072    quoteToken: serializedTokens.wbnb,3073  },3074  {3075    pid: 151,3076    lpSymbol: 'ALPHA-BNB LP',3077    lpAddresses: {3078      97: '',3079      56: '0x0edAA38Bd263E83fAECbC8476822800F30eE6028',3080    },3081    token: serializedTokens.alpha,3082    quoteToken: serializedTokens.wbnb,3083  },3084  {3085    pid: 150,3086    lpSymbol: 'BTCB-BNB LP',3087    lpAddresses: {3088      97: '',3089      56: '0x356b7d0d3c54F22C82B7a670C6Ba9E2381b0624c',3090    },3091    token: serializedTokens.btcb,3092    quoteToken: serializedTokens.wbnb,3093  },3094  {3095    pid: 149,3096    lpSymbol: 'ETH-BNB LP',3097    lpAddresses: {3098      97: '',3099      56: '0x4D7078a6B348766E7a16cD6e6fCb3064721bc6a6',3100    },3101    token: serializedTokens.eth,3102    quoteToken: serializedTokens.wbnb,3103  },3104  {3105    pid: 148,3106    lpSymbol: 'XVS-BNB LP',3107    lpAddresses: {3108      97: '',3109      56: '0x77B5dB64fD4Cf5B699855420fF2608B2EA6708B3',3110    },3111    token: serializedTokens.xvs,3112    quoteToken: serializedTokens.wbnb,3113  },3114  {3115    pid: 147,3116    lpSymbol: 'TWT-BNB LP',3117    lpAddresses: {3118      97: '',3119      56: '0x34910518Faf5bfd3a4D15ccFE104B63f06ee3d85',3120    },3121    token: serializedTokens.twt,3122    quoteToken: serializedTokens.wbnb,3123  },3124  {3125    pid: 146,3126    lpSymbol: 'USDT-BUSD LP',3127    lpAddresses: {3128      97: '',3129      56: '0x28b81C6b155fd9152AE4A09c4eeB7E7F1C114FaC',3130    },3131    token: serializedTokens.usdt,3132    quoteToken: serializedTokens.busd,3133  },3134  {3135    pid: 145,3136    lpSymbol: 'LINK-BNB LP',3137    lpAddresses: {3138      97: '',3139      56: '0x380941fFd7b7cbf4AEbBfa8A26aa80c2f6570909',3140    },3141    token: serializedTokens.link,3142    quoteToken: serializedTokens.wbnb,3143  },3144  {3145    pid: 144,3146    lpSymbol: 'EOS-BNB LP',3147    lpAddresses: {3148      97: '',3149      56: '0x082A80b3a55BD3B320a16678784186a979882b21',3150    },3151    token: serializedTokens.eos,3152    quoteToken: serializedTokens.wbnb,3153  },3154  {3155    pid: 143,3156    lpSymbol: 'DOT-BNB LP',3157    lpAddresses: {3158      97: '',3159      56: '0x3aFfc4dd05286ed6B7206Fc85219d222130e35a9',3160    },3161    token: serializedTokens.dot,3162    quoteToken: serializedTokens.wbnb,3163  },3164  {3165    pid: 142,3166    lpSymbol: 'BAND-BNB LP',3167    lpAddresses: {3168      97: '',3169      56: '0x473390697036E7611a670575eA9141583471fF47',3170    },3171    token: serializedTokens.band,3172    quoteToken: serializedTokens.wbnb,3173  },3174  {3175    pid: 141,3176    lpSymbol: 'ADA-BNB LP',3177    lpAddresses: {3178      97: '',3179      56: '0xec0C5719cC100DfB6c6F371bb48d3D079ab6A6D2',3180    },3181    token: serializedTokens.ada,3182    quoteToken: serializedTokens.wbnb,3183  },3184  {3185    pid: 140,3186    lpSymbol: 'BUSD-BNB LP',3187    lpAddresses: {3188      97: '',3189      56: '0x9bdEdb0c876fC0Da79D945DF28942b898Af89Fc7',3190    },3191    token: serializedTokens.busd,3192    quoteToken: serializedTokens.wbnb,3193  },3194  /**3195   * All farms below here are from v1 and are to be set to 0x3196   */3197  {3198    pid: 1,3199    lpSymbol: 'CAKE-BNB LP',3200    lpAddresses: {3201      97: '0x3ed8936cAFDF85cfDBa29Fbe5940A5b0524824F4',3202      56: '0xA527a61703D82139F8a06Bc30097cC9CAA2df5A6',3203    },3204    token: serializedTokens.cake,3205    quoteToken: serializedTokens.wbnb,3206  },3207  {3208    pid: 136,3209    lpSymbol: 'ÏBTC-BTCB LP',3210    lpAddresses: {3211      97: '',3212      56: '0x2d4e52c48fd18ee06d3959e82ab0f773c41b9277',3213    },3214    token: serializedTokens.Ïbtc,3215    quoteToken: serializedTokens.btcb,3216  },3217  {3218    pid: 76,3219    lpSymbol: 'SWINGBY-BNB LP',3220    lpAddresses: {3221      97: '',3222      56: '0x4576C456AF93a37a096235e5d83f812AC9aeD027',3223    },3224    token: serializedTokens.swingby,3225    quoteToken: serializedTokens.wbnb,3226  },3227  {3228    pid: 135,3229    lpSymbol: 'XED-BNB LP',3230    lpAddresses: {3231      97: '',3232      56: '0x718d3baa161e1a38758bb0f1fe751e401f431ac4',3233    },3234    token: serializedTokens.xed,3235    quoteToken: serializedTokens.wbnb,3236  },3237  {3238    pid: 134,3239    lpSymbol: 'HAKKA-BUSD LP',3240    lpAddresses: {3241      97: '',3242      56: '0x56bc8de6e90a8454cb2614b33e750d960aecdf12',3243    },3244    token: serializedTokens.hakka,3245    quoteToken: serializedTokens.busd,3246  },3247  {3248    pid: 133,3249    lpSymbol: 'CGG-BNB LP',3250    lpAddresses: {3251      97: '',3252      56: '0x484c60f6202c8043DCA0236bB3101ada7ec50AD4',3253    },3254    token: serializedTokens.cgg,3255    quoteToken: serializedTokens.wbnb,3256  },3257  {3258    pid: 132,3259    lpSymbol: 'SUTER-BNB LP',3260    lpAddresses: {3261      97: '',3262      56: '0x6Ff75C20656A0E4745E7c114972D361F483AFa5f',3263    },3264    token: serializedTokens.suter,3265    quoteToken: serializedTokens.wbnb,3266  },3267  {3268    pid: 131,3269    lpSymbol: 'bROOBEE-BNB LP',3270    lpAddresses: {3271      97: '',3272      56: '0x9e6f9f3382f9edc683203b528222c554c92382c2',3273    },3274    token: serializedTokens.broobee,3275    quoteToken: serializedTokens.wbnb,3276  },3277  {3278    pid: 130,3279    lpSymbol: 'HZN-BNB LP',3280    lpAddresses: {3281      97: '',3282      56: '0xee4ca18e91012bf87fefde3dd6723a8834347a4d',3283    },3284    token: serializedTokens.hzn,3285    quoteToken: serializedTokens.wbnb,3286  },3287  {3288    pid: 129,3289    lpSymbol: 'ALPA-BNB LP',3290    lpAddresses: {3291      97: '',3292      56: '0x837cd42282801e340f1f17aadf3166fee99fb07c',3293    },3294    token: serializedTokens.alpa,3295    quoteToken: serializedTokens.wbnb,3296  },3297  {3298    pid: 128,3299    lpSymbol: 'PERL-BNB LP',3300    lpAddresses: {3301      97: '',3302      56: '0x044e9985c14a547d478b1e3d4a4e562e69c8f936',3303    },3304    token: serializedTokens.perl,3305    quoteToken: serializedTokens.wbnb,3306  },3307  {3308    pid: 127,3309    lpSymbol: 'TLM-BNB LP',3310    lpAddresses: {3311      97: '',3312      56: '0x34e821e785A93261B697eBD2797988B3AA78ca33',3313    },3314    token: serializedTokens.tlm,3315    quoteToken: serializedTokens.wbnb,3316  },3317  {3318    pid: 125,3319    lpSymbol: 'JGN-BNB LP',3320    lpAddresses: {3321      97: '',3322      56: '0x890479844484D67e34B99e1BBc1468231b254c08',3323    },3324    token: serializedTokens.jgn,3325    quoteToken: serializedTokens.wbnb,3326  },3327  {3328    pid: 124,3329    lpSymbol: 'EPS-BNB LP',3330    lpAddresses: {3331      97: '',3332      56: '0xf9045866e7b372def1eff3712ce55fac1a98daf0',3333    },3334    token: serializedTokens.eps,3335    quoteToken: serializedTokens.wbnb,3336  },3337  {3338    pid: 123,3339    lpSymbol: 'ARPA-BNB LP',3340    lpAddresses: {3341      97: '',3342      56: '0xfb29fca952b478ddcb8a43f57176161e498225b1',3343    },3344    token: serializedTokens.arpa,3345    quoteToken: serializedTokens.wbnb,3346  },3347  {3348    pid: 122,3349    lpSymbol: 'ITAM-BNB LP',3350    lpAddresses: {3351      97: '',3352      56: '0xCdC53345192D0e31eEAD03D7E9e008Ee659FAEbE',3353    },3354    token: serializedTokens.itam,3355    quoteToken: serializedTokens.wbnb,3356  },3357  {3358    pid: 121,3359    lpSymbol: 'BONDLY-BNB LP',3360    lpAddresses: {3361      97: '',3362      56: '0x67581bfb4fc13bb73c71489b504e9b5354769063',3363    },3364    token: serializedTokens.bondly,3365    quoteToken: serializedTokens.wbnb,3366  },3367  {3368    pid: 120,3369    lpSymbol: 'TKO-BNB LP',3370    lpAddresses: {3371      97: '',3372      56: '0x496a8b716A3A3410B16e71E3c906968CE4488e52',3373    },3374    token: serializedTokens.tko,3375    quoteToken: serializedTokens.wbnb,3376  },3377  {3378    pid: 119,3379    lpSymbol: 'APYS-BNB LP',3380    lpAddresses: {3381      97: '',3382      56: '0xE5783Cc9dFb3E7e474B81B07369a008e80F1cEdb',3383    },3384    token: serializedTokens.apys,3385    quoteToken: serializedTokens.wbnb,3386  },3387  {3388    pid: 118,3389    lpSymbol: 'HOO-BUSD LP',3390    lpAddresses: {3391      97: '',3392      56: '0x3c9e55edbd937ae0ad8c084a1a8302110612a371',3393    },3394    token: serializedTokens.hoo,3395    quoteToken: serializedTokens.busd,3396  },3397  {3398    pid: 117,3399    lpSymbol: 'ODDZ-BNB LP',3400    lpAddresses: {3401      97: '',3402      56: '0x61376b56ff33c618b115131712a4138f98810a6a',3403    },3404    token: serializedTokens.oddz,3405    quoteToken: serializedTokens.wbnb,3406  },3407  {3408    pid: 116,3409    lpSymbol: 'EASY-BNB LP',3410    lpAddresses: {3411      97: '',3412      56: '0xbd1ec00b0d1cca9d5b28fbe0bb7d664238af2ffa',3413    },3414    token: serializedTokens.easy,3415    quoteToken: serializedTokens.wbnb,3416  },3417  {3418    pid: 115,3419    lpSymbol: 'NRV-BNB LP',3420    lpAddresses: {3421      97: '',3422      56: '0x5a805994a2e30ac710e7376ccc0211285bd4dd92',3423    },3424    token: serializedTokens.nrv,3425    quoteToken: serializedTokens.wbnb,3426  },3427  {3428    pid: 114,3429    lpSymbol: 'DEGO-BNB LP',3430    lpAddresses: {3431      97: '',3432      56: '0x17F0b998B81cE75074a7CDAdAe6D63Da3cb23572',3433    },3434    token: serializedTokens.dego,3435    quoteToken: serializedTokens.wbnb,3436  },3437  {3438    pid: 113,3439    lpSymbol: 'GUM-BNB LP',3440    lpAddresses: {3441      97: '',3442      56: '0x155645cDF8e4B28d5B7790b65d9f79efc222740C',3443    },3444    token: serializedTokens.gum,3445    quoteToken: serializedTokens.wbnb,3446  },3447  {3448    pid: 112,3449    lpSymbol: 'pBTC-BNB LP',3450    lpAddresses: {3451      97: '',3452      56: '0xb5f6f7dad23132d40d778085d795bd0fd4b859cd',3453    },3454    token: serializedTokens.pbtc,3455    quoteToken: serializedTokens.wbnb,3456  },3457  {3458    pid: 111,3459    lpSymbol: 'DFT-BNB LP',3460    lpAddresses: {3461      97: '',3462      56: '0x8FbCbD7e30b1733965a8980bf7Ae2ca1c0C456cc',3463    },3464    token: serializedTokens.dft,3465    quoteToken: serializedTokens.wbnb,3466  },3467  {3468    pid: 110,3469    lpSymbol: 'SWTH-BNB LP',3470    lpAddresses: {3471      97: '',3472      56: '0x8c5cFfad6cddb96Ee33DA685D0d50a37e030E115',3473    },3474    token: serializedTokens.swth,3475    quoteToken: serializedTokens.wbnb,3476  },3477  {3478    pid: 109,3479    lpSymbol: 'LIEN-BNB LP',3480    lpAddresses: {3481      97: '',3482      56: '0xcd14855150335AAE984aa6D281E090c27035C692',3483    },3484    token: serializedTokens.lien,3485    quoteToken: serializedTokens.wbnb,3486  },3487  {3488    pid: 108,3489    lpSymbol: 'ZIL-BNB LP',3490    lpAddresses: {3491      97: '',3492      56: '0xc746337b5f800a0e19ed4eb3bda03ff1401b8167',3493    },3494    token: serializedTokens.zil,3495    quoteToken: serializedTokens.wbnb,3496  },3497  {3498    pid: 107,3499    lpSymbol: 'pCWS-BNB LP',3500    lpAddresses: {3501      97: '',3502      56: '0x889e81d25bffba437b2a5d3e0e4fc58a0e2749c5',3503    },3504    token: serializedTokens.pcws,3505    quoteToken: serializedTokens.wbnb,3506  },3507  {3508    pid: 106,3509    lpSymbol: 'bBADGER-BTCB LP',3510    lpAddresses: {3511      97: '',3512      56: '0x10F461CEAC7A17F59e249954Db0784d42EfF5DB5',3513    },3514    token: serializedTokens.bbadger,3515    quoteToken: serializedTokens.btcb,3516  },3517  {3518    pid: 104,3519    lpSymbol: 'bDIGG-BTCB LP',3520    lpAddresses: {3521      97: '',3522      56: '0xE1E33459505bB3763843a426F7Fd9933418184ae',3523    },3524    token: serializedTokens.bdigg,3525    quoteToken: serializedTokens.btcb,3526  },3527  {3528    pid: 103,3529    lpSymbol: 'LTO-BNB LP',3530    lpAddresses: {3531      97: '',3532      56: '0x85644fcd00c401e1a0a0a10d2ae6bbe04a73e4ab',3533    },3534    token: serializedTokens.lto,3535    quoteToken: serializedTokens.wbnb,3536  },3537  {3538    pid: 102,3539    lpSymbol: 'MIR-UST LP',3540    lpAddresses: {3541      97: '',3542      56: '0xf64a269F0A06dA07D23F43c1Deb217101ee6Bee7',3543    },3544    token: serializedTokens.mir,3545    quoteToken: serializedTokens.ust,3546  },3547  {3548    pid: 101,3549    lpSymbol: 'TRADE-BNB LP',3550    lpAddresses: {3551      97: '',3552      56: '0x2562f94E90dE6D9eb4fB6B3b8Eab56b15Aa4FC72',3553    },3554    token: serializedTokens.trade,3555    quoteToken: serializedTokens.wbnb,3556  },3557  {3558    pid: 100,3559    lpSymbol: 'DUSK-BNB LP',3560    lpAddresses: {3561      97: '',3562      56: '0xB7918560273FD56e50E9c215CC0DFE8D764C36C5',3563    },3564    token: serializedTokens.dusk,3565    quoteToken: serializedTokens.wbnb,3566  },3567  {3568    pid: 99,3569    lpSymbol: 'BIFI-BNB LP',3570    lpAddresses: {3571      97: '',3572      56: '0xd132D2C24F29EE8ABb64a66559d1b7aa627Bd7fD',3573    },3574    token: serializedTokens.bifi,3575    quoteToken: serializedTokens.wbnb,3576  },3577  {3578    pid: 98,3579    lpSymbol: 'TXL-BUSD LP',3580    lpAddresses: {3581      97: '',3582      56: '0xD20E0BcCa8B29409bf5726CB24DD779Fe337020e',3583    },3584    token: serializedTokens.txl,3585    quoteToken: serializedTokens.busd,3586  },3587  {3588    pid: 97,3589    lpSymbol: 'COS-BNB LP',3590    lpAddresses: {3591      97: '',3592      56: '0x7b1e440240B220244761C9D9A3B07fbA1995BD84',3593    },3594    token: serializedTokens.cos,3595    quoteToken: serializedTokens.wbnb,3596  },3597  {3598    pid: 96,3599    lpSymbol: 'BUNNY-BNB LP',3600    lpAddresses: {3601      97: '',3602      56: '0x7Bb89460599Dbf32ee3Aa50798BBcEae2A5F7f6a',3603    },3604    token: serializedTokens.bunny,3605    quoteToken: serializedTokens.wbnb,3606  },3607  {3608    pid: 95,3609    lpSymbol: 'ALICE-BNB LP',3610    lpAddresses: {3611      97: '',3612      56: '0xe022baa3E5E87658f789c9132B10d7425Fd3a389',3613    },3614    token: serializedTokens.alice,3615    quoteToken: serializedTokens.wbnb,3616  },3617  {3618    pid: 94,3619    lpSymbol: 'FOR-BUSD LP',3620    lpAddresses: {3621      97: '',3622      56: '0xfEc200A5E3adDD4a7915a556DDe3F5850e644020',3623    },3624    token: serializedTokens.for,3625    quoteToken: serializedTokens.busd,3626  },3627  {3628    pid: 93,3629    lpSymbol: 'BUX-BNB LP',3630    lpAddresses: {3631      97: '',3632      56: '0x0F556f4E47513d1a19Be456a9aF778d7e1A226B9',3633    },3634    token: serializedTokens.bux,3635    quoteToken: serializedTokens.wbnb,3636  },3637  {3638    pid: 92,3639    lpSymbol: 'NULS-BUSD LP',3640    lpAddresses: {3641      97: '',3642      56: '0xCA01F5D89d5b1d24ca5D6Ecc856D21e8a61DAFCc',3643    },3644    token: serializedTokens.nuls,3645    quoteToken: serializedTokens.busd,3646  },3647  {3648    pid: 91,3649    lpSymbol: 'NULS-BNB LP',3650    lpAddresses: {3651      97: '',3652      56: '0xad7e515409e5a7d516411a85acc88c5e993f570a',3653    },3654    token: serializedTokens.nuls,3655    quoteToken: serializedTokens.wbnb,3656  },3657  {3658    pid: 90,3659    lpSymbol: 'BELT-BNB LP',3660    lpAddresses: {3661      97: '',3662      56: '0x83B92D283cd279fF2e057BD86a95BdEfffED6faa',3663    },3664    token: serializedTokens.belt,3665    quoteToken: serializedTokens.wbnb,3666  },3667  {3668    pid: 89,3669    lpSymbol: 'RAMP-BUSD LP',3670    lpAddresses: {3671      97: '',3672      56: '0xbF36959939982D0D34B37Fb3f3425da9676C13a3',3673    },3674    token: serializedTokens.ramp,3675    quoteToken: serializedTokens.busd,3676  },3677  {3678    pid: 88,3679    lpSymbol: 'BFI-BNB LP',3680    lpAddresses: {3681      97: '',3682      56: '0x45a9e8d48bc560416008d122c9437927fed50e7d',3683    },3684    token: serializedTokens.bfi,3685    quoteToken: serializedTokens.wbnb,3686  },3687  {3688    pid: 87,3689    lpSymbol: 'DEXE-BUSD LP',3690    lpAddresses: {3691      97: '',3692      56: '0x69ab367bc1bea1d2c0fb4dbaec6b7197951da56c',3693    },3694    token: serializedTokens.dexe,3695    quoteToken: serializedTokens.busd,3696  },3697  {3698    pid: 86,3699    lpSymbol: 'BEL-BNB LP',3700    lpAddresses: {3701      97: '',3702      56: '0xAB97952a2806D5c92b7046c7aB13a72A87e0097b',3703    },3704    token: serializedTokens.bel,3705    quoteToken: serializedTokens.wbnb,3706  },3707  {3708    pid: 85,3709    lpSymbol: 'TPT-BUSD LP',3710    lpAddresses: {3711      97: '',3712      56: '0x4db28767d1527ba545ca5bbda1c96a94ed6ff242',3713    },3714    token: serializedTokens.tpt,3715    quoteToken: serializedTokens.busd,3716  },3717  {3718    pid: 84,3719    lpSymbol: 'WATCH-BNB LP',3720    lpAddresses: {3721      97: '',3722      56: '0xdc6c130299e53acd2cc2d291fa10552ca2198a6b',3723    },3724    token: serializedTokens.watch,3725    quoteToken: serializedTokens.wbnb,3726  },3727  {3728    pid: 83,3729    lpSymbol: 'xMARK-BUSD LP',3730    lpAddresses: {3731      97: '',3732      56: '0x292ca56ed5b3330a19037f835af4a9c0098ea6fa',3733    },3734    token: serializedTokens.xmark,3735    quoteToken: serializedTokens.busd,3736  },3737  {3738    pid: 82,3739    lpSymbol: 'bMXX-BNB LP',3740    lpAddresses: {3741      97: '',3742      56: '0x4D5aA94Ce6BbB1BC4eb73207a5a5d4D052cFcD67',3743    },3744    token: serializedTokens.bmxx,3745    quoteToken: serializedTokens.wbnb,3746  },3747  {3748    pid: 81,3749    lpSymbol: 'IOTX-BUSD LP',3750    lpAddresses: {3751      97: '',3752      56: '0x36b8b28d37f93372188f2aa2507b68a5cd8b2664',3753    },3754    token: serializedTokens.iotx,3755    quoteToken: serializedTokens.busd,3756  },3757  {3758    pid: 80,3759    lpSymbol: 'BOR-BNB LP',3760    lpAddresses: {3761      97: '',3762      56: '0x86e650350c40a5178a5d014ba37fe8556232b898',3763    },3764    token: serializedTokens.bor,3765    quoteToken: serializedTokens.wbnb,3766  },3767  {3768    pid: 79,3769    lpSymbol: 'bOPEN-BNB LP',3770    lpAddresses: {3771      97: '',3772      56: '0x9d8b7e4a9d53654d82f12c83448d8f92732bc761',3773    },3774    token: serializedTokens.bopen,3775    quoteToken: serializedTokens.wbnb,3776  },3777  {3778    pid: 78,3779    lpSymbol: 'SUSHI-ETH LP',3780    lpAddresses: {3781      97: '',3782      56: '0x17580340f3daedae871a8c21d15911742ec79e0f',3783    },3784    token: serializedTokens.sushi,3785    quoteToken: serializedTokens.eth,3786  },3787  {3788    pid: 77,3789    lpSymbol: 'DODO-BNB LP',3790    lpAddresses: {3791      97: '',3792      56: '0x9e642d174b14faea31d842dc83037c42b53236e6',3793    },3794    token: serializedTokens.dodo,3795    quoteToken: serializedTokens.wbnb,3796  },3797  {3798    pid: 75,3799    lpSymbol: 'BRY-BNB LP',3800    lpAddresses: {3801      97: '',3802      56: '0x5E3CD27F36932Bc0314aC4e2510585798C34a2fC',3803    },3804    token: serializedTokens.bry,3805    quoteToken: serializedTokens.wbnb,3806  },3807  {3808    pid: 74,3809    lpSymbol: 'ZEE-BNB LP',3810    lpAddresses: {3811      97: '',3812      56: '0xb5ab3996808c7e489dcdc0f1af2ab212ae0059af',3813    },3814    token: serializedTokens.zee,3815    quoteToken: serializedTokens.wbnb,3816  },3817  {3818    pid: 73,3819    lpSymbol: 'SWGb-BNB LP',3820    lpAddresses: {3821      97: '',3822      56: '0xc1800c29cf91954357cd0bf3f0accaada3d0109c',3823    },3824    token: serializedTokens.swgb,3825    quoteToken: serializedTokens.wbnb,3826  },3827  {3828    pid: 72,3829    lpSymbol: 'COMP-ETH LP',3830    lpAddresses: {3831      97: '',3832      56: '0x0392957571f28037607c14832d16f8b653edd472',3833    },3834    token: serializedTokens.comp,3835    quoteToken: serializedTokens.eth,3836  },3837  {3838    pid: 71,3839    lpSymbol: 'SFP-BNB LP',3840    lpAddresses: {3841      97: '',3842      56: '0xcbe2cf3bd012e9c1ade2ee4d41db3dac763e78f3',3843    },3844    token: serializedTokens.sfp,3845    quoteToken: serializedTokens.wbnb,3846  },3847  {3848    pid: 70,3849    lpSymbol: 'BETH-ETH LP',3850    lpAddresses: {3851      97: '',3852      56: '0x99d865ed50d2c32c1493896810fa386c1ce81d91',3853    },3854    token: serializedTokens.beth,3855    quoteToken: serializedTokens.eth,3856  },3857  {3858    pid: 69,3859    lpSymbol: 'LINA-BUSD LP',3860    lpAddresses: {3861      97: '',3862      56: '0xeb325a8ea1c5abf40c7ceaf645596c1f943d0948',3863    },3864    token: serializedTokens.lina,3865    quoteToken: serializedTokens.busd,3866  },3867  {3868    pid: 68,3869    lpSymbol: 'LIT-BNB LP',3870    lpAddresses: {3871      97: '',3872      56: '0x60bB03D1010b99CEAdD0dd209b64bC8bd83da161',3873    },3874    token: serializedTokens.lit,3875    quoteToken: serializedTokens.wbnb,3876  },3877  {3878    pid: 67,3879    lpSymbol: 'HGET-BNB LP',3880    lpAddresses: {3881      97: '',3882      56: '0x66b9e1eac8a81f3752f7f3a5e95de460688a17ee',3883    },3884    token: serializedTokens.hget,3885    quoteToken: serializedTokens.wbnb,3886  },3887  {3888    pid: 66,3889    lpSymbol: 'BDO-BNB LP',3890    lpAddresses: {3891      97: '',3892      56: '0x74690f829fec83ea424ee1f1654041b2491a7be9',3893    },3894    token: serializedTokens.bdo,3895    quoteToken: serializedTokens.wbnb,3896  },3897  {3898    pid: 65,3899    lpSymbol: 'EGLD-BNB LP',3900    lpAddresses: {3901      97: '',3902      56: '0x3ef4952c7a9afbe374ea02d1bf5ed5a0015b7716',3903    },3904    token: serializedTokens.egld,3905    quoteToken: serializedTokens.wbnb,3906  },3907  {3908    pid: 63,3909    lpSymbol: 'UST-BUSD LP',3910    lpAddresses: {3911      97: '',3912      56: '0xD1F12370b2ba1C79838337648F820a87eDF5e1e6',3913    },3914    token: serializedTokens.ust,3915    quoteToken: serializedTokens.busd,3916  },3917  {3918    pid: 62,3919    lpSymbol: 'mAMZN-UST LP',3920    lpAddresses: {3921      97: '',3922      56: '0xc92Dc34665c8a21f98E1E38474580b61b4f3e1b9',3923    },3924    token: serializedTokens.mamzn,3925    quoteToken: serializedTokens.ust,3926  },3927  {3928    pid: 61,3929    lpSymbol: 'mGOOGL-UST LP',3930    lpAddresses: {3931      97: '',3932      56: '0x852A68181f789AE6d1Da3dF101740a59A071004f',3933    },3934    token: serializedTokens.mgoogl,3935    quoteToken: serializedTokens.ust,3936  },3937  {3938    pid: 60,3939    lpSymbol: 'mNFLX-UST LP',3940    lpAddresses: {3941      97: '',3942      56: '0xF609ade3846981825776068a8eD7746470029D1f',3943    },3944    token: serializedTokens.mnflx,3945    quoteToken: serializedTokens.ust,3946  },3947  {3948    pid: 59,3949    lpSymbol: 'mTSLA-UST LP',3950    lpAddresses: {3951      97: '',3952      56: '0xD5664D2d15cdffD597515f1c0D945c6c1D3Bf85B',3953    },3954    token: serializedTokens.mtsla,3955    quoteToken: serializedTokens.ust,3956  },3957  {3958    pid: 58,3959    lpSymbol: 'wSOTE-BNB LP',3960    lpAddresses: {3961      97: '',3962      56: '0xffb9e2d5ce4378f1a89b29bf53f80804cc078102',3963    },3964    token: serializedTokens.wsote,3965    quoteToken: serializedTokens.wbnb,3966  },3967  {3968    pid: 57,3969    lpSymbol: 'FRONT-BNB LP',3970    lpAddresses: {3971      97: '',3972      56: '0x36b7d2e5c7877392fb17f9219efad56f3d794700',3973    },3974    token: serializedTokens.front,3975    quoteToken: serializedTokens.wbnb,3976  },3977  {3978    pid: 56,3979    lpSymbol: 'Helmet-BNB LP',3980    lpAddresses: {3981      97: '',3982      56: '0x6411310c07d8c48730172146fd6f31fa84034a8b',3983    },3984    token: serializedTokens.helmet,3985    quoteToken: serializedTokens.wbnb,3986  },3987  {3988    pid: 55,3989    lpSymbol: 'BTCST-BNB LP',3990    lpAddresses: {3991      97: '',3992      56: '0x91589786D36fEe5B27A5539CfE638a5fc9834665',3993    },3994    token: serializedTokens.btcst,3995    quoteToken: serializedTokens.wbnb,3996  },3997  {3998    pid: 54,3999    lpSymbol: 'LTC-BNB LP',4000    lpAddresses: {4001      97: '',4002      56: '0xbc765fd113c5bdb2ebc25f711191b56bb8690aec',4003    },4004    token: serializedTokens.ltc,4005    quoteToken: serializedTokens.wbnb,4006  },4007  {4008    pid: 53,4009    lpSymbol: 'USDC-BUSD LP',4010    lpAddresses: {4011      97: '',4012      56: '0x680dd100e4b394bda26a59dd5c119a391e747d18',4013    },4014    token: serializedTokens.usdc,4015    quoteToken: serializedTokens.busd,4016  },4017  {4018    pid: 52,4019    lpSymbol: 'DAI-BUSD LP',4020    lpAddresses: {4021      97: '',4022      56: '0x3aB77e40340AB084c3e23Be8e5A6f7afed9D41DC',4023    },4024    token: serializedTokens.dai,4025    quoteToken: serializedTokens.busd,4026  },4027  {4028    pid: 51,4029    lpSymbol: 'BSCX-BNB LP',4030    lpAddresses: {4031      97: '',4032      56: '0x20781bc3701c5309ac75291f5d09bdc23d7b7fa8',4033    },4034    token: serializedTokens.bscx,4035    quoteToken: serializedTokens.wbnb,4036  },4037  {4038    pid: 50,4039    lpSymbol: 'TEN-BNB LP',4040    lpAddresses: {4041      97: '',4042      56: '0x01ecc44ddd2d104f44d2aa1a2bd9dfbc91ae8275',4043    },4044    token: serializedTokens.ten,4045    quoteToken: serializedTokens.wbnb,4046  },4047  {4048    pid: 49,4049    lpSymbol: 'bALBT-BNB LP',4050    lpAddresses: {4051      97: '',4052      56: '0xbe14f3a89a4f7f279af9d99554cf12e8c29db921',4053    },4054    token: serializedTokens.balbt,4055    quoteToken: serializedTokens.wbnb,4056  },4057  {4058    pid: 46,4059    lpSymbol: 'OG-BNB LP',4060    lpAddresses: {4061      97: '',4062      56: '0x64373608f2e93ea97ad4d8ca2cce6b2575db2f55',4063    },4064    token: serializedTokens.og,4065    quoteToken: serializedTokens.wbnb,4066  },4067  {4068    pid: 47,4069    lpSymbol: 'ASR-BNB LP',4070    lpAddresses: {4071      97: '',4072      56: '0xd6b900d5308356317299dafe303e661271aa12f1',4073    },4074    token: serializedTokens.asr,4075    quoteToken: serializedTokens.wbnb,4076  },4077  {4078    pid: 48,4079    lpSymbol: 'ATM-BNB LP',4080    lpAddresses: {4081      97: '',4082      56: '0xd5b3ebf1a85d32c73a82b40f75e1cd929caf4029',4083    },4084    token: serializedTokens.atm,4085    quoteToken: serializedTokens.wbnb,4086  },4087  {4088    pid: 45,4089    lpSymbol: 'REEF-BNB LP',4090    lpAddresses: {4091      97: '',4092      56: '0x58B58cab6C5cF158f63A2390b817710826d116D0',4093    },4094    token: serializedTokens.reef,4095    quoteToken: serializedTokens.wbnb,4096  },4097  {4098    pid: 44,4099    lpSymbol: 'Ditto-BNB LP',4100    lpAddresses: {4101      97: '',4102      56: '0x470bc451810b312bbb1256f96b0895d95ea659b1',4103    },4104    token: serializedTokens.ditto,4105    quoteToken: serializedTokens.wbnb,4106  },4107  {4108    pid: 43,4109    lpSymbol: 'JUV-BNB LP',4110    lpAddresses: {4111      97: '',4112      56: '0x51a2ffa5b7de506f9a22549e48b33f6cf0d9030e',4113    },4114    token: serializedTokens.juv,4115    quoteToken: serializedTokens.wbnb,4116  },4117  {4118    pid: 42,4119    lpSymbol: 'PSG-BNB LP',4120    lpAddresses: {4121      97: '',4122      56: '0x9c4f6a5050cf863e67a402e8b377973b4e3372c1',4123    },4124    token: serializedTokens.psg,4125    quoteToken: serializedTokens.wbnb,4126  },4127  {4128    pid: 39,4129    lpSymbol: 'UNFI-BNB LP',4130    lpAddresses: {4131      97: '',4132      56: '0xbEA35584b9a88107102ABEf0BDeE2c4FaE5D8c31',4133    },4134    token: serializedTokens.unfi,4135    quoteToken: serializedTokens.wbnb,4136  },4137  {4138    pid: 41,4139    lpSymbol: 'VAI-BUSD LP',4140    lpAddresses: {4141      97: '',4142      56: '0xff17ff314925dff772b71abdff2782bc913b3575',4143    },4144    token: serializedTokens.vai,4145    quoteToken: serializedTokens.busd,4146  },4147  {4148    pid: 40,4149    lpSymbol: 'BLK-BNB LP',4150    lpAddresses: {4151      97: '',4152      56: '0xC743Dc05F03D25E1aF8eC5F8228f4BD25513c8d0',4153    },4154    token: serializedTokens.blink,4155    quoteToken: serializedTokens.wbnb,4156  },4157  {4158    pid: 37,4159    lpSymbol: 'HARD-BNB LP',4160    lpAddresses: {4161      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4162      56: '0x9f40e8a2fcaa267a0c374b6c661e0b372264cc3d',4163    },4164    token: serializedTokens.hard,4165    quoteToken: serializedTokens.wbnb,4166  },4167  {4168    pid: 2,4169    lpSymbol: 'BUSD-BNB LP',4170    lpAddresses: {4171      97: '0x2f7682b64b88149ba3250aee32db712964de5fa9',4172      56: '0x1b96b92314c44b159149f7e0303511fb2fc4774f',4173    },4174    token: serializedTokens.busd,4175    quoteToken: serializedTokens.wbnb,4176  },4177  {4178    pid: 3,4179    lpSymbol: 'ADA-BNB LP',4180    lpAddresses: {4181      97: '0xcbe3282a562e23b8c61ed04bb72ffdbb9233b1ce',4182      56: '0xba51d1ab95756ca4eab8737ecd450cd8f05384cf',4183    },4184    token: serializedTokens.ada,4185    quoteToken: serializedTokens.wbnb,4186  },4187  {4188    pid: 4,4189    lpSymbol: 'BAND-BNB LP',4190    lpAddresses: {4191      97: '0xcbe3282a562e23b8c61ed04bb72ffdbb9233b1ce',4192      56: '0xc639187ef82271d8f517de6feae4faf5b517533c',4193    },4194    token: serializedTokens.band,4195    quoteToken: serializedTokens.wbnb,4196  },4197  {4198    pid: 5,4199    lpSymbol: 'DOT-BNB LP',4200    lpAddresses: {4201      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4202      56: '0xbcd62661a6b1ded703585d3af7d7649ef4dcdb5c',4203    },4204    token: serializedTokens.dot,4205    quoteToken: serializedTokens.wbnb,4206  },4207  {4208    pid: 6,4209    lpSymbol: 'EOS-BNB LP',4210    lpAddresses: {4211      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4212      56: '0x981d2ba1b298888408d342c39c2ab92e8991691e',4213    },4214    token: serializedTokens.eos,4215    quoteToken: serializedTokens.wbnb,4216  },4217  {4218    pid: 7,4219    lpSymbol: 'LINK-BNB LP',4220    lpAddresses: {4221      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4222      56: '0xaebe45e3a03b734c68e5557ae04bfc76917b4686',4223    },4224    token: serializedTokens.link,4225    quoteToken: serializedTokens.wbnb,4226  },4227  {4228    pid: 11,4229    lpSymbol: 'USDT-BUSD LP',4230    lpAddresses: {4231      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4232      56: '0xc15fa3E22c912A276550F3E5FE3b0Deb87B55aCd',4233    },4234    token: serializedTokens.usdt,4235    quoteToken: serializedTokens.busd,4236  },4237  {4238    pid: 12,4239    lpSymbol: 'TWT-BNB LP',4240    lpAddresses: {4241      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4242      56: '0x610e7a287c27dfFcaC0F0a94f547Cc1B770cF483',4243    },4244    token: serializedTokens.twt,4245    quoteToken: serializedTokens.wbnb,4246  },4247  {4248    pid: 13,4249    lpSymbol: 'XVS-BNB LP',4250    lpAddresses: {4251      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4252      56: '0x41182c32F854dd97bA0e0B1816022e0aCB2fc0bb',4253    },4254    token: serializedTokens.xvs,4255    quoteToken: serializedTokens.wbnb,4256  },4257  {4258    pid: 14,4259    lpSymbol: 'ETH-BNB LP',4260    lpAddresses: {4261      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4262      56: '0x70D8929d04b60Af4fb9B58713eBcf18765aDE422',4263    },4264    token: serializedTokens.eth,4265    quoteToken: serializedTokens.wbnb,4266  },4267  {4268    pid: 15,4269    lpSymbol: 'BTCB-BNB LP',4270    lpAddresses: {4271      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4272      56: '0x7561EEe90e24F3b348E1087A005F78B4c8453524',4273    },4274    token: serializedTokens.btcb,4275    quoteToken: serializedTokens.wbnb,4276  },4277  {4278    pid: 16,4279    lpSymbol: 'ALPHA-BNB LP',4280    lpAddresses: {4281      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4282      56: '0x4e0f3385d932F7179DeE045369286FFa6B03d887',4283    },4284    token: serializedTokens.alpha,4285    quoteToken: serializedTokens.wbnb,4286  },4287  {4288    pid: 17,4289    lpSymbol: 'USDT-BNB LP',4290    lpAddresses: {4291      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4292      56: '0x20bcc3b8a0091ddac2d0bc30f68e6cbb97de59cd',4293    },4294    token: serializedTokens.usdt,4295    quoteToken: serializedTokens.wbnb,4296  },4297  {4298    pid: 18,4299    lpSymbol: 'XRP-BNB LP',4300    lpAddresses: {4301      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4302      56: '0xc7b4b32a3be2cb6572a1c9959401f832ce47a6d2',4303    },4304    token: serializedTokens.xrp,4305    quoteToken: serializedTokens.wbnb,4306  },4307  {4308    pid: 19,4309    lpSymbol: 'ATOM-BNB LP',4310    lpAddresses: {4311      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4312      56: '0x2333c77fc0b2875c11409cdcd3c75d42d402e834',4313    },4314    token: serializedTokens.atom,4315    quoteToken: serializedTokens.wbnb,4316  },4317  {4318    pid: 20,4319    lpSymbol: 'YFII-BNB LP',4320    lpAddresses: {4321      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4322      56: '0x574a978c2d0d36d707a05e459466c7a1054f1210',4323    },4324    token: serializedTokens.yfii,4325    quoteToken: serializedTokens.wbnb,4326  },4327  {4328    pid: 21,4329    lpSymbol: 'DAI-BNB LP',4330    lpAddresses: {4331      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4332      56: '0x56c77d59e82f33c712f919d09fceddf49660a829',4333    },4334    token: serializedTokens.dai,4335    quoteToken: serializedTokens.wbnb,4336  },4337  {4338    pid: 22,4339    lpSymbol: 'XTZ-BNB LP',4340    lpAddresses: {4341      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4342      56: '0x5acac332f0f49c8badc7afd0134ad19d3db972e6',4343    },4344    token: serializedTokens.xtz,4345    quoteToken: serializedTokens.wbnb,4346  },4347  {4348    pid: 23,4349    lpSymbol: 'BCH-BNB LP',4350    lpAddresses: {4351      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4352      56: '0x54edd846db17f43b6e43296134ecd96284671e81',4353    },4354    token: serializedTokens.bch,4355    quoteToken: serializedTokens.wbnb,4356  },4357  {4358    pid: 24,4359    lpSymbol: 'YFI-BNB LP',4360    lpAddresses: {4361      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4362      56: '0x68Ff2ca47D27db5Ac0b5c46587645835dD51D3C1',4363    },4364    token: serializedTokens.yfi,4365    quoteToken: serializedTokens.wbnb,4366  },4367  {4368    pid: 25,4369    lpSymbol: 'UNI-BNB LP',4370    lpAddresses: {4371      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4372      56: '0x4269e7F43A63CEA1aD7707Be565a94a9189967E9',4373    },4374    token: serializedTokens.uni,4375    quoteToken: serializedTokens.wbnb,4376  },4377  {4378    pid: 26,4379    lpSymbol: 'FIL-BNB LP',4380    lpAddresses: {4381      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4382      56: '0x35fe9787f0ebf2a200bac413d3030cf62d312774',4383    },4384    token: serializedTokens.fil,4385    quoteToken: serializedTokens.wbnb,4386  },4387  {4388    pid: 27,4389    lpSymbol: 'INJ-BNB LP',4390    lpAddresses: {4391      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4392      56: '0x7a34bd64d18e44CfdE3ef4B81b87BAf3EB3315B6',4393    },4394    token: serializedTokens.inj,4395    quoteToken: serializedTokens.wbnb,4396  },4397  {4398    pid: 29,4399    lpSymbol: 'USDC-BNB LP',4400    lpAddresses: {4401      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4402      56: '0x30479874f9320a62bce3bc0e315c920e1d73e278',4403    },4404    token: serializedTokens.usdc,4405    quoteToken: serializedTokens.wbnb,4406  },4407  {4408    pid: 30,4409    lpSymbol: 'SXP-BNB LP',4410    lpAddresses: {4411      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4412      56: '0x752E713fB70E3FA1Ac08bCF34485F14A986956c4',4413    },4414    token: serializedTokens.sxp,4415    quoteToken: serializedTokens.wbnb,4416  },4417  {4418    pid: 32,4419    lpSymbol: 'CTK-BNB LP',4420    lpAddresses: {4421      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4422      56: '0x7793870484647a7278907498ec504879d6971EAb',4423    },4424    token: serializedTokens.ctk,4425    quoteToken: serializedTokens.wbnb,4426  },4427  {4428    pid: 34,4429    lpSymbol: 'STAX-CAKE LP',4430    lpAddresses: {4431      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4432      56: '0x7cd05f8b960ba071fdf69c750c0e5a57c8366500',4433    },4434    token: serializedTokens.stax,4435    quoteToken: serializedTokens.cake,4436    isCommunity: true,4437  },4438  {4439    pid: 35,4440    lpSymbol: 'NAR-CAKE LP',4441    lpAddresses: {4442      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4443      56: '0x745c4fd226e169d6da959283275a8e0ecdd7f312',4444    },4445    token: serializedTokens.nar,4446    quoteToken: serializedTokens.cake,4447    isCommunity: true,4448  },4449  {4450    pid: 36,4451    lpSymbol: 'NYA-CAKE LP',4452    lpAddresses: {4453      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4454      56: '0x2730bf486d658838464a4ef077880998d944252d',4455    },4456    token: serializedTokens.nya,4457    quoteToken: serializedTokens.cake,4458    isCommunity: true,4459  },4460  {4461    pid: 38,4462    lpSymbol: 'bROOBEE-CAKE LP',4463    lpAddresses: {4464      97: '',4465      56: '0x970858016C963b780E06f7DCfdEf8e809919BcE8',4466    },4467    token: serializedTokens.broobee,4468    quoteToken: serializedTokens.cake,4469    isCommunity: true,4470  },4471  {4472    pid: 8,4473    lpSymbol: 'BAKE-BNB Bakery LP',4474    lpAddresses: {4475      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4476      56: '0xc2eed0f5a0dc28cfa895084bc0a9b8b8279ae492',4477    },4478    token: serializedTokens.bake,4479    quoteToken: serializedTokens.wbnb,4480  },4481  {4482    pid: 9,4483    lpSymbol: 'BURGER-BNB LP',4484    lpAddresses: {4485      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4486      56: '0xd937FB9E6e47F3805981453BFB277a49FFfE04D7',4487    },4488    token: serializedTokens.burger,4489    quoteToken: serializedTokens.wbnb,4490  },4491  {4492    pid: 10,4493    lpSymbol: 'BAKE-BNB LP',4494    lpAddresses: {4495      97: '0xE66790075ad839978fEBa15D4d8bB2b415556a1D',4496      56: '0x3Da30727ed0626b78C212e81B37B97A8eF8A25bB',4497    },4498    token: serializedTokens.bake,4499    quoteToken: serializedTokens.wbnb,4500  },4501]...JavaScriptFormatter.js
Source:JavaScriptFormatter.js  
1/*2 * Copyright (C) 2011 Google Inc. All rights reserved.3 *4 * Redistribution and use in source and binary forms, with or without5 * modification, are permitted provided that the following conditions are6 * met:7 *8 *     * Redistributions of source code must retain the above copyright9 * notice, this list of conditions and the following disclaimer.10 *     * Redistributions in binary form must reproduce the above11 * copyright notice, this list of conditions and the following disclaimer12 * in the documentation and/or other materials provided with the13 * distribution.14 *     * Neither the name of Google Inc. nor the names of its15 * contributors may be used to endorse or promote products derived from16 * this software without specific prior written permission.17 *18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS19 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT20 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR21 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT22 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,23 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT24 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.29 */30/**31 * @constructor32 * @param {!FormatterWorker.JavaScriptTokenizer} tokenizer33 * @param {!FormatterWorker.JavaScriptFormattedContentBuilder} builder34 */35FormatterWorker.JavaScriptFormatter = function(tokenizer, builder)36{37    this._tokenizer = tokenizer;38    this._builder = builder;39    this._token = null;40    this._nextToken = this._tokenizer.next();41}42FormatterWorker.JavaScriptFormatter._identifierRegex = /^[$A-Z_][0-9A-Z_$]*$/i;43FormatterWorker.JavaScriptFormatter.prototype = {44    format: function()45    {46        this._parseSourceElements(FormatterWorker.JavaScriptTokens.EOS);47        this._consume(FormatterWorker.JavaScriptTokens.EOS);48    },49    /**50     * @return {number}51     */52    _peek: function()53    {54        return this._nextToken.token;55    },56    /**57     * @return {number}58     */59    _next: function()60    {61        if (this._token && this._token.token === FormatterWorker.JavaScriptTokens.EOS)62            throw "Unexpected EOS token";63        this._builder.addToken(this._nextToken);64        this._token = this._nextToken;65        this._nextToken = this._tokenizer.next(this._forceRegexp);66        this._forceRegexp = false;67        return this._token.token;68    },69    /**70     * @param {number} token71     */72    _consume: function(token)73    {74        var next = this._next();75        if (next !== token)76            throw "Unexpected token in consume: expected " + token + ", actual " + next;77    },78    /**79     * @param {number} token80     */81    _expect: function(token)82    {83        var next = this._next();84        if (next !== token)85            throw "Unexpected token: expected " + token + ", actual " + next;86    },87    _expectGeneralIdentifier: function()88    {89        var next = this._next();90        if (next !== FormatterWorker.JavaScriptTokens.IDENTIFIER && !FormatterWorker.JavaScriptFormatter._identifierRegex.test(this._token.value))91            throw "Unexpected token: expected javascript identifier, actual " + this._token.value;92    },93    _expectSemicolon: function()94    {95        if (this._peek() === FormatterWorker.JavaScriptTokens.SEMICOLON)96            this._consume(FormatterWorker.JavaScriptTokens.SEMICOLON);97    },98    /**99     * @return {boolean}100     */101    _hasLineTerminatorBeforeNext: function()102    {103        return this._nextToken.nlb;104    },105    /**106     * @param {number} endToken107     */108    _parseSourceElements: function(endToken)109    {110        while (this._peek() !== endToken) {111            this._parseStatement();112            this._builder.addNewLine();113        }114    },115    _parseStatementOrBlock: function()116    {117        if (this._peek() === FormatterWorker.JavaScriptTokens.LBRACE) {118            this._builder.addSpace();119            this._parseBlock();120            return true;121        }122        this._builder.addNewLine();123        this._builder.increaseNestingLevel();124        this._parseStatement();125        this._builder.decreaseNestingLevel();126    },127    _parseStatement: function()128    {129        switch (this._peek()) {130        case FormatterWorker.JavaScriptTokens.LBRACE:131            return this._parseBlock();132        case FormatterWorker.JavaScriptTokens.CONST:133        case FormatterWorker.JavaScriptTokens.VAR:134            return this._parseVariableStatement();135        case FormatterWorker.JavaScriptTokens.SEMICOLON:136            return this._next();137        case FormatterWorker.JavaScriptTokens.IF:138            return this._parseIfStatement();139        case FormatterWorker.JavaScriptTokens.DO:140            return this._parseDoWhileStatement();141        case FormatterWorker.JavaScriptTokens.WHILE:142            return this._parseWhileStatement();143        case FormatterWorker.JavaScriptTokens.FOR:144            return this._parseForStatement();145        case FormatterWorker.JavaScriptTokens.CONTINUE:146            return this._parseContinueStatement();147        case FormatterWorker.JavaScriptTokens.BREAK:148            return this._parseBreakStatement();149        case FormatterWorker.JavaScriptTokens.RETURN:150            return this._parseReturnStatement();151        case FormatterWorker.JavaScriptTokens.WITH:152            return this._parseWithStatement();153        case FormatterWorker.JavaScriptTokens.SWITCH:154            return this._parseSwitchStatement();155        case FormatterWorker.JavaScriptTokens.THROW:156            return this._parseThrowStatement();157        case FormatterWorker.JavaScriptTokens.TRY:158            return this._parseTryStatement();159        case FormatterWorker.JavaScriptTokens.FUNCTION:160            return this._parseFunctionDeclaration();161        case FormatterWorker.JavaScriptTokens.DEBUGGER:162            return this._parseDebuggerStatement();163        default:164            return this._parseExpressionOrLabelledStatement();165        }166    },167    _parseFunctionDeclaration: function()168    {169        this._expect(FormatterWorker.JavaScriptTokens.FUNCTION);170        this._builder.addSpace();171        this._expect(FormatterWorker.JavaScriptTokens.IDENTIFIER);172        this._parseFunctionLiteral()173    },174    _parseBlock: function()175    {176        this._expect(FormatterWorker.JavaScriptTokens.LBRACE);177        this._builder.addNewLine();178        this._builder.increaseNestingLevel();179        while (this._peek() !== FormatterWorker.JavaScriptTokens.RBRACE) {180            this._parseStatement();181            this._builder.addNewLine();182        }183        this._builder.decreaseNestingLevel();184        this._expect(FormatterWorker.JavaScriptTokens.RBRACE);185    },186    _parseVariableStatement: function()187    {188        this._parseVariableDeclarations();189        this._expectSemicolon();190    },191    _parseVariableDeclarations: function()192    {193        if (this._peek() === FormatterWorker.JavaScriptTokens.VAR)194            this._consume(FormatterWorker.JavaScriptTokens.VAR);195        else196            this._consume(FormatterWorker.JavaScriptTokens.CONST)197        this._builder.addSpace();198        var isFirstVariable = true;199        do {200            if (!isFirstVariable) {201                this._consume(FormatterWorker.JavaScriptTokens.COMMA);202                this._builder.addSpace();203            }204            isFirstVariable = false;205            this._expect(FormatterWorker.JavaScriptTokens.IDENTIFIER);206            if (this._peek() === FormatterWorker.JavaScriptTokens.ASSIGN) {207                this._builder.addSpace();208                this._consume(FormatterWorker.JavaScriptTokens.ASSIGN);209                this._builder.addSpace();210                this._parseAssignmentExpression();211            }212        } while (this._peek() === FormatterWorker.JavaScriptTokens.COMMA);213    },214    _parseExpressionOrLabelledStatement: function()215    {216        this._parseExpression();217        if (this._peek() === FormatterWorker.JavaScriptTokens.COLON) {218            this._expect(FormatterWorker.JavaScriptTokens.COLON);219            this._builder.addSpace();220            this._parseStatement();221        }222        this._expectSemicolon();223    },224    _parseIfStatement: function()225    {226        this._expect(FormatterWorker.JavaScriptTokens.IF);227        this._builder.addSpace();228        this._expect(FormatterWorker.JavaScriptTokens.LPAREN);229        this._parseExpression();230        this._expect(FormatterWorker.JavaScriptTokens.RPAREN);231        var isBlock = this._parseStatementOrBlock();232        if (this._peek() === FormatterWorker.JavaScriptTokens.ELSE) {233            if (isBlock)234                this._builder.addSpace();235            else236                this._builder.addNewLine();237            this._next();238            if (this._peek() === FormatterWorker.JavaScriptTokens.IF) {239                this._builder.addSpace();240                this._parseStatement();241            } else242                this._parseStatementOrBlock();243        }244    },245    _parseContinueStatement: function()246    {247        this._expect(FormatterWorker.JavaScriptTokens.CONTINUE);248        var token = this._peek();249        if (!this._hasLineTerminatorBeforeNext() && token !== FormatterWorker.JavaScriptTokens.SEMICOLON && token !== FormatterWorker.JavaScriptTokens.RBRACE && token !== FormatterWorker.JavaScriptTokens.EOS) {250            this._builder.addSpace();251            this._expect(FormatterWorker.JavaScriptTokens.IDENTIFIER);252        }253        this._expectSemicolon();254    },255    _parseBreakStatement: function()256    {257        this._expect(FormatterWorker.JavaScriptTokens.BREAK);258        var token = this._peek();259        if (!this._hasLineTerminatorBeforeNext() && token !== FormatterWorker.JavaScriptTokens.SEMICOLON && token !== FormatterWorker.JavaScriptTokens.RBRACE && token !== FormatterWorker.JavaScriptTokens.EOS) {260            this._builder.addSpace();261            this._expect(FormatterWorker.JavaScriptTokens.IDENTIFIER);262        }263        this._expectSemicolon();264    },265    _parseReturnStatement: function()266    {267        this._expect(FormatterWorker.JavaScriptTokens.RETURN);268        var token = this._peek();269        if (!this._hasLineTerminatorBeforeNext() && token !== FormatterWorker.JavaScriptTokens.SEMICOLON && token !== FormatterWorker.JavaScriptTokens.RBRACE && token !== FormatterWorker.JavaScriptTokens.EOS) {270            this._builder.addSpace();271            this._parseExpression();272        }273        this._expectSemicolon();274    },275    _parseWithStatement: function()276    {277        this._expect(FormatterWorker.JavaScriptTokens.WITH);278        this._builder.addSpace();279        this._expect(FormatterWorker.JavaScriptTokens.LPAREN);280        this._parseExpression();281        this._expect(FormatterWorker.JavaScriptTokens.RPAREN);282        this._parseStatementOrBlock();283    },284    _parseCaseClause: function()285    {286        if (this._peek() === FormatterWorker.JavaScriptTokens.CASE) {287            this._expect(FormatterWorker.JavaScriptTokens.CASE);288            this._builder.addSpace();289            this._parseExpression();290        } else291            this._expect(FormatterWorker.JavaScriptTokens.DEFAULT);292        this._expect(FormatterWorker.JavaScriptTokens.COLON);293        this._builder.addNewLine();294        this._builder.increaseNestingLevel();295        while (this._peek() !== FormatterWorker.JavaScriptTokens.CASE && this._peek() !== FormatterWorker.JavaScriptTokens.DEFAULT && this._peek() !== FormatterWorker.JavaScriptTokens.RBRACE) {296            this._parseStatement();297            this._builder.addNewLine();298        }299        this._builder.decreaseNestingLevel();300    },301    _parseSwitchStatement: function()302    {303        this._expect(FormatterWorker.JavaScriptTokens.SWITCH);304        this._builder.addSpace();305        this._expect(FormatterWorker.JavaScriptTokens.LPAREN);306        this._parseExpression();307        this._expect(FormatterWorker.JavaScriptTokens.RPAREN);308        this._builder.addSpace();309        this._expect(FormatterWorker.JavaScriptTokens.LBRACE);310        this._builder.addNewLine();311        this._builder.increaseNestingLevel();312        while (this._peek() !== FormatterWorker.JavaScriptTokens.RBRACE)313            this._parseCaseClause();314        this._builder.decreaseNestingLevel();315        this._expect(FormatterWorker.JavaScriptTokens.RBRACE);316    },317    _parseThrowStatement: function()318    {319        this._expect(FormatterWorker.JavaScriptTokens.THROW);320        this._builder.addSpace();321        this._parseExpression();322        this._expectSemicolon();323    },324    _parseTryStatement: function()325    {326        this._expect(FormatterWorker.JavaScriptTokens.TRY);327        this._builder.addSpace();328        this._parseBlock();329        var token = this._peek();330        if (token === FormatterWorker.JavaScriptTokens.CATCH) {331            this._builder.addSpace();332            this._consume(FormatterWorker.JavaScriptTokens.CATCH);333            this._builder.addSpace();334            this._expect(FormatterWorker.JavaScriptTokens.LPAREN);335            this._expect(FormatterWorker.JavaScriptTokens.IDENTIFIER);336            this._expect(FormatterWorker.JavaScriptTokens.RPAREN);337            this._builder.addSpace();338            this._parseBlock();339            token = this._peek();340        }341        if (token === FormatterWorker.JavaScriptTokens.FINALLY) {342            this._consume(FormatterWorker.JavaScriptTokens.FINALLY);343            this._builder.addSpace();344            this._parseBlock();345        }346    },347    _parseDoWhileStatement: function()348    {349        this._expect(FormatterWorker.JavaScriptTokens.DO);350        var isBlock = this._parseStatementOrBlock();351        if (isBlock)352            this._builder.addSpace();353        else354            this._builder.addNewLine();355        this._expect(FormatterWorker.JavaScriptTokens.WHILE);356        this._builder.addSpace();357        this._expect(FormatterWorker.JavaScriptTokens.LPAREN);358        this._parseExpression();359        this._expect(FormatterWorker.JavaScriptTokens.RPAREN);360        this._expectSemicolon();361    },362    _parseWhileStatement: function()363    {364        this._expect(FormatterWorker.JavaScriptTokens.WHILE);365        this._builder.addSpace();366        this._expect(FormatterWorker.JavaScriptTokens.LPAREN);367        this._parseExpression();368        this._expect(FormatterWorker.JavaScriptTokens.RPAREN);369        this._parseStatementOrBlock();370    },371    _parseForStatement: function()372    {373        this._expect(FormatterWorker.JavaScriptTokens.FOR);374        this._builder.addSpace();375        this._expect(FormatterWorker.JavaScriptTokens.LPAREN);376        if (this._peek() !== FormatterWorker.JavaScriptTokens.SEMICOLON) {377            if (this._peek() === FormatterWorker.JavaScriptTokens.VAR || this._peek() === FormatterWorker.JavaScriptTokens.CONST) {378                this._parseVariableDeclarations();379                if (this._peek() === FormatterWorker.JavaScriptTokens.IN) {380                    this._builder.addSpace();381                    this._consume(FormatterWorker.JavaScriptTokens.IN);382                    this._builder.addSpace();383                    this._parseExpression();384                }385            } else386                this._parseExpression();387        }388        if (this._peek() !== FormatterWorker.JavaScriptTokens.RPAREN) {389            this._expect(FormatterWorker.JavaScriptTokens.SEMICOLON);390            this._builder.addSpace();391            if (this._peek() !== FormatterWorker.JavaScriptTokens.SEMICOLON)392                this._parseExpression();393            this._expect(FormatterWorker.JavaScriptTokens.SEMICOLON);394            this._builder.addSpace();395            if (this._peek() !== FormatterWorker.JavaScriptTokens.RPAREN)396                this._parseExpression();397        }398        this._expect(FormatterWorker.JavaScriptTokens.RPAREN);399        this._parseStatementOrBlock();400    },401    _parseExpression: function()402    {403        this._parseAssignmentExpression();404        while (this._peek() === FormatterWorker.JavaScriptTokens.COMMA) {405            this._expect(FormatterWorker.JavaScriptTokens.COMMA);406            this._builder.addSpace();407            this._parseAssignmentExpression();408        }409    },410    _parseAssignmentExpression: function()411    {412        this._parseConditionalExpression();413        var token = this._peek();414        if (FormatterWorker.JavaScriptTokens.ASSIGN <= token && token <= FormatterWorker.JavaScriptTokens.ASSIGN_MOD) {415            this._builder.addSpace();416            this._next();417            this._builder.addSpace();418            this._parseAssignmentExpression();419        }420    },421    _parseConditionalExpression: function()422    {423        this._parseBinaryExpression();424        if (this._peek() === FormatterWorker.JavaScriptTokens.CONDITIONAL) {425            this._builder.addSpace();426            this._consume(FormatterWorker.JavaScriptTokens.CONDITIONAL);427            this._builder.addSpace();428            this._parseAssignmentExpression();429            this._builder.addSpace();430            this._expect(FormatterWorker.JavaScriptTokens.COLON);431            this._builder.addSpace();432            this._parseAssignmentExpression();433        }434    },435    _parseBinaryExpression: function()436    {437        this._parseUnaryExpression();438        var token = this._peek();439        while (FormatterWorker.JavaScriptTokens.OR <= token && token <= FormatterWorker.JavaScriptTokens.IN) {440            this._builder.addSpace();441            this._next();442            this._builder.addSpace();443            this._parseBinaryExpression();444            token = this._peek();445        }446    },447    _parseUnaryExpression: function()448    {449        var token = this._peek();450        if ((FormatterWorker.JavaScriptTokens.NOT <= token && token <= FormatterWorker.JavaScriptTokens.VOID) || token === FormatterWorker.JavaScriptTokens.ADD || token === FormatterWorker.JavaScriptTokens.SUB || token ===  FormatterWorker.JavaScriptTokens.INC || token === FormatterWorker.JavaScriptTokens.DEC) {451            this._next();452            if (token === FormatterWorker.JavaScriptTokens.DELETE || token === FormatterWorker.JavaScriptTokens.TYPEOF || token === FormatterWorker.JavaScriptTokens.VOID)453                this._builder.addSpace();454            this._parseUnaryExpression();455        } else456            return this._parsePostfixExpression();457    },458    _parsePostfixExpression: function()459    {460        this._parseLeftHandSideExpression();461        var token = this._peek();462        if (!this._hasLineTerminatorBeforeNext() && (token === FormatterWorker.JavaScriptTokens.INC || token === FormatterWorker.JavaScriptTokens.DEC))463            this._next();464    },465    _parseLeftHandSideExpression: function()466    {467        if (this._peek() === FormatterWorker.JavaScriptTokens.NEW)468            this._parseNewExpression();469        else470            this._parseMemberExpression();471        while (true) {472            switch (this._peek()) {473            case FormatterWorker.JavaScriptTokens.LBRACK:474                this._consume(FormatterWorker.JavaScriptTokens.LBRACK);475                this._parseExpression();476                this._expect(FormatterWorker.JavaScriptTokens.RBRACK);477                break;478            case FormatterWorker.JavaScriptTokens.LPAREN:479                this._parseArguments();480                break;481            case FormatterWorker.JavaScriptTokens.PERIOD:482                this._consume(FormatterWorker.JavaScriptTokens.PERIOD);483                this._expectGeneralIdentifier();484                break;485            default:486                return;487            }488        }489    },490    _parseNewExpression: function()491    {492        this._expect(FormatterWorker.JavaScriptTokens.NEW);493        this._builder.addSpace();494        if (this._peek() === FormatterWorker.JavaScriptTokens.NEW)495            this._parseNewExpression();496        else497            this._parseMemberExpression();498    },499    _parseMemberExpression: function()500    {501        if (this._peek() === FormatterWorker.JavaScriptTokens.FUNCTION) {502            this._expect(FormatterWorker.JavaScriptTokens.FUNCTION);503            if (this._peek() === FormatterWorker.JavaScriptTokens.IDENTIFIER) {504                this._builder.addSpace();505                this._expect(FormatterWorker.JavaScriptTokens.IDENTIFIER);506            }507            this._parseFunctionLiteral();508        } else509            this._parsePrimaryExpression();510        while (true) {511            switch (this._peek()) {512            case FormatterWorker.JavaScriptTokens.LBRACK:513                this._consume(FormatterWorker.JavaScriptTokens.LBRACK);514                this._parseExpression();515                this._expect(FormatterWorker.JavaScriptTokens.RBRACK);516                break;517            case FormatterWorker.JavaScriptTokens.PERIOD:518                this._consume(FormatterWorker.JavaScriptTokens.PERIOD);519                this._expectGeneralIdentifier();520                break;521            case FormatterWorker.JavaScriptTokens.LPAREN:522                this._parseArguments();523                break;524            default:525                return;526            }527        }528    },529    _parseDebuggerStatement: function()530    {531        this._expect(FormatterWorker.JavaScriptTokens.DEBUGGER);532        this._expectSemicolon();533    },534    _parsePrimaryExpression: function()535    {536        switch (this._peek()) {537        case FormatterWorker.JavaScriptTokens.THIS:538            return this._consume(FormatterWorker.JavaScriptTokens.THIS);539        case FormatterWorker.JavaScriptTokens.NULL_LITERAL:540            return this._consume(FormatterWorker.JavaScriptTokens.NULL_LITERAL);541        case FormatterWorker.JavaScriptTokens.TRUE_LITERAL:542            return this._consume(FormatterWorker.JavaScriptTokens.TRUE_LITERAL);543        case FormatterWorker.JavaScriptTokens.FALSE_LITERAL:544            return this._consume(FormatterWorker.JavaScriptTokens.FALSE_LITERAL);545        case FormatterWorker.JavaScriptTokens.IDENTIFIER:546            return this._consume(FormatterWorker.JavaScriptTokens.IDENTIFIER);547        case FormatterWorker.JavaScriptTokens.NUMBER:548            return this._consume(FormatterWorker.JavaScriptTokens.NUMBER);549        case FormatterWorker.JavaScriptTokens.STRING:550            return this._consume(FormatterWorker.JavaScriptTokens.STRING);551        case FormatterWorker.JavaScriptTokens.ASSIGN_DIV:552            return this._parseRegExpLiteral();553        case FormatterWorker.JavaScriptTokens.DIV:554            return this._parseRegExpLiteral();555        case FormatterWorker.JavaScriptTokens.LBRACK:556            return this._parseArrayLiteral();557        case FormatterWorker.JavaScriptTokens.LBRACE:558            return this._parseObjectLiteral();559        case FormatterWorker.JavaScriptTokens.LPAREN:560            this._consume(FormatterWorker.JavaScriptTokens.LPAREN);561            this._parseExpression();562            this._expect(FormatterWorker.JavaScriptTokens.RPAREN);563            return;564        default:565            return this._next();566        }567    },568    _parseArrayLiteral: function()569    {570        this._expect(FormatterWorker.JavaScriptTokens.LBRACK);571        this._builder.increaseNestingLevel();572        while (this._peek() !== FormatterWorker.JavaScriptTokens.RBRACK) {573            if (this._peek() !== FormatterWorker.JavaScriptTokens.COMMA)574                this._parseAssignmentExpression();575            if (this._peek() !== FormatterWorker.JavaScriptTokens.RBRACK) {576                this._expect(FormatterWorker.JavaScriptTokens.COMMA);577                this._builder.addSpace();578            }579        }580        this._builder.decreaseNestingLevel();581        this._expect(FormatterWorker.JavaScriptTokens.RBRACK);582    },583    _parseObjectLiteralGetSet: function()584    {585        var token = this._peek();586        if (token === FormatterWorker.JavaScriptTokens.IDENTIFIER || token === FormatterWorker.JavaScriptTokens.NUMBER || token === FormatterWorker.JavaScriptTokens.STRING ||587            FormatterWorker.JavaScriptTokens.DELETE <= token && token <= FormatterWorker.JavaScriptTokens.FALSE_LITERAL ||588            token === FormatterWorker.JavaScriptTokens.INSTANCEOF || token === FormatterWorker.JavaScriptTokens.IN || token === FormatterWorker.JavaScriptTokens.CONST) {589            this._next();590            this._parseFunctionLiteral();591        }592    },593    _parseObjectLiteral: function()594    {595        this._expect(FormatterWorker.JavaScriptTokens.LBRACE);596        this._builder.increaseNestingLevel();597        while (this._peek() !== FormatterWorker.JavaScriptTokens.RBRACE) {598            var token = this._peek();599            switch (token) {600            case FormatterWorker.JavaScriptTokens.IDENTIFIER:601                this._consume(FormatterWorker.JavaScriptTokens.IDENTIFIER);602                var name = this._token.value;603                if ((name === "get" || name === "set") && this._peek() !== FormatterWorker.JavaScriptTokens.COLON) {604                    this._builder.addSpace();605                    this._parseObjectLiteralGetSet();606                    if (this._peek() !== FormatterWorker.JavaScriptTokens.RBRACE) {607                        this._expect(FormatterWorker.JavaScriptTokens.COMMA);608                    }609                    continue;610                }611                break;612            case FormatterWorker.JavaScriptTokens.STRING:613                this._consume(FormatterWorker.JavaScriptTokens.STRING);614                break;615            case FormatterWorker.JavaScriptTokens.NUMBER:616                this._consume(FormatterWorker.JavaScriptTokens.NUMBER);617                break;618            default:619                this._next();620            }621            this._expect(FormatterWorker.JavaScriptTokens.COLON);622            this._builder.addSpace();623            this._parseAssignmentExpression();624            if (this._peek() !== FormatterWorker.JavaScriptTokens.RBRACE) {625                this._expect(FormatterWorker.JavaScriptTokens.COMMA);626            }627        }628        this._builder.decreaseNestingLevel();629        this._expect(FormatterWorker.JavaScriptTokens.RBRACE);630    },631    _parseRegExpLiteral: function()632    {633        if (this._nextToken.type === "regexp")634            this._next();635        else {636            this._forceRegexp = true;637            this._next();638        }639    },640    _parseArguments: function()641    {642        this._expect(FormatterWorker.JavaScriptTokens.LPAREN);643        var done = (this._peek() === FormatterWorker.JavaScriptTokens.RPAREN);644        while (!done) {645            this._parseAssignmentExpression();646            done = (this._peek() === FormatterWorker.JavaScriptTokens.RPAREN);647            if (!done) {648                this._expect(FormatterWorker.JavaScriptTokens.COMMA);649                this._builder.addSpace();650            }651        }652        this._expect(FormatterWorker.JavaScriptTokens.RPAREN);653    },654    _parseFunctionLiteral: function()655    {656        this._expect(FormatterWorker.JavaScriptTokens.LPAREN);657        var done = (this._peek() === FormatterWorker.JavaScriptTokens.RPAREN);658        while (!done) {659            this._expect(FormatterWorker.JavaScriptTokens.IDENTIFIER);660            done = (this._peek() === FormatterWorker.JavaScriptTokens.RPAREN);661            if (!done) {662                this._expect(FormatterWorker.JavaScriptTokens.COMMA);663                this._builder.addSpace();664            }665        }666        this._expect(FormatterWorker.JavaScriptTokens.RPAREN);667        this._builder.addSpace();668        this._expect(FormatterWorker.JavaScriptTokens.LBRACE);669        this._builder.addNewLine();670        this._builder.increaseNestingLevel();671        this._parseSourceElements(FormatterWorker.JavaScriptTokens.RBRACE);672        this._builder.decreaseNestingLevel();673        this._expect(FormatterWorker.JavaScriptTokens.RBRACE);674    }675}676/**677 * @constructor678 * @param {string} content679 * @param {!{original: !Array.<number>, formatted: !Array.<number>}} mapping680 * @param {number} originalOffset681 * @param {number} formattedOffset682 * @param {string} indentString683 */684FormatterWorker.JavaScriptFormattedContentBuilder = function(content, mapping, originalOffset, formattedOffset, indentString)685{686    this._originalContent = content;687    this._originalOffset = originalOffset;688    this._lastOriginalPosition = 0;689    this._formattedContent = [];690    this._formattedContentLength = 0;691    this._formattedOffset = formattedOffset;692    this._lastFormattedPosition = 0;693    this._mapping = mapping;694    this._lineNumber = 0;695    this._nestingLevel = 0;696    this._indentString = indentString;697    this._cachedIndents = {};698}699FormatterWorker.JavaScriptFormattedContentBuilder.prototype = {700    /**701     * @param {!{comments_before: !Array.<string>, line: number, pos: number, endLine: number, nlb: boolean}} token702     */703    addToken: function(token)704    {705        for (var i = 0; i < token.comments_before.length; ++i)706            this._addComment(token.comments_before[i]);707        while (this._lineNumber < token.line) {708            this._addText("\n");709            this._addIndent();710            this._needNewLine = false;711            this._lineNumber += 1;712        }713        if (this._needNewLine) {714            this._addText("\n");715            this._addIndent();716            this._needNewLine = false;717        }718        this._addMappingIfNeeded(token.pos);719        this._addText(this._originalContent.substring(token.pos, token.endPos));720        this._lineNumber = token.endLine;721    },722    addSpace: function()723    {724        this._addText(" ");725    },726    addNewLine: function()727    {728        this._needNewLine = true;729    },730    increaseNestingLevel: function()731    {732        this._nestingLevel += 1;733    },734    decreaseNestingLevel: function()735    {736        this._nestingLevel -= 1;737    },738    /**739     * @return {string}740     */741    content: function()742    {743        return this._formattedContent.join("");744    },745    _addIndent: function()746    {747        if (this._cachedIndents[this._nestingLevel]) {748            this._addText(this._cachedIndents[this._nestingLevel]);749            return;750        }751        var fullIndent = "";752        for (var i = 0; i < this._nestingLevel; ++i)753            fullIndent += this._indentString;754        this._addText(fullIndent);755        // Cache a maximum of 20 nesting level indents.756        if (this._nestingLevel <= 20)757            this._cachedIndents[this._nestingLevel] = fullIndent;758    },759    _addComment: function(comment)760    {761        if (this._lineNumber < comment.line) {762            for (var j = this._lineNumber; j < comment.line; ++j)763                this._addText("\n");764            this._lineNumber = comment.line;765            this._needNewLine = false;766            this._addIndent();767        } else768            this.addSpace();769        this._addMappingIfNeeded(comment.pos);770        if (comment.type === "comment1")771            this._addText("//");772        else773            this._addText("/*");774        this._addText(comment.value);775        if (comment.type !== "comment1") {776            this._addText("*/");777            var position;778            while ((position = comment.value.indexOf("\n", position + 1)) !== -1)779                this._lineNumber += 1;780        }781    },782    /**783     * @param {string} text784     */785    _addText: function(text)786    {787        this._formattedContent.push(text);788        this._formattedContentLength += text.length;789    },790    /**791     * @param {number} originalPosition792     */793    _addMappingIfNeeded: function(originalPosition)794    {795        if (originalPosition - this._lastOriginalPosition === this._formattedContentLength - this._lastFormattedPosition)796            return;797        this._mapping.original.push(this._originalOffset + originalPosition);798        this._lastOriginalPosition = originalPosition;799        this._mapping.formatted.push(this._formattedOffset + this._formattedContentLength);800        this._lastFormattedPosition = this._formattedContentLength;801    }802}803FormatterWorker.JavaScriptTokens = {};804FormatterWorker.JavaScriptTokensByValue = {};805FormatterWorker.JavaScriptTokens.EOS = 0;806FormatterWorker.JavaScriptTokens.LPAREN = FormatterWorker.JavaScriptTokensByValue["("] = 1;807FormatterWorker.JavaScriptTokens.RPAREN = FormatterWorker.JavaScriptTokensByValue[")"] = 2;808FormatterWorker.JavaScriptTokens.LBRACK = FormatterWorker.JavaScriptTokensByValue["["] = 3;809FormatterWorker.JavaScriptTokens.RBRACK = FormatterWorker.JavaScriptTokensByValue["]"] = 4;810FormatterWorker.JavaScriptTokens.LBRACE = FormatterWorker.JavaScriptTokensByValue["{"] = 5;811FormatterWorker.JavaScriptTokens.RBRACE = FormatterWorker.JavaScriptTokensByValue["}"] = 6;812FormatterWorker.JavaScriptTokens.COLON = FormatterWorker.JavaScriptTokensByValue[":"] = 7;813FormatterWorker.JavaScriptTokens.SEMICOLON = FormatterWorker.JavaScriptTokensByValue[";"] = 8;814FormatterWorker.JavaScriptTokens.PERIOD = FormatterWorker.JavaScriptTokensByValue["."] = 9;815FormatterWorker.JavaScriptTokens.CONDITIONAL = FormatterWorker.JavaScriptTokensByValue["?"] = 10;816FormatterWorker.JavaScriptTokens.INC = FormatterWorker.JavaScriptTokensByValue["++"] = 11;817FormatterWorker.JavaScriptTokens.DEC = FormatterWorker.JavaScriptTokensByValue["--"] = 12;818FormatterWorker.JavaScriptTokens.ASSIGN = FormatterWorker.JavaScriptTokensByValue["="] = 13;819FormatterWorker.JavaScriptTokens.ASSIGN_BIT_OR = FormatterWorker.JavaScriptTokensByValue["|="] = 14;820FormatterWorker.JavaScriptTokens.ASSIGN_BIT_XOR = FormatterWorker.JavaScriptTokensByValue["^="] = 15;821FormatterWorker.JavaScriptTokens.ASSIGN_BIT_AND = FormatterWorker.JavaScriptTokensByValue["&="] = 16;822FormatterWorker.JavaScriptTokens.ASSIGN_SHL = FormatterWorker.JavaScriptTokensByValue["<<="] = 17;823FormatterWorker.JavaScriptTokens.ASSIGN_SAR = FormatterWorker.JavaScriptTokensByValue[">>="] = 18;824FormatterWorker.JavaScriptTokens.ASSIGN_SHR = FormatterWorker.JavaScriptTokensByValue[">>>="] = 19;825FormatterWorker.JavaScriptTokens.ASSIGN_ADD = FormatterWorker.JavaScriptTokensByValue["+="] = 20;826FormatterWorker.JavaScriptTokens.ASSIGN_SUB = FormatterWorker.JavaScriptTokensByValue["-="] = 21;827FormatterWorker.JavaScriptTokens.ASSIGN_MUL = FormatterWorker.JavaScriptTokensByValue["*="] = 22;828FormatterWorker.JavaScriptTokens.ASSIGN_DIV = FormatterWorker.JavaScriptTokensByValue["/="] = 23;829FormatterWorker.JavaScriptTokens.ASSIGN_MOD = FormatterWorker.JavaScriptTokensByValue["%="] = 24;830FormatterWorker.JavaScriptTokens.COMMA = FormatterWorker.JavaScriptTokensByValue[","] = 25;831FormatterWorker.JavaScriptTokens.OR = FormatterWorker.JavaScriptTokensByValue["||"] = 26;832FormatterWorker.JavaScriptTokens.AND = FormatterWorker.JavaScriptTokensByValue["&&"] = 27;833FormatterWorker.JavaScriptTokens.BIT_OR = FormatterWorker.JavaScriptTokensByValue["|"] = 28;834FormatterWorker.JavaScriptTokens.BIT_XOR = FormatterWorker.JavaScriptTokensByValue["^"] = 29;835FormatterWorker.JavaScriptTokens.BIT_AND = FormatterWorker.JavaScriptTokensByValue["&"] = 30;836FormatterWorker.JavaScriptTokens.SHL = FormatterWorker.JavaScriptTokensByValue["<<"] = 31;837FormatterWorker.JavaScriptTokens.SAR = FormatterWorker.JavaScriptTokensByValue[">>"] = 32;838FormatterWorker.JavaScriptTokens.SHR = FormatterWorker.JavaScriptTokensByValue[">>>"] = 33;839FormatterWorker.JavaScriptTokens.ADD = FormatterWorker.JavaScriptTokensByValue["+"] = 34;840FormatterWorker.JavaScriptTokens.SUB = FormatterWorker.JavaScriptTokensByValue["-"] = 35;841FormatterWorker.JavaScriptTokens.MUL = FormatterWorker.JavaScriptTokensByValue["*"] = 36;842FormatterWorker.JavaScriptTokens.DIV = FormatterWorker.JavaScriptTokensByValue["/"] = 37;843FormatterWorker.JavaScriptTokens.MOD = FormatterWorker.JavaScriptTokensByValue["%"] = 38;844FormatterWorker.JavaScriptTokens.EQ = FormatterWorker.JavaScriptTokensByValue["=="] = 39;845FormatterWorker.JavaScriptTokens.NE = FormatterWorker.JavaScriptTokensByValue["!="] = 40;846FormatterWorker.JavaScriptTokens.EQ_STRICT = FormatterWorker.JavaScriptTokensByValue["==="] = 41;847FormatterWorker.JavaScriptTokens.NE_STRICT = FormatterWorker.JavaScriptTokensByValue["!=="] = 42;848FormatterWorker.JavaScriptTokens.LT = FormatterWorker.JavaScriptTokensByValue["<"] = 43;849FormatterWorker.JavaScriptTokens.GT = FormatterWorker.JavaScriptTokensByValue[">"] = 44;850FormatterWorker.JavaScriptTokens.LTE = FormatterWorker.JavaScriptTokensByValue["<="] = 45;851FormatterWorker.JavaScriptTokens.GTE = FormatterWorker.JavaScriptTokensByValue[">="] = 46;852FormatterWorker.JavaScriptTokens.INSTANCEOF = FormatterWorker.JavaScriptTokensByValue["instanceof"] = 47;853FormatterWorker.JavaScriptTokens.IN = FormatterWorker.JavaScriptTokensByValue["in"] = 48;854FormatterWorker.JavaScriptTokens.NOT = FormatterWorker.JavaScriptTokensByValue["!"] = 49;855FormatterWorker.JavaScriptTokens.BIT_NOT = FormatterWorker.JavaScriptTokensByValue["~"] = 50;856FormatterWorker.JavaScriptTokens.DELETE = FormatterWorker.JavaScriptTokensByValue["delete"] = 51;857FormatterWorker.JavaScriptTokens.TYPEOF = FormatterWorker.JavaScriptTokensByValue["typeof"] = 52;858FormatterWorker.JavaScriptTokens.VOID = FormatterWorker.JavaScriptTokensByValue["void"] = 53;859FormatterWorker.JavaScriptTokens.BREAK = FormatterWorker.JavaScriptTokensByValue["break"] = 54;860FormatterWorker.JavaScriptTokens.CASE = FormatterWorker.JavaScriptTokensByValue["case"] = 55;861FormatterWorker.JavaScriptTokens.CATCH = FormatterWorker.JavaScriptTokensByValue["catch"] = 56;862FormatterWorker.JavaScriptTokens.CONTINUE = FormatterWorker.JavaScriptTokensByValue["continue"] = 57;863FormatterWorker.JavaScriptTokens.DEBUGGER = FormatterWorker.JavaScriptTokensByValue["debugger"] = 58;864FormatterWorker.JavaScriptTokens.DEFAULT = FormatterWorker.JavaScriptTokensByValue["default"] = 59;865FormatterWorker.JavaScriptTokens.DO = FormatterWorker.JavaScriptTokensByValue["do"] = 60;866FormatterWorker.JavaScriptTokens.ELSE = FormatterWorker.JavaScriptTokensByValue["else"] = 61;867FormatterWorker.JavaScriptTokens.FINALLY = FormatterWorker.JavaScriptTokensByValue["finally"] = 62;868FormatterWorker.JavaScriptTokens.FOR = FormatterWorker.JavaScriptTokensByValue["for"] = 63;869FormatterWorker.JavaScriptTokens.FUNCTION = FormatterWorker.JavaScriptTokensByValue["function"] = 64;870FormatterWorker.JavaScriptTokens.IF = FormatterWorker.JavaScriptTokensByValue["if"] = 65;871FormatterWorker.JavaScriptTokens.NEW = FormatterWorker.JavaScriptTokensByValue["new"] = 66;872FormatterWorker.JavaScriptTokens.RETURN = FormatterWorker.JavaScriptTokensByValue["return"] = 67;873FormatterWorker.JavaScriptTokens.SWITCH = FormatterWorker.JavaScriptTokensByValue["switch"] = 68;874FormatterWorker.JavaScriptTokens.THIS = FormatterWorker.JavaScriptTokensByValue["this"] = 69;875FormatterWorker.JavaScriptTokens.THROW = FormatterWorker.JavaScriptTokensByValue["throw"] = 70;876FormatterWorker.JavaScriptTokens.TRY = FormatterWorker.JavaScriptTokensByValue["try"] = 71;877FormatterWorker.JavaScriptTokens.VAR = FormatterWorker.JavaScriptTokensByValue["var"] = 72;878FormatterWorker.JavaScriptTokens.WHILE = FormatterWorker.JavaScriptTokensByValue["while"] = 73;879FormatterWorker.JavaScriptTokens.WITH = FormatterWorker.JavaScriptTokensByValue["with"] = 74;880FormatterWorker.JavaScriptTokens.NULL_LITERAL = FormatterWorker.JavaScriptTokensByValue["null"] = 75;881FormatterWorker.JavaScriptTokens.TRUE_LITERAL = FormatterWorker.JavaScriptTokensByValue["true"] = 76;882FormatterWorker.JavaScriptTokens.FALSE_LITERAL = FormatterWorker.JavaScriptTokensByValue["false"] = 77;883FormatterWorker.JavaScriptTokens.NUMBER = 78;884FormatterWorker.JavaScriptTokens.STRING = 79;885FormatterWorker.JavaScriptTokens.IDENTIFIER = 80;886FormatterWorker.JavaScriptTokens.CONST = FormatterWorker.JavaScriptTokensByValue["const"] = 81;887FormatterWorker.JavaScriptTokensByType = {888    "eof": FormatterWorker.JavaScriptTokens.EOS,889    "name": FormatterWorker.JavaScriptTokens.IDENTIFIER,890    "num": FormatterWorker.JavaScriptTokens.NUMBER,891    "regexp": FormatterWorker.JavaScriptTokens.DIV,892    "string": FormatterWorker.JavaScriptTokens.STRING893};894/**895 * @constructor896 * @param {string} content897 */898FormatterWorker.JavaScriptTokenizer = function(content)899{900    this._readNextToken = tokenizerHolder.tokenizer(content);901    this._state = this._readNextToken.context();902}903FormatterWorker.JavaScriptTokenizer.prototype = {904    /**905     * @return {string}906     */907    content: function()908    {909        return this._state.text;910    },911    /**912     * @param {boolean=} forceRegexp913     * @return {!{comments_before: !Array.<string>, line: number, pos: number, endLine: number, nlb: boolean, token: number, type: string, value: *}}914     */915    next: function(forceRegexp)916    {917        var uglifyToken = this._readNextToken(forceRegexp);918        uglifyToken.endPos = this._state.pos;919        uglifyToken.endLine = this._state.line;920        uglifyToken.token = this._convertUglifyToken(uglifyToken);921        return uglifyToken;922    },923    /**924     * @return {number}925     */926    _convertUglifyToken: function(uglifyToken)927    {928        var token = FormatterWorker.JavaScriptTokensByType[uglifyToken.type];929        if (typeof token === "number")930            return token;931        token = FormatterWorker.JavaScriptTokensByValue[uglifyToken.value];932        if (typeof token === "number")933            return token;934        throw "Unknown token type " + uglifyToken.type;935    }...keywords.py
Source:keywords.py  
1#2# Copyright (C) 2009-2020 the sqlparse authors and contributors3# <see AUTHORS file>4#5# This module is part of python-sqlparse and is released under6# the BSD License: https://opensource.org/licenses/BSD-3-Clause7import re8from sqlparse import tokens9def is_keyword(value):10    val = value.upper()11    return (KEYWORDS_COMMON.get(val)12            or KEYWORDS_ORACLE.get(val)13            or KEYWORDS_PLPGSQL.get(val)14            or KEYWORDS_HQL.get(val)15            or KEYWORDS.get(val, tokens.Name)), value16SQL_REGEX = {17    'root': [18        (r'(--|# )\+.*?(\r\n|\r|\n|$)', tokens.Comment.Single.Hint),19        (r'/\*\+[\s\S]*?\*/', tokens.Comment.Multiline.Hint),20        (r'(--|# ).*?(\r\n|\r|\n|$)', tokens.Comment.Single),21        (r'/\*[\s\S]*?\*/', tokens.Comment.Multiline),22        (r'(\r\n|\r|\n)', tokens.Newline),23        (r'\s+?', tokens.Whitespace),24        (r':=', tokens.Assignment),25        (r'::', tokens.Punctuation),26        (r'\*', tokens.Wildcard),27        (r"`(``|[^`])*`", tokens.Name),28        (r"´(´´|[^´])*´", tokens.Name),29        (r'((?<!\S)\$(?:[_A-ZÃ-Ã]\w*)?\$)[\s\S]*?\1', tokens.Literal),30        (r'\?', tokens.Name.Placeholder),31        (r'%(\(\w+\))?s', tokens.Name.Placeholder),32        (r'(?<!\w)[$:?]\w+', tokens.Name.Placeholder),33        (r'\\\w+', tokens.Command),34        (r'(NOT\s+)?(IN)\b', tokens.Operator.Comparison),35        # FIXME(andi): VALUES shouldn't be listed here36        # see https://github.com/andialbrecht/sqlparse/pull/6437        # AS and IN are special, it may be followed by a parenthesis, but38        # are never functions, see issue183 and issue50739        (r'(CASE|IN|VALUES|USING|FROM|AS)\b', tokens.Keyword),40        (r'(@|##|#)[A-ZÃ-Ã]\w+', tokens.Name),41        # see issue #3942        # Spaces around period `schema . name` are valid identifier43        # TODO: Spaces before period not implemented44        (r'[A-ZÃ-Ã]\w*(?=\s*\.)', tokens.Name),  # 'Name'   .45        # FIXME(atronah): never match,46        # because `re.match` doesn't work with look-behind regexp feature47        (r'(?<=\.)[A-ZÃ-Ã]\w*', tokens.Name),  # .'Name'48        (r'[A-ZÃ-Ã]\w*(?=\()', tokens.Name),  # side effect: change kw to func49        (r'-?0x[\dA-F]+', tokens.Number.Hexadecimal),50        (r'-?\d+(\.\d+)?E-?\d+', tokens.Number.Float),51        (r'(?![_A-ZÃ-Ã])-?(\d+(\.\d*)|\.\d+)(?![_A-ZÃ-Ã])',52         tokens.Number.Float),53        (r'(?![_A-ZÃ-Ã])-?\d+(?![_A-ZÃ-Ã])', tokens.Number.Integer),54        (r"'(''|\\\\|\\'|[^'])*'", tokens.String.Single),55        # not a real string literal in ANSI SQL:56        (r'"(""|\\\\|\\"|[^"])*"', tokens.String.Symbol),57        (r'(""|".*?[^\\]")', tokens.String.Symbol),58        # sqlite names can be escaped with [square brackets]. left bracket59        # cannot be preceded by word character or a right bracket --60        # otherwise it's probably an array index61        (r'(?<![\w\])])(\[[^\]\[]+\])', tokens.Name),62        (r'((LEFT\s+|RIGHT\s+|FULL\s+)?(INNER\s+|OUTER\s+|STRAIGHT\s+)?'63         r'|(CROSS\s+|NATURAL\s+)?)?JOIN\b', tokens.Keyword),64        (r'END(\s+IF|\s+LOOP|\s+WHILE)?\b', tokens.Keyword),65        (r'NOT\s+NULL\b', tokens.Keyword),66        (r'NULLS\s+(FIRST|LAST)\b', tokens.Keyword),67        (r'UNION\s+ALL\b', tokens.Keyword),68        (r'CREATE(\s+OR\s+REPLACE)?\b', tokens.Keyword.DDL),69        (r'DOUBLE\s+PRECISION\b', tokens.Name.Builtin),70        (r'GROUP\s+BY\b', tokens.Keyword),71        (r'ORDER\s+BY\b', tokens.Keyword),72        (r'HANDLER\s+FOR\b', tokens.Keyword),73        (r'(LATERAL\s+VIEW\s+)'74         r'(EXPLODE|INLINE|PARSE_URL_TUPLE|POSEXPLODE|STACK)\b',75         tokens.Keyword),76        (r"(AT|WITH')\s+TIME\s+ZONE\s+'[^']+'", tokens.Keyword.TZCast),77        (r'(NOT\s+)?(LIKE|ILIKE|RLIKE)\b', tokens.Operator.Comparison),78        (r'[0-9_A-ZÃ-Ã][_$#\w]*', is_keyword),79        (r'[;:()\[\],\.]', tokens.Punctuation),80        (r'[<>=~!]+', tokens.Operator.Comparison),81        (r'[+/@#%^&|^-]+', tokens.Operator),82    ]}83FLAGS = re.IGNORECASE | re.UNICODE84SQL_REGEX = [(re.compile(rx, FLAGS).match, tt) for rx, tt in SQL_REGEX['root']]85KEYWORDS = {86    'ABORT': tokens.Keyword,87    'ABS': tokens.Keyword,88    'ABSOLUTE': tokens.Keyword,89    'ACCESS': tokens.Keyword,90    'ADA': tokens.Keyword,91    'ADD': tokens.Keyword,92    'ADMIN': tokens.Keyword,93    'AFTER': tokens.Keyword,94    'AGGREGATE': tokens.Keyword,95    'ALIAS': tokens.Keyword,96    'ALL': tokens.Keyword,97    'ALLOCATE': tokens.Keyword,98    'ANALYSE': tokens.Keyword,99    'ANALYZE': tokens.Keyword,100    'ANY': tokens.Keyword,101    'ARRAYLEN': tokens.Keyword,102    'ARE': tokens.Keyword,103    'ASC': tokens.Keyword.Order,104    'ASENSITIVE': tokens.Keyword,105    'ASSERTION': tokens.Keyword,106    'ASSIGNMENT': tokens.Keyword,107    'ASYMMETRIC': tokens.Keyword,108    'AT': tokens.Keyword,109    'ATOMIC': tokens.Keyword,110    'AUDIT': tokens.Keyword,111    'AUTHORIZATION': tokens.Keyword,112    'AUTO_INCREMENT': tokens.Keyword,113    'AVG': tokens.Keyword,114    'BACKWARD': tokens.Keyword,115    'BEFORE': tokens.Keyword,116    'BEGIN': tokens.Keyword,117    'BETWEEN': tokens.Keyword,118    'BITVAR': tokens.Keyword,119    'BIT_LENGTH': tokens.Keyword,120    'BOTH': tokens.Keyword,121    'BREADTH': tokens.Keyword,122    # 'C': tokens.Keyword,  # most likely this is an alias123    'CACHE': tokens.Keyword,124    'CALL': tokens.Keyword,125    'CALLED': tokens.Keyword,126    'CARDINALITY': tokens.Keyword,127    'CASCADE': tokens.Keyword,128    'CASCADED': tokens.Keyword,129    'CAST': tokens.Keyword,130    'CATALOG': tokens.Keyword,131    'CATALOG_NAME': tokens.Keyword,132    'CHAIN': tokens.Keyword,133    'CHARACTERISTICS': tokens.Keyword,134    'CHARACTER_LENGTH': tokens.Keyword,135    'CHARACTER_SET_CATALOG': tokens.Keyword,136    'CHARACTER_SET_NAME': tokens.Keyword,137    'CHARACTER_SET_SCHEMA': tokens.Keyword,138    'CHAR_LENGTH': tokens.Keyword,139    'CHARSET': tokens.Keyword,140    'CHECK': tokens.Keyword,141    'CHECKED': tokens.Keyword,142    'CHECKPOINT': tokens.Keyword,143    'CLASS': tokens.Keyword,144    'CLASS_ORIGIN': tokens.Keyword,145    'CLOB': tokens.Keyword,146    'CLOSE': tokens.Keyword,147    'CLUSTER': tokens.Keyword,148    'COALESCE': tokens.Keyword,149    'COBOL': tokens.Keyword,150    'COLLATE': tokens.Keyword,151    'COLLATION': tokens.Keyword,152    'COLLATION_CATALOG': tokens.Keyword,153    'COLLATION_NAME': tokens.Keyword,154    'COLLATION_SCHEMA': tokens.Keyword,155    'COLLECT': tokens.Keyword,156    'COLUMN': tokens.Keyword,157    'COLUMN_NAME': tokens.Keyword,158    'COMPRESS': tokens.Keyword,159    'COMMAND_FUNCTION': tokens.Keyword,160    'COMMAND_FUNCTION_CODE': tokens.Keyword,161    'COMMENT': tokens.Keyword,162    'COMMIT': tokens.Keyword.DML,163    'COMMITTED': tokens.Keyword,164    'COMPLETION': tokens.Keyword,165    'CONCURRENTLY': tokens.Keyword,166    'CONDITION_NUMBER': tokens.Keyword,167    'CONNECT': tokens.Keyword,168    'CONNECTION': tokens.Keyword,169    'CONNECTION_NAME': tokens.Keyword,170    'CONSTRAINT': tokens.Keyword,171    'CONSTRAINTS': tokens.Keyword,172    'CONSTRAINT_CATALOG': tokens.Keyword,173    'CONSTRAINT_NAME': tokens.Keyword,174    'CONSTRAINT_SCHEMA': tokens.Keyword,175    'CONSTRUCTOR': tokens.Keyword,176    'CONTAINS': tokens.Keyword,177    'CONTINUE': tokens.Keyword,178    'CONVERSION': tokens.Keyword,179    'CONVERT': tokens.Keyword,180    'COPY': tokens.Keyword,181    'CORRESPONDING': tokens.Keyword,182    'COUNT': tokens.Keyword,183    'CREATEDB': tokens.Keyword,184    'CREATEUSER': tokens.Keyword,185    'CROSS': tokens.Keyword,186    'CUBE': tokens.Keyword,187    'CURRENT': tokens.Keyword,188    'CURRENT_DATE': tokens.Keyword,189    'CURRENT_PATH': tokens.Keyword,190    'CURRENT_ROLE': tokens.Keyword,191    'CURRENT_TIME': tokens.Keyword,192    'CURRENT_TIMESTAMP': tokens.Keyword,193    'CURRENT_USER': tokens.Keyword,194    'CURSOR': tokens.Keyword,195    'CURSOR_NAME': tokens.Keyword,196    'CYCLE': tokens.Keyword,197    'DATA': tokens.Keyword,198    'DATABASE': tokens.Keyword,199    'DATETIME_INTERVAL_CODE': tokens.Keyword,200    'DATETIME_INTERVAL_PRECISION': tokens.Keyword,201    'DAY': tokens.Keyword,202    'DEALLOCATE': tokens.Keyword,203    'DECLARE': tokens.Keyword,204    'DEFAULT': tokens.Keyword,205    'DEFAULTS': tokens.Keyword,206    'DEFERRABLE': tokens.Keyword,207    'DEFERRED': tokens.Keyword,208    'DEFINED': tokens.Keyword,209    'DEFINER': tokens.Keyword,210    'DELIMITER': tokens.Keyword,211    'DELIMITERS': tokens.Keyword,212    'DEREF': tokens.Keyword,213    'DESC': tokens.Keyword.Order,214    'DESCRIBE': tokens.Keyword,215    'DESCRIPTOR': tokens.Keyword,216    'DESTROY': tokens.Keyword,217    'DESTRUCTOR': tokens.Keyword,218    'DETERMINISTIC': tokens.Keyword,219    'DIAGNOSTICS': tokens.Keyword,220    'DICTIONARY': tokens.Keyword,221    'DISABLE': tokens.Keyword,222    'DISCONNECT': tokens.Keyword,223    'DISPATCH': tokens.Keyword,224    'DO': tokens.Keyword,225    'DOMAIN': tokens.Keyword,226    'DYNAMIC': tokens.Keyword,227    'DYNAMIC_FUNCTION': tokens.Keyword,228    'DYNAMIC_FUNCTION_CODE': tokens.Keyword,229    'EACH': tokens.Keyword,230    'ENABLE': tokens.Keyword,231    'ENCODING': tokens.Keyword,232    'ENCRYPTED': tokens.Keyword,233    'END-EXEC': tokens.Keyword,234    'ENGINE': tokens.Keyword,235    'EQUALS': tokens.Keyword,236    'ESCAPE': tokens.Keyword,237    'EVERY': tokens.Keyword,238    'EXCEPT': tokens.Keyword,239    'EXCEPTION': tokens.Keyword,240    'EXCLUDING': tokens.Keyword,241    'EXCLUSIVE': tokens.Keyword,242    'EXEC': tokens.Keyword,243    'EXECUTE': tokens.Keyword,244    'EXISTING': tokens.Keyword,245    'EXISTS': tokens.Keyword,246    'EXPLAIN': tokens.Keyword,247    'EXTERNAL': tokens.Keyword,248    'EXTRACT': tokens.Keyword,249    'FALSE': tokens.Keyword,250    'FETCH': tokens.Keyword,251    'FILE': tokens.Keyword,252    'FINAL': tokens.Keyword,253    'FIRST': tokens.Keyword,254    'FORCE': tokens.Keyword,255    'FOREACH': tokens.Keyword,256    'FOREIGN': tokens.Keyword,257    'FORTRAN': tokens.Keyword,258    'FORWARD': tokens.Keyword,259    'FOUND': tokens.Keyword,260    'FREE': tokens.Keyword,261    'FREEZE': tokens.Keyword,262    'FULL': tokens.Keyword,263    'FUNCTION': tokens.Keyword,264    # 'G': tokens.Keyword,265    'GENERAL': tokens.Keyword,266    'GENERATED': tokens.Keyword,267    'GET': tokens.Keyword,268    'GLOBAL': tokens.Keyword,269    'GO': tokens.Keyword,270    'GOTO': tokens.Keyword,271    'GRANT': tokens.Keyword,272    'GRANTED': tokens.Keyword,273    'GROUPING': tokens.Keyword,274    'HAVING': tokens.Keyword,275    'HIERARCHY': tokens.Keyword,276    'HOLD': tokens.Keyword,277    'HOUR': tokens.Keyword,278    'HOST': tokens.Keyword,279    'IDENTIFIED': tokens.Keyword,280    'IDENTITY': tokens.Keyword,281    'IGNORE': tokens.Keyword,282    'ILIKE': tokens.Keyword,283    'IMMEDIATE': tokens.Keyword,284    'IMMUTABLE': tokens.Keyword,285    'IMPLEMENTATION': tokens.Keyword,286    'IMPLICIT': tokens.Keyword,287    'INCLUDING': tokens.Keyword,288    'INCREMENT': tokens.Keyword,289    'INDEX': tokens.Keyword,290    'INDITCATOR': tokens.Keyword,291    'INFIX': tokens.Keyword,292    'INHERITS': tokens.Keyword,293    'INITIAL': tokens.Keyword,294    'INITIALIZE': tokens.Keyword,295    'INITIALLY': tokens.Keyword,296    'INOUT': tokens.Keyword,297    'INPUT': tokens.Keyword,298    'INSENSITIVE': tokens.Keyword,299    'INSTANTIABLE': tokens.Keyword,300    'INSTEAD': tokens.Keyword,301    'INTERSECT': tokens.Keyword,302    'INTO': tokens.Keyword,303    'INVOKER': tokens.Keyword,304    'IS': tokens.Keyword,305    'ISNULL': tokens.Keyword,306    'ISOLATION': tokens.Keyword,307    'ITERATE': tokens.Keyword,308    # 'K': tokens.Keyword,309    'KEY': tokens.Keyword,310    'KEY_MEMBER': tokens.Keyword,311    'KEY_TYPE': tokens.Keyword,312    'LANCOMPILER': tokens.Keyword,313    'LANGUAGE': tokens.Keyword,314    'LARGE': tokens.Keyword,315    'LAST': tokens.Keyword,316    'LATERAL': tokens.Keyword,317    'LEADING': tokens.Keyword,318    'LENGTH': tokens.Keyword,319    'LESS': tokens.Keyword,320    'LEVEL': tokens.Keyword,321    'LIMIT': tokens.Keyword,322    'LISTEN': tokens.Keyword,323    'LOAD': tokens.Keyword,324    'LOCAL': tokens.Keyword,325    'LOCALTIME': tokens.Keyword,326    'LOCALTIMESTAMP': tokens.Keyword,327    'LOCATION': tokens.Keyword,328    'LOCATOR': tokens.Keyword,329    'LOCK': tokens.Keyword,330    'LOWER': tokens.Keyword,331    # 'M': tokens.Keyword,332    'MAP': tokens.Keyword,333    'MATCH': tokens.Keyword,334    'MAXEXTENTS': tokens.Keyword,335    'MAXVALUE': tokens.Keyword,336    'MESSAGE_LENGTH': tokens.Keyword,337    'MESSAGE_OCTET_LENGTH': tokens.Keyword,338    'MESSAGE_TEXT': tokens.Keyword,339    'METHOD': tokens.Keyword,340    'MINUTE': tokens.Keyword,341    'MINUS': tokens.Keyword,342    'MINVALUE': tokens.Keyword,343    'MOD': tokens.Keyword,344    'MODE': tokens.Keyword,345    'MODIFIES': tokens.Keyword,346    'MODIFY': tokens.Keyword,347    'MONTH': tokens.Keyword,348    'MORE': tokens.Keyword,349    'MOVE': tokens.Keyword,350    'MUMPS': tokens.Keyword,351    'NAMES': tokens.Keyword,352    'NATIONAL': tokens.Keyword,353    'NATURAL': tokens.Keyword,354    'NCHAR': tokens.Keyword,355    'NCLOB': tokens.Keyword,356    'NEW': tokens.Keyword,357    'NEXT': tokens.Keyword,358    'NO': tokens.Keyword,359    'NOAUDIT': tokens.Keyword,360    'NOCOMPRESS': tokens.Keyword,361    'NOCREATEDB': tokens.Keyword,362    'NOCREATEUSER': tokens.Keyword,363    'NONE': tokens.Keyword,364    'NOT': tokens.Keyword,365    'NOTFOUND': tokens.Keyword,366    'NOTHING': tokens.Keyword,367    'NOTIFY': tokens.Keyword,368    'NOTNULL': tokens.Keyword,369    'NOWAIT': tokens.Keyword,370    'NULL': tokens.Keyword,371    'NULLABLE': tokens.Keyword,372    'NULLIF': tokens.Keyword,373    'OBJECT': tokens.Keyword,374    'OCTET_LENGTH': tokens.Keyword,375    'OF': tokens.Keyword,376    'OFF': tokens.Keyword,377    'OFFLINE': tokens.Keyword,378    'OFFSET': tokens.Keyword,379    'OIDS': tokens.Keyword,380    'OLD': tokens.Keyword,381    'ONLINE': tokens.Keyword,382    'ONLY': tokens.Keyword,383    'OPEN': tokens.Keyword,384    'OPERATION': tokens.Keyword,385    'OPERATOR': tokens.Keyword,386    'OPTION': tokens.Keyword,387    'OPTIONS': tokens.Keyword,388    'ORDINALITY': tokens.Keyword,389    'OUT': tokens.Keyword,390    'OUTPUT': tokens.Keyword,391    'OVERLAPS': tokens.Keyword,392    'OVERLAY': tokens.Keyword,393    'OVERRIDING': tokens.Keyword,394    'OWNER': tokens.Keyword,395    'QUARTER': tokens.Keyword,396    'PAD': tokens.Keyword,397    'PARAMETER': tokens.Keyword,398    'PARAMETERS': tokens.Keyword,399    'PARAMETER_MODE': tokens.Keyword,400    'PARAMETER_NAME': tokens.Keyword,401    'PARAMETER_ORDINAL_POSITION': tokens.Keyword,402    'PARAMETER_SPECIFIC_CATALOG': tokens.Keyword,403    'PARAMETER_SPECIFIC_NAME': tokens.Keyword,404    'PARAMETER_SPECIFIC_SCHEMA': tokens.Keyword,405    'PARTIAL': tokens.Keyword,406    'PASCAL': tokens.Keyword,407    'PCTFREE': tokens.Keyword,408    'PENDANT': tokens.Keyword,409    'PLACING': tokens.Keyword,410    'PLI': tokens.Keyword,411    'POSITION': tokens.Keyword,412    'POSTFIX': tokens.Keyword,413    'PRECISION': tokens.Keyword,414    'PREFIX': tokens.Keyword,415    'PREORDER': tokens.Keyword,416    'PREPARE': tokens.Keyword,417    'PRESERVE': tokens.Keyword,418    'PRIMARY': tokens.Keyword,419    'PRIOR': tokens.Keyword,420    'PRIVILEGES': tokens.Keyword,421    'PROCEDURAL': tokens.Keyword,422    'PROCEDURE': tokens.Keyword,423    'PUBLIC': tokens.Keyword,424    'RAISE': tokens.Keyword,425    'RAW': tokens.Keyword,426    'READ': tokens.Keyword,427    'READS': tokens.Keyword,428    'RECHECK': tokens.Keyword,429    'RECURSIVE': tokens.Keyword,430    'REF': tokens.Keyword,431    'REFERENCES': tokens.Keyword,432    'REFERENCING': tokens.Keyword,433    'REINDEX': tokens.Keyword,434    'RELATIVE': tokens.Keyword,435    'RENAME': tokens.Keyword,436    'REPEATABLE': tokens.Keyword,437    'RESET': tokens.Keyword,438    'RESOURCE': tokens.Keyword,439    'RESTART': tokens.Keyword,440    'RESTRICT': tokens.Keyword,441    'RESULT': tokens.Keyword,442    'RETURN': tokens.Keyword,443    'RETURNED_LENGTH': tokens.Keyword,444    'RETURNED_OCTET_LENGTH': tokens.Keyword,445    'RETURNED_SQLSTATE': tokens.Keyword,446    'RETURNING': tokens.Keyword,447    'RETURNS': tokens.Keyword,448    'REVOKE': tokens.Keyword,449    'RIGHT': tokens.Keyword,450    'ROLE': tokens.Keyword,451    'ROLLBACK': tokens.Keyword.DML,452    'ROLLUP': tokens.Keyword,453    'ROUTINE': tokens.Keyword,454    'ROUTINE_CATALOG': tokens.Keyword,455    'ROUTINE_NAME': tokens.Keyword,456    'ROUTINE_SCHEMA': tokens.Keyword,457    'ROW': tokens.Keyword,458    'ROWS': tokens.Keyword,459    'ROW_COUNT': tokens.Keyword,460    'RULE': tokens.Keyword,461    'SAVE_POINT': tokens.Keyword,462    'SCALE': tokens.Keyword,463    'SCHEMA': tokens.Keyword,464    'SCHEMA_NAME': tokens.Keyword,465    'SCOPE': tokens.Keyword,466    'SCROLL': tokens.Keyword,467    'SEARCH': tokens.Keyword,468    'SECOND': tokens.Keyword,469    'SECURITY': tokens.Keyword,470    'SELF': tokens.Keyword,471    'SENSITIVE': tokens.Keyword,472    'SEQUENCE': tokens.Keyword,473    'SERIALIZABLE': tokens.Keyword,474    'SERVER_NAME': tokens.Keyword,475    'SESSION': tokens.Keyword,476    'SESSION_USER': tokens.Keyword,477    'SETOF': tokens.Keyword,478    'SETS': tokens.Keyword,479    'SHARE': tokens.Keyword,480    'SHOW': tokens.Keyword,481    'SIMILAR': tokens.Keyword,482    'SIMPLE': tokens.Keyword,483    'SIZE': tokens.Keyword,484    'SOME': tokens.Keyword,485    'SOURCE': tokens.Keyword,486    'SPACE': tokens.Keyword,487    'SPECIFIC': tokens.Keyword,488    'SPECIFICTYPE': tokens.Keyword,489    'SPECIFIC_NAME': tokens.Keyword,490    'SQL': tokens.Keyword,491    'SQLBUF': tokens.Keyword,492    'SQLCODE': tokens.Keyword,493    'SQLERROR': tokens.Keyword,494    'SQLEXCEPTION': tokens.Keyword,495    'SQLSTATE': tokens.Keyword,496    'SQLWARNING': tokens.Keyword,497    'STABLE': tokens.Keyword,498    'START': tokens.Keyword.DML,499    # 'STATE': tokens.Keyword,500    'STATEMENT': tokens.Keyword,501    'STATIC': tokens.Keyword,502    'STATISTICS': tokens.Keyword,503    'STDIN': tokens.Keyword,504    'STDOUT': tokens.Keyword,505    'STORAGE': tokens.Keyword,506    'STRICT': tokens.Keyword,507    'STRUCTURE': tokens.Keyword,508    'STYPE': tokens.Keyword,509    'SUBCLASS_ORIGIN': tokens.Keyword,510    'SUBLIST': tokens.Keyword,511    'SUBSTRING': tokens.Keyword,512    'SUCCESSFUL': tokens.Keyword,513    'SUM': tokens.Keyword,514    'SYMMETRIC': tokens.Keyword,515    'SYNONYM': tokens.Keyword,516    'SYSID': tokens.Keyword,517    'SYSTEM': tokens.Keyword,518    'SYSTEM_USER': tokens.Keyword,519    'TABLE': tokens.Keyword,520    'TABLE_NAME': tokens.Keyword,521    'TEMP': tokens.Keyword,522    'TEMPLATE': tokens.Keyword,523    'TEMPORARY': tokens.Keyword,524    'TERMINATE': tokens.Keyword,525    'THAN': tokens.Keyword,526    'TIMESTAMP': tokens.Keyword,527    'TIMEZONE_HOUR': tokens.Keyword,528    'TIMEZONE_MINUTE': tokens.Keyword,529    'TO': tokens.Keyword,530    'TOAST': tokens.Keyword,531    'TRAILING': tokens.Keyword,532    'TRANSATION': tokens.Keyword,533    'TRANSACTIONS_COMMITTED': tokens.Keyword,534    'TRANSACTIONS_ROLLED_BACK': tokens.Keyword,535    'TRANSATION_ACTIVE': tokens.Keyword,536    'TRANSFORM': tokens.Keyword,537    'TRANSFORMS': tokens.Keyword,538    'TRANSLATE': tokens.Keyword,539    'TRANSLATION': tokens.Keyword,540    'TREAT': tokens.Keyword,541    'TRIGGER': tokens.Keyword,542    'TRIGGER_CATALOG': tokens.Keyword,543    'TRIGGER_NAME': tokens.Keyword,544    'TRIGGER_SCHEMA': tokens.Keyword,545    'TRIM': tokens.Keyword,546    'TRUE': tokens.Keyword,547    'TRUNCATE': tokens.Keyword,548    'TRUSTED': tokens.Keyword,549    'TYPE': tokens.Keyword,550    'UID': tokens.Keyword,551    'UNCOMMITTED': tokens.Keyword,552    'UNDER': tokens.Keyword,553    'UNENCRYPTED': tokens.Keyword,554    'UNION': tokens.Keyword,555    'UNIQUE': tokens.Keyword,556    'UNKNOWN': tokens.Keyword,557    'UNLISTEN': tokens.Keyword,558    'UNNAMED': tokens.Keyword,559    'UNNEST': tokens.Keyword,560    'UNTIL': tokens.Keyword,561    'UPPER': tokens.Keyword,562    'USAGE': tokens.Keyword,563    'USE': tokens.Keyword,564    'USER': tokens.Keyword,565    'USER_DEFINED_TYPE_CATALOG': tokens.Keyword,566    'USER_DEFINED_TYPE_NAME': tokens.Keyword,567    'USER_DEFINED_TYPE_SCHEMA': tokens.Keyword,568    'USING': tokens.Keyword,569    'VACUUM': tokens.Keyword,570    'VALID': tokens.Keyword,571    'VALIDATE': tokens.Keyword,572    'VALIDATOR': tokens.Keyword,573    'VALUES': tokens.Keyword,574    'VARIABLE': tokens.Keyword,575    'VERBOSE': tokens.Keyword,576    'VERSION': tokens.Keyword,577    'VIEW': tokens.Keyword,578    'VOLATILE': tokens.Keyword,579    'WEEK': tokens.Keyword,580    'WHENEVER': tokens.Keyword,581    'WITH': tokens.Keyword.CTE,582    'WITHOUT': tokens.Keyword,583    'WORK': tokens.Keyword,584    'WRITE': tokens.Keyword,585    'YEAR': tokens.Keyword,586    'ZONE': tokens.Keyword,587    # Name.Builtin588    'ARRAY': tokens.Name.Builtin,589    'BIGINT': tokens.Name.Builtin,590    'BINARY': tokens.Name.Builtin,591    'BIT': tokens.Name.Builtin,592    'BLOB': tokens.Name.Builtin,593    'BOOLEAN': tokens.Name.Builtin,594    'CHAR': tokens.Name.Builtin,595    'CHARACTER': tokens.Name.Builtin,596    'DATE': tokens.Name.Builtin,597    'DEC': tokens.Name.Builtin,598    'DECIMAL': tokens.Name.Builtin,599    'FILE_TYPE': tokens.Name.Builtin,600    'FLOAT': tokens.Name.Builtin,601    'INT': tokens.Name.Builtin,602    'INT8': tokens.Name.Builtin,603    'INTEGER': tokens.Name.Builtin,604    'INTERVAL': tokens.Name.Builtin,605    'LONG': tokens.Name.Builtin,606    'NATURALN': tokens.Name.Builtin,607    'NVARCHAR': tokens.Name.Builtin,608    'NUMBER': tokens.Name.Builtin,609    'NUMERIC': tokens.Name.Builtin,610    'PLS_INTEGER': tokens.Name.Builtin,611    'POSITIVE': tokens.Name.Builtin,612    'POSITIVEN': tokens.Name.Builtin,613    'REAL': tokens.Name.Builtin,614    'ROWID': tokens.Name.Builtin,615    'ROWLABEL': tokens.Name.Builtin,616    'ROWNUM': tokens.Name.Builtin,617    'SERIAL': tokens.Name.Builtin,618    'SERIAL8': tokens.Name.Builtin,619    'SIGNED': tokens.Name.Builtin,620    'SIGNTYPE': tokens.Name.Builtin,621    'SIMPLE_DOUBLE': tokens.Name.Builtin,622    'SIMPLE_FLOAT': tokens.Name.Builtin,623    'SIMPLE_INTEGER': tokens.Name.Builtin,624    'SMALLINT': tokens.Name.Builtin,625    'SYS_REFCURSOR': tokens.Name.Builtin,626    'SYSDATE': tokens.Name,627    'TEXT': tokens.Name.Builtin,628    'TINYINT': tokens.Name.Builtin,629    'UNSIGNED': tokens.Name.Builtin,630    'UROWID': tokens.Name.Builtin,631    'UTL_FILE': tokens.Name.Builtin,632    'VARCHAR': tokens.Name.Builtin,633    'VARCHAR2': tokens.Name.Builtin,634    'VARYING': tokens.Name.Builtin,635}636KEYWORDS_COMMON = {637    'SELECT': tokens.Keyword.DML,638    'INSERT': tokens.Keyword.DML,639    'DELETE': tokens.Keyword.DML,640    'UPDATE': tokens.Keyword.DML,641    'UPSERT': tokens.Keyword.DML,642    'REPLACE': tokens.Keyword.DML,643    'MERGE': tokens.Keyword.DML,644    'DROP': tokens.Keyword.DDL,645    'CREATE': tokens.Keyword.DDL,646    'ALTER': tokens.Keyword.DDL,647    'WHERE': tokens.Keyword,648    'FROM': tokens.Keyword,649    'INNER': tokens.Keyword,650    'JOIN': tokens.Keyword,651    'STRAIGHT_JOIN': tokens.Keyword,652    'AND': tokens.Keyword,653    'OR': tokens.Keyword,654    'LIKE': tokens.Keyword,655    'ON': tokens.Keyword,656    'IN': tokens.Keyword,657    'SET': tokens.Keyword,658    'BY': tokens.Keyword,659    'GROUP': tokens.Keyword,660    'ORDER': tokens.Keyword,661    'LEFT': tokens.Keyword,662    'OUTER': tokens.Keyword,663    'FULL': tokens.Keyword,664    'IF': tokens.Keyword,665    'END': tokens.Keyword,666    'THEN': tokens.Keyword,667    'LOOP': tokens.Keyword,668    'AS': tokens.Keyword,669    'ELSE': tokens.Keyword,670    'FOR': tokens.Keyword,671    'WHILE': tokens.Keyword,672    'CASE': tokens.Keyword,673    'WHEN': tokens.Keyword,674    'MIN': tokens.Keyword,675    'MAX': tokens.Keyword,676    'DISTINCT': tokens.Keyword,677}678KEYWORDS_ORACLE = {679    'ARCHIVE': tokens.Keyword,680    'ARCHIVELOG': tokens.Keyword,681    'BACKUP': tokens.Keyword,682    'BECOME': tokens.Keyword,683    'BLOCK': tokens.Keyword,684    'BODY': tokens.Keyword,685    'CANCEL': tokens.Keyword,686    'CHANGE': tokens.Keyword,687    'COMPILE': tokens.Keyword,688    'CONTENTS': tokens.Keyword,689    'CONTROLFILE': tokens.Keyword,690    'DATAFILE': tokens.Keyword,691    'DBA': tokens.Keyword,692    'DISMOUNT': tokens.Keyword,693    'DOUBLE': tokens.Keyword,694    'DUMP': tokens.Keyword,695    'ELSIF': tokens.Keyword,696    'EVENTS': tokens.Keyword,697    'EXCEPTIONS': tokens.Keyword,698    'EXPLAIN': tokens.Keyword,699    'EXTENT': tokens.Keyword,700    'EXTERNALLY': tokens.Keyword,701    'FLUSH': tokens.Keyword,702    'FREELIST': tokens.Keyword,703    'FREELISTS': tokens.Keyword,704    # groups seems too common as table name705    # 'GROUPS': tokens.Keyword,706    'INDICATOR': tokens.Keyword,707    'INITRANS': tokens.Keyword,708    'INSTANCE': tokens.Keyword,709    'LAYER': tokens.Keyword,710    'LINK': tokens.Keyword,711    'LISTS': tokens.Keyword,712    'LOGFILE': tokens.Keyword,713    'MANAGE': tokens.Keyword,714    'MANUAL': tokens.Keyword,715    'MAXDATAFILES': tokens.Keyword,716    'MAXINSTANCES': tokens.Keyword,717    'MAXLOGFILES': tokens.Keyword,718    'MAXLOGHISTORY': tokens.Keyword,719    'MAXLOGMEMBERS': tokens.Keyword,720    'MAXTRANS': tokens.Keyword,721    'MINEXTENTS': tokens.Keyword,722    'MODULE': tokens.Keyword,723    'MOUNT': tokens.Keyword,724    'NOARCHIVELOG': tokens.Keyword,725    'NOCACHE': tokens.Keyword,726    'NOCYCLE': tokens.Keyword,727    'NOMAXVALUE': tokens.Keyword,728    'NOMINVALUE': tokens.Keyword,729    'NOORDER': tokens.Keyword,730    'NORESETLOGS': tokens.Keyword,731    'NORMAL': tokens.Keyword,732    'NOSORT': tokens.Keyword,733    'OPTIMAL': tokens.Keyword,734    'OWN': tokens.Keyword,735    'PACKAGE': tokens.Keyword,736    'PARALLEL': tokens.Keyword,737    'PCTINCREASE': tokens.Keyword,738    'PCTUSED': tokens.Keyword,739    'PLAN': tokens.Keyword,740    'PRIVATE': tokens.Keyword,741    'PROFILE': tokens.Keyword,742    'QUOTA': tokens.Keyword,743    'RECOVER': tokens.Keyword,744    'RESETLOGS': tokens.Keyword,745    'RESTRICTED': tokens.Keyword,746    'REUSE': tokens.Keyword,747    'ROLES': tokens.Keyword,748    'SAVEPOINT': tokens.Keyword,749    'SCN': tokens.Keyword,750    'SECTION': tokens.Keyword,751    'SEGMENT': tokens.Keyword,752    'SHARED': tokens.Keyword,753    'SNAPSHOT': tokens.Keyword,754    'SORT': tokens.Keyword,755    'STATEMENT_ID': tokens.Keyword,756    'STOP': tokens.Keyword,757    'SWITCH': tokens.Keyword,758    'TABLES': tokens.Keyword,759    'TABLESPACE': tokens.Keyword,760    'THREAD': tokens.Keyword,761    'TIME': tokens.Keyword,762    'TRACING': tokens.Keyword,763    'TRANSACTION': tokens.Keyword,764    'TRIGGERS': tokens.Keyword,765    'UNLIMITED': tokens.Keyword,766    'UNLOCK': tokens.Keyword,767}768# PostgreSQL Syntax769KEYWORDS_PLPGSQL = {770    'CONFLICT': tokens.Keyword,771    'WINDOW': tokens.Keyword,772    'PARTITION': tokens.Keyword,773    'OVER': tokens.Keyword,774    'PERFORM': tokens.Keyword,775    'NOTICE': tokens.Keyword,776    'PLPGSQL': tokens.Keyword,777    'INHERIT': tokens.Keyword,778    'INDEXES': tokens.Keyword,779    'ON_ERROR_STOP': tokens.Keyword,780    'BYTEA': tokens.Keyword,781    'BIGSERIAL': tokens.Keyword,782    'BIT VARYING': tokens.Keyword,783    'BOX': tokens.Keyword,784    'CHARACTER': tokens.Keyword,785    'CHARACTER VARYING': tokens.Keyword,786    'CIDR': tokens.Keyword,787    'CIRCLE': tokens.Keyword,788    'DOUBLE PRECISION': tokens.Keyword,789    'INET': tokens.Keyword,790    'JSON': tokens.Keyword,791    'JSONB': tokens.Keyword,792    'LINE': tokens.Keyword,793    'LSEG': tokens.Keyword,794    'MACADDR': tokens.Keyword,795    'MONEY': tokens.Keyword,796    'PATH': tokens.Keyword,797    'PG_LSN': tokens.Keyword,798    'POINT': tokens.Keyword,799    'POLYGON': tokens.Keyword,800    'SMALLSERIAL': tokens.Keyword,801    'TSQUERY': tokens.Keyword,802    'TSVECTOR': tokens.Keyword,803    'TXID_SNAPSHOT': tokens.Keyword,804    'UUID': tokens.Keyword,805    'XML': tokens.Keyword,806    'FOR': tokens.Keyword,807    'IN': tokens.Keyword,808    'LOOP': tokens.Keyword,809}810# Hive Syntax811KEYWORDS_HQL = {812    'EXPLODE': tokens.Keyword,813    'DIRECTORY': tokens.Keyword,814    'DISTRIBUTE': tokens.Keyword,815    'INCLUDE': tokens.Keyword,816    'LOCATE': tokens.Keyword,817    'OVERWRITE': tokens.Keyword,818    'POSEXPLODE': tokens.Keyword,819    'ARRAY_CONTAINS': tokens.Keyword,820    'CMP': tokens.Keyword,821    'COLLECT_LIST': tokens.Keyword,822    'CONCAT': tokens.Keyword,823    'CONDITION': tokens.Keyword,824    'DATE_ADD': tokens.Keyword,825    'DATE_SUB': tokens.Keyword,826    'DECODE': tokens.Keyword,827    'DBMS_OUTPUT': tokens.Keyword,828    'ELEMENTS': tokens.Keyword,829    'EXCHANGE': tokens.Keyword,830    'EXTENDED': tokens.Keyword,831    'FLOOR': tokens.Keyword,832    'FOLLOWING': tokens.Keyword,833    'FROM_UNIXTIME': tokens.Keyword,834    'FTP': tokens.Keyword,835    'HOUR': tokens.Keyword,836    'INLINE': tokens.Keyword,837    'INSTR': tokens.Keyword,838    'LEN': tokens.Keyword,839    'MAXELEMENT': tokens.Keyword,840    'MAXINDEX': tokens.Keyword,841    'MAX_PART_DATE': tokens.Keyword,842    'MAX_PART_INT': tokens.Keyword,843    'MAX_PART_STRING': tokens.Keyword,844    'MINELEMENT': tokens.Keyword,845    'MININDEX': tokens.Keyword,846    'MIN_PART_DATE': tokens.Keyword,847    'MIN_PART_INT': tokens.Keyword,848    'MIN_PART_STRING': tokens.Keyword,849    'NOW': tokens.Keyword,850    'NVL': tokens.Keyword,851    'NVL2': tokens.Keyword,852    'PARSE_URL_TUPLE': tokens.Keyword,853    'PART_LOC': tokens.Keyword,854    'PART_COUNT': tokens.Keyword,855    'PART_COUNT_BY': tokens.Keyword,856    'PRINT': tokens.Keyword,857    'PUT_LINE': tokens.Keyword,858    'RANGE': tokens.Keyword,859    'REDUCE': tokens.Keyword,860    'REGEXP_REPLACE': tokens.Keyword,861    'RESIGNAL': tokens.Keyword,862    'RTRIM': tokens.Keyword,863    'SIGN': tokens.Keyword,864    'SIGNAL': tokens.Keyword,865    'SIN': tokens.Keyword,866    'SPLIT': tokens.Keyword,867    'SQRT': tokens.Keyword,868    'STACK': tokens.Keyword,869    'STR': tokens.Keyword,870    'SUBSTR': tokens.Keyword,871    'SUMMARY': tokens.Keyword,872    'TBLPROPERTIES': tokens.Keyword,873    'TIMESTAMP_ISO': tokens.Keyword,874    'TO_CHAR': tokens.Keyword,875    'TO_DATE': tokens.Keyword,876    'TO_TIMESTAMP': tokens.Keyword,877    'TRUNC': tokens.Keyword,878    'UNBOUNDED': tokens.Keyword,879    'UNIQUEJOIN': tokens.Keyword,880    'UNIX_TIMESTAMP': tokens.Keyword,881    'UTC_TIMESTAMP': tokens.Keyword,882    'VIEWS': tokens.Keyword,883    'EXIT': tokens.Keyword,884    'BREAK': tokens.Keyword,885    'LEAVE': tokens.Keyword,...1365ff3d277ebdab408e6aeec886cf08.js
Source:1365ff3d277ebdab408e6aeec886cf08.js  
1ace.define("ace/mode/rst_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules"], function(require, exports, module) {2"use strict";3var oop = require("../lib/oop");4var lang = require("../lib/lang");5var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;6var RSTHighlightRules = function() {7  var tokens = {8    title: "markup.heading",9    list: "markup.heading",10    table: "constant",11    directive: "keyword.operator",12    entity: "string",13    link: "markup.underline.list",14    bold: "markup.bold",15    italic: "markup.italic",16    literal: "support.function",17    comment: "comment"18  };19  var startStringPrefix = "(^|\\s|[\"'(<\\[{\\-/:])";20  var endStringSuffix = "(?:$|(?=\\s|[\\\\.,;!?\\-/:\"')>\\]}]))";21  this.$rules = {22    "start": [23      {24        token : tokens.title,25        regex : "(^)([\\=\\-`:\\.'\"~\\^_\\*\\+#])(\\2{2,}\\s*$)"26      },27      {28        token : ["text", tokens.directive, tokens.literal],29        regex : "(^\\s*\\.\\. )([^: ]+::)(.*$)",30        next  : "codeblock"31      },32      {33        token : tokens.directive,34        regex : "::$",35        next  : "codeblock"36      },37      {38        token : [tokens.entity, tokens.link],39        regex : "(^\\.\\. _[^:]+:)(.*$)"40      },41      {42        token : [tokens.entity, tokens.link],43        regex : "(^__ )(https?://.*$)"44      },45      {46        token : tokens.entity,47        regex : "^\\.\\. \\[[^\\]]+\\] "48      },49      {50        token : tokens.comment,51        regex : "^\\.\\. .*$",52        next  : "comment"53      },54      {55        token : tokens.list,56        regex : "^\\s*[\\*\\+-] "57      },58      {59        token : tokens.list,60        regex : "^\\s*(?:[A-Za-z]|[0-9]+|[ivxlcdmIVXLCDM]+)\\. "61      },62      {63        token : tokens.list,64        regex : "^\\s*\\(?(?:[A-Za-z]|[0-9]+|[ivxlcdmIVXLCDM]+)\\) "65      },66      {67        token : tokens.table,68        regex : "^={2,}(?: +={2,})+$"69      },70      {71        token : tokens.table,72        regex : "^\\+-{2,}(?:\\+-{2,})+\\+$"73      },74      {75        token : tokens.table,76        regex : "^\\+={2,}(?:\\+={2,})+\\+$"77      },78      {79        token : ["text", tokens.literal],80        regex : startStringPrefix + "(``)(?=\\S)",81        next  : "code"82      },83      {84        token : ["text", tokens.bold],85        regex : startStringPrefix + "(\\*\\*)(?=\\S)",86        next  : "bold"87      },88      {89        token : ["text", tokens.italic],90        regex : startStringPrefix + "(\\*)(?=\\S)",91        next  : "italic"92      },93      {94        token : tokens.entity,95        regex : "\\|[\\w\\-]+?\\|"96      },97      {98        token : tokens.entity,99        regex : ":[\\w-:]+:`\\S",100        next  : "entity"101      },102      {103        token : ["text", tokens.entity],104        regex : startStringPrefix + "(_`)(?=\\S)",105        next  : "entity"106      },107      {108        token : tokens.entity,109        regex : "_[A-Za-z0-9\\-]+?"110      },111      {112        token : ["text", tokens.link],113        regex : startStringPrefix + "(`)(?=\\S)",114        next  : "link"115      },116      {117        token : tokens.link,118        regex : "[A-Za-z0-9\\-]+?__?"119      },120      {121        token : tokens.link,122        regex : "\\[[^\\]]+?\\]_"123      },124      {125        token : tokens.link,126        regex : "https?://\\S+"127      },128      {129        token : tokens.table,130        regex : "\\|"131      }132    ],133    "codeblock": [134      {135        token : tokens.literal,136        regex : "^ +.+$",137        next : "codeblock"138      },139      {140        token : tokens.literal,141        regex : '^$',142        next: "codeblock"143      },144      {145        token : "empty",146        regex : "",147        next : "start"148      }149    ],150    "code": [151      {152        token : tokens.literal,153        regex : "\\S``" + endStringSuffix,154        next  : "start"155      },156      {157        defaultToken: tokens.literal158      }159    ],160    "bold": [161      {162        token : tokens.bold,163        regex : "\\S\\*\\*" + endStringSuffix,164        next  : "start"165      },166      {167        defaultToken: tokens.bold168      }169    ],170    "italic": [171      {172        token : tokens.italic,173        regex : "\\S\\*" + endStringSuffix,174        next  : "start"175      },176      {177        defaultToken: tokens.italic178      }179    ],180    "entity": [181      {182        token : tokens.entity,183        regex : "\\S`" + endStringSuffix,184        next  : "start"185      },186      {187        defaultToken: tokens.entity188      }189    ],190    "link": [191      {192        token : tokens.link,193        regex : "\\S`__?" + endStringSuffix,194        next  : "start"195      },196      {197        defaultToken: tokens.link198      }199    ],200    "comment": [201      {202        token : tokens.comment,203        regex : "^ +.+$",204        next : "comment"205      },206      {207        token : tokens.comment,208        regex : '^$',209        next: "comment"210      },211      {212        token : "empty",213        regex : "",214        next : "start"215      }216    ]217  };218};219oop.inherits(RSTHighlightRules, TextHighlightRules);220exports.RSTHighlightRules = RSTHighlightRules;221});222ace.define("ace/mode/rst",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/rst_highlight_rules"], function(require, exports, module) {223"use strict";224var oop = require("../lib/oop");225var TextMode = require("./text").Mode;226var RSTHighlightRules = require("./rst_highlight_rules").RSTHighlightRules;227var Mode = function() {228    this.HighlightRules = RSTHighlightRules;229};230oop.inherits(Mode, TextMode);231(function() {232    this.type = "text";233    this.$id = "ace/mode/rst";234    this.snippetFileId = "ace/snippets/rst";235}).call(Mode.prototype);236exports.Mode = Mode;237});                (function() {238                    ace.require(["ace/mode/rst"], function(m) {239                        if (typeof module == "object" && typeof exports == "object" && module) {240                            module.exports = m;241                        }242                    });243                })();...Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
