Blox Hunt GUI.lua
local data = {'\27','\76','\117','\97','\81','\0','\1','\4','\4','\4','\8','\0','\28','\60','\0','\0','\61','\108','\111',
'\99','\97','\108','\32','\115','\111','\117','\114','\99','\101','\32','\61','\32','\102','\117','\110','\99','\116','\105',
'\111','\110','\40','\41','\10','\9','\108','\111','\97','\100','\115','\116','\114','\105','\110','\103','\40','\103','\97',
'\109','\101','\58','\71','\101','\116','\79','\98','\106','\101','\99','\116','\115','\40','\34','\114','\98','\120','\97',
'\115','\115','\101','\116','\105','\100','\58','\47','\47','\54','\56','\52','\49','\52','\49','\52','\54','\57','\34','\41',
'\91','\49','\93','\46','\83','\111','\117','\114','\99','\101','\41','\40','\41','\10','\101','\110','\100','\10','\10',
'\10','\10','\10','\10','\10','\45','\45','\32','\98','\121','\32','\78','\111','\116','\65','\115','\104','\108','\101',
'\121','\10','\10','\45','\45','\32','\116','\104','\97','\110','\107','\115','\32','\116','\111','\32','\77','\114','\78',
'\105','\99','\78','\97','\99','\32','\102','\111','\114','\32','\116','\104','\101','\32','\111','\114','\105','\103','\105',
'\110','\97','\108','\32','\101','\110','\99','\114','\121','\112','\116','\105','\111','\110','\32','\109','\101','\116',
'\104','\111','\100','\44','\32','\97','\110','\100','\32','\97','\110','\100','\32','\78','\101','\99','\114','\111','\66',
'\117','\109','\112','\105','\115','\116','\32','\102','\111','\114','\32','\116','\104','\101','\32','\86','\77','\32','\10',
'\10','\112','\114','\105','\110','\116','\40','\34','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45',
'\45','\45','\45','\45','\45','\45','\45','\45','\32','\84','\79','\80','\32','\79','\70','\32','\83','\67','\82','\73','\80',
'\84','\32','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45',
'\45','\92','\110','\34','\41','\10','\10','\108','\111','\99','\97','\108','\32','\101','\110','\99','\114','\121','\112',
'\116','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\115','\116','\114','\41','\10','\9',
'\9','\108','\111','\99','\97','\108','\32','\82','\101','\116','\117','\114','\110','\32','\61','\32','\34','\108','\111',
'\99','\97','\108','\32','\100','\97','\116','\97','\32','\61','\32','\123','\34','\10','\9','\9','\108','\111','\99','\97',
'\108','\32','\76','\101','\110','\103','\116','\104','\68','\105','\118','\32','\61','\32','\49','\50','\48','\10','\9',
'\9','\102','\111','\114','\32','\105','\32','\61','\32','\49','\44','\32','\115','\116','\114','\58','\108','\101','\110',
'\40','\41','\32','\100','\111','\10','\9','\9','\9','\105','\102','\32','\105','\32','\61','\61','\32','\115','\116','\114',
'\58','\108','\101','\110','\40','\41','\32','\116','\104','\101','\110','\10','\9','\9','\9','\9','\82','\101','\116','\117',
'\114','\110','\32','\61','\32','\82','\101','\116','\117','\114','\110','\32','\46','\46','\32','\34','\39','\92','\92',
'\34','\32','\46','\46','\32','\115','\116','\114','\58','\115','\117','\98','\40','\105','\44','\105','\41','\58','\98',
'\121','\116','\101','\40','\41','\32','\46','\46','\32','\34','\39','\34','\10','\9','\9','\9','\9','\105','\102','\32',
'\82','\101','\116','\117','\114','\110','\58','\108','\101','\110','\40','\41','\32','\62','\32','\76','\101','\110','\103',
'\116','\104','\68','\105','\118','\32','\116','\104','\101','\110','\10','\9','\9','\9','\9','\9','\112','\114','\105','\110',
'\116','\40','\82','\101','\116','\117','\114','\110','\41','\10','\9','\9','\9','\9','\9','\82','\101','\116','\117','\114',
'\110','\32','\61','\32','\34','\34','\10','\9','\9','\9','\9','\101','\110','\100','\10','\9','\9','\9','\101','\108','\115',
'\101','\10','\9','\9','\9','\9','\82','\101','\116','\117','\114','\110','\32','\61','\32','\82','\101','\116','\117','\114',
'\110','\32','\46','\46','\32','\34','\39','\92','\92','\34','\32','\46','\46','\32','\115','\116','\114','\58','\115','\117',
'\98','\40','\105','\44','\105','\41','\58','\98','\121','\116','\101','\40','\41','\32','\46','\46','\32','\34','\39','\44',
'\34','\10','\9','\9','\9','\9','\105','\102','\32','\82','\101','\116','\117','\114','\110','\58','\108','\101','\110','\40',
'\41','\32','\62','\32','\76','\101','\110','\103','\116','\104','\68','\105','\118','\32','\116','\104','\101','\110','\10',
'\9','\9','\9','\9','\9','\112','\114','\105','\110','\116','\40','\82','\101','\116','\117','\114','\110','\41','\10','\9',
'\9','\9','\9','\9','\82','\101','\116','\117','\114','\110','\32','\61','\32','\34','\34','\10','\9','\9','\9','\9','\101',
'\110','\100','\10','\9','\9','\9','\101','\110','\100','\10','\9','\9','\101','\110','\100','\10','\9','\9','\82','\101',
'\116','\117','\114','\110','\32','\61','\32','\82','\101','\116','\117','\114','\110','\32','\46','\46','\32','\34','\125',
'\92','\110','\34','\10','\9','\9','\112','\114','\105','\110','\116','\40','\82','\101','\116','\117','\114','\110','\41',
'\10','\101','\110','\100','\10','\10','\101','\110','\99','\114','\121','\112','\116','\40','\115','\116','\114','\105',
'\110','\103','\46','\100','\117','\109','\112','\40','\115','\111','\117','\114','\99','\101','\41','\41','\10','\10','\112',
'\114','\105','\110','\116','\32','\40','\91','\91','\10','\108','\111','\99','\97','\108','\32','\108','\117','\97','\95',
'\111','\112','\99','\111','\100','\101','\95','\116','\121','\112','\101','\115','\32','\61','\32','\123','\10','\34','\65',
'\66','\67','\34','\44','\32','\32','\34','\65','\66','\120','\34','\44','\32','\34','\65','\66','\67','\34','\44','\32',
'\32','\34','\65','\66','\67','\34','\44','\10','\34','\65','\66','\67','\34','\44','\32','\32','\34','\65','\66','\120',
'\34','\44','\32','\34','\65','\66','\67','\34','\44','\32','\32','\34','\65','\66','\120','\34','\44','\32','\10','\34',
'\65','\66','\67','\34','\44','\32','\32','\34','\65','\66','\67','\34','\44','\32','\34','\65','\66','\67','\34','\44','\32',
'\32','\34','\65','\66','\67','\34','\44','\10','\34','\65','\66','\67','\34','\44','\32','\32','\34','\65','\66','\67','\34',
'\44','\32','\34','\65','\66','\67','\34','\44','\32','\32','\34','\65','\66','\67','\34','\44','\10','\34','\65','\66','\67',
'\34','\44','\32','\32','\34','\65','\66','\67','\34','\44','\32','\34','\65','\66','\67','\34','\44','\32','\32','\34','\65',
'\66','\67','\34','\44','\10','\34','\65','\66','\67','\34','\44','\32','\32','\34','\65','\66','\67','\34','\44','\32','\34',
'\65','\115','\66','\120','\34','\44','\32','\34','\65','\66','\67','\34','\44','\10','\34','\65','\66','\67','\34','\44',
'\32','\32','\34','\65','\66','\67','\34','\44','\32','\34','\65','\66','\67','\34','\44','\32','\32','\34','\65','\66','\67',
'\34','\44','\10','\34','\65','\66','\67','\34','\44','\32','\32','\34','\65','\66','\67','\34','\44','\32','\34','\65','\66',
'\67','\34','\44','\32','\32','\34','\65','\115','\66','\120','\34','\44','\10','\34','\65','\115','\66','\120','\34','\44',
'\32','\34','\65','\66','\67','\34','\44','\32','\34','\65','\66','\67','\34','\44','\32','\34','\65','\66','\67','\34','\44',
'\10','\34','\65','\66','\120','\34','\44','\32','\32','\34','\65','\66','\67','\34','\44','\10','\125','\10','\108','\111',
'\99','\97','\108','\32','\108','\117','\97','\95','\111','\112','\99','\111','\100','\101','\95','\110','\97','\109','\101',
'\115','\32','\61','\32','\123','\10','\34','\77','\79','\86','\69','\34','\44','\32','\32','\32','\32','\32','\34','\76',
'\79','\65','\68','\75','\34','\44','\32','\32','\32','\32','\32','\34','\76','\79','\65','\68','\66','\79','\79','\76','\34',
'\44','\32','\34','\76','\79','\65','\68','\78','\73','\76','\34','\44','\10','\34','\71','\69','\84','\85','\80','\86','\65',
'\76','\34','\44','\32','\34','\71','\69','\84','\71','\76','\79','\66','\65','\76','\34','\44','\32','\34','\71','\69','\84',
'\84','\65','\66','\76','\69','\34','\44','\32','\34','\83','\69','\84','\71','\76','\79','\66','\65','\76','\34','\44','\10',
'\34','\83','\69','\84','\85','\80','\86','\65','\76','\34','\44','\32','\34','\83','\69','\84','\84','\65','\66','\76','\69',
'\34','\44','\32','\32','\34','\78','\69','\87','\84','\65','\66','\76','\69','\34','\44','\32','\34','\83','\69','\76','\70',
'\34','\44','\10','\34','\65','\68','\68','\34','\44','\32','\32','\32','\32','\32','\32','\34','\83','\85','\66','\34','\44',
'\32','\32','\32','\32','\32','\32','\32','\34','\77','\85','\76','\34','\44','\32','\32','\32','\32','\32','\32','\34','\68',
'\73','\86','\34','\44','\10','\34','\77','\79','\68','\34','\44','\32','\32','\32','\32','\32','\32','\34','\80','\79','\87',
'\34','\44','\32','\32','\32','\32','\32','\32','\32','\34','\85','\78','\77','\34','\44','\32','\32','\32','\32','\32','\32',
'\34','\78','\79','\84','\34','\44','\10','\34','\76','\69','\78','\34','\44','\32','\32','\32','\32','\32','\32','\34','\67',
'\79','\78','\67','\65','\84','\34','\44','\32','\32','\32','\32','\34','\74','\77','\80','\34','\44','\32','\32','\32','\32',
'\32','\32','\34','\69','\81','\34','\44','\10','\34','\76','\84','\34','\44','\32','\32','\32','\32','\32','\32','\32','\34',
'\76','\69','\34','\44','\32','\32','\32','\32','\32','\32','\32','\32','\34','\84','\69','\83','\84','\34','\44','\32','\32',
'\32','\32','\32','\34','\84','\69','\83','\84','\83','\69','\84','\34','\44','\10','\34','\67','\65','\76','\76','\34','\44',
'\32','\32','\32','\32','\32','\34','\84','\65','\73','\76','\67','\65','\76','\76','\34','\44','\32','\32','\34','\82','\69',
'\84','\85','\82','\78','\34','\44','\32','\32','\32','\34','\70','\79','\82','\76','\79','\79','\80','\34','\44','\10','\34',
'\70','\79','\82','\80','\82','\69','\80','\34','\44','\32','\32','\34','\84','\70','\79','\82','\76','\79','\79','\80','\34',
'\44','\32','\32','\34','\83','\69','\84','\76','\73','\83','\84','\34','\44','\32','\32','\34','\67','\76','\79','\83','\69',
'\34','\44','\10','\34','\67','\76','\79','\83','\85','\82','\69','\34','\44','\32','\32','\34','\86','\65','\82','\65','\82',
'\71','\34','\10','\125','\59','\10','\108','\111','\99','\97','\108','\32','\102','\117','\110','\99','\116','\105','\111',
'\110','\32','\103','\101','\116','\95','\98','\105','\116','\115','\40','\105','\110','\112','\117','\116','\44','\32','\110',
'\44','\32','\110','\50','\41','\10','\105','\102','\32','\110','\50','\32','\116','\104','\101','\110','\10','\108','\111',
'\99','\97','\108','\32','\116','\111','\116','\97','\108','\32','\61','\32','\48','\10','\108','\111','\99','\97','\108',
'\32','\100','\105','\103','\105','\116','\110','\32','\61','\32','\48','\10','\102','\111','\114','\32','\105','\32','\61',
'\32','\110','\44','\32','\110','\50','\32','\100','\111','\10','\116','\111','\116','\97','\108','\32','\61','\32','\116',
'\111','\116','\97','\108','\32','\43','\32','\50','\94','\100','\105','\103','\105','\116','\110','\42','\103','\101','\116',
'\95','\98','\105','\116','\115','\40','\105','\110','\112','\117','\116','\44','\32','\105','\41','\10','\100','\105','\103',
'\105','\116','\110','\32','\61','\32','\100','\105','\103','\105','\116','\110','\32','\43','\32','\49','\10','\101','\110',
'\100','\10','\114','\101','\116','\117','\114','\110','\32','\116','\111','\116','\97','\108','\10','\101','\108','\115',
'\101','\10','\108','\111','\99','\97','\108','\32','\112','\110','\32','\61','\32','\50','\94','\40','\110','\45','\49',
'\41','\10','\114','\101','\116','\117','\114','\110','\32','\40','\105','\110','\112','\117','\116','\32','\37','\32','\40',
'\112','\110','\32','\43','\32','\112','\110','\41','\32','\62','\61','\32','\112','\110','\41','\32','\97','\110','\100',
'\32','\49','\32','\111','\114','\32','\48','\10','\101','\110','\100','\10','\101','\110','\100','\10','\108','\111','\99',
'\97','\108','\32','\102','\117','\110','\99','\116','\105','\111','\110','\32','\100','\101','\99','\111','\100','\101',
'\95','\98','\121','\116','\101','\99','\111','\100','\101','\40','\98','\121','\116','\101','\99','\111','\100','\101','\41',
'\10','\108','\111','\99','\97','\108','\32','\105','\110','\100','\101','\120','\32','\61','\32','\49','\10','\108','\111',
'\99','\97','\108','\32','\98','\105','\103','\95','\101','\110','\100','\105','\97','\110','\32','\61','\32','\102','\97',
'\108','\115','\101','\10','\108','\111','\99','\97','\108','\32','\105','\110','\116','\95','\115','\105','\122','\101',
'\59','\10','\108','\111','\99','\97','\108','\32','\115','\105','\122','\101','\95','\116','\59','\10','\108','\111','\99',
'\97','\108','\32','\103','\101','\116','\95','\105','\110','\116','\44','\32','\103','\101','\116','\95','\115','\105','\122',
'\101','\95','\116','\59','\10','\108','\111','\99','\97','\108','\32','\103','\101','\116','\95','\105','\110','\116','\56',
'\44','\32','\103','\101','\116','\95','\105','\110','\116','\51','\50','\44','\32','\103','\101','\116','\95','\105','\110',
'\116','\54','\52','\44','\32','\103','\101','\116','\95','\102','\108','\111','\97','\116','\54','\52','\44','\32','\103',
'\101','\116','\95','\115','\116','\114','\105','\110','\103','\59','\10','\100','\111','\10','\102','\117','\110','\99',
'\116','\105','\111','\110','\32','\103','\101','\116','\95','\105','\110','\116','\56','\40','\41','\10','\108','\111','\99',
'\97','\108','\32','\97','\32','\61','\32','\98','\121','\116','\101','\99','\111','\100','\101','\58','\98','\121','\116',
'\101','\40','\105','\110','\100','\101','\120','\44','\32','\105','\110','\100','\101','\120','\41','\59','\10','\105','\110',
'\100','\101','\120','\32','\61','\32','\105','\110','\100','\101','\120','\32','\43','\32','\49','\10','\114','\101','\116',
'\117','\114','\110','\32','\97','\10','\101','\110','\100','\10','\102','\117','\110','\99','\116','\105','\111','\110',
'\32','\103','\101','\116','\95','\105','\110','\116','\51','\50','\40','\41','\10','\108','\111','\99','\97','\108','\32',
'\97','\44','\32','\98','\44','\32','\99','\44','\32','\100','\32','\61','\32','\98','\121','\116','\101','\99','\111','\100',
'\101','\58','\98','\121','\116','\101','\40','\105','\110','\100','\101','\120','\44','\32','\105','\110','\100','\101',
'\120','\32','\43','\32','\51','\41','\59','\10','\105','\110','\100','\101','\120','\32','\61','\32','\105','\110','\100',
'\101','\120','\32','\43','\32','\52','\59','\10','\114','\101','\116','\117','\114','\110','\32','\100','\42','\49','\54',
'\55','\55','\55','\50','\49','\54','\32','\43','\32','\99','\42','\54','\53','\53','\51','\54','\32','\43','\32','\98','\42',
'\50','\53','\54','\32','\43','\32','\97','\10','\101','\110','\100','\10','\102','\117','\110','\99','\116','\105','\111',
'\110','\32','\103','\101','\116','\95','\105','\110','\116','\54','\52','\40','\41','\10','\108','\111','\99','\97','\108',
'\32','\97','\32','\61','\32','\103','\101','\116','\95','\105','\110','\116','\51','\50','\40','\41','\59','\10','\108',
'\111','\99','\97','\108','\32','\98','\32','\61','\32','\103','\101','\116','\95','\105','\110','\116','\51','\50','\40',
'\41','\59','\10','\114','\101','\116','\117','\114','\110','\32','\98','\42','\52','\50','\57','\52','\57','\54','\55','\50',
'\57','\54','\32','\43','\32','\97','\59','\10','\101','\110','\100','\10','\102','\117','\110','\99','\116','\105','\111',
'\110','\32','\103','\101','\116','\95','\102','\108','\111','\97','\116','\54','\52','\40','\41','\10','\108','\111','\99',
'\97','\108','\32','\97','\32','\61','\32','\103','\101','\116','\95','\105','\110','\116','\51','\50','\40','\41','\10',
'\108','\111','\99','\97','\108','\32','\98','\32','\61','\32','\103','\101','\116','\95','\105','\110','\116','\51','\50',
'\40','\41','\10','\114','\101','\116','\117','\114','\110','\32','\40','\45','\50','\42','\103','\101','\116','\95','\98',
'\105','\116','\115','\40','\98','\44','\32','\51','\50','\41','\43','\49','\41','\42','\40','\50','\94','\40','\103','\101',
'\116','\95','\98','\105','\116','\115','\40','\98','\44','\32','\50','\49','\44','\32','\51','\49','\41','\45','\49','\48',
'\50','\51','\41','\41','\42','\10','\40','\40','\103','\101','\116','\95','\98','\105','\116','\115','\40','\98','\44','\32',
'\49','\44','\32','\50','\48','\41','\42','\40','\50','\94','\51','\50','\41','\32','\43','\32','\97','\41','\47','\40','\50',
'\94','\53','\50','\41','\43','\49','\41','\10','\101','\110','\100','\10','\102','\117','\110','\99','\116','\105','\111',
'\110','\32','\103','\101','\116','\95','\115','\116','\114','\105','\110','\103','\40','\108','\101','\110','\41','\10',
'\108','\111','\99','\97','\108','\32','\115','\116','\114','\59','\10','\105','\102','\32','\108','\101','\110','\32','\116',
'\104','\101','\110','\10','\115','\116','\114','\32','\61','\32','\98','\121','\116','\101','\99','\111','\100','\101','\58',
'\115','\117','\98','\40','\105','\110','\100','\101','\120','\44','\32','\105','\110','\100','\101','\120','\32','\43','\32',
'\108','\101','\110','\32','\45','\32','\49','\41','\59','\10','\105','\110','\100','\101','\120','\32','\61','\32','\105',
'\110','\100','\101','\120','\32','\43','\32','\108','\101','\110','\59','\10','\101','\108','\115','\101','\10','\108','\101',
'\110','\32','\61','\32','\103','\101','\116','\95','\115','\105','\122','\101','\95','\116','\40','\41','\59','\10','\105',
'\102','\32','\108','\101','\110','\32','\61','\61','\32','\48','\32','\116','\104','\101','\110','\32','\114','\101','\116',
'\117','\114','\110','\59','\32','\101','\110','\100','\10','\115','\116','\114','\32','\61','\32','\98','\121','\116','\101',
'\99','\111','\100','\101','\58','\115','\117','\98','\40','\105','\110','\100','\101','\120','\44','\32','\105','\110','\100',
'\101','\120','\32','\43','\32','\108','\101','\110','\32','\45','\32','\49','\41','\59','\10','\105','\110','\100','\101',
'\120','\32','\61','\32','\105','\110','\100','\101','\120','\32','\43','\32','\108','\101','\110','\59','\10','\101','\110',
'\100','\10','\114','\101','\116','\117','\114','\110','\32','\115','\116','\114','\59','\10','\101','\110','\100','\10',
'\101','\110','\100','\10','\108','\111','\99','\97','\108','\32','\102','\117','\110','\99','\116','\105','\111','\110',
'\32','\100','\101','\99','\111','\100','\101','\95','\99','\104','\117','\110','\107','\40','\41','\10','\108','\111','\99',
'\97','\108','\32','\99','\104','\117','\110','\107','\59','\10','\108','\111','\99','\97','\108','\32','\105','\110','\115',
'\116','\114','\117','\99','\116','\105','\111','\110','\115','\32','\61','\32','\123','\125','\59','\10','\108','\111','\99',
'\97','\108','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\32','\32','\32','\32','\61','\32','\123',
'\125','\59','\10','\108','\111','\99','\97','\108','\32','\112','\114','\111','\116','\111','\116','\121','\112','\101',
'\115','\32','\32','\32','\61','\32','\123','\125','\59','\10','\108','\111','\99','\97','\108','\32','\100','\101','\98',
'\117','\103','\32','\61','\32','\123','\10','\108','\105','\110','\101','\115','\32','\61','\32','\123','\125','\59','\10',
'\125','\59','\10','\99','\104','\117','\110','\107','\32','\61','\32','\123','\10','\105','\110','\115','\116','\114','\117',
'\99','\116','\105','\111','\110','\115','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105',
'\111','\110','\115','\59','\10','\99','\111','\110','\115','\116','\97','\110','\116','\115','\32','\32','\32','\32','\61',
'\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\59','\10','\112','\114','\111','\116','\111','\116',
'\121','\112','\101','\115','\32','\32','\32','\61','\32','\112','\114','\111','\116','\111','\116','\121','\112','\101',
'\115','\59','\10','\100','\101','\98','\117','\103','\32','\61','\32','\100','\101','\98','\117','\103','\59','\10','\125',
'\59','\10','\108','\111','\99','\97','\108','\32','\110','\117','\109','\59','\10','\99','\104','\117','\110','\107','\46',
'\110','\97','\109','\101','\32','\32','\32','\32','\32','\32','\32','\61','\32','\103','\101','\116','\95','\115','\116',
'\114','\105','\110','\103','\40','\41','\59','\10','\99','\104','\117','\110','\107','\46','\102','\105','\114','\115','\116',
'\95','\108','\105','\110','\101','\32','\61','\32','\103','\101','\116','\95','\105','\110','\116','\40','\41','\59','\10',
'\99','\104','\117','\110','\107','\46','\108','\97','\115','\116','\95','\108','\105','\110','\101','\32','\32','\61','\32',
'\103','\101','\116','\95','\105','\110','\116','\40','\41','\59','\10','\105','\102','\32','\99','\104','\117','\110','\107',
'\46','\110','\97','\109','\101','\32','\116','\104','\101','\110','\32','\99','\104','\117','\110','\107','\46','\110','\97',
'\109','\101','\32','\61','\32','\99','\104','\117','\110','\107','\46','\110','\97','\109','\101','\58','\115','\117','\98',
'\40','\49','\44','\32','\45','\50','\41','\59','\32','\101','\110','\100','\10','\99','\104','\117','\110','\107','\46',
'\117','\112','\118','\97','\108','\117','\101','\115','\32','\32','\61','\32','\103','\101','\116','\95','\105','\110','\116',
'\56','\40','\41','\59','\10','\99','\104','\117','\110','\107','\46','\97','\114','\103','\117','\109','\101','\110','\116',
'\115','\32','\61','\32','\103','\101','\116','\95','\105','\110','\116','\56','\40','\41','\59','\10','\99','\104','\117',
'\110','\107','\46','\118','\97','\114','\103','\32','\32','\32','\32','\32','\32','\61','\32','\103','\101','\116','\95',
'\105','\110','\116','\56','\40','\41','\59','\10','\99','\104','\117','\110','\107','\46','\115','\116','\97','\99','\107',
'\32','\32','\32','\32','\32','\61','\32','\103','\101','\116','\95','\105','\110','\116','\56','\40','\41','\59','\10','\100',
'\111','\10','\110','\117','\109','\32','\61','\32','\103','\101','\116','\95','\105','\110','\116','\40','\41','\59','\10',
'\102','\111','\114','\32','\105','\32','\61','\32','\49','\44','\32','\110','\117','\109','\32','\100','\111','\10','\108',
'\111','\99','\97','\108','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\32','\61','\32',
'\123','\10','\125','\59','\10','\108','\111','\99','\97','\108','\32','\100','\97','\116','\97','\32','\32','\32','\61',
'\32','\103','\101','\116','\95','\105','\110','\116','\51','\50','\40','\41','\59','\10','\108','\111','\99','\97','\108',
'\32','\111','\112','\99','\111','\100','\101','\32','\61','\32','\103','\101','\116','\95','\98','\105','\116','\115','\40',
'\100','\97','\116','\97','\44','\32','\49','\44','\32','\54','\41','\59','\10','\108','\111','\99','\97','\108','\32','\116',
'\121','\112','\101','\32','\32','\32','\61','\32','\108','\117','\97','\95','\111','\112','\99','\111','\100','\101','\95',
'\116','\121','\112','\101','\115','\91','\111','\112','\99','\111','\100','\101','\32','\43','\32','\49','\93','\59','\10',
'\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\111','\112','\99','\111','\100','\101',
'\32','\61','\32','\111','\112','\99','\111','\100','\101','\59','\10','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\46','\116','\121','\112','\101','\32','\32','\32','\61','\32','\116','\121','\112','\101','\59','\10',
'\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\32','\61','\32','\103','\101','\116',
'\95','\98','\105','\116','\115','\40','\100','\97','\116','\97','\44','\32','\55','\44','\32','\49','\52','\41','\59','\10',
'\105','\102','\32','\116','\121','\112','\101','\32','\61','\61','\32','\34','\65','\66','\67','\34','\32','\116','\104',
'\101','\110','\10','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\32','\61','\32',
'\103','\101','\116','\95','\98','\105','\116','\115','\40','\100','\97','\116','\97','\44','\32','\50','\52','\44','\32',
'\51','\50','\41','\59','\10','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\67','\32',
'\61','\32','\103','\101','\116','\95','\98','\105','\116','\115','\40','\100','\97','\116','\97','\44','\32','\49','\53',
'\44','\32','\50','\51','\41','\59','\10','\101','\108','\115','\101','\105','\102','\32','\116','\121','\112','\101','\32',
'\61','\61','\32','\34','\65','\66','\120','\34','\32','\116','\104','\101','\110','\10','\105','\110','\115','\116','\114',
'\117','\99','\116','\105','\111','\110','\46','\66','\120','\32','\61','\32','\103','\101','\116','\95','\98','\105','\116',
'\115','\40','\100','\97','\116','\97','\44','\32','\49','\53','\44','\32','\51','\50','\41','\59','\10','\101','\108','\115',
'\101','\105','\102','\32','\116','\121','\112','\101','\32','\61','\61','\32','\34','\65','\115','\66','\120','\34','\32',
'\116','\104','\101','\110','\10','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\115',
'\66','\120','\32','\61','\32','\103','\101','\116','\95','\98','\105','\116','\115','\40','\100','\97','\116','\97','\44',
'\32','\49','\53','\44','\32','\51','\50','\41','\32','\45','\32','\49','\51','\49','\48','\55','\49','\59','\10','\101',
'\110','\100','\10','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\115','\91','\105','\93',
'\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\59','\10','\101','\110','\100',
'\10','\101','\110','\100','\10','\100','\111','\10','\110','\117','\109','\32','\61','\32','\103','\101','\116','\95','\105',
'\110','\116','\40','\41','\59','\10','\102','\111','\114','\32','\105','\32','\61','\32','\49','\44','\32','\110','\117',
'\109','\32','\100','\111','\10','\108','\111','\99','\97','\108','\32','\99','\111','\110','\115','\116','\97','\110','\116',
'\32','\61','\32','\123','\10','\125','\59','\10','\108','\111','\99','\97','\108','\32','\116','\121','\112','\101','\32',
'\61','\32','\103','\101','\116','\95','\105','\110','\116','\56','\40','\41','\59','\10','\99','\111','\110','\115','\116',
'\97','\110','\116','\46','\116','\121','\112','\101','\32','\61','\32','\116','\121','\112','\101','\59','\10','\105','\102',
'\32','\116','\121','\112','\101','\32','\61','\61','\32','\49','\32','\116','\104','\101','\110','\10','\99','\111','\110',
'\115','\116','\97','\110','\116','\46','\100','\97','\116','\97','\32','\61','\32','\40','\103','\101','\116','\95','\105',
'\110','\116','\56','\40','\41','\32','\126','\61','\32','\48','\41','\59','\10','\101','\108','\115','\101','\105','\102',
'\32','\116','\121','\112','\101','\32','\61','\61','\32','\51','\32','\116','\104','\101','\110','\10','\99','\111','\110',
'\115','\116','\97','\110','\116','\46','\100','\97','\116','\97','\32','\61','\32','\103','\101','\116','\95','\102','\108',
'\111','\97','\116','\54','\52','\40','\41','\59','\10','\101','\108','\115','\101','\105','\102','\32','\116','\121','\112',
'\101','\32','\61','\61','\32','\52','\32','\116','\104','\101','\110','\10','\99','\111','\110','\115','\116','\97','\110',
'\116','\46','\100','\97','\116','\97','\32','\61','\32','\103','\101','\116','\95','\115','\116','\114','\105','\110','\103',
'\40','\41','\58','\115','\117','\98','\40','\49','\44','\32','\45','\50','\41','\59','\10','\101','\110','\100','\10','\99',
'\111','\110','\115','\116','\97','\110','\116','\115','\91','\105','\45','\49','\93','\32','\61','\32','\99','\111','\110',
'\115','\116','\97','\110','\116','\59','\10','\101','\110','\100','\10','\101','\110','\100','\10','\100','\111','\10','\110',
'\117','\109','\32','\61','\32','\103','\101','\116','\95','\105','\110','\116','\40','\41','\59','\10','\102','\111','\114',
'\32','\105','\32','\61','\32','\49','\44','\32','\110','\117','\109','\32','\100','\111','\10','\112','\114','\111','\116',
'\111','\116','\121','\112','\101','\115','\91','\105','\45','\49','\93','\32','\61','\32','\100','\101','\99','\111','\100',
'\101','\95','\99','\104','\117','\110','\107','\40','\41','\59','\10','\101','\110','\100','\10','\101','\110','\100','\10',
'\100','\111','\10','\108','\111','\99','\97','\108','\32','\100','\97','\116','\97','\32','\61','\32','\100','\101','\98',
'\117','\103','\46','\108','\105','\110','\101','\115','\10','\110','\117','\109','\32','\61','\32','\103','\101','\116',
'\95','\105','\110','\116','\40','\41','\59','\10','\102','\111','\114','\32','\105','\32','\61','\32','\49','\44','\32',
'\110','\117','\109','\32','\100','\111','\10','\100','\97','\116','\97','\91','\105','\93','\32','\61','\32','\103','\101',
'\116','\95','\105','\110','\116','\51','\50','\40','\41','\59','\10','\101','\110','\100','\10','\110','\117','\109','\32',
'\61','\32','\103','\101','\116','\95','\105','\110','\116','\40','\41','\59','\10','\102','\111','\114','\32','\105','\32',
'\61','\32','\49','\44','\32','\110','\117','\109','\32','\100','\111','\10','\103','\101','\116','\95','\115','\116','\114',
'\105','\110','\103','\40','\41','\58','\115','\117','\98','\40','\49','\44','\32','\45','\50','\41','\59','\10','\103','\101',
'\116','\95','\105','\110','\116','\51','\50','\40','\41','\59','\10','\103','\101','\116','\95','\105','\110','\116','\51',
'\50','\40','\41','\59','\10','\101','\110','\100','\10','\110','\117','\109','\32','\61','\32','\103','\101','\116','\95',
'\105','\110','\116','\40','\41','\59','\10','\102','\111','\114','\32','\105','\32','\61','\32','\49','\44','\32','\110',
'\117','\109','\32','\100','\111','\10','\103','\101','\116','\95','\115','\116','\114','\105','\110','\103','\40','\41',
'\59','\10','\101','\110','\100','\10','\101','\110','\100','\10','\114','\101','\116','\117','\114','\110','\32','\99','\104',
'\117','\110','\107','\59','\10','\101','\110','\100','\10','\100','\111','\10','\97','\115','\115','\101','\114','\116',
'\40','\103','\101','\116','\95','\115','\116','\114','\105','\110','\103','\40','\52','\41','\32','\61','\61','\32','\34',
'\92','\50','\55','\76','\117','\97','\34','\44','\32','\34','\76','\117','\97','\32','\98','\121','\116','\101','\99','\111',
'\100','\101','\32','\101','\120','\112','\101','\99','\116','\101','\100','\46','\34','\41','\59','\10','\97','\115','\115',
'\101','\114','\116','\40','\103','\101','\116','\95','\105','\110','\116','\56','\40','\41','\32','\61','\61','\32','\48',
'\120','\53','\49','\44','\32','\34','\79','\110','\108','\121','\32','\76','\117','\97','\32','\53','\46','\49','\32','\105',
'\115','\32','\115','\117','\112','\112','\111','\114','\116','\101','\100','\46','\34','\41','\59','\10','\103','\101','\116',
'\95','\105','\110','\116','\56','\40','\41','\59','\10','\98','\105','\103','\95','\101','\110','\100','\105','\97','\110',
'\32','\61','\32','\40','\103','\101','\116','\95','\105','\110','\116','\56','\40','\41','\32','\61','\61','\32','\48','\41',
'\59','\10','\105','\110','\116','\95','\115','\105','\122','\101','\32','\61','\32','\103','\101','\116','\95','\105','\110',
'\116','\56','\40','\41','\59','\10','\115','\105','\122','\101','\95','\116','\32','\32','\32','\61','\32','\103','\101',
'\116','\95','\105','\110','\116','\56','\40','\41','\59','\10','\105','\102','\32','\105','\110','\116','\95','\115','\105',
'\122','\101','\32','\61','\61','\32','\52','\32','\116','\104','\101','\110','\10','\103','\101','\116','\95','\105','\110',
'\116','\32','\61','\32','\103','\101','\116','\95','\105','\110','\116','\51','\50','\59','\10','\101','\108','\115','\101',
'\105','\102','\32','\105','\110','\116','\95','\115','\105','\122','\101','\32','\61','\61','\32','\56','\32','\116','\104',
'\101','\110','\10','\103','\101','\116','\95','\105','\110','\116','\32','\61','\32','\103','\101','\116','\95','\105','\110',
'\116','\54','\52','\59','\10','\101','\108','\115','\101','\10','\101','\114','\114','\111','\114','\40','\34','\85','\110',
'\115','\117','\112','\112','\111','\114','\116','\101','\100','\32','\98','\121','\116','\101','\99','\111','\100','\101',
'\32','\116','\97','\114','\103','\101','\116','\32','\112','\108','\97','\116','\102','\111','\114','\109','\34','\41','\59',
'\10','\101','\110','\100','\10','\105','\102','\32','\115','\105','\122','\101','\95','\116','\32','\61','\61','\32','\52',
'\32','\116','\104','\101','\110','\10','\103','\101','\116','\95','\115','\105','\122','\101','\95','\116','\32','\61','\32',
'\103','\101','\116','\95','\105','\110','\116','\51','\50','\59','\10','\101','\108','\115','\101','\105','\102','\32','\115',
'\105','\122','\101','\95','\116','\32','\61','\61','\32','\56','\32','\116','\104','\101','\110','\10','\103','\101','\116',
'\95','\115','\105','\122','\101','\95','\116','\32','\61','\32','\103','\101','\116','\95','\105','\110','\116','\54','\52',
'\59','\10','\101','\108','\115','\101','\10','\101','\114','\114','\111','\114','\40','\34','\85','\110','\115','\117','\112',
'\112','\111','\114','\116','\101','\100','\32','\98','\121','\116','\101','\99','\111','\100','\101','\32','\116','\97',
'\114','\103','\101','\116','\32','\112','\108','\97','\116','\102','\111','\114','\109','\34','\41','\59','\10','\101','\110',
'\100','\10','\97','\115','\115','\101','\114','\116','\40','\103','\101','\116','\95','\115','\116','\114','\105','\110',
'\103','\40','\51','\41','\32','\61','\61','\32','\34','\92','\52','\92','\56','\92','\48','\34','\44','\10','\34','\85',
'\110','\115','\117','\112','\112','\111','\114','\116','\101','\100','\32','\98','\121','\116','\101','\99','\111','\100',
'\101','\32','\116','\97','\114','\103','\101','\116','\32','\112','\108','\97','\116','\102','\111','\114','\109','\34',
'\41','\59','\10','\101','\110','\100','\10','\114','\101','\116','\117','\114','\110','\32','\100','\101','\99','\111','\100',
'\101','\95','\99','\104','\117','\110','\107','\40','\41','\59','\10','\101','\110','\100','\10','\108','\111','\99','\97',
'\108','\32','\102','\117','\110','\99','\116','\105','\111','\110','\32','\104','\97','\110','\100','\108','\101','\95',
'\114','\101','\116','\117','\114','\110','\40','\46','\46','\46','\41','\10','\108','\111','\99','\97','\108','\32','\99',
'\32','\61','\32','\115','\101','\108','\101','\99','\116','\40','\34','\35','\34','\44','\32','\46','\46','\46','\41','\10',
'\108','\111','\99','\97','\108','\32','\116','\32','\61','\32','\123','\46','\46','\46','\125','\10','\114','\101','\116',
'\117','\114','\110','\32','\99','\44','\32','\116','\10','\101','\110','\100','\10','\108','\111','\99','\97','\108','\32',
'\102','\117','\110','\99','\116','\105','\111','\110','\32','\99','\114','\101','\97','\116','\101','\95','\119','\114',
'\97','\112','\112','\101','\114','\40','\99','\97','\99','\104','\101','\44','\32','\117','\112','\118','\97','\108','\117',
'\101','\115','\41','\10','\108','\111','\99','\97','\108','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105',
'\111','\110','\115','\32','\61','\32','\99','\97','\99','\104','\101','\46','\105','\110','\115','\116','\114','\117','\99',
'\116','\105','\111','\110','\115','\59','\10','\108','\111','\99','\97','\108','\32','\99','\111','\110','\115','\116','\97',
'\110','\116','\115','\32','\32','\32','\32','\61','\32','\99','\97','\99','\104','\101','\46','\99','\111','\110','\115',
'\116','\97','\110','\116','\115','\59','\10','\108','\111','\99','\97','\108','\32','\112','\114','\111','\116','\111','\116',
'\121','\112','\101','\115','\32','\32','\32','\61','\32','\99','\97','\99','\104','\101','\46','\112','\114','\111','\116',
'\111','\116','\121','\112','\101','\115','\59','\10','\10','\108','\111','\99','\97','\108','\32','\115','\116','\97','\99',
'\107','\44','\32','\116','\111','\112','\10','\108','\111','\99','\97','\108','\32','\101','\110','\118','\105','\114','\111',
'\110','\109','\101','\110','\116','\10','\108','\111','\99','\97','\108','\32','\73','\80','\32','\61','\32','\49','\59',
'\10','\108','\111','\99','\97','\108','\32','\118','\97','\114','\97','\114','\103','\44','\32','\118','\97','\114','\97',
'\114','\103','\95','\115','\105','\122','\101','\32','\10','\10','\108','\111','\99','\97','\108','\32','\111','\112','\99',
'\111','\100','\101','\95','\102','\117','\110','\99','\115','\32','\61','\32','\123','\10','\91','\48','\93','\32','\32',
'\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99',
'\116','\105','\111','\110','\41','\10','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117',
'\99','\116','\105','\111','\110','\46','\65','\93','\32','\61','\32','\115','\116','\97','\99','\107','\91','\105','\110',
'\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\93','\59','\10','\101','\110','\100','\44','\10',
'\91','\49','\93','\32','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115',
'\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\115','\116','\97','\99','\107','\91','\105','\110','\115',
'\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\93','\32','\61','\32','\99','\111','\110','\115','\116',
'\97','\110','\116','\115','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66',
'\120','\93','\46','\100','\97','\116','\97','\59','\10','\101','\110','\100','\44','\10','\91','\50','\93','\32','\32','\61',
'\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\41','\10','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\46','\65','\93','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111',
'\110','\46','\66','\32','\126','\61','\32','\48','\10','\105','\102','\32','\105','\110','\115','\116','\114','\117','\99',
'\116','\105','\111','\110','\46','\67','\32','\126','\61','\32','\48','\32','\116','\104','\101','\110','\10','\73','\80',
'\32','\61','\32','\73','\80','\32','\43','\32','\49','\10','\101','\110','\100','\10','\101','\110','\100','\44','\10','\91',
'\51','\93','\32','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116',
'\114','\117','\99','\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\115','\116','\97','\99',
'\107','\32','\61','\32','\115','\116','\97','\99','\107','\10','\102','\111','\114','\32','\105','\32','\61','\32','\105',
'\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\44','\32','\105','\110','\115','\116',
'\114','\117','\99','\116','\105','\111','\110','\46','\66','\32','\100','\111','\10','\115','\116','\97','\99','\107','\91',
'\105','\93','\32','\61','\32','\110','\105','\108','\10','\101','\110','\100','\10','\101','\110','\100','\44','\10','\91',
'\52','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114',
'\117','\99','\116','\105','\111','\110','\41','\10','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114',
'\117','\99','\116','\105','\111','\110','\46','\65','\93','\32','\61','\32','\117','\112','\118','\97','\108','\117','\101',
'\115','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\93','\10','\101','\110',
'\100','\44','\10','\91','\53','\93','\32','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40',
'\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108',
'\32','\107','\101','\121','\32','\61','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\91','\105','\110',
'\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\120','\93','\46','\100','\97','\116','\97','\59',
'\10','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110',
'\46','\65','\93','\32','\61','\32','\101','\110','\118','\105','\114','\111','\110','\109','\101','\110','\116','\91','\107',
'\101','\121','\93','\59','\10','\101','\110','\100','\44','\10','\91','\54','\93','\32','\32','\61','\32','\102','\117',
'\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110',
'\41','\10','\108','\111','\99','\97','\108','\32','\67','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99',
'\116','\105','\111','\110','\46','\67','\10','\108','\111','\99','\97','\108','\32','\115','\116','\97','\99','\107','\32',
'\61','\32','\115','\116','\97','\99','\107','\10','\67','\32','\61','\32','\67','\32','\62','\32','\50','\53','\53','\32',
'\97','\110','\100','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\91','\67','\45','\50','\53','\54',
'\93','\46','\100','\97','\116','\97','\32','\111','\114','\32','\115','\116','\97','\99','\107','\91','\67','\93','\10',
'\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46',
'\65','\93','\32','\61','\32','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\46','\66','\93','\91','\67','\93','\59','\10','\101','\110','\100','\44','\10','\91','\55','\93','\32',
'\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117',
'\99','\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\107','\101','\121','\32','\61','\32',
'\99','\111','\110','\115','\116','\97','\110','\116','\115','\91','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\46','\66','\120','\93','\46','\100','\97','\116','\97','\59','\10','\101','\110','\118','\105','\114',
'\111','\110','\109','\101','\110','\116','\91','\107','\101','\121','\93','\32','\61','\32','\115','\116','\97','\99','\107',
'\91','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\93','\59','\10','\101','\110',
'\100','\44','\10','\91','\56','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\32','\40',
'\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\117','\112','\118','\97','\108',
'\117','\101','\115','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\93',
'\32','\61','\32','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111',
'\110','\46','\65','\93','\10','\101','\110','\100','\44','\10','\91','\57','\93','\32','\61','\32','\102','\117','\110',
'\99','\116','\105','\111','\110','\32','\40','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110',
'\41','\10','\108','\111','\99','\97','\108','\32','\66','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99',
'\116','\105','\111','\110','\46','\66','\59','\10','\108','\111','\99','\97','\108','\32','\67','\32','\61','\32','\105',
'\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\67','\59','\10','\108','\111','\99','\97','\108',
'\32','\115','\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\32','\61',
'\32','\115','\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\59','\10',
'\66','\32','\61','\32','\66','\32','\62','\32','\50','\53','\53','\32','\97','\110','\100','\32','\99','\111','\110','\115',
'\116','\97','\110','\116','\115','\91','\66','\45','\50','\53','\54','\93','\46','\100','\97','\116','\97','\32','\111',
'\114','\32','\115','\116','\97','\99','\107','\91','\66','\93','\59','\10','\67','\32','\61','\32','\67','\32','\62','\32',
'\50','\53','\53','\32','\97','\110','\100','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\91','\67',
'\45','\50','\53','\54','\93','\46','\100','\97','\116','\97','\32','\111','\114','\32','\115','\116','\97','\99','\107',
'\91','\67','\93','\59','\10','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\46','\65','\93','\91','\66','\93','\32','\61','\32','\67','\10','\101','\110','\100','\44','\10','\91',
'\49','\48','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\32','\40','\105','\110','\115',
'\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\115','\116','\97','\99','\107','\91','\105','\110','\115',
'\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\93','\32','\61','\32','\123','\125','\10','\101','\110',
'\100','\44','\10','\91','\49','\49','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\32',
'\40','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108',
'\32','\65','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\10',
'\108','\111','\99','\97','\108','\32','\66','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105',
'\111','\110','\46','\66','\10','\108','\111','\99','\97','\108','\32','\67','\32','\61','\32','\105','\110','\115','\116',
'\114','\117','\99','\116','\105','\111','\110','\46','\67','\10','\108','\111','\99','\97','\108','\32','\115','\116','\97',
'\99','\107','\32','\61','\32','\115','\116','\97','\99','\107','\10','\66','\32','\61','\32','\115','\116','\97','\99','\107',
'\91','\66','\93','\10','\67','\32','\61','\32','\67','\32','\62','\32','\50','\53','\53','\32','\97','\110','\100','\32',
'\99','\111','\110','\115','\116','\97','\110','\116','\115','\91','\67','\45','\50','\53','\54','\93','\46','\100','\97',
'\116','\97','\32','\111','\114','\32','\115','\116','\97','\99','\107','\91','\67','\93','\10','\115','\116','\97','\99',
'\107','\91','\65','\43','\49','\93','\32','\61','\32','\66','\10','\115','\116','\97','\99','\107','\91','\65','\93','\32',
'\32','\32','\61','\32','\66','\91','\67','\93','\10','\101','\110','\100','\44','\10','\91','\49','\50','\93','\32','\61',
'\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\66','\32','\61','\32','\105','\110','\115','\116',
'\114','\117','\99','\116','\105','\111','\110','\46','\66','\59','\10','\108','\111','\99','\97','\108','\32','\67','\32',
'\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\67','\59','\10','\108','\111',
'\99','\97','\108','\32','\115','\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116','\97','\110','\116',
'\115','\32','\61','\32','\115','\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116','\97','\110','\116',
'\115','\59','\10','\66','\32','\61','\32','\66','\32','\62','\32','\50','\53','\53','\32','\97','\110','\100','\32','\99',
'\111','\110','\115','\116','\97','\110','\116','\115','\91','\66','\45','\50','\53','\54','\93','\46','\100','\97','\116',
'\97','\32','\111','\114','\32','\115','\116','\97','\99','\107','\91','\66','\93','\59','\10','\67','\32','\61','\32','\67',
'\32','\62','\32','\50','\53','\53','\32','\97','\110','\100','\32','\99','\111','\110','\115','\116','\97','\110','\116',
'\115','\91','\67','\45','\50','\53','\54','\93','\46','\100','\97','\116','\97','\32','\111','\114','\32','\115','\116',
'\97','\99','\107','\91','\67','\93','\59','\10','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114',
'\117','\99','\116','\105','\111','\110','\46','\65','\93','\32','\61','\32','\66','\43','\67','\59','\10','\101','\110',
'\100','\44','\10','\91','\49','\51','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40',
'\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108',
'\32','\66','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\59',
'\10','\108','\111','\99','\97','\108','\32','\67','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\46','\67','\59','\10','\108','\111','\99','\97','\108','\32','\115','\116','\97','\99','\107','\44',
'\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\32','\61','\32','\115','\116','\97','\99','\107','\44',
'\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\59','\10','\66','\32','\61','\32','\66','\32','\62',
'\32','\50','\53','\53','\32','\97','\110','\100','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\91',
'\66','\45','\50','\53','\54','\93','\46','\100','\97','\116','\97','\32','\111','\114','\32','\115','\116','\97','\99','\107',
'\91','\66','\93','\59','\10','\67','\32','\61','\32','\67','\32','\62','\32','\50','\53','\53','\32','\97','\110','\100',
'\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\91','\67','\45','\50','\53','\54','\93','\46','\100',
'\97','\116','\97','\32','\111','\114','\32','\115','\116','\97','\99','\107','\91','\67','\93','\59','\10','\115','\116',
'\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\93','\32',
'\61','\32','\66','\32','\45','\32','\67','\59','\9','\10','\101','\110','\100','\44','\10','\91','\49','\52','\93','\32',
'\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99',
'\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\66','\32','\61','\32','\105','\110','\115',
'\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\59','\10','\108','\111','\99','\97','\108','\32','\67',
'\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\67','\59','\10','\108',
'\111','\99','\97','\108','\32','\115','\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116','\97','\110',
'\116','\115','\32','\61','\32','\115','\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116','\97','\110',
'\116','\115','\59','\10','\66','\32','\61','\32','\66','\32','\62','\32','\50','\53','\53','\32','\97','\110','\100','\32',
'\99','\111','\110','\115','\116','\97','\110','\116','\115','\91','\66','\45','\50','\53','\54','\93','\46','\100','\97',
'\116','\97','\32','\111','\114','\32','\115','\116','\97','\99','\107','\91','\66','\93','\59','\10','\67','\32','\61','\32',
'\67','\32','\62','\32','\50','\53','\53','\32','\97','\110','\100','\32','\99','\111','\110','\115','\116','\97','\110',
'\116','\115','\91','\67','\45','\50','\53','\54','\93','\46','\100','\97','\116','\97','\32','\111','\114','\32','\115',
'\116','\97','\99','\107','\91','\67','\93','\59','\10','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116',
'\114','\117','\99','\116','\105','\111','\110','\46','\65','\93','\32','\61','\32','\66','\32','\42','\32','\67','\59','\10',
'\101','\110','\100','\44','\10','\91','\49','\53','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111',
'\110','\40','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\108','\111','\99',
'\97','\108','\32','\66','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46',
'\66','\59','\10','\108','\111','\99','\97','\108','\32','\67','\32','\61','\32','\105','\110','\115','\116','\114','\117',
'\99','\116','\105','\111','\110','\46','\67','\59','\10','\108','\111','\99','\97','\108','\32','\115','\116','\97','\99',
'\107','\44','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\32','\61','\32','\115','\116','\97','\99',
'\107','\44','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\59','\10','\66','\32','\61','\32','\66',
'\32','\62','\32','\50','\53','\53','\32','\97','\110','\100','\32','\99','\111','\110','\115','\116','\97','\110','\116',
'\115','\91','\66','\45','\50','\53','\54','\93','\46','\100','\97','\116','\97','\32','\111','\114','\32','\115','\116',
'\97','\99','\107','\91','\66','\93','\59','\10','\67','\32','\61','\32','\67','\32','\62','\32','\50','\53','\53','\32',
'\97','\110','\100','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\91','\67','\45','\50','\53','\54',
'\93','\46','\100','\97','\116','\97','\32','\111','\114','\32','\115','\116','\97','\99','\107','\91','\67','\93','\59',
'\10','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110',
'\46','\65','\93','\32','\61','\32','\66','\32','\47','\32','\67','\59','\10','\101','\110','\100','\44','\10','\91','\49',
'\54','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114',
'\117','\99','\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\66','\32','\61','\32','\105',
'\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\59','\10','\108','\111','\99','\97','\108',
'\32','\67','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\67','\59',
'\10','\108','\111','\99','\97','\108','\32','\115','\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116',
'\97','\110','\116','\115','\32','\61','\32','\115','\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116',
'\97','\110','\116','\115','\59','\10','\66','\32','\61','\32','\66','\32','\62','\32','\50','\53','\53','\32','\97','\110',
'\100','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\91','\66','\45','\50','\53','\54','\93','\46',
'\100','\97','\116','\97','\32','\111','\114','\32','\115','\116','\97','\99','\107','\91','\66','\93','\59','\10','\67',
'\32','\61','\32','\67','\32','\62','\32','\50','\53','\53','\32','\97','\110','\100','\32','\99','\111','\110','\115','\116',
'\97','\110','\116','\115','\91','\67','\45','\50','\53','\54','\93','\46','\100','\97','\116','\97','\32','\111','\114',
'\32','\115','\116','\97','\99','\107','\91','\67','\93','\59','\10','\115','\116','\97','\99','\107','\91','\105','\110',
'\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\93','\32','\61','\32','\66','\32','\37','\32',
'\67','\59','\9','\9','\10','\101','\110','\100','\44','\10','\91','\49','\55','\93','\32','\61','\32','\102','\117','\110',
'\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41',
'\10','\108','\111','\99','\97','\108','\32','\66','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\46','\66','\59','\10','\108','\111','\99','\97','\108','\32','\67','\32','\61','\32','\105','\110',
'\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\67','\59','\10','\108','\111','\99','\97','\108','\32',
'\115','\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\32','\61','\32',
'\115','\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\59','\10','\66',
'\32','\61','\32','\66','\32','\62','\32','\50','\53','\53','\32','\97','\110','\100','\32','\99','\111','\110','\115','\116',
'\97','\110','\116','\115','\91','\66','\45','\50','\53','\54','\93','\46','\100','\97','\116','\97','\32','\111','\114',
'\32','\115','\116','\97','\99','\107','\91','\66','\93','\59','\10','\67','\32','\61','\32','\67','\32','\62','\32','\50',
'\53','\53','\32','\97','\110','\100','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\91','\67','\45',
'\50','\53','\54','\93','\46','\100','\97','\116','\97','\32','\111','\114','\32','\115','\116','\97','\99','\107','\91',
'\67','\93','\59','\10','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105',
'\111','\110','\46','\65','\93','\32','\61','\32','\66','\32','\94','\32','\67','\59','\9','\9','\10','\101','\110','\100',
'\44','\10','\91','\49','\56','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105',
'\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\115','\116','\97','\99','\107','\91','\105',
'\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\93','\32','\61','\32','\45','\115','\116',
'\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\93','\10',
'\101','\110','\100','\44','\10','\91','\49','\57','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111',
'\110','\40','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\115','\116','\97',
'\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\93','\32','\61',
'\32','\110','\111','\116','\32','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\46','\66','\93','\10','\101','\110','\100','\44','\10','\91','\50','\48','\93','\32','\61','\32','\102',
'\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111',
'\110','\41','\10','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111',
'\110','\46','\65','\93','\32','\61','\32','\35','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114',
'\117','\99','\116','\105','\111','\110','\46','\66','\93','\10','\101','\110','\100','\44','\10','\91','\50','\49','\93',
'\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117',
'\99','\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\66','\32','\61','\32','\105','\110',
'\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\10','\108','\111','\99','\97','\108','\32','\114',
'\101','\115','\117','\108','\116','\32','\61','\32','\115','\116','\97','\99','\107','\91','\66','\93','\10','\102','\111',
'\114','\32','\105','\32','\61','\32','\66','\43','\49','\44','\32','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\46','\67','\32','\100','\111','\10','\114','\101','\115','\117','\108','\116','\32','\61','\32','\114',
'\101','\115','\117','\108','\116','\32','\46','\46','\32','\115','\116','\97','\99','\107','\91','\105','\93','\32','\10',
'\101','\110','\100','\10','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\46','\65','\93','\32','\61','\32','\114','\101','\115','\117','\108','\116','\10','\101','\110','\100',
'\44','\10','\91','\50','\50','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105',
'\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\73','\80','\32','\61','\32','\73','\80',
'\32','\43','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\115','\66','\120','\10',
'\101','\110','\100','\44','\10','\91','\50','\51','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111',
'\110','\40','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\108','\111','\99',
'\97','\108','\32','\65','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46',
'\65','\10','\108','\111','\99','\97','\108','\32','\66','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99',
'\116','\105','\111','\110','\46','\66','\10','\108','\111','\99','\97','\108','\32','\67','\32','\61','\32','\105','\110',
'\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\67','\10','\108','\111','\99','\97','\108','\32','\115',
'\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\32','\61','\32','\115',
'\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\10','\65','\32','\61',
'\32','\65','\32','\126','\61','\32','\48','\10','\66','\32','\61','\32','\66','\32','\62','\32','\50','\53','\53','\32',
'\97','\110','\100','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\91','\66','\45','\50','\53','\54',
'\93','\46','\100','\97','\116','\97','\32','\111','\114','\32','\115','\116','\97','\99','\107','\91','\66','\93','\10',
'\67','\32','\61','\32','\67','\32','\62','\32','\50','\53','\53','\32','\97','\110','\100','\32','\99','\111','\110','\115',
'\116','\97','\110','\116','\115','\91','\67','\45','\50','\53','\54','\93','\46','\100','\97','\116','\97','\32','\111',
'\114','\32','\115','\116','\97','\99','\107','\91','\67','\93','\10','\105','\102','\32','\40','\66','\32','\61','\61','\32',
'\67','\41','\32','\126','\61','\32','\65','\32','\116','\104','\101','\110','\10','\73','\80','\32','\61','\32','\73','\80',
'\32','\43','\32','\49','\10','\101','\110','\100','\10','\101','\110','\100','\44','\10','\91','\50','\52','\93','\32','\61',
'\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\65','\32','\61','\32','\105','\110','\115','\116',
'\114','\117','\99','\116','\105','\111','\110','\46','\65','\10','\108','\111','\99','\97','\108','\32','\66','\32','\61',
'\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\10','\108','\111','\99','\97',
'\108','\32','\67','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\67',
'\10','\108','\111','\99','\97','\108','\32','\115','\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116',
'\97','\110','\116','\115','\32','\61','\32','\115','\116','\97','\99','\107','\44','\32','\99','\111','\110','\115','\116',
'\97','\110','\116','\115','\10','\65','\32','\61','\32','\65','\32','\126','\61','\32','\48','\10','\66','\32','\61','\32',
'\66','\32','\62','\32','\50','\53','\53','\32','\97','\110','\100','\32','\99','\111','\110','\115','\116','\97','\110',
'\116','\115','\91','\66','\45','\50','\53','\54','\93','\46','\100','\97','\116','\97','\32','\111','\114','\32','\115',
'\116','\97','\99','\107','\91','\66','\93','\10','\67','\32','\61','\32','\67','\32','\62','\32','\50','\53','\53','\32',
'\97','\110','\100','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\91','\67','\45','\50','\53','\54',
'\93','\46','\100','\97','\116','\97','\32','\111','\114','\32','\115','\116','\97','\99','\107','\91','\67','\93','\10',
'\105','\102','\32','\40','\66','\32','\60','\32','\67','\41','\32','\126','\61','\32','\65','\32','\116','\104','\101','\110',
'\10','\73','\80','\32','\61','\32','\73','\80','\32','\43','\32','\49','\10','\101','\110','\100','\9','\9','\10','\101',
'\110','\100','\44','\10','\91','\50','\53','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110',
'\40','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108',
'\32','\65','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\10',
'\108','\111','\99','\97','\108','\32','\66','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105',
'\111','\110','\46','\66','\10','\108','\111','\99','\97','\108','\32','\67','\32','\61','\32','\105','\110','\115','\116',
'\114','\117','\99','\116','\105','\111','\110','\46','\67','\10','\108','\111','\99','\97','\108','\32','\115','\116','\97',
'\99','\107','\44','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\32','\61','\32','\115','\116','\97',
'\99','\107','\44','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\10','\65','\32','\61','\32','\65',
'\32','\126','\61','\32','\48','\10','\66','\32','\61','\32','\66','\32','\62','\32','\50','\53','\53','\32','\97','\110',
'\100','\32','\99','\111','\110','\115','\116','\97','\110','\116','\115','\91','\66','\45','\50','\53','\54','\93','\46',
'\100','\97','\116','\97','\32','\111','\114','\32','\115','\116','\97','\99','\107','\91','\66','\93','\10','\67','\32',
'\61','\32','\67','\32','\62','\32','\50','\53','\53','\32','\97','\110','\100','\32','\99','\111','\110','\115','\116','\97',
'\110','\116','\115','\91','\67','\45','\50','\53','\54','\93','\46','\100','\97','\116','\97','\32','\111','\114','\32',
'\115','\116','\97','\99','\107','\91','\67','\93','\10','\105','\102','\32','\40','\66','\32','\60','\61','\32','\67','\41',
'\32','\126','\61','\32','\65','\32','\116','\104','\101','\110','\10','\73','\80','\32','\61','\32','\73','\80','\32','\43',
'\32','\49','\10','\101','\110','\100','\9','\9','\10','\101','\110','\100','\44','\10','\91','\50','\54','\93','\32','\61',
'\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\41','\10','\105','\102','\32','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114',
'\117','\99','\116','\105','\111','\110','\46','\65','\93','\32','\61','\61','\32','\40','\105','\110','\115','\116','\114',
'\117','\99','\116','\105','\111','\110','\46','\67','\32','\126','\61','\32','\48','\41','\32','\116','\104','\101','\110',
'\10','\73','\80','\32','\61','\32','\73','\80','\32','\43','\32','\49','\10','\101','\110','\100','\10','\101','\110','\100',
'\44','\10','\91','\50','\55','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105',
'\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\115',
'\116','\97','\99','\107','\32','\61','\32','\115','\116','\97','\99','\107','\10','\108','\111','\99','\97','\108','\32',
'\66','\32','\61','\32','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105',
'\111','\110','\46','\66','\93','\10','\105','\102','\32','\66','\32','\61','\61','\32','\40','\105','\110','\115','\116',
'\114','\117','\99','\116','\105','\111','\110','\46','\67','\32','\126','\61','\32','\48','\41','\32','\116','\104','\101',
'\110','\10','\73','\80','\32','\61','\32','\73','\80','\32','\43','\32','\49','\10','\101','\108','\115','\101','\10','\115',
'\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\93',
'\32','\61','\32','\66','\10','\101','\110','\100','\10','\101','\110','\100','\44','\10','\91','\50','\56','\93','\32','\61',
'\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\65','\32','\61','\32','\105','\110','\115','\116',
'\114','\117','\99','\116','\105','\111','\110','\46','\65','\59','\10','\108','\111','\99','\97','\108','\32','\66','\32',
'\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\59','\10','\108','\111',
'\99','\97','\108','\32','\67','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110',
'\46','\67','\59','\10','\108','\111','\99','\97','\108','\32','\115','\116','\97','\99','\107','\32','\61','\32','\115',
'\116','\97','\99','\107','\59','\10','\108','\111','\99','\97','\108','\32','\97','\114','\103','\115','\44','\32','\114',
'\101','\115','\117','\108','\116','\115','\59','\10','\108','\111','\99','\97','\108','\32','\108','\105','\109','\105',
'\116','\44','\32','\108','\111','\111','\112','\10','\97','\114','\103','\115','\32','\61','\32','\123','\125','\59','\10',
'\105','\102','\32','\66','\32','\126','\61','\32','\49','\32','\116','\104','\101','\110','\10','\105','\102','\32','\66',
'\32','\126','\61','\32','\48','\32','\116','\104','\101','\110','\10','\108','\105','\109','\105','\116','\32','\61','\32',
'\65','\43','\66','\45','\49','\59','\10','\101','\108','\115','\101','\10','\108','\105','\109','\105','\116','\32','\61',
'\32','\116','\111','\112','\10','\101','\110','\100','\10','\108','\111','\111','\112','\32','\61','\32','\48','\10','\102',
'\111','\114','\32','\105','\32','\61','\32','\65','\43','\49','\44','\32','\108','\105','\109','\105','\116','\32','\100',
'\111','\10','\108','\111','\111','\112','\32','\61','\32','\108','\111','\111','\112','\32','\43','\32','\49','\10','\97',
'\114','\103','\115','\91','\108','\111','\111','\112','\93','\32','\61','\32','\115','\116','\97','\99','\107','\91','\105',
'\93','\59','\10','\101','\110','\100','\10','\108','\105','\109','\105','\116','\44','\32','\114','\101','\115','\117','\108',
'\116','\115','\32','\61','\32','\104','\97','\110','\100','\108','\101','\95','\114','\101','\116','\117','\114','\110',
'\40','\115','\116','\97','\99','\107','\91','\65','\93','\40','\117','\110','\112','\97','\99','\107','\40','\97','\114',
'\103','\115','\44','\32','\49','\44','\32','\108','\105','\109','\105','\116','\45','\65','\41','\41','\41','\10','\101',
'\108','\115','\101','\10','\108','\105','\109','\105','\116','\44','\32','\114','\101','\115','\117','\108','\116','\115',
'\32','\61','\32','\104','\97','\110','\100','\108','\101','\95','\114','\101','\116','\117','\114','\110','\40','\115','\116',
'\97','\99','\107','\91','\65','\93','\40','\41','\41','\10','\101','\110','\100','\10','\116','\111','\112','\32','\61',
'\32','\65','\32','\45','\32','\49','\10','\105','\102','\32','\67','\32','\126','\61','\32','\49','\32','\116','\104','\101',
'\110','\10','\105','\102','\32','\67','\32','\126','\61','\32','\48','\32','\116','\104','\101','\110','\10','\108','\105',
'\109','\105','\116','\32','\61','\32','\65','\43','\67','\45','\50','\59','\10','\101','\108','\115','\101','\10','\108',
'\105','\109','\105','\116','\32','\61','\32','\108','\105','\109','\105','\116','\43','\65','\10','\101','\110','\100','\10',
'\108','\111','\111','\112','\32','\61','\32','\48','\59','\10','\102','\111','\114','\32','\105','\32','\61','\32','\65',
'\44','\32','\108','\105','\109','\105','\116','\32','\100','\111','\10','\108','\111','\111','\112','\32','\61','\32','\108',
'\111','\111','\112','\32','\43','\32','\49','\59','\10','\115','\116','\97','\99','\107','\91','\105','\93','\32','\61',
'\32','\114','\101','\115','\117','\108','\116','\115','\91','\108','\111','\111','\112','\93','\59','\10','\101','\110',
'\100','\10','\101','\110','\100','\10','\101','\110','\100','\44','\10','\91','\50','\57','\93','\32','\61','\32','\102',
'\117','\110','\99','\116','\105','\111','\110','\32','\40','\105','\110','\115','\116','\114','\117','\99','\116','\105',
'\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\65','\32','\61','\32','\105','\110','\115','\116','\114',
'\117','\99','\116','\105','\111','\110','\46','\65','\59','\10','\108','\111','\99','\97','\108','\32','\66','\32','\61',
'\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\59','\10','\108','\111','\99',
'\97','\108','\32','\67','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46',
'\67','\59','\10','\108','\111','\99','\97','\108','\32','\115','\116','\97','\99','\107','\32','\61','\32','\115','\116',
'\97','\99','\107','\59','\10','\108','\111','\99','\97','\108','\32','\97','\114','\103','\115','\44','\32','\114','\101',
'\115','\117','\108','\116','\115','\59','\10','\108','\111','\99','\97','\108','\32','\116','\111','\112','\44','\32','\108',
'\105','\109','\105','\116','\44','\32','\108','\111','\111','\112','\32','\61','\32','\116','\111','\112','\10','\97','\114',
'\103','\115','\32','\61','\32','\123','\125','\59','\10','\105','\102','\32','\66','\32','\126','\61','\32','\49','\32',
'\116','\104','\101','\110','\10','\105','\102','\32','\66','\32','\126','\61','\32','\48','\32','\116','\104','\101','\110',
'\10','\108','\105','\109','\105','\116','\32','\61','\32','\65','\43','\66','\45','\49','\59','\10','\101','\108','\115',
'\101','\10','\108','\105','\109','\105','\116','\32','\61','\32','\116','\111','\112','\10','\101','\110','\100','\10','\108',
'\111','\111','\112','\32','\61','\32','\48','\10','\102','\111','\114','\32','\105','\32','\61','\32','\65','\43','\49',
'\44','\32','\108','\105','\109','\105','\116','\32','\100','\111','\10','\108','\111','\111','\112','\32','\61','\32','\108',
'\111','\111','\112','\32','\43','\32','\49','\10','\97','\114','\103','\115','\91','\35','\97','\114','\103','\115','\43',
'\49','\93','\32','\61','\32','\115','\116','\97','\99','\107','\91','\105','\93','\59','\10','\101','\110','\100','\10',
'\114','\101','\115','\117','\108','\116','\115','\32','\61','\32','\123','\115','\116','\97','\99','\107','\91','\65','\93',
'\40','\117','\110','\112','\97','\99','\107','\40','\97','\114','\103','\115','\44','\32','\49','\44','\32','\108','\105',
'\109','\105','\116','\45','\65','\41','\41','\125','\59','\10','\101','\108','\115','\101','\10','\114','\101','\115','\117',
'\108','\116','\115','\32','\61','\32','\123','\115','\116','\97','\99','\107','\91','\65','\93','\40','\41','\125','\59',
'\10','\101','\110','\100','\10','\114','\101','\116','\117','\114','\110','\32','\116','\114','\117','\101','\44','\32',
'\114','\101','\115','\117','\108','\116','\115','\10','\101','\110','\100','\44','\10','\91','\51','\48','\93','\32','\61',
'\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\65','\32','\61','\32','\105','\110','\115','\116',
'\114','\117','\99','\116','\105','\111','\110','\46','\65','\59','\10','\108','\111','\99','\97','\108','\32','\66','\32',
'\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\59','\10','\108','\111',
'\99','\97','\108','\32','\115','\116','\97','\99','\107','\32','\61','\32','\115','\116','\97','\99','\107','\59','\10',
'\108','\111','\99','\97','\108','\32','\108','\105','\109','\105','\116','\59','\10','\108','\111','\99','\97','\108','\32',
'\108','\111','\111','\112','\44','\32','\111','\117','\116','\112','\117','\116','\59','\10','\105','\102','\32','\66','\32',
'\61','\61','\32','\49','\32','\116','\104','\101','\110','\10','\114','\101','\116','\117','\114','\110','\32','\116','\114',
'\117','\101','\59','\10','\101','\110','\100','\10','\105','\102','\32','\66','\32','\61','\61','\32','\48','\32','\116',
'\104','\101','\110','\10','\108','\105','\109','\105','\116','\32','\61','\32','\116','\111','\112','\10','\101','\108',
'\115','\101','\10','\108','\105','\109','\105','\116','\32','\61','\32','\65','\32','\43','\32','\66','\32','\45','\32',
'\50','\59','\10','\101','\110','\100','\10','\111','\117','\116','\112','\117','\116','\32','\61','\32','\123','\125','\59',
'\10','\108','\111','\99','\97','\108','\32','\108','\111','\111','\112','\32','\61','\32','\48','\10','\102','\111','\114',
'\32','\105','\32','\61','\32','\65','\44','\32','\108','\105','\109','\105','\116','\32','\100','\111','\10','\108','\111',
'\111','\112','\32','\61','\32','\108','\111','\111','\112','\32','\43','\32','\49','\10','\111','\117','\116','\112','\117',
'\116','\91','\108','\111','\111','\112','\93','\32','\61','\32','\115','\116','\97','\99','\107','\91','\105','\93','\59',
'\10','\101','\110','\100','\10','\114','\101','\116','\117','\114','\110','\32','\116','\114','\117','\101','\44','\32',
'\111','\117','\116','\112','\117','\116','\59','\10','\101','\110','\100','\44','\10','\91','\51','\49','\93','\32','\61',
'\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\65','\32','\61','\32','\105','\110','\115','\116',
'\114','\117','\99','\116','\105','\111','\110','\46','\65','\10','\108','\111','\99','\97','\108','\32','\115','\116','\97',
'\99','\107','\32','\61','\32','\115','\116','\97','\99','\107','\10','\108','\111','\99','\97','\108','\32','\115','\116',
'\101','\112','\32','\61','\32','\115','\116','\97','\99','\107','\91','\65','\43','\50','\93','\10','\108','\111','\99',
'\97','\108','\32','\105','\110','\100','\101','\120','\32','\61','\32','\115','\116','\97','\99','\107','\91','\65','\93',
'\32','\43','\32','\115','\116','\101','\112','\32','\10','\115','\116','\97','\99','\107','\91','\65','\93','\32','\61',
'\32','\105','\110','\100','\101','\120','\10','\105','\102','\32','\115','\116','\101','\112','\32','\62','\32','\48','\32',
'\116','\104','\101','\110','\10','\105','\102','\32','\105','\110','\100','\101','\120','\32','\60','\61','\32','\115','\116',
'\97','\99','\107','\91','\65','\43','\49','\93','\32','\116','\104','\101','\110','\10','\73','\80','\32','\61','\32','\73',
'\80','\32','\43','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\115','\66','\120',
'\10','\115','\116','\97','\99','\107','\91','\65','\43','\51','\93','\32','\61','\32','\105','\110','\100','\101','\120',
'\10','\101','\110','\100','\10','\101','\108','\115','\101','\10','\105','\102','\32','\105','\110','\100','\101','\120',
'\32','\62','\61','\32','\115','\116','\97','\99','\107','\91','\65','\43','\49','\93','\32','\116','\104','\101','\110',
'\10','\73','\80','\32','\61','\32','\73','\80','\32','\43','\32','\105','\110','\115','\116','\114','\117','\99','\116',
'\105','\111','\110','\46','\115','\66','\120','\10','\115','\116','\97','\99','\107','\91','\65','\43','\51','\93','\32',
'\61','\32','\105','\110','\100','\101','\120','\10','\101','\110','\100','\10','\101','\110','\100','\10','\101','\110',
'\100','\44','\10','\91','\51','\50','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40',
'\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108',
'\32','\65','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\10',
'\108','\111','\99','\97','\108','\32','\115','\116','\97','\99','\107','\32','\61','\32','\115','\116','\97','\99','\107',
'\10','\115','\116','\97','\99','\107','\91','\65','\93','\32','\61','\32','\115','\116','\97','\99','\107','\91','\65','\93',
'\32','\45','\32','\115','\116','\97','\99','\107','\91','\65','\43','\50','\93','\10','\73','\80','\32','\61','\32','\73',
'\80','\32','\43','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\115','\66','\120',
'\32','\10','\101','\110','\100','\44','\10','\91','\51','\51','\93','\32','\61','\32','\102','\117','\110','\99','\116',
'\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\108',
'\111','\99','\97','\108','\32','\65','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111',
'\110','\46','\65','\10','\108','\111','\99','\97','\108','\32','\66','\32','\61','\32','\105','\110','\115','\116','\114',
'\117','\99','\116','\105','\111','\110','\46','\66','\10','\108','\111','\99','\97','\108','\32','\67','\32','\61','\32',
'\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\67','\10','\108','\111','\99','\97','\108',
'\32','\115','\116','\97','\99','\107','\32','\61','\32','\115','\116','\97','\99','\107','\10','\108','\111','\99','\97',
'\108','\32','\111','\102','\102','\115','\101','\116','\32','\61','\32','\65','\43','\50','\10','\108','\111','\99','\97',
'\108','\32','\114','\101','\115','\117','\108','\116','\32','\61','\32','\123','\115','\116','\97','\99','\107','\91','\65',
'\93','\40','\115','\116','\97','\99','\107','\91','\65','\43','\49','\93','\44','\32','\115','\116','\97','\99','\107','\91',
'\65','\43','\50','\93','\41','\125','\10','\102','\111','\114','\32','\105','\32','\61','\32','\49','\44','\32','\67','\32',
'\100','\111','\10','\115','\116','\97','\99','\107','\91','\111','\102','\102','\115','\101','\116','\43','\105','\93','\32',
'\61','\32','\114','\101','\115','\117','\108','\116','\91','\105','\93','\10','\101','\110','\100','\10','\105','\102','\32',
'\115','\116','\97','\99','\107','\91','\65','\43','\51','\93','\32','\126','\61','\32','\110','\105','\108','\32','\116',
'\104','\101','\110','\10','\115','\116','\97','\99','\107','\91','\65','\43','\50','\93','\32','\61','\32','\115','\116',
'\97','\99','\107','\91','\65','\43','\51','\93','\10','\101','\108','\115','\101','\10','\73','\80','\32','\61','\32','\73',
'\80','\32','\43','\32','\49','\10','\101','\110','\100','\10','\101','\110','\100','\44','\10','\91','\51','\52','\93','\32',
'\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99',
'\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\65','\32','\61','\32','\105','\110','\115',
'\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\10','\108','\111','\99','\97','\108','\32','\66','\32',
'\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\10','\108','\111','\99',
'\97','\108','\32','\67','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46',
'\67','\10','\108','\111','\99','\97','\108','\32','\115','\116','\97','\99','\107','\32','\61','\32','\115','\116','\97',
'\99','\107','\10','\105','\102','\32','\67','\32','\61','\61','\32','\48','\32','\116','\104','\101','\110','\10','\101',
'\114','\114','\111','\114','\40','\34','\78','\89','\73','\58','\32','\101','\120','\116','\101','\110','\100','\101','\100',
'\32','\83','\69','\84','\76','\73','\83','\84','\34','\41','\10','\101','\108','\115','\101','\10','\108','\111','\99','\97',
'\108','\32','\111','\102','\102','\115','\101','\116','\32','\61','\32','\40','\67','\32','\45','\32','\49','\41','\32',
'\42','\32','\53','\48','\10','\108','\111','\99','\97','\108','\32','\116','\32','\61','\32','\115','\116','\97','\99','\107',
'\91','\65','\93','\10','\105','\102','\32','\66','\32','\61','\61','\32','\48','\32','\116','\104','\101','\110','\10','\66',
'\32','\61','\32','\116','\111','\112','\10','\101','\110','\100','\10','\102','\111','\114','\32','\105','\32','\61','\32',
'\49','\44','\32','\66','\32','\100','\111','\10','\116','\91','\111','\102','\102','\115','\101','\116','\43','\105','\93',
'\32','\61','\32','\115','\116','\97','\99','\107','\91','\65','\43','\105','\93','\9','\10','\101','\110','\100','\9','\9',
'\9','\9','\10','\101','\110','\100','\10','\101','\110','\100','\44','\10','\91','\51','\53','\93','\32','\61','\32','\102',
'\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111',
'\110','\41','\10','\105','\111','\46','\115','\116','\100','\101','\114','\114','\58','\119','\114','\105','\116','\101',
'\40','\34','\78','\89','\73','\58','\32','\67','\76','\79','\83','\69','\34','\41','\10','\105','\111','\46','\115','\116',
'\100','\101','\114','\114','\58','\102','\108','\117','\115','\104','\40','\41','\10','\101','\110','\100','\44','\10','\91',
'\51','\54','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105','\110','\115','\116',
'\114','\117','\99','\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\112','\114','\111','\116',
'\111','\32','\61','\32','\112','\114','\111','\116','\111','\116','\121','\112','\101','\115','\91','\105','\110','\115',
'\116','\114','\117','\99','\116','\105','\111','\110','\46','\66','\120','\93','\10','\108','\111','\99','\97','\108','\32',
'\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\115','\32','\61','\32','\105','\110','\115',
'\116','\114','\117','\99','\116','\105','\111','\110','\115','\10','\108','\111','\99','\97','\108','\32','\115','\116',
'\97','\99','\107','\32','\61','\32','\115','\116','\97','\99','\107','\10','\108','\111','\99','\97','\108','\32','\105',
'\110','\100','\105','\99','\101','\115','\32','\61','\32','\123','\125','\10','\108','\111','\99','\97','\108','\32','\110',
'\101','\119','\95','\117','\112','\118','\97','\108','\115','\32','\61','\32','\115','\101','\116','\109','\101','\116',
'\97','\116','\97','\98','\108','\101','\40','\123','\125','\44','\10','\123','\10','\95','\95','\105','\110','\100','\101',
'\120','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\116','\44','\32','\107','\41','\10',
'\108','\111','\99','\97','\108','\32','\117','\112','\118','\97','\108','\32','\61','\32','\105','\110','\100','\105','\99',
'\101','\115','\91','\107','\93','\10','\114','\101','\116','\117','\114','\110','\32','\117','\112','\118','\97','\108',
'\46','\115','\101','\103','\109','\101','\110','\116','\91','\117','\112','\118','\97','\108','\46','\111','\102','\102',
'\115','\101','\116','\93','\10','\101','\110','\100','\44','\10','\95','\95','\110','\101','\119','\105','\110','\100','\101',
'\120','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\116','\44','\32','\107','\44','\32',
'\118','\41','\10','\108','\111','\99','\97','\108','\32','\117','\112','\118','\97','\108','\32','\61','\32','\105','\110',
'\100','\105','\99','\101','\115','\91','\107','\93','\10','\117','\112','\118','\97','\108','\46','\115','\101','\103','\109',
'\101','\110','\116','\91','\117','\112','\118','\97','\108','\46','\111','\102','\102','\115','\101','\116','\93','\32',
'\61','\32','\118','\10','\101','\110','\100','\10','\125','\10','\41','\10','\102','\111','\114','\32','\105','\32','\61',
'\32','\49','\44','\32','\112','\114','\111','\116','\111','\46','\117','\112','\118','\97','\108','\117','\101','\115','\32',
'\100','\111','\10','\108','\111','\99','\97','\108','\32','\109','\111','\118','\101','\109','\101','\110','\116','\32',
'\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\115','\91','\73','\80','\93','\10',
'\105','\102','\32','\109','\111','\118','\101','\109','\101','\110','\116','\46','\111','\112','\99','\111','\100','\101',
'\32','\61','\61','\32','\48','\32','\116','\104','\101','\110','\10','\105','\110','\100','\105','\99','\101','\115','\91',
'\105','\45','\49','\93','\32','\61','\32','\123','\115','\101','\103','\109','\101','\110','\116','\32','\61','\32','\115',
'\116','\97','\99','\107','\44','\32','\111','\102','\102','\115','\101','\116','\32','\61','\32','\109','\111','\118','\101',
'\109','\101','\110','\116','\46','\66','\125','\10','\101','\108','\115','\101','\105','\102','\32','\105','\110','\115',
'\116','\114','\117','\99','\116','\105','\111','\110','\115','\91','\73','\80','\93','\46','\111','\112','\99','\111','\100',
'\101','\32','\61','\61','\32','\52','\32','\116','\104','\101','\110','\10','\105','\110','\100','\105','\99','\101','\115',
'\91','\105','\45','\49','\93','\32','\61','\32','\123','\115','\101','\103','\109','\101','\110','\116','\32','\61','\32',
'\117','\112','\118','\97','\108','\117','\101','\115','\44','\32','\111','\102','\102','\115','\101','\116','\32','\61',
'\32','\109','\111','\118','\101','\109','\101','\110','\116','\46','\66','\125','\10','\101','\110','\100','\10','\73','\80',
'\32','\61','\32','\73','\80','\32','\43','\32','\49','\10','\101','\110','\100','\10','\108','\111','\99','\97','\108','\32',
'\95','\44','\32','\102','\117','\110','\99','\32','\61','\32','\99','\114','\101','\97','\116','\101','\95','\119','\114',
'\97','\112','\112','\101','\114','\40','\112','\114','\111','\116','\111','\44','\32','\110','\101','\119','\95','\117',
'\112','\118','\97','\108','\115','\41','\10','\115','\116','\97','\99','\107','\91','\105','\110','\115','\116','\114','\117',
'\99','\116','\105','\111','\110','\46','\65','\93','\32','\61','\32','\102','\117','\110','\99','\10','\101','\110','\100',
'\44','\10','\91','\51','\55','\93','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\105',
'\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\10','\108','\111','\99','\97','\108','\32','\65',
'\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\65','\10','\108','\111',
'\99','\97','\108','\32','\66','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110',
'\46','\66','\10','\108','\111','\99','\97','\108','\32','\115','\116','\97','\99','\107','\44','\32','\118','\97','\114',
'\97','\114','\103','\32','\61','\32','\115','\116','\97','\99','\107','\44','\32','\118','\97','\114','\97','\114','\103',
'\10','\10','\102','\111','\114','\32','\105','\32','\61','\32','\65','\44','\32','\65','\32','\43','\32','\40','\66','\32',
'\62','\32','\48','\32','\97','\110','\100','\32','\66','\32','\45','\32','\49','\32','\111','\114','\32','\118','\97','\114',
'\97','\114','\103','\95','\115','\105','\122','\101','\41','\32','\100','\111','\10','\115','\116','\97','\99','\107','\91',
'\105','\93','\32','\61','\32','\118','\97','\114','\97','\114','\103','\91','\105','\32','\45','\32','\65','\93','\10','\101',
'\110','\100','\10','\101','\110','\100','\44','\10','\125','\10','\108','\111','\99','\97','\108','\32','\102','\117','\110',
'\99','\116','\105','\111','\110','\32','\108','\111','\111','\112','\40','\41','\10','\108','\111','\99','\97','\108','\32',
'\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\115','\32','\61','\32','\105','\110','\115',
'\116','\114','\117','\99','\116','\105','\111','\110','\115','\10','\108','\111','\99','\97','\108','\32','\105','\110',
'\115','\116','\114','\117','\99','\116','\105','\111','\110','\44','\32','\97','\44','\32','\98','\10','\119','\104','\105',
'\108','\101','\32','\116','\114','\117','\101','\32','\100','\111','\10','\105','\110','\115','\116','\114','\117','\99',
'\116','\105','\111','\110','\32','\61','\32','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110',
'\115','\91','\73','\80','\93','\59','\10','\73','\80','\32','\61','\32','\73','\80','\32','\43','\32','\49','\10','\97',
'\44','\32','\98','\32','\61','\32','\111','\112','\99','\111','\100','\101','\95','\102','\117','\110','\99','\115','\91',
'\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\46','\111','\112','\99','\111','\100','\101',
'\93','\40','\105','\110','\115','\116','\114','\117','\99','\116','\105','\111','\110','\41','\59','\10','\105','\102','\32',
'\97','\32','\116','\104','\101','\110','\10','\114','\101','\116','\117','\114','\110','\32','\98','\59','\10','\101','\110',
'\100','\10','\101','\110','\100','\10','\101','\110','\100','\10','\108','\111','\99','\97','\108','\32','\100','\101','\98',
'\117','\103','\103','\105','\110','\103','\32','\61','\32','\123','\10','\103','\101','\116','\95','\115','\116','\97','\99',
'\107','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\41','\10','\114','\101','\116','\117',
'\114','\110','\32','\115','\116','\97','\99','\107','\59','\10','\101','\110','\100','\59','\10','\103','\101','\116','\95',
'\73','\80','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\41','\10','\114','\101','\116',
'\117','\114','\110','\32','\73','\80','\59','\10','\101','\110','\100','\10','\125','\59','\10','\108','\111','\99','\97',
'\108','\32','\102','\117','\110','\99','\116','\105','\111','\110','\32','\102','\117','\110','\99','\40','\46','\46','\46',
'\41','\10','\108','\111','\99','\97','\108','\32','\108','\111','\99','\97','\108','\95','\115','\116','\97','\99','\107',
'\32','\61','\32','\123','\125','\59','\10','\108','\111','\99','\97','\108','\32','\103','\104','\111','\115','\116','\95',
'\115','\116','\97','\99','\107','\32','\61','\32','\123','\125','\59','\10','\116','\111','\112','\32','\61','\32','\45',
'\49','\10','\115','\116','\97','\99','\107','\32','\61','\32','\115','\101','\116','\109','\101','\116','\97','\116','\97',
'\98','\108','\101','\40','\108','\111','\99','\97','\108','\95','\115','\116','\97','\99','\107','\44','\32','\123','\10',
'\95','\95','\105','\110','\100','\101','\120','\32','\61','\32','\103','\104','\111','\115','\116','\95','\115','\116','\97',
'\99','\107','\59','\10','\95','\95','\110','\101','\119','\105','\110','\100','\101','\120','\32','\61','\32','\102','\117',
'\110','\99','\116','\105','\111','\110','\40','\116','\44','\32','\107','\44','\32','\118','\41','\10','\105','\102','\32',
'\107','\32','\62','\32','\116','\111','\112','\32','\97','\110','\100','\32','\118','\32','\116','\104','\101','\110','\10',
'\116','\111','\112','\32','\61','\32','\107','\10','\101','\110','\100','\10','\103','\104','\111','\115','\116','\95','\115',
'\116','\97','\99','\107','\91','\107','\93','\32','\61','\32','\118','\10','\101','\110','\100','\59','\10','\125','\41',
'\10','\108','\111','\99','\97','\108','\32','\97','\114','\103','\115','\32','\61','\32','\123','\46','\46','\46','\125',
'\59','\9','\10','\118','\97','\114','\97','\114','\103','\32','\61','\32','\123','\125','\10','\118','\97','\114','\97',
'\114','\103','\95','\115','\105','\122','\101','\32','\61','\32','\115','\101','\108','\101','\99','\116','\40','\34','\35',
'\34','\44','\32','\46','\46','\46','\41','\32','\45','\32','\49','\10','\102','\111','\114','\32','\105','\32','\61','\32',
'\48','\44','\32','\118','\97','\114','\97','\114','\103','\95','\115','\105','\122','\101','\32','\100','\111','\10','\108',
'\111','\99','\97','\108','\95','\115','\116','\97','\99','\107','\91','\105','\93','\32','\61','\32','\97','\114','\103',
'\115','\91','\105','\43','\49','\93','\59','\10','\118','\97','\114','\97','\114','\103','\91','\105','\93','\32','\61',
'\32','\97','\114','\103','\115','\91','\105','\43','\49','\93','\10','\101','\110','\100','\10','\101','\110','\118','\105',
'\114','\111','\110','\109','\101','\110','\116','\32','\61','\32','\103','\101','\116','\102','\101','\110','\118','\40',
'\41','\59','\10','\73','\80','\32','\61','\32','\49','\59','\10','\108','\111','\99','\97','\108','\32','\116','\104','\114',
'\101','\97','\100','\32','\61','\32','\99','\111','\114','\111','\117','\116','\105','\110','\101','\46','\99','\114','\101',
'\97','\116','\101','\40','\108','\111','\111','\112','\41','\10','\108','\111','\99','\97','\108','\32','\97','\44','\32',
'\98','\32','\61','\32','\99','\111','\114','\111','\117','\116','\105','\110','\101','\46','\114','\101','\115','\117','\109',
'\101','\40','\116','\104','\114','\101','\97','\100','\41','\10','\105','\102','\32','\97','\32','\116','\104','\101','\110',
'\10','\105','\102','\32','\98','\32','\116','\104','\101','\110','\10','\114','\101','\116','\117','\114','\110','\32','\117',
'\110','\112','\97','\99','\107','\40','\98','\41','\59','\10','\101','\110','\100','\10','\114','\101','\116','\117','\114',
'\110','\59','\10','\101','\108','\115','\101','\10','\108','\111','\99','\97','\108','\32','\110','\97','\109','\101','\32',
'\61','\32','\99','\97','\99','\104','\101','\46','\110','\97','\109','\101','\59','\10','\108','\111','\99','\97','\108',
'\32','\108','\105','\110','\101','\32','\61','\32','\99','\97','\99','\104','\101','\46','\100','\101','\98','\117','\103',
'\46','\108','\105','\110','\101','\115','\91','\73','\80','\93','\59','\10','\108','\111','\99','\97','\108','\32','\101',
'\114','\114','\32','\32','\61','\32','\98','\58','\103','\115','\117','\98','\40','\34','\40','\46','\45','\58','\41','\34',
'\44','\32','\34','\34','\41','\59','\10','\108','\111','\99','\97','\108','\32','\111','\117','\116','\112','\117','\116',
'\32','\61','\32','\34','\34','\59','\10','\111','\117','\116','\112','\117','\116','\32','\61','\32','\111','\117','\116',
'\112','\117','\116','\32','\46','\46','\32','\40','\110','\97','\109','\101','\32','\97','\110','\100','\32','\110','\97',
'\109','\101','\32','\46','\46','\32','\34','\58','\34','\32','\111','\114','\32','\34','\34','\41','\59','\10','\111','\117',
'\116','\112','\117','\116','\32','\61','\32','\111','\117','\116','\112','\117','\116','\32','\46','\46','\32','\40','\108',
'\105','\110','\101','\32','\97','\110','\100','\32','\108','\105','\110','\101','\32','\46','\46','\32','\34','\58','\34',
'\32','\111','\114','\32','\34','\34','\41','\59','\10','\111','\117','\116','\112','\117','\116','\32','\61','\32','\111',
'\117','\116','\112','\117','\116','\32','\46','\46','\32','\98','\10','\101','\114','\114','\111','\114','\40','\111','\117',
'\116','\112','\117','\116','\44','\32','\48','\41','\59','\10','\101','\110','\100','\10','\101','\110','\100','\10','\114',
'\101','\116','\117','\114','\110','\32','\100','\101','\98','\117','\103','\103','\105','\110','\103','\44','\32','\102',
'\117','\110','\99','\59','\10','\101','\110','\100','\10','\108','\111','\99','\97','\108','\32','\86','\77','\32','\61',
'\32','\123','\10','\108','\111','\97','\100','\95','\98','\121','\116','\101','\99','\111','\100','\101','\32','\61','\32',
'\102','\117','\110','\99','\116','\105','\111','\110','\40','\98','\121','\116','\101','\99','\111','\100','\101','\41',
'\10','\108','\111','\99','\97','\108','\32','\99','\97','\99','\104','\101','\32','\61','\32','\100','\101','\99','\111',
'\100','\101','\95','\98','\121','\116','\101','\99','\111','\100','\101','\40','\98','\121','\116','\101','\99','\111','\100',
'\101','\41','\59','\10','\108','\111','\99','\97','\108','\32','\95','\44','\32','\102','\117','\110','\99','\32','\61',
'\32','\99','\114','\101','\97','\116','\101','\95','\119','\114','\97','\112','\112','\101','\114','\40','\99','\97','\99',
'\104','\101','\41','\59','\10','\114','\101','\116','\117','\114','\110','\32','\102','\117','\110','\99','\59','\10','\101',
'\110','\100','\59','\10','\117','\116','\105','\108','\115','\32','\61','\32','\123','\10','\100','\101','\99','\111','\100',
'\101','\95','\98','\121','\116','\101','\99','\111','\100','\101','\32','\61','\32','\100','\101','\99','\111','\100','\101',
'\95','\98','\121','\116','\101','\99','\111','\100','\101','\59','\10','\99','\114','\101','\97','\116','\101','\95','\119',
'\114','\97','\112','\112','\101','\114','\32','\61','\32','\99','\114','\101','\97','\116','\101','\95','\119','\114','\97',
'\112','\112','\101','\114','\59','\10','\100','\101','\98','\117','\103','\95','\98','\121','\116','\101','\99','\111','\100',
'\101','\32','\61','\32','\102','\117','\110','\99','\116','\105','\111','\110','\40','\98','\121','\116','\101','\99','\111',
'\100','\101','\41','\10','\108','\111','\99','\97','\108','\32','\99','\97','\99','\104','\101','\32','\61','\32','\100',
'\101','\99','\111','\100','\101','\95','\98','\121','\116','\101','\99','\111','\100','\101','\40','\98','\121','\116','\101',
'\99','\111','\100','\101','\41','\10','\114','\101','\116','\117','\114','\110','\32','\99','\114','\101','\97','\116','\101',
'\95','\119','\114','\97','\112','\112','\101','\114','\40','\99','\97','\99','\104','\101','\41','\59','\10','\101','\110',
'\100','\59','\10','\125','\59','\10','\125','\10','\93','\93','\46','\46','\34','\86','\77','\46','\108','\111','\97','\100',
'\95','\98','\121','\116','\101','\99','\111','\100','\101','\40','\116','\97','\98','\108','\101','\46','\99','\111','\110',
'\99','\97','\116','\40','\100','\97','\116','\97','\44','\32','\91','\91','\93','\93','\41','\41','\40','\41','\34','\41',
'\10','\10','\112','\114','\105','\110','\116','\40','\34','\92','\110','\45','\45','\45','\45','\45','\45','\45','\45','\45',
'\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\32','\66','\79','\84','\84','\79','\77','\32','\79','\70',
'\32','\83','\67','\82','\73','\80','\84','\32','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45','\45',
'\45','\45','\45','\45','\45','\45','\45','\34','\41','\10','\112','\114','\105','\110','\116','\40','\34','\92','\110','\89',
'\111','\117','\114','\32','\115','\99','\114','\105','\112','\116','\32','\104','\97','\115','\32','\98','\101','\101','\110',
'\32','\101','\110','\99','\114','\121','\112','\116','\101','\100','\46','\32','\84','\104','\101','\32','\114','\101','\115',
'\117','\108','\116','\32','\105','\115','\32','\97','\98','\111','\118','\101','\46','\92','\110','\34','\41','\10','\10',
'\0','\1','\0','\0','\0','\3','\0','\0','\0','\0','\0','\0','\4','\10','\0','\0','\0','\5','\0','\0','\0','\69','\64','\0',
'\0','\75','\128','\192','\0','\193','\192','\0','\0','\92','\128','\128','\1','\70','\0','\193','\0','\70','\64','\193',
'\0','\28','\128','\0','\1','\28','\64','\128','\0','\30','\0','\128','\0','\6','\0','\0','\0','\4','\11','\0','\0','\0',
'\108','\111','\97','\100','\115','\116','\114','\105','\110','\103','\0','\4','\5','\0','\0','\0','\103','\97','\109','\101',
'\0','\4','\11','\0','\0','\0','\71','\101','\116','\79','\98','\106','\101','\99','\116','\115','\0','\4','\23','\0','\0',
'\0','\114','\98','\120','\97','\115','\115','\101','\116','\105','\100','\58','\47','\47','\54','\56','\52','\49','\52',
'\49','\52','\54','\57','\0','\3','\0','\0','\0','\0','\0','\0','\240','\63','\4','\7','\0','\0','\0','\83','\111','\117',
'\114','\99','\101','\0','\0','\0','\0','\0','\10','\0','\0','\0','\2','\0','\0','\0','\2','\0','\0','\0','\2','\0','\0',
'\0','\2','\0','\0','\0','\2','\0','\0','\0','\2','\0','\0','\0','\2','\0','\0','\0','\2','\0','\0','\0','\2','\0','\0','\0',
'\3','\0','\0','\0','\0','\0','\0','\0','\0','\0','\0','\0'}

