-- CeetOS signed release. Generated; do not edit.
-- CEETOS_RELEASE_MANIFEST:e2NoYW5uZWw9InJlbGVhc2UiLHByb2ZpbGU9InJlY2lwZS1zZXJ2ZXIiLHZlcnNpb249IjAuMTYuMiIsc2l6ZT04MTAyNzAsZGlnZXN0PSI4ZTkwNTQ4NzJhOTQxYzZjODg0OGViMGVhOWI3MzdmNTU0MDI1YjIyNjY1OTQ2NzQ5MjI5OGY5NmE5YTU2NTVmIixrZXlfaWQ9InJlY2lwZS1zZXJ2ZXItcmVsZWFzZS0wLjE2LjEiLG5leHRfa2V5X2lkPSJyZWNpcGUtc2VydmVyLXJlbGVhc2UtMC4xNi4yIixuZXh0X3B1YmxpYz0iek5kMzlJSHo0RUhHVmxSSEQ4N0JUTFplRys0Njl0UHc2Y1RxU0xaZW83YjRwS0NjYzZuelNBQlhQZEx5NnA1Q2tVR0wrdWJRa3J5VU85VFc0V3hackE3cXJzc0xmbFZOYzJZRkFOdk9zMklEZ1pwN0V0QkpXR3R0Z2FtdjJLWk45QzdSOHdFUXlvaGpSOW9sRVVjU050L3ZoWlFPeU00cUYvR2w1RVpmYndJSDRaS0lERTc0TVc0THFqNDQ4aEF4WWgveTN2TW1CaTZwYjJIdXFPUTZMNVAweWhIeXh2UWhSeFpNVGxtemkwcjM0OFU1RXlSTWRlNDRyVGIxK1dmZkhZTHl5NHh1MjkrZTJ3UEdPWWdvdUlicUtjT05RcDdSWU1RUnk4VWhDNFlwV0t4WTJ2MHV0M0pDb1hhWE1rM2h5Q2x5NUVjSjZMR3R4UHptTm5WQytmU2d2TXVQS1FiMzN6UWwvZ0FnbUhNNjJxcmpGbkw0cGZrdGIvcDltdDhTY1JUb3VrRFVLb1RsWVNMdGZLajB4WHJTMEJBWEphTkx5YXp1T2xDSDdSMHkyNVJIeFMrcGd1NCttbzRyNVRkNThPWnlMSkswZ1lBZ0JXOXZiRU9ESHR4RW0wMmUzNkZzdzF6V1R5N24yNUhQSlVveDlwM1lvSGhaUlU2NFJUYjZ0K2o2MDF1MklHU3dUYUtGT21BOEZoSFhhRDdVK3dqSlVjMU9QQVlvTU1SNkJlZGllRWU2UHdiWTA5Si81dklybmhJNU8xWWFEV1ZDbDVXcldxeHpKM1lEUk85akFteThuNHl1T3hOaTY5U0tSZHJiSWpEeWMrb2lKeEhTSjJBcHBEVURRRjB2aWp1SmlKczhNUGFPTkN1R2taMzQ4RXNQLytKZXNBQjlLZDZ1RWlIallDK0tWbUtUUFJYTytsT1h0UEpDdS9pRWVWUFNpTjZVbXF2eXZRdjdqaGRJNWllVGtLdjVycXFGQ0M3TnRHaWpScjVWbGNzTGFNQVRkWEIxaVJ6OXR0alNWUFVnNUlMVTY5em95cmtmMitxRUxJaUFVMEw1L2VTTTU2eC9UZEl2TVZZSDlHdm1NOEtzc0praktlNjlBUU1WYXNkQW5FdElxY2xMUHdzQXFXNG15eGdQMDMzei9aelZEUGJmdWdNS2phZEN2cElPcXhqR3FxVG1BQ1VGSnVYZGJlaTdtZVVlRVRSSEZhZkg2ZXR5SVVoOEQ5K21KNDlqc04rRFNMS0hqZWx4Vm82ZkgwZS9YVElNQ3VqZWU1d2J5UFhKVkZrZUlQMXJ3cEM0MWVlbHdYaEVXaHlWZTBTK1pZVnNNc010YVlvdlVpeFNWNHZYemFlZFRjc3ZPNXJ0NUtPL3MvdWZmU0hTSlJubkFjbklrSnJGRHFhMzdqaGs0M2pzWmdLblNmVmZoWTdtSHhHa2JrYlc1U1c2TE5tUmwyNXF5ZnR4ZjZRMjNReGs1OFlhZXF5TFpKSHh5RFVJbWtySDBBOTVBZDZvN2FDeWRwU3JabkNzeHVYQ3BrWms3d2RWM0tGM1lxVnBURkdMM2tBeVk1WDcyc1BzTks1R0NVYXBWQWVqZWlILyt0bmxuaHp0VFdOZ0diMnVyelhCNkliUHlGM3VBMFVrNDk0cDhHc2h3ZzZEb2FqY2tUaENYRTA1Mk5SeWVpak5adERoZWhwQmhseFpuNnpSTmJMUzlxMmRsU3FSaTR0aS9tY0VCS2dZeTdwd3NoSnRuUWVVM21xelo3SWhIVEdWbHNyMlNHOWZWaW5vMTFKVW9wMUYxZ2NkZ3FxdXRvMkQyMUlmbHhUSHNLQTdNQ1owdVBIRFJ1emRHTGltT0txM3FtdXFMdks0cmpZOFdVZmlLVHZYU3ZaQWE0Zm12VEs3UXp5NFgxOG1pZ3VmVUE2QnZEWGRrUzA5S2FqNUFNTzR6cHdEeW9oZloybVQ0VVpNNGFJdGtHaE5xU1dmUXJocVJlcW40UUlua01iZWVROU5zZjJFMXpGV0U4ekhacnI0KzZpb2dLUTZEZ2FyVTYxamhzZFRaanpnMHZ1QUpwejdRMk9zUUpzand1RjB4ODBKejZSTTRqR3FjREU3b09iTG9WbGdncDNQUGw3eEQ0aWY1SHQwdW5OVzZwMEF5Y25JUmhGQXFFQzZqSjc3Q2hsQVdveFNKUUNEVGRQTTc3WnVCb0NxalV4TUk4aVZhUTlRR2ljM3IzdzRneTE2YkR2TXF1ck5OS2wzR0dtYzVqT1NYb2cxcmFIVDkrdVE0dHNuc3dTdXNxZVlFejBMb1BOOURNNjlyam5UWFF0NXFuNkhjN1VUR2lXMFR4VUtVVGVBaGpCNnBacjNHQUdZRzh6T2NYcllGblFYZEVwZzA5WWc5NlVrc2krclBLTnkzSkRZLzJENlRnN3c4MUlFYllIdjMwY2NGQWtacmlWb0YweVFUalM0MzdZTWViUkx3NU5pSGRhODRlUTNwajNxeVZuRG5OUVI4SHhKaEllOU9uMVlIaXdMdDQ5emFnQkpSOEZEZnRHenFNcnBzRzRKeGNybS85QU5odlhrSEgzYmFiRXhPaHB6NDE0TmlRb2xDUXNZYlpsa3lVMS9zc2dacGtmL1A4dzNOZjUrNXVFWU9pQUZCbmZJNTBuTHVYanNTOG5rb2kwdVJuRjF1VVBKL1lSSGo4ZVdqYStwaWM2KzYxU2xibStIdVNwUEJyRDU2ODhoSlFqQnhORWQ4eXAvaHYvdDM4TkNFK2ZwZzMxc0JGUldna1FRL0FtSzVYZExsR1NTZmVZdm5lQjR6VmdZNXBTN3lmMGliU3A5NmpHdE1TRVNMRWpmVHNVakM4WnZDeTZnT1U3MCthTjRvMnAwNFlESDMrTGtTL0tuckNhNHJLMVA2NXFVMVF4T3hOc05Ma2dGNmJ6QS8rQWV1dWl6R3VXZW11KzdKZnZ5Z2pTZHV6TmsrYnJHN01MdXdUR3NoZVdEZFBZRUdObXJQN1hpN0gyOGppQ2FpM2RxOFB2cTZNQURIYTJJdC9DbEV4MW9LMzZMcDlxVjJGR2F5MHlvRHVYRDhMUXkyaTJtN0podFRGK2o4bFVGUElhcWg4Qm80cmxEUGt3czZiNE5MU0krNVB0SUgzeEc0V0gwMy9SRllJdTN5bjhTOXIvNlRoeUpCNGQrTll0NlM1OXdJeW5aMWp3K3NqOFJCODZDb2pZZmNwdlRzYWdtWXNlaXpDOGwyVk9yUFRsUDZtVDA3N3g3eFRtYjlwQkxaMkJ5RGZHV0twL3RpOGhEemUvUE1DY2FzQTR1VFdwWmxBUXUvMlZjVzgyR2ZGTHB0aXdSY0lCdWl4K21vNG5zbnk2MnhzUmtBWHhtREl4MkVLMlRTZThGc3A0cTZNV0lRZ2U4UCtMVEhkVjExWnFpU1BpWHd4L1MxdXVzeTFnSUZZQzJPR0lwU0cvbGpDS0x0Y0dLV1g5Rjl2Qzc1dVc5azB6ZzB0QUxSNEQ0dkw3cG56T2pmQXU1UC9NRUhyOW13UVFrMVJwd2plODdSMVUwS0ZwYjVISDVLdTU5T0JISDlXYnFvMm5vNmFaMmd1QS9BR3VnY1FxZ0RVa1Ruak90YkZ4Y0VKZ1VPWkVHWU1EYkszK3dPcDBjdVRRMHNKWGlkTjRkQ3ArQU1FRkRBNjU1RkNsK25GWS9QVEQ1SkhsdHRxYi9ObnVLM2orS2hzN2JHUlB0WnE5UGQxZzZ2TnMvRm5vRWhCM05xbjc1TE9pWDl5SGJCSkU5UmNSUnBLRHdRSWNQSDJjWVVXbGZ2RkNUR0x0bjN4VDFzUHFML0ZjdEtVUkVGRlh0Vjd4QUhHd3RzNkJOVWVRWnZISDg1clBBb2tyakNFMFdpeHYzcnMzNTZCUnZZSWo0di93OSt5Wi9pZ0FLdk8yQXJ1YVZkN2M0K2Q2SDdBWWdyVE9uWjJEeFM0MENqeWl4WTBFSnVYQ01uREJONkprMFlDSHB4RDhxWmVHOWUrVU1LTFNKclhxOTFCSWdYMU1xS0VyZzJvRTRkZ3RTZmhvSG1ZSHZmZk1kbGJqWkJrSHZHakRCS1VmNTJlelJvUnNHU3NoRmdVZSt0N0Q4dU1jcEkvMCt3NGhkbUdNd3lheHNNbHhQOEJHZE1wclN1cjFhRldocENxUUxWQWRsYlNUNzVPZEpQTWJuYlFaNjRhWmZEdzMyUFozVERjclF3THBrQ3d6V1B5WHIvbXJrN1E3NFZaQUFIK0MrVVVxR2JxWk1kczY2SWNvcGFKb1NxaVcwbWRQOGYzQmV1Uk5hWHF6QnZCVlZWVERuVFpuSGVMeW9xZmMyTVpaRFFWcnFKZ0paMWdQRTljVGRvR3VQZXVldjNtVjFqSHJNNWxqOEpVZGRrcVJDSmdCb3pTRFNWTHBvcXlpSTJ3bGliZmFleGdNU0EzZzhBRDR2ZlBrK1hab2cxbFY5blJrT1pCU04wNkhMM0grRlJEYTF4ODdIWUFuRnZnem01alY3dW5Wdko5OTYrTWNVZFpHVjM3UjlVTWRYZ29CbmFjR0VCUGhpckZhV2NRbjd5cFlka1VMaVU2SFR2TmFqbFBaZlJjNk5tY3Jha1dNa3VGZjhBNUUvVkVITTZEaHNlMWxkUDRydENPSzd4NmgrdEtRQXUvOUtxOXV3cWRTL1g2b3E4aHpvZFhTL2RYYkhBcng4T0MrMTVCWTFrL2R1REFlakhHdFNIM3ptOVBaMXJlQTlLaUJ3bks0RUNLWjVwME02R0J6bHZJOTlzVFBiM3FRaUdOU3VTU3E2K0tpUEtKS1hCc0lmb1hKTjQvYjZHRHRpQnZiaWJmWE03czcxUFZucDNHZlRMaVJrQTA1SmJubmF5N1cyT0xTdlZVcWZjVjU0UnR2eklLRVJpVnlGd1JsZksxWGc0Uit6bFB6d0ZOZUwwR0JCaUxnMlZkdGhjU3JCRWN2cGVmcmJlcjkrdmtXL1FEekhuSUtZZFBzQ08vODJ5YkwvWnovT3dGeU5hYy9TcmFlditoZ2llVWxrQS9OMnRNaEQyMm9XTUFTNE5YTkRrcXh6YjgwRnBwdnNmTWxhYnRhV0xXU01aMG9jYmhPdFNHNDVpWXJmR2RQTWgwOWVCZy9RNTFGY3NCVFlYbCttZlNFeUtYTFVWMDJYeWkxM2tNNjBoWUZDSkpnM212V0ZodEdNYS9tQWpKZGVzNE1kVXdBelJHcll2N1pNMEhWWDJJRk45YTE3eFY5b0gzSE5XendmYmR1WkZiTEVTYTdVd1h3YWIrSU9lRjhMVHVzdXNsS0xIcWlNbkM5VnRLYlp0NTY3ZGl4RElzZEZjYXJ3NlVQZkhyTkM3RmJ3VGNVdFd2bG5xUDVDdDF2ZXowT0JFZGNxL01WZFp4ajVRQzNCdjNPSi9Jd2hhTjdFcDFEVWtyTno5Umt5cGc1QXRvMnJyUjRLVmJuTTFUckxBdVFCRUVaSUs2RGt6NGJVWkFCcXllRFhUNlVvZC9WUXd4cEZNOHFKZWxZMlN4SnkyVnoxQUxNU0JzT01obENCRjYrWjF2cmZzOTMxcVphMXZ5Y0RHSXl1MHo5dmhHS0FVV09nV0Q0eE4zOTI2SjlwYlJmMWJ0eWpGWFhhSUtKMUcwekFsZUxwZzd5d2pTb05aZytVSVBEVm45YnF1VXlMM3pHVlVHcHJvREI4VE0rY3ZCSm1EWjU5Q2VUN1N3cVBTc2w2a3lsMHJnN21Scmt2YlhHMnRnR1poOGlreW5qTzlBSDdBL3d5N2VOL2lBSVdaY2M3TzNFVXNGTTI5bDZ4OEVDMnhpT3VtQzlIQ3A4L28wUlZ0Q1MrVzBWUTIrL2ZSajdNQmJONnJqdlUyUGVrWGVXRmV4dHU5Vm5ubUtWRnNtcVU0akJ0dTVDU0ZZdkVKWlpzanlJajBnVFg4aTlVRUNlL1UxRHY4WDJTeC9IUUFtblErc3ZONmxYVFl2NmdLbE85OWUzT3pmL2diNmpKWHBKUG1zZjJVejZIK3dwdjVybXlUdE5MbG10dm11c2FJMlFZK1g4SVNBeWl5OTdtL3kxUTlIU21YZDFhMkhWMHR2SktHcWdLK3BsbzR2b2FlTXpOaTlYZDBYdUx6UlJpUXNHdnl1cS8wQWxEMUpDRGlldmd0WGpweFdWaXlCWjBVcmNValpVOWlqQWlmU1hVT3hsR0ZMbE1Lb2Z4UDFCVVJnQlhwNlEyM2ZXR2pkdmU3UVNId09IbkxuSlExRXBvbW1mS1JRVC90ZDYyYktvV0pnR1RnREFMVGZlaWR2bE5lbmlOOE0waThMRDNLTlA2RVRwSDhxVnZqUXJZTys5WnRHMG9FRjM1Rkp5NlU1eVUwNlRoUjgvdGg1UTNBTkZaQTdkTEswclVJbkg5NmNSblBpam1pUm5mQ296RlBPVnBXaUgvZ3JibGJBS3pKUG91ZVFMdjE2b1hBWFhqSVNzUUdlbFl0QmtKaGdubWhCK0ZXUjlGbGw5eTVVMUNyNHFua2M4eE1keEk5T01pUTdVSWt5Q09vVjYyZWUva2J1b1BEeTR1TFhNNHdKYWpjRmpRSmVpVGJlYWQrRjIyOXZvTGhmeWxpVUEzaVdpUkk5MmgyRnZPYTNxZUdrNjNVbTRJU1FraHhTN1ZxMTFSSG1FOVkxQWRGYmtpQm1LcUgycnNuWEF0U0hOZUZOMloyN0krNHpNRnZWVDNJVlBIT3BOa05qWVVZT1d6QVMxdkVlTlBUUzFRb1NORHpSR3U2Nm9jbllKQTlkQWtrN0dTMkd4U1FJUUNOYzRQbzZLVFN6eEdGQ0RRTHJNdWpyZG91NHN6VER4ZnRueGNuNUNZelZ5UmUzL3pySGtkQW5FT3BXcGJjTlBDbnA3QlUwbmtTeG5XSlI5MzlialJ3L3dvcFc0aUZJYW9OcEZmM1lRZnRLMGY0TDNiajdZbDBUNnhnQWtzeE1wUThyNHRaZWtTT2hzellHcEZjTUdZREs1aUJwZlhYY2ZFLzlvUisrQ05yMzU4c25IQXo4d1lOTnJHc1czOGtMTkRFM1FucGV4L3BGcFJZY3BHQzhpK091cWE5TXVFVFgrWHNDM040alE4RGpocHBoQnBIV1A3M0ZDV1NpM1hIZkxkczd2ZHN6bnJ3WHQ5UC9EZjF3MUF2Q1F6N2tlR3FGRW80a2p0dTAwS3dtQ25OZ3lsTUNRelJHaTdWOEJNd2JqRG9lM1Q0QVV6TmFvcWdpeWo4QW5ramNSSnJPTHludXdaTmZIeWwwT21WZFg1eHUwZjE5emxPYzFNdzNJRkpON2pNYThkRVlzM3RPWHFZK2xLQ3c0RmhFYTJuVGdyTHVLMXFZQzhSQzB2blpiYzdRd3VobkFRSzVTbE9Ta09qQllRbExoUDhPdnlDU1ozWktaWVV5ZWQzbTdNNmkrRm9CWXFPZDB4OUg2eWEwbUx2eE56M1FpQ0ZJQURpUjNRSHFLd3RtRFhvcEh4WGIvRE5rcUVEN3k2NURaOGp5dEJLdm1MVSs3SG1sa1U4MlUrYUVrRnRTSEtjcGdEUFFQMmFtWURxa2pTVFdhS3dxZEJ4SmdHQ1hTTng0RTdvSS9BK1BvampWQ0o5dElvYndDdWtTZDMwVEpWUlQrTTBKN3Q5SElscjJYWk1rZEREWUJ5UEtFa21PaDYwYnNRaWJOd1kwaDViUUxqbUFGcnh2N1JKKzF1UkxSd2cwQkJtajQrbEExTDFqbGRhamNKQW5IRllQdTZDcHJ5OTY5dTZqUi9WaEVYeDRjUHhUUFhIRHBLbjMyQklmcFVtcStLck1DTzVwRG9HV3ZHZkl5UitCK3BlNUIxMlpxZmlmS2VVV050QnBYWHByREtvQ1QrR28rT2gvY2tDYmNtdXJQQUhFUXdSRzR1amRiaGp0MUtVU3B6RlVaVG4rSXJqa2p4ZS9yQUh6K2kvODVuYkUxZTZCeFdYYWp1Y3g2ZW93UDZMNVFLSTArQ05SczNtdlQvUkJwZW9Ed01WY3lIUkN2Rm56blVlMUNKMy9sejVCTzRQUlVhdVlZNC8wdVBldjlSU1VqTXBiVVcxTVlqQlcvMXBRQnJWTUU3bUJHZzZ1S3g3KzhxZkN2aTB0bWg2VWgwdDREeUVjYkxldzNoeFNGMmpKOHhYWGFJNTlKbk4raTFwT1d1K2h5YTJ4b1FkQnE1bnBHZmhZWEk1QTJDRDFxRjYxSGlJbXdQYkk2TE85ZzVpSmY1eWFZQzRRSWdHQ3RRaVRpd3BzSURLY2NyYU5GMkwrTXprZldyYVU5ZldBMkF4QTBMTXZyYmhjblczTEc2bnBPTEhUS2RZQ01NWVdUTjNjMWhHTnpyaW45ZmFwaVNVUU5XM1JEN0xHWmtDeFYxKzNLYWJkU3FHQWdZKy9JcXh0UEJlR0lNRndRVng3SXRoWFIwOGxoK3BVNDNoeU5XbHhvQ3V2SUNMRFVlaHcyU2lkZTJMNWhSVENuZGFYMUpwRmdYNVFlemRjYUozQVVlNXlmM3JDQjZQemVSU3U0SDlUUHdseWZDVVRROGhRTU1kcW1qTGhxclFwaVJ3MnpxdlhiQVcxWVBWM2tuc1I1cmFJSEYvbmtCVHlKVVVDbGZ4NEhFMG1ERkREZVorVGNVaDFBeGJmeG9XcVRkaUtRTFkrWTdFQlc3aXBKWUhUU1hXeEFDWTd6UHZSSGRjekVGTlF3V1BFdVAwRllsL3kxd2lmMHVmV1hhOEtkSi9DbEFpNjhYUFltWUtqek9hV0QzMkdxSW5OaFc0QmpNRmw1ZzEyaEJBSyt4dUFnS0ZuUWdmV3NKMEhJV0ZUa3hoczBjSWRBN2VvaGU1aFBoMWFPWUNJeGZHRVh3cjdHcWlpdFhXTlNFOGN4R0E5TmlURWh0RW5qV1Z1dTFSNjFWNkJvaVRsTHpuamp5ckFaK2NtSWdIVTVvaVA0R2J5cms2a1ZKN1BhdGZEbHFnQkFIMEZxMTI2YzRZRk1CeVNyM2FKQ2RHc01rd1ltTXM1ODBaMzZkSjNWQUQ3VVQ4UkJVZk9FVWZGVzBKMWtMRkFld3JOVVdReEpPRDVXRlpQbVRpMk43SzhYclRHaU14dTdKZGxlTTJnbHM3YjJJR3hnN1o0K29Qa0NRQXgvOFF1UUs1UXJzY0g0U0tIR1VjMm10N3hJWk5VeUJxcXR5K0RNM1QxS2N4WGtKanJsSGhIRGNtTU9jYnRKMmtTdXJ3aGF4L096MXpDMXpsZCt5MVlxbi9HOGN2Wis5Vmp1clV4a3kwd3p3ODZtSUxLMUFZWUNGTUpncklvRC9Fa2cycjhjOXlOVXp6Rm9zdzdIWHY5SnlRR0FKd3Z2WGxTZmljVnF5b0dTam15alFBMWFxZ2V2ckE3MFMwTUt5cWFjV0x6aWJFNDhRMU44a0tweEJrNEFOdmpZbCtjQThENHFET1NQQmxCQU9XcVZQMUJKOEtVRWVBRnAvRWZJYnNVM0FuMHZUZ3I2enJBUElWUWdCbWtFUldMTmg2WVd6WEFpdENDTitQWFg1YzJ5RUpCNC9uZ3JDei90b0EvQmdhdzM3WDF6N2gweDZlbEszL0toa2lpMmNaTENSM212NzJvOUgzZGl5eUtSUVArRlNWeUNCbWlTK1gyQXZWbkJzRHlHN0liNVFsNFEyK3AxdXNOeW5nQm5JTG9Yam54eW5mMzBHUTZ4WmE4bjBJZUhUeVU2OVVTYTRWTW1zNkNodlp4VDlYK29CeDU1WEI1ZzVpZ3FvM0J3eGR0N0RWL2dsbHp5M2xlM2p0RjY0YllGUUVROWtQSDY0emVZWlhCSWdUVlU3TWNvSnBvcUcwcEp0SHNuL1BFSEFqV0RkeVNMWVNaWjdMOU9wa0M4TVpaVFVzWUVaejRURW1MZWNjWGNoWTBBRTN2alpjT0tuWHN6bFJBbEJuemZQdFBvbFZpSXcxY2cxd25MMWV2ZWFDWUN1R05CK3BDSTRLeUZNcXhjcDZIeG1qRWZweUdjT2pnbjNLOHVWZmRoM285WXIxMTZzMmdyYVNza1U2b0ZsZXB4dzhnU2pWVCtWcExLQWEycHVBMW9DUU9Ba1lFSjh0ZzVzSUpDQkowRUR2ZGNrRGVTSUNMMjk5N0hvYU1UQ3JLWVI4aEpQY3YrLzlpNGgrQjQrb3B2Qk5KMkZTZHFwbklJS2V3WHpnbW5hNFptUTV4WU8xYkpEbmlTbFM1OUNjMmYrTzlLaFhGMmdDSU1yVThrRGJMTE1KWGhmUEZZUlozWWtQZ00rek4ybzNWNHgyNjFsT2FTbDREL1RQeVFwTGFNM3FQQ1pXS0s4OEVKczNHVWpVb0tyVzBDKzFiNmhWUVNsVjNGdU9NejFpYUpWUmxqWXhyVGNWakJoS0kxa1o2TmdjK1VOWDlKRDRnTnhhKzMzWTlUTXJOVEFDWW14UzIzbFlYR0VrZlJPMzFHQXRBMEtuQmZiTGZzYUI2ZFJxMmpCWDM0bDFkL2pWZC9ITkpQb1FIM3JGSnhhUDM5N3g3ZVhDMUFodnFRL3UvQ0NieFpxYlFyRG9YclNHa3FJMWhuSTlOdUZpNEM1V2wweHR0K1NjWlM3OFI0NUoraG54Tm5IT1p3TkwwNHNKU0hzWGhCTjNIcHhOTGsvV3lGVE5rVjVXVk4vNjN1MkdLM1M5MzZOMkd1UVJCbUVlUlZQak1RRGZsQStSS2hISnhidmFPRXdSeFB5WGxmSXIzR3Q5eklZU3RFODVMcGIrN1lXN0ZmRTFRWVpteVcxUkFzNkVyb05va3RBWkZTMjBVcFhzMWZ5d3FzMG84aVQyMmlrKy9hQXdBd05NcDlEL0dSRmYrbU41dGhJY3ViK3hTR2VqU0l4d1cvTlZiT3huczYzZ1ByTkh6YThkeEVGcXpkdis4Vnk3bllvWitUUzNkK1hZc3NQdU9yWjdqa2YwRnJuRXQ0eTJsQXprMnprMmVSMmhsTXRLOHZmdHh3VUlzd0Flb3l6MjlKNmRvMFJ0d1JHdWs2eDlOZTBoYkEvYXlJZkZZNUdpQWxZQWJwNGd3UFZvcXJFVFlhQmxxbnNlR2h2ZG1CRmJ5L1VISmlUK0tHZ0NaRktLMm5mQjZRbVZ2dzJjT203WUFpRGdXYnFMNnM3ZndoWG96ZDNFTXFzVUhEaEZ6VnM3UkJpUHBBcGpicW5xYm5DMWUvQkNWSnRCN2duYU1KU1huNE5hcXk3U3FPSklGWjVUQlFXdlhIMkFrNWx6eU1PZFpFVHhZdzNJZUpBcmw5eStvb09VOVk3TXgyOUJERkZ3V1RrSk1RekxUQnBjRng2Mll3dXJOUmJVZFF5VE9XT1gvMERnOWpZOXAzYVNYeWpnSFhKQkdKMm9yVFNxaHdXdFpuVlRBR3dMUDU2eXlodWxPUW5WZXRYUHdUSmFHV0Z6Zmw4U0Zqa3hDYk5VQ0hSZWlyRHg3cTE3VW9vaEdiU0hLQTVNWkZJd2NQZjM4N3NGVzJRODhiai9jZWEveG1ISXgrdXM0Q0JoVzZaeU5NV0wzQVNUdnpHMlc1Wlhoczh6K0xrVTlLZTd6cHVySkY4Q1I5aUtTeHd4Ull6NStVcGlueUxkWkZVQTlFUFYvM1Z3T0c1eHkxY1VnNTFERXNwWlB5MlFvSGRIRGRJSjRYRUZheUt3UUJxNGJNdnNhRFZPczZBeDJJZS9icnZmY1dpQXRIUnFqWDl3Y1hIaGVjcDFSNjlkSFlKaTFzUjkrYzI2K1NtVUFqRXVOMG5razBYQUpXa09ES2tkd3Z0V3pEVUlyZytXTGVrK2xXNURIL3k5NStSK2EvMHlPdzdNNXdMTS85T1JBcVFpZU55OWpWbXY2dGlnaXh3WFFyVVh3eElOWlFYcUExK3h4dEVvM0w0bVVRNWtmSTRWd0taNFArYWZ1bFVzaFVLUFJPS3Uxbjc1eTFEd0M4QUJKczEzY2N2QnhwcmZncjJvYWxrWjV5K2xmNWdGK0Fsd3JPK2JKejlVS0VWWDRFUDhZV0R3V3VtdE8zbmttN2JqaFM3ZTJ2MkJGY1ZvdnIyNC8wYWRPMUcrRm9NeUxneG1HWEloL1ZmVUNwZ3dtQjk1NSs0dzZiVUtTeHcxQXhoRUpuYkJNc0dRN3ZuNmFnWW9vYmFzZ2JJRy9ORktFUmJRSjdiSTZGdWRqU001KyttSFgwVjV4anpCWmRrcmtnWCt1NDFvcTNEOUpxWEpTOWZrYzFwWlJ6T1VlYmJJSzN2N2ZuZHh2UVQ4WnhhSFdEcUdKWXVOS3RwUGpkMTh3VUZYeDNVcUNYMW1NRWd4Y0hjQThoQ1M2OHM0Uk1MMFYwdXhwL3BrdVkvNXhZSGJYQjYvZlUyZ3VZVTl4NEk5WnJzdlZuYmVNcWJPTFR3N3JEYXE5cFFtNWRjZkF5c2ErNlBiYWtqRXEvQjM1K0JIc2d6dFNTSE5BWDQ3VWtPY1F6WlNXVUUxYTFudFN4aXBHblVtQWRwa25hSCtlL2lsamlmVXFod2I2NEJiN3M2aGEreWN6NlNQRDhJVVZKenBNNUpxeGNHbXJEdG9sZnFhbzlzT2NNb1ZvOWU2Ylg4MkgwV0QrWUNsbjRVbnNMMEQ3dVlKSXBQK2h3ZlNXcW9mSEd2ZTFXQmh4NFJ0UHo3clF3MXlwaU03TVZaNjZyZnZBVjlqRjF1WnorWmY3cGJCMVBIOE9Vc1FJOW1ETE1QNDVlbWl0bTdqOVA5RXFBVFJpVE5GckV0SlNzRUo1aUZJMVdlb0RmZm1NQUdVUE5kb2ZtWWlaTnFSWXpuQWtjZkR6L1JjVEJDUUY2eW8zNEVHTWVzQTJoQlJJdjlnZy9PdzNXcHVhaXlsUVEwZlhDVTVkLzVoSUtUdUVmMWU0ZU5yZVNKUkNIaks5RjlkOWFlTXp6SThHQ01MMGlPU0xINzhiczN0Ry8yZ1NxY0dlSnJzUzZxeVd4N2cvaFBTRUNUUE9SeXhXckQyanhqTVkxT2RoTEp4OHdMamNqSnVEVjZBTzY4UkRlTFVIRnoxUngzSzlRM1JlelliK0h5MWtzNjk4bVlDT3J0MkFGWDAzYWdqcmZXM3JKcHY0RDdDWmpXcksxTisrZU1lV1BmTlpWaHRvWnZ5bXFhQXBBdmNBKzF4TnJhbS96YXBuUnQzekI5cTRNWGlpSmsvZWdORUNDRHdaV1NvMDVNWHJON1dmc2Y2ems0eWpyVDlDL21rRFI2WHhrWWl3Q0FoREQxK1dQczF0Yzk1aEQzcVhnaTFQMXNNaDVSWUNna1VybUliNVQ3aEZtVXZ2M3lQMDd5UFk2UDFELzVHSWFyYThNcm9teDF0YjVoQ05wZUZlTFVydEFiRFFGUU5YYUE3Z25Wa0JYREdvdy96RzV2UE1jZldNdUV0WUx4NXZIZFFwZWY4TmxOY1BwUHl5MjJkSzhMYXVjbytMSXREbENTV0tVQ3JicmFVajlnVGw2YUdvRXdUem1jZjF2dGFlRklDYWJvNXA0NzdUOFg0NzhlRzVCUVNnS2J0Uk5kTzVQZTdIb3RVTkJCbzNVWnE3MjRYS1QycVlwMGk5cStrQUJTSEVybTMveDJUUGNjQlZCQTRTVjhPUHJJN3JLKzJWTDJOd1VnVVc0Y3hLNXhYeTdFK042b3FZKzg2WU9iSGFGdzNBTGhzMjhtTGRHbWhlZnFhSS9JeEFZbFNrVnBxSGRLaEtwSUNlN2xTYU5qMWVuaVVmaUx2cTdsSzJzUE5CaWdPaGVYb2NMUlhTVE5BUWczQXRpZEFvcXk0VTFNQkM1U01WSEVyMXR1UjMxcTNmRElITDNxSFhiTFVISUxSbDRRRkR4NStvUkdyZHozMnZxVEhnRTc5U2QxeXFJYlZ0Y05zZ1IzNGF3TmJqVDc0Mk9najRyR1Rwd0RRUnFYRFBGekVOVjlYSjJVSkpLWjBoeHYvcWY5TmttS1Noem1vdkRHTHR1QmhrWHNwVmNTTVB2NFMyU29uS1lTNWxVYVBRR2xSQVk3cU5jSVQwZWhzSTFoNWU5L1BBb21SbjZMMHJ0eGUzOHowZ2NmNWs3MW5GaVRIMHhBcmJ5TU02S1daclRwWGkxRlg0c1FTTHVtV3g3bUg1aDFRc25udEVWV2tyM0d1Vm11cDBHNjIxTE5qUDBPM3B6N2R3M1hMVmlpN0w4RzUxeGcxcHNFNVdVVFBDbnpERXZCOUlZU0N6dHpRYWhyVzRLaWJYcGNEdWQzU0V5Z1pBTnVUSHhzbmY3L09EYnNqUHNJMmsvZkEvbmIzTm5uZWRJdXZQdmI1eVBwcGVTRWNac2ZJWTBDWkU5d0M4U1pFSE55TmVVYWl0UnYwUTFpVFVjZW1zMStIaGZaL3dmRmx6SitMMm5CZDdJSlhOSGVTS1RwUUxtSmR3bkZzd0swYlFtbVhKRDR4bXZmbW1Lb3MzT0ZVT3JlSDBSZ01mWGdaMzFTMUtaQm1ZZXBITUhiSzZ5cmFaTUdpVHZBSVNlRXlXclo3bXhXdTE5cXpHMDcvMFp0NVJuSG53ZERjMU5xcXNqMi9FR3lTSjllSnJmQTZOSUh6TTVLQUt6WU4rU3JqZTM3eGhSdHQ1TnRXdm0rdTEzWUpoVzRCaGNsbUVFQ2liMUs2eWxjVUlSTWowaTVBYUs3Vm5zYWpFY3dwTXVYQ1JWT053dFNyRUdTbVFYdHl4bWNaM29POTRrUGNTZ21ybFk0V20vRytHU1I2cUtJaW9XYXkvWFV5MkFqN2NndDZabUtUeHBtdXFTZm1oWUd2SGc2Qmx2VG9UaG1oT3REOEh4dU03OVpwc2Q2aWpTb2xZN3lhcFA3clBVSUkxYVF3RjZxbUtXakt2eFptYmkrdkVoTjJwYjI2VkI3dE11cXpOcGFBKzIxSVh4S2lwMWwzSXl4MlBZZ0lBSmhSanBySFU5S0ZsZ3Q4Y3l0ODZ4NG1Yak5UVnIrdGtCdld1eXRKVWlVNjEwa2JDeXN1TTFVclhxbTlCejZtWWErT2xJanJrbUkzUWlkUXlleExvM0l3WUViQlBibGlUY0NNNUY1K1ZteEE2c1dxTERQTGh6TVAvc1B1VDNubW1iWjdMbS9DTnNpQ2oxRXNUTHFEMmtpZ0ZCMnBaZXF2UmxpditrQUlIRVUvUnR0d0JMSDI5SVVVUVcrS1BFakVLWlA0ZWJSZlF5Q25pcUlNNnBTUXJJSnB1eUQrdEpQYUZWcHQwbDZFaFl1QXAxNXNZMjROMHMxaUFDSHJyeFNaSVBmOXdkeUsyMXBybGx0STNWUWJvM1dmWkxrYXpoeDAzZ0Z3eHVZb3laSzVkc0VHWENTY1MvUWVTUGZCTFRpeE51TFB0T0JNU21tWGpPN015UnlrK1lwSkRGeVJ1Q0kyYTRKQnBtMHhrbjM1R085WlFtdzJoVUFKbGxPamV1UHVJZTVYejdDZXBqQitIWFVMNXpKMytiR3RFYzdhQUhmMHVtRWh3MkdKN2Z1ai9kZmphaktUY1g0UldWbTRqR1A5Y0hlaWJsd28vVXY4dTRaaE5xVUJDYUZ1bXQ2S1JSZzI5eGFMcVp5ZFYzZ2EwTjRyUXJyckE0WUx4RnZhZTY1L096OVdwUjg5YzhEZ3BJWDJ0ZSsza3R0TG5SUENtdjZNakVvbGdidlBQQUs3eUlJbVdGQWljMEZoT2NNVDl0QmI2SmlwUXJQb2pIU3BlK3pTT2I0RWVrY2RBYWU5TkVqNVlzOEZqWFdnMEE2Um1wUnBVQkV2NzM4bTJlTUwyZmJhc1RWWmFyTGVSYXcvem5QV2tZWDRyeDU3U3pYdVoxUnlCNWpRUmxQWWRSSUFhYzNXTy8vZk50blFGT0lvL28rOUJZbVA1UGh5N1F5M1FTZVdUR0RiTkFFeENjK2t6TzNLRVlqRGpLVUNVcHRlcWNQOUUvcjJaV0d0b0d5VmpqaXZmN1dSakxpRk5YV3BnMFczbkVWeGt3K2gvL0lIK0pLMDBNYlRENXByRUVXTFJRb29uVDlqaFBlS0FoSnF4Ty8rTVFaQjgvbUZzWjJyWmxBaTdOUFJMNFpIc204L0lKdC9YajBRcXc0YlFwS25YK1BKNkZsN2xxR2tNaUw5NThOU1RzdnlxMVgzNFhOVkRNNVYzZnBkTVhramhWK1RESzBuTkpDUmdMaWVCeFlQamM4M1hNYmtKZkN2dEhoa0YzZXhnSk9zQkhxWmp1Y0d1QUNoRFZhTzNhbDBTeWl2ZGNsQkZpbGVyY0tJWFlWVWd6NVV5cW8vME8wMkxVY1pUU2toTEdSdHdRYm9vK0xtMlJ4bXVHbVJkdENjRkZ4Ni9YbnpnK0FDL29QV0w1aVpIVHZtMTAwdDBydlNORGtXOWtKaTlxVnFOTFU5dWVqenRSNTFPZmtDbEhlSCtTZzJ4Q0RYR3h3aTRwdjU2WHhhbWYxWFZtVE05WUpYTG03eFdpV05lWUdvUXBJQnQzajNhZHdUaEtOZlpkQ2g2QUYwNzZjMXNjS3lFUjNHYXVJNWM5dWNrMFRQdmdKZEJrSDlXNkVYOHFGeTdDMUNrb0lnNlpkeG1ZSWhIVnZHQmJTVFY3RTdTUys5TnVMYkg1ci83UzVFQ1QwUExOTlhvM2Z0cFg4anhlOU44aVJhSVh4L2VqL0pXeVVBQkNLRTBUeUR5OWhqZ1ppekVMb0FpZStybndXQ2s1Vm4rdEU3RllxOEdNRTg0NndySHRFSVd6ZnNUblMvbVpoZkJYcmpPRTJ0eDNweUZpaTJtY2hzYTBJOTdVa2tGb1VjYmpMRVQ4WGNlejV2R1JSbTErWnlITjZJRHlJaU44czZ1cjgxUFFpdzFxL3hqVDV1Yko2cW5qRVFiWnhhdjBOekVVT2F5Q1lwK3lzNy9OOVoySnNyY3U4Ty9zWGxKVWZESkdoMVRwQXI5U3dhNE5tQmRYc2RDWmhSY2hQTXlBUzhxZ21rZ3BST2FEV1ptRVRLWkdWVytST245MmxoQnJIQnpvTi8wVEtHVEtKRTNIV2VFZnJSRjV0dEVaZDVlVEV1MUpnUk5NdWFwb2RDOFJjUHlDOGJ5R01EelRmbEtNZ3laaERoek1TVDdJcmo5WGpyTk5xZEk5QVAwSU1RcTh3UUhzMjlKclNnR091UG5yY0hDMVhKVDM5YmZFTE1HNWNDVG9sclpUT0VwYlhCMXNWMWJ0a1hhdGkxZUJEZllZbHlUcTdFNDE0c2JKNWVqTnJKVzA2dnBmYzhWSXdJNEUyWEp0WlhXODhiRXJvblR1cGMyZGJKMXRuemZRcXpSNFNCZTRDR0sxK0xnNmdsL05QeDhjNlJwazcxUzFPUVFsY251RFlqeGJjOWM1M2NGQlgyR3NhSXE4Sk1XOWo4cnFuVEVMODhZcEhja2RlaHVvTmlDK0JDVldScWJIY2c5YUZxMjkvTGU0cnU4UDgvaGpkejZEL1dERmovZHZzOWxaM3JrdVY2NHY4WlRKRzg5aCtjUUVNWG1GZ0dRZzBac1grOVdWK0lVZmM5VFFQRlVVbmFpd3RaZzN6MFdVbE0vZkN2QmcyWmN2WWR1WlR4ektORGpvb3hGTFJTNUpVMGx3TjdzYjV0Y1NUSHY5MDM3YUdOcXVVNUppY1d6NW1YWDl2elh3elIrTzR6d2d0cjM3b1h4MVhKZzFrWWYybVVySGlHcFpxMkwwcWFJUjU2V2d6cExUNGtjT1ZjN0tyQkN4ZXFISis5S0ZBdWZzVDVNY2hxcEVYTWpod1NUQ3N6WCttTTZFQ0tpeVNGN0VjRFJtQm16NWRMMmlXejJnWThjaXZzOTl4YUlnNzNCWWtZa3J0ckRZUE9NOUo2K0k2eUY2MSt1bnkrUlFxelFDT3YvVDVPS3EybmRzWnpIOGowMFltSHM1cnJiQ2NjY0pCL01uRnNmeHRmajVJSFJKc2d3ZHRGRG1wY2Era0Z4Z2hYejllVnhJMCsrNXJwZ3Y2THV3YkNQZnpoRS81QW5QZDRmMWJlUXo4aThVY0h0OXcwdWUzUi9TRjNCQkI1WklsM1B5TkJWNUJMbW1iL0lXOHNCZXF6NUI1MmhBRHdvcU5uM0xaOXQ4Yk4wYnpKSVkyMURURkZwcitqSld0RnlXeXhxYmJka2hDdzIxY0R2OVFqcktrb0dQbUkrNHd3L3VRTm9acXJyTDFyNzFSUTIzRWhMbzJRb2VLQ0RmUDNsLzh1bVp1dlA1TUgwNEpiYUtHZmdDdWtQdlNhb3JiNVhmNHZHWFJjSFRpZlN6UmlsZ3p0ZzUxcis5R0NtNitiK09ITWFOWmk0c0kwMnlETUNqU3pNa1NYS0RmT3lUTDRudDY4SmZJKzJsOVdRVG5vbDN4cEhJRzRGdHZLdVRJdTk3VnFrcy9hSDA1Z01GcXZZbkdjblduR2Vnd3pveC83SnphY2wxVHZNLytXaWR2QlhXNUNza2l4UkZ6bm5EVkFIQVo0ekozTmpMRjlFOXlwNzRCbjliejhzWUNXT0dtRnZnQlRGbjNaTHlxYS9WNW5KS3cyQTNhaHQ5OFNPMTJpRTBsQm80VGl0L0g5WUtiT0l1RTVtQlE4NHdVaHhOcGdoRmxnVnNscldLeW0yR2V1eSszalJqQW5RcnI2MG85M1R4aWRqZ3BVdjRLMTBTZ21XaFlDbWZScW5nL0t2NmZQWTk0VEF5Z0R6Q1JwZU96aGMzeERZd1NIVjlGNEpqWjdrN0p0M1NqdlBJbVJNaCtwbDBLdlpPeGdsRzlXNTY1U2RPYXZXNVF5NVROTHo4VHlVd0RJdC9ab0FXVTQ2SzhXSG9RS2hza3owMDhjQ1NtRGZka1AxdUdBbXRVbFhYZWFxRmxFN3gyKzcrNm1wY3E3aXlpZ2RCNVZkUk1tZFVtcURuYTlkYVRFamtEc3JMTHAvem53YTBjQlBVcmRTN2Z3cWhxN0hQbFBVbVo0Q2lGaDJIeTlhK0IzNUpCLzllR1owL21IN0czZFV2RmVWakxrNThkM1IrZlZKbFcwczFsQ3FYOVBLRXNZK292TzJkSjlQanI4T0dNcXV6MHpyVSt2VlM2RzNTL01taksyVElVMFdsT0drWWFSVldtalJKT2VBa1IydkM2eHY3VCtoNkswR3NpYlJXQS9QM05NRndMNitXaXJoSWhjRjREb1Q4b01vV3JHOUNtL0NoTVpGY3BlaVlwM1lvZ3JBM1B3dFcxclAyT1pjQklxUXAwbEpjL216NU56SzhkN29WQmxEUU0rcDlMb2xBc3JlWTlITDFpVG1KVjJsdFNBK3ZEcFkrYUx4MXdQdHBLbko1WFYrcyt2TTh5WCt0clB3QUlBTGxSMVZuWVVybHptaGZzczlwWWRVOVdCM3lpUzIvOUxRZFFlYkw3NFE4WmphZUkrRTE1WGpCME5kY044T0ZBTll0bTRJa1ZvbE9IcFlUZnhlYUVKOWE5T3BObUFaQW5qWHRNRXg4Nm1IRkpDOUtnNzVUaDNjSFZFSHRyUDBLUDlqY3FCMUFDTjJyWktGN25FTlNveXM0enA0RUl6REhvU2hsRnV5M082NVIwVElKcWoxWVk4dkFPeU9aVFRnNll5TVdJZ2Q1RGpiakFCQ0g4ZDgzekwwZjMwVGxwUjJ4UHlnS3phTk1Faitic3FTa1dCM2c4eXRtWVFjNjFlUnR2dEQ1dXNhaWJoWkNOR3NsN0JRL3BNSEx4RzJlSHNPOTcvNTYzSGVFNmVOTDEySHF2NWhVcmVjOVl6cUFKNVR3VjVOTG9mNEU3V1BUNG1Qa2FnUDVBMkpqajlsM0czRi85RDdqR3M4WW5Qa2RFbW9oMUE5WjhLT2d5dkhrV0hyY205di9QQVdmeDhKT1Vydk1mQ1o0Qk5iQ1ZpMEtNQUY2T1E4Y08xakJhMnhNUkpIZ3U5TXAyaXZ5blN2NXpLK3ZjMlQzQXJHdVcvTWJrdzVPK2VFOCtEd0pYUHBjdmM5bzF0M0FYKzd3V1RPVVdYbFZYN1pkZDNEQThBcW9Ydnd2cXp3VjRMNCtFWFBQRmhFMlpncFZLU2tTWU5ZTG1FaGd4Wnl5MU0vOFJIRGh5blpnSVNvUVZYdTJuRWVsYllGL0UraWZHaWk4R2Rnb0JhZDdDc0dYUmtjRVdMZ2RIZW9xNmhiR0ViMFAzRDAwdm9GRC92YXFYR2FXNkZXY1FhSzZVYzlWait5cExsYXZHdlJBRndWZlJsT2hCS09kMjFVTEN0UmZ5enFIMGtHYU9SVldxaDdJWFI5QlFVTlJzYUtLR2ZqNVpFRVFrcWo2VzRScmxqR1l0dlV6WS8zWDY5TFBUWUhkb2NDK1p3dDBkSEhhcnRWekdtc3BxZWJjamxmWnVadzgrNEZ3aG56eEplVTdlZGV6MUgwbmlEVG5zQXh3dnU4a1c0eWM1Ym1qRHF3M0VTMU1lWUwvc0thV1VhWnZFWEJ2amh4SVhPRC9KTytFdGFCZW95K0J2K0Nia0Z2VVNwVUpoTW9iMmpRUm5iVGZtVFdtaWI4MityWmdzRTZmQURWalBWN2o5SzEvWHA0ZytMRGhTVnJVUUk1d0kydXUxMnJLTmkxdWZucnJVL1FSekhHQXlUaTlxaU5neDdLVFVGRkRJa2Q5dGFxVDE1cmFtdGZTYkg5RElESTBFdUF4NlJGN29yZW9TVy91Mis5aVRQVXpnWWJrL1lhOHlVeTNuODZYREJiRmUwcTQ3QjdRNjhOSlNSZURxVDluTHBTdHNXN3VhQ0tjODBJTXYvdFpBdEhyVVpzSlc2YnBiTkV1WGhRWjdDb3dqZjVUU1Z1MkE4UFN0eWhOQ1c5aE13TEdrVmRzWDJlS1BLcCs1VnlBTFgxUUhsKzRDT093cTQ4NXhDUkhEeWd6SE1LWWtIRTltV2drODdJM0FlWUFuclFURCtEUWFFa2pQQ1BENHg2MjJjSEJKKzAweGNtVzJ4dHkySjhreFpEakxWRFQ3bk5RWXVRakswNFRJR0lKaHJTWFRUZ251NHBVdUovd0E0ZVhTNEN5VDJXOTFrdmVnMFd4MEdEd3VxR1FGc2JDdWJPckZyOUVyeGVWSlRuOXBWdFAvZ2M0V2l2bURRc3pLeVdwWjBiN2I4Z0cxNk5tWVo2UVFlN2tCT1RyRGFDZlNpZG1QM1RkcVp2dS9YaGZTNGViMUNZZTBvVXZlN044MkIyS2phNVZ6dzlQMW9tYXVtWW1wWFNjcndiNjhwb1FkZ0NMSXpPOEZ5eVpQWEdvWGhKOEQvbmNRUXNRNGNxMlI5eFlzMXNqa0RMcXM5anExZEZDNm1rV0U0TFl4UU5selFDU0NXbG4zL1F1L1VwTTNyTSt3WjZiVHJzQXNPMytUN3lKVDdIdE5peS9yQjZ2dFFpRmlvb0JVdzlCUmw5ZG1Qdi8vR2ZlclZwSkRpVEhsZGtYR2k4MklTcXFPZ0NReWJFRlZMZGdESW5pVUxLYnBFSVZsZFl3Q0hoOHJwV0tKMW1hQWtYUVZqMkorQ1hNNjZrSTFTTWIxcnVTTjNscjVrVTdPczFEekxhQnJtK1QvNThyY2g0cnNWU2RScVIyUTQ5OHFLcUhaaytTblZSMndLWS9NWi9mdTczc25OeGo3QVV0dXVyOFU1UTA1YVRvMkRLOXJtM2xuUmllSktaUzN1bVd2WkJwZjJSMTFQQlIrNXRTYW1ReDRlaDF5ZTJGZGUxYU9Lak40bWpXUUNnZGcxbWp3YThSN3l2SkRRYVJ3RDNZdk00alc1ZXNrWUc5SmpkaVdaMjVTMzgra1dLZzNIQWQ5TzR2OHhBdzJ5Q3k4bFc1L24vSnliMHlpN0FzRmpLZlUxT0IzY0p1ZmVGbnlqSWZuRFZ2cWxldnVSZDNXWjlLVFFzU290MVkwQjNLT1BWRXU2N051UUdWUmNwOGRLK2l1bVk3S1hHY0RJNFNRS1o3ZjVvTkNwKzZRenB4bDhpQ0JRR1k4dWdJTXpXaFVhVVd4NTl1eDNFMUtvL1pYWFZwdkczMHlRY0hJM1grSHgwNUdMWG44OGNvcW5BRWZsNWpzOEJMM2FXMlFkVGN5QU5ncnVoWkZneHM1NnI0cTVBRkM3dWtkQ3NQTVVlMnRmUWhianNOb0NHclhNeEVpK3IxUDNMbUI2RU1Kc1ZRdldCTm11aEpER2cxUXZ6VllVYXhYTnJwRWpjTmVwOUtJMFg0dS9HKzRLMWN6U2tpVjhHU0hIR0lZUU1uYlVLeUtXdS9SS0pSbjdyMDBjZVVieTRLSzhNSTBKS04xZkx0blBOaHNGNnJUSWRhYmxiWFk5SDlWTlc4WUJCREtVcFNWQnhuT2FTOVp3RWgwRzFGSWs1VEUrYklrN1pUaDBYT1RaYkdEU2pDMWJHQXN3bGc2L0NOb1dGSWUzN0VYQXNsMkdLMmt6TURlYU1rNGJ1T0gyQ2E3VzVCcmxKc0ZPOHJZblhBeVBxbDRkUHVzUXBOYm90VW9PemxUK0liY3JqeFFVaWd3VHVZWDYvZlpadmd3WFpuc0xRN3RobytlZUtOdGxrbVZwNmIzQXd5RGlrQzBtSkVNRWI2RU5Wd0lxa3FqNVhkUG9VdFBIM2tLQWtqbFFTcENKYkhRcWkzaXVUZnFLTlJTY2RMeU5vSVFCWU8zODdqb3JvZ2hMNGRJQ0NSTmh6dzA0WjIwZ25sNlBEbW15dEVMajFXckd0eHRxeG9XajRLR29wcEVYUGZNMkFvSmNiTncyOXJHZWdkdkU5Q0daeS8wbmR1VXpPdWNvREo1R09VQTUwcTlrQ0lQYm9saHhQRiszR3lveDlUaWNEelFJb2xXQTJBZTJIM3RVR245Y3BsdzhJTmZDOTZNdS9VVmJXRm41T1JtcUtWWWtoSDV2RGsxWklUSm5VdzJMdFErVFdpK045bW9HbTFrdytXYTBSTGNFTWJ3TjQwVDVsdlNpWHNPY29JbzZGQ2VCYmE3a09mZ0ZXbEx5eTlCZ3poOUtxZ0RlQ1puK2JvTW15Q3VaQnk2TVdFSFhQTUdneG4rdE92cXU0dHVndkFEaitIZDZpQXdpeTRFdGV2QkkxeTZCYnkwMk9uY2lOU1hFblEzdG5TTlBkKzZtZWxDUCtoRVJwMmdYSTlCL3ptUEV3UFp1a3Y4VDF0UHhNWm8vd2M2d1NPU2V6amMwdnVHK25NWHNLK2JuMnJIajV0OVhUMzVwMW1vMjkzOXZwZitkNytqc2JsdmFKMWVOeGMzMk81YVhNWERjcEZOdkdKaFBpNXVDdm5Mc0hhVGRDTng1ZDdrd0dUeEQ0b2hOcUdGZlV2dkZQeG4vVzVqbVpvN0dyYnI0TlpjaE1HTTNqQzlOZXFHMXNCQkh4dmNGbTZDblYyaFdYSkpkbFFlKytkNkZUdGtjcExucWozNDFPUHl3WU56VEtFMW9WV1FjNmtkS25uemEzckFVM1FhMEx6ZCtKTDNGZ2Z3bnVMWHArYnlJRW1KQTcyVkRCRytZTnVveTdsd1Z6L3lpaU9EVlpBM3c1eDJJRzZJalRrWTBDSlkxMEJEYVNVeTk0UE1ZL3pQblk2cDF6b0xQM1JHbkx1ellIYnRIRkppS2o3RzdrZ1VHQzd1ZTRvQ0FxYTkwN2Z1amZQZTlWRWY4TWFac0tSVDRaR2FtUU1nYkNpT0UwRjJqY1p4Q1NHYjJLNzZRRW5qWGFsY3lic0xTQkl6c0ttWURWYVp2c2VsQjBoRmVwYnczNVFUMzliZGt5QndpNUtpRm5jOS9CZGxLazhKSldJSGFqTmRvbEQweDA4N3hlbXZZb0VmdnpyZEN2TzlEc0M3SmY0YWh5ZmRab1ArRXJtNmZhRXBwbEFwNmkxYnJSeGhDQm12L3NzczdqTCt6SFUrbXFFRzBqZmFFQmJtWkxRRjZWb3FRWlROdm1iU0FXcVFGMWQ2dGFnSTFxQWlXRDk0R0NvVm1ZaHRaY0xSdEJLQWFHeU9vdEloVlpCd0pLWVhHN3RzMC9Vbm81cnNsaGFTOWNQV3gzbUFuaG1saTFKWjNkNVU0OHY3d0tjVSt4dXRsdVVmTG1IWU5vcWlOZTJ3Skc5MnRrQTZlQVp0bnI2RGVGWjdDcmtuYmUyT2JIeWs2RUZ4bmU0VDFBVFVvMWNhT2lQcjBrNGNPNDBYdjF6Mkg1Rmt5RWRRd3ZVNnp2VkpNTkRKaDRLYUJOSGRtdWhPZVNyNWtpUjNmVHlhSVgyY0Q4WEhBRHl5WmUrVysyN0ZnbGE5WEhZSGNRR2REeGtQWGczOEJGODZUVkpiUGpPaUZFWWs2b2ZyTTlTTU5yS1FGbFJHcllBTkovaFN0L1JydlpsTnNYK2xsTmZrakRORUZTVklVUk10OFJ1dis3K2JXLzhNK0w0YUNEV21lMWVEbXFwWmExeVllcFdRTmttbUhsbFJ3OFRKS0RrZTFtcFNKamh0ZjRUNzFncFl6WkdsNXd5Yks5MjBJSklhSmdkVHF3STFpaE0zSE1Td01MMzRnNzFlRU9ieVlEUGZ2dW1SaXZrak14NnA0UC9TVGZuc0VIUXVZZnM0alBMNnFrOFpiNEE3MFZBMVdyRHBjUDd3eERRYmtGRHNKOXFuQUdYOHRSZXlHcDdzSGFVeVg0WktwL0hwMjVPWjBIUyt0ZldoRHNtbmZoZmRUOHIzYUtSY3BoUGxack5zK1ZNRE9BWWZJODNsUnRWa3d2a05PWTl1QTJLdEFLS0grUUVNWVdvc0dBcmtEQ2d0Q296akUrMW5SdnR3OVJEYnhMTkRlK0VuKzZFSjhpK25acThkY0V6ZUNaL3h2emVkVlJvS3VOeGJLbGVzL1pxMHcxNmQ0cWNnd2FDNWJJeDVuSUR0RG9ldjZab1NIaW1YMkhxUjJpMzF5QktjYVRobVNKQXZOMi9XUFFwUkFSTytzTDVhUmpPNWZGdCtVZi9lamVQWVp0bVgyMGVxUU1sMlA0NTBJK05nR0FOdzRTZ1RJRS9UTmlrWjU1aUdhRnNZS1pSNGdQSGQ2YThWYkQrL0RaNDRqdXZiZ0Q4R0E1VEtDeC94dEozUzRveXhLU0ttUThMMmhtaUhrQXVlc3F4RGRoQ2dneTdVVGVKakVRYkRQWmg5U3Job3VhNU96WHVTQ1pkeUZVUVBWa2FsUG51OWZLWFNOek5NV2hSNUl3bDFPY3p3WU5kUlQ4S1YvMmsvQWhYWWNYMXlUeTBGR01qeVEwSEhDRHc5R2MwVVY5R2drdWduV0ZvZG9lTXR5U1lsaDhLanFwUkFja2pNcHd6M1VwWXIzdklkKzJwdmxHTkd5TStwai9aTy9XWkNxV0ZqL2E5WDgya2tnd1RWbG5QNzJiS1J6YjMzOFJlelJuL3BaTG12Y2cvVktMNHVEMHJQMVo3RnU1MUhCYjU2ams2bnFFRWVtbHVwZDNmMkg0N3ZDZm1XMFQzekZ0UHExKzFDVlhCMUd2bzNReUV5U2tJTjRaNGZKRGdodE4vaHF1VHVRMnk2TEJSdFJIbi8xVDRxY1hMQ2VGTEFBRzkyNDlKcWF4STFOTkE3aXRIT0ZYeTR6Zm1IUmZzeEFLL3BZUlBtVHNucU9nQzNYaWJjYzcvaDdtQS92cWQ4QnJjNEFkV1pGaWxiRVJHVW5EZ3RBRTdCK3VXUHRVZDF2WVNVK0hYcTUyRVNpN3FIakMxSVBxUGRWdzFRUHhYR2xRcGpMUzR0N0xlRFdCR0NMMk1JT3hMZ3ZROHNwN0V6dkNlbFdrWDFKdzMwaHFhbDhETnVaeUFvLzVOOWdRVjl2WUdvdzNGK0ZuMVQxbHZaa2s5WHBzeUVLbVBXZTRZTW12UUh5Yzk0N2lJRURqMmlxVk1LK2xLYTRTeHZTWjBHa3dsbVlNNXdwaUpsT2twTWw2ZENGSFkrcVJqSEh4WTd1YWljaTkvc3cwQjdsZjVSOXUxUm1jTnQ2dGxtSjJzbllHQ1gxWGpQblJUNXloTUx0czJkS1ZRelFqUHlxS3kvN05ZUDU5ckNiRFNEUUw3SDh0bWJ1bWV2MkppT21zaTlXbjZESlBjNktxY2tBemcwMjFuYUFURlYwYVV3ZkFVKy9aTmJaTHdlTi9abm1vSnkrOTFBSGF2cG9ocEFyVURneVluVUZjNm9Pc3ZycVVBbWVwRVMvWGpubFFvVUlrendLREdNN3BaSEs4REp0Y3NuOE54UlZlTVhCdzZIOVhRbEtFa0E2dXJxQVlPZ3E0L25XbDNpRVloY3AzeUNXSEY5aUtXUUQveUFMRUxYR2l5YUhXN1Vib05NQUJXblNhQTBaNForMk9XQlZuMXg1YUpyYUM2MkhuU3cvaUJpbk1ZWDFpL0VVTnAvT2JsL2NXd3ROeWRwVFd6WmhnUHBURVZ4SXhmZEo1czVLazlYV2t3WDdHR0R0NDBGTVFwUVpnZkNyWUYzTmFxRm0wYXZEaVF6d095cFdWU3dNWWExbWJiQ096NGhSZHRCRERmcFcwNXJGUjUra0t6SkVVbXA4TEdSckxSMzA2NHE2eloxYWcwRXJpYTc3WlJVQ1RhYi9WcmJ2d0JEMnJRUTlVYUliWFpoU2tONDRVODBEaElKa29nOW1rWTh4NmZBK2RiYU1ydTFLN0d6VVRvUDV1SXFYeWc3Z1FrYk5XZlZPMDRsbG5nQjlKeFBpaDVKVHVBWVNQV25IUHV5cERxTnErd1JtQ0VBZzhiYVJHUitvUk9YVndxWnlXY2tKaVBEV0JZc2h1NU1nQzNnQVZPdFA3dHN2M3A5dFUvbFNZaFU2bVFWSE9ndE1NaWl0MEkvVlpmUFA3VTNKNEJFZnVOQ3ZsNWRpQjRUanhVTE9CSmMrMk9NWWE0cmtRZUpCRk4wejkrMmw3aHhzSzNjazFUbmNQVllzeUFnQW12cjJBL20rcXM0MjlCS2NVajBNVHVEUFBJbXlpK0IvZ2N4UXNocUVXY1ZJV2ZiUjlLVndpd21ITEdzdHRyZElKVGZNclBuWkVFNkRDS0FOei80bTg2WUU2WWpYUHNyL0pmM0Y0Vlp4UmtaRC9ua2ZpNlZ1aDR4aW40OGJuMm9UaWJYNGtZc0ZEN2wwSXZvL0I5MlUzQ05aRlBIdE45Wlc1d3NTbWdtODJReEl5c1FlNGVhT040eTljWEhBVVhZV3ZFeE5wdWtLQ0V4c21oQnNlSXpQbnFKelVHQWhEY0ZjTmxldEwzcmczMlE3aWU1dllJc3pMeHB3MEtaZE1BZUh4RHk0ODI3Z1JZWmVxV0g5eEFLRm9HN2loZWxrczBXNTd4N1RBWS9Yc2pRY29DSzhaZ1lWWTJmcEFjaDN5L0NETENEN1JJaUNjYVNQTWpkS1RTTFI5L0FMQXlTbU85QytDWXo0bVQ1MFB4UVZoRVNsMHNQUDQrUVR5UzB2WERCRDI3ZmliNG1zdkdNcVoxREJkOXk0US9NcFRaUnlvcGtDVm1qYUdxUmVMM1B3Wm51Y1paeXhtcTl2WTRNZUovUjN2ekp6N21aSjVkN0VGUVk5VXBvYWNudGFkYU1PTitvRWhUaUJoU3FZNVVOK3pzL2Y2TmdxMzZ1aDZhcE16OTFuUUxnUDdsZUxSb3dVQ2JNN2orVk1Oc1hILzEwZ0UxMWsxbGtMcE9WdzBLR1dOYjhybENuWEF4RGYvbW5uMm5QTTc4NnY5bkxQb25yTENqdkdwVVNoT2ZQTHFDT3hiM0MvRGZPOW1SZEt6N2JSWDVleGpXdzFQUmZFU2c3NVRLZDZNdWlXK1RUNXZkL0NVbnpVa1ZXMGtVOHBSSWh2eEd5dkdUM01weDdGcmxvVFVIWm9sNmJac1ZhVG0vVmdmcUhPUGlsVEdTTFUyUHZqVjgzNHdGOHlocjhpcnhSRmRUMnNpL29FTWgvRTd0MDRVeVhOSUl5REFITW9tdEZuZ2RoYzhpRUxmbFd6SkFGUHZmT3VDbWRFZ2l6S1c4NVRseVZrM2hnNHJ6Q3Z3MVYwNm45YmdGaitFakg2M25VaVdLOUxOS1E3VHF1SlRrNFp1eGd3RjBGUXpabGVSbTBwK1ZFNEtyMWRSZ2xJTExGNUFHbXpSYkM0SytZaEdwV29FcXJiK0R6STUyZ3NDczNhZGpVZ2d3QndwSmpSQ1ErSUN6OElDWVltVURJMXVJcXBCeVpRL3haRktaMVlhaTFPaGdSMlFMdUo4d1ltd0V5blM3ZS8zSnhqYTlSc1pjQWFmN1p0N3A4cVVoZTlZZVNmYWt2L3d0UndPTTdsVVBSR1hFTmJPbXFTdkxGTS9CblVIRm5kMmM4eldHanNxSFZhU2MrZks2MFVTektTNWMwK0lKaE5sbEQ3SVpWQVFuL0hXOWlXSDk1Slg0MkJEQlF5VCtLSG9DVk1NMWViWDNWUUZmaWVWOWdBcEZxaEM3cHZ2cHpBWkg0bG85MkdxVmZ0dzMvZmxqTFFSTk8yK3IvUzRYcFJNMlQ0VmlqWGFiR01uRWluM28yczRlQVNub2NUcHEwZjJZUXpteVorS0VyVWpGRHo4cEFuMXRFUmh2ODZrbjFZZGR2U3J5VnVpdUErQy9lSnFlZEl4b084MHpoVUN2dUIxSkhHRk1vYzN5YkVJWU85d3lGaU40R05jWjNseitlZXlrQ3RieGYrK240MWRSVi8vWDNuQW8vNDk3UTBLME1JU2t6bkJ5Q2dJRjljdkQxM050ZmxVQmFOTjhaalNVT3pvU0ZXd0tOWEhPaHJFd0xuRkhaVGVGSkRFbFZvVTd0Tjg5Mks2YXdzOHFGalhpcWFUUzZEY1pHZEd4V0ZWSzA1Z3dhZG1XNDB1N2pFbHBEZUdtK1A0RkFhKzZPc1FuOHlpdEdyK2plVjZmUXFseXFUQ2NrSVk4QXpwRDFRWmxvYzlqWjV0aC83UGNCVExoNThpaTlaZEU2OTA0NjlOcmlGd1Q4MVkrY28vN1ZZZWZlOWhHWlFJc2Ztczl1T0oxVWdBdXVpNm5FUmdtV05wM1FzSUhKRThweHUybUNSMTVDK2pwZ0txa0I0ektHSkdDUnRMQ3M0SWJWN2ozZ3BhUUpobGVpaXc3bG9PNXl0UHhyR3V1VGllTWI3N0ZJWE03RXNsaXF6WFZRN0NWODJZU21CSUJScWFEdzl0ZDJTZ04rZEpHaFJiclE3QWV0VElpdGxKYVdqbG1PNVhSUVRRPT0ifQ==
-- CEETOS_RELEASE_SIGNATURE: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
-- CEETOS_RELEASE_PAYLOAD_BEGIN
-- CeetOS installer. Generated; do not edit.
local files = {
  ["startup.lua"] = "local pendingPath,releasePath=\"/ceetos-updates/pending.lua\",\"/ceetos-updates/release.lua\"local pending if fs.exists(pendingPath)then local loader=loadfile(pendingPath)if loader then local ok,value=pcall(loader)if ok and type(value)==\"table\"then pending=value end end end if pending and pending.state==\"apply\"and fs.exists(releasePath)then shell.run(releasePath,\"--ceetos-apply\")elseif fs.exists(\"/ceetos/startup.lua\")then shell.run(\"/ceetos/startup.lua\")else shell.run(\"shell\")end",
  ["ceetos/startup.lua"] = "local root=\"/ceetos\"local profile={id=\"desktop\"}if fs.exists(root..\"/profile.lua\")then local loader=loadfile(root..\"/profile.lua\")if loader then local ok,value=pcall(loader);if ok and type(value)==\"table\"then profile=value end end end if profile.id~=\"desktop\"and fs.exists(root..\"/server.lua\")then shell.run(root..\"/server.lua\")elseif fs.exists(root..\"/ceet.lua\")then shell.run(root..\"/ceet.lua\")else printError(\"CeetOS is incomplete; starting CraftOS shell.\")shell.run(\"shell\")end",
  ["ceetos/profile.lua"] = "return {schema=1,id=\"recipe-server\"}",
  ["ceetos/lib/store.lua"] = "local M={}local cache={}local function internalPath(path)return type(path)~=\"string\"or path:sub(-4)==\".new\"or path:sub(-4)==\".bak\"end local function call(fn,...)local result={pcall(fn,...)}if not result[1]then return false,tostring(result[2])end if result[2]==false then return false,tostring(result[3]or\"operation failed\")end return true,result[2],result[3]end local function exists(path)local ok,value=call(fs.exists,path)return ok and value==true end local function remove(path)if not exists(path)then return true end local ok,err=call(fs.delete,path)return ok,err end local function ensureDirectory(path)local dir=fs.getDir(path)if dir==\"\"or exists(dir)then return true end local ok,err=call(fs.makeDir,dir)return ok,err end local function readRaw(path)local ok,handleOrErr=call(fs.open,path,\"r\")if not ok or not handleOrErr then return false,nil,tostring(handleOrErr or\"could not open file\")end local handle=handleOrErr local readOk,content=call(handle.readAll)local closeOk,closeErr=call(handle.close)if not readOk then return false,nil,content end if not closeOk then return false,nil,closeErr end return true,content end local function writeRaw(path,content)local ok,handleOrErr=call(fs.open,path,\"w\")if not ok or not handleOrErr then return false,tostring(handleOrErr or\"could not open file\")end local handle=handleOrErr local writeOk,writeErr=call(handle.write,content)local closeOk,closeErr=call(handle.close)if not writeOk then return false,writeErr end if not closeOk then return false,closeErr end return true end local function move(source,destination)local ok,err=call(fs.move,source,destination)return ok,err end local function decode(raw)local ok,value=pcall(textutils.unserialise,raw)if not ok or value==nil then return false,nil,\"invalid serialised value\"end return true,value end local function readValue(path)local ok,raw,err=readRaw(path)if not ok then return false,nil,err end return decode(raw)end local function recoverValue(path)local activeOk,activeValue=false,nil if exists(path)then activeOk,activeValue=readValue(path)end if activeOk then remove(path..\".new\")remove(path..\".bak\")return true,activeValue end local backupOk,backupValue=false,nil if exists(path..\".bak\")then backupOk,backupValue=readValue(path..\".bak\")end if backupOk then if exists(path)then remove(path)end if not exists(path)then move(path..\".bak\",path)end remove(path..\".new\")return true,backupValue end remove(path..\".new\")return false,nil end local function validLines(raw)for line in(raw..\"\\n\"):gmatch(\"(.-)\\n\")do if line~=\"\"then local ok,value=pcall(textutils.unserialise,line)if not ok or value==nil then return false,\"invalid appended value\"end end end return true end local function recoverAppend(path)if exists(path)then local activeOk,raw=readRaw(path)if activeOk then local valid=validLines(raw)if valid then remove(path..\".new\")remove(path..\".bak\")return true,raw end end end if exists(path..\".bak\")then local backupOk,raw=readRaw(path..\".bak\")if backupOk and validLines(raw)then if exists(path)then remove(path)end if not exists(path)then move(path..\".bak\",path)end remove(path..\".new\")return true,raw end end remove(path..\".new\")return false,\"no valid appended value\"end local function commitRaw(path,raw,validator)local dirOk,dirErr=ensureDirectory(path)if not dirOk then return false,dirErr end local temporary,backup=path..\".new\",path..\".bak\"local removeOk,removeErr=remove(temporary)if not removeOk then return false,removeErr end local writeOk,writeErr=writeRaw(temporary,raw)if not writeOk then remove(temporary);return false,writeErr end local checkOk,checkedRaw,checkErr=readRaw(temporary)if not checkOk then remove(temporary);return false,checkErr end local valid,validErr=validator(checkedRaw)if not valid then remove(temporary);return false,validErr or\"temporary validation failed\"end local backupRemoveOk,backupRemoveErr=remove(backup)if not backupRemoveOk then remove(temporary);return false,backupRemoveErr end if exists(path)then local backupOk,backupErr=move(path,backup)if not backupOk then remove(temporary);return false,backupErr end local activateOk,activateErr=move(temporary,path)if not activateOk then if not exists(path)then move(backup,path)end remove(temporary)return false,activateErr end else local activateOk,activateErr=move(temporary,path)if not activateOk then remove(temporary);return false,activateErr end end return true end function M.readCached(path,fallback)if internalPath(path)then return fallback end local entry=cache[path]if entry~=nil then return entry.value end return M.readFresh(path,fallback)end function M.readFresh(path,fallback)if internalPath(path)then return fallback end local ok,value=recoverValue(path)if not ok then value=fallback end cache[path]={value=value}return value end function M.read(path,fallback)return M.readCached(path,fallback)end function M.writeAtomic(path,value)if internalPath(path)then return false,\"cannot write store temporary or backup path\"end if value==nil then return false,\"cannot store nil\"end local serialisedOk,raw=pcall(textutils.serialise,value,{compact=true})if not serialisedOk or type(raw)~=\"string\"then return false,tostring(raw or\"could not serialise value\")end local valid=decode(raw)if not valid then return false,\"could not validate serialised value\"end recoverValue(path)local ok,err=commitRaw(path,raw,decode)if ok then cache[path]={value=value}end return ok,err end function M.write(path,value)return M.writeAtomic(path,value)end function M.append(path,value,limits)if internalPath(path)then return false,\"cannot append to store temporary or backup path\"end if value==nil then return false,\"cannot append nil\"end local serialisedOk,line=pcall(textutils.serialise,value,{compact=true})if not serialisedOk or type(line)~=\"string\"then return false,tostring(line or\"could not serialise value\")end local valid=validLines(line..\"\\n\")if not valid then return false,\"could not validate appended value\"end local recovered,current=recoverAppend(path)if not recovered then if exists(path)or exists(path..\".bak\")then return false,current end current=\"\"end local lines={}for existing in(current..\"\\n\"):gmatch(\"(.-)\\n\")do if existing~=\"\"then lines[#lines+1]=existing end end lines[#lines+1]=line local maxEntries=limits and tonumber(limits.maxEntries)local maxBytes=limits and tonumber(limits.maxBytes)if maxEntries then maxEntries=math.max(1,math.floor(maxEntries))end if maxBytes then maxBytes=math.max(1,math.floor(maxBytes))end while maxEntries and#lines>maxEntries do table.remove(lines,1)end local raw=table.concat(lines,\"\\n\")if#raw>0 then raw=raw..\"\\n\"end while maxBytes and#raw>maxBytes and#lines>1 do table.remove(lines,1)raw=table.concat(lines,\"\\n\")..\"\\n\"end if maxBytes and#raw>maxBytes then return false,\"appended value exceeds byte limit\"end local ok,err=commitRaw(path,raw,validLines)if ok then cache[path]=nil end return ok,err end function M.readAppend(path)if internalPath(path)then return\"\"end local ok,raw=recoverAppend(path)return ok and raw or\"\"end function M.invalidate(path)cache[path]=nil end return M",
  ["ceetos/lib/profile.lua"] = "local store=require(\"ceetos.lib.store\")local M={}M.PATH=\"/ceetos/profile.lua\"M.IDS={desktop=true,[\"recipe-server\"]=true,[\"router-server\"]=true,[\"auth-server\"]=true}local cache local function normalise(value)if type(value)~=\"table\"then value={}end local id=tostring(value.id or value.profile or\"desktop\")if not M.IDS[id]then id=\"desktop\"end return{schema=1,id=id,installedAt=tonumber(value.installedAt)or 0}end function M.current()if not cache then cache=normalise(store.read(M.PATH,{id=\"desktop\"}))end return cache end function M.id()return M.current().id end function M.is(id)return M.id()==id end function M.isServer()return M.id()~=\"desktop\"end function M.set(id)assert(M.IDS[id],\"invalid CeetOS profile\")cache={schema=1,id=id,installedAt=os.epoch(\"utc\")}return store.write(M.PATH,cache)end function M.capability(name)local id=M.id()local tableFor={desktop={desktop=true,craftingClient=true,orders=true},[\"recipe-server\"]={server=true,recipes=true,recipeImport=true,recipePlan=true},[\"router-server\"]={server=true,routing=true},[\"auth-server\"]={server=true,authAuthority=true},}return tableFor[id][name]==true end return M",
  ["ceetos/lib/auth.lua"] = "local store=require(\"ceetos.lib.store\")local password=require(\"ceetos.lib.password\")local audit=require(\"ceetos.lib.audit\")local M={current=nil}local USERS=\"/ceetos/data/users.lua\"local SESSION=\"/ceetos/data/session.lua\"local TOMBSTONES=\"/ceetos/data/user-tombstones.lua\"local THROTTLE=\"/ceetos/data/login-throttle.lua\"local RECOVERY=\"/ceetos/data/recovery.lua\"local AUTHORITY=\"/ceetos/data/auth-authority.lua\"local CENTRAL_SESSION=\"/ceetos/data/auth-session.lua\"local DIRECTORY=\"/ceetos/data/auth-directory.lua\"local rank={viewer=1,operator=2,admin=3}M.SESSION_TTL_MS=8*60*60*1000 M.LOGIN_THROTTLE={failures=5,windowMs=5*60*1000,lockMs=60*1000,maxEntries=64}local configuredWorkFactor=password.DEFAULT_WORK_FACTOR local sessionPathDelete local function now()return os.epoch(\"utc\")end local function accountName(name)return type(name)==\"string\"and name:match(\"^[%w_%-]+$\")and#name<=32 end local function users()store.invalidate(USERS);return store.read(USERS,{})end local function save(value)return store.write(USERS,value)end local function tombstones()store.invalidate(TOMBSTONES);return store.read(TOMBSTONES,{})end local function saveTombstones(value)return store.write(TOMBSTONES,value)end local function authority()store.invalidate(AUTHORITY)local value=store.read(AUTHORITY,nil)return type(value)==\"table\"and value.active==true and type(value.id)==\"string\"and value or nil end function M.authority()return authority()end function M.centralActive()return authority()~=nil end local function centralDirectory()store.invalidate(DIRECTORY)local value=store.read(DIRECTORY,{})return type(value)==\"table\"and type(value.users)==\"table\"and value or{users={}}end function M.acceptAuthority(record)assert(type(record)==\"table\"and type(record.id)==\"string\"and#record.id<=64,\"invalid auth authority\")local public={schema=1,active=true,id=record.id,term=math.max(0,math.floor(tonumber(record.term)or 0)),revision=math.max(0,math.floor(tonumber(record.revision)or 0)),seen=now()}assert(store.write(AUTHORITY,public),\"could not save auth authority\")if type(record.directory)==\"table\"then assert(store.write(DIRECTORY,{schema=1,revision=public.revision,users=record.directory}),\"could not save account directory\")end local loaded,profile=pcall(require,\"ceetos.lib.profile\")if not loaded or not profile.is(\"auth-server\")then if fs.exists(USERS)then fs.delete(USERS)end if fs.exists(TOMBSTONES)then fs.delete(TOMBSTONES)end sessionPathDelete()end return public end function M.updateDirectory(directory,revision)if type(directory)~=\"table\"then return false,\"invalid account directory\"end return store.write(DIRECTORY,{schema=1,revision=math.max(0,math.floor(tonumber(revision)or 0)),users=directory})end function M.saveCentralSession(value)if type(value)~=\"table\"or not accountName(value.name)or type(value.role)~=\"string\"then return false,\"invalid central session\"end local session={sessionVersion=3,name=value.name,role=value.role,token=value.token,issued=value.issued,expires=value.expires,accountRevision=value.accountRevision,authority=value.authority}if type(session.token)~=\"string\"or#session.token<16 then return false,\"invalid central session token\"end store.write(CENTRAL_SESSION,session)M.current=nil return true end local function safeAudit(action,detail)pcall(audit.log,\"auth\",action,detail or{})end local function stamp(account)account.updated=now()account.origin=tostring(os.getComputerID())account.revision=math.max(0,math.floor(tonumber(account.revision)or 0))+1 return account end local function makeAccount(role,plainPassword,context)local record,err=password.record(plainPassword,password.newSalt(context),configuredWorkFactor)assert(record,err)record.role=role return stamp(record)end sessionPathDelete=function()if fs.exists(SESSION)then fs.delete(SESSION)end store.invalidate(SESSION)end local function saveSession()if M.current==nil then sessionPathDelete();return end local durable={sessionVersion=2,name=M.current.name,nonce=M.current.nonce,issued=M.current.issued,expires=M.current.expires,accountRevision=M.current.accountRevision,}store.write(SESSION,durable)end local function makeSession(name,account)local issued=now()M.current={name=name,role=account.role,nonce=password.newSalt(\"session:\"..name),issued=issued,expires=issued+M.SESSION_TTL_MS,accountRevision=tonumber(account.revision)or 0,}saveSession()return M.current end local function liveAccount(name)local all=users()return all[name],all end local function normaliseSession(saved,account)if type(saved)~=\"table\"or not account or account.disabled then return nil end if saved.sessionVersion==2 then local issued,expires,revision=tonumber(saved.issued),tonumber(saved.expires),tonumber(saved.accountRevision)if type(saved.nonce)~=\"string\"or#saved.nonce<16 or not issued or not expires or not revision then return nil end if expires<=now()or revision~=(tonumber(account.revision)or 0)then return nil end return{name=saved.name,role=account.role,nonce=saved.nonce,issued=issued,expires=expires,accountRevision=revision}end if saved.sessionVersion==nil and type(saved.role)==\"string\"then return\"legacy\"end return nil end function M.refreshSession()local central=authority()if central then store.invalidate(CENTRAL_SESSION)local saved=store.read(CENTRAL_SESSION,nil)local entry=type(saved)==\"table\"and centralDirectory().users[saved.name]or nil if type(saved)~=\"table\"or saved.sessionVersion~=3 or saved.authority~=central.id or type(saved.token)~=\"string\"or(tonumber(saved.expires)or 0)<=now()or type(entry)~=\"table\"or entry.disabled==true or saved.accountRevision~=entry.revision then M.current=nil if fs.exists(CENTRAL_SESSION)then fs.delete(CENTRAL_SESSION)end return nil end M.current={name=saved.name,role=entry.role,nonce=saved.token,issued=saved.issued,expires=saved.expires,accountRevision=saved.accountRevision,authority=central.id,central=true}return M.current end store.invalidate(SESSION)local saved=store.read(SESSION,nil)if type(saved)~=\"table\"or not accountName(saved.name)then M.current=nil;return nil end local account=liveAccount(saved.name)local session=normaliseSession(saved,account)if session==\"legacy\"then return makeSession(saved.name,account)end if not session then M.current=nil sessionPathDelete()return nil end M.current=session return M.current end local function throttleState()store.invalidate(THROTTLE)local data=store.read(THROTTLE,{})return type(data)==\"table\"and data or{}end local function saveThrottle(data)local entries={}for name,entry in pairs(data)do if accountName(name)and type(entry)==\"table\"and type(entry.last)==\"number\"then entries[#entries+1]={name=name,last=entry.last}end end table.sort(entries,function(a,b)return a.last>b.last end)local kept={}for index,entry in ipairs(entries)do if index<=M.LOGIN_THROTTLE.maxEntries then kept[entry.name]=data[entry.name]end end store.write(THROTTLE,kept)end local function locked(name)if not accountName(name)then return false end local entry=throttleState()[name]return entry and(tonumber(entry.lockedUntil)or 0)>now()or false end local function noteFailure(name,reason)if not accountName(name)then return end local data,entry,time=throttleState(),nil,now()entry=data[name]or{failures=0,first=time}if time-(tonumber(entry.first)or 0)>M.LOGIN_THROTTLE.windowMs then entry.failures,entry.first=0,time end entry.failures=math.max(0,math.floor(tonumber(entry.failures)or 0))+1 entry.last=time if entry.failures>=M.LOGIN_THROTTLE.failures then entry.lockedUntil=time+M.LOGIN_THROTTLE.lockMs end data[name]=entry saveThrottle(data)safeAudit(\"login.failure\",{account=name,reason=reason or\"invalid\",throttled=(entry.lockedUntil or 0)>time})end local function clearFailures(name)local data=throttleState()if data[name]~=nil then data[name]=nil;saveThrottle(data)end end function M.throttleStatus(name)local entry=accountName(name)and throttleState()[name]or nil if not entry then return{failures=0,lockedUntil=0}end return{failures=tonumber(entry.failures)or 0,lockedUntil=tonumber(entry.lockedUntil)or 0}end function M.setPasswordWorkFactor(value)local work,err=password.normaliseWorkFactor(value)assert(work,err)configuredWorkFactor=work return work end function M.passwordWorkFactor()return configuredWorkFactor end function M.bootstrap(initialPassword)if authority()then return false end local all=users()if next(all)then return false end local plainPassword=initialPassword if plainPassword==nil then term.write(\"Create CeetOS admin password: \");plainPassword=read(\"*\")end local account=makeAccount(\"admin\",plainPassword,\"admin\")all.admin=account assert(save(all),\"could not save administrator account\")makeSession(\"admin\",account)safeAudit(\"bootstrap\",{account=\"admin\"})return true end function M.login(name,plainPassword)if authority()then local client=require((\"ceetos.lib.auth_client\"))return client.login(name,plainPassword)end if not accountName(name)or type(plainPassword)~=\"string\"then noteFailure(name,\"invalid\")return false,\"invalid credentials\"end if locked(name)then safeAudit(\"login.failure\",{account=name,reason=\"throttled\",throttled=true})return false,\"too many failed attempts; try again later\"end local account,all=liveAccount(name)if not account or account.disabled then noteFailure(name,\"invalid\")return false,\"invalid credentials\"end local valid,state=password.verify(account,plainPassword)if not valid then noteFailure(name,\"invalid\")return false,\"invalid credentials\"end if state==\"legacy\"then local upgraded=makeAccount(account.role,plainPassword,\"upgrade:\"..name)upgraded.updated=account.updated or upgraded.updated upgraded.origin=account.origin or upgraded.origin upgraded.revision=math.max(tonumber(account.revision)or 0,upgraded.revision)stamp(upgraded)all[name]=upgraded assert(save(all),\"could not upgrade password record\")account=upgraded safeAudit(\"password.upgraded\",{account=name})end clearFailures(name)makeSession(name,account)safeAudit(\"login.success\",{account=name})return true end function M.logout()M.current=nil sessionPathDelete()if fs.exists(CENTRAL_SESSION)then fs.delete(CENTRAL_SESSION)end end function M.add(name,role,plainPassword)if authority()then assert(rank[role]and accountName(name),\"invalid user or role\")local record,err=makeAccount(role,plainPassword,\"central:\"..name)assert(record,err)return require((\"ceetos.lib.auth_client\")).mutate(\"add\",{name=name,role=role,record=record})end M.require(\"operator\")assert(rank[role],\"invalid role\")if role==\"admin\"then M.require(\"admin\")end assert(accountName(name),\"invalid user name\")local all=users()assert(not all[name],\"user exists\")all[name]=makeAccount(role,plainPassword,name)assert(save(all),\"could not save user\")safeAudit(\"user.add\",{account=name,role=role})end local function adminCount(all)local count=0 for _,account in pairs(all)do if account.role==\"admin\"and not account.disabled then count=count+1 end end return count end function M.setRole(name,role)if authority()then return require((\"ceetos.lib.auth_client\")).mutate(\"role\",{name=name,role=role})end M.require(\"operator\")assert(accountName(name)and rank[role],\"invalid user or role\")local all,account=users(),users()[name]assert(account,\"unknown user\")if role==\"admin\"or account.role==\"admin\"then M.require(\"admin\")end assert(not(M.current and M.current.name==name),\"cannot change the active account role\")assert(not(account.role==\"admin\"and role~=\"admin\"and adminCount(all)<=1),\"cannot remove the last administrator\")account.role=role stamp(account)all[name]=account assert(save(all),\"could not save account role\")safeAudit(\"user.role\",{account=name,role=role})end function M.setDisabled(name,disabled)if authority()then return require((\"ceetos.lib.auth_client\")).mutate(\"disable\",{name=name,disabled=disabled==true})end M.require(\"admin\")assert(accountName(name),\"invalid user name\")local all,account=users(),users()[name]assert(account,\"unknown user\")assert(not(M.current and M.current.name==name),\"cannot disable the active account\")if disabled then assert(not(account.role==\"admin\"and adminCount(all)<=1),\"cannot disable the last administrator\")end account.disabled=disabled==true stamp(account)all[name]=account assert(save(all),\"could not save account state\")safeAudit(\"user.disabled\",{account=name,disabled=account.disabled})end function M.remove(name)if authority()then return require((\"ceetos.lib.auth_client\")).mutate(\"remove\",{name=name})end M.require(\"operator\")assert(accountName(name),\"invalid user name\")local all,account=users(),users()[name]assert(account,\"unknown user\")if account.role==\"admin\"then M.require(\"admin\")end assert(not(M.current and M.current.name==name),\"cannot delete the active account\")assert(not(account.role==\"admin\"and adminCount(all)<=1),\"cannot delete the last administrator\")all[name]=nil local removed=tombstones()removed[name]=now()assert(saveTombstones(removed),\"could not save account tombstone\")assert(save(all),\"could not remove account\")safeAudit(\"user.remove\",{account=name})end local function recoveryActive()store.invalidate(RECOVERY)local recovery=store.read(RECOVERY,{})return type(recovery)==\"table\"and(tonumber(recovery.until_ts)or 0)>now()end local function setPassword(name,plainPassword)assert(accountName(name),\"invalid user name\")local all,account=users(),users()[name]assert(account,\"unknown user\")local replacement=makeAccount(account.role,plainPassword,\"reset:\"..name)replacement.updated=account.updated or replacement.updated replacement.origin=account.origin or replacement.origin replacement.revision=math.max(tonumber(account.revision)or 0,replacement.revision)replacement.disabled=account.disabled==true stamp(replacement)all[name]=replacement assert(save(all),\"could not save password\")if M.current and M.current.name==name then M.current=nil;sessionPathDelete()end safeAudit(\"password.reset\",{account=name})return true end function M.resetPassword(name,plainPassword)if authority()then local account=centralDirectory().users[name];assert(account,\"unknown user\")local record,err=makeAccount(account.role,plainPassword,\"central-reset:\"..name);assert(record,err)return require((\"ceetos.lib.auth_client\")).mutate(\"reset\",{name=name,record=record})end if not M.allowed(\"admin\")and not recoveryActive()then error(\"permission denied (requires admin or active recovery window)\",2)end return setPassword(name,plainPassword)end function M.adminResetPassword(name,plainPassword)if authority()then local account=centralDirectory().users[name];assert(account,\"unknown user\")local record,err=makeAccount(account.role,plainPassword,\"central-reset:\"..name);assert(record,err)return require((\"ceetos.lib.auth_client\")).mutate(\"reset\",{name=name,record=record})end M.require(\"operator\")local account=users()[name]assert(account,\"unknown user\")if account.role==\"admin\"then M.require(\"admin\")end return setPassword(name,plainPassword)end function M.allowed(role)if not rank[role]then return false end local current=M.refreshSession()return current~=nil and rank[current.role]>=rank[role]end function M.require(role)if not M.allowed(role)then error(\"permission denied (requires \"..tostring(role)..\")\",2)end end function M.list()local out={}local source=authority()and centralDirectory().users or users()for name,account in pairs(source)do out[#out+1]={name=name,role=account.role,disabled=account.disabled==true,revision=account.revision}end table.sort(out,function(a,b)return a.name<b.name end)return out end function M.snapshot()if authority()then return{users={},tombstones={},source=tostring(os.getComputerID()),schema=3,central=true}end return M.authoritySnapshot()end function M.authoritySnapshot()local copy={users={},tombstones={},source=tostring(os.getComputerID()),schema=2}for name,account in pairs(users())do copy.users[name]={role=account.role,salt=account.salt,verifier=account.verifier,passwordVersion=account.passwordVersion,scheme=account.scheme,workFactor=account.workFactor,revision=tonumber(account.revision)or 0,disabled=account.disabled==true,updated=account.updated or 0,origin=account.origin or copy.source,}end for name,removed in pairs(tombstones())do copy.tombstones[name]=removed end return copy end local function validIncomingPassword(account)if password.isModern(account)then local work=password.normaliseWorkFactor(account.workFactor)return work~=nil and type(account.verifier)==\"string\"and#account.verifier==64 and account.verifier:match(\"^[0-9a-f]+$\")~=nil end return type(account.salt)==\"string\"and#account.salt>0 and#account.salt<=256 and type(account.verifier)==\"string\"and account.verifier:match(\"^[0-9a-fA-F]+$\")~=nil and#account.verifier==8 end function M.merge(snapshot,authoritySeed)if authority()and authoritySeed~=true then return false,\"distributed account sync is disabled by central authority\"end if type(snapshot)~=\"table\"or type(snapshot.users)~=\"table\"then return false,\"invalid account sync\"end local all,removed,changed=users(),tombstones(),false for name,deletedAt in pairs(snapshot.tombstones or{})do if accountName(name)and type(deletedAt)==\"number\"and deletedAt>(removed[name]or 0)then local localAccount=all[name]if not localAccount or(localAccount.updated or 0)<=deletedAt then all[name],removed[name],changed=nil,deletedAt,true end end end for name,account in pairs(snapshot.users)do if accountName(name)and type(account)==\"table\"and rank[account.role]and validIncomingPassword(account)then local updated=tonumber(account.updated)or 0 local localAccount,incomingOrigin=all[name],tostring(account.origin or snapshot.source or\"\")local localOrigin=localAccount and tostring(localAccount.origin or os.getComputerID())or\"\"local wins=not localAccount or updated>(localAccount.updated or 0)or(updated==(localAccount.updated or 0)and incomingOrigin~=\"\"and incomingOrigin<localOrigin)if(removed[name]==nil or updated>removed[name])and wins then all[name]={role=account.role,salt=account.salt,verifier=account.verifier,passwordVersion=account.passwordVersion,scheme=account.scheme,workFactor=account.workFactor,revision=math.max(0,math.floor(tonumber(account.revision)or 0)),disabled=account.disabled==true,updated=updated,origin=incomingOrigin,}changed=true end end end if changed then assert(save(all),\"could not save account sync\")assert(saveTombstones(removed),\"could not save account tombstones\")M.refreshSession()end return changed end function M.authorityAccount(name)if not accountName(name)then return nil end return users()[name]end function M.authorityDirectory()local out={}for name,account in pairs(users())do out[name]={role=account.role,disabled=account.disabled==true,revision=tonumber(account.revision)or 0}end return out end function M.authorityMutate(action,fields)fields=type(fields)==\"table\"and fields or{}local name=fields.name assert(accountName(name),\"invalid user name\")local all,account=users(),users()[name]if action==\"add\"then assert(not account,\"user exists\")assert(rank[fields.role],\"invalid role\")local record=fields.record assert(type(record)==\"table\"and password.isModern(record),\"central account mutation requires a verifier record\")record.role,record.disabled=fields.role,false;all[name]=stamp(record);assert(save(all),\"could not save user\")elseif action==\"role\"then assert(account and rank[fields.role],\"unknown user or invalid role\")if account.role==\"admin\"and fields.role~=\"admin\"then local admins=0;for _,candidate in pairs(all)do if candidate.role==\"admin\"and not candidate.disabled then admins=admins+1 end end assert(admins>1,\"cannot demote the last active admin\")end account.role=fields.role;stamp(account);all[name]=account;assert(save(all),\"could not save role\")elseif action==\"disable\"then if account and account.role==\"admin\"and fields.disabled==true then local admins=0;for _,candidate in pairs(all)do if candidate.role==\"admin\"and not candidate.disabled then admins=admins+1 end end assert(admins>1,\"cannot disable the last active admin\")end assert(account,\"unknown user\");account.disabled=fields.disabled==true;stamp(account);all[name]=account;assert(save(all),\"could not save user state\")elseif action==\"remove\"then assert(account,\"unknown user\")if account.role==\"admin\"and not account.disabled then local admins=0;for _,candidate in pairs(all)do if candidate.role==\"admin\"and not candidate.disabled then admins=admins+1 end end assert(admins>1,\"cannot remove the last active admin\")end all[name]=nil;local removed=tombstones();removed[name]=now();assert(saveTombstones(removed),\"could not save tombstone\");assert(save(all),\"could not remove user\")elseif action==\"reset\"then assert(account,\"unknown user\")local replacement=fields.record assert(type(replacement)==\"table\"and password.isModern(replacement),\"central password reset requires a verifier record\")replacement.role,replacement.disabled=account.role,account.disabled==true;all[name]=stamp(replacement);assert(save(all),\"could not save password\")else error(\"unsupported account mutation\")end safeAudit(\"authority.\"..action,{account=name})return M.authorityDirectory()end M.refreshSession()return M",
  ["ceetos/lib/password.lua"] = "local M={}M.SCHEME=\"pbkdf2-hmac-sha256\"M.PASSWORD_VERSION=2 M.DEFAULT_WORK_FACTOR=256 M.MIN_WORK_FACTOR=64 M.MAX_WORK_FACTOR=2048 M.MIN_LENGTH=8 M.MAX_LENGTH=128 local MOD=4294967296 local band,bor,bxor,bnot=bit32.band,bit32.bor,bit32.bxor,bit32.bnot local rshift,lshift=bit32.rshift,bit32.lshift local unpack=table.unpack or unpack local K={0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5,0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5,0xd807aa98,0x12835b01,0x243185be,0x550c7dc3,0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174,0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc,0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da,0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7,0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967,0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13,0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85,0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3,0xd192e819,0xd6990624,0xf40e3585,0x106aa070,0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5,0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3,0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208,0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2,}local initial={0x6a09e667,0xbb67ae85,0x3c6ef372,0xa54ff53a,0x510e527f,0x9b05688c,0x1f83d9ab,0x5be0cd19,}local function add(...)local value=0 for i=1,select(\"#\",...)do value=(value+(select(i,...)or 0))%MOD end return value end local function rrotate(value,amount)if bit32.rrotate then return bit32.rrotate(value,amount)end return bor(rshift(value,amount),lshift(value,32-amount))end local function word(bytes,index)return bytes:byte(index)*16777216+bytes:byte(index+1)*65536+bytes:byte(index+2)*256+bytes:byte(index+3)end local function packWord(value)return string.char(band(rshift(value,24),0xff),band(rshift(value,16),0xff),band(rshift(value,8),0xff),band(value,0xff))end local function sha256Raw(value)local bitLength=#value*8 value=value..string.char(0x80)value=value..string.rep(\"\\0\",(56-(#value%64))%64)value=value..packWord(math.floor(bitLength/MOD))..packWord(bitLength%MOD)local h={unpack(initial)}for offset=1,#value,64 do if#value>16384 and offset>1 and((offset-1)/64)%128==0 and type(sleep)==\"function\"then sleep(0)end local w={}for i=1,16 do w[i]=word(value,offset+(i-1)*4)end for i=17,64 do local x,y=w[i-15],w[i-2]local s0=bxor(rrotate(x,7),rrotate(x,18),rshift(x,3))local s1=bxor(rrotate(y,17),rrotate(y,19),rshift(y,10))w[i]=add(w[i-16],s0,w[i-7],s1)end local a,b,c,d,e,f,g,hh=unpack(h)for i=1,64 do local s1=bxor(rrotate(e,6),rrotate(e,11),rrotate(e,25))local choice=bxor(band(e,f),band(bnot(e),g))local t1=add(hh,s1,choice,K[i],w[i])local s0=bxor(rrotate(a,2),rrotate(a,13),rrotate(a,22))local majority=bxor(band(a,b),band(a,c),band(b,c))local t2=add(s0,majority)hh,g,f,e,d,c,b,a=g,f,e,add(d,t1),c,b,a,add(t1,t2)end h[1],h[2],h[3],h[4]=add(h[1],a),add(h[2],b),add(h[3],c),add(h[4],d)h[5],h[6],h[7],h[8]=add(h[5],e),add(h[6],f),add(h[7],g),add(h[8],hh)end local result={}for i=1,8 do result[i]=packWord(h[i])end return table.concat(result)end local function hmac(key,message)if#key>64 then key=sha256Raw(key)end key=key..string.rep(\"\\0\",64-#key)local inner,outer={},{}for i=1,64 do local byte=key:byte(i)inner[i],outer[i]=string.char(bxor(byte,0x36)),string.char(bxor(byte,0x5c))end return sha256Raw(table.concat(outer)..sha256Raw(table.concat(inner)..message))end local function xorBytes(left,right)local out={}for i=1,#left do out[i]=string.char(bxor(left:byte(i),right:byte(i)))end return table.concat(out)end local function cooperate(round)if round%32~=0 or not(os and os.queueEvent and os.pullEvent)then return end os.queueEvent(\"ceetos_password_yield\")os.pullEvent(\"ceetos_password_yield\")end local function toHex(value)return(value:gsub(\".\",function(byte)return string.format(\"%02x\",byte:byte())end))end local function constantEqual(left,right)if type(left)~=\"string\"or type(right)~=\"string\"then return false end local differing=bxor(#left,#right)local length=math.max(#left,#right)for i=1,length do differing=bor(differing,bxor(left:byte(i)or 0,right:byte(i)or 0))end return differing==0 end function M.hmacSha256(key,message)if type(key)~=\"string\"or type(message)~=\"string\"then return nil,\"HMAC key and message must be strings\"end return toHex(hmac(key,message))end function M.sha256(value)if type(value)~=\"string\"then return nil,\"SHA-256 input must be a string\"end return toHex(sha256Raw(value))end function M.constantTimeEqual(left,right)return constantEqual(left,right)end function M.legacyDigest(value)local h=2166136261 for i=1,#value do h=bxor(h,value:byte(i))h=(h*16777619)%MOD end return string.format(\"%08x\",h)end function M.normaliseWorkFactor(value)value=tonumber(value)if not value or value%1~=0 then return nil,\"invalid password work factor\"end if value<M.MIN_WORK_FACTOR or value>M.MAX_WORK_FACTOR then return nil,\"password work factor must be \"..M.MIN_WORK_FACTOR..\"-\"..M.MAX_WORK_FACTOR end return value end function M.policy(password)if type(password)~=\"string\"then return false,\"password is required\"end if#password<M.MIN_LENGTH or#password>M.MAX_LENGTH then return false,\"password must contain \"..M.MIN_LENGTH..\"-\"..M.MAX_LENGTH..\" characters\"end if password:find(\"[%z\\1-\\31\\127]\")then return false,\"password contains control characters\"end return true end function M.derive(password,salt,workFactor)local work,err=M.normaliseWorkFactor(workFactor)if not work then return nil,err end if type(password)~=\"string\"or type(salt)~=\"string\"or#salt<16 or#salt>256 then return nil,\"invalid password record\"end local block=string.char(0,0,0,1)local value=hmac(password,salt..block)local result=value for _=2,work do value=hmac(password,value)result=xorBytes(result,value)cooperate(_)end return toHex(result)end local saltCounter=0 function M.newSalt(context)saltCounter=saltCounter+1 local now=os.epoch and os.epoch(\"utc\")or 0 local computer=os.getComputerID and os.getComputerID()or 0 local label=os.getComputerLabel and os.getComputerLabel()or\"\"local random=math.random and math.random(0,2147483647)or 0 return toHex(sha256Raw(table.concat({tostring(now),tostring(computer),tostring(label),tostring(context or\"\"),tostring(saltCounter),tostring(random)},\":\"))):sub(1,32)end function M.record(password,salt,workFactor)local valid,err=M.policy(password)if not valid then return nil,err end local work,workErr=M.normaliseWorkFactor(workFactor or M.DEFAULT_WORK_FACTOR)if not work then return nil,workErr end salt=salt or M.newSalt()local verifier,deriveErr=M.derive(password,salt,work)if not verifier then return nil,deriveErr end return{passwordVersion=M.PASSWORD_VERSION,scheme=M.SCHEME,salt=salt,verifier=verifier,workFactor=work,}end function M.isModern(record)return type(record)==\"table\"and record.passwordVersion==M.PASSWORD_VERSION and record.scheme==M.SCHEME end function M.verify(record,password)if type(record)~=\"table\"or type(password)~=\"string\"or type(record.salt)~=\"string\"or type(record.verifier)~=\"string\"then return false,\"invalid password record\"end if M.isModern(record)then local verifier,err=M.derive(password,record.salt,record.workFactor)if not verifier then return false,err end return constantEqual(record.verifier,verifier),nil end return constantEqual(record.verifier,M.legacyDigest(record.salt..password)),\"legacy\"end return M",
  ["ceetos/lib/release_keys.lua"] = "return{algorithm=\"lamport-sha256-v1\",roots={[\"auth-server-release-0.16.0\"]={public=\"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\",profile=\"auth-server\"},[\"auth-server-release-0.16.1\"]={public=\"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\",profile=\"auth-server\"},[\"desktop-release-0.16.1\"]={public=\"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\",profile=\"desktop\"},[\"desktop-release-0.16.2\"]={public=\"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\",profile=\"desktop\"},[\"recipe-server-release-0.16.0\"]={public=\"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\",profile=\"recipe-server\"},[\"recipe-server-release-0.16.1\"]={public=\"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\",profile=\"recipe-server\"},[\"router-server-release-0.16.0\"]={public=\"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\",profile=\"router-server\"},[\"router-server-release-0.16.1\"]={public=\"9MPQfNsbpZs37Q6UJSbrJ/fXpw1026Xv19m+Q+OYn4Ge97c3WL5tC2ogn/MTvbXhmaruZJuEwnIL4yFz2X6QcZsk8AEvVus2zZ4vQEotX2BOAJffwpDZAIRfsCwGtFy288chNw5qeR95JEeJfk/np4K5mRNpAlyzv9nNTCViH/UgwYnOJnPzN8LAC9vrdbKgzdyG0CEUUb4kySszIO1vLa7hU0C64Zr7lyn5k6Wz5/Nqs1Bt0f5eoUS8Ddoe1Aae+4I5CR3CbrdpqSnQOX2kHFaJCnpE3Yg7iIdEtCBa/39EfGd3ftLYuYpcrJJsmbMk9MCUTQ8/f9/Zo0EGkWITjGqnZNuII+Shd+aRCfYlvoLKJxWCAHa3DdBi6qNAnM4Pln5ta2Vk0DcBWup8OohGFP/frfQDa+BI2i5n4Cidp21AprE1YNK74Zv0OyA4nCOHL75Q3fo4fZa71QO+TvE1hSOTfBqfe/TT6Bnxb6HJCEmh/6jVSh6L3CHSfnuLxYU/kLwiZJjvETbqVK2fTvVJUip40LVDkGF7FPuDtPeiolJyAsJE5UfRPBfm9SSsdcDAaWEd3lrJkDkps4aTUsM/BTohAdLkLO/psRQzPpSoy4xEsGupzf+Z+jqhDqN/xRa3HFVA+ERorMbdkBwPPBvwD8ondDW6tAufeE+XGwmyygV5B/A0p0o/sggbYbn4IgX/2lRrFJpLVg0D5Sm3KOCOVd5/bPWSe0Ueei0T1PDre92P9CHd24aty2nDlP/qDl20/RaHWDZ4slfMIxK5+DWi7CIUW7TJU4ybTsS6OaALaFYXwd+1yQwLc21DQ8nkf/y2I47QX0Mfr4T9fnBGdbRgnFWP8m8H1JulrNeoeIXwa7ijB4N+WW1d2iyldUdHXETCxETdnsQiCUCvQUKoeIjzzlYS2UsdoJ+s11NKdtq7ScXmp7CowAM3gGe2cs3Hcz1EJ4VzTSVGA7MvzKTlL/uj61JtVofRRQZ99NCOVhSg4aiACzs/lADXmO6mNtL0pv/R4y7K+y84auIQnyvf5dr5alkaBfuuIx2rWzYxnyvy7C1nzH2xXVSg4VTDS+r5SqbLUiJ6gzjnUPdePAwIhzhSoDkxvDK1fCGYKs+9SinVAOey78K7od6hQVT/fh2ORL7GOvAtth3v/K6Da8rO9E6x09vPyRWVaEv50+B6F5Xue/SfyH6oAyQhR39dxYB4hZ28TUi8NRNOfNzc4k6h2wxT+vTIqGUAkqR4jv5yBMDQpRG4oQNuRCvaYFlSwHoal+GtB9IRrhK36b3X67kxYFTxl4Pwc8Al1kQZbY3NF4U8xeOaCqr7tJJvhzWoCgxWDF7uJ8HWubgXUuhrAxme3+BSLqUX65cSb8P7vZcq+tbyhEpc2dE+QfOh30XC2Bom7roMO0jxg6mE2q9XdFnzwI96s5jM4tOkffIHo5Bk/l/U1A/QJPnRsALrn7pX16EK5pIiRVQSadEiPKMPZ0g7Lz7zFEIYSmm4GYdkoYFe/Jj83yhPsFBf5IZ0+sZfTphbleNAnMEOfSoVpVDbMCCn+LxpIeL8wCmgf7RK+M5BCZT0N7QX8lbJ/YU99MmNtMYNgRgtlU4C5sOwt1N2QDR/ZW4+f+/gCqVBEo2S+p3YGIDM9SQh3zMEWtkDmGn5zDaSR4kDV7l7XUtZnd2VGtowHX1BfG/E8YpxgsL2uXLDIB/6asKY9Hjq9E2V6GTSyPHaiotSO57bLLpy2wqA+JHzJ9IY65x8XXEhiz/V+iiRb+Gxzcz4HuvtLrVVwT9AqJ53lNta7TDbdZXdJn3bBtFUB9fgKLgaLJBtlS01KgfsSOrg4sSXobxhv5NJf7bVFmTzpwW7p/Sw0wqaTWXClRYwE43YqbKtr0GfkxHQDR9qWn6Wl0BFVfKcOrrTfiCKsKK75WQlfV6wgs25BUjEL3oFLKe0r0G61gqwYGYqUvSuC6AxTOaXHuNLDQvgUn6GwncQQ1wGWBm7nMuwKR6sWP2tO7qV6WsSEB6PwdHxXRxZ7mCS0dCG7/j5fSz0Owpd+NAfZq0ldYOAzAV8k1JMYNJtZRHXN8xZ0Lxo4XY4HScRoT3gKlMgnEzRW127Ygvl89ClBLbdL8jYpgl6ndfilK9Pa27VUR2YXs0cCt81l7yQtsDkBUEev9T+fsvxHrWOO/7ywzUOlMXdjYy2l8Kap8UQnU3WHuvBfAooX/wPtGfApmVGut4EVf9LPR3+k3GH6bgpLS5uIDv/LCPUrY2shKQLxF9kN+hZMJbxZQJmkteufWuas+DPJXg+VGGZKUhbFAtUwLQt0Wl/5Q3ZUJdOPwg09m6+35nCrp4FuFJiFWcsyjIxt+jLmQUXERt2tH3SFCfyrCJ0ko7GVufVv8KbNyxkGuc5nzuZ/Cz31G1dmvDsK1o0ob+JK8x4NxBVYm8XOUXQQIJGQMDltaq9ZEwKlNuUesZB4kz3ZUaySJ205HzbsrommdbHELfuDmwg8Hxs2LE8h3hen+S88/j87hR8oXEP2Y3Oxcz9/2gdbhSxKfwzr4wu6lvhwtR5kDlaUjccSDgQsG8Bn/OEvtKPMrh6E441+4HaYa/eLGp3fu5q28DRwai7a9qth+8VhKrIqX+vcuIIe+34bbY2whUQkNteMUnWOrK+RfVdPQ8GVM9ibiU6MNG0aRTKACBWdtJyJLylbjRTdW86PnHNbjC+eM52BzWZyNdpBtJBYz2NV9Ft5UxSwM1Lsn7Q+LivudQnHr+yjLJilh8bmpBDf6F7lilAMrrFKgIkr4HWNtRh8vO/0VLm87KwHwmwIKQP/TE/dlO6a9TxPfVLmQ6ancml3k8j3gaGAwGgHBKpH8dLO6T5FZW37HFxxd/nLQ1j36hXXlyNLCCvH42wF4/PYDk5PRCUa6FELh9DdLuF/VlzbFJEWQvE0NkuLe1KctHd9m13ba5vLVH2NjK/LKAqocctzaCf+aI3LUTP/Ue+TLYQga/QXkOF1gb1yoINLxVXNQ6q6yKjil/axJx+KLvH1htshFqKfjEUd3jENNhvVb/Eqxh8p7NiLYD+ODqSTJ4XCH+O6Cis9w10m++rU06gy5LlIaJmwyDJ0ZE2vFyXCy9teGpLsdftPLIEhrxr7R7e0eTWGzMwv+mtuI2lIinudTOakjCQbxRdYPH4LeyxCaygcsd0IjnmeLc3xGyeDXFS99bKvttKQJ6P7pMinAaBEpOSwvNFzlBbTkQu/bPaO0sIVT0qdPvD12nvKBQnN82AmH53nrhqRfmRlavax36tIPwDjJylLCOetB+VBM4zi8BhNSkLDUc92iF5KvuL16Dnm/qEZ2RY1gPHT7t2XDxsyWs4SumGguIbQPAAPfQVMkoUrYbrWXRDwk9pyuQ1Zw9I9NklMSUGZ5zVJY8l964qh+FUBAl9ImuhsLoSK5ZAsTustt+t+jkKJ1Ex03+qTlPbO/tsM604ZNc9Mdlnxhj4UP0Z16WgbelifPYO67mydJ3GYfL9N49WPG9luW1lRkhH0CwGCNYAM5kLlNfc6Nxp2P2J+VbVwFZOhjdo43TOg9F6tFJ1EuXYyX6fVlDwM4vG8LmgeP9UKSDb58+tMZd4Gui+/PasXfAVSQubMXl6zpD+ybv0zbx1B7bnRB/rM2zGOB+Ny41X+iX+6oi8eIDihPsU3gTZK2f1dcb6hB31hMGFZfvY7m/4/XQ+EIWd725agrGHYGyddVhnh2M6/UJDiEwYFQIbXszj88N85f4tKfWuZAaQo6CkYD9mWVbW+dEatC82If3McQ61fMTt3fM5mlWFvQi5HNbt29S/1JZsG4Wv4/goKgjaeyTXbi7MZY9o/a4/m0Wf9Wq+iW53W6s9NnFiRWEWwdFo3KTDaTn+rfgMwfYRqk3/svl3sgqOLtkuquioidJeCGJIbqGF+FyEEC1N1squKB8JZV/bHItQjsjwmJcunCH0JFvf6b5XSENajod2gOMM0qJ1zIFZjpBAOMKOpa9SEr0RDyDTnmFWDFgYYBZSsZI8czmPu7vxZK/vhgTA/rfAt1Xlj13iSYWxUvsZrLiaRGRavOmsjNVGujtK07Gp7Axa2HcjddTbz1YStg/M7N/swRS2xE/EOsouToLITft7U6ai1vazsYzSMSm5w+Eu4b5t291mUmgq6VNsMh2Nw5vvVnZ0t4ZFT9Lr0KDsw2YY5GUnmMwLbLvz9qFJ6nOSnedJVxr4+8KXHEnikj75fBHSFcwscirJm07FOuaSclX2UWIcBrtY2r5t9sn5FcOj2E01W2vz18fHpeKvLYVhs/pVU7zs+EIvNbFWXnFiNOkYdgbfTkWlwsRYJ6Z0whnnj+SL/Gt2ACjLjo19ZmfbLcNLjeJPwcwYy7jqlXh8LRl5mTnWd50lbBO5RQxTTdLIDtyxsEwZh+2APR5FMxyCDHce09+REesZTZTJ1EWz3FonRD72gIaBdH92lUK/bAbUd22nlMDikOGih/GHsH14RU18yZyKkb9vm1Xby7c6dHu5sVmFHaCofsMFPAajxaglN8MK/Brej9FNaBlLXURS7sM6phvnB+upPgsteiiMCihrODesoO4hq4XAEl4eEjZUMcNVSKhFmAi5KyfrCscQQbBPqYPYwvIM3k3ozzMUfxAxnW0Zt6I/xmUuvCURE4jIrZDolVQaHuskkUPjCNEJz3GbkNpjVmkqsrCcDsxbqSH33eGVlcd3vJnuXZ+0yawGfoDgpC28lKWRPAvNENBZFPjCFXyE7xaI/39bdLXZtDbMXYduL0SxZgwStkdZvpCxFBEqe30AizoaX9qopoHgV7oSx4TuCeAZOla0LDYuwiXp9Y+AIrJvWYuZpe4wCbY2bwYJuHtHL7m/5lae4NdpPDh+Mts5ijQA2XohZv5Vf5pVTFi+EbnocXIcYIA2jhGQJGUV/o+6SR2Mp4Gq1N6ElbXN7C6IJ7RLpUQn3vvi6/JJpqdG0dk4J9ao5ZlsJ3a/HC7Zj9ldKeFeFm+oJU5LxCkWbj7uIk0+JydnjXzC3QtB4jvQBhNQdchlxFRsET+NoAUEKBAhsUDOiWVszuD4jbJt5ak5ou+Jin3yCAGJwH6o3MkLJV94EGtYptziueZZP+/LGsKRw7L1ZMVhckPsYX/2pe80xeD+U+/BpAQhDXHuJEQ2kkwk8+e/9QdSSY2SWrhayw56FBQ27021JZcME6ej20WdZWqAvtq8mUjBV55OfGDnzLONq3QdW4hUqytVbW0tF/nNRBYcp9hQR0GYaKmMJp7PquTX7uCicn+QZkvi3bN5ObfgQ/YqFu4l88hypKl8slXagkzSxe2fxiaZQGo7K2bY903yHhzBapJwOxDI5UC7HnIPwLFaFiTxSi1exBQ3nSXBj3RWnNacOWGmJSI1M9KHEugXJcVtWCt07uOmRjbWqtti3lceN6sr8VwUEUa66L9vx//5NQ6hmu211Yo51bnGMM4dJK+2kqYceDvB9RcDvw28edg9l6Y1ujsu1j6CR5XvOV1Ccs9gVcdVXymnjXtCH228Y3VlTRFE+GtqsOdX14lIhUV1QhBwr2bvDgp2vbPi4mAr+nE4htspdgaidN+MWMnyHV02Bj+Qhe41I9zpx68nSeZZRP9Uc49z68jCynlGSUo1DcZhtYm+kt+dPoJdd+mZcWkc2WEDdAsLkynvuemQN9Xh/k/ht7VTsvXQmCAg4HQ5CJC1segq3yTf6wXSiiIWJ12EwR7nepqskNOQS6i3DBUuRFk+KSepIPYKFrTeR1jBtr8yq67dWGW+WxnfYbYi8OGG2RLys7NnBpd9TtPQAPJ0b+kpe5jUJnyZWJfcUpShVsVvRxM2cgndKldIlHrlX7Ashv1eGyYkNPNJkdGzQ+S2tKurmuoPJACkiK09+zQxdXOhfj7mh06fPaPg6QA6aJ9LvjLuowcOa/XYKgfZoF2emMySYZ8dANj0Xo8vF8SkRIS7nFWVJsz1jXjHbT01ET1YZ8aBBn6+iZ3tPp3y3lxuZRkygXVBXYHZtwrK1cjOMwhBYh997ZhTBioqgPEK1dXBmEm+mIY/yCfDZmp4h01YEzPw9+kELa9hxY5eK/wDzfepKOQr1YSA49fWp6s5xMbwrf3GoBkKtYC0qh2JDU8w8df0mDiItjND31rChZYW1ekovAeO5FXmsJU63BlsuCN0AlmaJO3au9GuuBJeYP1hcMBhC30LZKqp+VYhqnROZcXSjIG7ViSiwUhOdshJZ41V4TKsxFoP3qWBe3TkZTXup3AhDie21G/Rh6jXw8qnwIF8sTRpSUln/uI1cjEuCSCtbi7GrMrMEJPIk2UNJSZ80ihm3QJma/S2fLg9zXHdpXbegx5MiSeAxV3yLO8CkrDy8iKmObwkJPBCmwV0LPxsN433y6scSxsxyrh7A/tUZTHdmPmZXvLOUH1FyC586YBuhZ5klHd+DAttSnhTaLglJA/X5nqtDLHycYAQMjFjf0Z9MmqwOJIZj1gCugRoQnxrwDsD9BEsxzLbkHrvB/3aPvCv73nzbAnTxc4Az1NmrzxsgFBKDkwg/jrz6T+OJ7qTUZyhMZwzavMqjiw7UdSK6J4LBVpmYSEstUYcCgwVilyNHcMMFFLLLYAyGPMrzWdW2gTojgSbqmhfLmW7iWROJFgtFtoXhPQbAFj4vpBQxPgua0oAfYfR3NHW+3QBkhW496OGBmbeEljS7a5bjGoZYbcvVtC0thYZ2fRb9JAuCJHO1RiVIeqBW+3jkG52i13pM9eIh+1MzpzOtHRPxU6szJwRgWGeiISytdyJSp2xF6LOv0GyGTvnyMa56YWEZNO57ULPYG8yyptP0DhBUvBZ2TGHP4UUzIdO/zORbnYFLS2bztUkn2rLXFVGPAljhcfkFYkp9r13/uILTJgTuvKqJaWk+WWODO00L40ZFJY2xn0ruHbM+7OCU9OBTU5obycMPdcDfkvPr+aHxI3CTQ4d/++nZ2JzFSuWnVm2exisx0Ex8HPS5ojlonlzH5qEe29Ralszwk/2f9kZjqN6V1dxxAMDi1lfm85AsJJxQ4hddwAJsM/qzct2C9b5LJDKyfw/Nzbd3Y2smc3ZGhcuLlSXyONkZzxANkfRpQGBBXDcCKQ1CMrTqYkVVV1yNRDHakUbUOQzFzHJU5t50VHg9/Udd8w8Q4b/mQ1moJz8SM3oZIr2NNKQKyPd8TCg8eZX/FBRYysXtJAMUaMUzdrnqxplDieKMxTnysXgvDCzh0mVuHpLMGEXUySpWrs6ssURNE5chnok8qNBFC6xAPih4K1uzImkeXoSrY4cXw+X/nxQIohjQJmV1S6QLbOMYhuC34llsdei2OD3Rj+Qi/StS+QN3VAurt/wRxKvK0mCJD4/VULILWiDGfKuM3hUC6EppyFPsR0UfEGuF/2QrbXirRbiDT1Ti/GA+oFYdmvy+YmLHi8BQYADuNlJR8/hbD5F9bBfraz8x4Kt+3zwFYAFHB3d0jJiquBaVujS6H71GDlinaf5G3x70ZRevgUslzZg83j6zwGz/52qMP8yj7TrQ+D0LFZV81blYXqJL36xgV+1oq79DvyK4yVd8DxLIDRwy91YhBLY+/vLEnim35/5StAkDqPd+jWgqMYgWoZX+gFOrg8iEQ5QlOwndzyxcN5n1lXifre3M39VfceBSo4HbwcNehpMFQIMKAGRfPcVBmVF052lP0g9UTUhIAkKXoxYzYDjLPPT9qOO1GonOOd30ZTJVAf7nzHzK7AYPnrI3ufCoi7SM9FHUOLSE8mO5M1h5PL6E+DiC0GJemM7l7KEciMIkte+vzyjoXHGQ9vvhS6bBAVx1NskeAYPOBuGOUdxY5/O5qGj3yeYymu3VYUuBrvCC9dbtcB9bf83rGrkox0pPUU6+oxlBct2c4NXXlwCuXfqeV/nEE9YcbkLXwfOm72+xFLLXTnRh282zjBf3yYtDLecD5UZP/DyrmNRugqD4HBksBblO094PoqS2H45ap3t6xy4uXVqc7Oiy5DsCOwS0bnFjrqkLRVhe9ot7jMpXz6PhbhaVH1Otyul74AeeoQunHZlZDmylZ7Syaq6VcvKbaSsaGX/Q1fSeEpmXuE7LHSa0c2ArXYJl0YMhjMQmQ1bFOwSXtuciLkVUC6FfqUJtxDLkFznMH5StTzcmwaz+PJSM4zq89Cvc3fv2eSHgjo5REBGyPNwcOvuHEY0gxzYk9o3exqtW4VqWjPsEx3NLCZ/92cm65ueLQtxff732WaEhYqWlb+HH2f77m3CkqfptHjsH3Ow/Y1hVYrECe/goDxcr5M4wVrg5gGpyMA8ISn6/gruvTf54GddeVyPXKSNSL/A9LDpxb8NEhow63xTp5lVWaN48VP4pG6CMc2IfeN6j1L8jGxcNdcNPEXApQinOpZWWLsFfkxvX5jk7NRJyIyalRJWVPd8uiKzuibe1gLnc34gLax9qSA7AKDR1ccxtCi0eP9HE7ApvCCEtglgQ8sWrZWXRc2drUlwkQoEcQjKe6OKfD2gTdlQC4mrmaDh9x1faLMmcgFrCW7ibPNwy8G/NVFNX03DWsfcovWgckMwPNOfr9oesOV2FafDIWPZmsvi2p+w7ykuJ+gfnn5qNIECgabRj+MEinZEqXQy75T1OlXYRsOocpXd4IwjCOe6hAZrm+NO+De7094T0ys8vkiSXgi9WZ2hIhcaoBZrlbVHT68UK/rcBTzipB+ub/LS9Bo7IEJteDls3IDqoh+Dyx+LH7qptMiE20WSJ/9vn3LsFANwU/MUB1D7+pCnaBlg6r/EpYIOqqS9u3u9VDPyCGqfe74m5i70HrIIPwfJefbxkEweivsnDvCCPHyOVXlOaV0RuKD6u4U+dwdkDYzV2o73DNGqvVNlLxw2bYE8ps48QOrVU7mDNvYdCf4zPxXcH3X4OazHCDJyefbSCLXD9XSQPPRk9S8HdQsKiAvm18KeqSKfxRui8V061s7kBFQdngevWZSKNVeLCNDxc/6QUADVyx8Imr1yDCwkYxr+33jggH89U45Czw+6cKzQpVfeWkyiSKOCISo0yIwTTlUJGnRi/jR2+aa6Wv1+chjZF4XLmofPTBa9wO5qECL6sR85DWE/HjMOM0WCKX2u0bKMoslb/miMDYrABvYE0k729n8ADaBpyMCp6FEQ1k2BYi3U7U304Lw+UY7vui/gdoy8yKN0zCgKt4IGur1sI2gR4ZMFmAprTx8kxlSZX0RT6IH/eQRh0K6zFN1D/Ue+QTahnp63D+NL4rFFpwDSZeR/hCQUSdR+7fd3ePZnmsDcOHvjCCGASZFQhjMc5y9q+YOX80R0hlNeCuyVYkAplAYrHdTgRWTX7tHc2A1gB9mrZeUuZHSLjJv/ix84j4XncK8eHnpEfH+BTGitTT4PS8eOCkdYmYFrIk/LoeDrCW7oeIU+PAeR3jlbu5RyMcWHYaOFSJVr5AEcIQ93xwITkGH9Xgrpf24d1bSXakgORTzoZxsEDF/tpyrBoNFAAcGTRdOuDa3+Y+bH5OvHuHS2MJ94A98t7Ag4m0gfKjZG94QGjBUqqWzvDRS0W+KLsYTwDuCizL1iz7LbY1PiVRp/zIMsiPLOCyYrFYgFDt21ZoYE6Mzracn5Bc06pUiQeNfRD94KYuMrQQn1CWsF8QVjfNGNylWaPJaHFnJpwU33PKs+Z8wBVS8hHbXv9ou0aubvR4xBv+G4MtXd8BB6+t5N0fxa4KZzu+ShELs16gowV/p9eL8IrtnruF19z5oFYMGMOIMvMpwf2Zo4LIG45Yc1u8Gskh/oIbz2yz7wvBesug8LGoIWbZxTkFszjdbMG7V4/99pzVwsz4FzRfRr+ds29rfe2/XEYznUjHVCEdtxEJkmzM5arUI6qNp1C2XsWY9jFRKUrDw74vZPhWcRuMeDR9Y8n0Y5zj2XIrOGAjGU36t8MeDFHKS2df2cAcal2zeOrxH5rWayKEYpzhN2T8KndQlWmMwwXD28MFHhU4pvb06cDXKnEgLX2C6uy9WfZUizKwpA1z1m1DX165KXSLWtOCJQne60iKoPOZMNBucgHR6o24SarUGOTTo31d0eI/ANCYCQCilfglwRVsyY9FVaHPhu6uhkbMUT/FFqZFzunEEOsLvhkybqg3r1T+q3NxhvClpa+K87JbYZceLFLqCqwDIakIqf3dydL1m8qfQPb3lqpb7J4LxNv+Z371o76RA+i2pfnUMJTaAmql5u3jw2zZj+kkvvW+wHbZKS9RGFM2O4umzUPZRv7sOEboPs4jYndbsLlqf+n/UlqfxYdTIGb9xeic2k8wxxeMxYAtIH2ucEDkGygx+fRzGLY3owugtnFEyXS6vuKhe/rAxh/+QpfMiAIuuqzTopqUeL4b9aXQbNEdU3UQX+h98WjgjslcXVVD6vE3h1lS5jorfBFlSEimFwLMj5lxV/VBzx0RhgAHhXV6L+deq06qvFZOg6gHIpO30dAW/GnuSu7czICj7p9lgeIcRX8KecCFIRGsjst9j+nmUQOPlJRvJ4nSjJIpK8Iu/VVJyRqV+UbzU/w6HcwksMM9oQAC1bL1V20P4pwimszqFuzpKvAiXUNY9TjMewxQHrUZlXMNSpzzSK1NrvYQQ1p+2BbYsLyG2O0WKow3xqXmETvGRUr2CTHqO6ROVdnUP2SZSxWEM0V6k+BWq6TnJFn4aMu01eGOAAcNerCovxgkj2nihaqwSoNZ9q78rR8KbDXCMTQGSaRt3y2EKow+LdRnlAz6Z7bZI7ptkHGbpdO8v9Z0hjsh6lrdFteTMTmXqo07iIxpWR0XcwHHelmAAw9ctASt1vsafvLsZQZ7EKGQTiHNSsXt2e0a2YKaUpnyb1AIAXY0HDj8hN3BNMVQZnki6UT8hbe+cqFx//OlRg1nhDpeaWSjfaByyLcQJFtnFcHc9NSB/CdvCofHRTsWUGPWAvY8hXNgTFf7DX/SAQM+qRe0EkaHfTu2xvjlq1RsFRbfd9qhTxK7NmPna5SQsCz8B1F95HK1ue6HWFPp+bN7hDNOGval58vfYue5FUmbeU9zAasb+wGNFdm3yT5lofiCEzEknPRxjVlgsMHry5gDJJkV7li9XsAPvctG8UGglop237KCTlsKMueCqkM+EMT1hk1PgvXqyZHgZpu79DkFQy4hGbWETaencxDo4Cbe5h2UPBD8tzkt+i4256XQxYT/eSGleXNdCiBBWT2/Z5is4M75TVNOK+fsfuKQNmnB/7x3jbFOeQubk7ORw3TGQ/PoD/u9uDGYjFUliGG7IL/EcRKWMOuqotDnj+O6mAoTJMiIjk7Q6JJ/uSZ1TA8DbuQNdszsdsA3Nvfoz95sSiVUILT0GsDe3CjR5l9dwDXzn3CvmAOZ3bvbzdRZdFspheAJEHT8Ioy81YdDjxj6wYQj5mgXizCEd3IGvaJ6GjvT1U9rqRedesjNZqC7Y2kzaimReg24eHP8052s29cKkfCy7H15gwIzZ8oi4txphsbYMbB7WTBt1jm7UTnP349C489Feuu+DcBDMX4yAB+i1qnfJ/32VeAZwnbolNtvlDcvpGmvpxPTmP89Bt7rLyDLxtmpxdbnfz6JEWk1qltVbiOvi2Jf5Mxh+T+Yxne+OMl0y+6ofk97vkS/tsYjwqn7JwXKEFpoF0vvZJVkayyx/UfaSbrEL0Cs4qUCdbKsjGhHPaDtYbI6Uw4U/O3f13RSkOR1v3Zr5CqKxF9pubZzxgJf5lOt9AUNXTPHfJqXc7Yzh8kg54GJOlEH7bjahVCtR4IVpvJswVNMYsYZsbneTw5mzKkYh2bvIUdhU7LPV1xsfJzePqcSBZMrzGf9jDPrdt5SCBwAZ1lwBcpLQCb7NIBZ5VdnEFQXieBqZMsne74P/YK34hDMaIUm4pPysS7aTNsJIWnanOlzsjY1XsJsWUQFllcis/FynFuVDM/aiQYwBf9iJQZFD//SqvhT0QiFW3XSUPmPC3ZBq7Cc8cB4ahedRN/HsKW4k9E2X+ICp6jQuYNI9flfeL6usNWfdxhv9Nw+UvgX9TKgPvpQpB5EoZW0AX9mLQF7GKpkQpdH32A4yh6njUNeEZF+biqLrjdAw+blQAqXvAQ1fOHz2TWyOB1gp3r/3Z8qdrbDsXH2tozQx2HgS3OH2fEsy/vqg75ac+WvB6hfob0zx2Gv1NcsvCRfspo13kpNzQp28IQwosOtewnTPgDKPoi1DTYwU+xD4Qc7e2Bp2mb/tuahiJmjPpMlnaOw1Nh+JMeTmqqioLQkXHw929C6KCcnI2/wKpnaMJArqrirTcCcvwizz+0cq8JIVYbr91EmqViF6MsQQNvl3ixjWEmO5AloCVvArGBIiHSK33LhbYv3CbZZ0TA+BA+lT0ramm+Pyb/UEvu0KlG5iLVZ1rotOjvYRtmVtcOpO3nJX+1+adAeQ3H8H0qvrk1jM0z36dvdOuUBg5T7lCq3uyw9NxulrFd88RVATlSIz7U/EP0hKP14QSBtLWspr7ZNZztZnlL/V+rWzT44eiBiYTAnCznRTgE7JAqU4d9oLm2XSY3CDwwiuFpCpl/oXWVG67ZanTpV0IlTGlGjPCISvWPw6CpcGPBGZyGZRpjHRArky2bIMXlUMP0evoWTPsxDm9WIGi1BAxxO8JUKbAfXstqrKvZGBz64sLrYj8Ro+74mf0GnpExE2Bj56IT+NekcxKqteYBK+UJdbQ4rqk+QZK4mwKDzABXHDicWdRXsc8iUiWQHpbXjg7zjg+CgUZYVhtKb16SfYkOvT/Fg6sX8n7N8B1Dv+Ps3FLPziDftCs4vfymLoZR8DfE8iDGzvCcyAaqq7nSxgpMRy2YJc+lDC6JFh7TLTohb7UEnWzQ1l7GrhseyTNIv02AWgNt5uswjahfeLehFd6UOzkg1QGBcnkYe0laGZHGJzvszEtMPh7VU4onbhE1H/TCYPoI2sC0w6tk7CYu8GHJsGPiPYXEyTz+9A7ek2WlVpPB2bC72AeX7aUNceh/eu0RxjnviOaoUjhvBpvBFDMi/EnjlRYQFnORWDBuzC445a9sc/Mh9QYmp3c3QPcCliB0f2zCfGN4ZO2/qcWUFdfTPpCd3soOPE6YLU47o1w1Darp/f8YLcNsoczIgWBpQqBwJlcmcv+ilFml4XQij/7QTaA2i2khw0iw3k1RNotczqVl2tODp1R5SG8bB0OSjcqR2tRwhFye/RcKYp05+YsOcXrMp58VeF9UeG+azca3obLuAeM93QHMUCrOVeqSF0nJfM6au6RFy3y0E0/NlGTpE446IH2z5Fh8dLIsSWMAGnPg9EPQrFmbtCENAQUll8Qc5OXiT/EPcEUzsDxiATv4E30Vjn1HtFc07Yon5Fv1cecWyjllDa+mE1cUHKibAfhA6eSfhfW1/gi6XBiqlpcxZZzUi7bP+6Sv3mzvKdPtMspr/0KHOmFWJMK1gMAcWuledoQpY4WQmUC2SbmPAgGPTHkJQ3LmWvOejMeww1o8CCaJ+D2dnqQPtnwZQfctor0LzLmUwv83OhjYxZ2/i2zQr3XKF9EOx/sgq579dtQYAdfmCH14+xZQEn3UQR8fcHUqTvEi8CFLNHl9M81bMDyTN5Vx6nkKfrm6mo4U75AXN1vabzWWOjaxer2isX/4e/vkhSrtuPfy3iUjpmE5S9Nud8AKX63hvVLaCPfUAxWHmdIaZIhUboPFwjFHTFuZvTlZgk4lqqzfiNvsDmNjTAiVd0J8WvEB0VhmBq5qvaB1NbjlcTeKNIuAuw7HpWVo26yUFaNexi9PFv1C17p2jEkebMJe1ZBN/GiBRG3+gjS2UoZmQxOli5gpqlq1Zz9VHJuu+spDld4/mlnPDxh3SUYoUSI5eodz9Nunnb+iFKzSNSzGoQcO5fGY4pWPgi78SnOSsQ6LPox3tdrrvQm9Z0UzzjOKiEGlIPBxjz1L5/W4hV//GDjWMA1oqfTWAvdswkXMs/EKx8r98CebABmutZyrNKFtKZW130w7EWNPcgDU465awiD0XakyvBPjn3ofkK2FG47JIQjkPujQXADNdiUxBVrvnVjy8jzPryC7uvAcatO1b+4Rc8sIw8jnnzmQ+4lmxnm2c4wlF4+TI6pgy1QbOcPL1xpY/13mUxiWLxnX9oPfqeHrmV4vOWZejsqeEvB2hKqx2fcc1Qh2/5oALqsToUkzAtAXrwSRyWHQ2ihGnn77ABsPjtNMZMga2cFaqFgaz7AkDf2oR9/sgCcWXBi0qqepbOk6k1O3/uQHXBXIsy6QGywfN8C0RJKDtQeGotrWkGJdOAlURsp/fVCtG377tknVCLSHMn1IszsEIsswgEk9Q+ovVqdOtjPt36MG5oMW9lESgziJEV9v0iVhu5f3+UtRcvH/NCENmEAT0ao8/rTwLJJLIIFtWkjZzeIa10bTw6A8yNo/+vRcZj9crC6OutRZd2N2cGCUrZNV2JFJTZ5KsKrK+Ry8e7vz5b/1EMLbuOpdS2lMqa+4BA311osbJJGAnshSLeCLzwnvRrNd9I2+xt3mTbLARvGHgJ2yqj1hws/hVY43qqbaAgT7tdUaS7vp44z6ZuHsySeUtl89rq2bAf9K6YKHpapR3OurDz6j5XXHZWN8PonZsM5od48CknriXi2499s2kznYa9UPbrYa/CZcVqcRADI7Zm4UE0BqZ17lBwP6Z89dE5ClxPmPskMVv/Uu75SK61kRVwXOpQL9t6D5vNkQfh7GElmsLF4Zykrj94ZOniGWNJf4LfB6iTZlzyqLl23yTR9esVBo+yw+S/ITVjIRfKaLkVDDNcRDV1AAVjEh5g+9IuQlqRSpBhshcjYnjPRb0pN55rfQMrGLWQEsdiKpazdNi1NYlrfBwBeLQ4k1VIFa8we4p9kqcnhHNuB2thb4GfWeoD2/Gu2YJbNqAwrI3lYOFFtpfFe7kPG6wF4o2vQdfgRrulRf4vcUBar/cz4LzsJ/pG7KFukZ1gJTo+kQupNEL7lV5+fAi9y9fmhHPmn2+llXCL8NxjyJHxKIBmOJNmLMvn3809qDm3aa6pHKSpsjLNynS93ua2Jrd1qbolE2/QWC1nLXCIsHW1AhXee52uPirhrFw1cqo9U38tG3BBipj4Wkq6v6TA6DqMhhOXsOSm1Kh/eOhGya4GPMYYB6EwYn3+LRtnCU8m++4F5GyzNEqPqbSzDoNGnmUz5S6JjZ1bgleUR45qVNfm4BX4a6HtZTkx954bsPMGKJbMStHlMvf7svtY3ly93wp2WKmy7vMoGzj4y41/z3K8XH3Xoi4Qmh0hMmPBXSTSdp+kvBzLmhl1INJB51ub/lvZVAgcaesjJQl+uQ9RUBKb8Z71TwbIbQRMxvlyCfz1dsCu3MIrLXAJb4iZnfEdl/nl/BCiWKNjrDxG7hmENFZcM1+r3YdqxsEBsHZC/zb4tlj6xwnFpzvBSqn91RY0k4KoFrrcDSmFqrjTH+gBfKZDbmPqjYoaFhJVefKoRfaVi/Fz3TFbIuGeRklbQPrOPL8nPdduoO9r0GU4+Uo/YeXaIiolhngWlBqxPN9c0gscOpg5MYbOMc6ca+IOt54SEgjZlgPIgQ0ed8edjtbM+XqX9VV73gsmFpmVP25KESGex6iG//PYVojB+23B1LuBsqfqricpodEKhDji61n0nX0zKAUGXdmqsGmeAJS8tHcV/jzWAoygT42h5tzs/yT4NaPjLs9xjHG4hLUm8Ym34Dim2Beugxk5XR0aVo8VI9mbBhfNWKqo4WZLpkrPCaZ4PBfAqR/emB2lkOhaqtDlgAMasDbUooDrwl4cpgPiLJWGzWr1zIf25BzARbsb5Fb1RaVz8XiPt5BHpgwxhClTk4nKtwgwecJHkIq4TBAVIx8V8keGt72164eL2tryVgzXXr4wrQoCdey4EwWYuVsrCHkSCYg7zixkW/MiL/6Q84B+XzamkTH1vDJ/OooDk01/z+VjowgkKGm0gReh1HmTxzyZz1q7KUQH+sRX8RD4nOiyB3u6UEandOA9PW+p79CQM7ZznnMWkqQLF7KMv2skJ9/oNSiao705xNQ6bYs2p+H7f45M4dSdEzz74R4N7fM5sn5OC8sKdZ4TLSV+d15KJ7BtvIAu+GexosQ49gAm5kyOVVQRERpLGPTLmwY7GkUNNJcmn5iqpZw9i0jQFIvKHzMFAx64CBZ7CR3wP7xrFwpPSq2k2+IQDuR5xJAH9AUjSO2q4HnKr8+al/EkW1LCWi1UBS5MIghtW4mhpjGHV4spcSSCXoUrl9bAqDGXYz491nJ/3fmvfo8+6LPAPkaxoRczNe8PVVGBCmLR15dQqa/Hg2khbzK4FHo42kvIKvpfSBqqpwXtF8ZGH/RP0+yGnLIcOqfZI8XH74OXM46OQf8SZ2bZtruubGZAosmO5qeXs0J269FfS7X+nEznbHkUk4mqzSycGW3h0EB/M3qKvzjJJ/dDESfwR+gdpqStN6J+SJpau1PfPO7zLXlOZ+FJrgcCm7ItsmRIgS4zB9q/jSzCBe2Cn0GgvxFzcPFoJ11fI9M3leBVml2jNPNz3XfwwvsgcvIn5V5kiau0vukgUZhsDqav5XsF9t1QEDovSlI2xuPCTj6VRlVBehY445FRolfozPKYpDJqEqgzRoMIWo5SG8moS7Wd0RGihPqMd5qso6TWM+NfjjwQ/qkYVoiN0elnOlwmiY8SIeya8EaDou0zCuR1BvQfX7ueRx+32aR44o6oDR1oWSJ3Pqva5RJpMIWZpLCVDNBLRBTP7LFTGb6sJWDeTpDO8HXutQUmDDxqdES8uD8iJElKPC+/k9OG374JwFC1vel9DaB3oL9SR4dlRqAKKI60WuwSYJWvKUSKTjbrt+MOVugA9Ba2lNhK1tpNAVSIPN6aMN5YnMT5x5XaTYGVkM3QibSE3Lewo3Cayg+NBuRN+Tb9wmAvj5jlkSu7yKNcDfIMY+PVDaz+WVCQXVqUpq10d28OeE7wPKRl06gdHri+/zDlE4Lke3EVpqzIxFaj4O1373t9Jh8T687mKoUiO67SQRgrL56QLNrdiP23/nEGaG8cargtnkAo/rl1z3tQuu0XYAF57CpMtEqWoNfoUrSsW/sAY/xU5lr3GtGEvm0qt2zpFAUCOk7korIaKwkzWE1S0ZBEEmV5HSEmR5RaENHHz85DlofJvxWj2OB6wR/1PL9CfhaZf9y5KQBBuK1Eqwy6/Q6KvqI9fe5ic47gc1w5+nzm2tOSlZ/3yqPexXusfJvXRifYO8BFQKcoTnpiVxXzeWzgua1iPBX67FZOVppYIro1EZfafC/PNanduhW/0nSUTP5NXv9yrYGDBzIXAcvRk9xacz039SFDyKbBCbSLVqQjmZDP/u49XRUyrlP6Ro7vZNValHdgwkwZXVb/8h3psIdLWSP89ObSjAZ7Vblr2eZa5K6sMLf2gMj4WZWWAETkmx4L1gVt/iE7Mn1Wnjn0W/U7FtNlwOedRFUVt5zeRFF+LOCxFsIVngkDV8HIadyamYVCJ4UKq7PNVey9K3LpjYQzdOwL05Fxr7SxwtscRyHOrIkHzmpr++EsdP70BIAgafLaEjhhPMdzPPM8BS15thInWHXv1zh4uRneynEQkDokSF74lhik7DAlXit7Bq6+7y/Cf/i+8TMCPkxROt+UlvcuEXEimJPgrUgHvpo+z4ZHXAseqFZiEvJCRHL6p+MnlNY7SxuQcWjNCfQaL6UP2R8bCnpcaKcfEnWEXJh55CbeTiotj17l0veXxuNKa3GjhTT2Cp2fzZraXEY6hGEYpvSH5tSQbAK3ZAm+O0SojNhWPuQMxIWc4XExvttYRVsuy758P/25QDPjKQb7E6wUYyQkyLoCAqCpVxFg8XpmkeuwcboPevr44cQvWo6jaIeSIu1EMlBa01E9SYsWvpCTUGWoc4HcetdQu90Zo3UsngxjZhAbpwMY+M0ESjI5DLZumz2PUCvCdLy+gZe5MoAJHWGteYgdc4WxDowbz0kc5FqtaFTDIZ/NG04LVFSYIkY+vHNEjuy5kW+I2UeCtxQg2oMzVh0rF4uZCF8LOS6jC8W4uPns/u92qcb7lM4pmDUiJKoLcQrpbSkQ2teQf+6JB/7Mx00qGyZU0Nrj/RN5JJgOg1bP6rQB0mDlbQkjfFY0ZLMaymUshA/xK911YvWBxtNMJ8K1aRbrCfmf9ugUdfv1e4CiV+bCtZ/WwiYOy1514p1vFRLRTGq+3BsjRbUNAgfxZRMmidXkz1Aw+EYGIrhoLNw2JBlzPQiP/vkMcO7a3HGRbrRuVbnXhoMSTifYZKninvgjFQirrGKGlj1rfiXmi7yEA4HddQxjUPqtcy+Jx7oSFo8GG7TaLJM1GyhoXTfXcufWlHFBcNUjPurQNfVl6eSPKDhnjbNxZ/STuvGua9ruN14U2EwJYgxoRyI0JL6cgDWoUOhjpL5pPBd4VHEGVzMe/lSDhSNHcPWQHLxuzJsrS6AvW2rnv+d8zdyCEXOMUX2r9tViCyK+ZLSp+5jei0E4E+pjB7wo+T664NFkuRCAd3s8U5tbTM2YjseLXp/LxELaVaGwk7sTVxvTlOOcWWoVmMvnHDoDHHOvj3bkBFMHuMOJCEsxnr4V8vwyYw6rh0xOb9xVCuEDKLEogiTTMmFItCRU7JgZh6KK2ZdB6SZMkKqRONzpaRYqZSJYR3wRhTCfx9zcfPAwbM9fW+311RokWjWRlmNrlCqGWa6LbBHpAhZB2M2Ghx1eNDY/k+7apl6hOrWSpMHe4S7KANn110mvVjI+kSNLw2bGYKmdG+M25w2sG7hSeJaICNGH5wIMYmjrtd7FGerSXtD5iGXkfexJWeTarB6YoK24V+paVmhu92f0PtpDYkZbdC1pNWX3xRZxgGpwyr+M/+RGb0ZRCTRSkpLGEdProm/D8b9fq459x8uf66aIkB4bjBunUTBlngjNEWmlNLrcGKrUKVdbEpiGhH7xIsh97nwJFqOCFtx3QL4W4tTAJLp0mjQCPFZyyHLUWoN6qHpewy/G9LRm9nrHnLoLevveQV0xnf73P5fjpKIBARYP4+2XtWbeI0zizvtU4kvfF7LuY+BYcXwiRx86SyR+im0RvoMmaeG0tY1mW636fUF9k4wEVw1iYi1jDSRC/aFH1lSyE9QUDmZkaDhUEprNEZNRhKh71J4ISUZgZwOqKm2lKLI0HjD1qnoYlS7rkvNlmLkkeIe1NeNHQzMlFM82a0yGfyaTxSJ2xA6N+ZgisKqs0npziFcEylT3GycykQJ7BaofsXzKkmph8er+Bo50G3yoUX0P5Qz7NHOZNUKm6iW2wC5EKcFp54VMUdZhrLHZcQvGWYlWNVzXjLXl5dKdzlAnOTZmnYBjNqABIQp31Bq/fsl+yCeG+lPEM+EMuZh4rDUk3uzK8WmjZ12wrcG0wWPCXHBkaim43GlgAJfrky6TfAYwlgadSaQNGNZpMKnrPpKzpry/ilEkMIi+dzQJ3uHjSVV9cW9wOWg5u6QLGiIoJQPj40t+NlhdK+/DuVRmfGUfQm9Gir+VfKZBqBagH/9G9uYv2Xnj7KZfTUwceqSPOCG633PRlQYY+7FWxxDvyZ1vT5L+1xVFXHFN2LZAYTmyv0iWMR9t45DONkIxRTJa5PIe6KF3WGgMbKT6z2PhL3uhtaAfGzOYc9uvyjR9Dh7p7nCUZ4KgHW0PBT/58r6vd9P3MT+TmqXvFaa6KW94UrOQqC9fZtU/Ecv6dqOeO9wBHHzEgexf7v0wUCzASbBSaiSJlwKjd/Vvn4arH6yAXIof229Thc15DwXQRvyZR3H+ZP80KANvUlmdvfY0JejjN8dk+rDjqZdAeg83F0jZolcAVX7d1S0FgwiRbQPcnFLLRw43djzN46jULLubncsqAhrMBZhETyN2bff5PqwCNzhccephk/PVsIWrobtg01dAVWp5Sh+ANqtGyDzDSzfgwpsqYHmNnD6Jl7Yw2NTXTGo/q1l9/bB/699mXQMzIOEXW+1zUkrlYRtCq8BYXz3GWxdXH1ANvDKN6TjjwNKBJ6bjyQp1rq8d2BfAJOTJuuGLLOQgJtI8DslatXtjfVmiFRvLJj2X/ckh2fr9eaWNNzt2I5pVzCAs4pEj+8BzGyHFulBWEMvS5BuLpWkptidGDGMq+KW63NRxhOA3OoFEj0i5Bf8AFSJuYWyGCn6l1npT4uDU8HBzCbmtp7/JdcS08zDZ1A9gk9lByDAWjPzgdhAr//mlcMMrx0BXEn8Ta6vpqMbWeutXYdkPnzDNiyC97Bw3EwioX4+Tbmkn1XrwYQDWJurl1l4n6pWAT4z2mFkZfu74O6vBLVRAa6M3+e/hlzv/8r0FKzovlzprsPbjpAxWv0qT2jrHa4C7mu7MBxpHt2JTk4I+OZrfrlAyHz0ZuzS7JLjDi7Ycvc92rt14vuSJ28bYho1NxxcF/TaHhv98vKmsHg07NxEoGXCTpQzbkPrGdhx5xVxZtB3aksPfctGzY6M/cDrE5H0MKDTCX4GtEy5DWbSQokS5nsypopSuGe1Gz2RVeybh2nZgvyk8eX1locxqhe07pHedIfsvzOhaUg92A2Vq9Ac+reaVZD90PzwRq5mAeZ458+vHRkuM+EdI4/kws+dsd8peWch8kPUyYZWJxm1TzLeUx3BsnGWmm/iFbICdxNVKPIpIyAwbqsQKwjbJCM4UUPwx8LodatusMrHmpL/BszuzOnJrGQ59W3fyLwLpDVxKcwcBDm8IFBJjdFmSK36un7kxYZN773xCK12y+68GzUkTtro6YfKSDnTUqQolrTeQgy6zMOlJqMJCiMfvehrMS+XyewnSud3zqu0bMMplOoOEgetOeXhE0ocDD0NDp5HnFk6HQj9woE7w6wIxFdet/0GvXZ+q10JFshad/MuH82EWr1NCLdM85fw6mZoRWEq77gAdeVHxWTWm/r8+5W2YTQD8q3oulIzuZfbuOJJvHR/oWgAxiyhQGQtoDbomlkuQtIJLYJ61yZKbOIatBJmq4kya5/AeX+OynGnZWeWjJhTibFNDzr7//AC3EXwNwq8902KLDcLtt1GEgPvE7pcNPwUvI2omE7N4k7CM5brBaC7+d6FkAzEVIdgI82ogffZ4oQK9Isc7XiRoApvhgZyYPtXr72qzfsOj0IS/6icbZgRNUHGkbtuzrqCXqgR4nPLL9bt6LHXecBbu9nm766qpbhv/g9dM3CPtM1YVkPcEUMlaTwTGDYf8nnkqJQccIBuddDd047RQgJcsuJLoMihRfcb24JHq4fgYGC2LsS3TpmZ2mccpEfjqKT4+Vewsn6/KwawkuuiJgQ408dWr+0cagCRKfM0zXV2Gg/58ADnzMf/Vi8SmvVn4zv3U/c32JP/buwVwgaqDvIWR+aCyWvUXjfpmAc8bFe/O9ZF4wbkUT6NiOmfn53n1keHLMl4ouiRe6czP/dmQamFfoPPpmkwU/ecgr8w0SSNuiBfVcFiInyNJbRJSrf6WRqOI7t6QHlV76y+H9r1rzFokzpoTEqb3i6eLZ6S3CtBQ6u3mqd/YZp7LVoWShFEJoqSnG2rvqpgR4RvEvAyd/XobQWkW2+mWA5hJTN9VOBmIN6DCiCy51HuyGb7GNPA5GcjFvaKaGbWehEGnsZGRGf2vWTg/908lhRLFo0qCvSGAYMUwO2pFp+jnIhB9H7qY4zcBIDlrkVY836tENx7aSxUH4GEy72UVkj/bCBMXxeKDIpPxki6r6MIeP6Gb4YECdgpkgRuRppriQnGlRnQS6rHPHioXNWHvqqfE79oziVioUx2aIc4/I0FFoJDzWBM+LyhiJ5WGFkOuSVfvqE4IpHXY8RRBPIQ4AkysKdDeSWXVm2qqiU2JIAUwfNfXIKzAmja/Ong0m6JYRPfRsXlBp2RDGzg==\",profile=\"router-server\"},},}",
  ["ceetos/lib/release_verify.lua"] = "local password=require(\"ceetos.lib.password\")local roots=require(\"ceetos.lib.release_keys\")local profile=require(\"ceetos.lib.profile\")local M={}M.CACHE_ROOT=\"/ceetos-updates\"M.CACHE_FILE=\"/ceetos-updates/release.lua\"M.META_FILE=\"/ceetos-updates/cache.lua\"M.PART_FILE=\"/ceetos-updates/release.part\"M.PENDING_FILE=\"/ceetos-updates/pending.lua\"M.MAX_PACKAGE_BYTES=1024*1024 M.MAX_MANIFEST_BYTES=48*1024 M.CHUNK_BYTES=3072 M.KEY_PARTS=256 local alphabet=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\"local decodeMap={}for i=1,#alphabet do decodeMap[alphabet:sub(i,i)]=i-1 end local function read(path)if not fs.exists(path)or fs.isDir(path)then return nil end local handle=fs.open(path,\"r\")if not handle then return nil end local value=handle.readAll();handle.close()return value end local function write(path,value)local parent=fs.getDir(path)if parent~=\"\"and not fs.exists(parent)then fs.makeDir(parent)end local temporary=path..\".tmp\"if fs.exists(temporary)then fs.delete(temporary)end local handle=assert(fs.open(temporary,\"w\"),\"could not create temporary release state\")handle.write(value);handle.close()if fs.exists(path)then fs.delete(path)end fs.move(temporary,path)end local function encode(value)local out,index={},1 while index<=#value do local a,b,c=value:byte(index,index+2)local n=(a or 0)*65536+(b or 0)*256+(c or 0)out[#out+1]=alphabet:sub(math.floor(n/262144)%64+1,math.floor(n/262144)%64+1)out[#out+1]=alphabet:sub(math.floor(n/4096)%64+1,math.floor(n/4096)%64+1)out[#out+1]=b and alphabet:sub(math.floor(n/64)%64+1,math.floor(n/64)%64+1)or\"=\"out[#out+1]=c and alphabet:sub(n%64+1,n%64+1)or\"=\"index=index+3 end return table.concat(out)end local function decode(value)if type(value)~=\"string\"or#value%4~=0 or#value>M.MAX_MANIFEST_BYTES*2 then return nil,\"invalid base64\"end local out={}for index=1,#value,4 do local a,b,c,d=value:sub(index,index),value:sub(index+1,index+1),value:sub(index+2,index+2),value:sub(index+3,index+3)if not decodeMap[a]or not decodeMap[b]or(c~=\"=\"and not decodeMap[c])or(d~=\"=\"and not decodeMap[d])then return nil,\"invalid base64\"end if(c==\"=\"and d~=\"=\")or((c==\"=\"or d==\"=\")and index+3~=#value)then return nil,\"invalid base64 padding\"end local n=decodeMap[a]*262144+decodeMap[b]*4096+(decodeMap[c]or 0)*64+(decodeMap[d]or 0)out[#out+1]=string.char(math.floor(n/65536)%256)if c~=\"=\"then out[#out+1]=string.char(math.floor(n/256)%256)end if d~=\"=\"then out[#out+1]=string.char(n%256)end end return table.concat(out)end local function unhex(value)if type(value)~=\"string\"or#value%2~=0 or value:find(\"[^%x]\")then return nil end return(value:gsub(\"..\",function(pair)return string.char(tonumber(pair,16))end))end local function semver(value)if type(value)~=\"string\"then return nil end local major,minor,patch=value:match(\"^(%d+)%.(%d+)%.(%d+)$\")if not major then return nil end return tonumber(major),tonumber(minor),tonumber(patch)end function M.compareVersions(left,right)local a,b,c=semver(left);local x,y,z=semver(right)if not a or not x then return nil,\"invalid semantic version\"end if a~=x then return a<x and-1 or 1 end if b~=y then return b<y and-1 or 1 end if c~=z then return c<z and-1 or 1 end return 0 end local function canonical(manifest)if manifest._legacyProfile==true then return table.concat({\"ceetos-release-v1\",tostring(manifest.channel),tostring(manifest.version),tostring(manifest.size),tostring(manifest.digest),tostring(manifest.key_id),tostring(manifest.next_key_id),tostring(manifest.next_public),},\"|\")end return table.concat({\"ceetos-release-v2\",tostring(manifest.channel),tostring(manifest.profile),tostring(manifest.version),tostring(manifest.size),tostring(manifest.digest),tostring(manifest.key_id),tostring(manifest.next_key_id),tostring(manifest.next_public),},\"|\")end local function unpackKey(value)local raw,err=decode(value)if not raw or#raw~=M.KEY_PARTS*2*32 then return nil,err or\"invalid public key\"end local parts={}for index=1,M.KEY_PARTS*2 do parts[index]=raw:sub((index-1)*32+1,index*32)end return parts end function M.validPublicKey(value)return unpackKey(value)end local function lookupKey(keyId)local saved=M.trustedKeys()local value=saved[keyId]if value then return unpackKey(value)end value=roots.roots and roots.roots[keyId]if type(value)==\"table\"and type(value.public)==\"string\"then value=value.public end return unpackKey(value)end local function bitAt(digest,index)local byte=digest:byte(math.floor((index-1)/8)+1)return bit32.band(bit32.rshift(byte,7-((index-1)%8)),1)end local function decodeSignature(value)local raw,err=decode(value)if not raw or#raw~=M.KEY_PARTS*32 then return nil,err or\"invalid signature\"end local parts={}for index=1,M.KEY_PARTS do parts[index]=raw:sub((index-1)*32+1,index*32)end return parts end local function verifySignature(manifest,signature)if roots.algorithm~=\"lamport-sha256-v1\"then return false,\"unsupported release signing algorithm\"end local public,publicErr=lookupKey(manifest.key_id)local parts,signatureErr=decodeSignature(signature)if not public or not parts then local prefix=not public and\"invalid release public key: \"or\"invalid release signature: \"return false,prefix..tostring(publicErr or signatureErr or\"unknown release key\")end local digest=unhex(password.sha256(canonical(manifest))or\"\")if not digest then return false,\"could not hash release manifest\"end for index=1,M.KEY_PARTS do local expected=public[(index-1)*2+bitAt(digest,index)+1]local candidate=unhex(password.sha256(parts[index])or\"\")if not candidate or not password.constantTimeEqual(candidate,expected)then return false,\"invalid release signature\"end end return true end local function validateManifest(manifest)if type(manifest)~=\"table\"or manifest.channel~=\"release\"then return nil,\"only signed release packages are accepted\"end if manifest.profile==nil then manifest.profile,manifest._legacyProfile=\"desktop\",true end if type(manifest.profile)~=\"string\"or not profile.IDS[manifest.profile]then return nil,\"invalid release profile\"end if not semver(manifest.version)or type(manifest.size)~=\"number\"or manifest.size<1 or manifest.size>M.MAX_PACKAGE_BYTES then return nil,\"invalid release manifest size or version\"end if type(manifest.digest)~=\"string\"or#manifest.digest~=64 or manifest.digest:find(\"[^%x]\")then return nil,\"invalid release digest\"end if type(manifest.key_id)~=\"string\"or#manifest.key_id<1 or#manifest.key_id>64 then return nil,\"invalid release key id\"end if type(manifest.next_key_id)~=\"string\"or#manifest.next_key_id<1 or#manifest.next_key_id>64 then return nil,\"invalid next release key id\"end local nextKey=unpackKey(manifest.next_public)if not nextKey then return nil,\"invalid successor release key\"end return manifest end function M.parse(source)if type(source)~=\"string\"or#source>M.MAX_PACKAGE_BYTES then return nil,\"release package is too large\"end local encodedManifest,encodedSignature=source:match(\"^%-%- CEETOS_RELEASE_MANIFEST:([^\\r\\n]+)[\\r\\n]+%-%- CEETOS_RELEASE_SIGNATURE:([^\\r\\n]+)\")if not encodedManifest then encodedManifest,encodedSignature=source:match(\"^%-%- CeetOS signed release%. Generated; do not edit%.[\\r\\n]+%-%- CEETOS_RELEASE_MANIFEST:([^\\r\\n]+)[\\r\\n]+%-%- CEETOS_RELEASE_SIGNATURE:([^\\r\\n]+)\")end local first=source:find(\"%-%- CEETOS_RELEASE_PAYLOAD_BEGIN[\\r\\n]+\")if not encodedManifest or not encodedSignature or not first then return nil,\"not a signed CeetOS release package\"end local decoded,decodeErr=decode(encodedManifest)if not decoded then return nil,\"invalid release manifest encoding: \"..tostring(decodeErr)end local loader=load(\"return \"..decoded,\"=release-manifest\",\"t\",{})if not loader then return nil,\"invalid release manifest\"end local ok,manifest=pcall(loader)if not ok then return nil,\"invalid release manifest\"end local valid,manifestErr=validateManifest(manifest)if not valid then return nil,manifestErr end local start=source:find(\"\\n\",first)+1 local finish=start+valid.size-1 local payload=source:sub(start,finish)local suffix=source:sub(finish+1)if suffix~=\"\\n-- CEETOS_RELEASE_PAYLOAD_END\\n\"and suffix~=\"\\n-- CEETOS_RELEASE_PAYLOAD_END\"and suffix~=\"\\r\\n-- CEETOS_RELEASE_PAYLOAD_END\\r\\n\"and suffix~=\"\\r\\n-- CEETOS_RELEASE_PAYLOAD_END\"then return nil,\"release payload boundary mismatch\"end if#payload~=valid.size or not password.constantTimeEqual(password.sha256(payload)or\"\",valid.digest)then return nil,\"release payload digest mismatch\"end local signed,signatureErr=verifySignature(valid,encodedSignature)if not signed then return nil,signatureErr end return{manifest=valid,signature=encodedSignature,payload=payload,source=source}end function M.trustedKeys()local raw=read(M.CACHE_ROOT..\"/trusted-keys.lua\")if not raw then return{}end local loader=load(raw,\"=trusted-release-keys\",\"t\",{})if not loader then return{}end local ok,value=pcall(loader)return ok and type(value)==\"table\"and value or{}end local function saveKeys(value)local encoded=textutils.serialise(value,{compact=true})write(M.CACHE_ROOT..\"/trusted-keys.lua\",\"return \"..encoded)end function M.metadata()local raw=read(M.META_FILE)if not raw then return nil end local loader=load(raw,\"=release-cache\",\"t\",{})if not loader then return nil end local ok,value=pcall(loader)return ok and type(value)==\"table\"and value or nil end function M.cache(source,provider)local package,err=M.parse(source)if not package then return nil,err end if fs.exists(M.CACHE_ROOT)and fs.isDir(M.CACHE_ROOT)then if fs.exists(M.PART_FILE)then fs.delete(M.PART_FILE)end elseif not fs.exists(M.CACHE_ROOT)then fs.makeDir(M.CACHE_ROOT)end write(M.CACHE_FILE,package.source)local metadata={schema=2,channel=package.manifest.channel,profile=package.manifest.profile,version=package.manifest.version,size=package.manifest.size,digest=package.manifest.digest,keyId=package.manifest.key_id,nextKeyId=package.manifest.next_key_id,source=provider and tostring(provider)or\"local\",cachedAt=os.epoch(\"utc\"),}write(M.META_FILE,\"return \"..textutils.serialise(metadata,{compact=true}))local keys=M.trustedKeys();keys[package.manifest.next_key_id]=package.manifest.next_public;saveKeys(keys)return metadata end function M.promotePart(path,provider)if type(path)~=\"string\"or path~=M.PART_FILE then return nil,\"invalid release staging path\"end local source=read(path)local package,err=M.parse(source)if not package then return nil,err end if not fs.exists(M.CACHE_ROOT)then fs.makeDir(M.CACHE_ROOT)end if fs.exists(M.CACHE_FILE)then fs.delete(M.CACHE_FILE)end fs.move(M.PART_FILE,M.CACHE_FILE)local metadata={schema=2,channel=package.manifest.channel,profile=package.manifest.profile,version=package.manifest.version,size=package.manifest.size,digest=package.manifest.digest,keyId=package.manifest.key_id,nextKeyId=package.manifest.next_key_id,source=provider and tostring(provider)or\"local\",cachedAt=os.epoch(\"utc\"),}write(M.META_FILE,\"return \"..textutils.serialise(metadata,{compact=true}))M.adopt(package)return metadata end function M.adopt(package)if type(package)~=\"table\"or type(package.manifest)~=\"table\"then return false,\"invalid verified package\"end local keys=M.trustedKeys()keys[package.manifest.next_key_id]=package.manifest.next_public saveKeys(keys)return true end function M.cachedPackage()local source,metadata=read(M.CACHE_FILE),M.metadata()if not source then return nil end local package,err=M.parse(source)if not package then return nil,err end if not metadata then metadata={schema=2,channel=package.manifest.channel,profile=package.manifest.profile,version=package.manifest.version,size=package.manifest.size,digest=package.manifest.digest,keyId=package.manifest.key_id,nextKeyId=package.manifest.next_key_id,source=\"local installer\",cachedAt=os.epoch(\"utc\"),}write(M.META_FILE,\"return \"..textutils.serialise(metadata,{compact=true}))end M.adopt(package)return package,metadata end function M.clear()if fs.exists(M.PART_FILE)then fs.delete(M.PART_FILE)end if fs.exists(M.CACHE_FILE)then fs.delete(M.CACHE_FILE)end if fs.exists(M.META_FILE)then fs.delete(M.META_FILE)end return true end function M.encode(value)return encode(value)end function M.decode(value)return decode(value)end function M.canonical(manifest)return canonical(manifest)end return M",
  ["ceetos/lib/updater.lua"] = "local store=require(\"ceetos.lib.store\")local release=require(\"ceetos.lib.release_verify\")local version=require(\"ceetos.lib.version\")local net=require(\"ceetos.lib.net\")local profile=require(\"ceetos.lib.profile\")local M={}local STATE_PATH=\"/ceetos/data/update-status.lua\"local OFFER_LIMIT,HISTORY_LIMIT=20,16 local BEACON_INTERVAL,REQUEST_TIMEOUT,REQUEST_LIMIT=30000,3500,3 local MAX_OFFER_AGE=5*60*1000 local state=nil local lastBeacon,lastCacheRead=0,0 local cached=nil local function now()return os.epoch(\"utc\")end local function localId()return tostring(os.getComputerID())end local function localLabel()return os.getComputerLabel()or(\"Computer \"..localId())end local function defaults()return{schema=1,offers={},history={},revision=0,status=\"idle\",message=nil,transfer=nil,cache=nil}end local function loadState()if state then return state end state=store.read(STATE_PATH,defaults())for key,value in pairs(defaults())do if state[key]==nil then state[key]=value end end state.offers=type(state.offers)==\"table\"and state.offers or{}state.history=type(state.history)==\"table\"and state.history or{}return state end local function save()local value=loadState()value.revision=(tonumber(value.revision)or 0)+1 store.write(STATE_PATH,value)end local function record(kind,fields)local value=loadState()local row={at=now(),kind=tostring(kind):sub(1,48)}for key,item in pairs(fields or{})do if key~=\"data\"and key~=\"source\"and key~=\"signature\"then row[key]=item end end value.history[#value.history+1]=row while#value.history>HISTORY_LIMIT do table.remove(value.history,1)end end local function setStatus(status,message)local value=loadState()value.status,value.message=status,message and tostring(message):sub(1,180)or nil end local function validId(value)return type(value)==\"string\"and value:match(\"^[%w_%-%.]+$\")and#value<=96 end local function validOffer(body)if type(body)~=\"table\"or type(body.version)~=\"string\"or type(body.size)~=\"number\"or type(body.digest)~=\"string\"or type(body.keyId)~=\"string\"or type(body.profile)~=\"string\"then return nil,\"malformed release offer\"end if body.profile~=profile.id()then return nil,\"release profile does not match this installation\"end local compare=release.compareVersions(body.version,version.string)if compare==nil then return nil,\"invalid release version\"end if body.size<1 or body.size>release.MAX_PACKAGE_BYTES then return nil,\"invalid release size\"end if#body.digest~=64 or body.digest:find(\"[^%x]\")then return nil,\"invalid release digest\"end if#body.keyId<1 or#body.keyId>64 then return nil,\"invalid release key ID\"end return{profile=body.profile,version=body.version,size=math.floor(body.size),digest=body.digest:lower(),keyId=body.keyId,fingerprint=body.digest:sub(1,16),newer=compare>0}end local function refreshCached()local timestamp=now()if cached and timestamp-lastCacheRead<5000 then return cached end lastCacheRead=timestamp local value=loadState()local previous=value.cache and(tostring(value.cache.version)..\":\"..tostring(value.cache.digest))or nil local package,metadata=release.cachedPackage()if package and package.manifest.profile==profile.id()then cached={package=package,metadata=metadata,offer={version=package.manifest.version,size=#package.source,digest=package.manifest.digest,profile=package.manifest.profile,keyId=package.manifest.key_id,fingerprint=package.manifest.digest:sub(1,16),}}value.cache={profile=package.manifest.profile,version=package.manifest.version,size=#package.source,digest=package.manifest.digest,keyId=package.manifest.key_id,fingerprint=package.manifest.digest:sub(1,16),source=metadata and metadata.source or\"local\",verifiedAt=timestamp}else cached=nil value.cache=nil end local current=value.cache and(tostring(value.cache.version)..\":\"..tostring(value.cache.digest))or nil if current~=previous then save()end return cached end local function providerOffer()local available=refreshCached()if not available then return nil end return{version=available.offer.version,size=available.offer.size,digest=available.offer.digest,profile=available.offer.profile,keyId=available.offer.keyId,label=localLabel(),id=localId(),}end local function upsertOffer(source,body,transport,distance)source=tostring(source)if source==localId()then return false,\"ignored own release offer\"end local offer,err=validOffer(body)if not offer then return false,err end if not offer.newer then return false,\"offered release is not newer\"end local value=loadState()local key=source..\":\"..offer.version..\":\"..offer.digest:sub(1,16)value.offers[key]={id=source,label=tostring(body.label or(\"Computer \"..source)):sub(1,96),version=offer.version,profile=offer.profile,size=offer.size,digest=offer.digest,fingerprint=offer.fingerprint,keyId=offer.keyId,transport=transport,distance=tonumber(distance),seen=now(),key=key,}local rows={}for entryKey,item in pairs(value.offers)do rows[#rows+1]={key=entryKey,seen=tonumber(item.seen)or 0}end table.sort(rows,function(a,b)return a.seen>b.seen end)while#rows>OFFER_LIMIT do value.offers[table.remove(rows).key]=nil end setStatus(\"offers\",\"Signed release \"..offer.version..\" available from \"..tostring(body.label or source))record(\"offer\",{id=source,version=offer.version,transport=transport,distance=distance})save()return true end local function offers()local value,timestamp,rows=loadState(),now(),{}for key,item in pairs(value.offers)do if type(item)==\"table\"and timestamp-(tonumber(item.seen)or 0)<=MAX_OFFER_AGE then rows[#rows+1]=item else value.offers[key]=nil end end table.sort(rows,function(left,right)local compare=release.compareVersions(left.version,right.version)or 0 if compare~=0 then return compare>0 end return tostring(left.id)<tostring(right.id)end)return rows end local function findOffer(source)source=tostring(source)for _,item in ipairs(offers())do if item.key==source or tostring(item.id)==source then return item end end return nil,\"release source is unavailable; run update check first\"end local function removePart()if fs.exists(release.PART_FILE)then fs.delete(release.PART_FILE)end end local function appendPart(data)local handle,err=fs.open(release.PART_FILE,\"a\")if not handle then return false,err or\"could not open update staging file\"end handle.write(data);handle.close()return true end local function cachedSource()local available=refreshCached()return available and available.package and available.package.source end local function transferRequest(transfer)local length=math.min(release.CHUNK_BYTES,transfer.size-transfer.offset+1)if length<1 then return false,\"transfer is already complete\"end transfer.awaiting,transfer.requestedAt=true,now()local body={transfer=transfer.id,offset=transfer.offset,length=length}local sent,err if transfer.transport==\"routed\"then sent,err=net.request(transfer.source,\"update_chunk_request\",body,{safe=true})else sent,err=net.publicSend(transfer.source,\"update_chunk_request\",body)end if not sent then transfer.awaiting=false;return false,err end return true end local function beginDownload(source)local offer,err=findOffer(source)if not offer then return false,err end local compare=release.compareVersions(offer.version,version.string)if not compare or compare<=0 then return false,\"refusing a downgrade or current release\"end local free=fs.getFreeSpace and fs.getFreeSpace(\"/\")or nil if type(free)==\"number\"and free<offer.size+4096 then return false,\"not enough free space for one verified release cache\"end removePart()release.clear();cached=nil local value=loadState()value.transfer={id=\"update-\"..localId()..\"-\"..tostring(now())..\"-\"..tostring(math.random(1000,9999)),source=tostring(offer.id),label=offer.label,transport=offer.transport==\"routed\"and\"routed\"or\"direct\",profile=offer.profile,version=offer.version,size=offer.size,digest=offer.digest,keyId=offer.keyId,offset=1,received=0,retries=0,awaiting=false,started=now(),}setStatus(\"downloading\",\"Downloading signed release \"..offer.version..\" from \"..offer.label)record(\"download_started\",{id=offer.id,version=offer.version,transport=value.transfer.transport})local sent,sendErr=transferRequest(value.transfer)if not sent then value.transfer=nil;setStatus(\"error\",sendErr);record(\"download_failed\",{id=offer.id,error=sendErr})end save()return sent,sendErr end local function finishTransfer(transfer)local handle=fs.open(release.PART_FILE,\"r\")local source=handle and handle.readAll()or nil if handle then handle.close()end if not source or#source~=transfer.size then return false,\"download size did not match offer\"end local parsed,parseErr=release.parse(source)if not parsed then return false,parseErr end if parsed.manifest.profile~=profile.id()or parsed.manifest.profile~=transfer.profile or parsed.manifest.version~=transfer.version or parsed.manifest.digest:lower()~=transfer.digest:lower()or parsed.manifest.key_id~=transfer.keyId then return false,\"verified package did not match selected release offer\"end local metadata,promoteErr=release.promotePart(release.PART_FILE,transfer.label)if not metadata then return false,promoteErr end cached=nil;refreshCached()local value=loadState();value.transfer=nil setStatus(\"downloaded\",\"Verified release \"..metadata.version..\" is ready for local confirmation\")record(\"download_verified\",{id=transfer.source,version=metadata.version,digest=metadata.digest:sub(1,16)})save()return true,metadata end local function acceptChunk(source,body,transport)local value,transfer=loadState(),loadState().transfer if not transfer or transfer.transport~=transport or tostring(source)~=tostring(transfer.source)then return false,\"unexpected update chunk\"end if type(body)~=\"table\"or body.transfer~=transfer.id or math.floor(tonumber(body.offset)or 0)~=transfer.offset or type(body.data)~=\"string\"then return false,\"malformed update chunk\"end local remaining=transfer.size-transfer.offset+1 if#body.data<1 or#body.data>math.min(release.CHUNK_BYTES,remaining)then return false,\"invalid update chunk length\"end local ok,err=appendPart(body.data)if not ok then transfer.awaiting=false;setStatus(\"error\",err);record(\"download_failed\",{error=err});save();return false,err end transfer.offset,transfer.received,transfer.awaiting,transfer.retries=transfer.offset+#body.data,(transfer.received or 0)+#body.data,false,0 if transfer.offset>transfer.size then local complete,result=finishTransfer(transfer)if not complete then removePart();value.transfer=nil;setStatus(\"error\",result);record(\"download_failed\",{id=source,error=result});save()end return complete,result end local sent,sendErr=transferRequest(transfer)if not sent then setStatus(\"error\",sendErr);record(\"download_failed\",{id=source,error=sendErr});value.transfer=nil;removePart()end save()return sent,sendErr end local function serveChunk(target,body,routed,request)if type(body)~=\"table\"or not validId(body.transfer)or math.floor(tonumber(body.offset)or 0)<1 or math.floor(tonumber(body.length)or 0)<1 or tonumber(body.length)>release.CHUNK_BYTES then return false,\"invalid update chunk request\"end local source=cachedSource()if not source then return false,\"no verified newer signed release is cached\"end local offset,length=math.floor(body.offset),math.floor(body.length)if offset>#source then return false,\"requested update offset is beyond package\"end local data=source:sub(offset,math.min(#source,offset+length-1))local response={transfer=body.transfer,offset=offset,data=data}if routed then return net.reply(request,\"update_chunk\",response,{safe=true})end return net.publicSend(target,\"update_chunk\",response)end function M.publicPacket(packet,distance)local source,body=tostring(packet.from),packet.body or{}if packet.type==\"update_query\"then if body.profile~=profile.id()then return false,\"release profile does not match this installation\"end local offer=providerOffer()local compare=offer and release.compareVersions(offer.version,body.version or\"\")if offer and compare and compare>0 then net.publicSend(source,\"update_offer\",offer)end return elseif packet.type==\"update_offer\"then return upsertOffer(source,body,\"direct\",distance)elseif packet.type==\"update_chunk_request\"then return serveChunk(source,body,false)elseif packet.type==\"update_chunk\"then return acceptChunk(source,body,\"direct\")end end function M.authenticatedPacket(from,peer,packet)local body=packet.body or{}if packet.type==\"update_query\"then if body.profile~=profile.id()then return false,\"release profile does not match this installation\"end local offer=providerOffer()local compare=offer and release.compareVersions(offer.version,body.version or\"\")if offer and compare and compare>0 then return net.reply(packet,\"update_offer\",offer,{safe=true})end elseif packet.type==\"update_offer\"then return upsertOffer(from,body,\"routed\")elseif packet.type==\"update_chunk_request\"then return serveChunk(from,body,true,packet)elseif packet.type==\"update_chunk\"then return acceptChunk(from,body,\"routed\")end end function M.check()local value=loadState()for key in pairs(value.offers)do value.offers[key]=nil end setStatus(\"checking\",\"Looking for newer signed releases\")local sent,err=net.publicBroadcast(\"update_query\",{version=version.string,profile=profile.id()})local routed=0 for _,peer in ipairs(net.peers())do if not peer.rekeyRequired then local ok=net.request(peer.id,\"update_query\",{version=version.string,profile=profile.id()},{safe=true})if ok then routed=routed+1 end end end record(\"check\",{direct=sent==true,routed=routed,error=sent and nil or err})save()return sent or routed>0,sent and nil or err end function M.download(source)return beginDownload(source)end function M.cancel()local value=loadState()if not value.transfer then return false,\"no update transfer is active\"end record(\"download_cancelled\",{id=value.transfer.source,version=value.transfer.version})value.transfer=nil;removePart();setStatus(\"cancelled\",\"Update download cancelled\");save()return true end function M.clearCache()local value=loadState()if value.transfer then return false,\"cancel the active download first\"end release.clear();cached=nil;value.cache=nil;setStatus(\"idle\",\"Verified release cache cleared\");record(\"cache_cleared\");save()return true end function M.prepareApply()local package,metadata=release.cachedPackage()if not package then return false,metadata or\"no verified signed release is cached\"end local compare=release.compareVersions(package.manifest.version,version.string)if not compare or compare<=0 then return false,\"cached release is not newer than this CeetOS installation\"end if package.manifest.profile~=profile.id()then return false,\"cached release profile does not match this installation\"end local marker={schema=2,state=\"apply\",profile=package.manifest.profile,version=package.manifest.version,digest=package.manifest.digest,keyId=package.manifest.key_id,approvedAt=now()}store.write(release.PENDING_FILE,marker)local value=loadState();setStatus(\"applying\",\"Applying verified release \"..package.manifest.version..\" after reboot\");record(\"apply_approved\",{version=package.manifest.version,digest=package.manifest.digest:sub(1,16),keyId=package.manifest.key_id});save()return true,{version=package.manifest.version,fingerprint=package.manifest.digest:sub(1,16),keyId=package.manifest.key_id}end function M.recover()local marker=store.read(release.PENDING_FILE,nil)if type(marker)~=\"table\"or marker.state~=\"verify\"then return end local value=loadState()if marker.version==version.string and(marker.profile==nil or marker.profile==profile.id())then if fs.exists(release.PENDING_FILE)then fs.delete(release.PENDING_FILE)end setStatus(\"applied\",\"Verified release \"..version.string..\" is now active\")record(\"apply_verified\",{version=version.string})else setStatus(\"error\",\"Update installed but running version did not match \"..tostring(marker.version))record(\"apply_version_mismatch\",{expected=marker.version,actual=version.string})end save()end function M.tick()local value,timestamp=loadState(),now()local offer=providerOffer()if offer and timestamp-lastBeacon>=BEACON_INTERVAL then net.publicBroadcast(\"update_offer\",offer)lastBeacon=timestamp end local transfer=value.transfer if transfer and transfer.awaiting and timestamp-(transfer.requestedAt or timestamp)>=REQUEST_TIMEOUT then transfer.awaiting,transfer.retries=false,(transfer.retries or 0)+1 if transfer.retries>REQUEST_LIMIT then record(\"download_timeout\",{id=transfer.source,version=transfer.version})value.transfer=nil;removePart();setStatus(\"error\",\"Update source timed out\");save()else local sent,err=transferRequest(transfer)if not sent then value.transfer=nil;removePart();setStatus(\"error\",err);record(\"download_failed\",{id=transfer.source,error=err});save()end end end end function M.status()local value=loadState()return{profile=profile.id(),version=version.string,status=value.status,message=value.message,revision=value.revision,offers=offers(),transfer=value.transfer,cache=value.cache,history=value.history,cacheRoot=release.CACHE_ROOT,maxPackageBytes=release.MAX_PACKAGE_BYTES,}end return M",
  ["ceetos/lib/mesh_crypto.lua"] = "local password=require(\"ceetos.lib.password\")local M={}local band,bor,bxor=bit32.band,bit32.bor,bit32.bxor local lshift,rshift=bit32.lshift,bit32.rshift local MOD32,LIMB=4294967296,67108864 local function add32(...)local n=0 for i=1,select(\"#\",...)do n=(n+(select(i,...)or 0))%MOD32 end return n end local function rotl(v,bits)return bor(lshift(v,bits),rshift(v,32-bits))end local function le32(data,index)local a,b,c,d=data:byte(index,index+3)return(a or 0)+(b or 0)*256+(c or 0)*65536+(d or 0)*16777216 end local function put32(value)value=value%MOD32 return string.char(value%256,math.floor(value/256)%256,math.floor(value/65536)%256,math.floor(value/16777216)%256)end local function le64(value)value=math.max(0,math.floor(tonumber(value)or 0))local low,high=value%MOD32,math.floor(value/MOD32)%MOD32 return put32(low)..put32(high)end local function hexToRaw(value)if type(value)~=\"string\"or#value%2~=0 or value:find(\"[^%x]\")then return nil end return(value:gsub(\"..\",function(pair)return string.char(tonumber(pair,16))end))end local function rawToHex(value)return(value:gsub(\".\",function(byte)return string.format(\"%02x\",byte:byte())end))end local function xorBytes(left,right)local out={}for i=1,#left do out[i]=string.char(bxor(left:byte(i),right:byte(i)))end return table.concat(out)end local function quarter(x,a,b,c,d)x[a]=add32(x[a],x[b]);x[d]=rotl(bxor(x[d],x[a]),16)x[c]=add32(x[c],x[d]);x[b]=rotl(bxor(x[b],x[c]),12)x[a]=add32(x[a],x[b]);x[d]=rotl(bxor(x[d],x[a]),8)x[c]=add32(x[c],x[d]);x[b]=rotl(bxor(x[b],x[c]),7)end local function chachaBlock(key,counter,nonce)local state={0x61707865,0x3320646e,0x79622d32,0x6b206574}for i=1,8 do state[4+i]=le32(key,(i-1)*4+1)end state[13],state[14],state[15],state[16]=counter%MOD32,le32(nonce,1),le32(nonce,5),le32(nonce,9)local x={}for i=1,16 do x[i]=state[i]end for _=1,10 do quarter(x,1,5,9,13);quarter(x,2,6,10,14);quarter(x,3,7,11,15);quarter(x,4,8,12,16)quarter(x,1,6,11,16);quarter(x,2,7,12,13);quarter(x,3,8,9,14);quarter(x,4,5,10,15)end local out={}for i=1,16 do out[i]=put32(add32(x[i],state[i]))end return table.concat(out)end local function chachaXor(key,nonce,counter,plaintext)local out,position={},1 while position<=#plaintext do local block=chachaBlock(key,counter,nonce)local part=plaintext:sub(position,position+63)out[#out+1]=xorBytes(part,block:sub(1,#part))position,counter=position+#part,(counter+1)%MOD32 end return table.concat(out)end local function poly1305(message,key)local function zero(length)local out={};for i=1,length do out[i]=0 end;return out end local function normalise(value)local carry=0 for i=1,#value do local n=(value[i]or 0)+carry value[i],carry=n%256,math.floor(n/256)end while carry>0 do value[#value+1],carry=carry%256,math.floor(carry/256)end return value end local function add(left,right)local out=zero(math.max(#left,#right)+1)for i=1,#left do out[i]=out[i]+left[i]end for i=1,#right do out[i]=out[i]+right[i]end return normalise(out)end local function multiply(left,right)local out=zero(#left+#right+1)for i=1,#left do for j=1,#right do out[i+j-1]=out[i+j-1]+left[i]*right[j]end end return normalise(out)end local function high130(value)local out={}for i=1,#value-16 do local low=value[i+16]or 0 local high=value[i+17]or 0 out[i]=math.floor(low/4)+(high%4)*64 end return normalise(out)end local function hasHigh(value)if#value>17 then for i=18,#value do if value[i]~=0 then return true end end end return(value[17]or 0)>=4 end local function reduce(value)while hasHigh(value)do local low,high=zero(17),high130(value)for i=1,17 do low[i]=value[i]or 0 end low[17]=low[17]%4 for i=1,#high do high[i]=high[i]*5 end value=add(low,high)end local prime={251}for i=2,16 do prime[i]=255 end prime[17]=3 local greater=false for i=17,1,-1 do if(value[i]or 0)~=prime[i]then greater=(value[i]or 0)>prime[i];break end end if greater then local borrow=0 for i=1,17 do local n=(value[i]or 0)-prime[i]-borrow if n<0 then n,borrow=n+256,1 else borrow=0 end value[i]=n end end return value end local r,h=zero(17),zero(17)for i=1,16 do r[i]=key:byte(i)end r[4],r[8],r[12],r[16]=band(r[4],15),band(r[8],15),band(r[12],15),band(r[16],15)r[5],r[9],r[13]=band(r[5],252),band(r[9],252),band(r[13],252)for at=1,#message,16 do local part,n=message:sub(at,at+15),zero(17)for i=1,#part do n[i]=part:byte(i)end n[#part+1]=1 h=reduce(multiply(add(h,n),r))end local pad,out,carry={},{},0 for i=1,16 do pad[i]=key:byte(i+16)end for i=1,16 do local n=(h[i]or 0)+pad[i]+carry out[i],carry=n%256,math.floor(n/256)end return string.char(table.unpack(out))end local function padded(value)return value..string.rep(\"\\0\",(16-(#value%16))%16)end local function derive(linkKey)local raw=hexToRaw(password.hmacSha256(linkKey,\"ceetos/mesh/aead-key/v1\")or\"\")return raw end function M.nonce(linkKey,counter,context)local raw=hexToRaw(password.hmacSha256(linkKey,\"ceetos/mesh/aead-nonce/v1|\"..tostring(counter)..\"|\"..tostring(context or\"\"))or\"\")return raw and raw:sub(1,12)or nil end function M.seal(linkKey,nonce,aad,plaintext)if type(linkKey)~=\"string\"or type(nonce)~=\"string\"or#nonce~=12 or type(aad)~=\"string\"or type(plaintext)~=\"string\"then return nil,\"invalid mesh envelope input\"end local key=derive(linkKey);if not key or#key~=32 then return nil,\"could not derive mesh envelope key\"end local polyKey=chachaBlock(key,0,nonce):sub(1,32)local ciphertext=chachaXor(key,nonce,1,plaintext)local tag=poly1305(padded(aad)..padded(ciphertext)..le64(#aad)..le64(#ciphertext),polyKey)return{nonce=rawToHex(nonce),ciphertext=rawToHex(ciphertext),tag=rawToHex(tag)}end function M.open(linkKey,envelope,aad)if type(linkKey)~=\"string\"or type(envelope)~=\"table\"or type(aad)~=\"string\"then return nil,\"invalid mesh envelope\"end local nonce,ciphertext,tag=hexToRaw(envelope.nonce or\"\"),hexToRaw(envelope.ciphertext or\"\"),hexToRaw(envelope.tag or\"\")if not nonce or#nonce~=12 or not ciphertext or not tag or#tag~=16 then return nil,\"invalid mesh envelope encoding\"end local key=derive(linkKey);if not key or#key~=32 then return nil,\"could not derive mesh envelope key\"end local polyKey=chachaBlock(key,0,nonce):sub(1,32)local expected=rawToHex(poly1305(padded(aad)..padded(ciphertext)..le64(#aad)..le64(#ciphertext),polyKey))if not password.constantTimeEqual(expected,envelope.tag)then return nil,\"mesh envelope authentication failed\"end return chachaXor(key,nonce,1,ciphertext)end function M.selfTest()local key=hexToRaw(\"85d6be7857556d337f4452fe42d506a80103808afb0db2fd4abff6af4149f51b\")local tag=poly1305(\"Cryptographic Forum Research Group\",key)return rawToHex(tag)==\"a8061dc1305136c6c22b8baf0c0127a9\"end return M",
  ["ceetos/lib/audit.lua"] = "local store=require(\"ceetos.lib.store\")local M={}local PATH=\"/ceetos/data/audit.log\"M.LIMITS={maxEntries=250,maxBytes=64*1024}function M.log(actor,action,detail)return store.append(PATH,{ts=os.epoch(\"utc\"),actor=actor or\"system\",action=action,detail=detail,},M.LIMITS)end function M.recent(limit)limit=math.max(1,math.min(50,tonumber(limit)or 10))local raw=store.readAppend(PATH)local result={}for line in(raw..\"\\n\"):gmatch(\"(.-)\\n\")do if line~=\"\"then local entry=textutils.unserialise(line)if entry then result[#result+1]=entry if#result>limit then table.remove(result,1)end end end end return result end return M",
  ["ceetos/lib/net.lua"] = "local store=require(\"ceetos.lib.store\")local audit=require(\"ceetos.lib.audit\")local password=require(\"ceetos.lib.password\")local meshCrypto=require(\"ceetos.lib.mesh_crypto\")local M={handler=nil,publicHandler=nil}local PATH=\"/ceetos/data/network.lua\"local SECURITY_PATH=\"/ceetos/data/network-security.lua\"local SEEN_PATH=\"/ceetos/data/seen-peers.lua\"local CHANNEL,PROTOCOL=45731,\"ceetos/2\"local PUBLIC_UPDATE_PROTOCOL=\"ceetos/update/1\"local PUBLIC_UPDATE_TYPES={update_query=true,update_offer=true,update_chunk_request=true,update_chunk=true,}local DISCOVERY_CHANNEL=CHANNEL local DISCOVERY_TTL,ROUTE_TTL,PACKET_TTL=120000,120000,8 local DISCOVERY_INTERVAL,PAIR_RETRY,ROUTE_INTERVAL=2000,2000,15000 local MESH_BEACON_INTERVAL,MESH_FULL_INTERVAL=15000,30000 local PROBE_INTERVAL,PROBE_DEGRADED,PROBE_OFFLINE,PROBE_RECOVERY=5000,3,6,10000 local ROUTE_CANDIDATE_LIMIT,ROUTE_BUCKET_LIMIT=4,96 local SAFE_READ_WINDOW,SAFE_READ_LIMIT=1000,16 local MAX_PACKET_STRING,MAX_PACKET_TABLE,MAX_PACKET_DEPTH=8192,128,6 local COUNTER_RESERVATION,MAX_RX_EPOCHS,MAX_REVERSE_ROUTES=64,3,128 local routes,discovered,confirmations,seenPackets,reverseRoutes={},{},{},{},{}local routeSequence,lastRouteAdvertisement,routesDirty=0,0,false local discovery,lastDiscovery=nil,{state=\"inactive\"}local security={tx={},rx={}}local autoEdges,linkHealth,meshOffers,meshSeen,advertisedRoutes,meshEnrollmentSends={},{},{},{},{},{}local lastMeshBeacon,lastMeshFull,meshDirty=0,0,false local transport={modem=false,wireless=false,name=nil,channels={},lastTransmit=nil,lastReceive=nil,lastDistance=nil,lastError=nil,rejected=0,}local traces={discovery={},routing={},transport={}}local TRACE_LIMIT=48 local MESH_STATE_LIMIT=128 local rejectPacket local function now()return os.epoch(\"utc\")end local function id()return tostring(os.getComputerID())end local function label()return os.getComputerLabel()or(\"Computer \"..id())end local function isBroadcast(value)return tostring(value)==\"0\"end local function isForUs(value)return tostring(value)==id()end local function copy(value,depth)if type(value)~=\"table\"then return value end if(depth or 0)>MAX_PACKET_DEPTH then return nil end local out={}for k,v in pairs(value)do out[k]=copy(v,(depth or 0)+1)end return out end local function trace(kind,phase,fields)local bucket=traces[kind]or traces.transport local row={time=now(),phase=phase}for key,value in pairs(fields or{})do if key~=\"phrase\"and key~=\"proof\"and key~=\"key\"and key~=\"secret\"and key~=\"mac\"and key~=\"packet\"and key~=\"tag\"then row[key]=value end end bucket[#bucket+1]=row while#bucket>TRACE_LIMIT do table.remove(bucket,1)end end local function read(path,fallback)if store.invalidate then store.invalidate(path)end return store.read(path,fallback)end local function config()local value=read(PATH,{peers={},channel=CHANNEL})value.peers=type(value.peers)==\"table\"and value.peers or{}value.channel=tonumber(value.channel)or CHANNEL return value end local function save(value)local ok,err=store.write(PATH,value)if ok==false then error(err or\"could not save network configuration\",0)end end local function migrateV1Links()local value,changed=config(),false for _,peer in pairs(value.peers)do if peer.protocol~=2 or peer.rekeyRequired or type(peer.key)~=\"string\"or#peer.key<32 then peer.protocol,peer.rekeyRequired,peer.key=1,true,nil peer.secret=nil changed=true end end if changed then save(value)end return value end local function activePeer(value,peerId)local peer=value.peers[tostring(peerId)]if peer and peer.protocol==2 and peer.rekeyRequired~=true and type(peer.key)==\"string\"and#peer.key>=32 then return peer end return nil end local function activeLink(value,peerId)local manual=activePeer(value,peerId)if manual then return manual,\"direct\"end local edge=autoEdges[tostring(peerId)]if edge and type(edge.key)==\"string\"and#edge.key>=32 and(edge.expires or 0)>now()then return edge,\"mesh\"end return nil end local function healthFor(peerId)peerId=tostring(peerId)local state=linkHealth[peerId]if not state then state={state=\"healthy\",successes=0,misses=0,lastAuthenticated=now(),stableSince=now(),inFlight=0}linkHealth[peerId]=state end return state end local function linkState(peerId)return healthFor(peerId).state or\"healthy\"end local function currentInFlight(state,timestamp)state.inFlightUntil=type(state.inFlightUntil)==\"table\"and state.inFlightUntil or{}local kept={}for _,expires in ipairs(state.inFlightUntil)do if expires>timestamp then kept[#kept+1]=expires end end state.inFlightUntil,state.inFlight=kept,#kept return state.inFlight end local function markInFlight(state)local timestamp=now()currentInFlight(state,timestamp)state.inFlightUntil[#state.inFlightUntil+1]=timestamp+SAFE_READ_WINDOW table.sort(state.inFlightUntil)while#state.inFlightUntil>SAFE_READ_LIMIT do table.remove(state.inFlightUntil,1)end state.inFlight=#state.inFlightUntil end local function linkUsable(value,peerId,allowDegraded)if not activeLink(value,peerId)then return false end local state=linkState(peerId)return state==\"healthy\"or(allowDegraded and state==\"degraded\")end local function touchLink(peerId,distance,source)local state,timestamp=healthFor(peerId),now()state.lastAuthenticated,state.lastDistance,state.lastSource=timestamp,distance,source or\"traffic\"state.misses,state.awaiting,state.probeToken=0,false,nil state.loss=math.max(0,(state.loss or 0)*0.5)if state.state~=\"healthy\"then state.successes=(state.successes or 0)+1 if state.successes>=2 then state.state,state.stableSince,state.recoveredAt=\"healthy\",timestamp,timestamp routesDirty=true trace(\"routing\",\"link_recovered\",{peer=peerId,source=source})end else state.successes=math.min(2,(state.successes or 0)+1)end end local function allDirectLinks(value)local out,seen={},{}for peerId in pairs(value.peers)do if activePeer(value,peerId)then out[#out+1],seen[peerId]=tostring(peerId),true end end for peerId,edge in pairs(autoEdges)do if not seen[peerId]and edge.expires>now()then out[#out+1]=tostring(peerId)end end table.sort(out,function(a,b)return tonumber(a)<tonumber(b)end)return out end local function remember(peer,peerLabel,extra)local value=read(SEEN_PATH,{})local old=value[tostring(peer)]or{}old.label,old.seen=peerLabel or old.label or(\"Computer \"..tostring(peer)),now()if extra then for key,item in pairs(extra)do if key~=\"tag\"and key~=\"proof\"then old[key]=item end end end value[tostring(peer)]=old store.write(SEEN_PATH,value)end local function modem(requireWireless)local candidates,used={},{}local sides=rs and rs.getSides and rs.getSides()or{}for _,name in ipairs(sides)do if peripheral.getType(name)==\"modem\"and not used[name]then candidates[#candidates+1],used[name]=name,true end end if peripheral.getNames then for _,name in ipairs(peripheral.getNames())do if peripheral.getType(name)==\"modem\"and not used[name]then candidates[#candidates+1],used[name]=name,true end end end local fallback for _,name in ipairs(candidates)do local wrapped=peripheral.wrap(name)if wrapped then fallback=fallback or wrapped local ok,wireless=pcall(function()return not wrapped.isWireless or wrapped.isWireless()end)if ok and wireless then return wrapped end end end return requireWireless and nil or fallback end local function modems()local out,seen={},{}local function add(name)if not seen[name]and peripheral.getType(name)==\"modem\"then local wrapped=peripheral.wrap(name)if wrapped then out[#out+1],seen[name]={name=name,modem=wrapped},true end end end for _,name in ipairs(rs and rs.getSides and rs.getSides()or{})do add(name)end for _,name in ipairs(peripheral.getNames and peripheral.getNames()or{})do add(name)end return out end local function wirelessModems()local out={}for _,item in ipairs(modems())do local ok,wireless=pcall(function()return not item.modem.isWireless or item.modem.isWireless()end)if ok and wireless then out[#out+1]=item end end return out end local function openChannels(value)local channels={value.channel or CHANNEL}if channels[1]~=DISCOVERY_CHANNEL then channels[#channels+1]=DISCOVERY_CHANNEL end transport.channels=channels local all=modems()if#all==0 then transport.lastError=\"no modem attached\";trace(\"transport\",\"modem_missing\");return channels end for _,item in ipairs(all)do for _,channel in ipairs(channels)do local ok,err=pcall(item.modem.open,channel)if not ok then transport.lastError=tostring(err)trace(\"transport\",\"channel_open_failed\",{channel=channel,error=transport.lastError,modem=item.name})end end end return channels end local function canonical(value,depth)depth=depth or 0 local kind=type(value)if kind==\"nil\"then return\"n\"end if kind==\"boolean\"then return value and\"b1\"or\"b0\"end if kind==\"number\"then if value~=value or value==math.huge or value==-math.huge then return nil,\"invalid numeric packet value\"end return\"d\"..string.format(\"%.17g\",value)..\";\"end if kind==\"string\"then if#value>MAX_PACKET_STRING then return nil,\"packet string exceeds limit\"end return\"s\"..tostring(#value)..\":\"..value end if kind~=\"table\"then return nil,\"unsupported packet value\"end if depth>=MAX_PACKET_DEPTH then return nil,\"packet nesting exceeds limit\"end local entries={}for key,item in pairs(value)do if#entries>=MAX_PACKET_TABLE then return nil,\"packet table exceeds limit\"end local encodedKey,keyErr=canonical(key,depth+1);if not encodedKey then return nil,keyErr end local encodedValue,valueErr=canonical(item,depth+1);if not encodedValue then return nil,valueErr end entries[#entries+1]=encodedKey..\"=\"..encodedValue end table.sort(entries)return\"t\"..tostring(#entries)..\"{\"..table.concat(entries,\",\")..\"}\"end local function packetMaterial(packet)return canonical({protocol=packet.protocol,type=packet.type,from=packet.from,to=packet.to,origin=packet.origin,destination=packet.destination,ttl=packet.ttl,request_id=packet.request_id,timestamp=packet.timestamp,reply_to=packet.reply_to,auth=packet.auth and{epoch=packet.auth.epoch,counter=packet.auth.counter}or nil,confidential=packet.confidential==true,body=packet.body,})end local function confidentialAad(packet)return table.concat({\"ceetos/confidential/v1\",tostring(packet.type),tostring(packet.origin),tostring(packet.destination),tostring(packet.request_id)},\"|\")end local function sealBody(peer,packet)local encoded=textutils.serialise(packet.body or{},{compact=true})if#encoded>6144 then return nil,\"confidential payload exceeds limit\"end local nonce=meshCrypto.nonce(peer.key,password.newSalt(\"confidential:\"..tostring(packet.request_id)),confidentialAad(packet))if not nonce then return nil,\"could not create confidential nonce\"end local envelope,err=meshCrypto.seal(peer.key,nonce,confidentialAad(packet),encoded)if not envelope then return nil,err end return{envelope=envelope}end local function openBody(peer,packet)if type(packet.body)~=\"table\"or type(packet.body.envelope)~=\"table\"then return nil,\"malformed confidential envelope\"end local decoded,err=meshCrypto.open(peer.key,packet.body.envelope,confidentialAad(packet))if not decoded or#decoded>6144 then return nil,err or\"invalid confidential payload\"end local ok,value=pcall(textutils.unserialise,decoded)if not ok or type(value)~=\"table\"then return nil,\"invalid confidential payload\"end return value end local function loadSecurity()security=read(SECURITY_PATH,{tx={},rx={}})security.tx=type(security.tx)==\"table\"and security.tx or{}security.rx=type(security.rx)==\"table\"and security.rx or{}end local function saveSecurity()local ok,err=store.write(SECURITY_PATH,security)if ok==false then error(err or\"could not persist peer replay state\",0)end end local function counter(peerId)local key=tostring(peerId)local tx=security.tx[key]if not tx then tx={epoch=password.newSalt(\"peer-tx:\"..key),reserved=0};security.tx[key]=tx end tx.next=tonumber(tx.next)or((tonumber(tx.reserved)or 0)+1)if tx.next>(tonumber(tx.reserved)or 0)then tx.reserved=tx.next+COUNTER_RESERVATION-1 saveSecurity()end local value=tx.next;tx.next=value+1 return tx.epoch,value end local function verifyReplay(from,auth)if type(auth)~=\"table\"or type(auth.epoch)~=\"string\"or#auth.epoch<16 or#auth.epoch>128 then return false,\"invalid packet epoch\"end local sequence=tonumber(auth.counter)if not sequence or sequence<1 or sequence%1~=0 then return false,\"invalid packet counter\"end local key=tostring(from)local row=security.rx[key]or{epochs={}}row.epochs=type(row.epochs)==\"table\"and row.epochs or{}local old=tonumber(row.epochs[auth.epoch])if old and sequence<=old then return false,\"replayed packet counter\"end row.epochs[auth.epoch]=sequence local order={}for epoch,max in pairs(row.epochs)do order[#order+1]={epoch=epoch,max=tonumber(max)or 0}end table.sort(order,function(a,b)return a.max>b.max end)while#order>MAX_RX_EPOCHS do row.epochs[table.remove(order).epoch]=nil end security.rx[key]=row saveSecurity()return true end local function newRequestId()return id()..\":\"..password.newSalt(\"peer-request\")end local function sign(peerId,peer,packet)local epoch,sequence=counter(peerId)packet.auth={epoch=epoch,counter=sequence}local material,err=packetMaterial(packet)if not material then return false,err end local mac,macErr=password.hmacSha256(peer.key,material)if not mac then return false,macErr end packet.auth.mac=mac return true end local function verifyPacket(packet,value)if type(packet)~=\"table\"then return false,\"packet is not a table\"end if packet.protocol~=PROTOCOL then return false,packet.protocol==\"ceetos/1\"and\"v1 packet rejected; rekey required\"or\"invalid packet protocol\"end if type(packet.type)~=\"string\"or#packet.type==0 or#packet.type>64 then return false,\"invalid packet type\"end if type(packet.from)~=\"string\"and type(packet.from)~=\"number\"then return false,\"invalid packet sender\"end local from=tostring(packet.from)local peer=activeLink(value,from)if not peer then return false,\"sender is not an active direct or mesh peer\"end if not isForUs(packet.to)then return false,\"packet addressed to another hop\"end if type(packet.origin)~=\"string\"and type(packet.origin)~=\"number\"then return false,\"invalid packet origin\"end if type(packet.destination)~=\"string\"and type(packet.destination)~=\"number\"then return false,\"invalid packet destination\"end if type(packet.request_id)~=\"string\"or#packet.request_id==0 or#packet.request_id>128 then return false,\"invalid packet request ID\"end if packet.reply_to~=nil and(type(packet.reply_to)~=\"string\"or#packet.reply_to==0 or#packet.reply_to>128)then return false,\"invalid reply correlation ID\"end local ttl=tonumber(packet.ttl)if not ttl or ttl%1~=0 or ttl<1 or ttl>PACKET_TTL then return false,\"invalid packet TTL\"end local timestamp=tonumber(packet.timestamp)if not timestamp or math.abs(now()-timestamp)>ROUTE_TTL then return false,\"stale packet timestamp\"end if type(packet.auth)~=\"table\"or type(packet.auth.mac)~=\"string\"or#packet.auth.mac~=64 then return false,\"missing packet MAC\"end local receivedMac=packet.auth.mac packet.auth.mac=nil local material,materialErr=packetMaterial(packet)packet.auth.mac=receivedMac if not material then return false,materialErr end local expected,macErr=password.hmacSha256(peer.key,material)if not expected or not password.constantTimeEqual(expected,receivedMac)then return false,macErr or\"invalid packet MAC\"end local replayOk,replayErr=verifyReplay(from,packet.auth)if not replayOk then return false,replayErr end return true,peer end local function routeBucket(targetId)local bucket=routes[tostring(targetId)]if bucket and bucket.next then bucket={candidates={{next=tostring(bucket.next),hops=tonumber(bucket.hops)or PACKET_TTL,expires=tonumber(bucket.expires)or 0,label=bucket.label,mode=bucket.mode,masterId=bucket.masterId,legacy=true,loss=1,}},primary=tostring(bucket.next),changedAt=now(),reason=\"legacy route\"}routes[tostring(targetId)]=bucket end if not bucket then bucket={candidates={},changedAt=now(),reason=\"new\"}routes[tostring(targetId)]=bucket end bucket.candidates=type(bucket.candidates)==\"table\"and bucket.candidates or{}return bucket end local function candidateHealth(candidate)local state=healthFor(candidate.next)local rank=state.state==\"healthy\"and 0 or(state.state==\"degraded\"and 1 or 2)return rank,state end local function directCandidate(value,targetId)local link,kind=activeLink(value,targetId)if link then return{next=targetId,hops=1,expires=now()+ROUTE_TTL,kind=kind,direct=true,label=link.label,mode=link.mode,masterId=link.masterId}end end local function validCandidates(targetId,value)local timestamp,out,seen=now(),{},{}local direct=directCandidate(value,targetId)if direct then out[#out+1],seen[direct.next..\":\"..direct.kind]=direct,true end local bucket=routes[tostring(targetId)]if bucket then for _,candidate in ipairs(routeBucket(targetId).candidates)do local key=tostring(candidate.next)..\":\"..tostring(candidate.kind or\"route\")if not seen[key]and candidate.expires>timestamp and candidate.hops>=1 and candidate.hops<=PACKET_TTL and activeLink(value,candidate.next)then out[#out+1],seen[key]=candidate,true end end end return out end local function compareCandidates(a,b)local ar,ah=candidateHealth(a)local br,bh=candidateHealth(b)if ar~=br then return ar<br end if(a.hops or PACKET_TTL)~=(b.hops or PACKET_TTL)then return(a.hops or PACKET_TTL)<(b.hops or PACKET_TTL)end if(ah.loss or 0)~=(bh.loss or 0)then return(ah.loss or 0)<(bh.loss or 0)end if(ah.rtt or 0)~=(bh.rtt or 0)then return(ah.rtt or 0)<(bh.rtt or 0)end return tostring(a.next)<tostring(b.next)end local function primaryCandidate(targetId,value,safe)local candidates=validCandidates(targetId,value)if#candidates==0 then return nil end table.sort(candidates,compareCandidates)local target,bucket,selected=tostring(targetId),routeBucket(targetId),candidates[1]local existing for _,item in ipairs(candidates)do if tostring(item.next)==tostring(bucket.primary)then existing=item;break end end if existing then local oldRank,newRank=candidateHealth(existing),candidateHealth(selected)if oldRank<newRank then selected=existing elseif oldRank==newRank and oldRank==0 and(selected.hops or 99)<(existing.hops or 99)then local health=healthFor(selected.next)if(health.successes or 0)<2 or(health.recoveredAt and now()-(health.stableSince or now())<PROBE_RECOVERY)then selected=existing end end end if safe then local rank,_,choices=candidateHealth(selected),nil,{}for _,item in ipairs(candidates)do local itemRank=candidateHealth(item)if itemRank==rank and item.hops==selected.hops then choices[#choices+1]=item end end if#choices>1 then table.sort(choices,function(a,b)local ah,bh=healthFor(a.next),healthFor(b.next)local aLoad,bLoad=currentInFlight(ah,now()),currentInFlight(bh,now())if aLoad~=bLoad then return aLoad<bLoad end return tostring(a.next)<tostring(b.next)end)selected=choices[1]end end if bucket.primary~=tostring(selected.next)then bucket.primary,bucket.changedAt,bucket.reason=tostring(selected.next),now(),existing and\"health/hop selection\"or\"initial selection\"trace(\"routing\",\"route_selected\",{destination=target,next=selected.next,hops=selected.hops,reason=bucket.reason})end return selected end local function nextHop(target,safe)local candidate=primaryCandidate(target,config(),safe)if candidate then local health=healthFor(candidate.next)if safe then markInFlight(health)end health.lastSelected=now()return candidate.next,candidate end routes[tostring(target)]=nil end local function transmit(items,channel,packet)if#items==0 then return false,\"no compatible modem attached\"end local sent,lastError=false,nil for _,item in ipairs(items)do local ok,err=pcall(item.modem.transmit,channel,channel,packet)if ok then sent=true else lastError=tostring(err)end end if not sent then transport.lastError=lastError or\"modem transmit failed\"end return sent,transport.lastError end local function send(target,input,forcedHop)local hop=forcedHop or nextHop(target,input.routeSafe==true and input.balanceSafe==true)if not hop then return false,\"peer is unreachable or requires rekey\"end local value,peer=config(),activeLink(config(),hop)if not peer then return false,\"direct route is unavailable\"end local packet=copy(input)packet.auth,packet.protocol,packet.from,packet.to=nil,PROTOCOL,id(),hop packet.origin,packet.destination=tostring(packet.origin or id()),tostring(packet.destination or target)packet.ttl=math.floor(tonumber(packet.ttl)or PACKET_TTL)packet.timestamp=now()if packet.ttl<1 or packet.ttl>PACKET_TTL then return false,\"invalid packet TTL\"end if type(packet.request_id)~=\"string\"or#packet.request_id==0 then packet.request_id=newRequestId()end if packet.confidential==true then local sealed,sealErr=sealBody(peer,packet)if not sealed then return false,sealErr end packet.body=sealed end local signed,signErr=sign(hop,peer,packet)if not signed then return false,signErr end openChannels(value)local links=wirelessModems()if#links==0 then return false,\"no wireless modem attached\"end local sent,err=transmit(links,value.channel or CHANNEL,packet)if not sent then trace(\"transport\",\"transmit_failed\",{type=packet.type,to=hop,error=err});return false,err end transport.lastTransmit,transport.lastError=now(),nil healthFor(hop).lastTransmit=now()trace(\"routing\",\"packet_sent\",{type=packet.type,to=hop,destination=packet.destination,links=#links})return true end local function rememberReverse(packet,previousHop)if type(packet)~=\"table\"or type(packet.request_id)~=\"string\"or#packet.request_id==0 then return false end local requestId,origin=packet.request_id,tostring(packet.origin)local existing=reverseRoutes[requestId]if existing and(existing.previous~=tostring(previousHop)or existing.origin~=origin)then return false,\"reverse route collision\"end reverseRoutes[requestId]={previous=tostring(previousHop),origin=origin,expires=now()+ROUTE_TTL}local entries={}for key,route in pairs(reverseRoutes)do entries[#entries+1]={id=key,expires=route.expires or 0}end table.sort(entries,function(a,b)return a.expires<b.expires end)while#entries>MAX_REVERSE_ROUTES do reverseRoutes[table.remove(entries,1).id]=nil end return true end local function broadcast(packet)local links=wirelessModems()if#links==0 then transport.lastError=\"no wireless modem attached\";trace(\"discovery\",\"wireless_missing\");return false,transport.lastError end local out=copy(packet)out.protocol,out.from,out.to=PROTOCOL,id(),0 out.timestamp=now()openChannels(config())local sent,err=transmit(links,DISCOVERY_CHANNEL,out)if not sent then trace(\"discovery\",\"transmit_failed\",{type=out.type,error=err});return false,err end transport.lastTransmit,transport.lastError=now(),nil trace(\"discovery\",out.type==\"discover\"and\"announcement_sent\"or\"discovery_packet_sent\",{type=out.type})return true end local function publicTransmit(target,typeName,body)if not PUBLIC_UPDATE_TYPES[typeName]then return false,\"invalid public update packet type\"end local encoded,encodeErr=canonical(body or{})if not encoded then return false,encodeErr or\"invalid public update body\"end local links=wirelessModems()if#links==0 then transport.lastError=\"no wireless modem attached\";return false,transport.lastError end openChannels(config())local packet={protocol=PUBLIC_UPDATE_PROTOCOL,type=typeName,from=id(),to=tostring(target),timestamp=now(),request_id=newRequestId(),body=body or{},}local sent,err=transmit(links,DISCOVERY_CHANNEL,packet)if not sent then transport.lastError=err or\"public update transmit failed\"trace(\"transport\",\"public_update_transmit_failed\",{type=typeName,to=target,error=transport.lastError})return false,transport.lastError end transport.lastTransmit,transport.lastError=now(),nil trace(\"transport\",\"public_update_sent\",{type=typeName,to=target,bytes=#encoded})return true end function M.publicSend(target,typeName,body)if tostring(target)==\"0\"or tostring(target)==\"\"then return false,\"public update target must be a computer ID\"end return publicTransmit(target,typeName,body)end function M.publicBroadcast(typeName,body)return publicTransmit(\"0\",typeName,body)end local function handshake(target,packet)local links=wirelessModems()if#links==0 then transport.lastError=\"no wireless modem attached\";return false,transport.lastError end local out=copy(packet)out.protocol,out.from,out.to,out.timestamp=PROTOCOL,id(),tostring(target),now()out.destination,out.ttl=tostring(target),1 openChannels(config())local sent,err=transmit(links,config().channel or CHANNEL,out)if not sent then trace(\"discovery\",\"handshake_transmit_failed\",{type=out.type,to=target,error=err});return false,err end transport.lastTransmit=now()trace(\"discovery\",out.type..\"_sent\",{to=target})return true end local function phraseTag(phrase,sessionId,hostId)return password.hmacSha256(phrase,\"ceetos/discovery/v2|\"..sessionId..\"|\"..tostring(hostId))end local function joinProof(phrase,sessionId,hostId,joinerId,nonce)return password.hmacSha256(phrase,\"ceetos/pair/join/v2|\"..sessionId..\"|\"..tostring(hostId)..\"|\"..tostring(joinerId)..\"|\"..nonce)end local function confirmProof(phrase,sessionId,hostId,joinerId,nonce,mode,master)return password.hmacSha256(phrase,\"ceetos/pair/confirm/v2|\"..sessionId..\"|\"..tostring(hostId)..\"|\"..tostring(joinerId)..\"|\"..nonce..\"|\"..tostring(mode)..\"|\"..tostring(master or\"\"))end local function linkKey(phrase,sessionId,hostId,joinerId,nonce)return password.derive(phrase,\"ceetos/link/v2|\"..sessionId..\"|\"..tostring(hostId)..\"|\"..tostring(joinerId)..\"|\"..nonce,64)end local function keyId(key)local value=password.hmacSha256(key,\"ceetos/key-id/v2\")return value and value:sub(1,16)or\"\"end local function activeSession()return discovery and(discovery.state==\"hosting\"or discovery.state==\"searching\"or discovery.state==\"candidate\"or discovery.state==\"confirming\")end local function setLast(state,message)lastDiscovery={state=state,message=message,at=now()}end local function persistPair(peerId,key,metadata,masterId)local value=config()value.peers[tostring(peerId)]={protocol=2,rekeyRequired=false,key=key,keyId=keyId(key),role=\"operator\",mode=metadata.mode or\"peer\",master=tostring(masterId or\"\")==id(),masterId=tostring(masterId or\"\"),label=metadata.label,}save(value)remember(peerId,metadata.label,{mode=metadata.mode,masterId=masterId})routes[tostring(peerId)]=nil routesDirty=true audit.log(\"local\",\"peer.rekeyed\",{peer=peerId,mode=metadata.mode})end local function markRejected(reason)if discovery then discovery=nil end setLast(\"cancelled\",reason)end local function discoveryAnnouncement()if not discovery or discovery.state~=\"hosting\"then return false,\"no active host discovery\"end return broadcast({type=\"discover\",session=discovery.id,tag=discovery.tag,label=discovery.label,mode=discovery.mode,master=discovery.masterSide,expires=discovery.expires,})end local function queueConfirmation(peerId,host)confirmations[host.id]=host local sent,err=handshake(peerId,{type=\"pair_confirm\",session=host.id,nonce=host.joinNonce,proof=host.confirmProof,label=host.label,mode=host.mode,master=host.masterId,})host.lastSent,host.retries=now(),0 if not sent then host.error=err end return sent,err end local function expireState(timestamp)if discovery and discovery.expires<=timestamp then local old=discovery.state discovery=nil setLast(\"expired\",old==\"searching\"and\"no matching discovery announcement received\"or\"discovery session expired\")trace(\"discovery\",\"session_expired\",{previous=old})end end local function boundMap(value,limit,timestamp)local entries={}for key,row in pairs(value)do entries[#entries+1]={key=key,at=type(row)==\"number\"and row or(type(row)==\"table\"and(row.expires or row.time or row.seen or row.lastAuthenticated or 0)or 0)}end table.sort(entries,function(a,b)if a.at~=b.at then return a.at<b.at end return tostring(a.key)<tostring(b.key)end)while#entries>limit do value[table.remove(entries,1).key]=nil end end local function pruneRouteBuckets(timestamp)local value=config()local entries={}for peerId,bucket in pairs(routes)do local latest=tonumber(bucket.changedAt)or 0 for _,candidate in ipairs(type(bucket.candidates)==\"table\"and bucket.candidates or{})do latest=math.max(latest,tonumber(candidate.expires)or 0)end entries[#entries+1]={peer=peerId,latest=latest}end table.sort(entries,function(a,b)if a.latest~=b.latest then return a.latest<b.latest end return tostring(a.peer)<tostring(b.peer)end)while#entries>ROUTE_BUCKET_LIMIT do local old=table.remove(entries,1)routes[old.peer],routesDirty=nil,true trace(\"routing\",\"route_bucket_evicted\",{destination=old.peer})end for peerId,state in pairs(linkHealth)do if not activeLink(value,peerId)and not routes[peerId]then linkHealth[peerId]=nil end end for peerId in pairs(advertisedRoutes)do if not activeLink(value,peerId)then advertisedRoutes[peerId]=nil end end boundMap(meshOffers,MESH_STATE_LIMIT,timestamp)boundMap(meshSeen,MESH_STATE_LIMIT,timestamp)end local function controller(value)value=value or config()if value.controller and tostring(value.controller)~=\"\"then local chosen=tostring(value.controller)if chosen==id()or activeLink(value,chosen)then return chosen end local known=routes[chosen]if known then if known.expires and known.expires>now()then return chosen end if type(known.candidates)==\"table\"then for _,candidate in ipairs(known.candidates)do if(candidate.expires or 0)>now()and activeLink(value,candidate.next)then return chosen end end end end trace(\"routing\",\"controller_unreachable\",{controller=chosen})end local selected=tonumber(id())or 0 for peerId in pairs(value.peers)do if activePeer(value,peerId)then local n=tonumber(peerId);if n and n<selected then selected=n end end end for peerId,route in pairs(routes)do local reachable=route.expires and route.expires>now()if type(route.candidates)==\"table\"then reachable=false for _,candidate in ipairs(route.candidates)do if(candidate.expires or 0)>now()then reachable=true;break end end end if reachable then local n=tonumber(peerId);if n and n<selected then selected=n end end end return tostring(selected)end local function meshConfig(value)value=value or config()local mesh=value.mesh if type(mesh)==\"table\"and type(mesh.id)==\"string\"and#mesh.id>=16 and type(mesh.root)==\"string\"and#mesh.root>=32 and tonumber(mesh.epoch)then return mesh end return nil end local function meshMaterial(packet)return canonical({protocol=packet.protocol,type=packet.type,from=packet.from,to=packet.to,mesh=packet.mesh,epoch=packet.epoch,nonce=packet.nonce,offer=packet.offer,timestamp=packet.timestamp})end local function meshTag(mesh,packet)local material=meshMaterial(packet)return material and password.hmacSha256(mesh.root,material)or nil end local function meshPacket(typeName,target,fields)local value,mesh=config(),meshConfig()if not mesh then return false,\"mesh enrollment is pending\"end local packet=copy(fields or{})packet.protocol,packet.type,packet.from,packet.to=PROTOCOL,typeName,id(),target and tostring(target)or 0 packet.mesh,packet.epoch,packet.timestamp=mesh.id,mesh.epoch,now()packet.tag=meshTag(mesh,packet)if not packet.tag then return false,\"could not authenticate mesh packet\"end openChannels(value)local links=wirelessModems()if#links==0 then return false,\"no wireless modem attached\"end local sent,err=transmit(links,value.channel or CHANNEL,packet)if sent then trace(\"routing\",typeName..\"_sent\",{to=packet.to,mesh=mesh.id:sub(1,8)})end return sent,err end local function deriveAutoEdge(mesh,peerId,firstNonce,secondNonce)local left,right=tostring(id()),tostring(peerId)if left>right then left,right=right,left end return password.hmacSha256(mesh.root,\"ceetos/mesh-edge/v1|\"..tostring(mesh.epoch)..\"|\"..left..\"|\"..right..\"|\"..tostring(firstNonce)..\"|\"..tostring(secondNonce))end local function ownsMeshOffer(peerId)local ours,theirs=tonumber(id()),tonumber(peerId)if ours and theirs then return ours<theirs end return tostring(id())<tostring(peerId)end local function installAutoEdge(mesh,peerId,firstNonce,secondNonce,peerLabel)peerId=tostring(peerId)local value=config()if activePeer(value,peerId)then return false,\"manual direct link already exists\"end local key=deriveAutoEdge(mesh,peerId,firstNonce,secondNonce)if not key then return false,\"could not derive mesh edge\"end autoEdges[peerId]={key=key,label=peerLabel,mesh=mesh.id,epoch=mesh.epoch,expires=now()+ROUTE_TTL,firstNonce=firstNonce,secondNonce=secondNonce}local state=healthFor(peerId)state.state,state.successes,state.misses,state.lastAuthenticated,state.stableSince=\"healthy\",2,0,now(),now()routesDirty,meshDirty=true,true trace(\"routing\",\"mesh_edge_active\",{peer=peerId,mesh=mesh.id:sub(1,8)})return true end local function meshEnrollmentAad(from,to,meshId,epoch,nonceCounter)return canonical({protocol=PROTOCOL,type=\"mesh_enroll\",from=tostring(from),to=tostring(to),mesh=meshId,epoch=tonumber(epoch),counter=tonumber(nonceCounter)})end local function sendEnrollment(peerId)local value,mesh,peer=config(),meshConfig(),activePeer(config(),peerId)if not mesh or not peer then return false,\"mesh or direct link unavailable\"end local _,nonceCounter=counter(peerId)local aad=meshEnrollmentAad(id(),peerId,mesh.id,mesh.epoch,nonceCounter)local nonce=meshCrypto.nonce(peer.key,nonceCounter,\"mesh-enroll|\"..id()..\"|\"..tostring(peerId))local plaintext=textutils.serialise({id=mesh.id,epoch=mesh.epoch,root=mesh.root},{compact=true})local envelope,err=meshCrypto.seal(peer.key,nonce,aad,plaintext)if not envelope then return false,err end local sent,sendErr=send(peerId,{type=\"mesh_enroll\",body={mesh=mesh.id,epoch=mesh.epoch,counter=nonceCounter,envelope=envelope},request_id=newRequestId()},peerId)if sent then trace(\"routing\",\"mesh_enrollment_sent\",{to=peerId,epoch=mesh.epoch})end return sent,sendErr end local function acceptEnrollment(from,peer,packet)if not activePeer(config(),from)then return rejectPacket(\"mesh enrollment requires a manual direct link\",packet)end local body=packet.body if type(body)~=\"table\"or type(body.mesh)~=\"string\"or type(body.envelope)~=\"table\"or not tonumber(body.epoch)or not tonumber(body.counter)then return rejectPacket(\"malformed_mesh_enrollment\",packet)end local aad=meshEnrollmentAad(from,id(),body.mesh,body.epoch,body.counter)local plaintext,err=meshCrypto.open(peer.key,body.envelope,aad)if not plaintext then return rejectPacket(err or\"mesh enrollment authentication failed\",packet)end local ok,mesh=pcall(textutils.unserialise,plaintext)if not ok or type(mesh)~=\"table\"or mesh.id~=body.mesh or tonumber(mesh.epoch)~=tonumber(body.epoch)or type(mesh.root)~=\"string\"or#mesh.root<32 then return rejectPacket(\"invalid_mesh_enrollment\",packet)end local value,existing=config(),meshConfig()if existing and existing.id==mesh.id and tonumber(existing.epoch)>tonumber(mesh.epoch)then return end value.mesh={id=mesh.id,epoch=tonumber(mesh.epoch),root=mesh.root,enrolledAt=now(),enrolledBy=tostring(from)}save(value)meshDirty,routesDirty=true,true trace(\"routing\",\"mesh_enrolled\",{from=from,mesh=mesh.id:sub(1,8),epoch=mesh.epoch})end local function ensureMeshEnrollment(timestamp)local value,mesh=config(),meshConfig()if not mesh then if(M._meshBootstrapAt or 0)>timestamp or controller(value)~=id()then return end value.mesh={id=password.newSalt(\"mesh-id:\"..id()),root=password.newSalt(\"mesh-root:\"..id()),epoch=1,createdAt=timestamp,controller=id()}save(value);mesh,meshDirty,routesDirty=value.mesh,true,true trace(\"routing\",\"mesh_created\",{mesh=mesh.id:sub(1,8),epoch=mesh.epoch})end for _,peerId in ipairs(allDirectLinks(value))do if activePeer(value,peerId)then local previous=meshEnrollmentSends[peerId]if not previous or previous.epoch~=mesh.epoch or timestamp-previous.at>=MESH_FULL_INTERVAL then local sent=sendEnrollment(peerId)if sent then meshEnrollmentSends[peerId]={epoch=mesh.epoch,at=timestamp}end end end end end local function meshBeacon(timestamp)local mesh=meshConfig()if not mesh or timestamp-lastMeshBeacon<MESH_BEACON_INTERVAL then return end lastMeshBeacon=timestamp meshPacket(\"mesh_beacon\",nil,{nonce=password.newSalt(\"mesh-beacon:\"..id()),label=label()})end local function verifyMeshPacket(packet)local mesh=meshConfig()if not mesh or type(packet)~=\"table\"or packet.protocol~=PROTOCOL or packet.mesh~=mesh.id or tonumber(packet.epoch)~=tonumber(mesh.epoch)then return false,\"mesh membership proof failed\"end if type(packet.from)~=\"string\"and type(packet.from)~=\"number\"then return false,\"invalid mesh sender\"end if type(packet.nonce)~=\"string\"or#packet.nonce<16 or#packet.nonce>128 then return false,\"invalid mesh nonce\"end if math.abs(now()-(tonumber(packet.timestamp)or 0))>ROUTE_TTL then return false,\"stale mesh packet\"end local material,tag=meshMaterial(packet),packet.tag local expected=material and password.hmacSha256(mesh.root,material)if type(tag)~=\"string\"or not expected or not password.constantTimeEqual(expected,tag)then return false,\"invalid mesh packet tag\"end local replay=tostring(packet.from)..\"|\"..tostring(packet.type)..\"|\"..tostring(packet.nonce)..\"|\"..tostring(packet.offer or\"\")if meshSeen[replay]and meshSeen[replay]+ROUTE_TTL>now()then return false,\"replayed mesh packet\"end meshSeen[replay]=now()return true,mesh end local function handleMeshPacket(packet,distance)local valid,meshOrErr=verifyMeshPacket(packet)if not valid then return rejectPacket(meshOrErr,packet,nil,distance)end local mesh,from=meshOrErr,tostring(packet.from)if from==id()then return end if packet.type==\"mesh_beacon\"then remember(from,packet.label,{mesh=mesh.id})if not activePeer(config(),from)and not autoEdges[from]and ownsMeshOffer(from)then local nonce=password.newSalt(\"mesh-offer:\"..from)meshOffers[from]={offer=nonce,expires=now()+DISCOVERY_TTL}meshPacket(\"mesh_edge_offer\",from,{nonce=nonce,label=label()})end return end if not isForUs(packet.to)then return rejectPacket(\"mesh packet addressed to another peer\",packet,nil,distance)end if packet.type==\"mesh_edge_offer\"then if activePeer(config(),from)then return end local response=password.newSalt(\"mesh-accept:\"..from)installAutoEdge(mesh,from,packet.nonce,response,packet.label)return meshPacket(\"mesh_edge_accept\",from,{nonce=response,offer=packet.nonce,label=label()})end if packet.type==\"mesh_edge_accept\"then local offer=meshOffers[from]if not offer or offer.expires<=now()or offer.offer~=packet.offer then return rejectPacket(\"unexpected mesh edge acceptance\",packet,nil,distance)end meshOffers[from]=nil return installAutoEdge(mesh,from,offer.offer,packet.nonce,packet.label)end end local function probeLinks(timestamp)local value=config()for _,peerId in ipairs(allDirectLinks(value))do local health=healthFor(peerId)local interval=health.state==\"offline\"and PROBE_INTERVAL*3 or PROBE_INTERVAL if timestamp-(health.lastAuthenticated or 0)>=interval and timestamp-(health.lastProbe or 0)>=interval then if health.awaiting then health.misses=(health.misses or 0)+1 health.loss=math.min(1,((health.loss or 0)*3+1)/4)local nextState=health.misses>=PROBE_OFFLINE and\"offline\"or(health.misses>=PROBE_DEGRADED and\"degraded\"or health.state)if nextState~=health.state then health.state,health.successes,health.recoveredAt=nextState,0,nil trace(\"routing\",\"link_\"..nextState,{peer=peerId,misses=health.misses})end routesDirty=true end health.awaiting,health.lastProbe,health.probeToken=true,timestamp,password.newSalt(\"mesh-probe:\"..peerId)send(peerId,{type=\"mesh_probe\",body={token=health.probeToken},request_id=newRequestId()},peerId)end end end local function advertisedMembers(value,peerId,timestamp)local members={}for other,manual in pairs(value.peers)do if other~=peerId and activeLink(value,other)and linkState(other)==\"healthy\"then members[other]={label=manual.label,mode=manual.mode,masterId=manual.masterId,hops=1,kind=\"direct\"}end end for other,edge in pairs(autoEdges)do if other~=peerId and edge.expires>timestamp and linkState(other)==\"healthy\"then members[other]={label=edge.label,mode=\"peer\",hops=1,kind=\"mesh\"}end end for other in pairs(routes)do if other~=peerId and not members[other]then local candidate=primaryCandidate(other,value,false)if candidate and candidate.next~=peerId and linkState(candidate.next)==\"healthy\"then members[other]={label=candidate.label,mode=candidate.mode,masterId=candidate.masterId,hops=candidate.hops,kind=candidate.kind or\"route\"}end end end return members end local function sameAdvertisement(left,right)local leftValue,leftErr=canonical(left)local rightValue,rightErr=canonical(right)return leftValue~=nil and rightValue~=nil and not leftErr and not rightErr and leftValue==rightValue end local function advertiseRoutes(force)local timestamp,value=now(),config()if not force and not routesDirty and timestamp-lastRouteAdvertisement<ROUTE_INTERVAL then return end lastRouteAdvertisement,routesDirty=timestamp,false local full=timestamp-lastMeshFull>=MESH_FULL_INTERVAL if full then lastMeshFull=timestamp end for _,peerId in ipairs(allDirectLinks(value))do if linkUsable(value,peerId,false)then local desired,previous=advertisedMembers(value,peerId,timestamp),advertisedRoutes[peerId]or{}local members,withdrawals={},{}if full then members=desired else for target,meta in pairs(desired)do if not sameAdvertisement(meta,previous[target])then members[target]=meta end end for target in pairs(previous)do if not desired[target]then withdrawals[#withdrawals+1]=target end end end table.sort(withdrawals,function(a,b)return tostring(a)<tostring(b)end)if full or next(members)~=nil or#withdrawals>0 then routeSequence=routeSequence+1 local body={sequence=routeSequence,routeVersion=2,full=full,controller=controller(value),members=members,withdrawals=withdrawals}if send(peerId,{type=\"route_advertise\",body=body,routeSafe=true,request_id=newRequestId()})then advertisedRoutes[peerId]=copy(desired)trace(\"routing\",full and\"route_snapshot_sent\"or\"route_delta_sent\",{to=peerId,changes=(full and 0 or#withdrawals)})end end else advertisedRoutes[peerId]=nil end end end function M.start()migrateV1Links()loadSecurity()assert(meshCrypto.selfTest(),\"CeetOS mesh cryptography self-test failed\")openChannels(config())local status=M.transportStatus()trace(\"transport\",status.wireless and\"wireless_modem_detected\"or\"wireless_modem_missing\",{name=status.name})routesDirty,M._meshBootstrapAt=true,now()end function M.transportStatus()local wireless=wirelessModems()transport.modem,transport.wireless=#modems()>0,#wireless>0 transport.name=wireless[1]and wireless[1].name or nil local out=copy(transport)out.wirelessLinks,out.wirelessLinkCount={},#wireless for _,item in ipairs(wireless)do out.wirelessLinks[#out.wirelessLinks+1]=item.name end out.usesAllWirelessLinks,out.protocol=true,2 out.directPeers,out.manualDirectPeers,out.meshPeers,out.rekeyRequiredPeers,out.routedPeers=0,0,0,0,0 out.healthyLinks,out.degradedLinks,out.offlineLinks=0,0,0 local value=config()for peerId,peer in pairs(value.peers)do if activePeer(value,peerId)then out.directPeers,out.manualDirectPeers=out.directPeers+1,out.manualDirectPeers+1 elseif peer.rekeyRequired then out.rekeyRequiredPeers=out.rekeyRequiredPeers+1 end end for peerId,edge in pairs(autoEdges)do if edge.expires>now()then out.meshPeers,out.directPeers=out.meshPeers+1,out.directPeers+1 end end for peerId,health in pairs(linkHealth)do if health.state==\"healthy\"then out.healthyLinks=out.healthyLinks+1 elseif health.state==\"degraded\"then out.degradedLinks=out.degradedLinks+1 elseif health.state==\"offline\"then out.offlineLinks=out.offlineLinks+1 end end for peerId,bucket in pairs(routes)do local usable=primaryCandidate(peerId,value,false)if usable and not value.peers[peerId]and not autoEdges[peerId]then out.routedPeers=out.routedPeers+1 end end local mesh=meshConfig(value)out.mesh=mesh and{id=mesh.id:sub(1,8),epoch=mesh.epoch,enrolled=true}or{enrolled=false}out.health={healthy=out.healthyLinks,degraded=out.degradedLinks,offline=out.offlineLinks}return out end function M.transportTrace(kind)if kind==\"discovery\"or kind==\"routing\"or kind==\"transport\"then return copy(traces[kind])end return{discovery=copy(traces.discovery),routing=copy(traces.routing),transport=copy(traces.transport)}end function M.discovery()expireState(now())return copy(discovery)end function M.discoveryStatus()expireState(now())local candidate=discovery and discovery.candidate and{id=discovery.candidate.from,label=discovery.candidate.label,mode=discovery.candidate.mode,master=discovery.candidate.master,}or nil local session=discovery and{session=discovery.id,state=discovery.state,mode=discovery.mode,master=discovery.masterSide,expires=discovery.expires,retries=discovery.retries or 0,candidate=candidate and copy(candidate)or nil,}or nil local state=session and session.state or(lastDiscovery and lastDiscovery.state or\"inactive\")return{state=state,active=session~=nil,lastState=lastDiscovery and lastDiscovery.state or\"inactive\",lastMessage=lastDiscovery and lastDiscovery.message or nil,session=session,searching=session and session.state==\"searching\"or false,candidate=candidate,discovered=#M.seenPeers(),transport=M.transportStatus(),message=(discovery and discovery.error)or(lastDiscovery and lastDiscovery.message),}end function M.startDiscovery(mode,masterSide,phrase)if activeSession()then return false,\"cancel the active discovery session first\"end local normalized,phraseErr=M.normalizePhrase(phrase)if not normalized then return false,phraseErr end mode=mode==\"master\"and\"master\"or\"peer\"masterSide=masterSide==\"joiner\"and\"joiner\"or\"initiator\"local sessionId=password.newSalt(\"discovery:\"..id())discovery={id=sessionId,state=\"hosting\",phrase=normalized,tag=phraseTag(normalized,sessionId,id()),mode=mode,masterSide=masterSide,label=label(),initiator=id(),expires=now()+DISCOVERY_TTL,retries=0,lastBroadcast=0,}local sent,err=discoveryAnnouncement()if not sent then discovery=nil;setLast(\"cancelled\",err);return false,err end discovery.lastBroadcast=now()setLast(\"hosting\")return true,{state=\"hosting\",session=sessionId,expires=discovery.expires}end function M.joinDiscovery(phrase)if activeSession()then return false,\"cancel the active discovery session first\"end local normalized,phraseErr=M.normalizePhrase(phrase)if not normalized then return false,phraseErr end local candidate for _,item in pairs(discovered)do if item.expires>now()and password.constantTimeEqual(item.tag or\"\",phraseTag(normalized,item.session,item.from))then candidate=item;break end end discovery={state=\"searching\",phrase=normalized,expires=now()+DISCOVERY_TTL,retries=0,lastQuery=0}if candidate then discovery.state,discovery.candidate=\"candidate\",candidate return true,{state=\"candidate\",candidate={id=candidate.from,label=candidate.label,mode=candidate.mode,master=candidate.master}}end local sent,err=broadcast({type=\"discover_query\"})if not sent then discovery=nil;setLast(\"cancelled\",err);return false,err end discovery.lastQuery=now()setLast(\"searching\",\"waiting for matching discovery announcement\")return true,{state=\"searching\"}end function M.confirmDiscovery()if not discovery or discovery.state~=\"candidate\"or not discovery.candidate then return false,\"no discovery candidate is awaiting confirmation\"end local candidate,value=discovery.candidate,config()local existing=value.peers[tostring(candidate.from)]if existing and not existing.rekeyRequired then return false,\"computer is already a network member\"end if routes[tostring(candidate.from)]and not existing then return false,\"computer is already a routed network member\"end local nonce=password.newSalt(\"pair-join:\"..candidate.session)local proof=joinProof(discovery.phrase,candidate.session,candidate.from,id(),nonce)discovery.state,discovery.joinNonce,discovery.joinProof,discovery.lastSent,discovery.retries=\"confirming\",nonce,proof,now(),0 local sent,err=handshake(candidate.from,{type=\"pair_join\",session=candidate.session,nonce=nonce,proof=proof,label=label()})if not sent then discovery.error=err;return false,err end trace(\"discovery\",\"pair_confirmation_requested\",{peer=candidate.from})return true end function M.cancelDiscovery()if discovery and discovery.state==\"hosting\"then broadcast({type=\"discover_cancel\",session=discovery.id})end discovery=nil setLast(\"cancelled\",\"discovery cancelled\")trace(\"discovery\",\"session_cancelled\")return true end function M.normalizePhrase(value)if type(value)~=\"string\"then return nil,\"phrase is required\"end if value:find(\"[%z\\1-\\31\\127]\")then return nil,\"phrase contains control characters\"end value=value:gsub(\"^%s+\",\"\"):gsub(\"%s+$\",\"\")if#value<8 then return nil,\"phrase must be at least 8 characters\"end if#value>128 then return nil,\"phrase must be at most 128 characters\"end return value end function M.tick()local timestamp=now()expireState(timestamp)if discovery then if discovery.state==\"hosting\"and timestamp-(discovery.lastBroadcast or 0)>=math.min(30000,DISCOVERY_INTERVAL*(2^math.min(discovery.retries or 0,4)))then local sent,err=discoveryAnnouncement()discovery.lastBroadcast=timestamp discovery.retries=(discovery.retries or 0)+1 if not sent then discovery.error=err end elseif discovery.state==\"searching\"and timestamp-(discovery.lastQuery or 0)>=DISCOVERY_INTERVAL then local sent,err=broadcast({type=\"discover_query\"})discovery.lastQuery,discovery.retries=timestamp,(discovery.retries or 0)+1 if not sent then discovery.error=err end elseif discovery.state==\"confirming\"and timestamp-(discovery.lastSent or 0)>=PAIR_RETRY then local candidate=discovery.candidate local sent,err=handshake(candidate.from,{type=\"pair_join\",session=candidate.session,nonce=discovery.joinNonce,proof=discovery.joinProof,label=label()})discovery.lastSent,discovery.retries=timestamp,(discovery.retries or 0)+1 if not sent then discovery.error=err end end end for sessionId,item in pairs(discovered)do if item.expires<=timestamp then discovered[sessionId]=nil end end for sessionId,record in pairs(confirmations)do if record.expires<=timestamp then confirmations[sessionId]=nil elseif timestamp-(record.lastSent or 0)>=PAIR_RETRY then queueConfirmation(record.peer,record)end end for peerId,bucket in pairs(routes)do local kept={}for _,candidate in ipairs(routeBucket(peerId).candidates)do if candidate.expires>timestamp then kept[#kept+1]=candidate end end bucket.candidates=kept if#kept==0 and not activeLink(config(),peerId)then routes[peerId],routesDirty=nil,true end end for peerId,edge in pairs(autoEdges)do if edge.expires<=timestamp then autoEdges[peerId],routesDirty=nil,true;trace(\"routing\",\"mesh_edge_expired\",{peer=peerId})end end for key,seenAt in pairs(meshSeen)do if seenAt+ROUTE_TTL<=timestamp then meshSeen[key]=nil end end for peerId,offer in pairs(meshOffers)do if offer.expires<=timestamp then meshOffers[peerId]=nil end end for requestId,seenAt in pairs(seenPackets)do if seenAt+ROUTE_TTL<=timestamp then seenPackets[requestId]=nil end end for requestId,route in pairs(reverseRoutes)do if route.expires<=timestamp then reverseRoutes[requestId]=nil end end boundMap(meshSeen,MESH_STATE_LIMIT,timestamp)boundMap(meshOffers,MESH_STATE_LIMIT,timestamp)pruneRouteBuckets(timestamp)ensureMeshEnrollment(timestamp)meshBeacon(timestamp)probeLinks(timestamp)advertiseRoutes(false)end function M.peers()local out,value,seen={},config(),read(SEEN_PATH,{})for peerId,peer in pairs(value.peers)do out[#out+1]={id=peerId,label=peer.label or(seen[peerId]and seen[peerId].label),role=peer.role or\"operator\",mode=peer.mode or\"peer\",master=peer.master==true,masterId=peer.masterId,direct=true,active=activePeer(value,peerId)~=nil,rekeyRequired=peer.rekeyRequired==true or peer.protocol~=2,health=linkState(peerId),auto=false,}end for peerId,edge in pairs(autoEdges)do if not value.peers[peerId]and edge.expires>now()then out[#out+1]={id=peerId,label=edge.label or(seen[peerId]and seen[peerId].label),role=\"mesh\",mode=\"peer\",direct=true,auto=true,active=true,health=linkState(peerId)}end end for peerId in pairs(routes)do if not value.peers[peerId]and not autoEdges[peerId]then local route=primaryCandidate(peerId,value,false)if route then out[#out+1]={id=peerId,label=route.label or(seen[peerId]and seen[peerId].label),role=\"routed\",mode=route.mode or\"peer\",masterId=route.masterId,routed=true,hops=route.hops,next=route.next,health=linkState(route.next),alternates=#routeBucket(peerId).candidates-1}end end end table.sort(out,function(a,b)return tonumber(a.id)<tonumber(b.id)end)return out end function M.directPeers()local out={}for _,peer in ipairs(M.peers())do if peer.direct and peer.active then out[#out+1]=peer end end return out end function M.seenPeers()local out={}for peerId,item in pairs(read(SEEN_PATH,{}))do if not item.seen or item.seen+DISCOVERY_TTL*2>now()then out[#out+1]={id=peerId,label=item.label,seen=item.seen,session=item.session}end end table.sort(out,function(a,b)return tonumber(a.id)<tonumber(b.id)end)return out end function M.routeStatus(target)local value,out=config(),{}local function row(peerId)local selected=primaryCandidate(peerId,value,false)if not selected then return end local health=healthFor(selected.next)local alternates={}for _,candidate in ipairs(validCandidates(peerId,value))do if tostring(candidate.next)~=tostring(selected.next)then local state=healthFor(candidate.next)alternates[#alternates+1]={next=candidate.next,hops=candidate.hops,kind=candidate.kind or\"route\",health=state.state,loss=state.loss or 0,rtt=state.rtt,distance=state.lastDistance}end end table.sort(alternates,compareCandidates)while#alternates>ROUTE_CANDIDATE_LIMIT-1 do table.remove(alternates)end out[#out+1]={id=tostring(peerId),label=selected.label,next=selected.next,hops=selected.hops,kind=selected.kind or\"route\",health=health.state,loss=health.loss or 0,rtt=health.rtt,distance=health.lastDistance,selectedAt=routeBucket(peerId).changedAt,reason=routeBucket(peerId).reason,alternates=alternates,}end if target then row(tostring(target))else local ids,seen={},{}for peerId in pairs(value.peers)do ids[#ids+1],seen[peerId]=peerId,true end for peerId in pairs(autoEdges)do if not seen[peerId]then ids[#ids+1],seen[peerId]=peerId,true end end for peerId in pairs(routes)do if not seen[peerId]then ids[#ids+1],seen[peerId]=peerId,true end end table.sort(ids,function(a,b)return tonumber(a)<tonumber(b)end)for _,peerId in ipairs(ids)do row(peerId)end end return out end function M.statusSnapshot()return{protocol=2,transport=M.transportStatus(),discovery=M.discoveryStatus(),peers=M.peers(),routes=M.routeStatus(),trace=M.transportTrace(),controller=M.controller()}end function M.controller()return controller()end function M.isDirectController(from,packet)return tostring(from)==tostring(controller())and type(packet)==\"table\"and tostring(packet.origin or\"\")==tostring(from)end function M.setController(value)assert(tonumber(value),\"controller must be a computer ID\")local saved=config();saved.controller=tostring(value);save(saved);routesDirty=true audit.log(\"local\",\"jobs.controller\",{controller=saved.controller})return saved.controller end function M.request(target,typeName,body,options)if type(typeName)~=\"string\"or#typeName==0 or#typeName>64 then return false,\"invalid request type\"end local destination=tostring(target)local value=config()if not primaryCandidate(destination,value,options and options.safe==true)then return false,\"peer is unreachable, degraded, or requires rekey\"end return send(destination,{type=typeName,body=body or{},origin=id(),routeSafe=options and options.safe==true,balanceSafe=options and options.safe==true,confidential=options and options.confidential==true,request_id=newRequestId()})end function M.reply(request,typeName,body,options)if type(request)~=\"table\"or type(typeName)~=\"string\"or#typeName==0 or#typeName>64 then return false,\"invalid reply\"end local requestId,destination=request.request_id,tostring(request.origin or\"\")local reverse=type(requestId)==\"string\"and reverseRoutes[requestId]or nil if destination==\"\"or not reverse or reverse.expires<=now()or reverse.origin~=destination then return false,\"reverse reply route is unavailable\"end return send(destination,{type=typeName,body=body or{},origin=id(),destination=destination,reply_to=requestId,routeSafe=options and options.safe==true,confidential=options and options.confidential==true,request_id=newRequestId(),},reverse.previous)end function M.offer()return false,\"legacy pairing is disabled; use phrase discovery\"end function M.accept()return false,\"legacy pairing is disabled; use phrase discovery\"end function M.discover()return broadcast({type=\"discover_query\"})end rejectPacket=function(reason,packet,channel,distance)transport.rejected=transport.rejected+1 trace(\"transport\",\"packet_rejected\",{reason=reason,type=type(packet)==\"table\"and packet.type or nil,channel=channel,distance=distance,from=type(packet)==\"table\"and packet.from or nil})end local function handleDiscovery(packet,channel,distance)local from=tostring(packet.from)if packet.type==\"discover_cancel\"and isBroadcast(packet.to)then discovered[tostring(packet.session)]=nil trace(\"discovery\",\"cancel_received\",{from=from,distance=distance})return end if packet.type==\"discover_query\"and isBroadcast(packet.to)and discovery and discovery.state==\"hosting\"then discoveryAnnouncement()trace(\"discovery\",\"query_answered\",{from=from,distance=distance})return end if packet.type==\"discover\"and isBroadcast(packet.to)and from~=id()then if type(packet.session)~=\"string\"or#packet.session<16 or type(packet.tag)~=\"string\"or#packet.tag~=64 then return rejectPacket(\"malformed_discovery\",packet,channel,distance)end local expires=tonumber(packet.expires)or(now()+DISCOVERY_TTL)discovered[packet.session]={session=packet.session,from=from,tag=packet.tag,label=tostring(packet.label or(\"Computer \"..from)):sub(1,128),mode=packet.mode==\"master\"and\"master\"or\"peer\",master=packet.master==\"joiner\"and\"joiner\"or\"initiator\",expires=math.min(expires,now()+DISCOVERY_TTL)}remember(from,packet.label,{session=packet.session})trace(\"discovery\",\"announcement_received\",{from=from,label=packet.label,distance=distance})if discovery and discovery.state==\"searching\"and password.constantTimeEqual(packet.tag,phraseTag(discovery.phrase,packet.session,from))then local value,existing=config(),config().peers[from]if existing and not existing.rekeyRequired then markRejected(\"computer is already a direct peer\")elseif routes[from]and not existing then markRejected(\"computer is already a routed network member\")else discovery.state,discovery.candidate,discovery.error=\"candidate\",discovered[packet.session],nil setLast(\"candidate\",\"matching computer found; confirm pairing\")trace(\"discovery\",\"candidate_found\",{from=from,label=packet.label,distance=distance})end end return end end local function handlePairJoin(packet,distance)if not discovery or discovery.state~=\"hosting\"or packet.session~=discovery.id then return end local from=tostring(packet.from)local value,existing=config(),config().peers[from]if(existing and not existing.rekeyRequired)or(routes[from]and not existing)then handshake(from,{type=\"pair_reject\",session=packet.session,reason=\"already_network_member\"})trace(\"discovery\",\"pair_rejected\",{from=from,reason=\"already_network_member\"})return end if type(packet.nonce)~=\"string\"or#packet.nonce<16 or#packet.nonce>128 or type(packet.proof)~=\"string\"or#packet.proof~=64 then return rejectPacket(\"malformed_pair_join\",packet,nil,distance)end local expected=joinProof(discovery.phrase,discovery.id,id(),from,packet.nonce)if not password.constantTimeEqual(expected,packet.proof)then discovery.failures=(discovery.failures or 0)+1 if discovery.failures>=5 then markRejected(\"too many invalid pairing proofs\")end handshake(from,{type=\"pair_reject\",session=packet.session,reason=\"phrase_mismatch\"})trace(\"discovery\",\"pair_rejected\",{from=from,reason=\"phrase_mismatch\"})return end local masterId=discovery.mode==\"master\"and(discovery.masterSide==\"initiator\"and id()or from)or\"\"local key,keyErr=linkKey(discovery.phrase,discovery.id,id(),from,packet.nonce)if not key then return markRejected(keyErr)end persistPair(from,key,{mode=discovery.mode,label=packet.label},masterId)local record={id=discovery.id,peer=from,joinNonce=packet.nonce,mode=discovery.mode,masterId=masterId,label=label(),expires=now()+DISCOVERY_TTL}record.confirmProof=confirmProof(discovery.phrase,record.id,id(),from,record.joinNonce,record.mode,record.masterId)discovery=nil setLast(\"paired\",\"awaiting pairing acknowledgement\")trace(\"discovery\",\"pair_join_verified\",{from=from,distance=distance})return queueConfirmation(from,record)end local function handlePairConfirm(packet,distance)if not discovery or discovery.state~=\"confirming\"or not discovery.candidate or packet.session~=discovery.candidate.session then return end local from=tostring(packet.from)if from~=tostring(discovery.candidate.from)or packet.nonce~=discovery.joinNonce then return rejectPacket(\"unexpected_pair_confirmation\",packet,nil,distance)end local expected=confirmProof(discovery.phrase,packet.session,from,id(),discovery.joinNonce,packet.mode==\"master\"and\"master\"or\"peer\",packet.master or\"\")if not password.constantTimeEqual(expected,packet.proof or\"\")then return markRejected(\"pair confirmation proof did not match\")end local key,err=linkKey(discovery.phrase,packet.session,from,id(),discovery.joinNonce)if not key then return markRejected(err)end persistPair(from,key,{mode=packet.mode,label=packet.label},packet.master)local sessionId=packet.session discovery=nil setLast(\"paired\",\"paired with \"..tostring(packet.label or from))handshake(from,{type=\"pair_ack\",session=sessionId,proof=password.hmacSha256(key,\"ceetos/pair/ack/v2|\"..sessionId)})trace(\"discovery\",\"pair_confirmed\",{from=from,distance=distance})return true end local function handlePairAck(packet)local record=confirmations[packet.session]if not record or tostring(record.peer)~=tostring(packet.from)then return end local value,peer=config(),activePeer(config(),record.peer)if not peer then return end local expected=password.hmacSha256(peer.key,\"ceetos/pair/ack/v2|\"..packet.session)if password.constantTimeEqual(expected,packet.proof or\"\")then confirmations[packet.session]=nil setLast(\"paired\",\"paired with \"..tostring(record.peer))routesDirty=true trace(\"discovery\",\"pair_acknowledged\",{from=packet.from})end end local function handleRouteAdvertisement(from,packet)local body=packet.body if type(body)~=\"table\"or type(body.sequence)~=\"number\"or type(body.members)~=\"table\"or(body.withdrawals~=nil and type(body.withdrawals)~=\"table\")then return rejectPacket(\"malformed_route_advertisement\",packet)end local key=tostring(from)M._routeSequences=M._routeSequences or{}if(M._routeSequences[key]or-1)>=body.sequence then return end M._routeSequences[key]=body.sequence local value,changed,count=config(),false,0 if body.controller and not value.controller then value.controller,changed=tostring(body.controller),true end local announced={}for advertisedId,meta in pairs(body.members)do count=count+1 if count>MAX_PACKET_TABLE then return rejectPacket(\"route_advertisement_too_large\",packet)end local peerId=tostring(advertisedId)announced[peerId]=true if peerId~=id()and peerId~=key and type(meta)==\"table\"then local hops=math.floor(tonumber(meta.hops)or 0)+1 if hops>1 and hops<=PACKET_TTL and type(meta.label)~=\"table\"and type(meta.mode)~=\"table\"then local bucket,found=routeBucket(peerId),nil for _,candidate in ipairs(bucket.candidates)do if tostring(candidate.next)==key then found=candidate;break end end if found then local metadataChanged=found.hops~=hops or found.label~=meta.label or found.mode~=meta.mode or tostring(found.masterId or\"\")~=tostring(meta.masterId or\"\")or found.kind~=(meta.kind or\"route\")found.hops,found.expires=hops,now()+ROUTE_TTL found.label,found.mode,found.masterId,found.kind=meta.label,meta.mode,meta.masterId,meta.kind or\"route\"if metadataChanged then changed=true end else bucket.candidates[#bucket.candidates+1]={next=key,hops=hops,expires=now()+ROUTE_TTL,label=type(meta.label)==\"string\"and meta.label:sub(1,128)or nil,mode=meta.mode==\"master\"and\"master\"or\"peer\",masterId=meta.masterId and tostring(meta.masterId)or nil,kind=meta.kind==\"mesh\"and\"mesh\"or\"route\"}table.sort(bucket.candidates,compareCandidates)while#bucket.candidates>ROUTE_CANDIDATE_LIMIT do table.remove(bucket.candidates)end changed=true end end end end local withdrawals=body.withdrawals or{}for _,withdrawnId in pairs(withdrawals)do count=count+1 if count>MAX_PACKET_TABLE then return rejectPacket(\"route_advertisement_too_large\",packet)end local bucket=routes[tostring(withdrawnId)]if bucket and type(bucket.candidates)==\"table\"then local kept={}for _,candidate in ipairs(bucket.candidates)do if tostring(candidate.next)~=key then kept[#kept+1]=candidate else changed=true end end bucket.candidates=kept end end if body.full==true then for peerId,bucket in pairs(routes)do if type(bucket.candidates)==\"table\"and not announced[tostring(peerId)]then local kept={}for _,candidate in ipairs(bucket.candidates)do if tostring(candidate.next)~=key then kept[#kept+1]=candidate else changed=true end end bucket.candidates=kept end end end if changed then if value.controller then save(value)end;routesDirty=true;trace(\"routing\",\"route_table_updated\",{from=from})end end local function handleProbe(from,packet)local token=type(packet.body)==\"table\"and packet.body.token if type(token)~=\"string\"or#token<16 or#token>128 then return rejectPacket(\"malformed link probe\",packet)end touchLink(from,nil,\"probe\")return send(from,{type=\"mesh_probe_ack\",body={token=token},request_id=newRequestId()},from)end local function handleProbeAck(from,packet)local health,token=healthFor(from),type(packet.body)==\"table\"and packet.body.token if not health.awaiting or token~=health.probeToken then return rejectPacket(\"unexpected link probe acknowledgement\",packet)end local sample=math.max(0,now()-(health.lastProbe or now()))health.rtt=health.rtt and math.floor((health.rtt*3+sample)/4)or sample health.awaiting,health.misses,health.probeToken=false,0,nil touchLink(from,health.lastDistance,\"probe_ack\")end function M.handle(event)if event[1]~=\"modem_message\"then return end local channel,packet,distance=event[3],event[5],event[6]local expected=false for _,item in ipairs(transport.channels or{})do if channel==item then expected=true;break end end if not expected then return rejectPacket(\"unexpected_channel\",packet,channel,distance)end transport.lastReceive,transport.lastDistance=now(),distance if type(packet)~=\"table\"then return rejectPacket(\"packet_not_table\",packet,channel,distance)end if packet.protocol==PUBLIC_UPDATE_PROTOCOL then if channel~=DISCOVERY_CHANNEL or not PUBLIC_UPDATE_TYPES[packet.type]or type(packet.from)~=\"string\"and type(packet.from)~=\"number\"or not(isForUs(packet.to)or isBroadcast(packet.to))then return rejectPacket(\"invalid_public_update_packet\",packet,channel,distance)end local encoded,encodeErr=canonical(packet.body or{})if not encoded then return rejectPacket(\"invalid_public_update_body:\"..tostring(encodeErr),packet,channel,distance)end trace(\"transport\",\"public_update_received\",{type=packet.type,from=packet.from,distance=distance,bytes=#encoded})if M.publicHandler then return M.publicHandler(packet,distance)end return end local discoveryPacket=packet.type==\"discover\"or packet.type==\"discover_query\"or packet.type==\"discover_cancel\"local handshakePacket=packet.type==\"pair_join\"or packet.type==\"pair_confirm\"or packet.type==\"pair_ack\"or packet.type==\"pair_reject\"local meshPacketType=packet.type==\"mesh_beacon\"or packet.type==\"mesh_edge_offer\"or packet.type==\"mesh_edge_accept\"if discoveryPacket then if packet.protocol~=PROTOCOL or channel~=DISCOVERY_CHANNEL then return rejectPacket(\"invalid_discovery_transport\",packet,channel,distance)end return handleDiscovery(packet,channel,distance)end if handshakePacket then if not isForUs(packet.to)then return end if packet.protocol~=PROTOCOL or channel~=(config().channel or CHANNEL)then return rejectPacket(\"invalid_handshake_transport\",packet,channel,distance)end if packet.type==\"pair_join\"then return handlePairJoin(packet,distance)elseif packet.type==\"pair_confirm\"then return handlePairConfirm(packet,distance)elseif packet.type==\"pair_ack\"then return handlePairAck(packet)elseif packet.type==\"pair_reject\"and discovery then markRejected(\"pairing rejected: \"..tostring(packet.reason or\"remote peer rejected it\"));return end return end if meshPacketType then if packet.protocol~=PROTOCOL or channel~=(config().channel or CHANNEL)then return rejectPacket(\"invalid mesh transport\",packet,channel,distance)end if packet.type~=\"mesh_beacon\"and not isForUs(packet.to)then return end return handleMeshPacket(packet,distance)end if not isForUs(packet.to)then return end local value=config()local valid,peerOrReason=verifyPacket(packet,value)if not valid then return rejectPacket(peerOrReason,packet,channel,distance)end local peer,from=peerOrReason,tostring(packet.from)if packet.confidential==true then local opened,openErr=openBody(peer,packet)if not opened then return rejectPacket(openErr or\"could not open confidential packet\",packet,channel,distance)end packet.body=opened end touchLink(from,distance,\"authenticated_packet\")if autoEdges[from]then autoEdges[from].expires=now()+ROUTE_TTL end trace(\"routing\",\"packet_received\",{type=packet.type,from=from,destination=packet.destination,distance=distance})if packet.type==\"mesh_enroll\"then return acceptEnrollment(from,peer,packet)end if packet.type==\"mesh_probe\"then return handleProbe(from,packet)end if packet.type==\"mesh_probe_ack\"then return handleProbeAck(from,packet)end if packet.type==\"route_advertise\"then return handleRouteAdvertisement(from,packet)end if packet.reply_to and packet.destination and tostring(packet.destination)~=id()then local reverse=reverseRoutes[packet.reply_to]if not reverse or reverse.expires<=now()or reverse.origin~=tostring(packet.destination)then return rejectPacket(\"reverse reply route unavailable\",packet,channel,distance)end local requestId=tostring(packet.request_id or\"\")if seenPackets[requestId]then return trace(\"routing\",\"forward_duplicate\",{from=from,type=packet.type})end seenPackets[requestId]=now()if(tonumber(packet.ttl)or 0)<=1 then return rejectPacket(\"TTL exhausted\",packet,channel,distance)end packet.ttl=packet.ttl-1 trace(\"routing\",\"reverse_reply_forwarded\",{from=from,to=reverse.previous,type=packet.type})return send(packet.destination,packet,reverse.previous)end if packet.destination and tostring(packet.destination)~=id()then local requestId=tostring(packet.request_id or\"\")if requestId==\"\"or seenPackets[requestId]then return trace(\"routing\",\"forward_duplicate\",{from=from,type=packet.type})end seenPackets[requestId]=now()local remembered,rememberErr=rememberReverse(packet,from)if not remembered then return rejectPacket(rememberErr or\"could not record reverse route\",packet,channel,distance)end if(tonumber(packet.ttl)or 0)<=1 then return rejectPacket(\"TTL exhausted\",packet,channel,distance)end packet.ttl=packet.ttl-1 return send(packet.destination,packet)end local requestId=tostring(packet.request_id or\"\")if requestId==\"\"then return rejectPacket(\"missing request ID\",packet,channel,distance)end if seenPackets[requestId]then return trace(\"routing\",\"destination_duplicate\",{from=from,type=packet.type})end seenPackets[requestId]=now()local remembered,rememberErr=rememberReverse(packet,from)if not remembered then return rejectPacket(rememberErr or\"could not record reverse route\",packet,channel,distance)end packet.authenticatedHop,packet.originVerified=from,false if M.handler then return M.handler(from,peer,packet)end end return M",
  ["ceetos/lib/network_ipc.lua"] = "local store=require(\"ceetos.lib.store\")local M={}local ROOT=\"/ceetos/data/network-ipc\"local COMMANDS=ROOT..\"/commands\"local RESULTS=ROOT..\"/results\"local function ensure(path)if not fs.exists(path)then fs.makeDir(path)end end local function safeId(value)return type(value)==\"string\"and value:match(\"^[%w_%-%.]+$\")and#value<=160 end local function path(directory,requestId)return fs.combine(directory,requestId..\".lua\")end function M.submit(request)if type(request)~=\"table\"or not safeId(request.id)then return false,\"invalid IPC request ID\"end ensure(ROOT);ensure(COMMANDS);ensure(RESULTS)local target=path(COMMANDS,request.id)if fs.exists(target)then return false,\"IPC request already exists\"end return store.write(target,request)end function M.take()ensure(ROOT);ensure(COMMANDS);ensure(RESULTS)local names=fs.list(COMMANDS)table.sort(names)for _,name in ipairs(names)do local requestId=name:match(\"^([%w_%-%.]+)%.lua$\")if requestId and safeId(requestId)then local target=fs.combine(COMMANDS,name)store.invalidate(target)local request=store.readFresh(target,nil)fs.delete(target)if type(request)==\"table\"and request.id==requestId then return request end end end end function M.reply(requestId,value)if not safeId(requestId)or type(value)~=\"table\"then return false,\"invalid IPC result\"end ensure(ROOT);ensure(COMMANDS);ensure(RESULTS)return store.write(path(RESULTS,requestId),value)end function M.poll(requestId,consume)if not safeId(requestId)then return nil,\"invalid IPC request ID\"end local target=path(RESULTS,requestId)if not fs.exists(target)then return nil end local handle=fs.open(target,\"r\")if not handle then return nil end local raw=handle.readAll()handle.close()local ok,result=pcall(textutils.unserialise,raw)if not ok or type(result)~=\"table\"or result.id~=requestId then return nil,\"invalid IPC result\"end if consume then fs.delete(target)end return result end function M.prune(limit)ensure(ROOT);ensure(COMMANDS);ensure(RESULTS)limit=math.max(1,math.floor(tonumber(limit)or 32))local names={}for _,name in ipairs(fs.list(RESULTS))do if name:match(\"^[%w_%-%.]+%.lua$\")then names[#names+1]=name end end table.sort(names)while#names>limit do fs.delete(fs.combine(RESULTS,table.remove(names,1)))end end function M.status()ensure(ROOT);ensure(COMMANDS);ensure(RESULTS)local function count(directory)local total=0 for _,name in ipairs(fs.list(directory))do if name:match(\"^[%w_%-%.]+%.lua$\")then total=total+1 end end return total end return{commands=count(COMMANDS),results=count(RESULTS)}end return M",
  ["ceetos/lib/auth_client.lua"] = "local store=require(\"ceetos.lib.store\")local password=require(\"ceetos.lib.password\")local networkIpc=require(\"ceetos.lib.network_ipc\")local M={}local REPLIES=\"/ceetos/data/auth-replies.lua\"local sequence=0 local function now()return os.epoch(\"utc\")end local function authority()store.invalidate(\"/ceetos/data/auth-authority.lua\")local value=store.read(\"/ceetos/data/auth-authority.lua\",nil)return type(value)==\"table\"and value.active==true and value or nil end local function requestId(kind)sequence=sequence+1 return table.concat({\"auth\",kind,tostring(os.getComputerID()),tostring(now()),tostring(sequence)},\"-\")end local function take(id)store.invalidate(REPLIES)local replies=store.read(REPLIES,{})local row=replies[id]if row then replies[id]=nil;store.write(REPLIES,replies)end return row end function M.receive(body)if type(body)~=\"table\"or type(body.request_id)~=\"string\"or#body.request_id>160 then return false,\"invalid authority reply\"end local replies=store.read(REPLIES,{})replies[body.request_id]={ok=body.ok==true,result=body.result,error=body.error,at=now()}local rows={}for id,row in pairs(replies)do rows[#rows+1]={id=id,at=tonumber(row.at)or 0}end table.sort(rows,function(a,b)return a.at>b.at end)while#rows>32 do replies[table.remove(rows).id]=nil end return store.write(REPLIES,replies)end local function send(typeName,body,timeout)local server=authority()if not server then return nil,\"no Auth Server is reachable\"end local id=body.request_id or requestId(typeName)body.request_id=id local command={id=\"auth-\"..id,action=\"auth_send\",target=server.id,type=typeName,body=body}local ok,err=networkIpc.submit(command)if not ok then return nil,err or\"could not reach CeetOS network service\"end local deadline=now()+(timeout or 6000)while now()<deadline do local ack=networkIpc.poll(command.id,true)if ack and ack.ok~=true then return nil,ack.error or\"Auth Server request was not sent\"end local reply=take(id)if reply then return reply.ok and reply.result or nil,reply.error or\"Auth Server rejected request\"end sleep(0.05)end return nil,\"Auth Server did not respond\"end local function loginProof(verifier,server,request,challenge,expires)return password.hmacSha256(verifier,table.concat({\"ceetos/auth/login/v1\",tostring(server),tostring(os.getComputerID()),tostring(request),tostring(challenge),tostring(expires)},\"|\"))end function M.login(name,plainPassword)if type(name)~=\"string\"or type(plainPassword)~=\"string\"then return false,\"invalid credentials\"end local cloud=require(\"ceetos.lib.cloud_sync\")if cloud.authOnline()then return cloud.login(name,plainPassword)end local request=requestId(\"begin\")local begin,beginErr=send(\"auth_login_begin\",{request_id=request,username=name,node=tostring(os.getComputerID())})if not begin then return false,beginErr end local verifier,deriveErr=password.derive(plainPassword,begin.salt,begin.workFactor)if not verifier then return false,deriveErr end local proof=loginProof(verifier,begin.authority,request,begin.challenge,begin.expires)local result,proofErr=send(\"auth_login_proof\",{request_id=request,username=name,node=tostring(os.getComputerID()),challenge=begin.challenge,proof=proof})if not result then return false,proofErr end local auth=require((\"ceetos.lib.auth\"))local saved,saveErr=auth.saveCentralSession(result.session)if not saved then return false,saveErr end if type(result.directory)==\"table\"then auth.updateDirectory(result.directory,result.revision)end return true end function M.mutate(action,fields)local auth=require((\"ceetos.lib.auth\"))local cloud=require(\"ceetos.lib.cloud_sync\")if cloud.authOnline()then return cloud.mutate(action,fields)end local current,server=auth.refreshSession(),authority()if not current or not current.central or not server then return false,\"an Auth Server login is required\"end local result,err=send(\"auth_mutate\",{action=action,fields=fields,session=current.nonce,node=tostring(os.getComputerID()),revision=current.accountRevision})if not result then return false,err end if type(result.directory)==\"table\"then auth.updateDirectory(result.directory,result.revision)end return true end return M",
  ["ceetos/lib/cloud.lua"] = "local store=require(\"ceetos.lib.store\")local password=require(\"ceetos.lib.password\")local profile=require(\"ceetos.lib.profile\")local M={}M.PATH=\"/ceetos/data/cloud.lua\"M.MAX_BODY=48*1024 M.MAX_RESPONSE=64*1024 M.DEFAULTS={auth=\"https://auth.ceet.uk\",recipe=\"https://recipe.ceet.uk\",dashboard=\"https://dash.ceet.uk\",}local function now()return os.epoch(\"utc\")end local function validUrl(value)if type(value)~=\"string\"or#value>160 then return false end return value:match(\"^https://[%w%-%.]+%.ceet%.uk$\")~=nil end local function validId(value)return type(value)==\"string\"and value:match(\"^[%w_.%-]+$\")~=nil and#value<=96 end local function copy(value)local out={}for key,item in pairs(value or{})do out[key]=item end return out end local function normalise(value)value=type(value)==\"table\"and value or{}local urls=type(value.urls)==\"table\"and value.urls or{}local result={schema=1,enabled=value.enabled==true,urls={auth=validUrl(urls.auth)and urls.auth or M.DEFAULTS.auth,recipe=validUrl(urls.recipe)and urls.recipe or M.DEFAULTS.recipe,dashboard=validUrl(urls.dashboard)and urls.dashboard or M.DEFAULTS.dashboard,},node=type(value.node)==\"table\"and copy(value.node)or nil,}if result.node and(not validId(result.node.id)or type(result.node.secret)~=\"string\"or#result.node.secret<32 or#result.node.secret>192)then result.node=nil end return result end function M.load()store.invalidate(M.PATH)return normalise(store.read(M.PATH,{}))end function M.save(value)local clean=normalise(value)return store.write(M.PATH,clean)end function M.configure(urls)local value=M.load()urls=type(urls)==\"table\"and urls or{}for key in pairs(M.DEFAULTS)do if urls[key]~=nil then if not validUrl(urls[key])then return false,\"invalid \"..key..\" cloud URL\"end value.urls[key]=urls[key]end end return M.save(value)end function M.clear()local value=M.load();value.enabled,value.node=false,nil return M.save(value)end function M.publicStatus()local value=M.load()return{enabled=value.enabled,enrolled=value.node~=nil,node=value.node and value.node.id or nil,urls=copy(value.urls),profile=profile.id()}end local function readBounded(handle,limit)local chunks,total={},0 while true do local part=handle.read(math.min(4096,limit-total+1))if not part or part==\"\"then break end total=total+#part if total>limit then return nil,\"cloud response is too large\"end chunks[#chunks+1]=part end return table.concat(chunks)end local function json(value)local ok,result=pcall(textutils.unserialiseJSON,value)return ok and type(result)==\"table\"and result or nil end local function canonical(node,timestamp,nonce,method,path,body)local digest=assert(password.sha256(body))return table.concat({\"ceetos-cloud-node-v1\",node,tostring(timestamp),nonce,method,path,digest},\"\\n\")end local nonceCounter=0 local function nonce()nonceCounter=nonceCounter+1 return password.newSalt(\"cloud:\"..tostring(nonceCounter))end local function perform(url,method,path,body,headers)if not http or type(http.post)~=\"function\"then return nil,\"HTTP is unavailable\"end local response local ok,err=pcall(function()response=http.post(url..path,body,headers)end)if not ok or not response then return nil,tostring(err or\"cloud request failed\")end local raw,readErr=readBounded(response,M.MAX_RESPONSE)pcall(response.close)if not raw then return nil,readErr end local decoded=json(raw)if not decoded then return nil,\"cloud returned invalid JSON\"end if decoded.ok==false then return nil,tostring(decoded.error or\"cloud rejected request\"):sub(1,180)end return decoded end function M.enroll(code)if type(code)~=\"string\"or#code<12 or#code>128 or code:find(\"[%z\\1-\\31\\127]\")then return nil,\"invalid enrollment code\"end local value=M.load()local payload=textutils.serialiseJSON({code=code,profile=profile.id(),label=os.getComputerLabel()or(\"Computer \"..tostring(os.getComputerID())),computerId=tostring(os.getComputerID())})if#payload>M.MAX_BODY then return nil,\"enrollment request is too large\"end local result,err=perform(value.urls.auth,\"POST\",\"/v1/nodes/enroll\",payload,{[\"Content-Type\"]=\"application/json\"})if not result then return nil,err end if type(result.node)~=\"table\"or not validId(result.node.id)or type(result.node.secret)~=\"string\"or#result.node.secret<32 then return nil,\"cloud returned invalid enrollment\"end value.enabled,value.node=true,{id=result.node.id,secret=result.node.secret,enrolledAt=now()}local saved,saveErr=M.save(value)if not saved then return nil,saveErr or\"could not save cloud enrollment\"end return M.publicStatus()end function M.call(service,path,payload)local value=M.load()if not value.enabled or not value.node then return nil,\"cloud node is not enrolled\"end if not M.DEFAULTS[service]or type(path)~=\"string\"or not path:match(\"^/v1/[%w%-%._/]+$\")or#path>128 then return nil,\"invalid cloud endpoint\"end local body=textutils.serialiseJSON(type(payload)==\"table\"and payload or{})if#body>M.MAX_BODY then return nil,\"cloud request is too large\"end local timestamp,requestNonce=now(),nonce()local signature=password.hmacSha256(value.node.secret,canonical(value.node.id,timestamp,requestNonce,\"POST\",path,body))if not signature then return nil,\"could not sign cloud request\"end return perform(value.urls[service],\"POST\",path,body,{[\"Content-Type\"]=\"application/json\",[\"X-CeetOS-Node\"]=value.node.id,[\"X-CeetOS-Time\"]=tostring(timestamp),[\"X-CeetOS-Nonce\"]=requestNonce,[\"X-CeetOS-Signature\"]=signature,})end return M",
  ["ceetos/lib/cloud_sync.lua"] = "local cloud=require(\"ceetos.lib.cloud\")local store=require(\"ceetos.lib.store\")local password=require(\"ceetos.lib.password\")local profile=require(\"ceetos.lib.profile\")local TELEMETRY_MODULE=\"ceetos.lib.\"..\"telemetry\"local RECIPE_SERVICE_MODULE=\"ceetos.lib.\"..\"recipe_service\"local M={}local STATE=\"/ceetos/data/cloud-state.lua\"local INTERVALS={telemetry=60000,authority=30000,recipes=30000}local function now()return os.epoch(\"utc\")end local function defaults()return{schema=1,revision=0,auth={online=false,next=0},recipe={online=false,next=0,revision=0},telemetry={next=0},lastError=nil}end local function state()store.invalidate(STATE)local value=store.read(STATE,defaults())for key,fallback in pairs(defaults())do if value[key]==nil then value[key]=fallback end end for key,fallback in pairs(defaults().recipe)do if value.recipe[key]==nil then value.recipe[key]=fallback end end return value end local function save(value)value.revision=(tonumber(value.revision)or 0)+1 return store.write(STATE,value)end local function errorState(value,message)value.lastError=tostring(message or\"cloud request failed\"):sub(1,180)end function M.status()local value,cfg=state(),cloud.publicStatus()return{enabled=cfg.enabled,enrolled=cfg.enrolled,node=cfg.node,urls=cfg.urls,authOnline=value.auth.online==true,recipeOnline=value.recipe.online==true,lastSync=value.lastSync,lastError=value.lastError}end function M.configure(urls)return cloud.configure(urls)end function M.enroll(code)return cloud.enroll(code)end function M.clear()local ok,err=cloud.clear();if ok then store.write(STATE,defaults())end return ok,err end function M.authOnline()return M.status().authOnline==true end function M.recipeOnline()return M.status().recipeOnline==true end local function cloudAuthority(result)local auth=require(\"ceetos.lib.auth\")if type(result)~=\"table\"or type(result.directory)~=\"table\"then return false,\"invalid cloud authority response\"end local cfg=cloud.publicStatus()local record={id=\"cloud:\"..tostring(cfg.urls.auth),term=tonumber(result.term)or 0,revision=tonumber(result.revision)or 0,directory=result.directory}return pcall(auth.acceptAuthority,record)end function M.login(name,plainPassword)if type(name)~=\"string\"or type(plainPassword)~=\"string\"then return false,\"invalid credentials\"end local begin,beginErr=cloud.call(\"auth\",\"/v1/auth/login/begin\",{username=name,node=tostring(os.getComputerID())})if not begin then return false,beginErr end if type(begin.salt)~=\"string\"or type(begin.workFactor)~=\"number\"or type(begin.challenge)~=\"string\"or type(begin.expires)~=\"number\"then return false,\"invalid cloud login challenge\"end local verifier,deriveErr=password.derive(plainPassword,begin.salt,begin.workFactor)if not verifier then return false,deriveErr end local proof=password.hmacSha256(verifier,table.concat({\"ceetos/auth/login/v1\",tostring(begin.authority),tostring(os.getComputerID()),tostring(begin.requestId),tostring(begin.challenge),tostring(begin.expires)},\"|\"))local result,resultErr=cloud.call(\"auth\",\"/v1/auth/login/proof\",{username=name,node=tostring(os.getComputerID()),requestId=begin.requestId,challenge=begin.challenge,proof=proof})if not result then return false,resultErr end local auth=require(\"ceetos.lib.auth\")local saved,saveErr=auth.saveCentralSession(result.session)if not saved then return false,saveErr end if type(result.directory)==\"table\"then auth.updateDirectory(result.directory,result.revision)end return true end function M.mutate(action,fields)local auth=require(\"ceetos.lib.auth\")local current=auth.refreshSession()if not current or not current.central then return false,\"cloud login is required\"end local result,err=cloud.call(\"auth\",\"/v1/auth/mutate\",{action=action,fields=fields,session=current.nonce,node=tostring(os.getComputerID()),revision=current.accountRevision})if not result then return false,err end if type(result.directory)==\"table\"then auth.updateDirectory(result.directory,result.revision)end return true end function M.recipePlan(item,quantity,stock)if not M.recipeOnline()then return nil,\"cloud Recipe Server is unavailable\"end local result,err=cloud.call(\"recipe\",\"/v1/recipe/plan\",{item=item,quantity=quantity,stock=stock})if not result then return nil,err end return result.plan,result.error end local function telemetry(activity)local snapshot={ts=now(),id=os.getComputerID(),label=os.getComputerLabel(),activity=activity}if profile.is(\"desktop\")then local loaded,telemetryService=pcall(require,TELEMETRY_MODULE)if loaded and telemetryService.status()then snapshot=telemetryService.snapshot(activity)end end local net=require(\"ceetos.lib.net\")local transport=net.statusSnapshot and net.statusSnapshot().transport or{}snapshot.health={profile=profile.id(),version=require(\"ceetos.lib.version\").string,uptime=os.clock(),freeSpace=fs.getFreeSpace(\"/\"),peers=#(net.peers and net.peers()or{}),healthyLinks=transport and transport.healthyLinks or 0,lastError=M.status().lastError,}local result,err=cloud.call(\"dashboard\",\"/v1/telemetry/ingest\",snapshot)return result~=nil,err end local function syncAuth()if profile.is(\"auth-server\")then local auth=require(\"ceetos.lib.auth\")local snapshot=auth.authoritySnapshot()local pushed,pushErr=cloud.call(\"auth\",\"/v1/auth/replica/merge\",{snapshot=snapshot,source=\"mesh\"})if not pushed then return false,pushErr end if type(pushed.snapshot)==\"table\"then auth.merge(pushed.snapshot,true)end local ok,authErr=cloudAuthority(pushed)if not ok then return false,authErr end return true end local result,err=cloud.call(\"auth\",\"/v1/auth/directory\",{})if not result then return false,err end local ok,authErr=cloudAuthority(result)if not ok then return false,authErr end return true end local function syncRecipes()if not profile.is(\"recipe-server\")then local result,err=cloud.call(\"recipe\",\"/v1/recipe/status\",{})return result~=nil,err end local service=require(RECIPE_SERVICE_MODULE)if type(service.exportOverlay)~=\"function\"then return false,\"recipe export unavailable\"end local payload,exportErr=service.exportOverlay()if not payload then return false,exportErr end local value=state()value.recipe=value.recipe or{revision=0}local result,err=cloud.call(\"recipe\",\"/v1/recipe/replica/merge\",{overlay=payload,baseRevision=math.max(0,math.floor(tonumber(value.recipe.revision)or 0)),})if not result then return false,err end if type(result.overlay)==\"table\"and type(service.replaceOverlay)==\"function\"then local applied,applyErr=service.replaceOverlay(result.overlay)if not applied then return false,applyErr end end return true,nil,math.max(0,math.floor(tonumber(result.revision)or 0))end function M.tick(activity)local cfg=cloud.publicStatus();if not cfg.enabled or not cfg.enrolled then return false,\"cloud node is not enrolled\"end local value,timestamp=state(),now()local changed=false if timestamp>=(tonumber(value.auth.next)or 0)then local ok,err=syncAuth();value.auth.online,value.auth.next=ok==true,timestamp+INTERVALS.authority if not ok then errorState(value,err)else value.lastError=nil end changed=true end if timestamp>=(tonumber(value.recipe.next)or 0)then local ok,err,recipeRevision=syncRecipes();value.recipe.online,value.recipe.next=ok==true,timestamp+INTERVALS.recipes if recipeRevision~=nil then value.recipe.revision=recipeRevision end if not ok then errorState(value,err)end changed=true end if timestamp>=(tonumber(value.telemetry.next)or 0)then local ok,err=telemetry(activity or\"desktop\");value.telemetry.next=timestamp+INTERVALS.telemetry if not ok then errorState(value,err)end changed=true end if changed then value.lastSync=timestamp;save(value)end return true end return M",
  ["ceetos/lib/version.lua"] = "return{major=0,minor=16,patch=2,string=\"0.16.2\"}",
  ["ceetos/lib/crafting.lua"] = "local M={}M.RECIPE_PACK_MAX_BYTES=64*1024 function M.isLocalPeer(peer,computerId)return tostring(peer)==tostring(computerId)end function M.normalise(rows)local out={}for _,row in pairs(type(rows)==\"table\"and rows or{})do if type(row)==\"table\"then local name,count=row.name or row.id,tonumber(row.count or row.amount or row.quantity or 0)or 0 if type(name)==\"string\"and count>0 then out[name]=(out[name]or 0)+math.floor(count)end end end return out end function M.rows(stock,query,filter,recipes)local output,needle,available={},tostring(query or\"\"):lower(),M.normalise(stock)local names={}for name in pairs(available)do names[name]=true end for name in pairs(type(recipes)==\"table\"and recipes or{})do names[name]=true end for name in pairs(names)do local count=available[name]or 0 local craftable=type(recipes)==\"table\"and recipes[name]~=nil local include=needle==\"\"or name:lower():find(needle,1,true)if filter==\"craftable\"then include=include and craftable elseif filter==\"stocked\"then include=include and count>0 end if include then output[#output+1]={name=name,count=count,craftable=craftable,stocked=count>0}end end table.sort(output,function(a,b)return a.name<b.name end)return output end function M.addToCart(cart,name,count)if type(cart)~=\"table\"or type(name)~=\"string\"or name==\"\"then return nil,\"invalid cart item\"end count=tonumber(count)if not count or count<1 then return nil,\"invalid cart quantity\"end count=math.floor(count)for _,row in ipairs(cart)do if row.name==name then row.count=(tonumber(row.count)or 0)+count;return row end end local row={name=name,count=count}cart[#cart+1]=row return row end function M.cartTotals(cart)local items,quantity=0,0 for _,row in ipairs(type(cart)==\"table\"and cart or{})do items=items+1 quantity=quantity+math.max(0,math.floor(tonumber(row.count)or 0))end return items,quantity end function M.acceptedCount(result,requested)local accepted=tonumber(result)requested=tonumber(requested)if not accepted or not requested or requested<1 then return nil,\"invalid request result\"end accepted=math.floor(accepted)if accepted<1 then return nil,\"Stock Ticker accepted no items\"end return math.min(accepted,math.floor(requested))end function M.displayRow(name,count,width)local suffix=\" x\"..tostring(count)width=math.max(#suffix+1,math.floor(tonumber(width)or#suffix+1))if#name+#suffix<=width then return name..suffix end return name:sub(1,math.max(1,width-#suffix-1))..\"…\"..suffix end function M.cancellationStatus(issued)return issued and\"cancelled-unconfirmed\"or\"cancelled\"end local function validReference(name)return type(name)==\"string\"and name:match(\"^#?[%w_.:%-]+$\")~=nil and not name:find(\"##\",1,true)end local function recipeIngredients(recipe,batches)local combined={}local declared=type(recipe.ingredients)==\"table\"and#recipe.ingredients>0 if declared then for _,ingredient in ipairs(recipe.ingredients)do local name=type(ingredient)==\"table\"and ingredient.id or ingredient local count=type(ingredient)==\"table\"and tonumber(ingredient.count or 1)or 1 if validReference(name)then combined[name]=(combined[name]or 0)+batches*math.max(1,math.floor(count or 1))end end else for slot=1,9 do local name=recipe.grid and recipe.grid[slot]if name and name~=false then combined[name]=(combined[name]or 0)+batches end end end local out={}for name,count in pairs(combined)do out[#out+1]={name=name,count=count}end table.sort(out,function(a,b)return a.name<b.name end)return out end function M.recipeInputs(recipe,batches)return recipeIngredients(recipe or{},math.max(1,math.floor(tonumber(batches)or 1)))end function M.validateRecipes(recipes)if type(recipes)~=\"table\"then return nil,\"recipes must return a table\"end for name,recipe in pairs(recipes)do if type(name)~=\"string\"or not name:match(\"^[%w_.:%-]+$\")or type(recipe)~=\"table\"then return nil,\"invalid recipe item id\"end if type(recipe.alternatives)==\"table\"then if#recipe.alternatives<1 then return nil,\"recipe \"..name..\" has no alternatives\"end for _,alternative in ipairs(recipe.alternatives)do local valid,err=M.validateRecipes({[name]=alternative});if not valid then return nil,err end end else if recipe.mode~=\"crafting\"then return nil,\"recipe \"..name..\" must use mode = crafting\"end if type(recipe.address)~=\"string\"or recipe.address==\"\"or#recipe.address>64 then return nil,\"recipe \"..name..\" requires an address\"end local crafter=recipe.address==\"Crafter\"if crafter and type(recipe.grid)~=\"table\"then return nil,\"recipe \"..name..\" requires a 9-slot grid for Crafter\"end if not crafter and type(recipe.ingredients)~=\"table\"and type(recipe.grid)~=\"table\"then return nil,\"recipe \"..name..\" requires ingredients\"end local output=tonumber(recipe.output or 1)if not output or output<1 or output~=math.floor(output)then return nil,\"invalid output for \"..name end for slot=1,9 do local value=recipe.grid and recipe.grid[slot]if value~=nil and value~=false and not validReference(value)then return nil,\"invalid grid slot in \"..name end end for _,ingredient in ipairs(type(recipe.ingredients)==\"table\"and recipe.ingredients or{})do local id,count=type(ingredient)==\"table\"and ingredient.id or ingredient,type(ingredient)==\"table\"and ingredient.count or 1 if not validReference(id)or not tonumber(count)or tonumber(count)<1 then return nil,\"invalid ingredient in \"..name end end end end return recipes end local function dataParser(source,maximum)if type(source)~=\"string\"then return nil,\"recipe data must be text\"end if#source==0 or#source>(maximum or M.RECIPE_PACK_MAX_BYTES)then return nil,\"recipe data exceeds the 64 KiB import limit\"end local state={source=source,index=1,length=#source,depth=0,nodes=0}local function skip()while state.index<=state.length do local char=state.source:sub(state.index,state.index)if char:match(\"%s\")then state.index=state.index+1 elseif state.source:sub(state.index,state.index+1)==\"--\"then local ending=state.source:find(\"\\n\",state.index+2,true)state.index=ending and ending+1 or state.length+1 else return true end end return true end local function fail(message)return nil,message..\" near byte \"..tostring(state.index)end local function identifier()local name=state.source:match(\"^[%a_][%w_]*\",state.index)if name then state.index=state.index+#name end return name end local parseValue local function parseString()local quote=state.source:sub(state.index,state.index);state.index=state.index+1 local out={}while state.index<=state.length do local char=state.source:sub(state.index,state.index);state.index=state.index+1 if char==quote then return table.concat(out)end if char==\"\\\\\"then local escaped=state.source:sub(state.index,state.index);state.index=state.index+1 local values={n=\"\\n\",r=\"\\r\",t=\"\\t\",[\"\\\\\"]=\"\\\\\",[\"\\\"\"]=\"\\\"\",[\"'\"]=\"'\"}if not values[escaped]then return fail(\"unsupported string escape\")end out[#out+1]=values[escaped]elseif char:byte()<32 then return fail(\"control character in string\")else out[#out+1]=char end end return fail(\"unterminated string\")end local function parseTable()state.depth=state.depth+1 if state.depth>32 then return fail(\"recipe data is nested too deeply\")end state.index=state.index+1 local out,nextIndex,keys={},1,{}skip()while state.index<=state.length and state.source:sub(state.index,state.index)~=\"}\"do state.nodes=state.nodes+1 if state.nodes>4096 then return fail(\"recipe data has too many values\")end local key,value,err local start=state.index if state.source:sub(state.index,state.index)==\"[\"then state.index=state.index+1;key,err=parseValue();if err then return nil,err end skip();if state.source:sub(state.index,state.index)~=\"]\"then return fail(\"missing closing recipe key bracket\")end state.index=state.index+1;skip();if state.source:sub(state.index,state.index)~=\"=\"then return fail(\"missing recipe key assignment\")end state.index=state.index+1;skip();value,err=parseValue();if err then return nil,err end else local named=identifier();skip()if named and state.source:sub(state.index,state.index)==\"=\"then key,state.index=named,state.index+1;skip();value,err=parseValue();if err then return nil,err end else state.index=start;value,err=parseValue();if err then return nil,err end key,nextIndex=nextIndex,nextIndex+1 end end if type(key)~=\"string\"and type(key)~=\"number\"then return fail(\"recipe table key must be text or a number\")end local signature=type(key)..\":\"..tostring(key)if keys[signature]then return fail(\"duplicate recipe table key\")end keys[signature],out[key]=true,value skip();local separator=state.source:sub(state.index,state.index)if separator==\",\"or separator==\";\"then state.index=state.index+1;skip()elseif separator~=\"}\"then return fail(\"expected recipe table separator\")end end if state.source:sub(state.index,state.index)~=\"}\"then return fail(\"unterminated recipe table\")end state.index,state.depth=state.index+1,state.depth-1 return out end parseValue=function()skip();local char=state.source:sub(state.index,state.index)if char==\"{\"then return parseTable()end if char==\"\\\"\"or char==\"'\"then return parseString()end local number=state.source:match(\"^-?%d+\",state.index)if number then state.index=state.index+#number;return tonumber(number)end local name=identifier()if name==\"true\"then return true elseif name==\"false\"then return false elseif name==\"nil\"then return nil elseif name then return fail(\"bare recipe values are not allowed\")end return fail(\"invalid recipe value\")end skip()if identifier()~=\"return\"then return fail(\"recipe data must start with return\")end local value,err=parseValue();if err then return nil,err end skip();if state.index<=state.length then return fail(\"unexpected content after recipe table\")end return value end local function validTags(tags)if tags==nil then return{}end if type(tags)~=\"table\"then return nil,\"recipe tags must be a table\"end local out={}for tag,members in pairs(tags)do local key=tostring(tag):gsub(\"^#\",\"\")if not key:match(\"^[%w_.:%-]+$\")or type(members)~=\"table\"or#members<1 then return nil,\"invalid recipe tag \"..tostring(tag)end out[key]={}for _,member in ipairs(members)do if not validReference(member)or tostring(member):sub(1,1)==\"#\"then return nil,\"invalid member of #\"..key end out[key][#out[key]+1]=member end table.sort(out[key])end return out end function M.validateRecipeGraph(recipes,tags)local tagMap,tagErr=validTags(tags);if not tagMap then return nil,tagErr end local visiting,complete={},{}local function visit(name)if complete[name]then return true end if visiting[name]then return nil,\"recipe cycle at \"..name end local recipe=recipes[name]if type(recipe)==\"table\"and type(recipe.alternatives)==\"table\"then recipe=recipe.alternatives[1]end if not recipe then return true end visiting[name]=true for _,input in ipairs(recipeIngredients(recipe,1))do local ingredient=input.name local members=ingredient:sub(1,1)==\"#\"and tagMap[ingredient:sub(2)]or{ingredient}for _,member in ipairs(members or{})do if recipes[member]then local ok,err=visit(member);if not ok then return nil,err end end end end visiting[name],complete[name]=nil,true return true end for name in pairs(recipes)do local ok,err=visit(name);if not ok then return nil,err end end return true end function M.parseRecipeOverlay(source)local value,err=dataParser(source,M.RECIPE_PACK_MAX_BYTES)if not value then return nil,err end if type(value)~=\"table\"then return nil,\"recipe overlay must return a table\"end local recipes,tags if value.schema==1 and type(value.recipes)==\"table\"then recipes,tags=value.recipes,value.tags or{}else recipes,tags=value,{}end local valid,validationErr=M.validateRecipes(recipes)if not valid then return nil,validationErr end local tagMap,tagsErr=validTags(tags);if not tagMap then return nil,tagsErr end local graphOk,graphErr=M.validateRecipeGraph(recipes,tagMap)if not graphOk then return nil,graphErr end return{schema=1,recipes=recipes,tags=tagMap}end function M.parseRecipeFile(source)local overlay,err=M.parseRecipeOverlay(source)return overlay and overlay.recipes or nil,err end function M.parseRecipePack(source)local pack,err=dataParser(source,M.RECIPE_PACK_MAX_BYTES)if not pack then return nil,err end if type(pack)~=\"table\"or pack.schema~=1 or type(pack.recipes)~=\"table\"then return nil,\"recipe pack must return { schema = 1, recipes = { ... } }\"end local valid,validationErr=M.validateRecipes(pack.recipes)if not valid then return nil,validationErr end local tagMap,tagsErr=validTags(pack.tags or{});if not tagMap then return nil,tagsErr end local graphOk,graphErr=M.validateRecipeGraph(pack.recipes,tagMap)if not graphOk then return nil,graphErr end return{schema=1,recipes=pack.recipes,tags=tagMap}end function M.recipeEqual(left,right)if type(left)~=\"table\"or type(right)~=\"table\"then return false end if type(left.alternatives)==\"table\"then left=left.alternatives[1]end if type(right.alternatives)==\"table\"then right=right.alternatives[1]end if not left or not right or left.mode~=right.mode or left.kind~=right.kind or left.output~=right.output or left.address~=right.address then return false end for slot=1,9 do if left.grid and right.grid and left.grid[slot]~=right.grid[slot]then return false end end local a,b=recipeIngredients(left,1),recipeIngredients(right,1)if#a~=#b then return false end for index=1,#a do if a[index].name~=b[index].name or a[index].count~=b[index].count then return false end end return true end function M.reviewRecipePack(existing,incoming)local validExisting,existingErr=M.validateRecipes(existing)if not validExisting then return nil,existingErr end local validIncoming,incomingErr=M.validateRecipes(incoming)if not validIncoming then return nil,incomingErr end local rows,counts={},{new=0,unchanged=0,conflict=0,invalid=0}for name,recipe in pairs(incoming)do local prior=existing[name]local status=not prior and\"new\"or(M.recipeEqual(prior,recipe)and\"unchanged\"or\"conflict\")counts[status]=counts[status]+1 rows[#rows+1]={name=name,status=status,incoming=recipe,existing=prior,selected=status==\"new\"}end table.sort(rows,function(a,b)return a.name<b.name end)return{rows=rows,counts=counts}end local function cloneRecipe(recipe)if type(recipe)==\"table\"and type(recipe.alternatives)==\"table\"then recipe=recipe.alternatives[1]end local copy={mode=recipe.mode,kind=recipe.kind,output=recipe.output,address=recipe.address,grid={},ingredients={}}for slot=1,9 do copy.grid[slot]=recipe.grid and recipe.grid[slot]end for _,input in ipairs(recipe.ingredients or{})do copy.ingredients[#copy.ingredients+1]={id=input.id,count=input.count,tag=input.tag}end return copy end function M.mergeRecipePack(existing,review,existingTags,incomingTags)if type(existing)~=\"table\"or type(review)~=\"table\"or type(review.rows)~=\"table\"then return nil,\"invalid recipe import review\"end local merged,imported={},0 for name,recipe in pairs(existing)do merged[name]=cloneRecipe(recipe)end for _,row in ipairs(review.rows)do if row.status==\"new\"and row.selected==true then merged[row.name],imported=cloneRecipe(row.incoming),imported+1 elseif row.status==\"conflict\"and row.selected==true then merged[row.name],imported=cloneRecipe(row.incoming),imported+1 end end local tags={}for name,members in pairs(existingTags or{})do tags[name]=members end for name,members in pairs(incomingTags or{})do tags[name]=members end local valid,err=M.validateRecipes(merged);if not valid then return nil,err end local graphOk,graphErr=M.validateRecipeGraph(merged,tags);if not graphOk then return nil,graphErr end return merged,imported,tags end function M.encodeRecipeFile(recipes,tags)local valid,err=M.validateRecipes(recipes);if not valid then return nil,err end local tagMap,tagsErr=validTags(tags or{});if not tagMap then return nil,tagsErr end local graphOk,graphErr=M.validateRecipeGraph(recipes,tagMap);if not graphOk then return nil,graphErr end local ok,encoded=pcall(textutils.serialise,{schema=1,recipes=recipes,tags=tagMap},{compact=true})if not ok or type(encoded)~=\"string\"then return nil,\"could not serialise recipes\"end return\"return \"..encoded..\"\\n\"end function M.writeRecipeFile(path,recipes,tags)if type(path)~=\"string\"or path==\"\"then return false,\"invalid recipe file path\"end local raw,encodeErr=M.encodeRecipeFile(recipes,tags);if not raw then return false,encodeErr end local parent=fs.getDir(path);if parent~=\"\"and not fs.exists(parent)then fs.makeDir(parent)end local temporary,backup=path..\".new\",path..\".bak\"if fs.exists(temporary)then fs.delete(temporary)end local handle=fs.open(temporary,\"w\");if not handle then return false,\"could not stage recipes\"end handle.write(raw);handle.close()local check=fs.open(temporary,\"r\");local staged=check and check.readAll()or nil;if check then check.close()end if not M.parseRecipeOverlay(staged or\"\")then if fs.exists(temporary)then fs.delete(temporary)end;return false,\"could not validate staged recipes\"end if fs.exists(backup)then fs.delete(backup)end if fs.exists(path)then fs.move(path,backup)end local moved,moveErr=pcall(fs.move,temporary,path)if not moved then if fs.exists(backup)and not fs.exists(path)then fs.move(backup,path)end;if fs.exists(temporary)then fs.delete(temporary)end;return false,tostring(moveErr)end if fs.exists(backup)then fs.delete(backup)end return true end local function selectedRecipe(entry)if type(entry)==\"table\"and type(entry.alternatives)==\"table\"then return entry.alternatives[1]end return entry end local function tagMembers(tags,reference)if reference:sub(1,1)~=\"#\"then return{reference}end local members=tags[reference:sub(2)]if type(members)~=\"table\"or#members==0 then return nil,\"no known members for \"..reference end return members end local function chooseMember(reference,tags,available,recipes)local members,err=tagMembers(tags,reference);if not members then return nil,err end local best for _,member in ipairs(members)do if(available[member]or 0)>0 then return member end if recipes[member]and not best then best=member end end return best,best and nil or(\"no stocked or craftable member for \"..reference)end function M.plan(recipes,stock,item,quantity,options)quantity=tonumber(quantity)if type(item)~=\"string\"or item==\"\"or not quantity or quantity<1 or quantity~=math.floor(quantity)then return nil,\"invalid item or quantity\"end local valid,errorText=M.validateRecipes(recipes)if not valid then return nil,errorText end options=type(options)==\"table\"and options or{}local available,plan,visiting,tags=M.normalise(stock),{},{},type(options.tags)==\"table\"and options.tags or{}local function requireItem(name,needed)local used=options.forceRoot==true and name==item and 0 or math.min(available[name]or 0,needed)available[name]=(available[name]or 0)-used local missing=needed-used if missing<=0 then return true end if visiting[name]then return nil,\"recipe cycle at \"..name end local recipe=selectedRecipe(recipes[name])if not recipe then return nil,\"missing recipe for \"..name..\" (need \"..tostring(missing)..\")\"end if recipe.special or not recipe.output or not recipe.address then return nil,\"recipe \"..name..\" is not supported by Crafting Queue\"end visiting[name]=true local batches=math.ceil(missing/recipe.output)local inputs={}for _,ingredient in ipairs(recipeIngredients(recipe,batches))do local concrete,resolveErr=chooseMember(ingredient.name,tags,available,recipes)if not concrete then return nil,resolveErr end inputs[#inputs+1]={name=concrete,count=ingredient.count,source=ingredient.name,tag=ingredient.name:sub(1,1)==\"#\"and ingredient.name or nil}local ok,err=requireItem(concrete,ingredient.count)if not ok then return nil,err end end visiting[name]=nil local produced=batches*recipe.output available[name]=(available[name]or 0)+produced-missing local dispatch=recipe.address==\"Crafter\"and\"requester\"or\"package\"if dispatch==\"requester\"and type(recipe.grid)~=\"table\"then return nil,\"Crafter recipe \"..name..\" has no 3x3 grid\"end plan[#plan+1]={name=name,batches=batches,produced=produced,requested=missing,address=recipe.address,kind=recipe.kind,dispatch=dispatch,grid=recipe.grid,inputs=inputs,}return true end local ok,err=requireItem(item,quantity)return ok and plan or nil,err end function M.validateExecutionPlan(plan)if type(plan)~=\"table\"or#plan<1 or#plan>96 then return nil,\"invalid remote recipe plan\"end for _,step in ipairs(plan)do if type(step)~=\"table\"or not validReference(step.name)or tostring(step.name):sub(1,1)==\"#\"then return nil,\"invalid remote recipe output\"end if type(step.address)~=\"string\"or step.address==\"\"or#step.address>64 or step.address:find(\"[%c]\")then return nil,\"invalid remote recipe address\"end if step.dispatch~=\"requester\"and step.dispatch~=\"package\"then return nil,\"invalid remote recipe route\"end if(step.address==\"Crafter\")~=(step.dispatch==\"requester\")then return nil,\"invalid remote recipe executor\"end for _,field in ipairs({\"batches\",\"produced\",\"requested\"})do local value=tonumber(step[field])if not value or value<1 or value~=math.floor(value)or value>65536 then return nil,\"invalid remote recipe quantity\"end end if step.dispatch==\"requester\"then if type(step.grid)~=\"table\"then return nil,\"remote Crafter recipe has no grid\"end for slot=1,9 do local value=step.grid[slot]if value~=nil and value~=false and not validReference(value)then return nil,\"invalid remote recipe grid\"end end end if type(step.inputs)~=\"table\"or#step.inputs>64 then return nil,\"invalid remote recipe inputs\"end for _,input in ipairs(step.inputs)do if type(input)~=\"table\"or not validReference(input.name)or tostring(input.name):sub(1,1)==\"#\"then return nil,\"invalid remote recipe input\"end local count=tonumber(input.count)if not count or count<1 or count~=math.floor(count)or count>65536 then return nil,\"invalid remote recipe input quantity\"end if input.source~=nil and not validReference(input.source)then return nil,\"invalid remote recipe input source\"end end end return plan end return M",
  ["ceetos/lib/recipe_db.lua"] = "local M={}local BASE=\"/ceetos/recipes/vanilla-recipes-1.21.1-\"local ITEMS=\"/ceetos/recipes/vanilla-items-1.21.1.lua\"local TAGS=\"/ceetos/recipes/vanilla-tags-1.21.1.lua\"local function installed(path)if fs.exists(path)then return path end return\"/ceetos/ceetos/\"..path:sub(#\"/ceetos/\"+1)end local function loadTrusted(path,message)local loader,err=loadfile(installed(path))if not loader then return nil,message..\": \"..tostring(err)end local ok,value=pcall(loader)if not ok or type(value)~=\"table\"or value.schema~=1 then return nil,message end return value end local function trustedBase()local itemData,itemErr=loadTrusted(ITEMS,\"vanilla recipe items are unavailable\")if not itemData or type(itemData.items)~=\"table\"then return nil,itemErr or\"vanilla recipe items are corrupt\"end local combined for index=1,8 do local value,err=loadTrusted(BASE..tostring(index)..\".lua\",\"vanilla recipe base is unavailable\")if not value or type(value.recipes)~=\"table\"then return nil,err or\"vanilla recipe base is corrupt\"end combined=combined or{schema=1,minecraft=value.minecraft,items=itemData.items,recipes={},counts=value.counts}for id,row in pairs(value.recipes)do combined.recipes[id]=row end end local tags,err=loadTrusted(TAGS,\"vanilla item tags are unavailable\")if not tags or type(tags.tags)~=\"table\"then return nil,err or\"vanilla item tags are corrupt\"end combined.tags=tags.tags return combined end local function reference(db,value)value=tonumber(value)if not value or value==0 then return false end local name=db.items[math.abs(value)]if not name then return false end return value<0 and(\"#\"..name)or name end local function normaliseIngredients(db,rows)local ingredients={}for _,row in ipairs(rows or{})do local id=reference(db,row[1])if id then if row[3]==true and id:sub(1,1)~=\"#\"then id=\"#\"..id end ingredients[#ingredients+1]={id=id,count=tonumber(row[2])or 1,tag=id:sub(1,1)==\"#\"}end end return ingredients end local function shapelessGrid(ingredients)local grid,slot={},1 for _,ingredient in ipairs(ingredients)do for _=1,math.max(1,math.floor(tonumber(ingredient.count)or 1))do if slot>9 then return nil end grid[slot],slot=ingredient.id,slot+1 end end return grid end function M.loadBase()local db,err=trustedBase();if not db then return nil,err end local out={}for id,row in pairs(db.recipes)do local output=db.items[row.output]if output and not row.special then local recipe={id=id,mode=row.mode,kind=row.kind,output=row.count,address=row.address,grid={},ingredients={},metadata=row.metadata,special=row.special}for slot,value in pairs(row.grid or{})do recipe.grid[slot]=reference(db,value)end recipe.ingredients=normaliseIngredients(db,row.ingredients)if recipe.kind==\"crafting_shapeless\"and recipe.address==\"Crafter\"and next(recipe.grid)==nil then recipe.grid=shapelessGrid(recipe.ingredients)or{}end local entry=out[output]or{alternatives={}};out[output]=entry entry.alternatives[#entry.alternatives+1]=recipe end end for _,entry in pairs(out)do table.sort(entry.alternatives,function(a,b)return a.id<b.id end)end return out,db end function M.mergeOverlay(base,overlay)local merged={}for name,entry in pairs(base or{})do merged[name]=entry end for name,recipe in pairs(overlay or{})do merged[name]=recipe end return merged end function M.mergeTags(base,overlay)local merged={}for name,members in pairs(base or{})do merged[name]=members end for name,members in pairs(overlay or{})do merged[name]=members end return merged end return M",
  ["ceetos/recipes/vanilla-items-1.21.1.lua"] = "return{[\"schema\"]=1,[\"minecraft\"]=\"1.21.1\",[\"items\"]={[1]=\"minecraft:acacia_boat\",[2]=\"minecraft:acacia_planks\",[3]=\"minecraft:acacia_button\",[4]=\"minecraft:acacia_chest_boat\",[5]=\"minecraft:chest\",[6]=\"minecraft:acacia_door\",[7]=\"minecraft:acacia_fence\",[8]=\"minecraft:stick\",[9]=\"minecraft:acacia_fence_gate\",[10]=\"minecraft:acacia_hanging_sign\",[11]=\"minecraft:chain\",[12]=\"minecraft:stripped_acacia_log\",[13]=\"minecraft:acacia_logs\",[14]=\"minecraft:acacia_pressure_plate\",[15]=\"minecraft:acacia_sign\",[16]=\"minecraft:acacia_slab\",[17]=\"minecraft:acacia_stairs\",[18]=\"minecraft:acacia_trapdoor\",[19]=\"minecraft:acacia_wood\",[20]=\"minecraft:acacia_log\",[21]=\"minecraft:activator_rail\",[22]=\"minecraft:iron_ingot\",[23]=\"minecraft:redstone_torch\",[24]=\"minecraft:amethyst_block\",[25]=\"minecraft:amethyst_shard\",[26]=\"minecraft:andesite\",[27]=\"minecraft:diorite\",[28]=\"minecraft:cobblestone\",[29]=\"minecraft:andesite_slab\",[30]=\"minecraft:andesite_stairs\",[31]=\"minecraft:andesite_wall\",[32]=\"minecraft:anvil\",[33]=\"minecraft:iron_block\",[34]=\"minecraft:armor_stand\",[35]=\"minecraft:smooth_stone_slab\",[36]=\"minecraft:arrow\",[37]=\"minecraft:flint\",[38]=\"minecraft:feather\",[39]=\"minecraft:baked_potato\",[40]=\"minecraft:potato\",[41]=\"minecraft:bamboo_block\",[42]=\"minecraft:bamboo\",[43]=\"minecraft:bamboo_button\",[44]=\"minecraft:bamboo_planks\",[45]=\"minecraft:bamboo_chest_raft\",[46]=\"minecraft:bamboo_raft\",[47]=\"minecraft:bamboo_door\",[48]=\"minecraft:bamboo_fence\",[49]=\"minecraft:bamboo_fence_gate\",[50]=\"minecraft:bamboo_hanging_sign\",[51]=\"minecraft:stripped_bamboo_block\",[52]=\"minecraft:bamboo_mosaic\",[53]=\"minecraft:bamboo_slab\",[54]=\"minecraft:bamboo_mosaic_slab\",[55]=\"minecraft:bamboo_mosaic_stairs\",[56]=\"minecraft:bamboo_blocks\",[57]=\"minecraft:bamboo_pressure_plate\",[58]=\"minecraft:bamboo_sign\",[59]=\"minecraft:bamboo_stairs\",[60]=\"minecraft:bamboo_trapdoor\",[61]=\"minecraft:barrel\",[62]=\"minecraft:planks\",[63]=\"minecraft:wooden_slabs\",[64]=\"minecraft:beacon\",[65]=\"minecraft:glass\",[66]=\"minecraft:nether_star\",[67]=\"minecraft:obsidian\",[68]=\"minecraft:beehive\",[69]=\"minecraft:honeycomb\",[70]=\"minecraft:beetroot_soup\",[71]=\"minecraft:bowl\",[72]=\"minecraft:beetroot\",[73]=\"minecraft:birch_boat\",[74]=\"minecraft:birch_planks\",[75]=\"minecraft:birch_button\",[76]=\"minecraft:birch_chest_boat\",[77]=\"minecraft:birch_door\",[78]=\"minecraft:birch_fence\",[79]=\"minecraft:birch_fence_gate\",[80]=\"minecraft:birch_hanging_sign\",[81]=\"minecraft:stripped_birch_log\",[82]=\"minecraft:birch_logs\",[83]=\"minecraft:birch_pressure_plate\",[84]=\"minecraft:birch_sign\",[85]=\"minecraft:birch_slab\",[86]=\"minecraft:birch_stairs\",[87]=\"minecraft:birch_trapdoor\",[88]=\"minecraft:birch_wood\",[89]=\"minecraft:birch_log\",[90]=\"minecraft:black_banner\",[91]=\"minecraft:black_wool\",[92]=\"minecraft:black_bed\",[93]=\"minecraft:black_candle\",[94]=\"minecraft:candle\",[95]=\"minecraft:black_dye\",[96]=\"minecraft:black_carpet\",[97]=\"minecraft:black_concrete_powder\",[98]=\"minecraft:sand\",[99]=\"minecraft:gravel\",[100]=\"minecraft:ink_sac\",[101]=\"minecraft:wither_rose\",[102]=\"minecraft:black_glazed_terracotta\",[103]=\"minecraft:black_terracotta\",[104]=\"minecraft:black_stained_glass\",[105]=\"minecraft:black_stained_glass_pane\",[106]=\"minecraft:glass_pane\",[107]=\"minecraft:terracotta\",[108]=\"minecraft:blackstone_slab\",[109]=\"minecraft:blackstone\",[110]=\"minecraft:blackstone_stairs\",[111]=\"minecraft:blackstone_wall\",[112]=\"minecraft:blast_furnace\",[113]=\"minecraft:furnace\",[114]=\"minecraft:smooth_stone\",[115]=\"minecraft:blaze_powder\",[116]=\"minecraft:blaze_rod\",[117]=\"minecraft:blue_banner\",[118]=\"minecraft:blue_wool\",[119]=\"minecraft:blue_bed\",[120]=\"minecraft:blue_candle\",[121]=\"minecraft:blue_dye\",[122]=\"minecraft:blue_carpet\",[123]=\"minecraft:blue_concrete_powder\",[124]=\"minecraft:lapis_lazuli\",[125]=\"minecraft:cornflower\",[126]=\"minecraft:blue_glazed_terracotta\",[127]=\"minecraft:blue_terracotta\",[128]=\"minecraft:blue_ice\",[129]=\"minecraft:packed_ice\",[130]=\"minecraft:blue_stained_glass\",[131]=\"minecraft:blue_stained_glass_pane\",[132]=\"minecraft:bolt_armor_trim_smithing_template\",[133]=\"minecraft:diamond\",[134]=\"minecraft:trimmable_armor\",[135]=\"minecraft:trim_materials\",[136]=\"minecraft:bone_block\",[137]=\"minecraft:bone_meal\",[138]=\"minecraft:bone\",[139]=\"minecraft:book\",[140]=\"minecraft:paper\",[141]=\"minecraft:leather\",[142]=\"minecraft:bookshelf\",[143]=\"minecraft:bow\",[144]=\"minecraft:string\",[145]=\"minecraft:bread\",[146]=\"minecraft:wheat\",[147]=\"minecraft:brewing_stand\",[148]=\"minecraft:stone_crafting_materials\",[149]=\"minecraft:brick\",[150]=\"minecraft:clay_ball\",[151]=\"minecraft:brick_slab\",[152]=\"minecraft:bricks\",[153]=\"minecraft:brick_stairs\",[154]=\"minecraft:brick_wall\",[155]=\"minecraft:brown_banner\",[156]=\"minecraft:brown_wool\",[157]=\"minecraft:brown_bed\",[158]=\"minecraft:brown_candle\",[159]=\"minecraft:brown_dye\",[160]=\"minecraft:brown_carpet\",[161]=\"minecraft:brown_concrete_powder\",[162]=\"minecraft:cocoa_beans\",[163]=\"minecraft:brown_glazed_terracotta\",[164]=\"minecraft:brown_terracotta\",[165]=\"minecraft:brown_stained_glass\",[166]=\"minecraft:brown_stained_glass_pane\",[167]=\"minecraft:brush\",[168]=\"minecraft:copper_ingot\",[169]=\"minecraft:bucket\",[170]=\"minecraft:cake\",[171]=\"minecraft:milk_bucket\",[172]=\"minecraft:sugar\",[173]=\"minecraft:egg\",[174]=\"minecraft:calibrated_sculk_sensor\",[175]=\"minecraft:sculk_sensor\",[176]=\"minecraft:campfire\",[177]=\"minecraft:coals\",[178]=\"minecraft:logs\",[179]=\"minecraft:carrot_on_a_stick\",[180]=\"minecraft:fishing_rod\",[181]=\"minecraft:carrot\",[182]=\"minecraft:cartography_table\",[183]=\"minecraft:cauldron\",[184]=\"minecraft:iron_nugget\",[185]=\"minecraft:charcoal\",[186]=\"minecraft:logs_that_burn\",[187]=\"minecraft:cherry_boat\",[188]=\"minecraft:cherry_planks\",[189]=\"minecraft:cherry_button\",[190]=\"minecraft:cherry_chest_boat\",[191]=\"minecraft:cherry_door\",[192]=\"minecraft:cherry_fence\",[193]=\"minecraft:cherry_fence_gate\",[194]=\"minecraft:cherry_hanging_sign\",[195]=\"minecraft:stripped_cherry_log\",[196]=\"minecraft:cherry_logs\",[197]=\"minecraft:cherry_pressure_plate\",[198]=\"minecraft:cherry_sign\",[199]=\"minecraft:cherry_slab\",[200]=\"minecraft:cherry_stairs\",[201]=\"minecraft:cherry_trapdoor\",[202]=\"minecraft:cherry_wood\",[203]=\"minecraft:cherry_log\",[204]=\"minecraft:chest_minecart\",[205]=\"minecraft:minecart\",[206]=\"minecraft:chiseled_bookshelf\",[207]=\"minecraft:chiseled_copper\",[208]=\"minecraft:cut_copper_slab\",[209]=\"minecraft:copper_block\",[210]=\"minecraft:cut_copper\",[211]=\"minecraft:chiseled_deepslate\",[212]=\"minecraft:cobbled_deepslate_slab\",[213]=\"minecraft:cobbled_deepslate\",[214]=\"minecraft:chiseled_nether_bricks\",[215]=\"minecraft:nether_brick_slab\",[216]=\"minecraft:nether_bricks\",[217]=\"minecraft:chiseled_polished_blackstone\",[218]=\"minecraft:polished_blackstone_slab\",[219]=\"minecraft:polished_blackstone\",[220]=\"minecraft:chiseled_quartz_block\",[221]=\"minecraft:quartz_slab\",[222]=\"minecraft:quartz_block\",[223]=\"minecraft:chiseled_red_sandstone\",[224]=\"minecraft:red_sandstone_slab\",[225]=\"minecraft:red_sandstone\",[226]=\"minecraft:chiseled_sandstone\",[227]=\"minecraft:sandstone_slab\",[228]=\"minecraft:sandstone\",[229]=\"minecraft:chiseled_stone_bricks\",[230]=\"minecraft:stone_brick_slab\",[231]=\"minecraft:stone_bricks\",[232]=\"minecraft:stone\",[233]=\"minecraft:chiseled_tuff\",[234]=\"minecraft:tuff_slab\",[235]=\"minecraft:chiseled_tuff_bricks\",[236]=\"minecraft:tuff_brick_slab\",[237]=\"minecraft:polished_tuff\",[238]=\"minecraft:tuff_bricks\",[239]=\"minecraft:tuff\",[240]=\"minecraft:clay\",[241]=\"minecraft:clock\",[242]=\"minecraft:gold_ingot\",[243]=\"minecraft:redstone\",[244]=\"minecraft:coal\",[245]=\"minecraft:coal_block\",[246]=\"minecraft:coal_ore\",[247]=\"minecraft:deepslate_coal_ore\",[248]=\"minecraft:coarse_dirt\",[249]=\"minecraft:dirt\",[250]=\"minecraft:coast_armor_trim_smithing_template\",[251]=\"minecraft:cobbled_deepslate_stairs\",[252]=\"minecraft:cobbled_deepslate_wall\",[253]=\"minecraft:cobblestone_slab\",[254]=\"minecraft:cobblestone_stairs\",[255]=\"minecraft:cobblestone_wall\",[256]=\"minecraft:comparator\",[257]=\"minecraft:quartz\",[258]=\"minecraft:compass\",[259]=\"minecraft:composter\",[260]=\"minecraft:conduit\",[261]=\"minecraft:nautilus_shell\",[262]=\"minecraft:heart_of_the_sea\",[263]=\"minecraft:cooked_beef\",[264]=\"minecraft:beef\",[265]=\"minecraft:cooked_chicken\",[266]=\"minecraft:chicken\",[267]=\"minecraft:cooked_cod\",[268]=\"minecraft:cod\",[269]=\"minecraft:cooked_mutton\",[270]=\"minecraft:mutton\",[271]=\"minecraft:cooked_porkchop\",[272]=\"minecraft:porkchop\",[273]=\"minecraft:cooked_rabbit\",[274]=\"minecraft:rabbit\",[275]=\"minecraft:cooked_salmon\",[276]=\"minecraft:salmon\",[277]=\"minecraft:cookie\",[278]=\"minecraft:copper_bulb\",[279]=\"minecraft:copper_door\",[280]=\"minecraft:copper_grate\",[281]=\"minecraft:copper_ore\",[282]=\"minecraft:deepslate_copper_ore\",[283]=\"minecraft:raw_copper\",[284]=\"minecraft:waxed_copper_block\",[285]=\"minecraft:copper_trapdoor\",[286]=\"minecraft:cracked_deepslate_bricks\",[287]=\"minecraft:deepslate_bricks\",[288]=\"minecraft:cracked_deepslate_tiles\",[289]=\"minecraft:deepslate_tiles\",[290]=\"minecraft:cracked_nether_bricks\",[291]=\"minecraft:cracked_polished_blackstone_bricks\",[292]=\"minecraft:polished_blackstone_bricks\",[293]=\"minecraft:cracked_stone_bricks\",[294]=\"minecraft:crafter\",[295]=\"minecraft:crafting_table\",[296]=\"minecraft:dropper\",[297]=\"minecraft:creeper_banner_pattern\",[298]=\"minecraft:creeper_head\",[299]=\"minecraft:crimson_button\",[300]=\"minecraft:crimson_planks\",[301]=\"minecraft:crimson_door\",[302]=\"minecraft:crimson_fence\",[303]=\"minecraft:crimson_fence_gate\",[304]=\"minecraft:crimson_hanging_sign\",[305]=\"minecraft:stripped_crimson_stem\",[306]=\"minecraft:crimson_hyphae\",[307]=\"minecraft:crimson_stem\",[308]=\"minecraft:crimson_stems\",[309]=\"minecraft:crimson_pressure_plate\",[310]=\"minecraft:crimson_sign\",[311]=\"minecraft:crimson_slab\",[312]=\"minecraft:crimson_stairs\",[313]=\"minecraft:crimson_trapdoor\",[314]=\"minecraft:crossbow\",[315]=\"minecraft:tripwire_hook\",[316]=\"minecraft:cut_copper_stairs\",[317]=\"minecraft:cut_red_sandstone\",[318]=\"minecraft:cut_red_sandstone_slab\",[319]=\"minecraft:cut_sandstone\",[320]=\"minecraft:cut_sandstone_slab\",[321]=\"minecraft:cyan_banner\",[322]=\"minecraft:cyan_wool\",[323]=\"minecraft:cyan_bed\",[324]=\"minecraft:cyan_candle\",[325]=\"minecraft:cyan_dye\",[326]=\"minecraft:cyan_carpet\",[327]=\"minecraft:cyan_concrete_powder\",[328]=\"minecraft:green_dye\",[329]=\"minecraft:pitcher_plant\",[330]=\"minecraft:cyan_glazed_terracotta\",[331]=\"minecraft:cyan_terracotta\",[332]=\"minecraft:cyan_stained_glass\",[333]=\"minecraft:cyan_stained_glass_pane\",[334]=\"minecraft:dark_oak_boat\",[335]=\"minecraft:dark_oak_planks\",[336]=\"minecraft:dark_oak_button\",[337]=\"minecraft:dark_oak_chest_boat\",[338]=\"minecraft:dark_oak_door\",[339]=\"minecraft:dark_oak_fence\",[340]=\"minecraft:dark_oak_fence_gate\",[341]=\"minecraft:dark_oak_hanging_sign\",[342]=\"minecraft:stripped_dark_oak_log\",[343]=\"minecraft:dark_oak_logs\",[344]=\"minecraft:dark_oak_pressure_plate\",[345]=\"minecraft:dark_oak_sign\",[346]=\"minecraft:dark_oak_slab\",[347]=\"minecraft:dark_oak_stairs\",[348]=\"minecraft:dark_oak_trapdoor\",[349]=\"minecraft:dark_oak_wood\",[350]=\"minecraft:dark_oak_log\",[351]=\"minecraft:dark_prismarine\",[352]=\"minecraft:prismarine_shard\",[353]=\"minecraft:dark_prismarine_slab\",[354]=\"minecraft:dark_prismarine_stairs\",[355]=\"minecraft:daylight_detector\",[356]=\"minecraft:decorated_pot\",[357]=\"minecraft:deepslate\",[358]=\"minecraft:deepslate_brick_slab\",[359]=\"minecraft:polished_deepslate\",[360]=\"minecraft:deepslate_brick_stairs\",[361]=\"minecraft:deepslate_brick_wall\",[362]=\"minecraft:deepslate_tile_slab\",[363]=\"minecraft:deepslate_tile_stairs\",[364]=\"minecraft:deepslate_tile_wall\",[365]=\"minecraft:detector_rail\",[366]=\"minecraft:stone_pressure_plate\",[367]=\"minecraft:diamond_block\",[368]=\"minecraft:diamond_axe\",[369]=\"minecraft:diamond_boots\",[370]=\"minecraft:diamond_chestplate\",[371]=\"minecraft:deepslate_diamond_ore\",[372]=\"minecraft:diamond_ore\",[373]=\"minecraft:diamond_helmet\",[374]=\"minecraft:diamond_hoe\",[375]=\"minecraft:diamond_leggings\",[376]=\"minecraft:diamond_pickaxe\",[377]=\"minecraft:diamond_shovel\",[378]=\"minecraft:diamond_sword\",[379]=\"minecraft:diorite_slab\",[380]=\"minecraft:diorite_stairs\",[381]=\"minecraft:diorite_wall\",[382]=\"minecraft:dispenser\",[383]=\"minecraft:dried_kelp\",[384]=\"minecraft:dried_kelp_block\",[385]=\"minecraft:kelp\",[386]=\"minecraft:dripstone_block\",[387]=\"minecraft:pointed_dripstone\",[388]=\"minecraft:dune_armor_trim_smithing_template\",[389]=\"minecraft:gray_bed\",[390]=\"minecraft:gray_dye\",[391]=\"minecraft:gray_carpet\",[392]=\"minecraft:gray_wool\",[393]=\"minecraft:green_bed\",[394]=\"minecraft:green_carpet\",[395]=\"minecraft:green_wool\",[396]=\"minecraft:light_blue_bed\",[397]=\"minecraft:light_blue_dye\",[398]=\"minecraft:light_blue_carpet\",[399]=\"minecraft:light_blue_wool\",[400]=\"minecraft:light_gray_bed\",[401]=\"minecraft:light_gray_dye\",[402]=\"minecraft:light_gray_carpet\",[403]=\"minecraft:light_gray_wool\",[404]=\"minecraft:lime_bed\",[405]=\"minecraft:lime_dye\",[406]=\"minecraft:lime_carpet\",[407]=\"minecraft:lime_wool\",[408]=\"minecraft:magenta_bed\",[409]=\"minecraft:magenta_dye\",[410]=\"minecraft:magenta_carpet\",[411]=\"minecraft:magenta_wool\",[412]=\"minecraft:orange_bed\",[413]=\"minecraft:orange_dye\",[414]=\"minecraft:orange_carpet\",[415]=\"minecraft:orange_wool\",[416]=\"minecraft:pink_bed\",[417]=\"minecraft:pink_dye\",[418]=\"minecraft:pink_carpet\",[419]=\"minecraft:pink_wool\",[420]=\"minecraft:purple_bed\",[421]=\"minecraft:purple_dye\",[422]=\"minecraft:purple_carpet\",[423]=\"minecraft:purple_wool\",[424]=\"minecraft:red_bed\",[425]=\"minecraft:red_dye\",[426]=\"minecraft:red_carpet\",[427]=\"minecraft:red_wool\",[428]=\"minecraft:white_bed\",[429]=\"minecraft:white_dye\",[430]=\"minecraft:white_carpet\",[431]=\"minecraft:white_wool\",[432]=\"minecraft:yellow_bed\",[433]=\"minecraft:yellow_dye\",[434]=\"minecraft:yellow_carpet\",[435]=\"minecraft:yellow_wool\",[436]=\"minecraft:emerald\",[437]=\"minecraft:emerald_block\",[438]=\"minecraft:deepslate_emerald_ore\",[439]=\"minecraft:emerald_ore\",[440]=\"minecraft:enchanting_table\",[441]=\"minecraft:end_crystal\",[442]=\"minecraft:ender_eye\",[443]=\"minecraft:ghast_tear\",[444]=\"minecraft:end_rod\",[445]=\"minecraft:popped_chorus_fruit\",[446]=\"minecraft:end_stone_brick_slab\",[447]=\"minecraft:end_stone_bricks\",[448]=\"minecraft:end_stone\",[449]=\"minecraft:end_stone_brick_stairs\",[450]=\"minecraft:end_stone_brick_wall\",[451]=\"minecraft:ender_chest\",[452]=\"minecraft:ender_pearl\",[453]=\"minecraft:exposed_chiseled_copper\",[454]=\"minecraft:exposed_cut_copper_slab\",[455]=\"minecraft:exposed_copper\",[456]=\"minecraft:exposed_cut_copper\",[457]=\"minecraft:exposed_copper_bulb\",[458]=\"minecraft:exposed_copper_grate\",[459]=\"minecraft:exposed_cut_copper_stairs\",[460]=\"minecraft:eye_armor_trim_smithing_template\",[461]=\"minecraft:fermented_spider_eye\",[462]=\"minecraft:spider_eye\",[463]=\"minecraft:brown_mushroom\",[464]=\"minecraft:fire_charge\",[465]=\"minecraft:gunpowder\",[466]=\"minecraft:firework_rocket\",[467]=\"minecraft:fletching_table\",[468]=\"minecraft:flint_and_steel\",[469]=\"minecraft:flow_armor_trim_smithing_template\",[470]=\"minecraft:breeze_rod\",[471]=\"minecraft:flower_banner_pattern\",[472]=\"minecraft:oxeye_daisy\",[473]=\"minecraft:flower_pot\",[474]=\"minecraft:furnace_minecart\",[475]=\"minecraft:smelts_to_glass\",[476]=\"minecraft:glass_bottle\",[477]=\"minecraft:glistering_melon_slice\",[478]=\"minecraft:gold_nugget\",[479]=\"minecraft:melon_slice\",[480]=\"minecraft:glow_item_frame\",[481]=\"minecraft:item_frame\",[482]=\"minecraft:glow_ink_sac\",[483]=\"minecraft:glowstone\",[484]=\"minecraft:glowstone_dust\",[485]=\"minecraft:gold_block\",[486]=\"minecraft:deepslate_gold_ore\",[487]=\"minecraft:gold_ore\",[488]=\"minecraft:nether_gold_ore\",[489]=\"minecraft:raw_gold\",[490]=\"minecraft:golden_apple\",[491]=\"minecraft:apple\",[492]=\"minecraft:golden_axe\",[493]=\"minecraft:golden_boots\",[494]=\"minecraft:golden_carrot\",[495]=\"minecraft:golden_chestplate\",[496]=\"minecraft:golden_helmet\",[497]=\"minecraft:golden_hoe\",[498]=\"minecraft:golden_leggings\",[499]=\"minecraft:golden_pickaxe\",[500]=\"minecraft:golden_shovel\",[501]=\"minecraft:golden_sword\",[502]=\"minecraft:granite\",[503]=\"minecraft:granite_slab\",[504]=\"minecraft:granite_stairs\",[505]=\"minecraft:granite_wall\",[506]=\"minecraft:gray_banner\",[507]=\"minecraft:gray_candle\",[508]=\"minecraft:gray_concrete_powder\",[509]=\"minecraft:gray_glazed_terracotta\",[510]=\"minecraft:gray_terracotta\",[511]=\"minecraft:gray_stained_glass\",[512]=\"minecraft:gray_stained_glass_pane\",[513]=\"minecraft:green_banner\",[514]=\"minecraft:green_candle\",[515]=\"minecraft:green_concrete_powder\",[516]=\"minecraft:cactus\",[517]=\"minecraft:green_glazed_terracotta\",[518]=\"minecraft:green_terracotta\",[519]=\"minecraft:green_stained_glass\",[520]=\"minecraft:green_stained_glass_pane\",[521]=\"minecraft:grindstone\",[522]=\"minecraft:stone_slab\",[523]=\"minecraft:hay_block\",[524]=\"minecraft:heavy_weighted_pressure_plate\",[525]=\"minecraft:honey_block\",[526]=\"minecraft:honey_bottle\",[527]=\"minecraft:honeycomb_block\",[528]=\"minecraft:hopper\",[529]=\"minecraft:hopper_minecart\",[530]=\"minecraft:host_armor_trim_smithing_template\",[531]=\"minecraft:iron_axe\",[532]=\"minecraft:iron_bars\",[533]=\"minecraft:iron_boots\",[534]=\"minecraft:iron_chestplate\",[535]=\"minecraft:iron_door\",[536]=\"minecraft:iron_helmet\",[537]=\"minecraft:iron_hoe\",[538]=\"minecraft:deepslate_iron_ore\",[539]=\"minecraft:iron_ore\",[540]=\"minecraft:raw_iron\",[541]=\"minecraft:iron_leggings\",[542]=\"minecraft:iron_pickaxe\",[543]=\"minecraft:iron_shovel\",[544]=\"minecraft:iron_sword\",[545]=\"minecraft:iron_trapdoor\",[546]=\"minecraft:jack_o_lantern\",[547]=\"minecraft:carved_pumpkin\",[548]=\"minecraft:torch\",[549]=\"minecraft:jukebox\",[550]=\"minecraft:jungle_boat\",[551]=\"minecraft:jungle_planks\",[552]=\"minecraft:jungle_button\",[553]=\"minecraft:jungle_chest_boat\",[554]=\"minecraft:jungle_door\",[555]=\"minecraft:jungle_fence\",[556]=\"minecraft:jungle_fence_gate\",[557]=\"minecraft:jungle_hanging_sign\",[558]=\"minecraft:stripped_jungle_log\",[559]=\"minecraft:jungle_logs\",[560]=\"minecraft:jungle_pressure_plate\",[561]=\"minecraft:jungle_sign\",[562]=\"minecraft:jungle_slab\",[563]=\"minecraft:jungle_stairs\",[564]=\"minecraft:jungle_trapdoor\",[565]=\"minecraft:jungle_wood\",[566]=\"minecraft:jungle_log\",[567]=\"minecraft:ladder\",[568]=\"minecraft:lantern\",[569]=\"minecraft:lapis_block\",[570]=\"minecraft:deepslate_lapis_ore\",[571]=\"minecraft:lapis_ore\",[572]=\"minecraft:lead\",[573]=\"minecraft:slime_ball\",[574]=\"minecraft:rabbit_hide\",[575]=\"minecraft:leather_boots\",[576]=\"minecraft:leather_chestplate\",[577]=\"minecraft:leather_helmet\",[578]=\"minecraft:leather_horse_armor\",[579]=\"minecraft:leather_leggings\",[580]=\"minecraft:lectern\",[581]=\"minecraft:lever\",[582]=\"minecraft:light_blue_banner\",[583]=\"minecraft:light_blue_candle\",[584]=\"minecraft:light_blue_concrete_powder\",[585]=\"minecraft:blue_orchid\",[586]=\"minecraft:light_blue_glazed_terracotta\",[587]=\"minecraft:light_blue_terracotta\",[588]=\"minecraft:light_blue_stained_glass\",[589]=\"minecraft:light_blue_stained_glass_pane\",[590]=\"minecraft:light_gray_banner\",[591]=\"minecraft:light_gray_candle\",[592]=\"minecraft:light_gray_concrete_powder\",[593]=\"minecraft:azure_bluet\",[594]=\"minecraft:white_tulip\",[595]=\"minecraft:light_gray_glazed_terracotta\",[596]=\"minecraft:light_gray_terracotta\",[597]=\"minecraft:light_gray_stained_glass\",[598]=\"minecraft:light_gray_stained_glass_pane\",[599]=\"minecraft:light_weighted_pressure_plate\",[600]=\"minecraft:lightning_rod\",[601]=\"minecraft:lime_banner\",[602]=\"minecraft:lime_candle\",[603]=\"minecraft:lime_concrete_powder\",[604]=\"minecraft:sea_pickle\",[605]=\"minecraft:lime_glazed_terracotta\",[606]=\"minecraft:lime_terracotta\",[607]=\"minecraft:lime_stained_glass\",[608]=\"minecraft:lime_stained_glass_pane\",[609]=\"minecraft:lodestone\",[610]=\"minecraft:netherite_ingot\",[611]=\"minecraft:loom\",[612]=\"minecraft:mace\",[613]=\"minecraft:heavy_core\",[614]=\"minecraft:magenta_banner\",[615]=\"minecraft:magenta_candle\",[616]=\"minecraft:magenta_concrete_powder\",[617]=\"minecraft:allium\",[618]=\"minecraft:lilac\",[619]=\"minecraft:magenta_glazed_terracotta\",[620]=\"minecraft:magenta_terracotta\",[621]=\"minecraft:magenta_stained_glass\",[622]=\"minecraft:magenta_stained_glass_pane\",[623]=\"minecraft:magma_block\",[624]=\"minecraft:magma_cream\",[625]=\"minecraft:mangrove_boat\",[626]=\"minecraft:mangrove_planks\",[627]=\"minecraft:mangrove_button\",[628]=\"minecraft:mangrove_chest_boat\",[629]=\"minecraft:mangrove_door\",[630]=\"minecraft:mangrove_fence\",[631]=\"minecraft:mangrove_fence_gate\",[632]=\"minecraft:mangrove_hanging_sign\",[633]=\"minecraft:stripped_mangrove_log\",[634]=\"minecraft:mangrove_logs\",[635]=\"minecraft:mangrove_pressure_plate\",[636]=\"minecraft:mangrove_sign\",[637]=\"minecraft:mangrove_slab\",[638]=\"minecraft:mangrove_stairs\",[639]=\"minecraft:mangrove_trapdoor\",[640]=\"minecraft:mangrove_wood\",[641]=\"minecraft:mangrove_log\",[642]=\"minecraft:map\",[643]=\"minecraft:melon\",[644]=\"minecraft:melon_seeds\",[645]=\"minecraft:mojang_banner_pattern\",[646]=\"minecraft:enchanted_golden_apple\",[647]=\"minecraft:moss_carpet\",[648]=\"minecraft:moss_block\",[649]=\"minecraft:mossy_cobblestone\",[650]=\"minecraft:vine\",[651]=\"minecraft:mossy_cobblestone_slab\",[652]=\"minecraft:mossy_cobblestone_stairs\",[653]=\"minecraft:mossy_cobblestone_wall\",[654]=\"minecraft:mossy_stone_brick_slab\",[655]=\"minecraft:mossy_stone_bricks\",[656]=\"minecraft:mossy_stone_brick_stairs\",[657]=\"minecraft:mossy_stone_brick_wall\",[658]=\"minecraft:mud_brick_slab\",[659]=\"minecraft:mud_bricks\",[660]=\"minecraft:mud_brick_stairs\",[661]=\"minecraft:mud_brick_wall\",[662]=\"minecraft:packed_mud\",[663]=\"minecraft:muddy_mangrove_roots\",[664]=\"minecraft:mud\",[665]=\"minecraft:mangrove_roots\",[666]=\"minecraft:mushroom_stew\",[667]=\"minecraft:red_mushroom\",[668]=\"minecraft:music_disc_5\",[669]=\"minecraft:disc_fragment_5\",[670]=\"minecraft:nether_brick\",[671]=\"minecraft:netherrack\",[672]=\"minecraft:nether_brick_fence\",[673]=\"minecraft:nether_brick_stairs\",[674]=\"minecraft:nether_brick_wall\",[675]=\"minecraft:nether_wart_block\",[676]=\"minecraft:nether_wart\",[677]=\"minecraft:netherite_axe\",[678]=\"minecraft:netherite_upgrade_smithing_template\",[679]=\"minecraft:netherite_block\",[680]=\"minecraft:netherite_boots\",[681]=\"minecraft:netherite_chestplate\",[682]=\"minecraft:netherite_helmet\",[683]=\"minecraft:netherite_hoe\",[684]=\"minecraft:netherite_scrap\",[685]=\"minecraft:netherite_leggings\",[686]=\"minecraft:netherite_pickaxe\",[687]=\"minecraft:ancient_debris\",[688]=\"minecraft:netherite_shovel\",[689]=\"minecraft:netherite_sword\",[690]=\"minecraft:note_block\",[691]=\"minecraft:oak_boat\",[692]=\"minecraft:oak_planks\",[693]=\"minecraft:oak_button\",[694]=\"minecraft:oak_chest_boat\",[695]=\"minecraft:oak_door\",[696]=\"minecraft:oak_fence\",[697]=\"minecraft:oak_fence_gate\",[698]=\"minecraft:oak_hanging_sign\",[699]=\"minecraft:stripped_oak_log\",[700]=\"minecraft:oak_logs\",[701]=\"minecraft:oak_pressure_plate\",[702]=\"minecraft:oak_sign\",[703]=\"minecraft:oak_slab\",[704]=\"minecraft:oak_stairs\",[705]=\"minecraft:oak_trapdoor\",[706]=\"minecraft:oak_wood\",[707]=\"minecraft:oak_log\",[708]=\"minecraft:observer\",[709]=\"minecraft:orange_banner\",[710]=\"minecraft:orange_candle\",[711]=\"minecraft:orange_concrete_powder\",[712]=\"minecraft:orange_tulip\",[713]=\"minecraft:torchflower\",[714]=\"minecraft:orange_glazed_terracotta\",[715]=\"minecraft:orange_terracotta\",[716]=\"minecraft:orange_stained_glass\",[717]=\"minecraft:orange_stained_glass_pane\",[718]=\"minecraft:oxidized_chiseled_copper\",[719]=\"minecraft:oxidized_cut_copper_slab\",[720]=\"minecraft:oxidized_copper\",[721]=\"minecraft:oxidized_cut_copper\",[722]=\"minecraft:oxidized_copper_bulb\",[723]=\"minecraft:oxidized_copper_grate\",[724]=\"minecraft:oxidized_cut_copper_stairs\",[725]=\"minecraft:ice\",[726]=\"minecraft:painting\",[727]=\"minecraft:wool\",[728]=\"minecraft:sugar_cane\",[729]=\"minecraft:pink_banner\",[730]=\"minecraft:pink_candle\",[731]=\"minecraft:pink_concrete_powder\",[732]=\"minecraft:peony\",[733]=\"minecraft:pink_petals\",[734]=\"minecraft:pink_tulip\",[735]=\"minecraft:pink_glazed_terracotta\",[736]=\"minecraft:pink_terracotta\",[737]=\"minecraft:pink_stained_glass\",[738]=\"minecraft:pink_stained_glass_pane\",[739]=\"minecraft:piston\",[740]=\"minecraft:polished_andesite\",[741]=\"minecraft:polished_andesite_slab\",[742]=\"minecraft:polished_andesite_stairs\",[743]=\"minecraft:polished_basalt\",[744]=\"minecraft:basalt\",[745]=\"minecraft:polished_blackstone_brick_slab\",[746]=\"minecraft:polished_blackstone_brick_stairs\",[747]=\"minecraft:polished_blackstone_brick_wall\",[748]=\"minecraft:polished_blackstone_button\",[749]=\"minecraft:polished_blackstone_pressure_plate\",[750]=\"minecraft:polished_blackstone_stairs\",[751]=\"minecraft:polished_blackstone_wall\",[752]=\"minecraft:polished_deepslate_slab\",[753]=\"minecraft:polished_deepslate_stairs\",[754]=\"minecraft:polished_deepslate_wall\",[755]=\"minecraft:polished_diorite\",[756]=\"minecraft:polished_diorite_slab\",[757]=\"minecraft:polished_diorite_stairs\",[758]=\"minecraft:polished_granite\",[759]=\"minecraft:polished_granite_slab\",[760]=\"minecraft:polished_granite_stairs\",[761]=\"minecraft:polished_tuff_slab\",[762]=\"minecraft:polished_tuff_stairs\",[763]=\"minecraft:polished_tuff_wall\",[764]=\"minecraft:chorus_fruit\",[765]=\"minecraft:powered_rail\",[766]=\"minecraft:prismarine\",[767]=\"minecraft:prismarine_brick_slab\",[768]=\"minecraft:prismarine_bricks\",[769]=\"minecraft:prismarine_brick_stairs\",[770]=\"minecraft:prismarine_slab\",[771]=\"minecraft:prismarine_stairs\",[772]=\"minecraft:prismarine_wall\",[773]=\"minecraft:pumpkin_pie\",[774]=\"minecraft:pumpkin\",[775]=\"minecraft:pumpkin_seeds\",[776]=\"minecraft:purple_banner\",[777]=\"minecraft:purple_candle\",[778]=\"minecraft:purple_concrete_powder\",[779]=\"minecraft:purple_glazed_terracotta\",[780]=\"minecraft:purple_terracotta\",[781]=\"minecraft:purple_stained_glass\",[782]=\"minecraft:purple_stained_glass_pane\",[783]=\"minecraft:purpur_block\",[784]=\"minecraft:purpur_pillar\",[785]=\"minecraft:purpur_slab\",[786]=\"minecraft:purpur_stairs\",[787]=\"minecraft:nether_quartz_ore\",[788]=\"minecraft:quartz_bricks\",[789]=\"minecraft:quartz_pillar\",[790]=\"minecraft:quartz_stairs\",[791]=\"minecraft:rabbit_stew\",[792]=\"minecraft:rail\",[793]=\"minecraft:raiser_armor_trim_smithing_template\",[794]=\"minecraft:raw_copper_block\",[795]=\"minecraft:raw_gold_block\",[796]=\"minecraft:raw_iron_block\",[797]=\"minecraft:recovery_compass\",[798]=\"minecraft:echo_shard\",[799]=\"minecraft:red_banner\",[800]=\"minecraft:red_candle\",[801]=\"minecraft:red_concrete_powder\",[802]=\"minecraft:poppy\",[803]=\"minecraft:rose_bush\",[804]=\"minecraft:red_tulip\",[805]=\"minecraft:red_glazed_terracotta\",[806]=\"minecraft:red_terracotta\",[807]=\"minecraft:red_nether_brick_slab\",[808]=\"minecraft:red_nether_bricks\",[809]=\"minecraft:red_nether_brick_stairs\",[810]=\"minecraft:red_nether_brick_wall\",[811]=\"minecraft:red_sand\",[812]=\"minecraft:red_sandstone_stairs\",[813]=\"minecraft:red_sandstone_wall\",[814]=\"minecraft:red_stained_glass\",[815]=\"minecraft:red_stained_glass_pane\",[816]=\"minecraft:redstone_block\",[817]=\"minecraft:deepslate_redstone_ore\",[818]=\"minecraft:redstone_ore\",[819]=\"minecraft:redstone_lamp\",[820]=\"minecraft:repeater\",[821]=\"minecraft:respawn_anchor\",[822]=\"minecraft:crying_obsidian\",[823]=\"minecraft:rib_armor_trim_smithing_template\",[824]=\"minecraft:sandstone_stairs\",[825]=\"minecraft:sandstone_wall\",[826]=\"minecraft:scaffolding\",[827]=\"minecraft:sea_lantern\",[828]=\"minecraft:prismarine_crystals\",[829]=\"minecraft:sentry_armor_trim_smithing_template\",[830]=\"minecraft:shaper_armor_trim_smithing_template\",[831]=\"minecraft:shears\",[832]=\"minecraft:shield\",[833]=\"minecraft:shulker_box\",[834]=\"minecraft:shulker_shell\",[835]=\"minecraft:silence_armor_trim_smithing_template\",[836]=\"minecraft:skull_banner_pattern\",[837]=\"minecraft:wither_skeleton_skull\",[838]=\"minecraft:slime_block\",[839]=\"minecraft:smithing_table\",[840]=\"minecraft:smoker\",[841]=\"minecraft:smooth_basalt\",[842]=\"minecraft:smooth_quartz\",[843]=\"minecraft:smooth_quartz_slab\",[844]=\"minecraft:smooth_quartz_stairs\",[845]=\"minecraft:smooth_red_sandstone\",[846]=\"minecraft:smooth_red_sandstone_slab\",[847]=\"minecraft:smooth_red_sandstone_stairs\",[848]=\"minecraft:smooth_sandstone\",[849]=\"minecraft:smooth_sandstone_slab\",[850]=\"minecraft:smooth_sandstone_stairs\",[851]=\"minecraft:snout_armor_trim_smithing_template\",[852]=\"minecraft:snow\",[853]=\"minecraft:snow_block\",[854]=\"minecraft:snowball\",[855]=\"minecraft:soul_campfire\",[856]=\"minecraft:soul_fire_base_blocks\",[857]=\"minecraft:soul_lantern\",[858]=\"minecraft:soul_torch\",[859]=\"minecraft:spectral_arrow\",[860]=\"minecraft:spire_armor_trim_smithing_template\",[861]=\"minecraft:sponge\",[862]=\"minecraft:wet_sponge\",[863]=\"minecraft:spruce_boat\",[864]=\"minecraft:spruce_planks\",[865]=\"minecraft:spruce_button\",[866]=\"minecraft:spruce_chest_boat\",[867]=\"minecraft:spruce_door\",[868]=\"minecraft:spruce_fence\",[869]=\"minecraft:spruce_fence_gate\",[870]=\"minecraft:spruce_hanging_sign\",[871]=\"minecraft:stripped_spruce_log\",[872]=\"minecraft:spruce_logs\",[873]=\"minecraft:spruce_pressure_plate\",[874]=\"minecraft:spruce_sign\",[875]=\"minecraft:spruce_slab\",[876]=\"minecraft:spruce_stairs\",[877]=\"minecraft:spruce_trapdoor\",[878]=\"minecraft:spruce_wood\",[879]=\"minecraft:spruce_log\",[880]=\"minecraft:spyglass\",[881]=\"minecraft:sticky_piston\",[882]=\"minecraft:stone_axe\",[883]=\"minecraft:stone_tool_materials\",[884]=\"minecraft:stone_brick_stairs\",[885]=\"minecraft:stone_brick_wall\",[886]=\"minecraft:stone_button\",[887]=\"minecraft:stone_hoe\",[888]=\"minecraft:stone_pickaxe\",[889]=\"minecraft:stone_shovel\",[890]=\"minecraft:stone_stairs\",[891]=\"minecraft:stone_sword\",[892]=\"minecraft:stonecutter\",[893]=\"minecraft:stripped_acacia_wood\",[894]=\"minecraft:stripped_birch_wood\",[895]=\"minecraft:stripped_cherry_wood\",[896]=\"minecraft:stripped_crimson_hyphae\",[897]=\"minecraft:stripped_dark_oak_wood\",[898]=\"minecraft:stripped_jungle_wood\",[899]=\"minecraft:stripped_mangrove_wood\",[900]=\"minecraft:stripped_oak_wood\",[901]=\"minecraft:stripped_spruce_wood\",[902]=\"minecraft:stripped_warped_hyphae\",[903]=\"minecraft:stripped_warped_stem\",[904]=\"minecraft:target\",[905]=\"minecraft:tide_armor_trim_smithing_template\",[906]=\"minecraft:tinted_glass\",[907]=\"minecraft:tnt\",[908]=\"minecraft:tnt_minecart\",[909]=\"minecraft:trapped_chest\",[910]=\"minecraft:tuff_brick_stairs\",[911]=\"minecraft:tuff_brick_wall\",[912]=\"minecraft:tuff_stairs\",[913]=\"minecraft:tuff_wall\",[914]=\"minecraft:turtle_helmet\",[915]=\"minecraft:turtle_scute\",[916]=\"minecraft:vex_armor_trim_smithing_template\",[917]=\"minecraft:ward_armor_trim_smithing_template\",[918]=\"minecraft:warped_button\",[919]=\"minecraft:warped_planks\",[920]=\"minecraft:warped_door\",[921]=\"minecraft:warped_fence\",[922]=\"minecraft:warped_fence_gate\",[923]=\"minecraft:warped_fungus_on_a_stick\",[924]=\"minecraft:warped_fungus\",[925]=\"minecraft:warped_hanging_sign\",[926]=\"minecraft:warped_hyphae\",[927]=\"minecraft:warped_stem\",[928]=\"minecraft:warped_stems\",[929]=\"minecraft:warped_pressure_plate\",[930]=\"minecraft:warped_sign\",[931]=\"minecraft:warped_slab\",[932]=\"minecraft:warped_stairs\",[933]=\"minecraft:warped_trapdoor\",[934]=\"minecraft:waxed_chiseled_copper\",[935]=\"minecraft:waxed_cut_copper_slab\",[936]=\"minecraft:waxed_cut_copper\",[937]=\"minecraft:waxed_copper_bulb\",[938]=\"minecraft:waxed_copper_door\",[939]=\"minecraft:waxed_copper_grate\",[940]=\"minecraft:waxed_copper_trapdoor\",[941]=\"minecraft:waxed_cut_copper_stairs\",[942]=\"minecraft:waxed_exposed_chiseled_copper\",[943]=\"minecraft:waxed_exposed_cut_copper_slab\",[944]=\"minecraft:waxed_exposed_copper\",[945]=\"minecraft:waxed_exposed_cut_copper\",[946]=\"minecraft:waxed_exposed_copper_bulb\",[947]=\"minecraft:waxed_exposed_copper_door\",[948]=\"minecraft:exposed_copper_door\",[949]=\"minecraft:waxed_exposed_copper_grate\",[950]=\"minecraft:waxed_exposed_copper_trapdoor\",[951]=\"minecraft:exposed_copper_trapdoor\",[952]=\"minecraft:waxed_exposed_cut_copper_stairs\",[953]=\"minecraft:waxed_oxidized_chiseled_copper\",[954]=\"minecraft:waxed_oxidized_cut_copper_slab\",[955]=\"minecraft:waxed_oxidized_copper\",[956]=\"minecraft:waxed_oxidized_cut_copper\",[957]=\"minecraft:waxed_oxidized_copper_bulb\",[958]=\"minecraft:waxed_oxidized_copper_door\",[959]=\"minecraft:oxidized_copper_door\",[960]=\"minecraft:waxed_oxidized_copper_grate\",[961]=\"minecraft:waxed_oxidized_copper_trapdoor\",[962]=\"minecraft:oxidized_copper_trapdoor\",[963]=\"minecraft:waxed_oxidized_cut_copper_stairs\",[964]=\"minecraft:waxed_weathered_chiseled_copper\",[965]=\"minecraft:waxed_weathered_cut_copper_slab\",[966]=\"minecraft:weathered_chiseled_copper\",[967]=\"minecraft:waxed_weathered_copper\",[968]=\"minecraft:waxed_weathered_cut_copper\",[969]=\"minecraft:waxed_weathered_copper_bulb\",[970]=\"minecraft:weathered_copper_bulb\",[971]=\"minecraft:waxed_weathered_copper_door\",[972]=\"minecraft:weathered_copper_door\",[973]=\"minecraft:weathered_copper\",[974]=\"minecraft:waxed_weathered_copper_grate\",[975]=\"minecraft:weathered_copper_grate\",[976]=\"minecraft:waxed_weathered_copper_trapdoor\",[977]=\"minecraft:weathered_copper_trapdoor\",[978]=\"minecraft:weathered_cut_copper\",[979]=\"minecraft:weathered_cut_copper_slab\",[980]=\"minecraft:waxed_weathered_cut_copper_stairs\",[981]=\"minecraft:weathered_cut_copper_stairs\",[982]=\"minecraft:wayfinder_armor_trim_smithing_template\",[983]=\"minecraft:white_banner\",[984]=\"minecraft:white_candle\",[985]=\"minecraft:white_concrete_powder\",[986]=\"minecraft:lily_of_the_valley\",[987]=\"minecraft:white_glazed_terracotta\",[988]=\"minecraft:white_terracotta\",[989]=\"minecraft:white_stained_glass\",[990]=\"minecraft:white_stained_glass_pane\",[991]=\"minecraft:wild_armor_trim_smithing_template\",[992]=\"minecraft:wind_charge\",[993]=\"minecraft:wolf_armor\",[994]=\"minecraft:armadillo_scute\",[995]=\"minecraft:wooden_axe\",[996]=\"minecraft:wooden_hoe\",[997]=\"minecraft:wooden_pickaxe\",[998]=\"minecraft:wooden_shovel\",[999]=\"minecraft:wooden_sword\",[1000]=\"minecraft:writable_book\",[1001]=\"minecraft:yellow_banner\",[1002]=\"minecraft:yellow_candle\",[1003]=\"minecraft:yellow_concrete_powder\",[1004]=\"minecraft:dandelion\",[1005]=\"minecraft:sunflower\",[1006]=\"minecraft:yellow_glazed_terracotta\",[1007]=\"minecraft:yellow_terracotta\",[1008]=\"minecraft:yellow_stained_glass\",[1009]=\"minecraft:yellow_stained_glass_pane\"}}",
  ["ceetos/recipes/vanilla-recipes-1.21.1-1.lua"] = "return{[\"schema\"]=1,[\"minecraft\"]=\"1.21.1\",[\"recipes\"]={[\"minecraft:acacia_boat\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=1,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=2,[3]=2,[4]=2,[5]=2,[6]=2},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"boat\"},[\"special\"]=false},[\"minecraft:acacia_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=14,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=2,[2]=2},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_pressure_plate\"},[\"special\"]=false},[\"minecraft:andesite\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=26,[\"count\"]=2,[\"ingredients\"]={{27,1,false},{28,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:armor_dye\"]={[\"kind\"]=\"crafting_special_armordye\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:bamboo_chest_raft\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=45,[\"count\"]=1,[\"ingredients\"]={{5,1,false},{46,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"chest_boat\"},[\"special\"]=false},[\"minecraft:bamboo_planks\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=44,[\"count\"]=2,[\"ingredients\"]={{56,1,true}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"planks\"},[\"special\"]=false},[\"minecraft:barrel\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=61,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-63,[3]=-62,[4]=-62,[6]=-62,[7]=-62,[8]=-63,[9]=-62},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:birch_fence\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=78,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=74,[2]=8,[3]=74,[4]=74,[5]=8,[6]=74},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_fence\"},[\"special\"]=false},[\"minecraft:birch_trapdoor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=87,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=74,[2]=74,[3]=74,[4]=74,[5]=74,[6]=74},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_trapdoor\"},[\"special\"]=false},[\"minecraft:black_dye_from_wither_rose\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=95,[\"count\"]=1,[\"ingredients\"]={{101,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"black_dye\"},[\"special\"]=false},[\"minecraft:blackstone_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=110,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=109,[4]=109,[5]=109,[7]=109,[8]=109,[9]=109},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:blue_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=120,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{121,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:blue_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=131,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=130,[2]=130,[3]=130,[4]=130,[5]=130,[6]=130},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:book\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=139,[\"count\"]=1,[\"ingredients\"]={{140,1,false},{140,1,false},{140,1,false},{141,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:brick_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=151,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=152,[2]=152,[3]=152},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:brown_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=157,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=156,[2]=156,[3]=156,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:brown_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=166,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=159,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:carrot_on_a_stick\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=179,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=180,[4]=181},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:cherry_door\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=191,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=188,[2]=188,[3]=188,[4]=188,[5]=188,[6]=188},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_door\"},[\"special\"]=false},[\"minecraft:cherry_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=200,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=188,[4]=188,[5]=188,[7]=188,[8]=188,[9]=188},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_stairs\"},[\"special\"]=false},[\"minecraft:chiseled_copper_from_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=207,[\"count\"]=1,[\"ingredients\"]={{210,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:chiseled_quartz_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=220,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=221,[2]=221},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:chiseled_stone_bricks_stone_from_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=229,[\"count\"]=1,[\"ingredients\"]={{232,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:clock\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=241,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=242,[4]=242,[5]=243,[6]=242,[8]=242},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:coast_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=250,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=250,[3]=133,[4]=133,[5]=28,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:cobblestone_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=253,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=28,[2]=28,[3]=28},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:composter\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=259,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-63,[3]=-63,[4]=-63,[6]=-63,[7]=-63,[8]=-63,[9]=-63},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:cooked_cod\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=267,[\"count\"]=1,[\"ingredients\"]={{268,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cooked_porkchop_from_smoking\"]={[\"kind\"]=\"smoking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smoke\",[\"output\"]=271,[\"count\"]=1,[\"ingredients\"]={{272,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:copper_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=209,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=168,[2]=168,[3]=168,[4]=168,[5]=168,[6]=168,[7]=168,[8]=168,[9]=168},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:copper_ingot_from_blasting_raw_copper\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=168,[\"count\"]=1,[\"ingredients\"]={{283,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.7,[\"category\"]=\"misc\",[\"group\"]=\"copper_ingot\"},[\"special\"]=false},[\"minecraft:cracked_nether_bricks\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=290,[\"count\"]=1,[\"ingredients\"]={{216,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:crimson_fence\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=302,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=300,[2]=8,[3]=300,[4]=300,[5]=8,[6]=300},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_fence\"},[\"special\"]=false},[\"minecraft:crimson_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=312,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=300,[4]=300,[5]=300,[7]=300,[8]=300,[9]=300},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_stairs\"},[\"special\"]=false},[\"minecraft:cut_copper_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=316,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=210,[4]=210,[5]=210,[7]=210,[8]=210,[9]=210},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:cut_sandstone\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=319,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=228,[2]=228,[3]=228,[4]=228},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:cyan_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=326,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=322,[2]=322},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:cyan_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=331,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=325,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:dark_oak_planks\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=335,[\"count\"]=4,[\"ingredients\"]={{343,1,true}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"planks\"},[\"special\"]=false},[\"minecraft:dark_prismarine_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=353,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=351,[2]=351,[3]=351},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:deepslate_brick_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=358,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=287,[2]=287,[3]=287},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:deepslate_brick_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=361,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=287,[2]=287,[3]=287,[4]=287,[5]=287,[6]=287},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:deepslate_tile_slab_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=362,[\"count\"]=2,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tile_stairs_from_polished_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=363,[\"count\"]=1,[\"ingredients\"]={{359,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tiles_from_deepslate_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=289,[\"count\"]=1,[\"ingredients\"]={{287,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:diamond_from_blasting_deepslate_diamond_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=133,[\"count\"]=1,[\"ingredients\"]={{371,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"diamond\"},[\"special\"]=false},[\"minecraft:diamond_shovel\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=377,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=8,[3]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:diorite_wall_from_diorite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=381,[\"count\"]=1,[\"ingredients\"]={{27,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:dropper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=296,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=28,[2]=28,[3]=28,[4]=28,[6]=28,[7]=28,[8]=243,[9]=28},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:dye_blue_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=118,[\"count\"]=1,[\"ingredients\"]={{121,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:dye_gray_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=391,[\"count\"]=1,[\"ingredients\"]={{390,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:dye_light_gray_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=400,[\"count\"]=1,[\"ingredients\"]={{401,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_magenta_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=411,[\"count\"]=1,[\"ingredients\"]={{409,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:dye_purple_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=422,[\"count\"]=1,[\"ingredients\"]={{421,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:dye_yellow_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=432,[\"count\"]=1,[\"ingredients\"]={{433,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:emerald_from_smelting_emerald_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=436,[\"count\"]=1,[\"ingredients\"]={{439,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"emerald\"},[\"special\"]=false},[\"minecraft:end_stone_brick_stairs_from_end_stone_brick_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=449,[\"count\"]=1,[\"ingredients\"]={{447,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:ender_eye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=442,[\"count\"]=1,[\"ingredients\"]={{452,1,false},{115,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:exposed_cut_copper_from_exposed_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=456,[\"count\"]=4,[\"ingredients\"]={{455,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:eye_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{460,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:fletching_table\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=467,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=37,[2]=37,[3]=-62,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:glass\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=65,[\"count\"]=1,[\"ingredients\"]={{475,1,true}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:gold_ingot_from_blasting_gold_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=242,[\"count\"]=1,[\"ingredients\"]={{487,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"gold_ingot\"},[\"special\"]=false},[\"minecraft:gold_ingot_from_smelting_raw_gold\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=242,[\"count\"]=1,[\"ingredients\"]={{489,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"gold_ingot\"},[\"special\"]=false},[\"minecraft:golden_chestplate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=495,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=242,[3]=242,[4]=242,[5]=242,[6]=242,[7]=242,[8]=242,[9]=242},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:granite_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=503,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=502,[2]=502,[3]=502},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:gray_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=507,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{390,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:gray_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=510,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=390,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:green_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=519,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=328,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:honey_bottle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=526,[\"count\"]=4,[\"ingredients\"]={{525,1,false},{476,1,false},{476,1,false},{476,1,false},{476,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:iron_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=33,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22,[3]=22,[4]=22,[5]=22,[6]=22,[7]=22,[8]=22,[9]=22},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:iron_ingot_from_blasting_raw_iron\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=22,[\"count\"]=1,[\"ingredients\"]={{540,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.7,[\"category\"]=\"misc\",[\"group\"]=\"iron_ingot\"},[\"special\"]=false},[\"minecraft:iron_nugget_from_blasting\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=184,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.1,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:jukebox\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=549,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-62,[3]=-62,[4]=-62,[5]=133,[6]=-62,[7]=-62,[8]=-62,[9]=-62},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:jungle_planks\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=551,[\"count\"]=4,[\"ingredients\"]={{559,1,true}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"planks\"},[\"special\"]=false},[\"minecraft:lantern\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=568,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=184,[2]=184,[3]=184,[4]=184,[5]=548,[6]=184,[7]=184,[8]=184,[9]=184},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:leather\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=141,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=574,[2]=574,[3]=574,[4]=574},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:light_blue_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=582,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=399,[2]=399,[3]=399,[4]=399,[5]=399,[6]=399,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:light_blue_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=588,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=397,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:light_gray_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=592,[\"count\"]=8,[\"ingredients\"]={{401,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:light_gray_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=598,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=597,[2]=597,[3]=597,[4]=597,[5]=597,[6]=597},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:lime_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=406,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=407,[2]=407},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:lime_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=606,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=405,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:magenta_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=616,[\"count\"]=8,[\"ingredients\"]={{409,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:magenta_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=622,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=621,[2]=621,[3]=621,[4]=621,[5]=621,[6]=621},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:mangrove_door\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=629,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=626,[2]=626,[3]=626,[4]=626,[5]=626,[6]=626},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_door\"},[\"special\"]=false},[\"minecraft:mangrove_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=638,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=626,[4]=626,[5]=626,[7]=626,[8]=626,[9]=626},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_stairs\"},[\"special\"]=false},[\"minecraft:minecart\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=205,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[3]=22,[4]=22,[5]=22,[6]=22},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:mossy_cobblestone_stairs_from_mossy_cobblestone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=652,[\"count\"]=1,[\"ingredients\"]={{649,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:mossy_stone_brick_wall_from_mossy_stone_brick_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=657,[\"count\"]=1,[\"ingredients\"]={{655,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:mud_brick_wall_from_mud_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=661,[\"count\"]=1,[\"ingredients\"]={{659,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:nether_brick_slab_from_nether_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=215,[\"count\"]=2,[\"ingredients\"]={{216,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:netherite_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=679,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=610,[2]=610,[3]=610,[4]=610,[5]=610,[6]=610,[7]=610,[8]=610,[9]=610},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:netherite_pickaxe_smithing\"]={[\"kind\"]=\"smithing_transform\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=686,[\"count\"]=1,[\"ingredients\"]={{376,1,false},{610,1,false},{678,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:oak_button\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=693,[\"count\"]=1,[\"ingredients\"]={{692,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_button\"},[\"special\"]=false},[\"minecraft:oak_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=702,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=692,[2]=692,[3]=692,[4]=692,[5]=692,[6]=692,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_sign\"},[\"special\"]=false},[\"minecraft:orange_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=710,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{413,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:orange_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=717,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=716,[2]=716,[3]=716,[4]=716,[5]=716,[6]=716},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:oxidized_copper_grate_from_oxidized_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=723,[\"count\"]=4,[\"ingredients\"]={{720,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:oxidized_cut_copper_stairs_from_oxidized_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=724,[\"count\"]=1,[\"ingredients\"]={{721,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:pink_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=418,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=419,[2]=419},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:pink_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=738,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=737,[2]=737,[3]=737,[4]=737,[5]=737,[6]=737},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:polished_andesite_slab_from_polished_andesite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=741,[\"count\"]=2,[\"ingredients\"]={{740,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_brick_slab_from_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=745,[\"count\"]=2,[\"ingredients\"]={{109,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_brick_wall_from_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=747,[\"count\"]=1,[\"ingredients\"]={{109,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=749,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=219,[2]=219},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:polished_blackstone_wall_from_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=751,[\"count\"]=1,[\"ingredients\"]={{109,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_deepslate_stairs_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=753,[\"count\"]=1,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_diorite_slab_from_diorite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=756,[\"count\"]=2,[\"ingredients\"]={{27,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_granite_slab_from_granite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=759,[\"count\"]=2,[\"ingredients\"]={{502,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_tuff_slab_from_polished_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=761,[\"count\"]=2,[\"ingredients\"]={{237,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:popped_chorus_fruit\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=445,[\"count\"]=1,[\"ingredients\"]={{764,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:prismarine_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=770,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=766,[2]=766,[3]=766},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:purple_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=776,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=423,[2]=423,[3]=423,[4]=423,[5]=423,[6]=423,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:purple_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=782,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=781,[2]=781,[3]=781,[4]=781,[5]=781,[6]=781},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:purpur_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=786,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:quartz_pillar_from_quartz_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=789,[\"count\"]=1,[\"ingredients\"]={{222,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:raiser_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=793,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=793,[3]=133,[4]=133,[5]=107,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:recovery_compass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=797,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=798,[2]=798,[3]=798,[4]=798,[5]=258,[6]=798,[7]=798,[8]=798,[9]=798},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:red_dye_from_rose_bush\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=425,[\"count\"]=2,[\"ingredients\"]={{803,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"red_dye\"},[\"special\"]=false},[\"minecraft:red_nether_brick_wall_from_red_nether_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=810,[\"count\"]=1,[\"ingredients\"]={{808,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:red_sandstone_wall_from_red_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=813,[\"count\"]=1,[\"ingredients\"]={{225,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:redstone_from_blasting_redstone_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=243,[\"count\"]=1,[\"ingredients\"]={{818,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.7,[\"category\"]=\"blocks\",[\"group\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:rib_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=823,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=823,[3]=133,[4]=133,[5]=671,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:sandstone_wall_from_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=825,[\"count\"]=1,[\"ingredients\"]={{228,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:shield\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=832,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=22,[3]=-62,[4]=-62,[5]=-62,[6]=-62,[8]=-62},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:slime_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=838,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=573,[2]=573,[3]=573,[4]=573,[5]=573,[6]=573,[7]=573,[8]=573,[9]=573},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:smooth_quartz_stairs_from_smooth_quartz_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=844,[\"count\"]=1,[\"ingredients\"]={{842,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:smooth_sandstone_slab_from_smooth_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=849,[\"count\"]=2,[\"ingredients\"]={{848,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:snow\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=852,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=853,[2]=853,[3]=853},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:sponge\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=861,[\"count\"]=1,[\"ingredients\"]={{862,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.15,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:spruce_planks\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=864,[\"count\"]=4,[\"ingredients\"]={{872,1,true}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"planks\"},[\"special\"]=false},[\"minecraft:stick\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=8,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"sticks\"},[\"special\"]=false},[\"minecraft:stone_brick_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=884,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=231,[4]=231,[5]=231,[7]=231,[8]=231,[9]=231},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:stone_button\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=886,[\"count\"]=1,[\"ingredients\"]={{232,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:stone_stairs_from_stone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=890,[\"count\"]=1,[\"ingredients\"]={{232,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:stripped_jungle_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=898,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=558,[2]=558,[3]=558,[4]=558},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:target\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=904,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=243,[4]=243,[5]=523,[6]=243,[8]=243},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:torch\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=548,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=8},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:tuff_brick_stairs_from_polished_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=910,[\"count\"]=1,[\"ingredients\"]={{237,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:tuff_bricks_from_polished_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=238,[\"count\"]=1,[\"ingredients\"]={{237,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:turtle_helmet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=914,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=915,[2]=915,[3]=915,[4]=915,[6]=915},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:warped_fence_gate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=922,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=919,[3]=8,[4]=8,[5]=919,[6]=8},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_fence_gate\"},[\"special\"]=false},[\"minecraft:warped_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=932,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=919,[4]=919,[5]=919,[7]=919,[8]=919,[9]=919},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_stairs\"},[\"special\"]=false},[\"minecraft:waxed_copper_bulb_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=937,[\"count\"]=1,[\"ingredients\"]={{278,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_copper_bulb\"},[\"special\"]=false},[\"minecraft:waxed_cut_copper_from_waxed_copper_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=936,[\"count\"]=4,[\"ingredients\"]={{284,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_cut_copper_stairs_from_waxed_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=941,[\"count\"]=1,[\"ingredients\"]={{936,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_exposed_copper_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=944,[\"count\"]=1,[\"ingredients\"]={{455,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_exposed_copper\"},[\"special\"]=false},[\"minecraft:waxed_exposed_cut_copper_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=943,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=945,[2]=945,[3]=945},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_exposed_cut_copper_slab\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_chiseled_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=953,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=954,[2]=954},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_oxidized_cut_copper_chiseled\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_copper_grate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=960,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=955,[4]=955,[6]=955,[8]=955},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_cut_copper_slab_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=954,[\"count\"]=1,[\"ingredients\"]={{719,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_oxidized_cut_copper_slab\"},[\"special\"]=false},[\"minecraft:waxed_weathered_chiseled_copper_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=964,[\"count\"]=1,[\"ingredients\"]={{966,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_weathered_chiseled_copper\"},[\"special\"]=false},[\"minecraft:waxed_weathered_copper_grate_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=974,[\"count\"]=1,[\"ingredients\"]={{975,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_weathered_copper_grate\"},[\"special\"]=false},[\"minecraft:waxed_weathered_cut_copper_slab_from_waxed_weathered_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=965,[\"count\"]=8,[\"ingredients\"]={{967,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:weathered_chiseled_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=966,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=979,[2]=979},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:weathered_cut_copper_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=979,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=978,[2]=978,[3]=978},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:white_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=428,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=431,[2]=431,[3]=431,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:white_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=990,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=989,[2]=989,[3]=989,[4]=989,[5]=989,[6]=989},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:wooden_axe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=995,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-62,[3]=-62,[4]=8,[6]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:yellow_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=1002,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{433,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:yellow_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=1009,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=433,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false}},[\"counts\"]={[\"crafting_shaped\"]=634,[\"crafting_shapeless\"]=253,[\"stonecutting\"]=250,[\"crafting_special_armordye\"]=1,[\"smelting\"]=70,[\"campfire_cooking\"]=9,[\"smoking\"]=9,[\"crafting_special_bannerduplicate\"]=1,[\"smithing_trim\"]=18,[\"crafting_special_bookcloning\"]=1,[\"blasting\"]=24,[\"crafting_decorated_pot\"]=1,[\"crafting_special_firework_rocket\"]=1,[\"crafting_special_firework_star\"]=1,[\"crafting_special_firework_star_fade\"]=1,[\"crafting_special_mapcloning\"]=1,[\"crafting_special_mapextending\"]=1,[\"smithing_transform\"]=9,[\"crafting_special_repairitem\"]=1,[\"crafting_special_shielddecoration\"]=1,[\"crafting_special_shulkerboxcoloring\"]=1,[\"crafting_special_suspiciousstew\"]=1,[\"crafting_special_tippedarrow\"]=1}}",
  ["ceetos/recipes/vanilla-recipes-1.21.1-2.lua"] = "return{[\"schema\"]=1,[\"minecraft\"]=\"1.21.1\",[\"recipes\"]={[\"minecraft:acacia_button\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=3,[\"count\"]=1,[\"ingredients\"]={{2,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_button\"},[\"special\"]=false},[\"minecraft:acacia_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=15,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=2,[2]=2,[3]=2,[4]=2,[5]=2,[6]=2,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_sign\"},[\"special\"]=false},[\"minecraft:andesite_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=29,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=26,[2]=26,[3]=26},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:armor_stand\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=34,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=8,[3]=8,[5]=8,[7]=8,[8]=35,[9]=8},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:bamboo_door\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=47,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=44,[2]=44,[3]=44,[4]=44,[5]=44,[6]=44},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_door\"},[\"special\"]=false},[\"minecraft:bamboo_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=57,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=44,[2]=44},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_pressure_plate\"},[\"special\"]=false},[\"minecraft:beacon\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=64,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=66,[6]=65,[7]=67,[8]=67,[9]=67},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:birch_fence_gate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=79,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=74,[3]=8,[4]=8,[5]=74,[6]=8},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_fence_gate\"},[\"special\"]=false},[\"minecraft:birch_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=88,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=89,[2]=89,[3]=89,[4]=89},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:black_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=102,[\"count\"]=1,[\"ingredients\"]={{103,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:blackstone_stairs_from_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=110,[\"count\"]=1,[\"ingredients\"]={{109,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:blue_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=122,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=118,[2]=118},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:blue_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=131,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=121,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:book_cloning\"]={[\"kind\"]=\"crafting_special_bookcloning\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:brick_slab_from_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=151,[\"count\"]=2,[\"ingredients\"]={{152,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:brown_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=158,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{159,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:brown_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=164,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=159,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:cartography_table\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=182,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=140,[2]=140,[3]=-62,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:cherry_fence\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=192,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=188,[2]=8,[3]=188,[4]=188,[5]=8,[6]=188},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_fence\"},[\"special\"]=false},[\"minecraft:cherry_trapdoor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=201,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=188,[2]=188,[3]=188,[4]=188,[5]=188,[6]=188},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_trapdoor\"},[\"special\"]=false},[\"minecraft:chiseled_deepslate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=211,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=212,[2]=212},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:chiseled_quartz_block_from_quartz_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=220,[\"count\"]=1,[\"ingredients\"]={{222,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:chiseled_tuff\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=233,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=234,[2]=234},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:coal\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=244,[\"count\"]=9,[\"ingredients\"]={{245,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:coast_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{250,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:cobblestone_slab_from_cobblestone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=253,[\"count\"]=2,[\"ingredients\"]={{28,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:conduit\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=260,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=261,[2]=261,[3]=261,[4]=261,[5]=262,[6]=261,[7]=261,[8]=261,[9]=261},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:cooked_cod_from_campfire_cooking\"]={[\"kind\"]=\"campfire_cooking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Campfire\",[\"output\"]=267,[\"count\"]=1,[\"ingredients\"]={{268,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=600,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cooked_rabbit\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=273,[\"count\"]=1,[\"ingredients\"]={{274,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:copper_bulb\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=278,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=209,[4]=209,[5]=116,[6]=209,[8]=243},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:copper_ingot_from_smelting_copper_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=168,[\"count\"]=1,[\"ingredients\"]={{281,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.7,[\"category\"]=\"misc\",[\"group\"]=\"copper_ingot\"},[\"special\"]=false},[\"minecraft:cracked_polished_blackstone_bricks\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=291,[\"count\"]=1,[\"ingredients\"]={{292,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:crimson_fence_gate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=303,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=300,[3]=8,[4]=8,[5]=300,[6]=8},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_fence_gate\"},[\"special\"]=false},[\"minecraft:crimson_trapdoor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=313,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=300,[2]=300,[3]=300,[4]=300,[5]=300,[6]=300},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_trapdoor\"},[\"special\"]=false},[\"minecraft:cut_copper_stairs_from_copper_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=316,[\"count\"]=4,[\"ingredients\"]={{209,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cut_sandstone_from_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=319,[\"count\"]=1,[\"ingredients\"]={{228,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cyan_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=327,[\"count\"]=8,[\"ingredients\"]={{325,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:dark_oak_boat\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=334,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=335,[3]=335,[4]=335,[5]=335,[6]=335},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"boat\"},[\"special\"]=false},[\"minecraft:dark_oak_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=344,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=335,[2]=335},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_pressure_plate\"},[\"special\"]=false},[\"minecraft:dark_prismarine_slab_from_dark_prismarine_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=353,[\"count\"]=2,[\"ingredients\"]={{351,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_brick_slab_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=358,[\"count\"]=2,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_brick_wall_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=361,[\"count\"]=1,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tile_slab_from_deepslate_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=362,[\"count\"]=2,[\"ingredients\"]={{287,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tile_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=364,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=289,[2]=289,[3]=289,[4]=289,[5]=289,[6]=289},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:deepslate_tiles_from_polished_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=289,[\"count\"]=1,[\"ingredients\"]={{359,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:diamond_from_blasting_diamond_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=133,[\"count\"]=1,[\"ingredients\"]={{372,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"diamond\"},[\"special\"]=false},[\"minecraft:diamond_sword\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=378,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=133,[3]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:dispenser\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=382,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=28,[2]=28,[3]=28,[4]=28,[5]=143,[6]=28,[7]=28,[8]=243,[9]=28},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:dune_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=388,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=388,[3]=133,[4]=133,[5]=228,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:dye_brown_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=157,[\"count\"]=1,[\"ingredients\"]={{159,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_gray_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=392,[\"count\"]=1,[\"ingredients\"]={{390,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:dye_light_gray_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=402,[\"count\"]=1,[\"ingredients\"]={{401,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:dye_orange_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=412,[\"count\"]=1,[\"ingredients\"]={{413,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_purple_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=423,[\"count\"]=1,[\"ingredients\"]={{421,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:dye_yellow_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=434,[\"count\"]=1,[\"ingredients\"]={{433,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:enchanting_table\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=440,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=139,[4]=133,[5]=67,[6]=133,[7]=67,[8]=67,[9]=67},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:end_stone_brick_stairs_from_end_stone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=449,[\"count\"]=1,[\"ingredients\"]={{448,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:exposed_chiseled_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=453,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=454,[2]=454},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:exposed_cut_copper_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=454,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=456,[2]=456,[3]=456},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:fermented_spider_eye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=461,[\"count\"]=1,[\"ingredients\"]={{462,1,false},{463,1,false},{172,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:flint_and_steel\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=468,[\"count\"]=1,[\"ingredients\"]={{22,1,false},{37,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:glass_bottle\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=476,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=65,[3]=65,[5]=65},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:gold_ingot_from_blasting_nether_gold_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=242,[\"count\"]=1,[\"ingredients\"]={{488,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"gold_ingot\"},[\"special\"]=false},[\"minecraft:gold_nugget\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=478,[\"count\"]=9,[\"ingredients\"]={{242,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:golden_helmet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=496,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=242,[2]=242,[3]=242,[4]=242,[6]=242},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:granite_slab_from_granite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=503,[\"count\"]=2,[\"ingredients\"]={{502,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:gray_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=391,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=392,[2]=392},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:green_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=513,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=395,[2]=395,[3]=395,[4]=395,[5]=395,[6]=395,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:green_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=520,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=519,[2]=519,[3]=519,[4]=519,[5]=519,[6]=519},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:honeycomb_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=527,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=69,[2]=69,[3]=69,[4]=69},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:iron_boots\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=533,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[3]=22,[4]=22,[6]=22},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:iron_ingot_from_iron_block\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=22,[\"count\"]=9,[\"ingredients\"]={{33,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"iron_ingot\"},[\"special\"]=false},[\"minecraft:iron_nugget_from_smelting\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=184,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:jungle_boat\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=550,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=551,[3]=551,[4]=551,[5]=551,[6]=551},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"boat\"},[\"special\"]=false},[\"minecraft:jungle_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=560,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=551,[2]=551},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_pressure_plate\"},[\"special\"]=false},[\"minecraft:lapis_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=569,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=124,[2]=124,[3]=124,[4]=124,[5]=124,[6]=124,[7]=124,[8]=124,[9]=124},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:leather_boots\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=575,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=141,[3]=141,[4]=141,[6]=141},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:light_blue_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=396,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=399,[2]=399,[3]=399,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:light_blue_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=589,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=588,[2]=588,[3]=588,[4]=588,[5]=588,[6]=588},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:light_gray_dye_from_azure_bluet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=401,[\"count\"]=1,[\"ingredients\"]={{593,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"light_gray_dye\"},[\"special\"]=false},[\"minecraft:light_gray_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=598,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=401,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:lime_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=603,[\"count\"]=8,[\"ingredients\"]={{405,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:lodestone\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=609,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=229,[2]=229,[3]=229,[4]=229,[5]=610,[6]=229,[7]=229,[8]=229,[9]=229},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:magenta_dye_from_allium\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=409,[\"count\"]=1,[\"ingredients\"]={{617,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"magenta_dye\"},[\"special\"]=false},[\"minecraft:magenta_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=622,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=409,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:mangrove_fence\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=630,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=626,[2]=8,[3]=626,[4]=626,[5]=8,[6]=626},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_fence\"},[\"special\"]=false},[\"minecraft:mangrove_trapdoor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=639,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=626,[2]=626,[3]=626,[4]=626,[5]=626,[6]=626},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_trapdoor\"},[\"special\"]=false},[\"minecraft:mojang_banner_pattern\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=645,[\"count\"]=1,[\"ingredients\"]={{140,1,false},{646,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:mossy_cobblestone_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=653,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=649,[2]=649,[3]=649,[4]=649,[5]=649,[6]=649},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:mossy_stone_bricks_from_moss_block\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=655,[\"count\"]=1,[\"ingredients\"]={{231,1,false},{648,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"mossy_stone_bricks\"},[\"special\"]=false},[\"minecraft:mud_bricks\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=659,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=662,[2]=662,[3]=662,[4]=662},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:nether_brick_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=673,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=216,[4]=216,[5]=216,[7]=216,[8]=216,[9]=216},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:netherite_boots_smithing\"]={[\"kind\"]=\"smithing_transform\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=680,[\"count\"]=1,[\"ingredients\"]={{369,1,false},{610,1,false},{678,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:netherite_scrap\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=684,[\"count\"]=1,[\"ingredients\"]={{687,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=2,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:oak_chest_boat\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=694,[\"count\"]=1,[\"ingredients\"]={{5,1,false},{691,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"chest_boat\"},[\"special\"]=false},[\"minecraft:oak_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=703,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=692,[2]=692,[3]=692},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_slab\"},[\"special\"]=false},[\"minecraft:orange_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=414,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=415,[2]=415},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:orange_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=717,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=413,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:oxidized_cut_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=721,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=720,[2]=720,[3]=720,[4]=720},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:packed_ice\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=129,[\"count\"]=1,[\"ingredients\"]={{725,1,false},{725,1,false},{725,1,false},{725,1,false},{725,1,false},{725,1,false},{725,1,false},{725,1,false},{725,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:pink_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=731,[\"count\"]=8,[\"ingredients\"]={{417,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:pink_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=738,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=417,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:polished_andesite_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=742,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=740,[4]=740,[5]=740,[7]=740,[8]=740,[9]=740},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_blackstone_brick_slab_from_polished_blackstone_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=745,[\"count\"]=2,[\"ingredients\"]={{292,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_brick_wall_from_polished_blackstone_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=747,[\"count\"]=1,[\"ingredients\"]={{292,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=218,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=219,[2]=219,[3]=219},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_blackstone_wall_from_polished_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=751,[\"count\"]=1,[\"ingredients\"]={{219,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_deepslate_stairs_from_polished_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=753,[\"count\"]=1,[\"ingredients\"]={{359,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_diorite_slab_from_polished_diorite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=756,[\"count\"]=2,[\"ingredients\"]={{755,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_granite_slab_from_polished_granite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=759,[\"count\"]=2,[\"ingredients\"]={{758,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_tuff_slab_from_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=761,[\"count\"]=2,[\"ingredients\"]={{239,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:powered_rail\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=765,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=242,[3]=242,[4]=242,[5]=8,[6]=242,[7]=242,[8]=243,[9]=242},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:prismarine_slab_from_prismarine_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=770,[\"count\"]=2,[\"ingredients\"]={{766,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:purple_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=420,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=423,[2]=423,[3]=423,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:purple_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=782,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=421,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:purpur_stairs_from_purpur_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=786,[\"count\"]=1,[\"ingredients\"]={{783,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:quartz_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=221,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:raiser_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{793,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:red_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=799,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=427,[2]=427,[3]=427,[4]=427,[5]=427,[6]=427,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:red_dye_from_tulip\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=425,[\"count\"]=1,[\"ingredients\"]={{804,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"red_dye\"},[\"special\"]=false},[\"minecraft:red_nether_bricks\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=808,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=670,[2]=676,[3]=676,[4]=670},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:red_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=814,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=425,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:redstone_from_smelting_deepslate_redstone_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=243,[\"count\"]=1,[\"ingredients\"]={{817,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.7,[\"category\"]=\"blocks\",[\"group\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:rib_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{823,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:scaffolding\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=826,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=42,[2]=144,[3]=42,[4]=42,[6]=42,[7]=42,[9]=42},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:shield_decoration\"]={[\"kind\"]=\"crafting_special_shielddecoration\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:smithing_table\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=839,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22,[3]=-62,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:smooth_red_sandstone\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=845,[\"count\"]=1,[\"ingredients\"]={{225,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:smooth_sandstone_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=850,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=848,[4]=848,[5]=848,[7]=848,[8]=848,[9]=848},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:snow_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=853,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=854,[2]=854,[3]=854,[4]=854},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:spruce_boat\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=863,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=864,[3]=864,[4]=864,[5]=864,[6]=864},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"boat\"},[\"special\"]=false},[\"minecraft:spruce_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=873,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=864,[2]=864},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_pressure_plate\"},[\"special\"]=false},[\"minecraft:stick_from_bamboo_item\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=8,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=42,[2]=42},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"sticks\"},[\"special\"]=false},[\"minecraft:stone_brick_stairs_from_stone_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=884,[\"count\"]=1,[\"ingredients\"]={{231,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:stone_hoe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=887,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-883,[2]=-883,[4]=8,[6]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:stone_sword\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=891,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-883,[2]=-883,[3]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:stripped_mangrove_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=899,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=633,[2]=633,[3]=633,[4]=633},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=107,[\"count\"]=1,[\"ingredients\"]={{240,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.35,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:trapped_chest\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=909,[\"count\"]=1,[\"ingredients\"]={{5,1,false},{315,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:tuff_brick_stairs_from_tuff_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=910,[\"count\"]=1,[\"ingredients\"]={{238,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:tuff_bricks_from_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=238,[\"count\"]=1,[\"ingredients\"]={{239,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:vex_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=916,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=916,[3]=133,[4]=133,[5]=28,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:warped_fungus_on_a_stick\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=923,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=180,[4]=924},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:warped_trapdoor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=933,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=919,[2]=919,[3]=919,[4]=919,[5]=919,[6]=919},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_trapdoor\"},[\"special\"]=false},[\"minecraft:waxed_copper_door_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=938,[\"count\"]=1,[\"ingredients\"]={{279,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_copper_door\"},[\"special\"]=false},[\"minecraft:waxed_cut_copper_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=935,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=936,[2]=936,[3]=936},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_cut_copper_slab\"},[\"special\"]=false},[\"minecraft:waxed_exposed_chiseled_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=942,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=943,[2]=943},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_exposed_cut_copper_chiseled\"},[\"special\"]=false},[\"minecraft:waxed_exposed_copper_grate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=949,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=944,[4]=944,[6]=944,[8]=944},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:waxed_exposed_cut_copper_slab_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=943,[\"count\"]=1,[\"ingredients\"]={{454,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_exposed_cut_copper_slab\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_chiseled_copper_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=953,[\"count\"]=1,[\"ingredients\"]={{718,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_oxidized_chiseled_copper\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_copper_grate_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=960,[\"count\"]=1,[\"ingredients\"]={{723,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_oxidized_copper_grate\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_cut_copper_slab_from_waxed_oxidized_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=954,[\"count\"]=8,[\"ingredients\"]={{955,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_weathered_chiseled_copper_from_waxed_weathered_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=964,[\"count\"]=4,[\"ingredients\"]={{967,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_weathered_copper_grate_from_waxed_weathered_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=974,[\"count\"]=4,[\"ingredients\"]={{967,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_weathered_cut_copper_slab_from_waxed_weathered_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=965,[\"count\"]=2,[\"ingredients\"]={{968,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:weathered_chiseled_copper_from_weathered_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=966,[\"count\"]=4,[\"ingredients\"]={{973,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:weathered_cut_copper_slab_from_weathered_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=979,[\"count\"]=8,[\"ingredients\"]={{973,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:white_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=984,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{429,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:white_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=990,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=429,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:wooden_hoe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=996,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-62,[4]=8,[6]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:yellow_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=434,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=435,[2]=435},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:yellow_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=1007,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=433,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false}},[\"counts\"]={}}",
  ["ceetos/recipes/vanilla-recipes-1.21.1-3.lua"] = "return{[\"schema\"]=1,[\"minecraft\"]=\"1.21.1\",[\"recipes\"]={[\"minecraft:acacia_chest_boat\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=4,[\"count\"]=1,[\"ingredients\"]={{5,1,false},{1,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"chest_boat\"},[\"special\"]=false},[\"minecraft:acacia_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=16,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=2,[2]=2,[3]=2},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_slab\"},[\"special\"]=false},[\"minecraft:andesite_slab_from_andesite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=29,[\"count\"]=2,[\"ingredients\"]={{26,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:arrow\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=36,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=37,[2]=8,[3]=38},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:bamboo_fence\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=48,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=44,[2]=8,[3]=44,[4]=44,[5]=8,[6]=44},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_fence\"},[\"special\"]=false},[\"minecraft:bamboo_raft\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=46,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=44,[3]=44,[4]=44,[5]=44,[6]=44},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"boat\"},[\"special\"]=false},[\"minecraft:beehive\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=68,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-62,[3]=-62,[4]=69,[5]=69,[6]=69,[7]=-62,[8]=-62,[9]=-62},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:birch_hanging_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=80,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=11,[3]=11,[4]=81,[5]=81,[6]=81,[7]=81,[8]=81,[9]=81},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"hanging_sign\"},[\"special\"]=false},[\"minecraft:black_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=90,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=91,[2]=91,[3]=91,[4]=91,[5]=91,[6]=91,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:black_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=104,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=95,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:blackstone_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=111,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=109,[2]=109,[3]=109,[4]=109,[5]=109,[6]=109},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:blue_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=123,[\"count\"]=8,[\"ingredients\"]={{121,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:blue_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=127,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=121,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:bookshelf\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=142,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-62,[3]=-62,[4]=139,[5]=139,[6]=139,[7]=-62,[8]=-62,[9]=-62},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:brick_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=153,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=152,[4]=152,[5]=152,[7]=152,[8]=152,[9]=152},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:brown_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=160,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=156,[2]=156},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:brush\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=167,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=38,[2]=168,[3]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:cauldron\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=183,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[3]=22,[4]=22,[6]=22,[7]=22,[8]=22,[9]=22},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:cherry_fence_gate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=193,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=188,[3]=8,[4]=8,[5]=188,[6]=8},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_fence_gate\"},[\"special\"]=false},[\"minecraft:cherry_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=202,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=203,[2]=203,[3]=203,[4]=203},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:chiseled_deepslate_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=211,[\"count\"]=1,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:chiseled_red_sandstone\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=223,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=224,[2]=224},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:chiseled_tuff_bricks\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=235,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=236,[2]=236},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:coal_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=245,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=244,[2]=244,[3]=244,[4]=244,[5]=244,[6]=244,[7]=244,[8]=244,[9]=244},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:cobbled_deepslate_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=212,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=213,[2]=213,[3]=213},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:cobblestone_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=254,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=28,[4]=28,[5]=28,[7]=28,[8]=28,[9]=28},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:cooked_beef\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=263,[\"count\"]=1,[\"ingredients\"]={{264,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cooked_cod_from_smoking\"]={[\"kind\"]=\"smoking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smoke\",[\"output\"]=267,[\"count\"]=1,[\"ingredients\"]={{268,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cooked_rabbit_from_campfire_cooking\"]={[\"kind\"]=\"campfire_cooking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Campfire\",[\"output\"]=273,[\"count\"]=1,[\"ingredients\"]={{274,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=600,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:copper_door\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=279,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=168,[2]=168,[3]=168,[4]=168,[5]=168,[6]=168},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:copper_ingot_from_smelting_deepslate_copper_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=168,[\"count\"]=1,[\"ingredients\"]={{282,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.7,[\"category\"]=\"misc\",[\"group\"]=\"copper_ingot\"},[\"special\"]=false},[\"minecraft:cracked_stone_bricks\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=293,[\"count\"]=1,[\"ingredients\"]={{231,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:crimson_hanging_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=304,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=11,[3]=11,[4]=305,[5]=305,[6]=305,[7]=305,[8]=305,[9]=305},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"hanging_sign\"},[\"special\"]=false},[\"minecraft:crossbow\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=314,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=22,[3]=8,[4]=144,[5]=315,[6]=144,[8]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:cut_copper_stairs_from_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=316,[\"count\"]=1,[\"ingredients\"]={{210,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cut_sandstone_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=320,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=319,[2]=319,[3]=319},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:cyan_dye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=325,[\"count\"]=2,[\"ingredients\"]={{121,1,false},{328,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"cyan_dye\"},[\"special\"]=false},[\"minecraft:dark_oak_button\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=336,[\"count\"]=1,[\"ingredients\"]={{335,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_button\"},[\"special\"]=false},[\"minecraft:dark_oak_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=345,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=335,[2]=335,[3]=335,[4]=335,[5]=335,[6]=335,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_sign\"},[\"special\"]=false},[\"minecraft:dark_prismarine_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=354,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=351,[4]=351,[5]=351,[7]=351,[8]=351,[9]=351},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:deepslate_brick_slab_from_deepslate_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=358,[\"count\"]=2,[\"ingredients\"]={{287,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_brick_wall_from_deepslate_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=361,[\"count\"]=1,[\"ingredients\"]={{287,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tile_slab_from_deepslate_tiles_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=362,[\"count\"]=2,[\"ingredients\"]={{289,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tile_wall_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=364,[\"count\"]=1,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:detector_rail\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=365,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=22,[3]=22,[4]=22,[5]=366,[6]=22,[7]=22,[8]=243,[9]=22},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:diamond_from_smelting_deepslate_diamond_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=133,[\"count\"]=1,[\"ingredients\"]={{371,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"diamond\"},[\"special\"]=false},[\"minecraft:diorite\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=27,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=28,[2]=257,[3]=257,[4]=28},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:dried_kelp\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=383,[\"count\"]=9,[\"ingredients\"]={{384,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:dune_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{388,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:dye_brown_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=160,[\"count\"]=1,[\"ingredients\"]={{159,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:dye_green_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=393,[\"count\"]=1,[\"ingredients\"]={{328,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_light_gray_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=403,[\"count\"]=1,[\"ingredients\"]={{401,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:dye_orange_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=414,[\"count\"]=1,[\"ingredients\"]={{413,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:dye_red_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=424,[\"count\"]=1,[\"ingredients\"]={{425,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_yellow_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=435,[\"count\"]=1,[\"ingredients\"]={{433,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:end_crystal\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=441,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=442,[6]=65,[7]=65,[8]=443,[9]=65},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:end_stone_brick_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=450,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=447,[2]=447,[3]=447,[4]=447,[5]=447,[6]=447},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:exposed_chiseled_copper_from_exposed_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=453,[\"count\"]=4,[\"ingredients\"]={{455,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:exposed_cut_copper_slab_from_exposed_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=454,[\"count\"]=8,[\"ingredients\"]={{455,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:fire_charge\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=464,[\"count\"]=3,[\"ingredients\"]={{465,1,false},{115,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:flow_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=469,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=469,[3]=133,[4]=133,[5]=470,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=106,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=65,[6]=65},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:gold_ingot_from_blasting_raw_gold\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=242,[\"count\"]=1,[\"ingredients\"]={{489,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"gold_ingot\"},[\"special\"]=false},[\"minecraft:gold_nugget_from_blasting\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=478,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.1,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:golden_hoe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=497,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=242,[2]=242,[4]=8,[6]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:granite_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=504,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=502,[4]=502,[5]=502,[7]=502,[8]=502,[9]=502},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:gray_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=508,[\"count\"]=8,[\"ingredients\"]={{390,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:green_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=393,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=395,[2]=395,[3]=395,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:green_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=520,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=328,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:hopper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=528,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[3]=22,[4]=22,[5]=5,[6]=22,[8]=22},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:iron_chestplate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=534,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[3]=22,[4]=22,[5]=22,[6]=22,[7]=22,[8]=22,[9]=22},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:iron_ingot_from_nuggets\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=22,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=184,[2]=184,[3]=184,[4]=184,[5]=184,[6]=184,[7]=184,[8]=184,[9]=184},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"iron_ingot\"},[\"special\"]=false},[\"minecraft:iron_pickaxe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=542,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22,[3]=22,[5]=8,[8]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:jungle_button\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=552,[\"count\"]=1,[\"ingredients\"]={{551,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_button\"},[\"special\"]=false},[\"minecraft:jungle_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=561,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=551,[2]=551,[3]=551,[4]=551,[5]=551,[6]=551,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_sign\"},[\"special\"]=false},[\"minecraft:lapis_lazuli\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=124,[\"count\"]=9,[\"ingredients\"]={{569,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:leather_chestplate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=576,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=141,[3]=141,[4]=141,[5]=141,[6]=141,[7]=141,[8]=141,[9]=141},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:light_blue_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=583,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{397,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:light_blue_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=589,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=397,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:light_gray_dye_from_black_white_dye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=401,[\"count\"]=3,[\"ingredients\"]={{95,1,false},{429,1,false},{429,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"light_gray_dye\"},[\"special\"]=false},[\"minecraft:light_gray_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=596,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=401,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:lime_dye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=405,[\"count\"]=2,[\"ingredients\"]={{328,1,false},{429,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:loom\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=611,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=144,[2]=144,[3]=-62,[4]=-62},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:magenta_dye_from_blue_red_pink\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=409,[\"count\"]=3,[\"ingredients\"]={{121,1,false},{425,1,false},{417,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"magenta_dye\"},[\"special\"]=false},[\"minecraft:magenta_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=620,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=409,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:mangrove_fence_gate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=631,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=626,[3]=8,[4]=8,[5]=626,[6]=8},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_fence_gate\"},[\"special\"]=false},[\"minecraft:mangrove_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=640,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=641,[2]=641,[3]=641,[4]=641},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:moss_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=647,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=648,[2]=648},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:mossy_cobblestone_wall_from_mossy_cobblestone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=653,[\"count\"]=1,[\"ingredients\"]={{649,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:mossy_stone_bricks_from_vine\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=655,[\"count\"]=1,[\"ingredients\"]={{231,1,false},{650,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"mossy_stone_bricks\"},[\"special\"]=false},[\"minecraft:muddy_mangrove_roots\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=663,[\"count\"]=1,[\"ingredients\"]={{664,1,false},{665,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:nether_brick_stairs_from_nether_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=673,[\"count\"]=1,[\"ingredients\"]={{216,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:netherite_chestplate_smithing\"]={[\"kind\"]=\"smithing_transform\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=681,[\"count\"]=1,[\"ingredients\"]={{370,1,false},{610,1,false},{678,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:netherite_scrap_from_blasting\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=684,[\"count\"]=1,[\"ingredients\"]={{687,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=2,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:oak_door\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=695,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=692,[2]=692,[3]=692,[4]=692,[5]=692,[6]=692},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_door\"},[\"special\"]=false},[\"minecraft:oak_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=704,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=692,[4]=692,[5]=692,[7]=692,[8]=692,[9]=692},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_stairs\"},[\"special\"]=false},[\"minecraft:orange_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=711,[\"count\"]=8,[\"ingredients\"]={{413,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:orange_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=715,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=413,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:oxidized_cut_copper_from_oxidized_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=721,[\"count\"]=4,[\"ingredients\"]={{720,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:packed_mud\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=662,[\"count\"]=1,[\"ingredients\"]={{664,1,false},{146,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:pink_dye_from_peony\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=417,[\"count\"]=2,[\"ingredients\"]={{732,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"pink_dye\"},[\"special\"]=false},[\"minecraft:pink_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=736,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=417,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:polished_andesite_stairs_from_andesite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=742,[\"count\"]=1,[\"ingredients\"]={{26,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_brick_slab_from_polished_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=745,[\"count\"]=2,[\"ingredients\"]={{219,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_brick_wall_from_polished_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=747,[\"count\"]=1,[\"ingredients\"]={{219,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_slab_from_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=218,[\"count\"]=2,[\"ingredients\"]={{109,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_deepslate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=359,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=213,[2]=213,[3]=213,[4]=213},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_deepslate_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=754,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=359,[2]=359,[3]=359,[4]=359,[5]=359,[6]=359},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:polished_diorite_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=757,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=755,[4]=755,[5]=755,[7]=755,[8]=755,[9]=755},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_granite_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=760,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=758,[4]=758,[5]=758,[7]=758,[8]=758,[9]=758},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_tuff_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=762,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=237,[4]=237,[5]=237,[7]=237,[8]=237,[9]=237},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:prismarine\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=766,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=352,[2]=352,[3]=352,[4]=352},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:prismarine_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=771,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=766,[4]=766,[5]=766,[7]=766,[8]=766,[9]=766},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:purple_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=777,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{421,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:purple_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=780,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=421,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:quartz\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=257,[\"count\"]=1,[\"ingredients\"]={{787,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.2,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:quartz_slab_from_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=221,[\"count\"]=2,[\"ingredients\"]={{222,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:raw_copper\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=283,[\"count\"]=9,[\"ingredients\"]={{794,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:red_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=424,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=427,[2]=427,[3]=427,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:red_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=805,[\"count\"]=1,[\"ingredients\"]={{806,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:red_sandstone\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=225,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=811,[2]=811,[3]=811,[4]=811},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:red_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=815,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=814,[2]=814,[3]=814,[4]=814,[5]=814,[6]=814},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:redstone_from_smelting_redstone_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=243,[\"count\"]=1,[\"ingredients\"]={{818,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.7,[\"category\"]=\"blocks\",[\"group\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:sandstone\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=228,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=98,[2]=98,[3]=98,[4]=98},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:sea_lantern\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=827,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=352,[2]=828,[3]=352,[4]=828,[5]=828,[6]=828,[7]=352,[8]=828,[9]=352},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:shulker_box\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=833,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=834,[2]=5,[3]=834},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:smoker\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=840,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=-178,[4]=-178,[5]=113,[6]=-178,[8]=-178},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:smooth_red_sandstone_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=846,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=845,[2]=845,[3]=845},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:smooth_sandstone_stairs_from_smooth_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=850,[\"count\"]=1,[\"ingredients\"]={{848,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:soul_campfire\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=855,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=8,[4]=8,[5]=-856,[6]=8,[7]=-178,[8]=-178,[9]=-178},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:spruce_button\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=865,[\"count\"]=1,[\"ingredients\"]={{864,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_button\"},[\"special\"]=false},[\"minecraft:spruce_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=874,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=864,[2]=864,[3]=864,[4]=864,[5]=864,[6]=864,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_sign\"},[\"special\"]=false},[\"minecraft:sticky_piston\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=881,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=573,[2]=739},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:stone_brick_stairs_from_stone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=884,[\"count\"]=1,[\"ingredients\"]={{232,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:stone_pickaxe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=888,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-883,[2]=-883,[3]=-883,[5]=8,[8]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:stonecutter\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=892,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=22,[4]=232,[5]=232,[6]=232},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:stripped_oak_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=900,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=699,[2]=699,[3]=699,[4]=699},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:tide_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=905,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=905,[3]=133,[4]=133,[5]=766,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:tripwire_hook\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=315,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=8,[3]=-62},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:tuff_brick_stairs_from_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=910,[\"count\"]=1,[\"ingredients\"]={{239,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:tuff_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=234,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=239,[2]=239,[3]=239},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:vex_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{916,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:warped_hanging_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=925,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=11,[3]=11,[4]=903,[5]=903,[6]=903,[7]=903,[8]=903,[9]=903},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"hanging_sign\"},[\"special\"]=false},[\"minecraft:waxed_chiseled_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=934,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=935,[2]=935},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_cut_copper_chiseled\"},[\"special\"]=false},[\"minecraft:waxed_copper_grate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=939,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=284,[4]=284,[6]=284,[8]=284},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:waxed_cut_copper_slab_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=935,[\"count\"]=1,[\"ingredients\"]={{208,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_cut_copper_slab\"},[\"special\"]=false},[\"minecraft:waxed_exposed_chiseled_copper_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=942,[\"count\"]=1,[\"ingredients\"]={{453,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_exposed_chiseled_copper\"},[\"special\"]=false},[\"minecraft:waxed_exposed_copper_grate_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=949,[\"count\"]=1,[\"ingredients\"]={{458,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_exposed_copper_grate\"},[\"special\"]=false},[\"minecraft:waxed_exposed_cut_copper_slab_from_waxed_exposed_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=943,[\"count\"]=8,[\"ingredients\"]={{944,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_oxidized_chiseled_copper_from_waxed_oxidized_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=953,[\"count\"]=4,[\"ingredients\"]={{955,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_oxidized_copper_grate_from_waxed_oxidized_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=960,[\"count\"]=4,[\"ingredients\"]={{955,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_oxidized_cut_copper_slab_from_waxed_oxidized_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=954,[\"count\"]=2,[\"ingredients\"]={{956,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_weathered_chiseled_copper_from_waxed_weathered_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=964,[\"count\"]=1,[\"ingredients\"]={{968,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_weathered_copper_trapdoor_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=976,[\"count\"]=1,[\"ingredients\"]={{977,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_weathered_copper_trapdoor\"},[\"special\"]=false},[\"minecraft:waxed_weathered_cut_copper_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=980,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=968,[4]=968,[5]=968,[7]=968,[8]=968,[9]=968},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_weathered_cut_copper_stairs\"},[\"special\"]=false},[\"minecraft:weathered_chiseled_copper_from_weathered_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=966,[\"count\"]=1,[\"ingredients\"]={{978,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:weathered_cut_copper_slab_from_weathered_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=979,[\"count\"]=2,[\"ingredients\"]={{978,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:white_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=430,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=431,[2]=431},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:white_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=988,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=429,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:wooden_pickaxe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=997,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-62,[3]=-62,[5]=8,[8]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:yellow_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=1003,[\"count\"]=8,[\"ingredients\"]={{433,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false}},[\"counts\"]={}}",
  ["ceetos/recipes/vanilla-recipes-1.21.1-4.lua"] = "return{[\"schema\"]=1,[\"minecraft\"]=\"1.21.1\",[\"recipes\"]={[\"minecraft:acacia_door\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=6,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=2,[2]=2,[3]=2,[4]=2,[5]=2,[6]=2},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_door\"},[\"special\"]=false},[\"minecraft:acacia_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=17,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=2,[4]=2,[5]=2,[7]=2,[8]=2,[9]=2},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_stairs\"},[\"special\"]=false},[\"minecraft:andesite_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=30,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=26,[4]=26,[5]=26,[7]=26,[8]=26,[9]=26},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:baked_potato\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=39,[\"count\"]=1,[\"ingredients\"]={{40,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:bamboo_fence_gate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=49,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=44,[3]=8,[4]=8,[5]=44,[6]=8},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_fence_gate\"},[\"special\"]=false},[\"minecraft:bamboo_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=58,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=44,[2]=44,[3]=44,[4]=44,[5]=44,[6]=44,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_sign\"},[\"special\"]=false},[\"minecraft:beetroot_soup\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=70,[\"count\"]=1,[\"ingredients\"]={{71,1,false},{72,1,false},{72,1,false},{72,1,false},{72,1,false},{72,1,false},{72,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:birch_planks\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=74,[\"count\"]=4,[\"ingredients\"]={{82,1,true}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"planks\"},[\"special\"]=false},[\"minecraft:black_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=92,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=91,[2]=91,[3]=91,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:black_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=105,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=104,[2]=104,[3]=104,[4]=104,[5]=104,[6]=104},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:blackstone_wall_from_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=111,[\"count\"]=1,[\"ingredients\"]={{109,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:blue_dye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=121,[\"count\"]=1,[\"ingredients\"]={{124,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"blue_dye\"},[\"special\"]=false},[\"minecraft:bolt_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=132,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=132,[3]=133,[4]=133,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:bow\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=143,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=8,[3]=144,[4]=8,[6]=144,[8]=8,[9]=144},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:brick_stairs_from_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=153,[\"count\"]=1,[\"ingredients\"]={{152,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:brown_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=161,[\"count\"]=8,[\"ingredients\"]={{159,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:bucket\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=169,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[3]=22,[5]=22},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:chain\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=11,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=184,[2]=22,[3]=184},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:cherry_hanging_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=194,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=11,[3]=11,[4]=195,[5]=195,[6]=195,[7]=195,[8]=195,[9]=195},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"hanging_sign\"},[\"special\"]=false},[\"minecraft:chest\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=5,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-62,[3]=-62,[4]=-62,[6]=-62,[7]=-62,[8]=-62,[9]=-62},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:chiseled_nether_bricks\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=214,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=215,[2]=215},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:chiseled_red_sandstone_from_red_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=223,[\"count\"]=1,[\"ingredients\"]={{225,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:chiseled_tuff_bricks_from_polished_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=235,[\"count\"]=1,[\"ingredients\"]={{237,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:coal_from_blasting_coal_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=244,[\"count\"]=1,[\"ingredients\"]={{246,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.1,[\"category\"]=\"misc\",[\"group\"]=\"coal\"},[\"special\"]=false},[\"minecraft:cobbled_deepslate_slab_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=212,[\"count\"]=2,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cobblestone_stairs_from_cobblestone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=254,[\"count\"]=1,[\"ingredients\"]={{28,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cooked_beef_from_campfire_cooking\"]={[\"kind\"]=\"campfire_cooking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Campfire\",[\"output\"]=263,[\"count\"]=1,[\"ingredients\"]={{264,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=600,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cooked_mutton\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=269,[\"count\"]=1,[\"ingredients\"]={{270,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cooked_rabbit_from_smoking\"]={[\"kind\"]=\"smoking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smoke\",[\"output\"]=273,[\"count\"]=1,[\"ingredients\"]={{274,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:copper_grate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=280,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=209,[4]=209,[6]=209,[8]=209},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:copper_ingot_from_smelting_raw_copper\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=168,[\"count\"]=1,[\"ingredients\"]={{283,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.7,[\"category\"]=\"misc\",[\"group\"]=\"copper_ingot\"},[\"special\"]=false},[\"minecraft:crafter\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=294,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22,[3]=22,[4]=22,[5]=295,[6]=22,[7]=243,[8]=296,[9]=243},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:crimson_hyphae\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=306,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=307,[2]=307,[3]=307,[4]=307},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:cut_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=210,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=209,[2]=209,[3]=209,[4]=209},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:cut_red_sandstone\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=317,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=225,[2]=225,[3]=225,[4]=225},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:cut_sandstone_slab_from_cut_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=320,[\"count\"]=2,[\"ingredients\"]={{319,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cyan_dye_from_pitcher_plant\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=325,[\"count\"]=2,[\"ingredients\"]={{329,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"cyan_dye\"},[\"special\"]=false},[\"minecraft:dark_oak_chest_boat\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=337,[\"count\"]=1,[\"ingredients\"]={{5,1,false},{334,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"chest_boat\"},[\"special\"]=false},[\"minecraft:dark_oak_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=346,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=335,[2]=335,[3]=335},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_slab\"},[\"special\"]=false},[\"minecraft:dark_prismarine_stairs_from_dark_prismarine_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=354,[\"count\"]=1,[\"ingredients\"]={{351,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_brick_slab_from_polished_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=358,[\"count\"]=2,[\"ingredients\"]={{359,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_brick_wall_from_polished_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=361,[\"count\"]=1,[\"ingredients\"]={{359,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tile_slab_from_polished_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=362,[\"count\"]=2,[\"ingredients\"]={{359,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tile_wall_from_deepslate_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=364,[\"count\"]=1,[\"ingredients\"]={{287,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:diamond\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=133,[\"count\"]=9,[\"ingredients\"]={{367,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:diamond_from_smelting_diamond_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=133,[\"count\"]=1,[\"ingredients\"]={{372,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"diamond\"},[\"special\"]=false},[\"minecraft:diorite_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=379,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=27,[2]=27,[3]=27},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:dried_kelp_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=384,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=383,[2]=383,[3]=383,[4]=383,[5]=383,[6]=383,[7]=383,[8]=383,[9]=383},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:dye_black_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=92,[\"count\"]=1,[\"ingredients\"]={{95,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_brown_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=156,[\"count\"]=1,[\"ingredients\"]={{159,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:dye_green_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=394,[\"count\"]=1,[\"ingredients\"]={{328,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:dye_lime_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=404,[\"count\"]=1,[\"ingredients\"]={{405,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_orange_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=415,[\"count\"]=1,[\"ingredients\"]={{413,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:dye_red_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=426,[\"count\"]=1,[\"ingredients\"]={{425,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:emerald\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=436,[\"count\"]=9,[\"ingredients\"]={{437,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:end_rod\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=444,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=116,[2]=445},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:end_stone_brick_wall_from_end_stone_brick_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=450,[\"count\"]=1,[\"ingredients\"]={{447,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:exposed_chiseled_copper_from_exposed_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=453,[\"count\"]=1,[\"ingredients\"]={{456,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:exposed_cut_copper_slab_from_exposed_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=454,[\"count\"]=2,[\"ingredients\"]={{456,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:firework_rocket\"]={[\"kind\"]=\"crafting_special_firework_rocket\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:flow_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{469,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:glistering_melon_slice\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=477,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=478,[2]=478,[3]=478,[4]=478,[5]=479,[6]=478,[7]=478,[8]=478,[9]=478},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:gold_ingot_from_gold_block\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=242,[\"count\"]=9,[\"ingredients\"]={{485,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"gold_ingot\"},[\"special\"]=false},[\"minecraft:gold_nugget_from_smelting\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=478,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:golden_leggings\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=498,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=242,[2]=242,[3]=242,[4]=242,[6]=242,[7]=242,[9]=242},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:granite_stairs_from_granite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=504,[\"count\"]=1,[\"ingredients\"]={{502,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:gray_dye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=390,[\"count\"]=2,[\"ingredients\"]={{95,1,false},{429,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:green_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=514,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{328,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:green_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=518,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=328,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:hopper_minecart\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=529,[\"count\"]=1,[\"ingredients\"]={{528,1,false},{205,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:iron_door\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=535,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22,[3]=22,[4]=22,[5]=22,[6]=22},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:iron_ingot_from_smelting_deepslate_iron_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=22,[\"count\"]=1,[\"ingredients\"]={{538,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.7,[\"category\"]=\"misc\",[\"group\"]=\"iron_ingot\"},[\"special\"]=false},[\"minecraft:iron_shovel\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=543,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=8,[3]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:jungle_chest_boat\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=553,[\"count\"]=1,[\"ingredients\"]={{5,1,false},{550,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"chest_boat\"},[\"special\"]=false},[\"minecraft:jungle_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=562,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=551,[2]=551,[3]=551},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_slab\"},[\"special\"]=false},[\"minecraft:lapis_lazuli_from_blasting_deepslate_lapis_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=124,[\"count\"]=1,[\"ingredients\"]={{570,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.2,[\"category\"]=\"misc\",[\"group\"]=\"lapis_lazuli\"},[\"special\"]=false},[\"minecraft:leather_helmet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=577,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=141,[2]=141,[3]=141,[4]=141,[6]=141},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:light_blue_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=398,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=399,[2]=399},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:light_blue_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=587,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=397,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:light_gray_dye_from_gray_white_dye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=401,[\"count\"]=2,[\"ingredients\"]={{390,1,false},{429,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"light_gray_dye\"},[\"special\"]=false},[\"minecraft:light_weighted_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=599,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=242,[2]=242},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:lime_dye_from_smelting\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=405,[\"count\"]=1,[\"ingredients\"]={{604,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:mace\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=612,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=613,[5]=470},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:magenta_dye_from_blue_red_white_dye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=409,[\"count\"]=4,[\"ingredients\"]={{121,1,false},{425,1,false},{425,1,false},{429,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"magenta_dye\"},[\"special\"]=false},[\"minecraft:magma_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=623,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=624,[2]=624,[3]=624,[4]=624},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:mangrove_hanging_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=632,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=11,[3]=11,[4]=633,[5]=633,[6]=633,[7]=633,[8]=633,[9]=633},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"hanging_sign\"},[\"special\"]=false},[\"minecraft:map\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=642,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=140,[2]=140,[3]=140,[4]=140,[5]=258,[6]=140,[7]=140,[8]=140,[9]=140},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:mossy_cobblestone_from_moss_block\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=649,[\"count\"]=1,[\"ingredients\"]={{28,1,false},{648,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"mossy_cobblestone\"},[\"special\"]=false},[\"minecraft:mossy_stone_brick_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=654,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=655,[2]=655,[3]=655},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:mud_brick_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=658,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=659,[2]=659,[3]=659},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:mushroom_stew\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=666,[\"count\"]=1,[\"ingredients\"]={{463,1,false},{667,1,false},{71,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:nether_brick_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=674,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=216,[2]=216,[3]=216,[4]=216,[5]=216,[6]=216},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:netherite_helmet_smithing\"]={[\"kind\"]=\"smithing_transform\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=682,[\"count\"]=1,[\"ingredients\"]={{373,1,false},{610,1,false},{678,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:netherite_shovel_smithing\"]={[\"kind\"]=\"smithing_transform\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=688,[\"count\"]=1,[\"ingredients\"]={{377,1,false},{610,1,false},{678,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:oak_fence\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=696,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=692,[2]=8,[3]=692,[4]=692,[5]=8,[6]=692},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_fence\"},[\"special\"]=false},[\"minecraft:oak_trapdoor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=705,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=692,[2]=692,[3]=692,[4]=692,[5]=692,[6]=692},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_trapdoor\"},[\"special\"]=false},[\"minecraft:orange_dye_from_orange_tulip\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=413,[\"count\"]=1,[\"ingredients\"]={{712,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"orange_dye\"},[\"special\"]=false},[\"minecraft:oxidized_chiseled_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=718,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=719,[2]=719},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:oxidized_cut_copper_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=719,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=721,[2]=721,[3]=721},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:painting\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=726,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=8,[3]=8,[4]=8,[5]=-727,[6]=8,[7]=8,[8]=8,[9]=8},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:pink_dye_from_pink_petals\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=417,[\"count\"]=1,[\"ingredients\"]={{733,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"pink_dye\"},[\"special\"]=false},[\"minecraft:piston\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=739,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-62,[3]=-62,[4]=28,[5]=22,[6]=28,[7]=28,[8]=243,[9]=28},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:polished_andesite_stairs_from_polished_andesite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=742,[\"count\"]=1,[\"ingredients\"]={{740,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_brick_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=746,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=292,[4]=292,[5]=292,[7]=292,[8]=292,[9]=292},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_blackstone_bricks\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=292,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=219,[2]=219,[3]=219,[4]=219},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_blackstone_slab_from_polished_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=218,[\"count\"]=2,[\"ingredients\"]={{219,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_deepslate_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=359,[\"count\"]=1,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_deepslate_wall_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=754,[\"count\"]=1,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_diorite_stairs_from_diorite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=757,[\"count\"]=1,[\"ingredients\"]={{27,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_granite_stairs_from_granite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=760,[\"count\"]=1,[\"ingredients\"]={{502,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_tuff_stairs_from_polished_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=762,[\"count\"]=1,[\"ingredients\"]={{237,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:prismarine_brick_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=767,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=768,[2]=768,[3]=768},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:prismarine_stairs_from_prismarine_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=771,[\"count\"]=1,[\"ingredients\"]={{766,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:purple_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=422,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=423,[2]=423},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:purpur_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=783,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=445,[2]=445,[3]=445,[4]=445},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:quartz_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=222,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=257,[2]=257,[3]=257,[4]=257},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:quartz_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=790,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:raw_copper_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=794,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=283,[2]=283,[3]=283,[4]=283,[5]=283,[6]=283,[7]=283,[8]=283,[9]=283},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:red_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=800,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{425,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:red_nether_brick_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=807,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=808,[2]=808,[3]=808},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:red_sandstone_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=224,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:red_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=815,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=425,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:redstone_lamp\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=819,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=243,[4]=243,[5]=483,[6]=243,[8]=243},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:sandstone_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=227,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:sentry_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=829,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=829,[3]=133,[4]=133,[5]=28,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:shulker_box_coloring\"]={[\"kind\"]=\"crafting_special_shulkerboxcoloring\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:smooth_basalt\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=841,[\"count\"]=1,[\"ingredients\"]={{744,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:smooth_red_sandstone_slab_from_smooth_red_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=846,[\"count\"]=2,[\"ingredients\"]={{845,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:smooth_stone\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=114,[\"count\"]=1,[\"ingredients\"]={{232,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:soul_lantern\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=857,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=184,[2]=184,[3]=184,[4]=184,[5]=858,[6]=184,[7]=184,[8]=184,[9]=184},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:spruce_chest_boat\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=866,[\"count\"]=1,[\"ingredients\"]={{5,1,false},{863,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"chest_boat\"},[\"special\"]=false},[\"minecraft:spruce_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=875,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=864,[2]=864,[3]=864},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_slab\"},[\"special\"]=false},[\"minecraft:stone\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=232,[\"count\"]=1,[\"ingredients\"]={{28,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:stone_brick_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=885,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=231,[2]=231,[3]=231,[4]=231,[5]=231,[6]=231},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:stone_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=366,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=232,[2]=232},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:stripped_acacia_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=893,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=12,[2]=12,[3]=12,[4]=12},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:stripped_spruce_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=901,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=871,[2]=871,[3]=871,[4]=871},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:tide_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{905,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:tuff_brick_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=236,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=238,[2]=238,[3]=238},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:tuff_brick_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=911,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=238,[2]=238,[3]=238,[4]=238,[5]=238,[6]=238},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:tuff_slab_from_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=234,[\"count\"]=2,[\"ingredients\"]={{239,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:ward_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=917,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=917,[3]=133,[4]=133,[5]=213,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:warped_hyphae\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=926,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=927,[2]=927,[3]=927,[4]=927},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:waxed_chiseled_copper_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=934,[\"count\"]=1,[\"ingredients\"]={{207,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_chiseled_copper\"},[\"special\"]=false},[\"minecraft:waxed_copper_grate_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=939,[\"count\"]=1,[\"ingredients\"]={{280,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_copper_grate\"},[\"special\"]=false},[\"minecraft:waxed_cut_copper_slab_from_waxed_copper_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=935,[\"count\"]=8,[\"ingredients\"]={{284,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_exposed_chiseled_copper_from_waxed_exposed_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=942,[\"count\"]=4,[\"ingredients\"]={{944,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_exposed_copper_grate_from_waxed_exposed_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=949,[\"count\"]=4,[\"ingredients\"]={{944,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_exposed_cut_copper_slab_from_waxed_exposed_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=943,[\"count\"]=2,[\"ingredients\"]={{945,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_oxidized_chiseled_copper_from_waxed_oxidized_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=953,[\"count\"]=1,[\"ingredients\"]={{956,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_oxidized_copper_trapdoor_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=961,[\"count\"]=1,[\"ingredients\"]={{962,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_oxidized_copper_trapdoor\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_cut_copper_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=963,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=956,[4]=956,[5]=956,[7]=956,[8]=956,[9]=956},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_oxidized_cut_copper_stairs\"},[\"special\"]=false},[\"minecraft:waxed_weathered_copper_bulb\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=969,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=967,[4]=967,[5]=116,[6]=967,[8]=243},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:waxed_weathered_cut_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=968,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=967,[2]=967,[3]=967,[4]=967},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_weathered_cut_copper\"},[\"special\"]=false},[\"minecraft:waxed_weathered_cut_copper_stairs_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=980,[\"count\"]=1,[\"ingredients\"]={{981,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_weathered_cut_copper_stairs\"},[\"special\"]=false},[\"minecraft:weathered_copper_bulb\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=970,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=973,[4]=973,[5]=116,[6]=973,[8]=243},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:weathered_cut_copper_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=981,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=978,[4]=978,[5]=978,[7]=978,[8]=978,[9]=978},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:white_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=985,[\"count\"]=8,[\"ingredients\"]={{429,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:white_wool_from_string\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=431,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=144,[2]=144,[3]=144,[4]=144},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:wooden_shovel\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=998,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=8,[3]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:yellow_dye_from_dandelion\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=433,[\"count\"]=1,[\"ingredients\"]={{1004,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"yellow_dye\"},[\"special\"]=false}},[\"counts\"]={}}",
  ["ceetos/recipes/vanilla-recipes-1.21.1-5.lua"] = "return{[\"schema\"]=1,[\"minecraft\"]=\"1.21.1\",[\"recipes\"]={[\"minecraft:acacia_fence\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=7,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=2,[2]=8,[3]=2,[4]=2,[5]=8,[6]=2},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_fence\"},[\"special\"]=false},[\"minecraft:acacia_trapdoor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=18,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=2,[2]=2,[3]=2,[4]=2,[5]=2,[6]=2},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_trapdoor\"},[\"special\"]=false},[\"minecraft:andesite_stairs_from_andesite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=30,[\"count\"]=1,[\"ingredients\"]={{26,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:baked_potato_from_campfire_cooking\"]={[\"kind\"]=\"campfire_cooking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Campfire\",[\"output\"]=39,[\"count\"]=1,[\"ingredients\"]={{40,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=600,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:bamboo_hanging_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=50,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=11,[3]=11,[4]=51,[5]=51,[6]=51,[7]=51,[8]=51,[9]=51},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"hanging_sign\"},[\"special\"]=false},[\"minecraft:bamboo_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=53,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=44,[2]=44,[3]=44},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_slab\"},[\"special\"]=false},[\"minecraft:birch_boat\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=73,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=74,[3]=74,[4]=74,[5]=74,[6]=74},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"boat\"},[\"special\"]=false},[\"minecraft:birch_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=83,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=74,[2]=74},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_pressure_plate\"},[\"special\"]=false},[\"minecraft:black_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=93,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{95,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:black_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=105,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=95,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:blast_furnace\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=112,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22,[3]=22,[4]=22,[5]=113,[6]=22,[7]=114,[8]=114,[9]=114},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:blue_dye_from_cornflower\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=121,[\"count\"]=1,[\"ingredients\"]={{125,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"blue_dye\"},[\"special\"]=false},[\"minecraft:bolt_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{132,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:bowl\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=71,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[3]=-62,[5]=-62},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:brick_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=154,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=152,[2]=152,[3]=152,[4]=152,[5]=152,[6]=152},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:brown_dye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=159,[\"count\"]=1,[\"ingredients\"]={{162,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"brown_dye\"},[\"special\"]=false},[\"minecraft:cake\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=170,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=171,[2]=171,[3]=171,[4]=172,[5]=173,[6]=172,[7]=146,[8]=146,[9]=146},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:charcoal\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=185,[\"count\"]=1,[\"ingredients\"]={{186,1,true}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.15,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:cherry_planks\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=188,[\"count\"]=4,[\"ingredients\"]={{196,1,true}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"planks\"},[\"special\"]=false},[\"minecraft:chest_minecart\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=204,[\"count\"]=1,[\"ingredients\"]={{5,1,false},{205,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:chiseled_nether_bricks_from_nether_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=214,[\"count\"]=1,[\"ingredients\"]={{216,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:chiseled_sandstone\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=226,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=227,[2]=227},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:chiseled_tuff_bricks_from_tuff_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=235,[\"count\"]=1,[\"ingredients\"]={{238,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:coal_from_blasting_deepslate_coal_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=244,[\"count\"]=1,[\"ingredients\"]={{247,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.1,[\"category\"]=\"misc\",[\"group\"]=\"coal\"},[\"special\"]=false},[\"minecraft:cobbled_deepslate_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=251,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=213,[4]=213,[5]=213,[7]=213,[8]=213,[9]=213},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:cobblestone_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=255,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=28,[2]=28,[3]=28,[4]=28,[5]=28,[6]=28},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:cooked_beef_from_smoking\"]={[\"kind\"]=\"smoking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smoke\",[\"output\"]=263,[\"count\"]=1,[\"ingredients\"]={{264,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cooked_mutton_from_campfire_cooking\"]={[\"kind\"]=\"campfire_cooking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Campfire\",[\"output\"]=269,[\"count\"]=1,[\"ingredients\"]={{270,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=600,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cooked_salmon\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=275,[\"count\"]=1,[\"ingredients\"]={{276,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:copper_grate_from_copper_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=280,[\"count\"]=4,[\"ingredients\"]={{209,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:copper_ingot_from_waxed_copper_block\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=168,[\"count\"]=9,[\"ingredients\"]={{284,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"copper_ingot\"},[\"special\"]=false},[\"minecraft:crafting_table\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=295,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-62,[3]=-62,[4]=-62},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:crimson_planks\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=300,[\"count\"]=4,[\"ingredients\"]={{308,1,true}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"planks\"},[\"special\"]=false},[\"minecraft:cut_copper_from_copper_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=210,[\"count\"]=4,[\"ingredients\"]={{209,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cut_red_sandstone_from_red_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=317,[\"count\"]=1,[\"ingredients\"]={{225,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cut_sandstone_slab_from_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=320,[\"count\"]=2,[\"ingredients\"]={{228,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cyan_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=330,[\"count\"]=1,[\"ingredients\"]={{331,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:dark_oak_door\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=338,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=335,[2]=335,[3]=335,[4]=335,[5]=335,[6]=335},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_door\"},[\"special\"]=false},[\"minecraft:dark_oak_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=347,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=335,[4]=335,[5]=335,[7]=335,[8]=335,[9]=335},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_stairs\"},[\"special\"]=false},[\"minecraft:daylight_detector\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=355,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=257,[5]=257,[6]=257,[7]=-63,[8]=-63,[9]=-63},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:deepslate_brick_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=360,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=287,[4]=287,[5]=287,[7]=287,[8]=287,[9]=287},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:deepslate_bricks\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=287,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=359,[2]=359,[3]=359,[4]=359},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:deepslate_tile_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=363,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=289,[4]=289,[5]=289,[7]=289,[8]=289,[9]=289},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:deepslate_tile_wall_from_deepslate_tiles_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=364,[\"count\"]=1,[\"ingredients\"]={{289,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:diamond_axe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=368,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=133,[3]=133,[4]=8,[6]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:diamond_helmet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=373,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=133,[3]=133,[4]=133,[6]=133},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:diorite_slab_from_diorite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=379,[\"count\"]=2,[\"ingredients\"]={{27,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:dried_kelp_from_campfire_cooking\"]={[\"kind\"]=\"campfire_cooking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Campfire\",[\"output\"]=383,[\"count\"]=1,[\"ingredients\"]={{385,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=600,[\"experience\"]=0.1,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:dye_black_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=96,[\"count\"]=1,[\"ingredients\"]={{95,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:dye_cyan_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=323,[\"count\"]=1,[\"ingredients\"]={{325,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_green_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=395,[\"count\"]=1,[\"ingredients\"]={{328,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:dye_lime_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=406,[\"count\"]=1,[\"ingredients\"]={{405,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:dye_pink_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=416,[\"count\"]=1,[\"ingredients\"]={{417,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_red_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=427,[\"count\"]=1,[\"ingredients\"]={{425,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:emerald_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=437,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=436,[2]=436,[3]=436,[4]=436,[5]=436,[6]=436,[7]=436,[8]=436,[9]=436},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:end_stone_brick_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=446,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=447,[2]=447,[3]=447},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:end_stone_brick_wall_from_end_stone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=450,[\"count\"]=1,[\"ingredients\"]={{448,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:exposed_copper_bulb\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=457,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=455,[4]=455,[5]=116,[6]=455,[8]=243},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:exposed_cut_copper_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=459,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=456,[4]=456,[5]=456,[7]=456,[8]=456,[9]=456},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:firework_rocket_simple\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=466,[\"count\"]=3,[\"ingredients\"]={{465,1,false},{140,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:flower_banner_pattern\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=471,[\"count\"]=1,[\"ingredients\"]={{140,1,false},{472,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:glow_item_frame\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=480,[\"count\"]=1,[\"ingredients\"]={{481,1,false},{482,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:gold_ingot_from_nuggets\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=242,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=478,[2]=478,[3]=478,[4]=478,[5]=478,[6]=478,[7]=478,[8]=478,[9]=478},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"gold_ingot\"},[\"special\"]=false},[\"minecraft:golden_apple\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=490,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=242,[2]=242,[3]=242,[4]=242,[5]=491,[6]=242,[7]=242,[8]=242,[9]=242},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:golden_pickaxe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=499,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=242,[2]=242,[3]=242,[5]=8,[8]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:granite_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=505,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=502,[2]=502,[3]=502,[4]=502,[5]=502,[6]=502},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:gray_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=509,[\"count\"]=1,[\"ingredients\"]={{510,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:green_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=394,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=395,[2]=395},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:grindstone\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=521,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=522,[3]=8,[4]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:host_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=530,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=530,[3]=133,[4]=133,[5]=107,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:iron_helmet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=536,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22,[3]=22,[4]=22,[6]=22},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:iron_ingot_from_smelting_iron_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=22,[\"count\"]=1,[\"ingredients\"]={{539,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.7,[\"category\"]=\"misc\",[\"group\"]=\"iron_ingot\"},[\"special\"]=false},[\"minecraft:iron_sword\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=544,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22,[3]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:jungle_door\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=554,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=551,[2]=551,[3]=551,[4]=551,[5]=551,[6]=551},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_door\"},[\"special\"]=false},[\"minecraft:jungle_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=563,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=551,[4]=551,[5]=551,[7]=551,[8]=551,[9]=551},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_stairs\"},[\"special\"]=false},[\"minecraft:lapis_lazuli_from_blasting_lapis_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=124,[\"count\"]=1,[\"ingredients\"]={{571,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.2,[\"category\"]=\"misc\",[\"group\"]=\"lapis_lazuli\"},[\"special\"]=false},[\"minecraft:leather_horse_armor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=578,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=141,[3]=141,[4]=141,[5]=141,[6]=141,[7]=141,[9]=141},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:light_blue_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=584,[\"count\"]=8,[\"ingredients\"]={{397,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:light_gray_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=590,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=403,[2]=403,[3]=403,[4]=403,[5]=403,[6]=403,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:light_gray_dye_from_oxeye_daisy\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=401,[\"count\"]=1,[\"ingredients\"]={{472,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"light_gray_dye\"},[\"special\"]=false},[\"minecraft:lightning_rod\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=600,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=168,[2]=168,[3]=168},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:lime_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=605,[\"count\"]=1,[\"ingredients\"]={{606,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:magenta_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=614,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=411,[2]=411,[3]=411,[4]=411,[5]=411,[6]=411,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:magenta_dye_from_lilac\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=409,[\"count\"]=2,[\"ingredients\"]={{618,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"magenta_dye\"},[\"special\"]=false},[\"minecraft:magma_cream\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=624,[\"count\"]=1,[\"ingredients\"]={{115,1,false},{573,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:mangrove_planks\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=626,[\"count\"]=4,[\"ingredients\"]={{634,1,true}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"planks\"},[\"special\"]=false},[\"minecraft:map_cloning\"]={[\"kind\"]=\"crafting_special_mapcloning\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:mossy_cobblestone_from_vine\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=649,[\"count\"]=1,[\"ingredients\"]={{28,1,false},{650,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"mossy_cobblestone\"},[\"special\"]=false},[\"minecraft:mossy_stone_brick_slab_from_mossy_stone_brick_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=654,[\"count\"]=2,[\"ingredients\"]={{655,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:mud_brick_slab_from_mud_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=658,[\"count\"]=2,[\"ingredients\"]={{659,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:music_disc_5\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=668,[\"count\"]=1,[\"ingredients\"]={{669,1,false},{669,1,false},{669,1,false},{669,1,false},{669,1,false},{669,1,false},{669,1,false},{669,1,false},{669,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:nether_brick_wall_from_nether_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=674,[\"count\"]=1,[\"ingredients\"]={{216,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:netherite_hoe_smithing\"]={[\"kind\"]=\"smithing_transform\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=683,[\"count\"]=1,[\"ingredients\"]={{374,1,false},{610,1,false},{678,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:netherite_sword_smithing\"]={[\"kind\"]=\"smithing_transform\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=689,[\"count\"]=1,[\"ingredients\"]={{378,1,false},{610,1,false},{678,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:oak_fence_gate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=697,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=692,[3]=8,[4]=8,[5]=692,[6]=8},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_fence_gate\"},[\"special\"]=false},[\"minecraft:oak_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=706,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=707,[2]=707,[3]=707,[4]=707},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:orange_dye_from_red_yellow\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=413,[\"count\"]=2,[\"ingredients\"]={{425,1,false},{433,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"orange_dye\"},[\"special\"]=false},[\"minecraft:oxidized_chiseled_copper_from_oxidized_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=718,[\"count\"]=4,[\"ingredients\"]={{720,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:oxidized_cut_copper_slab_from_oxidized_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=719,[\"count\"]=8,[\"ingredients\"]={{720,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:paper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=140,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=728,[2]=728,[3]=728},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:pink_dye_from_pink_tulip\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=417,[\"count\"]=1,[\"ingredients\"]={{734,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"pink_dye\"},[\"special\"]=false},[\"minecraft:polished_andesite\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=740,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=26,[2]=26,[3]=26,[4]=26},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_basalt\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=743,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=744,[2]=744,[3]=744,[4]=744},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_blackstone_brick_stairs_from_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=746,[\"count\"]=1,[\"ingredients\"]={{109,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_bricks_from_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=292,[\"count\"]=1,[\"ingredients\"]={{109,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=750,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=219,[4]=219,[5]=219,[7]=219,[8]=219,[9]=219},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_deepslate_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=752,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=359,[2]=359,[3]=359},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_deepslate_wall_from_polished_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=754,[\"count\"]=1,[\"ingredients\"]={{359,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_diorite_stairs_from_polished_diorite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=757,[\"count\"]=1,[\"ingredients\"]={{755,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_granite_stairs_from_polished_granite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=760,[\"count\"]=1,[\"ingredients\"]={{758,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_tuff_stairs_from_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=762,[\"count\"]=1,[\"ingredients\"]={{239,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:prismarine_brick_slab_from_prismarine_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=767,[\"count\"]=2,[\"ingredients\"]={{768,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:prismarine_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=772,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=766,[2]=766,[3]=766,[4]=766,[5]=766,[6]=766},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:purple_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=778,[\"count\"]=8,[\"ingredients\"]={{421,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:purpur_pillar\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=784,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=785,[2]=785},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:quartz_bricks\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=788,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=222,[2]=222,[3]=222,[4]=222},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:quartz_stairs_from_quartz_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=790,[\"count\"]=1,[\"ingredients\"]={{222,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:raw_gold\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=489,[\"count\"]=9,[\"ingredients\"]={{795,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:red_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=426,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=427,[2]=427},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:red_nether_brick_slab_from_red_nether_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=807,[\"count\"]=2,[\"ingredients\"]={{808,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:red_sandstone_slab_from_red_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=224,[\"count\"]=2,[\"ingredients\"]={{225,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:red_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=806,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=425,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:redstone_torch\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=23,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=243,[2]=8},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:sandstone_slab_from_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=227,[\"count\"]=2,[\"ingredients\"]={{228,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:sentry_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{829,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:silence_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=835,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=835,[3]=133,[4]=133,[5]=213,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:smooth_quartz\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=842,[\"count\"]=1,[\"ingredients\"]={{222,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:smooth_red_sandstone_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=847,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=845,[4]=845,[5]=845,[7]=845,[8]=845,[9]=845},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:smooth_stone_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=35,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=114,[2]=114,[3]=114},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:soul_torch\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=858,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=8,[3]=-856},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:spruce_door\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=867,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=864,[2]=864,[3]=864,[4]=864,[5]=864,[6]=864},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_door\"},[\"special\"]=false},[\"minecraft:spruce_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=876,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=864,[4]=864,[5]=864,[7]=864,[8]=864,[9]=864},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_stairs\"},[\"special\"]=false},[\"minecraft:stone_axe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=882,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-883,[2]=-883,[3]=-883,[4]=8,[6]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:stone_brick_wall_from_stone_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=885,[\"count\"]=1,[\"ingredients\"]={{231,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:stone_shovel\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=889,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-883,[2]=8,[3]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:stripped_birch_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=894,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=81,[2]=81,[3]=81,[4]=81},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:stripped_warped_hyphae\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=902,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=903,[2]=903,[3]=903,[4]=903},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:tinted_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=906,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[2]=25,[4]=25,[5]=65,[6]=25,[8]=25},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:tuff_brick_slab_from_polished_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=236,[\"count\"]=2,[\"ingredients\"]={{237,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:tuff_brick_wall_from_polished_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=911,[\"count\"]=1,[\"ingredients\"]={{237,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:tuff_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=912,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=239,[4]=239,[5]=239,[7]=239,[8]=239,[9]=239},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:ward_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{917,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:warped_planks\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=919,[\"count\"]=4,[\"ingredients\"]={{928,1,true}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"planks\"},[\"special\"]=false},[\"minecraft:waxed_chiseled_copper_from_waxed_copper_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=934,[\"count\"]=4,[\"ingredients\"]={{284,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_copper_grate_from_waxed_copper_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=939,[\"count\"]=4,[\"ingredients\"]={{284,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_cut_copper_slab_from_waxed_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=935,[\"count\"]=2,[\"ingredients\"]={{936,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_exposed_chiseled_copper_from_waxed_exposed_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=942,[\"count\"]=1,[\"ingredients\"]={{945,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_exposed_copper_trapdoor_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=950,[\"count\"]=1,[\"ingredients\"]={{951,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_exposed_copper_trapdoor\"},[\"special\"]=false},[\"minecraft:waxed_exposed_cut_copper_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=952,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=945,[4]=945,[5]=945,[7]=945,[8]=945,[9]=945},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_exposed_cut_copper_stairs\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_copper_bulb\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=957,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=955,[4]=955,[5]=116,[6]=955,[8]=243},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_cut_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=956,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=955,[2]=955,[3]=955,[4]=955},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_oxidized_cut_copper\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_cut_copper_stairs_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=963,[\"count\"]=1,[\"ingredients\"]={{724,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_oxidized_cut_copper_stairs\"},[\"special\"]=false},[\"minecraft:waxed_weathered_copper_bulb_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=969,[\"count\"]=1,[\"ingredients\"]={{970,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_weathered_copper_bulb\"},[\"special\"]=false},[\"minecraft:waxed_weathered_cut_copper_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=968,[\"count\"]=1,[\"ingredients\"]={{978,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_weathered_cut_copper\"},[\"special\"]=false},[\"minecraft:waxed_weathered_cut_copper_stairs_from_waxed_weathered_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=980,[\"count\"]=4,[\"ingredients\"]={{967,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:weathered_copper_grate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=975,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=973,[4]=973,[6]=973,[8]=973},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:weathered_cut_copper_stairs_from_weathered_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=981,[\"count\"]=4,[\"ingredients\"]={{973,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:white_dye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=429,[\"count\"]=1,[\"ingredients\"]={{137,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"white_dye\"},[\"special\"]=false},[\"minecraft:wild_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=991,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=991,[3]=133,[4]=133,[5]=649,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:wooden_sword\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=999,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-62,[3]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:yellow_dye_from_sunflower\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=433,[\"count\"]=2,[\"ingredients\"]={{1005,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"yellow_dye\"},[\"special\"]=false}},[\"counts\"]={}}",
  ["ceetos/recipes/vanilla-recipes-1.21.1-6.lua"] = "return{[\"schema\"]=1,[\"minecraft\"]=\"1.21.1\",[\"recipes\"]={[\"minecraft:acacia_fence_gate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=9,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=2,[3]=8,[4]=8,[5]=2,[6]=8},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_fence_gate\"},[\"special\"]=false},[\"minecraft:acacia_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=19,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=20,[2]=20,[3]=20,[4]=20},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:andesite_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=31,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=26,[2]=26,[3]=26,[4]=26,[5]=26,[6]=26},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:baked_potato_from_smoking\"]={[\"kind\"]=\"smoking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smoke\",[\"output\"]=39,[\"count\"]=1,[\"ingredients\"]={{40,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:bamboo_mosaic\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=52,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=53,[2]=53},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:bamboo_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=59,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=44,[4]=44,[5]=44,[7]=44,[8]=44,[9]=44},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_stairs\"},[\"special\"]=false},[\"minecraft:birch_button\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=75,[\"count\"]=1,[\"ingredients\"]={{74,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_button\"},[\"special\"]=false},[\"minecraft:birch_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=84,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=74,[2]=74,[3]=74,[4]=74,[5]=74,[6]=74,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_sign\"},[\"special\"]=false},[\"minecraft:black_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=96,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=91,[2]=91},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:black_terracotta\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=103,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=107,[2]=107,[3]=107,[4]=107,[5]=95,[6]=107,[7]=107,[8]=107,[9]=107},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_terracotta\"},[\"special\"]=false},[\"minecraft:blaze_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=115,[\"count\"]=2,[\"ingredients\"]={{116,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:blue_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=126,[\"count\"]=1,[\"ingredients\"]={{127,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:bone_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=136,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=137,[2]=137,[3]=137,[4]=137,[5]=137,[6]=137,[7]=137,[8]=137,[9]=137},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:bread\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=145,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=146,[2]=146,[3]=146},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:brick_wall_from_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=154,[\"count\"]=1,[\"ingredients\"]={{152,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:brown_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=163,[\"count\"]=1,[\"ingredients\"]={{164,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:calibrated_sculk_sensor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=174,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=25,[4]=25,[5]=175,[6]=25},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:cherry_boat\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=187,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=188,[3]=188,[4]=188,[5]=188,[6]=188},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"boat\"},[\"special\"]=false},[\"minecraft:cherry_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=197,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=188,[2]=188},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_pressure_plate\"},[\"special\"]=false},[\"minecraft:chiseled_bookshelf\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=206,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-62,[3]=-62,[4]=-63,[5]=-63,[6]=-63,[7]=-62,[8]=-62,[9]=-62},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:chiseled_polished_blackstone\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=217,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=218,[2]=218},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:chiseled_sandstone_from_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=226,[\"count\"]=1,[\"ingredients\"]={{228,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:chiseled_tuff_bricks_from_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=235,[\"count\"]=1,[\"ingredients\"]={{239,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:coal_from_smelting_coal_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=244,[\"count\"]=1,[\"ingredients\"]={{246,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"misc\",[\"group\"]=\"coal\"},[\"special\"]=false},[\"minecraft:cobbled_deepslate_stairs_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=251,[\"count\"]=1,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cobblestone_wall_from_cobblestone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=255,[\"count\"]=1,[\"ingredients\"]={{28,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cooked_chicken\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=265,[\"count\"]=1,[\"ingredients\"]={{266,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cooked_mutton_from_smoking\"]={[\"kind\"]=\"smoking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smoke\",[\"output\"]=269,[\"count\"]=1,[\"ingredients\"]={{270,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cooked_salmon_from_campfire_cooking\"]={[\"kind\"]=\"campfire_cooking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Campfire\",[\"output\"]=275,[\"count\"]=1,[\"ingredients\"]={{276,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=600,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:copper_ingot\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=168,[\"count\"]=9,[\"ingredients\"]={{209,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"copper_ingot\"},[\"special\"]=false},[\"minecraft:copper_trapdoor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=285,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=168,[2]=168,[3]=168,[4]=168,[5]=168,[6]=168},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:creeper_banner_pattern\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=297,[\"count\"]=1,[\"ingredients\"]={{140,1,false},{298,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:crimson_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=309,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=300,[2]=300},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_pressure_plate\"},[\"special\"]=false},[\"minecraft:cut_copper_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=208,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=210,[2]=210,[3]=210},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:cut_red_sandstone_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=318,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=317,[2]=317,[3]=317},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:cyan_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=321,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=322,[2]=322,[3]=322,[4]=322,[5]=322,[6]=322,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:cyan_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=332,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=325,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:dark_oak_fence\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=339,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=335,[2]=8,[3]=335,[4]=335,[5]=8,[6]=335},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_fence\"},[\"special\"]=false},[\"minecraft:dark_oak_trapdoor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=348,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=335,[2]=335,[3]=335,[4]=335,[5]=335,[6]=335},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_trapdoor\"},[\"special\"]=false},[\"minecraft:decorated_pot\"]={[\"kind\"]=\"crafting_decorated_pot\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:deepslate_brick_stairs_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=360,[\"count\"]=1,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_bricks_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=287,[\"count\"]=1,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tile_stairs_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=363,[\"count\"]=1,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tile_wall_from_polished_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=364,[\"count\"]=1,[\"ingredients\"]={{359,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:diamond_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=367,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=133,[3]=133,[4]=133,[5]=133,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:diamond_hoe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=374,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=133,[4]=8,[6]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:diorite_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=380,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=27,[4]=27,[5]=27,[7]=27,[8]=27,[9]=27},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:dried_kelp_from_smelting\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=383,[\"count\"]=1,[\"ingredients\"]={{385,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:dye_black_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=91,[\"count\"]=1,[\"ingredients\"]={{95,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:dye_cyan_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=326,[\"count\"]=1,[\"ingredients\"]={{325,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:dye_light_blue_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=396,[\"count\"]=1,[\"ingredients\"]={{397,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_lime_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=407,[\"count\"]=1,[\"ingredients\"]={{405,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:dye_pink_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=418,[\"count\"]=1,[\"ingredients\"]={{417,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:dye_white_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=428,[\"count\"]=1,[\"ingredients\"]={{429,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:emerald_from_blasting_deepslate_emerald_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=436,[\"count\"]=1,[\"ingredients\"]={{438,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"emerald\"},[\"special\"]=false},[\"minecraft:end_stone_brick_slab_from_end_stone_brick_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=446,[\"count\"]=2,[\"ingredients\"]={{447,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:end_stone_bricks\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=447,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=448,[2]=448,[3]=448,[4]=448},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:exposed_copper_grate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=458,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=455,[4]=455,[6]=455,[8]=455},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:exposed_cut_copper_stairs_from_exposed_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=459,[\"count\"]=4,[\"ingredients\"]={{455,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:firework_star\"]={[\"kind\"]=\"crafting_special_firework_star\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:flower_pot\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=473,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=149,[3]=149,[5]=149},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:glowstone\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=483,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=484,[2]=484,[3]=484,[4]=484},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:gold_ingot_from_smelting_deepslate_gold_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=242,[\"count\"]=1,[\"ingredients\"]={{486,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"gold_ingot\"},[\"special\"]=false},[\"minecraft:golden_axe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=492,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=242,[2]=242,[3]=242,[4]=8,[6]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:golden_shovel\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=500,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=242,[2]=8,[3]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:granite_wall_from_granite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=505,[\"count\"]=1,[\"ingredients\"]={{502,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:gray_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=511,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=390,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:green_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=515,[\"count\"]=8,[\"ingredients\"]={{328,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:hay_block\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=523,[\"count\"]=1,[\"ingredients\"]={{146,1,false},{146,1,false},{146,1,false},{146,1,false},{146,1,false},{146,1,false},{146,1,false},{146,1,false},{146,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:host_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{530,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:iron_hoe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=537,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22,[4]=8,[6]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:iron_ingot_from_smelting_raw_iron\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=22,[\"count\"]=1,[\"ingredients\"]={{540,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.7,[\"category\"]=\"misc\",[\"group\"]=\"iron_ingot\"},[\"special\"]=false},[\"minecraft:iron_trapdoor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=545,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22,[3]=22,[4]=22},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:jungle_fence\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=555,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=551,[2]=8,[3]=551,[4]=551,[5]=8,[6]=551},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_fence\"},[\"special\"]=false},[\"minecraft:jungle_trapdoor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=564,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=551,[2]=551,[3]=551,[4]=551,[5]=551,[6]=551},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_trapdoor\"},[\"special\"]=false},[\"minecraft:lapis_lazuli_from_smelting_deepslate_lapis_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=124,[\"count\"]=1,[\"ingredients\"]={{570,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.2,[\"category\"]=\"misc\",[\"group\"]=\"lapis_lazuli\"},[\"special\"]=false},[\"minecraft:leather_leggings\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=579,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=141,[2]=141,[3]=141,[4]=141,[6]=141,[7]=141,[9]=141},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:light_blue_dye_from_blue_orchid\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=397,[\"count\"]=1,[\"ingredients\"]={{585,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"light_blue_dye\"},[\"special\"]=false},[\"minecraft:light_gray_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=400,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=403,[2]=403,[3]=403,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:light_gray_dye_from_white_tulip\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=401,[\"count\"]=1,[\"ingredients\"]={{594,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"light_gray_dye\"},[\"special\"]=false},[\"minecraft:lime_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=601,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=407,[2]=407,[3]=407,[4]=407,[5]=407,[6]=407,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:lime_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=607,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=405,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:magenta_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=408,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=411,[2]=411,[3]=411,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:magenta_dye_from_purple_and_pink\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=409,[\"count\"]=2,[\"ingredients\"]={{421,1,false},{417,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"magenta_dye\"},[\"special\"]=false},[\"minecraft:mangrove_boat\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=625,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=626,[3]=626,[4]=626,[5]=626,[6]=626},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"boat\"},[\"special\"]=false},[\"minecraft:mangrove_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=635,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=626,[2]=626},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_pressure_plate\"},[\"special\"]=false},[\"minecraft:map_extending\"]={[\"kind\"]=\"crafting_special_mapextending\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:mossy_cobblestone_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=651,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=649,[2]=649,[3]=649},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:mossy_stone_brick_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=656,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=655,[4]=655,[5]=655,[7]=655,[8]=655,[9]=655},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:mud_brick_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=660,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=659,[4]=659,[5]=659,[7]=659,[8]=659,[9]=659},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:nether_brick\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=670,[\"count\"]=1,[\"ingredients\"]={{671,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:nether_bricks\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=216,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=670,[2]=670,[3]=670,[4]=670},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:netherite_ingot\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=610,[\"count\"]=1,[\"ingredients\"]={{684,1,false},{684,1,false},{684,1,false},{684,1,false},{242,1,false},{242,1,false},{242,1,false},{242,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"netherite_ingot\"},[\"special\"]=false},[\"minecraft:netherite_upgrade_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=678,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=678,[3]=133,[4]=133,[5]=671,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:oak_hanging_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=698,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=11,[3]=11,[4]=699,[5]=699,[6]=699,[7]=699,[8]=699,[9]=699},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"hanging_sign\"},[\"special\"]=false},[\"minecraft:observer\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=708,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=28,[2]=28,[3]=28,[4]=243,[5]=243,[6]=257,[7]=28,[8]=28,[9]=28},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:orange_dye_from_torchflower\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=413,[\"count\"]=1,[\"ingredients\"]={{713,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"orange_dye\"},[\"special\"]=false},[\"minecraft:oxidized_chiseled_copper_from_oxidized_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=718,[\"count\"]=1,[\"ingredients\"]={{721,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:oxidized_cut_copper_slab_from_oxidized_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=719,[\"count\"]=2,[\"ingredients\"]={{721,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:pink_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=729,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=419,[2]=419,[3]=419,[4]=419,[5]=419,[6]=419,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:pink_dye_from_red_white_dye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=417,[\"count\"]=2,[\"ingredients\"]={{425,1,false},{429,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"pink_dye\"},[\"special\"]=false},[\"minecraft:polished_andesite_from_andesite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=740,[\"count\"]=1,[\"ingredients\"]={{26,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_basalt_from_basalt_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=743,[\"count\"]=1,[\"ingredients\"]={{744,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_brick_stairs_from_polished_blackstone_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=746,[\"count\"]=1,[\"ingredients\"]={{292,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_bricks_from_polished_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=292,[\"count\"]=1,[\"ingredients\"]={{219,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_stairs_from_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=750,[\"count\"]=1,[\"ingredients\"]={{109,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_deepslate_slab_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=752,[\"count\"]=2,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_diorite\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=755,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=27,[2]=27,[3]=27,[4]=27},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_granite\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=758,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=502,[2]=502,[3]=502,[4]=502},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_tuff\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=237,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=239,[2]=239,[3]=239,[4]=239},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_tuff_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=763,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=237,[2]=237,[3]=237,[4]=237,[5]=237,[6]=237},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:prismarine_brick_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=769,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=768,[4]=768,[5]=768,[7]=768,[8]=768,[9]=768},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:prismarine_wall_from_prismarine_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=772,[\"count\"]=1,[\"ingredients\"]={{766,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:purple_dye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=421,[\"count\"]=2,[\"ingredients\"]={{121,1,false},{425,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:purpur_pillar_from_purpur_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=784,[\"count\"]=1,[\"ingredients\"]={{783,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:quartz_bricks_from_quartz_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=788,[\"count\"]=1,[\"ingredients\"]={{222,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:rabbit_stew_from_brown_mushroom\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=791,[\"count\"]=1,[\"ingredients\"]={{39,1,false},{273,1,false},{71,1,false},{181,1,false},{463,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"rabbit_stew\"},[\"special\"]=false},[\"minecraft:raw_gold_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=795,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=489,[2]=489,[3]=489,[4]=489,[5]=489,[6]=489,[7]=489,[8]=489,[9]=489},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:red_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=801,[\"count\"]=8,[\"ingredients\"]={{425,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:red_nether_brick_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=809,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=808,[4]=808,[5]=808,[7]=808,[8]=808,[9]=808},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:red_sandstone_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=812,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:redstone\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=243,[\"count\"]=9,[\"ingredients\"]={{816,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:repair_item\"]={[\"kind\"]=\"crafting_special_repairitem\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:sandstone_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=824,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:shaper_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=830,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=830,[3]=133,[4]=133,[5]=107,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:silence_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{835,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:smooth_quartz_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=843,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=842,[2]=842,[3]=842},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:smooth_red_sandstone_stairs_from_smooth_red_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=847,[\"count\"]=1,[\"ingredients\"]={{845,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:smooth_stone_slab_from_smooth_stone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=35,[\"count\"]=2,[\"ingredients\"]={{114,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:spectral_arrow\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=859,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[2]=484,[4]=484,[5]=36,[6]=484,[8]=484},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:spruce_fence\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=868,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=864,[2]=8,[3]=864,[4]=864,[5]=8,[6]=864},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_fence\"},[\"special\"]=false},[\"minecraft:spruce_trapdoor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=877,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=864,[2]=864,[3]=864,[4]=864,[5]=864,[6]=864},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_trapdoor\"},[\"special\"]=false},[\"minecraft:stone_brick_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=230,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=231,[2]=231,[3]=231},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:stone_brick_walls_from_stone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=885,[\"count\"]=1,[\"ingredients\"]={{232,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:stone_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=522,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=232,[2]=232,[3]=232},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:stripped_cherry_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=895,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=195,[2]=195,[3]=195,[4]=195},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:sugar_from_honey_bottle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=172,[\"count\"]=3,[\"ingredients\"]={{526,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"sugar\"},[\"special\"]=false},[\"minecraft:tipped_arrow\"]={[\"kind\"]=\"crafting_special_tippedarrow\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:tuff_brick_slab_from_tuff_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=236,[\"count\"]=2,[\"ingredients\"]={{238,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:tuff_brick_wall_from_tuff_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=911,[\"count\"]=1,[\"ingredients\"]={{238,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:tuff_stairs_from_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=912,[\"count\"]=1,[\"ingredients\"]={{239,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:warped_button\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=918,[\"count\"]=1,[\"ingredients\"]={{919,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_button\"},[\"special\"]=false},[\"minecraft:warped_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=929,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=919,[2]=919},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_pressure_plate\"},[\"special\"]=false},[\"minecraft:waxed_chiseled_copper_from_waxed_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=934,[\"count\"]=1,[\"ingredients\"]={{936,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_copper_trapdoor_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=940,[\"count\"]=1,[\"ingredients\"]={{285,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_copper_trapdoor\"},[\"special\"]=false},[\"minecraft:waxed_cut_copper_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=941,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=936,[4]=936,[5]=936,[7]=936,[8]=936,[9]=936},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_cut_copper_stairs\"},[\"special\"]=false},[\"minecraft:waxed_exposed_copper_bulb\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=946,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=944,[4]=944,[5]=116,[6]=944,[8]=243},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:waxed_exposed_cut_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=945,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=944,[2]=944,[3]=944,[4]=944},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_exposed_cut_copper\"},[\"special\"]=false},[\"minecraft:waxed_exposed_cut_copper_stairs_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=952,[\"count\"]=1,[\"ingredients\"]={{459,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_exposed_cut_copper_stairs\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_copper_bulb_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=957,[\"count\"]=1,[\"ingredients\"]={{722,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_oxidized_copper_bulb\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_cut_copper_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=956,[\"count\"]=1,[\"ingredients\"]={{721,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_oxidized_cut_copper\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_cut_copper_stairs_from_waxed_oxidized_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=963,[\"count\"]=4,[\"ingredients\"]={{955,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_weathered_copper_door_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=971,[\"count\"]=1,[\"ingredients\"]={{972,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_weathered_copper_door\"},[\"special\"]=false},[\"minecraft:waxed_weathered_cut_copper_from_waxed_weathered_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=968,[\"count\"]=4,[\"ingredients\"]={{967,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_weathered_cut_copper_stairs_from_waxed_weathered_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=980,[\"count\"]=1,[\"ingredients\"]={{968,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:weathered_copper_grate_from_weathered_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=975,[\"count\"]=4,[\"ingredients\"]={{973,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:weathered_cut_copper_stairs_from_weathered_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=981,[\"count\"]=1,[\"ingredients\"]={{978,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:white_dye_from_lily_of_the_valley\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=429,[\"count\"]=1,[\"ingredients\"]={{986,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"white_dye\"},[\"special\"]=false},[\"minecraft:wild_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{991,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:writable_book\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=1000,[\"count\"]=1,[\"ingredients\"]={{139,1,false},{100,1,false},{38,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:yellow_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=1006,[\"count\"]=1,[\"ingredients\"]={{1007,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false}},[\"counts\"]={}}",
  ["ceetos/recipes/vanilla-recipes-1.21.1-7.lua"] = "return{[\"schema\"]=1,[\"minecraft\"]=\"1.21.1\",[\"recipes\"]={[\"minecraft:acacia_hanging_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=10,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=11,[3]=11,[4]=12,[5]=12,[6]=12,[7]=12,[8]=12,[9]=12},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"hanging_sign\"},[\"special\"]=false},[\"minecraft:activator_rail\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=21,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=8,[3]=22,[4]=22,[5]=23,[6]=22,[7]=22,[8]=8,[9]=22},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:andesite_wall_from_andesite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=31,[\"count\"]=1,[\"ingredients\"]={{26,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:bamboo_block\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=41,[\"count\"]=1,[\"ingredients\"]={{42,1,false},{42,1,false},{42,1,false},{42,1,false},{42,1,false},{42,1,false},{42,1,false},{42,1,false},{42,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:bamboo_mosaic_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=54,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=52,[2]=52,[3]=52},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:bamboo_trapdoor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=60,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=44,[2]=44,[3]=44,[4]=44,[5]=44,[6]=44},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_trapdoor\"},[\"special\"]=false},[\"minecraft:birch_chest_boat\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=76,[\"count\"]=1,[\"ingredients\"]={{5,1,false},{73,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"chest_boat\"},[\"special\"]=false},[\"minecraft:birch_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=85,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=74,[2]=74,[3]=74},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_slab\"},[\"special\"]=false},[\"minecraft:black_concrete_powder\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=97,[\"count\"]=8,[\"ingredients\"]={{95,1,false},{98,1,false},{98,1,false},{98,1,false},{98,1,false},{99,1,false},{99,1,false},{99,1,false},{99,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"concrete_powder\"},[\"special\"]=false},[\"minecraft:blackstone_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=108,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=109,[2]=109,[3]=109},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:blue_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=117,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=118,[2]=118,[3]=118,[4]=118,[5]=118,[6]=118,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:blue_ice\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=128,[\"count\"]=1,[\"ingredients\"]={{129,1,false},{129,1,false},{129,1,false},{129,1,false},{129,1,false},{129,1,false},{129,1,false},{129,1,false},{129,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:bone_meal\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=137,[\"count\"]=3,[\"ingredients\"]={{138,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bonemeal\"},[\"special\"]=false},[\"minecraft:brewing_stand\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=147,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=116,[4]=-148,[5]=-148,[6]=-148},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:bricks\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=152,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=149,[2]=149,[3]=149,[4]=149},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:brown_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=165,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=159,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:campfire\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=176,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=8,[4]=8,[5]=-177,[6]=8,[7]=-178,[8]=-178,[9]=-178},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:cherry_button\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=189,[\"count\"]=1,[\"ingredients\"]={{188,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_button\"},[\"special\"]=false},[\"minecraft:cherry_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=198,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=188,[2]=188,[3]=188,[4]=188,[5]=188,[6]=188,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_sign\"},[\"special\"]=false},[\"minecraft:chiseled_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=207,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=208,[2]=208},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:chiseled_polished_blackstone_from_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=217,[\"count\"]=1,[\"ingredients\"]={{109,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:chiseled_stone_bricks\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=229,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=230,[2]=230},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:chiseled_tuff_from_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=233,[\"count\"]=1,[\"ingredients\"]={{239,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:coal_from_smelting_deepslate_coal_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=244,[\"count\"]=1,[\"ingredients\"]={{247,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"misc\",[\"group\"]=\"coal\"},[\"special\"]=false},[\"minecraft:cobbled_deepslate_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=252,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=213,[2]=213,[3]=213,[4]=213,[5]=213,[6]=213},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:comparator\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=256,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=23,[4]=23,[5]=257,[6]=23,[7]=232,[8]=232,[9]=232},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:cooked_chicken_from_campfire_cooking\"]={[\"kind\"]=\"campfire_cooking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Campfire\",[\"output\"]=265,[\"count\"]=1,[\"ingredients\"]={{266,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=600,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cooked_porkchop\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=271,[\"count\"]=1,[\"ingredients\"]={{272,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cooked_salmon_from_smoking\"]={[\"kind\"]=\"smoking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smoke\",[\"output\"]=275,[\"count\"]=1,[\"ingredients\"]={{276,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:copper_ingot_from_blasting_copper_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=168,[\"count\"]=1,[\"ingredients\"]={{281,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.7,[\"category\"]=\"misc\",[\"group\"]=\"copper_ingot\"},[\"special\"]=false},[\"minecraft:cracked_deepslate_bricks\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=286,[\"count\"]=1,[\"ingredients\"]={{287,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:crimson_button\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=299,[\"count\"]=1,[\"ingredients\"]={{300,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_button\"},[\"special\"]=false},[\"minecraft:crimson_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=310,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=300,[2]=300,[3]=300,[4]=300,[5]=300,[6]=300,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_sign\"},[\"special\"]=false},[\"minecraft:cut_copper_slab_from_copper_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=208,[\"count\"]=8,[\"ingredients\"]={{209,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cut_red_sandstone_slab_from_cut_red_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=318,[\"count\"]=2,[\"ingredients\"]={{317,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cyan_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=323,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=322,[2]=322,[3]=322,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:cyan_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=333,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=332,[2]=332,[3]=332,[4]=332,[5]=332,[6]=332},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:dark_oak_fence_gate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=340,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=335,[3]=8,[4]=8,[5]=335,[6]=8},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_fence_gate\"},[\"special\"]=false},[\"minecraft:dark_oak_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=349,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=350,[2]=350,[3]=350,[4]=350},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:decorated_pot_simple\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=356,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=149,[4]=149,[6]=149,[8]=149},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:deepslate_brick_stairs_from_deepslate_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=360,[\"count\"]=1,[\"ingredients\"]={{287,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_bricks_from_polished_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=287,[\"count\"]=1,[\"ingredients\"]={{359,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tile_stairs_from_deepslate_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=363,[\"count\"]=1,[\"ingredients\"]={{287,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tiles\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=289,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=287,[2]=287,[3]=287,[4]=287},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:diamond_boots\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=369,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=133,[3]=133,[4]=133,[6]=133},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:diamond_leggings\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=375,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=133,[3]=133,[4]=133,[6]=133,[7]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:diorite_stairs_from_diorite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=380,[\"count\"]=1,[\"ingredients\"]={{27,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:dried_kelp_from_smoking\"]={[\"kind\"]=\"smoking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smoke\",[\"output\"]=383,[\"count\"]=1,[\"ingredients\"]={{385,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.1,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:dye_blue_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=119,[\"count\"]=1,[\"ingredients\"]={{121,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_cyan_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=322,[\"count\"]=1,[\"ingredients\"]={{325,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:dye_light_blue_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=398,[\"count\"]=1,[\"ingredients\"]={{397,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:dye_magenta_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=408,[\"count\"]=1,[\"ingredients\"]={{409,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_pink_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=419,[\"count\"]=1,[\"ingredients\"]={{417,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:dye_white_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=430,[\"count\"]=1,[\"ingredients\"]={{429,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:emerald_from_blasting_emerald_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=436,[\"count\"]=1,[\"ingredients\"]={{439,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"emerald\"},[\"special\"]=false},[\"minecraft:end_stone_brick_slab_from_end_stone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=446,[\"count\"]=2,[\"ingredients\"]={{448,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:end_stone_bricks_from_end_stone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=447,[\"count\"]=1,[\"ingredients\"]={{448,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:exposed_copper_grate_from_exposed_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=458,[\"count\"]=4,[\"ingredients\"]={{455,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:exposed_cut_copper_stairs_from_exposed_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=459,[\"count\"]=1,[\"ingredients\"]={{456,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:firework_star_fade\"]={[\"kind\"]=\"crafting_special_firework_star_fade\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:furnace\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=113,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-148,[2]=-148,[3]=-148,[4]=-148,[6]=-148,[7]=-148,[8]=-148,[9]=-148},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:gold_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=485,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=242,[2]=242,[3]=242,[4]=242,[5]=242,[6]=242,[7]=242,[8]=242,[9]=242},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:gold_ingot_from_smelting_gold_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=242,[\"count\"]=1,[\"ingredients\"]={{487,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"gold_ingot\"},[\"special\"]=false},[\"minecraft:golden_boots\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=493,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=242,[3]=242,[4]=242,[6]=242},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:golden_sword\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=501,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=242,[2]=242,[3]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:gray_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=506,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=392,[2]=392,[3]=392,[4]=392,[5]=392,[6]=392,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:gray_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=512,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=511,[2]=511,[3]=511,[4]=511,[5]=511,[6]=511},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:green_dye\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=328,[\"count\"]=1,[\"ingredients\"]={{516,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=1,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:heavy_weighted_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=524,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:iron_axe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=531,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22,[3]=22,[4]=8,[6]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:iron_ingot_from_blasting_deepslate_iron_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=22,[\"count\"]=1,[\"ingredients\"]={{538,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.7,[\"category\"]=\"misc\",[\"group\"]=\"iron_ingot\"},[\"special\"]=false},[\"minecraft:iron_leggings\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=541,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22,[3]=22,[4]=22,[6]=22,[7]=22,[9]=22},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:item_frame\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=481,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=8,[3]=8,[4]=8,[5]=141,[6]=8,[7]=8,[8]=8,[9]=8},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:jungle_fence_gate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=556,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=551,[3]=8,[4]=8,[5]=551,[6]=8},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_fence_gate\"},[\"special\"]=false},[\"minecraft:jungle_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=565,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=566,[2]=566,[3]=566,[4]=566},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:lapis_lazuli_from_smelting_lapis_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=124,[\"count\"]=1,[\"ingredients\"]={{571,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.2,[\"category\"]=\"misc\",[\"group\"]=\"lapis_lazuli\"},[\"special\"]=false},[\"minecraft:lectern\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=580,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-63,[2]=-63,[3]=-63,[5]=142,[8]=-63},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:light_blue_dye_from_blue_white_dye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=397,[\"count\"]=2,[\"ingredients\"]={{121,1,false},{429,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"light_blue_dye\"},[\"special\"]=false},[\"minecraft:light_gray_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=591,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{401,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:light_gray_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=595,[\"count\"]=1,[\"ingredients\"]={{596,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:lime_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=404,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=407,[2]=407,[3]=407,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:lime_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=608,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=607,[2]=607,[3]=607,[4]=607,[5]=607,[6]=607},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:magenta_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=615,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{409,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:magenta_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=619,[\"count\"]=1,[\"ingredients\"]={{620,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:mangrove_button\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=627,[\"count\"]=1,[\"ingredients\"]={{626,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_button\"},[\"special\"]=false},[\"minecraft:mangrove_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=636,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=626,[2]=626,[3]=626,[4]=626,[5]=626,[6]=626,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_sign\"},[\"special\"]=false},[\"minecraft:melon\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=643,[\"count\"]=1,[\"ingredients\"]={{479,1,false},{479,1,false},{479,1,false},{479,1,false},{479,1,false},{479,1,false},{479,1,false},{479,1,false},{479,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:mossy_cobblestone_slab_from_mossy_cobblestone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=651,[\"count\"]=2,[\"ingredients\"]={{649,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:mossy_stone_brick_stairs_from_mossy_stone_brick_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=656,[\"count\"]=1,[\"ingredients\"]={{655,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:mud_brick_stairs_from_mud_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=660,[\"count\"]=1,[\"ingredients\"]={{659,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:nether_brick_fence\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=672,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=216,[2]=670,[3]=216,[4]=216,[5]=670,[6]=216},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:nether_wart_block\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=675,[\"count\"]=1,[\"ingredients\"]={{676,1,false},{676,1,false},{676,1,false},{676,1,false},{676,1,false},{676,1,false},{676,1,false},{676,1,false},{676,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:netherite_ingot_from_netherite_block\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=610,[\"count\"]=9,[\"ingredients\"]={{679,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"netherite_ingot\"},[\"special\"]=false},[\"minecraft:note_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=690,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=-62,[2]=-62,[3]=-62,[4]=-62,[5]=243,[6]=-62,[7]=-62,[8]=-62,[9]=-62},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:oak_planks\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=692,[\"count\"]=4,[\"ingredients\"]={{700,1,true}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"planks\"},[\"special\"]=false},[\"minecraft:orange_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=709,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=415,[2]=415,[3]=415,[4]=415,[5]=415,[6]=415,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:orange_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=714,[\"count\"]=1,[\"ingredients\"]={{715,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:oxidized_copper_bulb\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=722,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=720,[4]=720,[5]=116,[6]=720,[8]=243},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:oxidized_cut_copper_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=724,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=721,[4]=721,[5]=721,[7]=721,[8]=721,[9]=721},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:pink_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=416,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=419,[2]=419,[3]=419,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:pink_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=735,[\"count\"]=1,[\"ingredients\"]={{736,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:polished_andesite_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=741,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=740,[2]=740,[3]=740},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_blackstone\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=219,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=109,[2]=109,[3]=109,[4]=109},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_blackstone_brick_stairs_from_polished_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=746,[\"count\"]=1,[\"ingredients\"]={{219,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_button\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=748,[\"count\"]=1,[\"ingredients\"]={{219,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:polished_blackstone_stairs_from_polished_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=750,[\"count\"]=1,[\"ingredients\"]={{219,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_deepslate_slab_from_polished_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=752,[\"count\"]=2,[\"ingredients\"]={{359,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_diorite_from_diorite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=755,[\"count\"]=1,[\"ingredients\"]={{27,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_granite_from_granite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=758,[\"count\"]=1,[\"ingredients\"]={{502,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_tuff_from_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=237,[\"count\"]=1,[\"ingredients\"]={{239,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_tuff_wall_from_polished_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=763,[\"count\"]=1,[\"ingredients\"]={{237,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:prismarine_brick_stairs_from_prismarine_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=769,[\"count\"]=1,[\"ingredients\"]={{768,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:pumpkin_pie\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=773,[\"count\"]=1,[\"ingredients\"]={{774,1,false},{172,1,false},{173,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:purple_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=779,[\"count\"]=1,[\"ingredients\"]={{780,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:purpur_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=785,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:quartz_from_blasting\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=257,[\"count\"]=1,[\"ingredients\"]={{787,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.2,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:rabbit_stew_from_red_mushroom\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=791,[\"count\"]=1,[\"ingredients\"]={{39,1,false},{273,1,false},{71,1,false},{181,1,false},{667,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"rabbit_stew\"},[\"special\"]=false},[\"minecraft:raw_iron\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=540,[\"count\"]=9,[\"ingredients\"]={{796,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:red_dye_from_beetroot\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=425,[\"count\"]=1,[\"ingredients\"]={{72,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"red_dye\"},[\"special\"]=false},[\"minecraft:red_nether_brick_stairs_from_red_nether_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=809,[\"count\"]=1,[\"ingredients\"]={{808,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:red_sandstone_stairs_from_red_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=812,[\"count\"]=1,[\"ingredients\"]={{225,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:redstone_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=816,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=243,[2]=243,[3]=243,[4]=243,[5]=243,[6]=243,[7]=243,[8]=243,[9]=243},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:repeater\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=820,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=23,[2]=243,[3]=23,[4]=232,[5]=232,[6]=232},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:sandstone_stairs_from_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=824,[\"count\"]=1,[\"ingredients\"]={{228,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:shaper_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{830,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:skull_banner_pattern\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=836,[\"count\"]=1,[\"ingredients\"]={{140,1,false},{837,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:smooth_quartz_slab_from_smooth_quartz_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=843,[\"count\"]=2,[\"ingredients\"]={{842,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:smooth_sandstone\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=848,[\"count\"]=1,[\"ingredients\"]={{228,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:snout_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=851,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=851,[3]=133,[4]=133,[5]=109,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:spire_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=860,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=860,[3]=133,[4]=133,[5]=783,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:spruce_fence_gate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=869,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=864,[3]=8,[4]=8,[5]=864,[6]=8},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_fence_gate\"},[\"special\"]=false},[\"minecraft:spruce_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=878,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=879,[2]=879,[3]=879,[4]=879},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:stone_brick_slab_from_stone_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=230,[\"count\"]=2,[\"ingredients\"]={{231,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:stone_bricks\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=231,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=232,[2]=232,[3]=232,[4]=232},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:stone_slab_from_stone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=522,[\"count\"]=2,[\"ingredients\"]={{232,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:stripped_crimson_hyphae\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=896,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=305,[2]=305,[3]=305,[4]=305},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:sugar_from_sugar_cane\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=172,[\"count\"]=1,[\"ingredients\"]={{728,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"sugar\"},[\"special\"]=false},[\"minecraft:tnt\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=907,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=465,[3]=465,[5]=465,[7]=465,[9]=465},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:tuff_brick_slab_from_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=236,[\"count\"]=2,[\"ingredients\"]={{239,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:tuff_brick_wall_from_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=911,[\"count\"]=1,[\"ingredients\"]={{239,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:tuff_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=913,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=239,[2]=239,[3]=239,[4]=239,[5]=239,[6]=239},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:warped_door\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=920,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=919,[2]=919,[3]=919,[4]=919,[5]=919,[6]=919},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_door\"},[\"special\"]=false},[\"minecraft:warped_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=930,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=919,[2]=919,[3]=919,[4]=919,[5]=919,[6]=919,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_sign\"},[\"special\"]=false},[\"minecraft:waxed_copper_block_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=284,[\"count\"]=1,[\"ingredients\"]={{209,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_copper_block\"},[\"special\"]=false},[\"minecraft:waxed_cut_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=936,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=284,[2]=284,[3]=284,[4]=284},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_cut_copper\"},[\"special\"]=false},[\"minecraft:waxed_cut_copper_stairs_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=941,[\"count\"]=1,[\"ingredients\"]={{316,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_cut_copper_stairs\"},[\"special\"]=false},[\"minecraft:waxed_exposed_copper_bulb_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=946,[\"count\"]=1,[\"ingredients\"]={{457,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_exposed_copper_bulb\"},[\"special\"]=false},[\"minecraft:waxed_exposed_cut_copper_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=945,[\"count\"]=1,[\"ingredients\"]={{456,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_exposed_cut_copper\"},[\"special\"]=false},[\"minecraft:waxed_exposed_cut_copper_stairs_from_waxed_exposed_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=952,[\"count\"]=4,[\"ingredients\"]={{944,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_oxidized_copper_door_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=958,[\"count\"]=1,[\"ingredients\"]={{959,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_oxidized_copper_door\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_cut_copper_from_waxed_oxidized_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=956,[\"count\"]=4,[\"ingredients\"]={{955,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_oxidized_cut_copper_stairs_from_waxed_oxidized_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=963,[\"count\"]=1,[\"ingredients\"]={{956,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_weathered_copper_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=967,[\"count\"]=1,[\"ingredients\"]={{973,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_weathered_copper\"},[\"special\"]=false},[\"minecraft:waxed_weathered_cut_copper_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=965,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=968,[2]=968,[3]=968},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_weathered_cut_copper_slab\"},[\"special\"]=false},[\"minecraft:wayfinder_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=982,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=982,[3]=133,[4]=133,[5]=107,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:weathered_cut_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=978,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=973,[2]=973,[3]=973,[4]=973},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:wheat\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=146,[\"count\"]=9,[\"ingredients\"]={{523,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:white_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=987,[\"count\"]=1,[\"ingredients\"]={{988,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:wind_charge\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=992,[\"count\"]=4,[\"ingredients\"]={{470,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:yellow_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=1001,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=435,[2]=435,[3]=435,[4]=435,[5]=435,[6]=435,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:yellow_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=1008,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=433,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false}},[\"counts\"]={}}",
  ["ceetos/recipes/vanilla-recipes-1.21.1-8.lua"] = "return{[\"schema\"]=1,[\"minecraft\"]=\"1.21.1\",[\"recipes\"]={[\"minecraft:acacia_planks\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=2,[\"count\"]=4,[\"ingredients\"]={{13,1,true}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"planks\"},[\"special\"]=false},[\"minecraft:amethyst_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=24,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=25,[2]=25,[3]=25,[4]=25},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:anvil\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=32,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=33,[2]=33,[3]=33,[5]=22,[7]=22,[8]=22,[9]=22},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:bamboo_button\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=43,[\"count\"]=1,[\"ingredients\"]={{44,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_button\"},[\"special\"]=false},[\"minecraft:bamboo_mosaic_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=55,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=52,[4]=52,[5]=52,[7]=52,[8]=52,[9]=52},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:banner_duplicate\"]={[\"kind\"]=\"crafting_special_bannerduplicate\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:birch_door\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=77,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=74,[2]=74,[3]=74,[4]=74,[5]=74,[6]=74},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_door\"},[\"special\"]=false},[\"minecraft:birch_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=86,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=74,[4]=74,[5]=74,[7]=74,[8]=74,[9]=74},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_stairs\"},[\"special\"]=false},[\"minecraft:black_dye\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=95,[\"count\"]=1,[\"ingredients\"]={{100,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"black_dye\"},[\"special\"]=false},[\"minecraft:blackstone_slab_from_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=108,[\"count\"]=2,[\"ingredients\"]={{109,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:blue_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=119,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=118,[2]=118,[3]=118,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:blue_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=130,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=121,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:bone_meal_from_bone_block\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=137,[\"count\"]=9,[\"ingredients\"]={{136,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bonemeal\"},[\"special\"]=false},[\"minecraft:brick\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=149,[\"count\"]=1,[\"ingredients\"]={{150,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.3,[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:brown_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=155,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=156,[2]=156,[3]=156,[4]=156,[5]=156,[6]=156,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:brown_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=166,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=165,[2]=165,[3]=165,[4]=165,[5]=165,[6]=165},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:candle\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=94,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=144,[2]=69},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:cherry_chest_boat\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=190,[\"count\"]=1,[\"ingredients\"]={{5,1,false},{187,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"chest_boat\"},[\"special\"]=false},[\"minecraft:cherry_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=199,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=188,[2]=188,[3]=188},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_slab\"},[\"special\"]=false},[\"minecraft:chiseled_copper_from_copper_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=207,[\"count\"]=4,[\"ingredients\"]={{209,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:chiseled_polished_blackstone_from_polished_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=217,[\"count\"]=1,[\"ingredients\"]={{219,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:chiseled_stone_bricks_from_stone_bricks_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=229,[\"count\"]=1,[\"ingredients\"]={{231,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:clay\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=240,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=150,[2]=150,[3]=150,[4]=150},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:coarse_dirt\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=248,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=249,[2]=99,[3]=99,[4]=249},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:cobbled_deepslate_wall_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=252,[\"count\"]=1,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:compass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=258,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=22,[4]=22,[5]=243,[6]=22,[8]=22},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:cooked_chicken_from_smoking\"]={[\"kind\"]=\"smoking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smoke\",[\"output\"]=265,[\"count\"]=1,[\"ingredients\"]={{266,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cooked_porkchop_from_campfire_cooking\"]={[\"kind\"]=\"campfire_cooking\",[\"mode\"]=\"crafting\",[\"address\"]=\"Campfire\",[\"output\"]=271,[\"count\"]=1,[\"ingredients\"]={{272,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=600,[\"experience\"]=0.35,[\"category\"]=\"food\"},[\"special\"]=false},[\"minecraft:cookie\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=277,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=146,[2]=162,[3]=146},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:copper_ingot_from_blasting_deepslate_copper_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=168,[\"count\"]=1,[\"ingredients\"]={{282,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.7,[\"category\"]=\"misc\",[\"group\"]=\"copper_ingot\"},[\"special\"]=false},[\"minecraft:cracked_deepslate_tiles\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=288,[\"count\"]=1,[\"ingredients\"]={{289,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:crimson_door\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=301,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=300,[2]=300,[3]=300,[4]=300,[5]=300,[6]=300},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_door\"},[\"special\"]=false},[\"minecraft:crimson_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=311,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=300,[2]=300,[3]=300},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_slab\"},[\"special\"]=false},[\"minecraft:cut_copper_slab_from_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=208,[\"count\"]=2,[\"ingredients\"]={{210,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cut_red_sandstone_slab_from_red_sandstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=318,[\"count\"]=2,[\"ingredients\"]={{225,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:cyan_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=324,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{325,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:cyan_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=333,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=325,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:dark_oak_hanging_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=341,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=11,[3]=11,[4]=342,[5]=342,[6]=342,[7]=342,[8]=342,[9]=342},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"hanging_sign\"},[\"special\"]=false},[\"minecraft:dark_prismarine\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=351,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=352,[2]=352,[3]=352,[4]=352,[5]=95,[6]=352,[7]=352,[8]=352,[9]=352},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:deepslate\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=357,[\"count\"]=1,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:deepslate_brick_stairs_from_polished_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=360,[\"count\"]=1,[\"ingredients\"]={{359,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tile_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=362,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=289,[2]=289,[3]=289},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:deepslate_tile_stairs_from_deepslate_tiles_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=363,[\"count\"]=1,[\"ingredients\"]={{289,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:deepslate_tiles_from_cobbled_deepslate_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=289,[\"count\"]=1,[\"ingredients\"]={{213,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:diamond_chestplate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=370,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=133,[3]=133,[4]=133,[5]=133,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:diamond_pickaxe\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=376,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=133,[3]=133,[5]=8,[8]=8},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:diorite_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=381,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=27,[2]=27,[3]=27,[4]=27,[5]=27,[6]=27},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:dripstone_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=386,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=387,[2]=387,[3]=387,[4]=387},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:dye_blue_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=122,[\"count\"]=1,[\"ingredients\"]={{121,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:dye_gray_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=389,[\"count\"]=1,[\"ingredients\"]={{390,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_light_blue_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=399,[\"count\"]=1,[\"ingredients\"]={{397,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:dye_magenta_carpet\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=410,[\"count\"]=1,[\"ingredients\"]={{409,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:dye_purple_bed\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=420,[\"count\"]=1,[\"ingredients\"]={{421,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:dye_white_wool\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=431,[\"count\"]=1,[\"ingredients\"]={{429,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wool\"},[\"special\"]=false},[\"minecraft:emerald_from_smelting_deepslate_emerald_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=436,[\"count\"]=1,[\"ingredients\"]={{438,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"emerald\"},[\"special\"]=false},[\"minecraft:end_stone_brick_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=449,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=447,[4]=447,[5]=447,[7]=447,[8]=447,[9]=447},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:ender_chest\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=451,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=67,[2]=67,[3]=67,[4]=67,[5]=442,[6]=67,[7]=67,[8]=67,[9]=67},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:exposed_cut_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=456,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=455,[2]=455,[3]=455,[4]=455},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:eye_armor_trim_smithing_template\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=460,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=133,[2]=460,[3]=133,[4]=133,[5]=448,[6]=133,[7]=133,[8]=133,[9]=133},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:fishing_rod\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=180,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[3]=8,[5]=8,[6]=144,[7]=8,[9]=144},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:furnace_minecart\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=474,[\"count\"]=1,[\"ingredients\"]={{113,1,false},{205,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:gold_ingot_from_blasting_deepslate_gold_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=242,[\"count\"]=1,[\"ingredients\"]={{486,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"gold_ingot\"},[\"special\"]=false},[\"minecraft:gold_ingot_from_smelting_nether_gold_ore\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=242,[\"count\"]=1,[\"ingredients\"]={{488,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=1,[\"category\"]=\"misc\",[\"group\"]=\"gold_ingot\"},[\"special\"]=false},[\"minecraft:golden_carrot\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=494,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=478,[2]=478,[3]=478,[4]=478,[5]=181,[6]=478,[7]=478,[8]=478,[9]=478},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:granite\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=502,[\"count\"]=1,[\"ingredients\"]={{27,1,false},{257,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:gray_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=389,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=392,[2]=392,[3]=392,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:gray_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=512,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=390,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:green_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=517,[\"count\"]=1,[\"ingredients\"]={{518,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:honey_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=525,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=526,[2]=526,[3]=526,[4]=526},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:iron_bars\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=532,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=22,[2]=22,[3]=22,[4]=22,[5]=22,[6]=22},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:iron_ingot_from_blasting_iron_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=22,[\"count\"]=1,[\"ingredients\"]={{539,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.7,[\"category\"]=\"misc\",[\"group\"]=\"iron_ingot\"},[\"special\"]=false},[\"minecraft:iron_nugget\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=184,[\"count\"]=9,[\"ingredients\"]={{22,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:jack_o_lantern\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=546,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=547,[2]=548},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:jungle_hanging_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=557,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=11,[3]=11,[4]=558,[5]=558,[6]=558,[7]=558,[8]=558,[9]=558},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"hanging_sign\"},[\"special\"]=false},[\"minecraft:ladder\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=567,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=8,[3]=8,[4]=8,[5]=8,[6]=8,[7]=8,[9]=8},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:lead\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=572,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=144,[2]=144,[4]=144,[5]=573,[9]=144},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:lever\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=581,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=8,[2]=28},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:light_blue_glazed_terracotta\"]={[\"kind\"]=\"smelting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smelt\",[\"output\"]=586,[\"count\"]=1,[\"ingredients\"]={{587,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=200,[\"experience\"]=0.1,[\"category\"]=\"blocks\"},[\"special\"]=false},[\"minecraft:light_gray_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=402,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=403,[2]=403},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:light_gray_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=597,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=401,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:lime_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=602,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{405,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:lime_stained_glass_pane_from_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=608,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=106,[2]=106,[3]=106,[4]=106,[5]=405,[6]=106,[7]=106,[8]=106,[9]=106},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false},[\"minecraft:magenta_carpet\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=410,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=411,[2]=411},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"carpet\"},[\"special\"]=false},[\"minecraft:magenta_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=621,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=409,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:mangrove_chest_boat\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=628,[\"count\"]=1,[\"ingredients\"]={{5,1,false},{625,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"chest_boat\"},[\"special\"]=false},[\"minecraft:mangrove_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=637,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=626,[2]=626,[3]=626},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_slab\"},[\"special\"]=false},[\"minecraft:melon_seeds\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=644,[\"count\"]=1,[\"ingredients\"]={{479,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:mossy_cobblestone_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=652,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=649,[4]=649,[5]=649,[7]=649,[8]=649,[9]=649},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:mossy_stone_brick_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=657,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=655,[2]=655,[3]=655,[4]=655,[5]=655,[6]=655},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:mud_brick_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=661,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=659,[2]=659,[3]=659,[4]=659,[5]=659,[6]=659},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:nether_brick_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=215,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=216,[2]=216,[3]=216},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:netherite_axe_smithing\"]={[\"kind\"]=\"smithing_transform\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=677,[\"count\"]=1,[\"ingredients\"]={{368,1,false},{610,1,false},{678,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:netherite_leggings_smithing\"]={[\"kind\"]=\"smithing_transform\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=685,[\"count\"]=1,[\"ingredients\"]={{375,1,false},{610,1,false},{678,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:oak_boat\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=691,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=692,[3]=692,[4]=692,[5]=692,[6]=692},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"boat\"},[\"special\"]=false},[\"minecraft:oak_pressure_plate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=701,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=692,[2]=692},[\"metadata\"]={[\"category\"]=\"redstone\",[\"group\"]=\"wooden_pressure_plate\"},[\"special\"]=false},[\"minecraft:orange_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=412,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=415,[2]=415,[3]=415,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:orange_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=716,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=413,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:oxidized_copper_grate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=723,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=720,[4]=720,[6]=720,[8]=720},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:oxidized_cut_copper_stairs_from_oxidized_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=724,[\"count\"]=4,[\"ingredients\"]={{720,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:pink_candle\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=730,[\"count\"]=1,[\"ingredients\"]={{94,1,false},{417,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"dyed_candle\"},[\"special\"]=false},[\"minecraft:pink_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=737,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=417,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:polished_andesite_slab_from_andesite_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=741,[\"count\"]=2,[\"ingredients\"]={{26,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_brick_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=745,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=292,[2]=292,[3]=292},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_blackstone_brick_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=747,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=292,[2]=292,[3]=292,[4]=292,[5]=292,[6]=292},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:polished_blackstone_from_blackstone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=219,[\"count\"]=1,[\"ingredients\"]={{109,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:polished_blackstone_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=751,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=219,[2]=219,[3]=219,[4]=219,[5]=219,[6]=219},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:polished_deepslate_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=753,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=359,[4]=359,[5]=359,[7]=359,[8]=359,[9]=359},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_diorite_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=756,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=755,[2]=755,[3]=755},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_granite_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=759,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=758,[2]=758,[3]=758},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_tuff_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=761,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=237,[2]=237,[3]=237},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:polished_tuff_wall_from_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=763,[\"count\"]=1,[\"ingredients\"]={{239,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:prismarine_bricks\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=768,[\"count\"]=1,[\"ingredients\"]={{352,1,false},{352,1,false},{352,1,false},{352,1,false},{352,1,false},{352,1,false},{352,1,false},{352,1,false},{352,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:pumpkin_seeds\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=775,[\"count\"]=4,[\"ingredients\"]={{774,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:purple_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=781,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=421,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:purpur_slab_from_purpur_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=785,[\"count\"]=2,[\"ingredients\"]={{783,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:quartz_pillar\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=789,[\"count\"]=2,[\"ingredients\"]={},[\"grid\"]={[1]=222,[2]=222},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:rail\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=792,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=22,[3]=22,[4]=22,[5]=8,[6]=22,[7]=22,[9]=22},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:raw_iron_block\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=796,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=540,[2]=540,[3]=540,[4]=540,[5]=540,[6]=540,[7]=540,[8]=540,[9]=540},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:red_dye_from_poppy\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=425,[\"count\"]=1,[\"ingredients\"]={{802,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"red_dye\"},[\"special\"]=false},[\"minecraft:red_nether_brick_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=810,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=808,[2]=808,[3]=808,[4]=808,[5]=808,[6]=808},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:red_sandstone_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=813,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=225,[2]=225,[3]=225,[4]=225,[5]=225,[6]=225},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:redstone_from_blasting_deepslate_redstone_ore\"]={[\"kind\"]=\"blasting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Blast\",[\"output\"]=243,[\"count\"]=1,[\"ingredients\"]={{817,1,false}},[\"grid\"]={},[\"metadata\"]={[\"cookingtime\"]=100,[\"experience\"]=0.7,[\"category\"]=\"blocks\",[\"group\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:respawn_anchor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=821,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=822,[2]=822,[3]=822,[4]=483,[5]=483,[6]=483,[7]=822,[8]=822,[9]=822},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:sandstone_wall\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=825,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=228,[2]=228,[3]=228,[4]=228,[5]=228,[6]=228},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:shears\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=831,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=22,[3]=22},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:slime_ball\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=573,[\"count\"]=9,[\"ingredients\"]={{838,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:smooth_quartz_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=844,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=842,[4]=842,[5]=842,[7]=842,[8]=842,[9]=842},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:smooth_sandstone_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=849,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=848,[2]=848,[3]=848},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:snout_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{851,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:spire_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{860,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:spruce_hanging_sign\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=870,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=11,[3]=11,[4]=871,[5]=871,[6]=871,[7]=871,[8]=871,[9]=871},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"hanging_sign\"},[\"special\"]=false},[\"minecraft:spyglass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=880,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[2]=25,[5]=168,[8]=168},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:stone_brick_slab_from_stone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=230,[\"count\"]=2,[\"ingredients\"]={{232,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:stone_bricks_from_stone_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=231,[\"count\"]=1,[\"ingredients\"]={{232,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:stone_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=890,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=232,[4]=232,[5]=232,[7]=232,[8]=232,[9]=232},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:stripped_dark_oak_wood\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=897,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=342,[2]=342,[3]=342,[4]=342},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"bark\"},[\"special\"]=false},[\"minecraft:suspicious_stew\"]={[\"kind\"]=\"crafting_special_suspiciousstew\",[\"mode\"]=\"special\",[\"address\"]=\"Crafter\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=true},[\"minecraft:tnt_minecart\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=908,[\"count\"]=1,[\"ingredients\"]={{907,1,false},{205,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"misc\"},[\"special\"]=false},[\"minecraft:tuff_brick_stairs\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=910,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=238,[4]=238,[5]=238,[7]=238,[8]=238,[9]=238},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:tuff_bricks\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=238,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[1]=237,[2]=237,[3]=237,[4]=237},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:tuff_wall_from_tuff_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=913,[\"count\"]=1,[\"ingredients\"]={{239,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:warped_fence\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=921,[\"count\"]=3,[\"ingredients\"]={},[\"grid\"]={[1]=919,[2]=8,[3]=919,[4]=919,[5]=8,[6]=919},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"wooden_fence\"},[\"special\"]=false},[\"minecraft:warped_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=931,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=919,[2]=919,[3]=919},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"wooden_slab\"},[\"special\"]=false},[\"minecraft:waxed_copper_bulb\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=937,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=284,[4]=284,[5]=116,[6]=284,[8]=243},[\"metadata\"]={[\"category\"]=\"redstone\"},[\"special\"]=false},[\"minecraft:waxed_cut_copper_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=936,[\"count\"]=1,[\"ingredients\"]={{210,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_cut_copper\"},[\"special\"]=false},[\"minecraft:waxed_cut_copper_stairs_from_waxed_copper_block_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=941,[\"count\"]=4,[\"ingredients\"]={{284,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_exposed_copper_door_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=947,[\"count\"]=1,[\"ingredients\"]={{948,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_exposed_copper_door\"},[\"special\"]=false},[\"minecraft:waxed_exposed_cut_copper_from_waxed_exposed_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=945,[\"count\"]=4,[\"ingredients\"]={{944,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_exposed_cut_copper_stairs_from_waxed_exposed_cut_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=952,[\"count\"]=1,[\"ingredients\"]={{945,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:waxed_oxidized_copper_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=955,[\"count\"]=1,[\"ingredients\"]={{720,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_oxidized_copper\"},[\"special\"]=false},[\"minecraft:waxed_oxidized_cut_copper_slab\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=954,[\"count\"]=6,[\"ingredients\"]={},[\"grid\"]={[1]=956,[2]=956,[3]=956},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_oxidized_cut_copper_slab\"},[\"special\"]=false},[\"minecraft:waxed_weathered_chiseled_copper\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=964,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=965,[2]=965},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_weathered_cut_copper_chiseled\"},[\"special\"]=false},[\"minecraft:waxed_weathered_copper_grate\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=974,[\"count\"]=4,[\"ingredients\"]={},[\"grid\"]={[2]=967,[4]=967,[6]=967,[8]=967},[\"metadata\"]={[\"category\"]=\"building\"},[\"special\"]=false},[\"minecraft:waxed_weathered_cut_copper_slab_from_honeycomb\"]={[\"kind\"]=\"crafting_shapeless\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=965,[\"count\"]=1,[\"ingredients\"]={{979,1,false},{69,1,false}},[\"grid\"]={},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"waxed_weathered_cut_copper_slab\"},[\"special\"]=false},[\"minecraft:wayfinder_armor_trim_smithing_template_smithing_trim\"]={[\"kind\"]=\"smithing_trim\",[\"mode\"]=\"crafting\",[\"address\"]=\"Smith\",[\"output\"]=0,[\"count\"]=1,[\"ingredients\"]={{134,1,true},{135,1,true},{982,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=true},[\"minecraft:weathered_cut_copper_from_weathered_copper_stonecutting\"]={[\"kind\"]=\"stonecutting\",[\"mode\"]=\"crafting\",[\"address\"]=\"Stonecut\",[\"output\"]=978,[\"count\"]=4,[\"ingredients\"]={{973,1,false}},[\"grid\"]={},[\"metadata\"]={},[\"special\"]=false},[\"minecraft:white_banner\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=983,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=431,[2]=431,[3]=431,[4]=431,[5]=431,[6]=431,[8]=8},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"banner\"},[\"special\"]=false},[\"minecraft:white_stained_glass\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=989,[\"count\"]=8,[\"ingredients\"]={},[\"grid\"]={[1]=65,[2]=65,[3]=65,[4]=65,[5]=429,[6]=65,[7]=65,[8]=65,[9]=65},[\"metadata\"]={[\"category\"]=\"building\",[\"group\"]=\"stained_glass\"},[\"special\"]=false},[\"minecraft:wolf_armor\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=993,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=994,[4]=994,[5]=994,[6]=994,[7]=994,[9]=994},[\"metadata\"]={[\"category\"]=\"equipment\"},[\"special\"]=false},[\"minecraft:yellow_bed\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=432,[\"count\"]=1,[\"ingredients\"]={},[\"grid\"]={[1]=435,[2]=435,[3]=435,[4]=-62,[5]=-62,[6]=-62},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"bed\"},[\"special\"]=false},[\"minecraft:yellow_stained_glass_pane\"]={[\"kind\"]=\"crafting_shaped\",[\"mode\"]=\"crafting\",[\"address\"]=\"Crafter\",[\"output\"]=1009,[\"count\"]=16,[\"ingredients\"]={},[\"grid\"]={[1]=1008,[2]=1008,[3]=1008,[4]=1008,[5]=1008,[6]=1008},[\"metadata\"]={[\"category\"]=\"misc\",[\"group\"]=\"stained_glass_pane\"},[\"special\"]=false}},[\"counts\"]={}}",
  ["ceetos/recipes/vanilla-tags-1.21.1.lua"] = "return{[\"schema\"]=1,[\"minecraft\"]=\"1.21.1\",[\"tags\"]={[\"minecraft:acacia_logs\"]={\"minecraft:acacia_log\",\"minecraft:acacia_wood\",\"minecraft:stripped_acacia_log\",\"minecraft:stripped_acacia_wood\"},[\"minecraft:bamboo_blocks\"]={\"minecraft:bamboo_block\",\"minecraft:stripped_bamboo_block\"},[\"minecraft:birch_logs\"]={\"minecraft:birch_log\",\"minecraft:birch_wood\",\"minecraft:stripped_birch_log\",\"minecraft:stripped_birch_wood\"},[\"minecraft:cherry_logs\"]={\"minecraft:cherry_log\",\"minecraft:cherry_wood\",\"minecraft:stripped_cherry_log\",\"minecraft:stripped_cherry_wood\"},[\"minecraft:coals\"]={\"minecraft:charcoal\",\"minecraft:coal\"},[\"minecraft:crimson_stems\"]={\"minecraft:crimson_hyphae\",\"minecraft:crimson_stem\",\"minecraft:stripped_crimson_hyphae\",\"minecraft:stripped_crimson_stem\"},[\"minecraft:dark_oak_logs\"]={\"minecraft:dark_oak_log\",\"minecraft:dark_oak_wood\",\"minecraft:stripped_dark_oak_log\",\"minecraft:stripped_dark_oak_wood\"},[\"minecraft:jungle_logs\"]={\"minecraft:jungle_log\",\"minecraft:jungle_wood\",\"minecraft:stripped_jungle_log\",\"minecraft:stripped_jungle_wood\"},[\"minecraft:logs\"]={\"minecraft:acacia_log\",\"minecraft:acacia_wood\",\"minecraft:birch_log\",\"minecraft:birch_wood\",\"minecraft:cherry_log\",\"minecraft:cherry_wood\",\"minecraft:crimson_hyphae\",\"minecraft:crimson_stem\",\"minecraft:dark_oak_log\",\"minecraft:dark_oak_wood\",\"minecraft:jungle_log\",\"minecraft:jungle_wood\",\"minecraft:mangrove_log\",\"minecraft:mangrove_wood\",\"minecraft:oak_log\",\"minecraft:oak_wood\",\"minecraft:spruce_log\",\"minecraft:spruce_wood\",\"minecraft:stripped_acacia_log\",\"minecraft:stripped_acacia_wood\",\"minecraft:stripped_birch_log\",\"minecraft:stripped_birch_wood\",\"minecraft:stripped_cherry_log\",\"minecraft:stripped_cherry_wood\",\"minecraft:stripped_crimson_hyphae\",\"minecraft:stripped_crimson_stem\",\"minecraft:stripped_dark_oak_log\",\"minecraft:stripped_dark_oak_wood\",\"minecraft:stripped_jungle_log\",\"minecraft:stripped_jungle_wood\",\"minecraft:stripped_mangrove_log\",\"minecraft:stripped_mangrove_wood\",\"minecraft:stripped_oak_log\",\"minecraft:stripped_oak_wood\",\"minecraft:stripped_spruce_log\",\"minecraft:stripped_spruce_wood\",\"minecraft:stripped_warped_hyphae\",\"minecraft:stripped_warped_stem\",\"minecraft:warped_hyphae\",\"minecraft:warped_stem\"},[\"minecraft:logs_that_burn\"]={\"minecraft:acacia_log\",\"minecraft:acacia_wood\",\"minecraft:birch_log\",\"minecraft:birch_wood\",\"minecraft:cherry_log\",\"minecraft:cherry_wood\",\"minecraft:dark_oak_log\",\"minecraft:dark_oak_wood\",\"minecraft:jungle_log\",\"minecraft:jungle_wood\",\"minecraft:mangrove_log\",\"minecraft:mangrove_wood\",\"minecraft:oak_log\",\"minecraft:oak_wood\",\"minecraft:spruce_log\",\"minecraft:spruce_wood\",\"minecraft:stripped_acacia_log\",\"minecraft:stripped_acacia_wood\",\"minecraft:stripped_birch_log\",\"minecraft:stripped_birch_wood\",\"minecraft:stripped_cherry_log\",\"minecraft:stripped_cherry_wood\",\"minecraft:stripped_dark_oak_log\",\"minecraft:stripped_dark_oak_wood\",\"minecraft:stripped_jungle_log\",\"minecraft:stripped_jungle_wood\",\"minecraft:stripped_mangrove_log\",\"minecraft:stripped_mangrove_wood\",\"minecraft:stripped_oak_log\",\"minecraft:stripped_oak_wood\",\"minecraft:stripped_spruce_log\",\"minecraft:stripped_spruce_wood\"},[\"minecraft:mangrove_logs\"]={\"minecraft:mangrove_log\",\"minecraft:mangrove_wood\",\"minecraft:stripped_mangrove_log\",\"minecraft:stripped_mangrove_wood\"},[\"minecraft:oak_logs\"]={\"minecraft:oak_log\",\"minecraft:oak_wood\",\"minecraft:stripped_oak_log\",\"minecraft:stripped_oak_wood\"},[\"minecraft:planks\"]={\"minecraft:acacia_planks\",\"minecraft:bamboo_planks\",\"minecraft:birch_planks\",\"minecraft:cherry_planks\",\"minecraft:crimson_planks\",\"minecraft:dark_oak_planks\",\"minecraft:jungle_planks\",\"minecraft:mangrove_planks\",\"minecraft:oak_planks\",\"minecraft:spruce_planks\",\"minecraft:warped_planks\"},[\"minecraft:smelts_to_glass\"]={\"minecraft:red_sand\",\"minecraft:sand\"},[\"minecraft:soul_fire_base_blocks\"]={\"minecraft:soul_sand\",\"minecraft:soul_soil\"},[\"minecraft:spruce_logs\"]={\"minecraft:spruce_log\",\"minecraft:spruce_wood\",\"minecraft:stripped_spruce_log\",\"minecraft:stripped_spruce_wood\"},[\"minecraft:stone_crafting_materials\"]={\"minecraft:blackstone\",\"minecraft:cobbled_deepslate\",\"minecraft:cobblestone\"},[\"minecraft:stone_tool_materials\"]={\"minecraft:blackstone\",\"minecraft:cobbled_deepslate\",\"minecraft:cobblestone\"},[\"minecraft:trim_materials\"]={\"minecraft:amethyst_shard\",\"minecraft:copper_ingot\",\"minecraft:diamond\",\"minecraft:emerald\",\"minecraft:gold_ingot\",\"minecraft:iron_ingot\",\"minecraft:lapis_lazuli\",\"minecraft:netherite_ingot\",\"minecraft:quartz\",\"minecraft:redstone\"},[\"minecraft:trimmable_armor\"]={\"minecraft:chainmail_boots\",\"minecraft:chainmail_chestplate\",\"minecraft:chainmail_helmet\",\"minecraft:chainmail_leggings\",\"minecraft:diamond_boots\",\"minecraft:diamond_chestplate\",\"minecraft:diamond_helmet\",\"minecraft:diamond_leggings\",\"minecraft:golden_boots\",\"minecraft:golden_chestplate\",\"minecraft:golden_helmet\",\"minecraft:golden_leggings\",\"minecraft:iron_boots\",\"minecraft:iron_chestplate\",\"minecraft:iron_helmet\",\"minecraft:iron_leggings\",\"minecraft:leather_boots\",\"minecraft:leather_chestplate\",\"minecraft:leather_helmet\",\"minecraft:leather_leggings\",\"minecraft:netherite_boots\",\"minecraft:netherite_chestplate\",\"minecraft:netherite_helmet\",\"minecraft:netherite_leggings\",\"minecraft:turtle_helmet\"},[\"minecraft:warped_stems\"]={\"minecraft:stripped_warped_hyphae\",\"minecraft:stripped_warped_stem\",\"minecraft:warped_hyphae\",\"minecraft:warped_stem\"},[\"minecraft:wooden_slabs\"]={\"minecraft:acacia_slab\",\"minecraft:bamboo_slab\",\"minecraft:birch_slab\",\"minecraft:cherry_slab\",\"minecraft:crimson_slab\",\"minecraft:dark_oak_slab\",\"minecraft:jungle_slab\",\"minecraft:mangrove_slab\",\"minecraft:oak_slab\",\"minecraft:spruce_slab\",\"minecraft:warped_slab\"},[\"minecraft:wool\"]={\"minecraft:black_wool\",\"minecraft:blue_wool\",\"minecraft:brown_wool\",\"minecraft:cyan_wool\",\"minecraft:gray_wool\",\"minecraft:green_wool\",\"minecraft:light_blue_wool\",\"minecraft:light_gray_wool\",\"minecraft:lime_wool\",\"minecraft:magenta_wool\",\"minecraft:orange_wool\",\"minecraft:pink_wool\",\"minecraft:purple_wool\",\"minecraft:red_wool\",\"minecraft:white_wool\",\"minecraft:yellow_wool\"}}}",
  ["ceetos/server.lua"] = "package.path=\"/?.lua;/?/init.lua;\"..package.path local profile=require(\"ceetos.lib.profile\")local auth=require(\"ceetos.lib.auth\")local net=require(\"ceetos.lib.net\")local audit=require(\"ceetos.lib.audit\")local updater=require(\"ceetos.lib.updater\")local networkIpc=require(\"ceetos.lib.network_ipc\")local version=require(\"ceetos.lib.version\")local recipe=profile.is(\"recipe-server\")and require((\"ceetos.lib.recipe_service\"))or nil local authority=profile.is(\"auth-server\")and require((\"ceetos.lib.auth_authority\"))or nil local authClient=require(\"ceetos.lib.auth_client\")local cloudSync=require(\"ceetos.lib.cloud_sync\")local function replyIpc(command,ok,result)networkIpc.reply(command.id,{id=command.id,ok=ok==true,result=ok and result or nil,error=ok and nil or tostring(result)})end local function command()local request=networkIpc.take()if not request then return end local ok,result=pcall(function()if request.action==\"server_status\"then return{profile=profile.id(),version=version.string,network=net.statusSnapshot(),authority=authority and authority.status()or auth.authority(),recipes=recipe and recipe.status()or nil}elseif request.action==\"server_discovery_start\"then auth.require(\"admin\");return net.startDiscovery(request.mode or\"peer\",request.master or\"initiator\",request.phrase)elseif request.action==\"server_discovery_join\"then auth.require(\"admin\");return net.joinDiscovery(request.phrase)elseif request.action==\"server_discovery_confirm\"then auth.require(\"admin\");return net.confirmDiscovery()elseif request.action==\"server_update_status\"then return updater.status()elseif request.action==\"server_update_apply\"then auth.require(\"admin\");return updater.prepareApply()elseif request.action==\"auth_send\"then local sent,err=net.request(request.target,request.type,request.body or{},{safe=true,confidential=true})if not sent then error(err or\"could not contact Auth Server\")end return true end error(\"unknown protected server command\")end)replyIpc(request,ok and result~=false,ok and result or result)end net.handler=function(from,peer,packet)if packet.type==\"update_query\"or packet.type==\"update_offer\"or packet.type==\"update_chunk_request\"or packet.type==\"update_chunk\"then return updater.authenticatedPacket(from,peer,packet)end if packet.type==\"profile_query\"then return net.reply(packet,\"profile_status\",{profile=profile.id(),version=version.string},{safe=true})end if packet.type==\"recipe_plan_request\"and recipe then return recipe.handle(packet,net)end if packet.type==\"auth_login_begin_result\"or packet.type==\"auth_login_proof_result\"or packet.type==\"auth_mutate_result\"then return authClient.receive(packet.body)end if packet.type==\"auth_seed_request\"then return net.reply(packet,\"auth_seed\",{snapshot=auth.authoritySnapshot(),request_id=packet.body and packet.body.request_id},{safe=true,confidential=true})end if packet.type==\"auth_authority\"then return auth.acceptAuthority(packet.body)end if authority then return authority.handle(from,peer,packet,net)end end net.publicHandler=function(packet,distance)return updater.publicPacket(packet,distance)end local function service()net.start()if authority then authority.start()end local tick,update,cloud,advertised=os.startTimer(1),os.startTimer(1),os.startTimer(5),0 while true do local event={os.pullEventRaw()}local ok,err=pcall(net.handle,event)if not ok then audit.log(\"server\",\"network.error\",{error=tostring(err):sub(1,120)})end pcall(command)if event[1]==\"timer\"and event[2]==tick then pcall(net.tick);if authority then pcall(authority.tick,net)end if os.epoch(\"utc\")-advertised>=30000 then for _,peer in ipairs(net.peers())do net.request(peer.id,\"profile_status\",{profile=profile.id(),version=version.string},{safe=true})end advertised=os.epoch(\"utc\")end tick=os.startTimer(1)end if event[1]==\"timer\"and event[2]==update then pcall(updater.tick);update=os.startTimer(1)end if event[1]==\"timer\"and event[2]==cloud then pcall(cloudSync.tick,\"server\");cloud=os.startTimer(5)end end end local function console()shell.run(\"/ceetos/bin/ceetserver.lua\")while true do sleep(1);shell.run(\"/ceetos/bin/ceetserver.lua\")end end local function devBridge()local path=\"/ceetos-dev/connection.lua\"while true do if fs.exists(\"/ceetos/bin/ceetdev.lua\")and fs.exists(path)then local handle=fs.open(path,\"r\")local cfg=handle and textutils.unserialise(handle.readAll())or nil if handle then handle.close()end if type(cfg)==\"table\"and type(cfg.url)==\"string\"then local token=type(cfg.token)==\"string\"and cfg.token or\"\"if token~=\"\"then pcall(shell.run,\"/ceetos/bin/ceetdev.lua\",cfg.url,token)else pcall(shell.run,\"/ceetos/bin/ceetdev.lua\",cfg.url)end sleep(3)else sleep(5)end else sleep(5)end end end parallel.waitForAny(service,console,devBridge)",
  ["ceetos/bin/ceetserver.lua"] = "package.path=\"/?.lua;/?/init.lua;\"..package.path local profile=require(\"ceetos.lib.profile\")local auth=require(\"ceetos.lib.auth\")local version=require(\"ceetos.lib.version\")local store=require(\"ceetos.lib.store\")local recipe=profile.is(\"recipe-server\")and require((\"ceetos.lib.recipe_service\"))or nil local function draw(message)term.setBackgroundColor(colors.black);term.setTextColor(colors.white);term.clear();term.setCursorPos(1,1)term.setBackgroundColor(colors.blue);term.clearLine();term.setCursorPos(2,1);term.write(\"CeetOS \"..profile.id()..\" server\")term.setBackgroundColor(colors.black);term.setCursorPos(2,3);term.write(\"Version: \"..version.string)local authority=auth.authority()term.setCursorPos(2,4);term.write(authority and(\"Auth authority: \"..authority.id)or\"Auth authority: distributed / waiting\")local current=auth.refreshSession()term.setCursorPos(2,6);term.write(current and(\"Signed in: \"..current.name..\" (\"..current.role..\")\")or\"Not signed in\")term.setTextColor(colors.lightGray);term.setCursorPos(2,8)if not current then term.write(\"L Login  |  E first-time enrolment  |  Backspace refresh\")elseif current.role==\"admin\"then local actions=recipe and\"I import pack  |  P pair  |  U updates\"or\"P pair  |  U updates\"term.write(actions..\"  |  L logout  |  Backspace refresh\")else term.write(\"L logout  |  Backspace refresh\")end if message then term.setTextColor(colors.red);term.setCursorPos(2,10);term.write(tostring(message):sub(1,48))end end local function login()term.setCursorPos(2,12);term.setTextColor(colors.white);term.write(\"Username: \");local user=read()term.setCursorPos(2,13);term.write(\"Password: \");local pass=read(\"*\")local ok,err=auth.login(user,pass);return ok and\"Logged in.\"or err end local function enrol()if#auth.list()>0 or auth.centralActive()then return\"Enrollment is already complete.\"end term.setCursorPos(2,12);term.setTextColor(colors.white);term.write(\"Create local admin password: \")local pass=read(\"*\")if type(pass)~=\"string\"or#pass<8 then return\"Enrollment password must contain at least 8 characters.\"end local ok,err=pcall(auth.bootstrap,pass)return ok and\"Enrollment complete.\"or err end local function importRecipePack(event)if not recipe then return\"This server has no recipe service.\"end if not auth.allowed(\"admin\")then return\"Recipe import requires an admin session.\"end local files=event and event.getFiles and event.getFiles()or nil if type(files)~=\"table\"or#files~=1 or type(files[1].read)~=\"function\"then return\"Drop exactly one data-only recipe pack.\"end local chunks,total={},0 while true do local part=files[1].read(4096)if not part then break end if type(part)~=\"string\"then return\"Dropped recipe pack has invalid data.\"end total=total+#part if total>64*1024 then return\"Recipe pack exceeds 64 KiB.\"end chunks[#chunks+1]=part end local ok,result=recipe.import(table.concat(chunks))if not ok then return tostring(result)end return\"Imported \"..tostring(result.imported or 0)..\" new recipes; conflicts kept.\"end local message while true do draw(message);message=nil local event,code=os.pullEventRaw()if event==\"key\"then local key=keys.getName(code)if key==\"l\"then if auth.refreshSession()then auth.logout();message=\"Logged out.\"else message=login()end elseif key==\"e\"then message=enrol()elseif key==\"backspace\"then elseif key==\"p\"and auth.allowed(\"admin\")then message=\"Use the Peers page on a desktop to pair; server pairing IPC is available to administrators.\"elseif key==\"u\"and auth.allowed(\"admin\")then message=\"Signed updates are managed locally; no remote apply is permitted.\"elseif key==\"i\"and recipe and auth.allowed(\"admin\")then message=\"Drop one recipe pack into this console.\"end elseif event==\"file_transfer\"then message=importRecipePack(code)end end",
  ["ceetos/lib/recipe_service.lua"] = "local store=require(\"ceetos.lib.store\")local crafting=require(\"ceetos.lib.crafting\")local recipeDb=require(\"ceetos.lib.recipe_db\")local M={}local OVERLAY=\"/ceetos/data/recipes.lua\"local function effective()local base,databaseOrErr=recipeDb.loadBase()if not base then return nil,nil,databaseOrErr end local overlay={recipes={},tags={}}if fs.exists(OVERLAY)then local handle=fs.open(OVERLAY,\"r\");local raw=handle and handle.readAll()or\"\";if handle then handle.close()end local parsed,err=crafting.parseRecipeOverlay(raw)if not parsed then return nil,nil,err end overlay=parsed end return recipeDb.mergeOverlay(base,overlay.recipes),recipeDb.mergeTags(databaseOrErr.tags,overlay.tags),nil,overlay end function M.status()local recipes,_,err,overlay=effective()local count=0;for _ in pairs(recipes or{})do count=count+1 end return{available=recipes~=nil,recipes=count,overlay=overlay and(function()local n=0;for _ in pairs(overlay.recipes or{})do n=n+1 end;return n end)()or 0,error=err}end function M.plan(item,quantity,stock)if type(item)~=\"string\"or#item>128 or tonumber(quantity)==nil or quantity<1 or quantity>256 then return nil,\"invalid recipe plan request\"end local count=0 for _,row in pairs(type(stock)==\"table\"and stock or{})do count=count+1 if count>512 or type(row)~=\"table\"or type(row.name or row.id)~=\"string\"then return nil,\"invalid stock snapshot\"end end local recipes,tags,err=effective()if not recipes then return nil,err end local plan,planErr=crafting.plan(recipes,stock,item,math.floor(quantity),{forceRoot=true,tags=tags})if not plan or#plan>96 then return nil,planErr or\"recipe plan exceeds limit\"end local encoded=textutils.serialise(plan,{compact=true})if#encoded>12*1024 then return nil,\"recipe plan exceeds reply limit\"end return plan end function M.handle(packet,net)if packet.type~=\"recipe_plan_request\"then return false end local body=type(packet.body)==\"table\"and packet.body or{}local plan,err=M.plan(body.item,body.quantity,body.stock)net.reply(packet,\"recipe_plan_result\",{request_id=body.request_id,ok=plan~=nil,result=plan or err},{safe=true})return true end function M.import(raw)if type(raw)~=\"string\"or#raw>crafting.RECIPE_PACK_MAX_BYTES then return false,\"recipe pack is too large\"end local pack,err=crafting.parseRecipePack(raw)if not pack then return false,err end local valid,validateErr=crafting.validateRecipes(pack.recipes)if not valid then return false,validateErr end local effectiveRecipes,_,loadErr,overlay=effective()if loadErr then return false,loadErr end local review,reviewErr=crafting.reviewRecipePack(effectiveRecipes,pack.recipes)if not review then return false,reviewErr end local merged,importedOrErr,tags=crafting.mergeRecipePack(overlay.recipes,review,overlay.tags,pack.tags)if not merged then return false,importedOrErr end local saved,saveErr=crafting.writeRecipeFile(OVERLAY,merged,tags)if not saved then return false,saveErr end return true,{imported=importedOrErr,counts=review.counts}end function M.exportOverlay()local raw=\"return { recipes = {}, tags = {} }\"if fs.exists(OVERLAY)then local handle=fs.open(OVERLAY,\"r\")raw=handle and handle.readAll()or raw if handle then handle.close()end end local overlay,err=crafting.parseRecipeOverlay(raw)if not overlay then return nil,err end return{schema=1,recipes=overlay.recipes or{},tags=overlay.tags or{}}end function M.replaceOverlay(overlay)if type(overlay)~=\"table\"or type(overlay.recipes)~=\"table\"or type(overlay.tags)~=\"table\"then return false,\"invalid cloud recipe overlay\"end local valid,validationErr=crafting.validateRecipes(overlay.recipes)if not valid then return false,validationErr end local tags=recipeDb.mergeTags({},overlay.tags)local graphOk,graphErr=crafting.validateRecipeGraph(overlay.recipes,tags)if not graphOk then return false,graphErr end return crafting.writeRecipeFile(OVERLAY,overlay.recipes,tags)end return M",
}
local CEETOS_RELEASE_INSTALLER = true
local CEETOS_PROFILE = "recipe-server"

-- `wget --install` may run inside a deliberately restricted CeetShell child
-- environment. Self-cleaning is optional there: never require the shell API
-- merely to install the runtime.
local args = { ... }
local automated = args[1] == "--ceetos-apply"
local self = shell and shell.getRunningProgram and shell.getRunningProgram()
local cache = "/ceetos-updates/release.lua"
-- A signed release launched directly is retained outside the replaceable
-- runtime tree for verified recovery. Development installers deliberately do
-- not become propagation sources. Do this before removing the downloaded
-- program itself, but avoid copying the cache onto itself during recovery.
if CEETOS_RELEASE_INSTALLER and not automated and self and fs.exists(self) and self ~= cache then
  if not fs.exists("/ceetos-updates") then fs.makeDir("/ceetos-updates") end
  if fs.exists(cache) then fs.delete(cache) end
  pcall(fs.copy, self, cache)
end
if self and self ~= cache and fs.exists(self) then pcall(fs.delete, self) end

local bytes = 0
for _, contents in pairs(files) do bytes = bytes + #contents end
print("CeetOS " .. CEETOS_PROFILE .. " installer (" .. bytes .. " bytes)")
if not automated then
  print("This will replace /ceetos and /startup.lua. Continue? [y/N]")
  if read():lower() ~= "y" then print("Cancelled."); return end
end

local backup, migrate, migrationData = nil, false, {}
-- Clean stale full-tree backups from older installers before measuring space.
for _, name in ipairs(fs.list(".")) do
  if name:match("^ceetos%.backup") or name == "ceetos-migrate" then fs.delete(name) end
end
-- Development transactions can be much larger than the runtime. Preserve
-- only the reconnect record; staged payloads, test data, and rollback trees
-- are disposable and must not prevent an install from starting.
for _, name in ipairs({ "staging", "backups", "test-data" }) do
  local path = fs.combine("ceetos-dev", name)
  if fs.exists(path) then fs.delete(path) end
end
if fs.exists("ceetos") then
  if automated then migrate = true else
    print("Migrate saved CeetOS configuration? [Y/n]")
    local choice = read():lower()
    migrate = choice ~= "n" and choice ~= "no"
  end
  -- Copy only durable configuration to a small migration area, then remove
  -- the old tree before writing the new one. This works on nearly-full CC
  -- drives where retaining a complete backup would make installation fail.
  if migrate then
    local durable = { "users.lua", "network.lua", "shares.lua", "config.lua", "owner-service.lua", "seen-peers.lua", "jobs.lua", "job-workers.lua", "crafting-state.lua", "auth-authority.lua", "auth-authority-state.lua", "auth-directory.lua", "auth-session.lua", "cloud.lua", "cloud-state.lua" }
    if CEETOS_PROFILE == "recipe-server" then durable[#durable + 1] = "recipes.lua" end
    for _, name in ipairs(durable) do
      local source = fs.combine("ceetos/data", name)
      if fs.exists(source) then
        local input = fs.open(source, "r")
        if input then migrationData[name] = input.readAll(); input.close() end
      end
    end
  end
  fs.delete("ceetos")
end

for path, contents in pairs(files) do
  local parent = fs.getDir(path)
  if parent ~= "" and not fs.exists(parent) then fs.makeDir(parent) end
  local handle = assert(fs.open(path, "w"))
  handle.write(contents)
  handle.close()
end

if migrate then
  -- Preserve durable configuration, but never preserve an active session,
  -- temporary recovery window, remote result cache, or stale audit entries.
  local durable = { "users.lua", "network.lua", "shares.lua", "config.lua", "owner-service.lua", "seen-peers.lua", "jobs.lua", "job-workers.lua", "crafting-state.lua", "auth-authority.lua", "auth-authority-state.lua", "auth-directory.lua", "auth-session.lua", "cloud.lua", "cloud-state.lua" }
  if CEETOS_PROFILE == "recipe-server" then durable[#durable + 1] = "recipes.lua" end
  for _, name in ipairs(durable) do
    local contents = migrationData[name]
    if contents then
      if not fs.exists("ceetos/data") then fs.makeDir("ceetos/data") end
      local output = assert(fs.open(fs.combine("ceetos/data", name), "w"))
      output.write(contents); output.close()
    end
  end
  print("Saved CeetOS configuration migrated. Please log in again.")
end

-- The installer is intentionally transactional while it runs, but retaining
-- a full tree backup after a successful install quickly exhausts small CC
-- drives. Durable data has already been copied, so remove the old tree.
if automated then
  -- The root startup launcher sees this marker and boots the freshly written
  -- runtime rather than replaying the installer. The runtime verifies its
  -- loaded version before clearing it.
  if not fs.exists("/ceetos-updates") then fs.makeDir("/ceetos-updates") end
  local marker = fs.open("/ceetos-updates/pending.lua", "w")
  if marker then marker.write("return {state='verify',version=" .. "0.16.2" .. ",profile=" .. "\"recipe-server\"" .. "}"); marker.close() end
  print("CeetOS installed. Rebooting to verify the update.")
  os.reboot()
end
print("CeetOS installed. Reboot to start it.")

-- CEETOS_RELEASE_PAYLOAD_END