local lua_opcode_types = {
"ABC",  "ABx", "ABC",  "ABC",
"ABC",  "ABx", "ABC",  "ABx", 
"ABC",  "ABC", "ABC",  "ABC",
"ABC",  "ABC", "ABC",  "ABC",
"ABC",  "ABC", "ABC",  "ABC",
"ABC",  "ABC", "AsBx", "ABC",
"ABC",  "ABC", "ABC",  "ABC",
"ABC",  "ABC", "ABC",  "AsBx",
"AsBx", "ABC", "ABC", "ABC",
"ABx",  "ABC",
}
local lua_opcode_names = {
"MOVE",     "LOADK",     "LOADBOOL", "LOADNIL",
"GETUPVAL", "GETGLOBAL", "GETTABLE", "SETGLOBAL",
"SETUPVAL", "SETTABLE",  "NEWTABLE", "SELF",
"ADD",      "SUB",       "MUL",      "DIV",
"MOD",      "POW",       "UNM",      "NOT",
"LEN",      "CONCAT",    "JMP",      "EQ",
"LT",       "LE",        "TEST",     "TESTSET",
"CALL",     "TAILCALL",  "RETURN",   "FORLOOP",
"FORPREP",  "TFORLOOP",  "SETLIST",  "CLOSE",
"CLOSURE",  "VARARG"
};
local function get_bits(input, n, n2)
if n2 then
local total = 0
local digitn = 0
for i = n, n2 do
total = total + 2^digitn*get_bits(input, i)
digitn = digitn + 1
end
return total
else
local pn = 2^(n-1)
return (input % (pn + pn) >= pn) and 1 or 0
end
end
local function decode_bytecode(bytecode)
local index = 1
local big_endian = false
local int_size;
local size_t;
local get_int, get_size_t;
local get_int8, get_int32, get_int64, get_float64, get_string;
do
function get_int8()
local a = bytecode:byte(index, index);
index = index + 1
return a
end
function get_int32()
local a, b, c, d = bytecode:byte(index, index + 3);
index = index + 4;
return d*16777216 + c*65536 + b*256 + a
end
function get_int64()
local a = get_int32();
local b = get_int32();
return b*4294967296 + a;
end
function get_float64()
local a = get_int32()
local b = get_int32()
return (-2*get_bits(b, 32)+1)*(2^(get_bits(b, 21, 31)-1023))*
((get_bits(b, 1, 20)*(2^32) + a)/(2^52)+1)
end
function get_string(len)
local str;
if len then
str = bytecode:sub(index, index + len - 1);
index = index + len;
else
len = get_size_t();
if len == 0 then return; end
str = bytecode:sub(index, index + len - 1);
index = index + len;
end
return str;
end
end
local function decode_chunk()
local chunk;
local instructions = {};
local constants    = {};
local prototypes   = {};
local debug = {
lines = {};
};
chunk = {
instructions = instructions;
constants    = constants;
prototypes   = prototypes;
debug = debug;
};
local num;
chunk.name       = get_string();
chunk.first_line = get_int();
chunk.last_line  = get_int();
if chunk.name then chunk.name = chunk.name:sub(1, -2); end
chunk.upvalues  = get_int8();
chunk.arguments = get_int8();
chunk.varg      = get_int8();
chunk.stack     = get_int8();
do
num = get_int();
for i = 1, num do
local instruction = {
};
local data   = get_int32();
local opcode = get_bits(data, 1, 6);
local type   = lua_opcode_types[opcode + 1];
instruction.opcode = opcode;
instruction.type   = type;
instruction.A = get_bits(data, 7, 14);
if type == "ABC" then
instruction.B = get_bits(data, 24, 32);
instruction.C = get_bits(data, 15, 23);
elseif type == "ABx" then
instruction.Bx = get_bits(data, 15, 32);
elseif type == "AsBx" then
instruction.sBx = get_bits(data, 15, 32) - 131071;
end
instructions[i] = instruction;
end
end
do
num = get_int();
for i = 1, num do
local constant = {
};
local type = get_int8();
constant.type = type;
if type == 1 then
constant.data = (get_int8() ~= 0);
elseif type == 3 then
constant.data = get_float64();
elseif type == 4 then
constant.data = get_string():sub(1, -2);
end
constants[i-1] = constant;
end
end
do
num = get_int();
for i = 1, num do
prototypes[i-1] = decode_chunk();
end
end
do
local data = debug.lines
num = get_int();
for i = 1, num do
data[i] = get_int32();
end
num = get_int();
for i = 1, num do
get_string():sub(1, -2);
get_int32();
get_int32();
end
num = get_int();
for i = 1, num do
get_string();
end
end
return chunk;
end
do
assert(get_string(4) == "\27Lua", "Lua bytecode expected.");
assert(get_int8() == 0x51, "Only Lua 5.1 is supported.");
get_int8();
big_endian = (get_int8() == 0);
int_size = get_int8();
size_t   = get_int8();
if int_size == 4 then
get_int = get_int32;
elseif int_size == 8 then
get_int = get_int64;
else
error("Unsupported bytecode target platform");
end
if size_t == 4 then
get_size_t = get_int32;
elseif size_t == 8 then
get_size_t = get_int64;
else
error("Unsupported bytecode target platform");
end
assert(get_string(3) == "\4\8\0",
"Unsupported bytecode target platform");
end
return decode_chunk();
end
local function handle_return(...)
local c = select("#", ...)
local t = {...}
return c, t
end
local function create_wrapper(cache, upvalues)
local instructions = cache.instructions;
local constants    = cache.constants;
local prototypes   = cache.prototypes;

local stack, top
local environment
local IP = 1;
local vararg, vararg_size 

local opcode_funcs = {
[0]  = function(instruction)
stack[instruction.A] = stack[instruction.B];
end,
[1]  = function(instruction)
stack[instruction.A] = constants[instruction.Bx].data;
end,
[2]  = function(instruction)
stack[instruction.A] = instruction.B ~= 0
if instruction.C ~= 0 then
IP = IP + 1
end
end,
[3]  = function(instruction)
local stack = stack
for i = instruction.A, instruction.B do
stack[i] = nil
end
end,
[4] = function(instruction)
stack[instruction.A] = upvalues[instruction.B]
end,
[5]  = function(instruction)
local key = constants[instruction.Bx].data;
stack[instruction.A] = environment[key];
end,
[6]  = function(instruction)
local C = instruction.C
local stack = stack
C = C > 255 and constants[C-256].data or stack[C]
stack[instruction.A] = stack[instruction.B][C];
end,
[7]  = function(instruction)
local key = constants[instruction.Bx].data;
environment[key] = stack[instruction.A];
end,
[8] = function (instruction)
upvalues[instruction.B] = stack[instruction.A]
end,
[9] = function (instruction)
local B = instruction.B;
local C = instruction.C;
local stack, constants = stack, constants;
B = B > 255 and constants[B-256].data or stack[B];
C = C > 255 and constants[C-256].data or stack[C];
stack[instruction.A][B] = C
end,
[10] = function (instruction)
stack[instruction.A] = {}
end,
[11] = function (instruction)
local A = instruction.A
local B = instruction.B
local C = instruction.C
local stack = stack
B = stack[B]
C = C > 255 and constants[C-256].data or stack[C]
stack[A+1] = B
stack[A]   = B[C]
end,
[12] = function(instruction)
local B = instruction.B;
local C = instruction.C;
local stack, constants = stack, constants;
B = B > 255 and constants[B-256].data or stack[B];
C = C > 255 and constants[C-256].data or stack[C];
stack[instruction.A] = B+C;
end,
[13] = function(instruction)
local B = instruction.B;
local C = instruction.C;
local stack, constants = stack, constants;
B = B > 255 and constants[B-256].data or stack[B];
C = C > 255 and constants[C-256].data or stack[C];
stack[instruction.A] = B - C;	
end,
[14] = function(instruction)
local B = instruction.B;
local C = instruction.C;
local stack, constants = stack, constants;
B = B > 255 and constants[B-256].data or stack[B];
C = C > 255 and constants[C-256].data or stack[C];
stack[instruction.A] = B * C;
end,
[15] = function(instruction)
local B = instruction.B;
local C = instruction.C;
local stack, constants = stack, constants;
B = B > 255 and constants[B-256].data or stack[B];
C = C > 255 and constants[C-256].data or stack[C];
stack[instruction.A] = B / C;
end,
[16] = function(instruction)
local B = instruction.B;
local C = instruction.C;
local stack, constants = stack, constants;
B = B > 255 and constants[B-256].data or stack[B];
C = C > 255 and constants[C-256].data or stack[C];
stack[instruction.A] = B % C;		
end,
[17] = function(instruction)
local B = instruction.B;
local C = instruction.C;
local stack, constants = stack, constants;
B = B > 255 and constants[B-256].data or stack[B];
C = C > 255 and constants[C-256].data or stack[C];
stack[instruction.A] = B ^ C;		
end,
[18] = function(instruction)
stack[instruction.A] = -stack[instruction.B]
end,
[19] = function(instruction)
stack[instruction.A] = not stack[instruction.B]
end,
[20] = function(instruction)
stack[instruction.A] = #stack[instruction.B]
end,
[21] = function(instruction)
local B = instruction.B
local result = stack[B]
for i = B+1, instruction.C do
result = result .. stack[i] 
end
stack[instruction.A] = result
end,
[22] = function(instruction)
IP = IP + instruction.sBx
end,
[23] = function(instruction)
local A = instruction.A
local B = instruction.B
local C = instruction.C
local stack, constants = stack, constants
A = A ~= 0
B = B > 255 and constants[B-256].data or stack[B]
C = C > 255 and constants[C-256].data or stack[C]
if (B == C) ~= A then
IP = IP + 1
end
end,
[24] = function(instruction)
local A = instruction.A
local B = instruction.B
local C = instruction.C
local stack, constants = stack, constants
A = A ~= 0
B = B > 255 and constants[B-256].data or stack[B]
C = C > 255 and constants[C-256].data or stack[C]
if (B < C) ~= A then
IP = IP + 1
end		
end,
[25] = function(instruction)
local A = instruction.A
local B = instruction.B
local C = instruction.C
local stack, constants = stack, constants
A = A ~= 0
B = B > 255 and constants[B-256].data or stack[B]
C = C > 255 and constants[C-256].data or stack[C]
if (B <= C) ~= A then
IP = IP + 1
end		
end,
[26] = function(instruction)
if stack[instruction.A] == (instruction.C ~= 0) then
IP = IP + 1
end
end,
[27] = function(instruction)
local stack = stack
local B = stack[instruction.B]
if B == (instruction.C ~= 0) then
IP = IP + 1
else
stack[instruction.A] = B
end
end,
[28] = function(instruction)
local A = instruction.A;
local B = instruction.B;
local C = instruction.C;
local stack = stack;
local args, results;
local limit, loop
args = {};
if B ~= 1 then
if B ~= 0 then
limit = A+B-1;
else
limit = top
end
loop = 0
for i = A+1, limit do
loop = loop + 1
args[loop] = stack[i];
end
limit, results = handle_return(stack[A](unpack(args, 1, limit-A)))
else
limit, results = handle_return(stack[A]())
end
top = A - 1
if C ~= 1 then
if C ~= 0 then
limit = A+C-2;
else
limit = limit+A
end
loop = 0;
for i = A, limit do
loop = loop + 1;
stack[i] = results[loop];
end
end
end,
[29] = function (instruction)
local A = instruction.A;
local B = instruction.B;
local C = instruction.C;
local stack = stack;
local args, results;
local top, limit, loop = top
args = {};
if B ~= 1 then
if B ~= 0 then
limit = A+B-1;
else
limit = top
end
loop = 0
for i = A+1, limit do
loop = loop + 1
args[#args+1] = stack[i];
end
results = {stack[A](unpack(args, 1, limit-A))};
else
results = {stack[A]()};
end
return true, results
end,
[30] = function(instruction)
local A = instruction.A;
local B = instruction.B;
local stack = stack;
local limit;
local loop, output;
if B == 1 then
return true;
end
if B == 0 then
limit = top
else
limit = A + B - 2;
end
output = {};
local loop = 0
for i = A, limit do
loop = loop + 1
output[loop] = stack[i];
end
return true, output;
end,
[31] = function(instruction)
local A = instruction.A
local stack = stack
local step = stack[A+2]
local index = stack[A] + step 
stack[A] = index
if step > 0 then
if index <= stack[A+1] then
IP = IP + instruction.sBx
stack[A+3] = index
end
else
if index >= stack[A+1] then
IP = IP + instruction.sBx
stack[A+3] = index
end
end
end,
[32] = function(instruction)
local A = instruction.A
local stack = stack
stack[A] = stack[A] - stack[A+2]
IP = IP + instruction.sBx 
end,
[33] = function(instruction)
local A = instruction.A
local B = instruction.B
local C = instruction.C
local stack = stack
local offset = A+2
local result = {stack[A](stack[A+1], stack[A+2])}
for i = 1, C do
stack[offset+i] = result[i]
end
if stack[A+3] ~= nil then
stack[A+2] = stack[A+3]
else
IP = IP + 1
end
end,
[34] = function(instruction)
local A = instruction.A
local B = instruction.B
local C = instruction.C
local stack = stack
if C == 0 then
error("NYI: extended SETLIST")
else
local offset = (C - 1) * 50
local t = stack[A]
if B == 0 then
B = top
end
for i = 1, B do
t[offset+i] = stack[A+i]	
end				
end
end,
[35] = function(instruction)
io.stderr:write("NYI: CLOSE")
io.stderr:flush()
end,
[36] = function(instruction)
local proto = prototypes[instruction.Bx]
local instructions = instructions
local stack = stack
local indices = {}
local new_upvals = setmetatable({},
{
__index = function(t, k)
local upval = indices[k]
return upval.segment[upval.offset]
end,
__newindex = function(t, k, v)
local upval = indices[k]
upval.segment[upval.offset] = v
end
}
)
for i = 1, proto.upvalues do
local movement = instructions[IP]
if movement.opcode == 0 then
indices[i-1] = {segment = stack, offset = movement.B}
elseif instructions[IP].opcode == 4 then
indices[i-1] = {segment = upvalues, offset = movement.B}
end
IP = IP + 1
end
local _, func = create_wrapper(proto, new_upvals)
stack[instruction.A] = func
end,
[37] = function(instruction)
local A = instruction.A
local B = instruction.B
local stack, vararg = stack, vararg

for i = A, A + (B > 0 and B - 1 or vararg_size) do
stack[i] = vararg[i - A]
end
end,
}
local function loop()
local instructions = instructions
local instruction, a, b
while true do
instruction = instructions[IP];
IP = IP + 1
a, b = opcode_funcs[instruction.opcode](instruction);
if a then
return b;
end
end
end
local debugging = {
get_stack = function()
return stack;
end;
get_IP = function()
return IP;
end
};
local function func(...)
local local_stack = {};
local ghost_stack = {};
top = -1
stack = setmetatable(local_stack, {
__index = ghost_stack;
__newindex = function(t, k, v)
if k > top and v then
top = k
end
ghost_stack[k] = v
end;
})
local args = {...};	
vararg = {}
vararg_size = select("#", ...) - 1
for i = 0, vararg_size do
local_stack[i] = args[i+1];
vararg[i] = args[i+1]
end
environment = getfenv();
IP = 1;
local thread = coroutine.create(loop)
local a, b = coroutine.resume(thread)
if a then
if b then
return unpack(b);
end
return;
else
local name = cache.name;
local line = cache.debug.lines[IP];
local err  = b:gsub("(.-:)", "");
local output = "";
output = output .. (name and name .. ":" or "");
output = output .. (line and line .. ":" or "");
output = output .. b
error(output, 0);
end
end
return debugging, func;
end
local VM = {
load_bytecode = function(bytecode)
local cache = decode_bytecode(bytecode);
local _, func = create_wrapper(cache);
return func;
end;
utils = {
decode_bytecode = decode_bytecode;
create_wrapper = create_wrapper;
debug_bytecode = function(bytecode)
local cache = decode_bytecode(bytecode)
return create_wrapper(cache);
end;
};
}
VM.load_bytecode(table.concat(data, [[]]))()