aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKimplul <kimi.h.kuparinen@gmail.com>2023-06-24 20:48:32 +0300
committerKimplul <kimi.h.kuparinen@gmail.com>2023-06-24 22:10:50 +0300
commit422b6c976e28445d2a6e14586fa416b0f16c093f (patch)
treea6bf3364cec45ed0c5d48e346a76a98fe9d0094a
downloadcopyjit-422b6c976e28445d2a6e14586fa416b0f16c093f.tar.gz
copyjit-422b6c976e28445d2a6e14586fa416b0f16c093f.zip
initial commit
-rw-r--r--.gitignore11
-rw-r--r--Makefile76
-rw-r--r--README.md20
-rw-r--r--docs/doxygen-kmi.css2137
-rw-r--r--docs/doxygen.conf2738
-rw-r--r--lib/decls.h1300
-rw-r--r--lib/defns.h9082
-rw-r--r--lib/empty.c6
-rw-r--r--lib/gen/.gitkeep0
-rwxr-xr-xlib/gen_lib30
-rw-r--r--lib/ops.h5180
-rw-r--r--lib/prune.c82
-rw-r--r--lib/source.mk14
-rw-r--r--ops/add.c7
-rw-r--r--ops/addao.c6
-rw-r--r--ops/addi/addi0.c4
-rw-r--r--ops/addi/addi1.c4
-rw-r--r--ops/addi/addi10.c4
-rw-r--r--ops/addi/addi100.c4
-rw-r--r--ops/addi/addi101.c4
-rw-r--r--ops/addi/addi102.c4
-rw-r--r--ops/addi/addi103.c4
-rw-r--r--ops/addi/addi104.c4
-rw-r--r--ops/addi/addi105.c4
-rw-r--r--ops/addi/addi106.c4
-rw-r--r--ops/addi/addi107.c4
-rw-r--r--ops/addi/addi108.c4
-rw-r--r--ops/addi/addi109.c4
-rw-r--r--ops/addi/addi11.c4
-rw-r--r--ops/addi/addi110.c4
-rw-r--r--ops/addi/addi111.c4
-rw-r--r--ops/addi/addi112.c4
-rw-r--r--ops/addi/addi113.c4
-rw-r--r--ops/addi/addi114.c4
-rw-r--r--ops/addi/addi115.c4
-rw-r--r--ops/addi/addi116.c4
-rw-r--r--ops/addi/addi117.c4
-rw-r--r--ops/addi/addi118.c4
-rw-r--r--ops/addi/addi119.c4
-rw-r--r--ops/addi/addi12.c4
-rw-r--r--ops/addi/addi120.c4
-rw-r--r--ops/addi/addi121.c4
-rw-r--r--ops/addi/addi122.c4
-rw-r--r--ops/addi/addi123.c4
-rw-r--r--ops/addi/addi124.c4
-rw-r--r--ops/addi/addi125.c4
-rw-r--r--ops/addi/addi126.c4
-rw-r--r--ops/addi/addi127.c4
-rw-r--r--ops/addi/addi128.c4
-rw-r--r--ops/addi/addi129.c4
-rw-r--r--ops/addi/addi13.c4
-rw-r--r--ops/addi/addi130.c4
-rw-r--r--ops/addi/addi131.c4
-rw-r--r--ops/addi/addi132.c4
-rw-r--r--ops/addi/addi133.c4
-rw-r--r--ops/addi/addi134.c4
-rw-r--r--ops/addi/addi135.c4
-rw-r--r--ops/addi/addi136.c4
-rw-r--r--ops/addi/addi137.c4
-rw-r--r--ops/addi/addi138.c4
-rw-r--r--ops/addi/addi139.c4
-rw-r--r--ops/addi/addi14.c4
-rw-r--r--ops/addi/addi140.c4
-rw-r--r--ops/addi/addi141.c4
-rw-r--r--ops/addi/addi142.c4
-rw-r--r--ops/addi/addi143.c4
-rw-r--r--ops/addi/addi144.c4
-rw-r--r--ops/addi/addi145.c4
-rw-r--r--ops/addi/addi146.c4
-rw-r--r--ops/addi/addi147.c4
-rw-r--r--ops/addi/addi148.c4
-rw-r--r--ops/addi/addi149.c4
-rw-r--r--ops/addi/addi15.c4
-rw-r--r--ops/addi/addi150.c4
-rw-r--r--ops/addi/addi151.c4
-rw-r--r--ops/addi/addi152.c4
-rw-r--r--ops/addi/addi153.c4
-rw-r--r--ops/addi/addi154.c4
-rw-r--r--ops/addi/addi155.c4
-rw-r--r--ops/addi/addi156.c4
-rw-r--r--ops/addi/addi157.c4
-rw-r--r--ops/addi/addi158.c4
-rw-r--r--ops/addi/addi159.c4
-rw-r--r--ops/addi/addi16.c4
-rw-r--r--ops/addi/addi160.c4
-rw-r--r--ops/addi/addi161.c4
-rw-r--r--ops/addi/addi162.c4
-rw-r--r--ops/addi/addi163.c4
-rw-r--r--ops/addi/addi164.c4
-rw-r--r--ops/addi/addi165.c4
-rw-r--r--ops/addi/addi166.c4
-rw-r--r--ops/addi/addi167.c4
-rw-r--r--ops/addi/addi168.c4
-rw-r--r--ops/addi/addi169.c4
-rw-r--r--ops/addi/addi17.c4
-rw-r--r--ops/addi/addi170.c4
-rw-r--r--ops/addi/addi171.c4
-rw-r--r--ops/addi/addi172.c4
-rw-r--r--ops/addi/addi173.c4
-rw-r--r--ops/addi/addi174.c4
-rw-r--r--ops/addi/addi175.c4
-rw-r--r--ops/addi/addi176.c4
-rw-r--r--ops/addi/addi177.c4
-rw-r--r--ops/addi/addi178.c4
-rw-r--r--ops/addi/addi179.c4
-rw-r--r--ops/addi/addi18.c4
-rw-r--r--ops/addi/addi180.c4
-rw-r--r--ops/addi/addi181.c4
-rw-r--r--ops/addi/addi182.c4
-rw-r--r--ops/addi/addi183.c4
-rw-r--r--ops/addi/addi184.c4
-rw-r--r--ops/addi/addi185.c4
-rw-r--r--ops/addi/addi186.c4
-rw-r--r--ops/addi/addi187.c4
-rw-r--r--ops/addi/addi188.c4
-rw-r--r--ops/addi/addi189.c4
-rw-r--r--ops/addi/addi19.c4
-rw-r--r--ops/addi/addi190.c4
-rw-r--r--ops/addi/addi191.c4
-rw-r--r--ops/addi/addi192.c4
-rw-r--r--ops/addi/addi193.c4
-rw-r--r--ops/addi/addi194.c4
-rw-r--r--ops/addi/addi195.c4
-rw-r--r--ops/addi/addi196.c4
-rw-r--r--ops/addi/addi197.c4
-rw-r--r--ops/addi/addi198.c4
-rw-r--r--ops/addi/addi199.c4
-rw-r--r--ops/addi/addi2.c4
-rw-r--r--ops/addi/addi20.c4
-rw-r--r--ops/addi/addi200.c4
-rw-r--r--ops/addi/addi201.c4
-rw-r--r--ops/addi/addi202.c4
-rw-r--r--ops/addi/addi203.c4
-rw-r--r--ops/addi/addi204.c4
-rw-r--r--ops/addi/addi205.c4
-rw-r--r--ops/addi/addi206.c4
-rw-r--r--ops/addi/addi207.c4
-rw-r--r--ops/addi/addi208.c4
-rw-r--r--ops/addi/addi209.c4
-rw-r--r--ops/addi/addi21.c4
-rw-r--r--ops/addi/addi210.c4
-rw-r--r--ops/addi/addi211.c4
-rw-r--r--ops/addi/addi212.c4
-rw-r--r--ops/addi/addi213.c4
-rw-r--r--ops/addi/addi214.c4
-rw-r--r--ops/addi/addi215.c4
-rw-r--r--ops/addi/addi216.c4
-rw-r--r--ops/addi/addi217.c4
-rw-r--r--ops/addi/addi218.c4
-rw-r--r--ops/addi/addi219.c4
-rw-r--r--ops/addi/addi22.c4
-rw-r--r--ops/addi/addi220.c4
-rw-r--r--ops/addi/addi221.c4
-rw-r--r--ops/addi/addi222.c4
-rw-r--r--ops/addi/addi223.c4
-rw-r--r--ops/addi/addi224.c4
-rw-r--r--ops/addi/addi225.c4
-rw-r--r--ops/addi/addi226.c4
-rw-r--r--ops/addi/addi227.c4
-rw-r--r--ops/addi/addi228.c4
-rw-r--r--ops/addi/addi229.c4
-rw-r--r--ops/addi/addi23.c4
-rw-r--r--ops/addi/addi230.c4
-rw-r--r--ops/addi/addi231.c4
-rw-r--r--ops/addi/addi232.c4
-rw-r--r--ops/addi/addi233.c4
-rw-r--r--ops/addi/addi234.c4
-rw-r--r--ops/addi/addi235.c4
-rw-r--r--ops/addi/addi236.c4
-rw-r--r--ops/addi/addi237.c4
-rw-r--r--ops/addi/addi238.c4
-rw-r--r--ops/addi/addi239.c4
-rw-r--r--ops/addi/addi24.c4
-rw-r--r--ops/addi/addi240.c4
-rw-r--r--ops/addi/addi241.c4
-rw-r--r--ops/addi/addi242.c4
-rw-r--r--ops/addi/addi243.c4
-rw-r--r--ops/addi/addi244.c4
-rw-r--r--ops/addi/addi245.c4
-rw-r--r--ops/addi/addi246.c4
-rw-r--r--ops/addi/addi247.c4
-rw-r--r--ops/addi/addi248.c4
-rw-r--r--ops/addi/addi249.c4
-rw-r--r--ops/addi/addi25.c4
-rw-r--r--ops/addi/addi250.c4
-rw-r--r--ops/addi/addi251.c4
-rw-r--r--ops/addi/addi252.c4
-rw-r--r--ops/addi/addi253.c4
-rw-r--r--ops/addi/addi254.c4
-rw-r--r--ops/addi/addi255.c4
-rw-r--r--ops/addi/addi26.c4
-rw-r--r--ops/addi/addi27.c4
-rw-r--r--ops/addi/addi28.c4
-rw-r--r--ops/addi/addi29.c4
-rw-r--r--ops/addi/addi3.c4
-rw-r--r--ops/addi/addi30.c4
-rw-r--r--ops/addi/addi31.c4
-rw-r--r--ops/addi/addi32.c4
-rw-r--r--ops/addi/addi33.c4
-rw-r--r--ops/addi/addi34.c4
-rw-r--r--ops/addi/addi35.c4
-rw-r--r--ops/addi/addi36.c4
-rw-r--r--ops/addi/addi37.c4
-rw-r--r--ops/addi/addi38.c4
-rw-r--r--ops/addi/addi39.c4
-rw-r--r--ops/addi/addi4.c4
-rw-r--r--ops/addi/addi40.c4
-rw-r--r--ops/addi/addi41.c4
-rw-r--r--ops/addi/addi42.c4
-rw-r--r--ops/addi/addi43.c4
-rw-r--r--ops/addi/addi44.c4
-rw-r--r--ops/addi/addi45.c4
-rw-r--r--ops/addi/addi46.c4
-rw-r--r--ops/addi/addi47.c4
-rw-r--r--ops/addi/addi48.c4
-rw-r--r--ops/addi/addi49.c4
-rw-r--r--ops/addi/addi5.c4
-rw-r--r--ops/addi/addi50.c4
-rw-r--r--ops/addi/addi51.c4
-rw-r--r--ops/addi/addi52.c4
-rw-r--r--ops/addi/addi53.c4
-rw-r--r--ops/addi/addi54.c4
-rw-r--r--ops/addi/addi55.c4
-rw-r--r--ops/addi/addi56.c4
-rw-r--r--ops/addi/addi57.c4
-rw-r--r--ops/addi/addi58.c4
-rw-r--r--ops/addi/addi59.c4
-rw-r--r--ops/addi/addi6.c4
-rw-r--r--ops/addi/addi60.c4
-rw-r--r--ops/addi/addi61.c4
-rw-r--r--ops/addi/addi62.c4
-rw-r--r--ops/addi/addi63.c4
-rw-r--r--ops/addi/addi64.c4
-rw-r--r--ops/addi/addi65.c4
-rw-r--r--ops/addi/addi66.c4
-rw-r--r--ops/addi/addi67.c4
-rw-r--r--ops/addi/addi68.c4
-rw-r--r--ops/addi/addi69.c4
-rw-r--r--ops/addi/addi7.c4
-rw-r--r--ops/addi/addi70.c4
-rw-r--r--ops/addi/addi71.c4
-rw-r--r--ops/addi/addi72.c4
-rw-r--r--ops/addi/addi73.c4
-rw-r--r--ops/addi/addi74.c4
-rw-r--r--ops/addi/addi75.c4
-rw-r--r--ops/addi/addi76.c4
-rw-r--r--ops/addi/addi77.c4
-rw-r--r--ops/addi/addi78.c4
-rw-r--r--ops/addi/addi79.c4
-rw-r--r--ops/addi/addi8.c4
-rw-r--r--ops/addi/addi80.c4
-rw-r--r--ops/addi/addi81.c4
-rw-r--r--ops/addi/addi82.c4
-rw-r--r--ops/addi/addi83.c4
-rw-r--r--ops/addi/addi84.c4
-rw-r--r--ops/addi/addi85.c4
-rw-r--r--ops/addi/addi86.c4
-rw-r--r--ops/addi/addi87.c4
-rw-r--r--ops/addi/addi88.c4
-rw-r--r--ops/addi/addi89.c4
-rw-r--r--ops/addi/addi9.c4
-rw-r--r--ops/addi/addi90.c4
-rw-r--r--ops/addi/addi91.c4
-rw-r--r--ops/addi/addi92.c4
-rw-r--r--ops/addi/addi93.c4
-rw-r--r--ops/addi/addi94.c4
-rw-r--r--ops/addi/addi95.c4
-rw-r--r--ops/addi/addi96.c4
-rw-r--r--ops/addi/addi97.c4
-rw-r--r--ops/addi/addi98.c4
-rw-r--r--ops/addi/addi99.c4
-rwxr-xr-xops/addi/gen_addi.sh7
-rw-r--r--ops/addi/source.mk2
-rw-r--r--ops/addxo.c6
-rw-r--r--ops/addyo.c6
-rw-r--r--ops/ban.c6
-rw-r--r--ops/baz.c11
-rw-r--r--ops/bs/bsa0.c4
-rw-r--r--ops/bs/bsa1.c4
-rw-r--r--ops/bs/bsa10.c4
-rw-r--r--ops/bs/bsa11.c4
-rw-r--r--ops/bs/bsa12.c4
-rw-r--r--ops/bs/bsa13.c4
-rw-r--r--ops/bs/bsa14.c4
-rw-r--r--ops/bs/bsa15.c4
-rw-r--r--ops/bs/bsa16.c4
-rw-r--r--ops/bs/bsa17.c4
-rw-r--r--ops/bs/bsa18.c4
-rw-r--r--ops/bs/bsa19.c4
-rw-r--r--ops/bs/bsa2.c4
-rw-r--r--ops/bs/bsa20.c4
-rw-r--r--ops/bs/bsa21.c4
-rw-r--r--ops/bs/bsa22.c4
-rw-r--r--ops/bs/bsa23.c4
-rw-r--r--ops/bs/bsa24.c4
-rw-r--r--ops/bs/bsa25.c4
-rw-r--r--ops/bs/bsa26.c4
-rw-r--r--ops/bs/bsa27.c4
-rw-r--r--ops/bs/bsa28.c4
-rw-r--r--ops/bs/bsa29.c4
-rw-r--r--ops/bs/bsa3.c4
-rw-r--r--ops/bs/bsa30.c4
-rw-r--r--ops/bs/bsa31.c4
-rw-r--r--ops/bs/bsa32.c4
-rw-r--r--ops/bs/bsa33.c4
-rw-r--r--ops/bs/bsa34.c4
-rw-r--r--ops/bs/bsa35.c4
-rw-r--r--ops/bs/bsa36.c4
-rw-r--r--ops/bs/bsa37.c4
-rw-r--r--ops/bs/bsa38.c4
-rw-r--r--ops/bs/bsa39.c4
-rw-r--r--ops/bs/bsa4.c4
-rw-r--r--ops/bs/bsa40.c4
-rw-r--r--ops/bs/bsa41.c4
-rw-r--r--ops/bs/bsa42.c4
-rw-r--r--ops/bs/bsa43.c4
-rw-r--r--ops/bs/bsa44.c4
-rw-r--r--ops/bs/bsa45.c4
-rw-r--r--ops/bs/bsa46.c4
-rw-r--r--ops/bs/bsa47.c4
-rw-r--r--ops/bs/bsa48.c4
-rw-r--r--ops/bs/bsa49.c4
-rw-r--r--ops/bs/bsa5.c4
-rw-r--r--ops/bs/bsa50.c4
-rw-r--r--ops/bs/bsa51.c4
-rw-r--r--ops/bs/bsa52.c4
-rw-r--r--ops/bs/bsa53.c4
-rw-r--r--ops/bs/bsa54.c4
-rw-r--r--ops/bs/bsa55.c4
-rw-r--r--ops/bs/bsa56.c4
-rw-r--r--ops/bs/bsa57.c4
-rw-r--r--ops/bs/bsa58.c4
-rw-r--r--ops/bs/bsa59.c4
-rw-r--r--ops/bs/bsa6.c4
-rw-r--r--ops/bs/bsa60.c4
-rw-r--r--ops/bs/bsa61.c4
-rw-r--r--ops/bs/bsa62.c4
-rw-r--r--ops/bs/bsa63.c4
-rw-r--r--ops/bs/bsa7.c4
-rw-r--r--ops/bs/bsa8.c4
-rw-r--r--ops/bs/bsa9.c4
-rw-r--r--ops/bs/bso0.c4
-rw-r--r--ops/bs/bso1.c4
-rw-r--r--ops/bs/bso10.c4
-rw-r--r--ops/bs/bso11.c4
-rw-r--r--ops/bs/bso12.c4
-rw-r--r--ops/bs/bso13.c4
-rw-r--r--ops/bs/bso14.c4
-rw-r--r--ops/bs/bso15.c4
-rw-r--r--ops/bs/bso16.c4
-rw-r--r--ops/bs/bso17.c4
-rw-r--r--ops/bs/bso18.c4
-rw-r--r--ops/bs/bso19.c4
-rw-r--r--ops/bs/bso2.c4
-rw-r--r--ops/bs/bso20.c4
-rw-r--r--ops/bs/bso21.c4
-rw-r--r--ops/bs/bso22.c4
-rw-r--r--ops/bs/bso23.c4
-rw-r--r--ops/bs/bso24.c4
-rw-r--r--ops/bs/bso25.c4
-rw-r--r--ops/bs/bso26.c4
-rw-r--r--ops/bs/bso27.c4
-rw-r--r--ops/bs/bso28.c4
-rw-r--r--ops/bs/bso29.c4
-rw-r--r--ops/bs/bso3.c4
-rw-r--r--ops/bs/bso30.c4
-rw-r--r--ops/bs/bso31.c4
-rw-r--r--ops/bs/bso32.c4
-rw-r--r--ops/bs/bso33.c4
-rw-r--r--ops/bs/bso34.c4
-rw-r--r--ops/bs/bso35.c4
-rw-r--r--ops/bs/bso36.c4
-rw-r--r--ops/bs/bso37.c4
-rw-r--r--ops/bs/bso38.c4
-rw-r--r--ops/bs/bso39.c4
-rw-r--r--ops/bs/bso4.c4
-rw-r--r--ops/bs/bso40.c4
-rw-r--r--ops/bs/bso41.c4
-rw-r--r--ops/bs/bso42.c4
-rw-r--r--ops/bs/bso43.c4
-rw-r--r--ops/bs/bso44.c4
-rw-r--r--ops/bs/bso45.c4
-rw-r--r--ops/bs/bso46.c4
-rw-r--r--ops/bs/bso47.c4
-rw-r--r--ops/bs/bso48.c4
-rw-r--r--ops/bs/bso49.c4
-rw-r--r--ops/bs/bso5.c4
-rw-r--r--ops/bs/bso50.c4
-rw-r--r--ops/bs/bso51.c4
-rw-r--r--ops/bs/bso52.c4
-rw-r--r--ops/bs/bso53.c4
-rw-r--r--ops/bs/bso54.c4
-rw-r--r--ops/bs/bso55.c4
-rw-r--r--ops/bs/bso56.c4
-rw-r--r--ops/bs/bso57.c4
-rw-r--r--ops/bs/bso58.c4
-rw-r--r--ops/bs/bso59.c4
-rw-r--r--ops/bs/bso6.c4
-rw-r--r--ops/bs/bso60.c4
-rw-r--r--ops/bs/bso61.c4
-rw-r--r--ops/bs/bso62.c4
-rw-r--r--ops/bs/bso63.c4
-rw-r--r--ops/bs/bso7.c4
-rw-r--r--ops/bs/bso8.c4
-rw-r--r--ops/bs/bso9.c4
-rw-r--r--ops/bs/bsx0.c4
-rw-r--r--ops/bs/bsx1.c4
-rw-r--r--ops/bs/bsx10.c4
-rw-r--r--ops/bs/bsx11.c4
-rw-r--r--ops/bs/bsx12.c4
-rw-r--r--ops/bs/bsx13.c4
-rw-r--r--ops/bs/bsx14.c4
-rw-r--r--ops/bs/bsx15.c4
-rw-r--r--ops/bs/bsx16.c4
-rw-r--r--ops/bs/bsx17.c4
-rw-r--r--ops/bs/bsx18.c4
-rw-r--r--ops/bs/bsx19.c4
-rw-r--r--ops/bs/bsx2.c4
-rw-r--r--ops/bs/bsx20.c4
-rw-r--r--ops/bs/bsx21.c4
-rw-r--r--ops/bs/bsx22.c4
-rw-r--r--ops/bs/bsx23.c4
-rw-r--r--ops/bs/bsx24.c4
-rw-r--r--ops/bs/bsx25.c4
-rw-r--r--ops/bs/bsx26.c4
-rw-r--r--ops/bs/bsx27.c4
-rw-r--r--ops/bs/bsx28.c4
-rw-r--r--ops/bs/bsx29.c4
-rw-r--r--ops/bs/bsx3.c4
-rw-r--r--ops/bs/bsx30.c4
-rw-r--r--ops/bs/bsx31.c4
-rw-r--r--ops/bs/bsx32.c4
-rw-r--r--ops/bs/bsx33.c4
-rw-r--r--ops/bs/bsx34.c4
-rw-r--r--ops/bs/bsx35.c4
-rw-r--r--ops/bs/bsx36.c4
-rw-r--r--ops/bs/bsx37.c4
-rw-r--r--ops/bs/bsx38.c4
-rw-r--r--ops/bs/bsx39.c4
-rw-r--r--ops/bs/bsx4.c4
-rw-r--r--ops/bs/bsx40.c4
-rw-r--r--ops/bs/bsx41.c4
-rw-r--r--ops/bs/bsx42.c4
-rw-r--r--ops/bs/bsx43.c4
-rw-r--r--ops/bs/bsx44.c4
-rw-r--r--ops/bs/bsx45.c4
-rw-r--r--ops/bs/bsx46.c4
-rw-r--r--ops/bs/bsx47.c4
-rw-r--r--ops/bs/bsx48.c4
-rw-r--r--ops/bs/bsx49.c4
-rw-r--r--ops/bs/bsx5.c4
-rw-r--r--ops/bs/bsx50.c4
-rw-r--r--ops/bs/bsx51.c4
-rw-r--r--ops/bs/bsx52.c4
-rw-r--r--ops/bs/bsx53.c4
-rw-r--r--ops/bs/bsx54.c4
-rw-r--r--ops/bs/bsx55.c4
-rw-r--r--ops/bs/bsx56.c4
-rw-r--r--ops/bs/bsx57.c4
-rw-r--r--ops/bs/bsx58.c4
-rw-r--r--ops/bs/bsx59.c4
-rw-r--r--ops/bs/bsx6.c4
-rw-r--r--ops/bs/bsx60.c4
-rw-r--r--ops/bs/bsx61.c4
-rw-r--r--ops/bs/bsx62.c4
-rw-r--r--ops/bs/bsx63.c4
-rw-r--r--ops/bs/bsx7.c4
-rw-r--r--ops/bs/bsx8.c4
-rw-r--r--ops/bs/bsx9.c4
-rw-r--r--ops/bs/bsy0.c4
-rw-r--r--ops/bs/bsy1.c4
-rw-r--r--ops/bs/bsy10.c4
-rw-r--r--ops/bs/bsy11.c4
-rw-r--r--ops/bs/bsy12.c4
-rw-r--r--ops/bs/bsy13.c4
-rw-r--r--ops/bs/bsy14.c4
-rw-r--r--ops/bs/bsy15.c4
-rw-r--r--ops/bs/bsy16.c4
-rw-r--r--ops/bs/bsy17.c4
-rw-r--r--ops/bs/bsy18.c4
-rw-r--r--ops/bs/bsy19.c4
-rw-r--r--ops/bs/bsy2.c4
-rw-r--r--ops/bs/bsy20.c4
-rw-r--r--ops/bs/bsy21.c4
-rw-r--r--ops/bs/bsy22.c4
-rw-r--r--ops/bs/bsy23.c4
-rw-r--r--ops/bs/bsy24.c4
-rw-r--r--ops/bs/bsy25.c4
-rw-r--r--ops/bs/bsy26.c4
-rw-r--r--ops/bs/bsy27.c4
-rw-r--r--ops/bs/bsy28.c4
-rw-r--r--ops/bs/bsy29.c4
-rw-r--r--ops/bs/bsy3.c4
-rw-r--r--ops/bs/bsy30.c4
-rw-r--r--ops/bs/bsy31.c4
-rw-r--r--ops/bs/bsy32.c4
-rw-r--r--ops/bs/bsy33.c4
-rw-r--r--ops/bs/bsy34.c4
-rw-r--r--ops/bs/bsy35.c4
-rw-r--r--ops/bs/bsy36.c4
-rw-r--r--ops/bs/bsy37.c4
-rw-r--r--ops/bs/bsy38.c4
-rw-r--r--ops/bs/bsy39.c4
-rw-r--r--ops/bs/bsy4.c4
-rw-r--r--ops/bs/bsy40.c4
-rw-r--r--ops/bs/bsy41.c4
-rw-r--r--ops/bs/bsy42.c4
-rw-r--r--ops/bs/bsy43.c4
-rw-r--r--ops/bs/bsy44.c4
-rw-r--r--ops/bs/bsy45.c4
-rw-r--r--ops/bs/bsy46.c4
-rw-r--r--ops/bs/bsy47.c4
-rw-r--r--ops/bs/bsy48.c4
-rw-r--r--ops/bs/bsy49.c4
-rw-r--r--ops/bs/bsy5.c4
-rw-r--r--ops/bs/bsy50.c4
-rw-r--r--ops/bs/bsy51.c4
-rw-r--r--ops/bs/bsy52.c4
-rw-r--r--ops/bs/bsy53.c4
-rw-r--r--ops/bs/bsy54.c4
-rw-r--r--ops/bs/bsy55.c4
-rw-r--r--ops/bs/bsy56.c4
-rw-r--r--ops/bs/bsy57.c4
-rw-r--r--ops/bs/bsy58.c4
-rw-r--r--ops/bs/bsy59.c4
-rw-r--r--ops/bs/bsy6.c4
-rw-r--r--ops/bs/bsy60.c4
-rw-r--r--ops/bs/bsy61.c4
-rw-r--r--ops/bs/bsy62.c4
-rw-r--r--ops/bs/bsy63.c4
-rw-r--r--ops/bs/bsy7.c4
-rw-r--r--ops/bs/bsy8.c4
-rw-r--r--ops/bs/bsy9.c4
-rwxr-xr-xops/bs/gen_bs.sh39
-rw-r--r--ops/bs/source.mk2
-rw-r--r--ops/common.h24
-rw-r--r--ops/end.c11
-rw-r--r--ops/incy.c6
-rw-r--r--ops/j.c5
-rwxr-xr-xops/li/gen_li.sh10
-rw-r--r--ops/li/li0.c4
-rw-r--r--ops/li/li1.c4
-rw-r--r--ops/li/li10.c4
-rw-r--r--ops/li/li100.c4
-rw-r--r--ops/li/li101.c4
-rw-r--r--ops/li/li102.c4
-rw-r--r--ops/li/li103.c4
-rw-r--r--ops/li/li104.c4
-rw-r--r--ops/li/li105.c4
-rw-r--r--ops/li/li106.c4
-rw-r--r--ops/li/li107.c4
-rw-r--r--ops/li/li108.c4
-rw-r--r--ops/li/li109.c4
-rw-r--r--ops/li/li11.c4
-rw-r--r--ops/li/li110.c4
-rw-r--r--ops/li/li111.c4
-rw-r--r--ops/li/li112.c4
-rw-r--r--ops/li/li113.c4
-rw-r--r--ops/li/li114.c4
-rw-r--r--ops/li/li115.c4
-rw-r--r--ops/li/li116.c4
-rw-r--r--ops/li/li117.c4
-rw-r--r--ops/li/li118.c4
-rw-r--r--ops/li/li119.c4
-rw-r--r--ops/li/li12.c4
-rw-r--r--ops/li/li120.c4
-rw-r--r--ops/li/li121.c4
-rw-r--r--ops/li/li122.c4
-rw-r--r--ops/li/li123.c4
-rw-r--r--ops/li/li124.c4
-rw-r--r--ops/li/li125.c4
-rw-r--r--ops/li/li126.c4
-rw-r--r--ops/li/li127.c4
-rw-r--r--ops/li/li128.c4
-rw-r--r--ops/li/li129.c4
-rw-r--r--ops/li/li13.c4
-rw-r--r--ops/li/li130.c4
-rw-r--r--ops/li/li131.c4
-rw-r--r--ops/li/li132.c4
-rw-r--r--ops/li/li133.c4
-rw-r--r--ops/li/li134.c4
-rw-r--r--ops/li/li135.c4
-rw-r--r--ops/li/li136.c4
-rw-r--r--ops/li/li137.c4
-rw-r--r--ops/li/li138.c4
-rw-r--r--ops/li/li139.c4
-rw-r--r--ops/li/li14.c4
-rw-r--r--ops/li/li140.c4
-rw-r--r--ops/li/li141.c4
-rw-r--r--ops/li/li142.c4
-rw-r--r--ops/li/li143.c4
-rw-r--r--ops/li/li144.c4
-rw-r--r--ops/li/li145.c4
-rw-r--r--ops/li/li146.c4
-rw-r--r--ops/li/li147.c4
-rw-r--r--ops/li/li148.c4
-rw-r--r--ops/li/li149.c4
-rw-r--r--ops/li/li15.c4
-rw-r--r--ops/li/li150.c4
-rw-r--r--ops/li/li151.c4
-rw-r--r--ops/li/li152.c4
-rw-r--r--ops/li/li153.c4
-rw-r--r--ops/li/li154.c4
-rw-r--r--ops/li/li155.c4
-rw-r--r--ops/li/li156.c4
-rw-r--r--ops/li/li157.c4
-rw-r--r--ops/li/li158.c4
-rw-r--r--ops/li/li159.c4
-rw-r--r--ops/li/li16.c4
-rw-r--r--ops/li/li160.c4
-rw-r--r--ops/li/li161.c4
-rw-r--r--ops/li/li162.c4
-rw-r--r--ops/li/li163.c4
-rw-r--r--ops/li/li164.c4
-rw-r--r--ops/li/li165.c4
-rw-r--r--ops/li/li166.c4
-rw-r--r--ops/li/li167.c4
-rw-r--r--ops/li/li168.c4
-rw-r--r--ops/li/li169.c4
-rw-r--r--ops/li/li17.c4
-rw-r--r--ops/li/li170.c4
-rw-r--r--ops/li/li171.c4
-rw-r--r--ops/li/li172.c4
-rw-r--r--ops/li/li173.c4
-rw-r--r--ops/li/li174.c4
-rw-r--r--ops/li/li175.c4
-rw-r--r--ops/li/li176.c4
-rw-r--r--ops/li/li177.c4
-rw-r--r--ops/li/li178.c4
-rw-r--r--ops/li/li179.c4
-rw-r--r--ops/li/li18.c4
-rw-r--r--ops/li/li180.c4
-rw-r--r--ops/li/li181.c4
-rw-r--r--ops/li/li182.c4
-rw-r--r--ops/li/li183.c4
-rw-r--r--ops/li/li184.c4
-rw-r--r--ops/li/li185.c4
-rw-r--r--ops/li/li186.c4
-rw-r--r--ops/li/li187.c4
-rw-r--r--ops/li/li188.c4
-rw-r--r--ops/li/li189.c4
-rw-r--r--ops/li/li19.c4
-rw-r--r--ops/li/li190.c4
-rw-r--r--ops/li/li191.c4
-rw-r--r--ops/li/li192.c4
-rw-r--r--ops/li/li193.c4
-rw-r--r--ops/li/li194.c4
-rw-r--r--ops/li/li195.c4
-rw-r--r--ops/li/li196.c4
-rw-r--r--ops/li/li197.c4
-rw-r--r--ops/li/li198.c4
-rw-r--r--ops/li/li199.c4
-rw-r--r--ops/li/li2.c4
-rw-r--r--ops/li/li20.c4
-rw-r--r--ops/li/li200.c4
-rw-r--r--ops/li/li201.c4
-rw-r--r--ops/li/li202.c4
-rw-r--r--ops/li/li203.c4
-rw-r--r--ops/li/li204.c4
-rw-r--r--ops/li/li205.c4
-rw-r--r--ops/li/li206.c4
-rw-r--r--ops/li/li207.c4
-rw-r--r--ops/li/li208.c4
-rw-r--r--ops/li/li209.c4
-rw-r--r--ops/li/li21.c4
-rw-r--r--ops/li/li210.c4
-rw-r--r--ops/li/li211.c4
-rw-r--r--ops/li/li212.c4
-rw-r--r--ops/li/li213.c4
-rw-r--r--ops/li/li214.c4
-rw-r--r--ops/li/li215.c4
-rw-r--r--ops/li/li216.c4
-rw-r--r--ops/li/li217.c4
-rw-r--r--ops/li/li218.c4
-rw-r--r--ops/li/li219.c4
-rw-r--r--ops/li/li22.c4
-rw-r--r--ops/li/li220.c4
-rw-r--r--ops/li/li221.c4
-rw-r--r--ops/li/li222.c4
-rw-r--r--ops/li/li223.c4
-rw-r--r--ops/li/li224.c4
-rw-r--r--ops/li/li225.c4
-rw-r--r--ops/li/li226.c4
-rw-r--r--ops/li/li227.c4
-rw-r--r--ops/li/li228.c4
-rw-r--r--ops/li/li229.c4
-rw-r--r--ops/li/li23.c4
-rw-r--r--ops/li/li230.c4
-rw-r--r--ops/li/li231.c4
-rw-r--r--ops/li/li232.c4
-rw-r--r--ops/li/li233.c4
-rw-r--r--ops/li/li234.c4
-rw-r--r--ops/li/li235.c4
-rw-r--r--ops/li/li236.c4
-rw-r--r--ops/li/li237.c4
-rw-r--r--ops/li/li238.c4
-rw-r--r--ops/li/li239.c4
-rw-r--r--ops/li/li24.c4
-rw-r--r--ops/li/li240.c4
-rw-r--r--ops/li/li241.c4
-rw-r--r--ops/li/li242.c4
-rw-r--r--ops/li/li243.c4
-rw-r--r--ops/li/li244.c4
-rw-r--r--ops/li/li245.c4
-rw-r--r--ops/li/li246.c4
-rw-r--r--ops/li/li247.c4
-rw-r--r--ops/li/li248.c4
-rw-r--r--ops/li/li249.c4
-rw-r--r--ops/li/li25.c4
-rw-r--r--ops/li/li250.c4
-rw-r--r--ops/li/li251.c4
-rw-r--r--ops/li/li252.c4
-rw-r--r--ops/li/li253.c4
-rw-r--r--ops/li/li254.c4
-rw-r--r--ops/li/li255.c4
-rw-r--r--ops/li/li26.c4
-rw-r--r--ops/li/li27.c4
-rw-r--r--ops/li/li28.c4
-rw-r--r--ops/li/li29.c4
-rw-r--r--ops/li/li3.c4
-rw-r--r--ops/li/li30.c4
-rw-r--r--ops/li/li31.c4
-rw-r--r--ops/li/li32.c4
-rw-r--r--ops/li/li33.c4
-rw-r--r--ops/li/li34.c4
-rw-r--r--ops/li/li35.c4
-rw-r--r--ops/li/li36.c4
-rw-r--r--ops/li/li37.c4
-rw-r--r--ops/li/li38.c4
-rw-r--r--ops/li/li39.c4
-rw-r--r--ops/li/li4.c4
-rw-r--r--ops/li/li40.c4
-rw-r--r--ops/li/li41.c4
-rw-r--r--ops/li/li42.c4
-rw-r--r--ops/li/li43.c4
-rw-r--r--ops/li/li44.c4
-rw-r--r--ops/li/li45.c4
-rw-r--r--ops/li/li46.c4
-rw-r--r--ops/li/li47.c4
-rw-r--r--ops/li/li48.c4
-rw-r--r--ops/li/li49.c4
-rw-r--r--ops/li/li5.c4
-rw-r--r--ops/li/li50.c4
-rw-r--r--ops/li/li51.c4
-rw-r--r--ops/li/li52.c4
-rw-r--r--ops/li/li53.c4
-rw-r--r--ops/li/li54.c4
-rw-r--r--ops/li/li55.c4
-rw-r--r--ops/li/li56.c4
-rw-r--r--ops/li/li57.c4
-rw-r--r--ops/li/li58.c4
-rw-r--r--ops/li/li59.c4
-rw-r--r--ops/li/li6.c4
-rw-r--r--ops/li/li60.c4
-rw-r--r--ops/li/li61.c4
-rw-r--r--ops/li/li62.c4
-rw-r--r--ops/li/li63.c4
-rw-r--r--ops/li/li64.c4
-rw-r--r--ops/li/li65.c4
-rw-r--r--ops/li/li66.c4
-rw-r--r--ops/li/li67.c4
-rw-r--r--ops/li/li68.c4
-rw-r--r--ops/li/li69.c4
-rw-r--r--ops/li/li7.c4
-rw-r--r--ops/li/li70.c4
-rw-r--r--ops/li/li71.c4
-rw-r--r--ops/li/li72.c4
-rw-r--r--ops/li/li73.c4
-rw-r--r--ops/li/li74.c4
-rw-r--r--ops/li/li75.c4
-rw-r--r--ops/li/li76.c4
-rw-r--r--ops/li/li77.c4
-rw-r--r--ops/li/li78.c4
-rw-r--r--ops/li/li79.c4
-rw-r--r--ops/li/li8.c4
-rw-r--r--ops/li/li80.c4
-rw-r--r--ops/li/li81.c4
-rw-r--r--ops/li/li82.c4
-rw-r--r--ops/li/li83.c4
-rw-r--r--ops/li/li84.c4
-rw-r--r--ops/li/li85.c4
-rw-r--r--ops/li/li86.c4
-rw-r--r--ops/li/li87.c4
-rw-r--r--ops/li/li88.c4
-rw-r--r--ops/li/li89.c4
-rw-r--r--ops/li/li9.c4
-rw-r--r--ops/li/li90.c4
-rw-r--r--ops/li/li91.c4
-rw-r--r--ops/li/li92.c4
-rw-r--r--ops/li/li93.c4
-rw-r--r--ops/li/li94.c4
-rw-r--r--ops/li/li95.c4
-rw-r--r--ops/li/li96.c4
-rw-r--r--ops/li/li97.c4
-rw-r--r--ops/li/li98.c4
-rw-r--r--ops/li/li99.c4
-rw-r--r--ops/li/source.mk2
-rw-r--r--ops/movao.c7
-rw-r--r--ops/movxa.c7
-rw-r--r--ops/movxo.c6
-rw-r--r--ops/movya.c7
-rw-r--r--ops/movyo.c7
-rwxr-xr-xops/sl/gen_sl.sh41
-rw-r--r--ops/sl/sla0.c4
-rw-r--r--ops/sl/sla1.c4
-rw-r--r--ops/sl/sla10.c4
-rw-r--r--ops/sl/sla11.c4
-rw-r--r--ops/sl/sla12.c4
-rw-r--r--ops/sl/sla13.c4
-rw-r--r--ops/sl/sla14.c4
-rw-r--r--ops/sl/sla15.c4
-rw-r--r--ops/sl/sla16.c4
-rw-r--r--ops/sl/sla17.c4
-rw-r--r--ops/sl/sla18.c4
-rw-r--r--ops/sl/sla19.c4
-rw-r--r--ops/sl/sla2.c4
-rw-r--r--ops/sl/sla20.c4
-rw-r--r--ops/sl/sla21.c4
-rw-r--r--ops/sl/sla22.c4
-rw-r--r--ops/sl/sla23.c4
-rw-r--r--ops/sl/sla24.c4
-rw-r--r--ops/sl/sla25.c4
-rw-r--r--ops/sl/sla26.c4
-rw-r--r--ops/sl/sla27.c4
-rw-r--r--ops/sl/sla28.c4
-rw-r--r--ops/sl/sla29.c4
-rw-r--r--ops/sl/sla3.c4
-rw-r--r--ops/sl/sla30.c4
-rw-r--r--ops/sl/sla31.c4
-rw-r--r--ops/sl/sla32.c4
-rw-r--r--ops/sl/sla33.c4
-rw-r--r--ops/sl/sla34.c4
-rw-r--r--ops/sl/sla35.c4
-rw-r--r--ops/sl/sla36.c4
-rw-r--r--ops/sl/sla37.c4
-rw-r--r--ops/sl/sla38.c4
-rw-r--r--ops/sl/sla39.c4
-rw-r--r--ops/sl/sla4.c4
-rw-r--r--ops/sl/sla40.c4
-rw-r--r--ops/sl/sla41.c4
-rw-r--r--ops/sl/sla42.c4
-rw-r--r--ops/sl/sla43.c4
-rw-r--r--ops/sl/sla44.c4
-rw-r--r--ops/sl/sla45.c4
-rw-r--r--ops/sl/sla46.c4
-rw-r--r--ops/sl/sla47.c4
-rw-r--r--ops/sl/sla48.c4
-rw-r--r--ops/sl/sla49.c4
-rw-r--r--ops/sl/sla5.c4
-rw-r--r--ops/sl/sla50.c4
-rw-r--r--ops/sl/sla51.c4
-rw-r--r--ops/sl/sla52.c4
-rw-r--r--ops/sl/sla53.c4
-rw-r--r--ops/sl/sla54.c4
-rw-r--r--ops/sl/sla55.c4
-rw-r--r--ops/sl/sla56.c4
-rw-r--r--ops/sl/sla57.c4
-rw-r--r--ops/sl/sla58.c4
-rw-r--r--ops/sl/sla59.c4
-rw-r--r--ops/sl/sla6.c4
-rw-r--r--ops/sl/sla60.c4
-rw-r--r--ops/sl/sla61.c4
-rw-r--r--ops/sl/sla62.c4
-rw-r--r--ops/sl/sla63.c4
-rw-r--r--ops/sl/sla7.c4
-rw-r--r--ops/sl/sla8.c4
-rw-r--r--ops/sl/sla9.c4
-rw-r--r--ops/sl/slo0.c4
-rw-r--r--ops/sl/slo1.c4
-rw-r--r--ops/sl/slo10.c4
-rw-r--r--ops/sl/slo11.c4
-rw-r--r--ops/sl/slo12.c4
-rw-r--r--ops/sl/slo13.c4
-rw-r--r--ops/sl/slo14.c4
-rw-r--r--ops/sl/slo15.c4
-rw-r--r--ops/sl/slo16.c4
-rw-r--r--ops/sl/slo17.c4
-rw-r--r--ops/sl/slo18.c4
-rw-r--r--ops/sl/slo19.c4
-rw-r--r--ops/sl/slo2.c4
-rw-r--r--ops/sl/slo20.c4
-rw-r--r--ops/sl/slo21.c4
-rw-r--r--ops/sl/slo22.c4
-rw-r--r--ops/sl/slo23.c4
-rw-r--r--ops/sl/slo24.c4
-rw-r--r--ops/sl/slo25.c4
-rw-r--r--ops/sl/slo26.c4
-rw-r--r--ops/sl/slo27.c4
-rw-r--r--ops/sl/slo28.c4
-rw-r--r--ops/sl/slo29.c4
-rw-r--r--ops/sl/slo3.c4
-rw-r--r--ops/sl/slo30.c4
-rw-r--r--ops/sl/slo31.c4
-rw-r--r--ops/sl/slo32.c4
-rw-r--r--ops/sl/slo33.c4
-rw-r--r--ops/sl/slo34.c4
-rw-r--r--ops/sl/slo35.c4
-rw-r--r--ops/sl/slo36.c4
-rw-r--r--ops/sl/slo37.c4
-rw-r--r--ops/sl/slo38.c4
-rw-r--r--ops/sl/slo39.c4
-rw-r--r--ops/sl/slo4.c4
-rw-r--r--ops/sl/slo40.c4
-rw-r--r--ops/sl/slo41.c4
-rw-r--r--ops/sl/slo42.c4
-rw-r--r--ops/sl/slo43.c4
-rw-r--r--ops/sl/slo44.c4
-rw-r--r--ops/sl/slo45.c4
-rw-r--r--ops/sl/slo46.c4
-rw-r--r--ops/sl/slo47.c4
-rw-r--r--ops/sl/slo48.c4
-rw-r--r--ops/sl/slo49.c4
-rw-r--r--ops/sl/slo5.c4
-rw-r--r--ops/sl/slo50.c4
-rw-r--r--ops/sl/slo51.c4
-rw-r--r--ops/sl/slo52.c4
-rw-r--r--ops/sl/slo53.c4
-rw-r--r--ops/sl/slo54.c4
-rw-r--r--ops/sl/slo55.c4
-rw-r--r--ops/sl/slo56.c4
-rw-r--r--ops/sl/slo57.c4
-rw-r--r--ops/sl/slo58.c4
-rw-r--r--ops/sl/slo59.c4
-rw-r--r--ops/sl/slo6.c4
-rw-r--r--ops/sl/slo60.c4
-rw-r--r--ops/sl/slo61.c4
-rw-r--r--ops/sl/slo62.c4
-rw-r--r--ops/sl/slo63.c4
-rw-r--r--ops/sl/slo7.c4
-rw-r--r--ops/sl/slo8.c4
-rw-r--r--ops/sl/slo9.c4
-rw-r--r--ops/sl/slx0.c4
-rw-r--r--ops/sl/slx1.c4
-rw-r--r--ops/sl/slx10.c4
-rw-r--r--ops/sl/slx11.c4
-rw-r--r--ops/sl/slx12.c4
-rw-r--r--ops/sl/slx13.c4
-rw-r--r--ops/sl/slx14.c4
-rw-r--r--ops/sl/slx15.c4
-rw-r--r--ops/sl/slx16.c4
-rw-r--r--ops/sl/slx17.c4
-rw-r--r--ops/sl/slx18.c4
-rw-r--r--ops/sl/slx19.c4
-rw-r--r--ops/sl/slx2.c4
-rw-r--r--ops/sl/slx20.c4
-rw-r--r--ops/sl/slx21.c4
-rw-r--r--ops/sl/slx22.c4
-rw-r--r--ops/sl/slx23.c4
-rw-r--r--ops/sl/slx24.c4
-rw-r--r--ops/sl/slx25.c4
-rw-r--r--ops/sl/slx26.c4
-rw-r--r--ops/sl/slx27.c4
-rw-r--r--ops/sl/slx28.c4
-rw-r--r--ops/sl/slx29.c4
-rw-r--r--ops/sl/slx3.c4
-rw-r--r--ops/sl/slx30.c4
-rw-r--r--ops/sl/slx31.c4
-rw-r--r--ops/sl/slx32.c4
-rw-r--r--ops/sl/slx33.c4
-rw-r--r--ops/sl/slx34.c4
-rw-r--r--ops/sl/slx35.c4
-rw-r--r--ops/sl/slx36.c4
-rw-r--r--ops/sl/slx37.c4
-rw-r--r--ops/sl/slx38.c4
-rw-r--r--ops/sl/slx39.c4
-rw-r--r--ops/sl/slx4.c4
-rw-r--r--ops/sl/slx40.c4
-rw-r--r--ops/sl/slx41.c4
-rw-r--r--ops/sl/slx42.c4
-rw-r--r--ops/sl/slx43.c4
-rw-r--r--ops/sl/slx44.c4
-rw-r--r--ops/sl/slx45.c4
-rw-r--r--ops/sl/slx46.c4
-rw-r--r--ops/sl/slx47.c4
-rw-r--r--ops/sl/slx48.c4
-rw-r--r--ops/sl/slx49.c4
-rw-r--r--ops/sl/slx5.c4
-rw-r--r--ops/sl/slx50.c4
-rw-r--r--ops/sl/slx51.c4
-rw-r--r--ops/sl/slx52.c4
-rw-r--r--ops/sl/slx53.c4
-rw-r--r--ops/sl/slx54.c4
-rw-r--r--ops/sl/slx55.c4
-rw-r--r--ops/sl/slx56.c4
-rw-r--r--ops/sl/slx57.c4
-rw-r--r--ops/sl/slx58.c4
-rw-r--r--ops/sl/slx59.c4
-rw-r--r--ops/sl/slx6.c4
-rw-r--r--ops/sl/slx60.c4
-rw-r--r--ops/sl/slx61.c4
-rw-r--r--ops/sl/slx62.c4
-rw-r--r--ops/sl/slx63.c4
-rw-r--r--ops/sl/slx7.c4
-rw-r--r--ops/sl/slx8.c4
-rw-r--r--ops/sl/slx9.c4
-rw-r--r--ops/sl/sly0.c4
-rw-r--r--ops/sl/sly1.c4
-rw-r--r--ops/sl/sly10.c4
-rw-r--r--ops/sl/sly11.c4
-rw-r--r--ops/sl/sly12.c4
-rw-r--r--ops/sl/sly13.c4
-rw-r--r--ops/sl/sly14.c4
-rw-r--r--ops/sl/sly15.c4
-rw-r--r--ops/sl/sly16.c4
-rw-r--r--ops/sl/sly17.c4
-rw-r--r--ops/sl/sly18.c4
-rw-r--r--ops/sl/sly19.c4
-rw-r--r--ops/sl/sly2.c4
-rw-r--r--ops/sl/sly20.c4
-rw-r--r--ops/sl/sly21.c4
-rw-r--r--ops/sl/sly22.c4
-rw-r--r--ops/sl/sly23.c4
-rw-r--r--ops/sl/sly24.c4
-rw-r--r--ops/sl/sly25.c4
-rw-r--r--ops/sl/sly26.c4
-rw-r--r--ops/sl/sly27.c4
-rw-r--r--ops/sl/sly28.c4
-rw-r--r--ops/sl/sly29.c4
-rw-r--r--ops/sl/sly3.c4
-rw-r--r--ops/sl/sly30.c4
-rw-r--r--ops/sl/sly31.c4
-rw-r--r--ops/sl/sly32.c4
-rw-r--r--ops/sl/sly33.c4
-rw-r--r--ops/sl/sly34.c4
-rw-r--r--ops/sl/sly35.c4
-rw-r--r--ops/sl/sly36.c4
-rw-r--r--ops/sl/sly37.c4
-rw-r--r--ops/sl/sly38.c4
-rw-r--r--ops/sl/sly39.c4
-rw-r--r--ops/sl/sly4.c4
-rw-r--r--ops/sl/sly40.c4
-rw-r--r--ops/sl/sly41.c4
-rw-r--r--ops/sl/sly42.c4
-rw-r--r--ops/sl/sly43.c4
-rw-r--r--ops/sl/sly44.c4
-rw-r--r--ops/sl/sly45.c4
-rw-r--r--ops/sl/sly46.c4
-rw-r--r--ops/sl/sly47.c4
-rw-r--r--ops/sl/sly48.c4
-rw-r--r--ops/sl/sly49.c4
-rw-r--r--ops/sl/sly5.c4
-rw-r--r--ops/sl/sly50.c4
-rw-r--r--ops/sl/sly51.c4
-rw-r--r--ops/sl/sly52.c4
-rw-r--r--ops/sl/sly53.c4
-rw-r--r--ops/sl/sly54.c4
-rw-r--r--ops/sl/sly55.c4
-rw-r--r--ops/sl/sly56.c4
-rw-r--r--ops/sl/sly57.c4
-rw-r--r--ops/sl/sly58.c4
-rw-r--r--ops/sl/sly59.c4
-rw-r--r--ops/sl/sly6.c4
-rw-r--r--ops/sl/sly60.c4
-rw-r--r--ops/sl/sly61.c4
-rw-r--r--ops/sl/sly62.c4
-rw-r--r--ops/sl/sly63.c4
-rw-r--r--ops/sl/sly7.c4
-rw-r--r--ops/sl/sly8.c4
-rw-r--r--ops/sl/sly9.c4
-rw-r--r--ops/sl/source.mk2
-rw-r--r--ops/source.mk8
-rwxr-xr-xops/sr/gen_sr.sh39
-rw-r--r--ops/sr/source.mk2
-rw-r--r--ops/sr/sra0.c4
-rw-r--r--ops/sr/sra1.c4
-rw-r--r--ops/sr/sra10.c4
-rw-r--r--ops/sr/sra11.c4
-rw-r--r--ops/sr/sra12.c4
-rw-r--r--ops/sr/sra13.c4
-rw-r--r--ops/sr/sra14.c4
-rw-r--r--ops/sr/sra15.c4
-rw-r--r--ops/sr/sra16.c4
-rw-r--r--ops/sr/sra17.c4
-rw-r--r--ops/sr/sra18.c4
-rw-r--r--ops/sr/sra19.c4
-rw-r--r--ops/sr/sra2.c4
-rw-r--r--ops/sr/sra20.c4
-rw-r--r--ops/sr/sra21.c4
-rw-r--r--ops/sr/sra22.c4
-rw-r--r--ops/sr/sra23.c4
-rw-r--r--ops/sr/sra24.c4
-rw-r--r--ops/sr/sra25.c4
-rw-r--r--ops/sr/sra26.c4
-rw-r--r--ops/sr/sra27.c4
-rw-r--r--ops/sr/sra28.c4
-rw-r--r--ops/sr/sra29.c4
-rw-r--r--ops/sr/sra3.c4
-rw-r--r--ops/sr/sra30.c4
-rw-r--r--ops/sr/sra31.c4
-rw-r--r--ops/sr/sra32.c4
-rw-r--r--ops/sr/sra33.c4
-rw-r--r--ops/sr/sra34.c4
-rw-r--r--ops/sr/sra35.c4
-rw-r--r--ops/sr/sra36.c4
-rw-r--r--ops/sr/sra37.c4
-rw-r--r--ops/sr/sra38.c4
-rw-r--r--ops/sr/sra39.c4
-rw-r--r--ops/sr/sra4.c4
-rw-r--r--ops/sr/sra40.c4
-rw-r--r--ops/sr/sra41.c4
-rw-r--r--ops/sr/sra42.c4
-rw-r--r--ops/sr/sra43.c4
-rw-r--r--ops/sr/sra44.c4
-rw-r--r--ops/sr/sra45.c4
-rw-r--r--ops/sr/sra46.c4
-rw-r--r--ops/sr/sra47.c4
-rw-r--r--ops/sr/sra48.c4
-rw-r--r--ops/sr/sra49.c4
-rw-r--r--ops/sr/sra5.c4
-rw-r--r--ops/sr/sra50.c4
-rw-r--r--ops/sr/sra51.c4
-rw-r--r--ops/sr/sra52.c4
-rw-r--r--ops/sr/sra53.c4
-rw-r--r--ops/sr/sra54.c4
-rw-r--r--ops/sr/sra55.c4
-rw-r--r--ops/sr/sra56.c4
-rw-r--r--ops/sr/sra57.c4
-rw-r--r--ops/sr/sra58.c4
-rw-r--r--ops/sr/sra59.c4
-rw-r--r--ops/sr/sra6.c4
-rw-r--r--ops/sr/sra60.c4
-rw-r--r--ops/sr/sra61.c4
-rw-r--r--ops/sr/sra62.c4
-rw-r--r--ops/sr/sra63.c4
-rw-r--r--ops/sr/sra7.c4
-rw-r--r--ops/sr/sra8.c4
-rw-r--r--ops/sr/sra9.c4
-rw-r--r--ops/sr/sro0.c4
-rw-r--r--ops/sr/sro1.c4
-rw-r--r--ops/sr/sro10.c4
-rw-r--r--ops/sr/sro11.c4
-rw-r--r--ops/sr/sro12.c4
-rw-r--r--ops/sr/sro13.c4
-rw-r--r--ops/sr/sro14.c4
-rw-r--r--ops/sr/sro15.c4
-rw-r--r--ops/sr/sro16.c4
-rw-r--r--ops/sr/sro17.c4
-rw-r--r--ops/sr/sro18.c4
-rw-r--r--ops/sr/sro19.c4
-rw-r--r--ops/sr/sro2.c4
-rw-r--r--ops/sr/sro20.c4
-rw-r--r--ops/sr/sro21.c4
-rw-r--r--ops/sr/sro22.c4
-rw-r--r--ops/sr/sro23.c4
-rw-r--r--ops/sr/sro24.c4
-rw-r--r--ops/sr/sro25.c4
-rw-r--r--ops/sr/sro26.c4
-rw-r--r--ops/sr/sro27.c4
-rw-r--r--ops/sr/sro28.c4
-rw-r--r--ops/sr/sro29.c4
-rw-r--r--ops/sr/sro3.c4
-rw-r--r--ops/sr/sro30.c4
-rw-r--r--ops/sr/sro31.c4
-rw-r--r--ops/sr/sro32.c4
-rw-r--r--ops/sr/sro33.c4
-rw-r--r--ops/sr/sro34.c4
-rw-r--r--ops/sr/sro35.c4
-rw-r--r--ops/sr/sro36.c4
-rw-r--r--ops/sr/sro37.c4
-rw-r--r--ops/sr/sro38.c4
-rw-r--r--ops/sr/sro39.c4
-rw-r--r--ops/sr/sro4.c4
-rw-r--r--ops/sr/sro40.c4
-rw-r--r--ops/sr/sro41.c4
-rw-r--r--ops/sr/sro42.c4
-rw-r--r--ops/sr/sro43.c4
-rw-r--r--ops/sr/sro44.c4
-rw-r--r--ops/sr/sro45.c4
-rw-r--r--ops/sr/sro46.c4
-rw-r--r--ops/sr/sro47.c4
-rw-r--r--ops/sr/sro48.c4
-rw-r--r--ops/sr/sro49.c4
-rw-r--r--ops/sr/sro5.c4
-rw-r--r--ops/sr/sro50.c4
-rw-r--r--ops/sr/sro51.c4
-rw-r--r--ops/sr/sro52.c4
-rw-r--r--ops/sr/sro53.c4
-rw-r--r--ops/sr/sro54.c4
-rw-r--r--ops/sr/sro55.c4
-rw-r--r--ops/sr/sro56.c4
-rw-r--r--ops/sr/sro57.c4
-rw-r--r--ops/sr/sro58.c4
-rw-r--r--ops/sr/sro59.c4
-rw-r--r--ops/sr/sro6.c4
-rw-r--r--ops/sr/sro60.c4
-rw-r--r--ops/sr/sro61.c4
-rw-r--r--ops/sr/sro62.c4
-rw-r--r--ops/sr/sro63.c4
-rw-r--r--ops/sr/sro7.c4
-rw-r--r--ops/sr/sro8.c4
-rw-r--r--ops/sr/sro9.c4
-rw-r--r--ops/sr/srx0.c4
-rw-r--r--ops/sr/srx1.c4
-rw-r--r--ops/sr/srx10.c4
-rw-r--r--ops/sr/srx11.c4
-rw-r--r--ops/sr/srx12.c4
-rw-r--r--ops/sr/srx13.c4
-rw-r--r--ops/sr/srx14.c4
-rw-r--r--ops/sr/srx15.c4
-rw-r--r--ops/sr/srx16.c4
-rw-r--r--ops/sr/srx17.c4
-rw-r--r--ops/sr/srx18.c4
-rw-r--r--ops/sr/srx19.c4
-rw-r--r--ops/sr/srx2.c4
-rw-r--r--ops/sr/srx20.c4
-rw-r--r--ops/sr/srx21.c4
-rw-r--r--ops/sr/srx22.c4
-rw-r--r--ops/sr/srx23.c4
-rw-r--r--ops/sr/srx24.c4
-rw-r--r--ops/sr/srx25.c4
-rw-r--r--ops/sr/srx26.c4
-rw-r--r--ops/sr/srx27.c4
-rw-r--r--ops/sr/srx28.c4
-rw-r--r--ops/sr/srx29.c4
-rw-r--r--ops/sr/srx3.c4
-rw-r--r--ops/sr/srx30.c4
-rw-r--r--ops/sr/srx31.c4
-rw-r--r--ops/sr/srx32.c4
-rw-r--r--ops/sr/srx33.c4
-rw-r--r--ops/sr/srx34.c4
-rw-r--r--ops/sr/srx35.c4
-rw-r--r--ops/sr/srx36.c4
-rw-r--r--ops/sr/srx37.c4
-rw-r--r--ops/sr/srx38.c4
-rw-r--r--ops/sr/srx39.c4
-rw-r--r--ops/sr/srx4.c4
-rw-r--r--ops/sr/srx40.c4
-rw-r--r--ops/sr/srx41.c4
-rw-r--r--ops/sr/srx42.c4
-rw-r--r--ops/sr/srx43.c4
-rw-r--r--ops/sr/srx44.c4
-rw-r--r--ops/sr/srx45.c4
-rw-r--r--ops/sr/srx46.c4
-rw-r--r--ops/sr/srx47.c4
-rw-r--r--ops/sr/srx48.c4
-rw-r--r--ops/sr/srx49.c4
-rw-r--r--ops/sr/srx5.c4
-rw-r--r--ops/sr/srx50.c4
-rw-r--r--ops/sr/srx51.c4
-rw-r--r--ops/sr/srx52.c4
-rw-r--r--ops/sr/srx53.c4
-rw-r--r--ops/sr/srx54.c4
-rw-r--r--ops/sr/srx55.c4
-rw-r--r--ops/sr/srx56.c4
-rw-r--r--ops/sr/srx57.c4
-rw-r--r--ops/sr/srx58.c4
-rw-r--r--ops/sr/srx59.c4
-rw-r--r--ops/sr/srx6.c4
-rw-r--r--ops/sr/srx60.c4
-rw-r--r--ops/sr/srx61.c4
-rw-r--r--ops/sr/srx62.c4
-rw-r--r--ops/sr/srx63.c4
-rw-r--r--ops/sr/srx7.c4
-rw-r--r--ops/sr/srx8.c4
-rw-r--r--ops/sr/srx9.c4
-rw-r--r--ops/sr/sry0.c4
-rw-r--r--ops/sr/sry1.c4
-rw-r--r--ops/sr/sry10.c4
-rw-r--r--ops/sr/sry11.c4
-rw-r--r--ops/sr/sry12.c4
-rw-r--r--ops/sr/sry13.c4
-rw-r--r--ops/sr/sry14.c4
-rw-r--r--ops/sr/sry15.c4
-rw-r--r--ops/sr/sry16.c4
-rw-r--r--ops/sr/sry17.c4
-rw-r--r--ops/sr/sry18.c4
-rw-r--r--ops/sr/sry19.c4
-rw-r--r--ops/sr/sry2.c4
-rw-r--r--ops/sr/sry20.c4
-rw-r--r--ops/sr/sry21.c4
-rw-r--r--ops/sr/sry22.c4
-rw-r--r--ops/sr/sry23.c4
-rw-r--r--ops/sr/sry24.c4
-rw-r--r--ops/sr/sry25.c4
-rw-r--r--ops/sr/sry26.c4
-rw-r--r--ops/sr/sry27.c4
-rw-r--r--ops/sr/sry28.c4
-rw-r--r--ops/sr/sry29.c4
-rw-r--r--ops/sr/sry3.c4
-rw-r--r--ops/sr/sry30.c4
-rw-r--r--ops/sr/sry31.c4
-rw-r--r--ops/sr/sry32.c4
-rw-r--r--ops/sr/sry33.c4
-rw-r--r--ops/sr/sry34.c4
-rw-r--r--ops/sr/sry35.c4
-rw-r--r--ops/sr/sry36.c4
-rw-r--r--ops/sr/sry37.c4
-rw-r--r--ops/sr/sry38.c4
-rw-r--r--ops/sr/sry39.c4
-rw-r--r--ops/sr/sry4.c4
-rw-r--r--ops/sr/sry40.c4
-rw-r--r--ops/sr/sry41.c4
-rw-r--r--ops/sr/sry42.c4
-rw-r--r--ops/sr/sry43.c4
-rw-r--r--ops/sr/sry44.c4
-rw-r--r--ops/sr/sry45.c4
-rw-r--r--ops/sr/sry46.c4
-rw-r--r--ops/sr/sry47.c4
-rw-r--r--ops/sr/sry48.c4
-rw-r--r--ops/sr/sry49.c4
-rw-r--r--ops/sr/sry5.c4
-rw-r--r--ops/sr/sry50.c4
-rw-r--r--ops/sr/sry51.c4
-rw-r--r--ops/sr/sry52.c4
-rw-r--r--ops/sr/sry53.c4
-rw-r--r--ops/sr/sry54.c4
-rw-r--r--ops/sr/sry55.c4
-rw-r--r--ops/sr/sry56.c4
-rw-r--r--ops/sr/sry57.c4
-rw-r--r--ops/sr/sry58.c4
-rw-r--r--ops/sr/sry59.c4
-rw-r--r--ops/sr/sry6.c4
-rw-r--r--ops/sr/sry60.c4
-rw-r--r--ops/sr/sry61.c4
-rw-r--r--ops/sr/sry62.c4
-rw-r--r--ops/sr/sry63.c4
-rw-r--r--ops/sr/sry7.c4
-rw-r--r--ops/sr/sry8.c4
-rw-r--r--ops/sr/sry9.c4
-rw-r--r--ops/sub.c7
-rw-r--r--ops/subxo.c7
-rw-r--r--ops/subyo.c7
-rwxr-xr-xscripts/gen-deps35
-rwxr-xr-xscripts/gen-ops20
-rwxr-xr-xscripts/license11
-rwxr-xr-xscripts/warn-undocumented6
-rw-r--r--src/copyjit.c358
-rw-r--r--src/copyjit.h17
-rw-r--r--src/main.c32
-rw-r--r--src/source.mk2
-rw-r--r--uncrustify.conf3133
1331 files changed, 29707 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..3d508cd
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,11 @@
+deps.mk
+docs/output
+lib/gen/*
+lib/empty.bin
+lib/empty.o
+lib/prune
+lib/*.d
+build
+copyjit
+!include/copyjit
+!lib/gen/.gitkeep
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..213b4b9
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,76 @@
+DO != echo -n > deps.mk
+
+DEBUGFLAGS != [ $(RELEASE) ] && echo "-flto=auto -O2 -DNODEBUG" || echo "-O0 -g -DDEBUG"
+CFLAGS = -Wall -Wextra
+DEPFLAGS = -MT $@ -MMD -MP -MF $@.d
+LINTFLAGS = -fsyntax-only
+INCLUDEFLAGS = -Iinclude
+COMPILEFLAGS =
+LINKFLAGS =
+
+all: copyjit
+
+# default values
+CROSS_COMPILE ?=
+
+# common programs
+CC = gcc
+OBJCOPY = objcopy
+
+SOURCES :=
+OP_SOURCES :=
+
+include ops/source.mk
+include src/source.mk
+
+COMPILE = $(CROSS_COMPILE)$(CC) $(DEBUGFLAGS)\
+ $(CFLAGS) $(DEPFLAGS) $(COMPILEFLAGS) $(INCLUDEFLAGS)
+
+OP_COMPILE = $(CROSS_COMPILE)$(CC) \
+ -Wall -Wextra -O3 \
+ -fno-schedule-insns -fno-schedule-insns2
+
+LINT = $(COMPILE) $(LINTFLAGS)
+
+OBJS != ./scripts/gen-deps --sources "$(SOURCES)"
+OPS != ./scripts/gen-ops "$(OP_SOURCES)"
+
+include deps.mk
+include lib/source.mk
+
+.PHONY: lint
+lint: $(OBJS:.o=.o.l)
+
+.PHONY: format
+format:
+ @find src ops lib -iname '*.[ch]' |\
+ xargs -n 10 -P 0 uncrustify -c uncrustify.conf --no-backup -F -
+
+.PHONY: license
+license:
+ @find . -iname '*.[ch]' |\
+ xargs -n 10 -P 0 ./scripts/license
+
+.PHONY: docs
+docs:
+ @./scripts/warn-undocumented
+ @doxygen docs/doxygen.conf
+
+.PHONY: check
+check: ek
+ ./tests/check.sh
+
+copyjit: $(OBJS)
+ $(COMPILE) $(OBJS) -o $@
+
+# could probably make this a bit prettier
+.PHONY: clean
+clean:
+ @$(RM) -r build copyjit lib/gen/* lib/*.o lib/*.bin lib/*.d lib/prune deps.mk
+
+.PHONY: clean_docs
+clean_docs:
+ @$(RM) -r docs/output
+
+.PHONY: clean_all
+clean_all: clean clean_docs
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..de187d6
--- /dev/null
+++ b/README.md
@@ -0,0 +1,20 @@
+Idea: try copy-and-patch, but without patching to make it 'easier' to implement.
+
+Essentially, build a tool that generates a bunch of operations (one per file?)
+all with identical signatures, then maybe generate binary objdump of each procedure
+and drop the last setup for jump (generate noop and filter all matching bytes
+from other procedures?) and finally generate a header file or something with all
+the function bytes. Then it should be possible to just copy them into place?
+
+See example what.c, which generates a noop. This noop is extracted
+with `objcopy -j .text -Obinary what.o` into `what.bin` which is essentially
+the 'jump to next bit' that we want to remove.
+
+(note that deleting the final call stuff is just opportunistic, and might not
+ always be possible?)
+(add -fno-schedule-insns -fno-schedule-insns2 for increased chance of generating
+ identical epilogues)
+
+Additionally, it might be possible to write some data into the execution stream
+with inline assembly after the jump, though that feels so hacky that I might
+skip it for now...
diff --git a/docs/doxygen-kmi.css b/docs/doxygen-kmi.css
new file mode 100644
index 0000000..39d144e
--- /dev/null
+++ b/docs/doxygen-kmi.css
@@ -0,0 +1,2137 @@
+/**
+
+Doxygen Awesome
+https://github.com/jothepro/doxygen-awesome-css
+
+MIT License
+
+Copyright (c) 2021 - 2022 jothepro
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+ */
+
+html {
+ /* primary theme color. This will affect the entire websites color scheme: links, arrows, labels, ... */
+ --primary-color: #1779c4;
+ --primary-dark-color: #335c80;
+ --primary-light-color: #70b1e9;
+
+ /* page base colors */
+ --page-background-color: white;
+ --page-foreground-color: #2f4153;
+ --page-secondary-foreground-color: #637485;
+
+ /* color for all separators on the website: hr, borders, ... */
+ --separator-color: #dedede;
+
+ /* border radius for all rounded components. Will affect many components, like dropdowns, memitems, codeblocks, ... */
+ --border-radius-large: 8px;
+ --border-radius-small: 4px;
+ --border-radius-medium: 6px;
+
+ /* default spacings. Most compontest reference these values for spacing, to provide uniform spacing on the page. */
+ --spacing-small: 5px;
+ --spacing-medium: 10px;
+ --spacing-large: 16px;
+
+ /* default box shadow used for raising an element above the normal content. Used in dropdowns, Searchresult, ... */
+ --box-shadow: 0 2px 8px 0 rgba(0,0,0,.075);
+
+ --odd-color: rgba(0,0,0,.028);
+
+ /* font-families. will affect all text on the website
+ * font-family: the normal font for text, headlines, menus
+ * font-family-monospace: used for preformatted text in memtitle, code, fragments
+ */
+--font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;
+--font-family-monospace: ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;
+
+/* font sizes */
+--page-font-size: 15.6px;
+--navigation-font-size: 14.4px;
+--code-font-size: 14px; /* affects code, fragment */
+--title-font-size: 22px;
+
+/* content text properties. These only affect the page content, not the navigation or any other ui elements */
+--content-line-height: 27px;
+/* The content is centered and constraint in it's width. To make the content fill the whole page, set the variable to auto.*/
+--content-maxwidth: 1000px;
+
+/* colors for various content boxes: @warning, @note, @deprecated @bug */
+--warning-color: #f8d1cc;
+--warning-color-dark: #b61825;
+--warning-color-darker: #75070f;
+--note-color: #faf3d8;
+--note-color-dark: #f3a600;
+--note-color-darker: #5f4204;
+--todo-color: #e4f3ff;
+--todo-color-dark: #1879C4;
+--todo-color-darker: #274a5c;
+--deprecated-color: #ecf0f3;
+--deprecated-color-dark: #5b6269;
+--deprecated-color-darker: #43454a;
+--bug-color: #e4dafd;
+--bug-color-dark: #5b2bdd;
+--bug-color-darker: #2a0d72;
+--invariant-color: #d8f1e3;
+--invariant-color-dark: #44b86f;
+--invariant-color-darker: #265532;
+
+/* blockquote colors */
+--blockquote-background: #f8f9fa;
+--blockquote-foreground: #636568;
+
+/* table colors */
+--tablehead-background: #f1f1f1;
+--tablehead-foreground: var(--page-foreground-color);
+
+/* menu-display: block | none
+ * Visibility of the top navigation on screens >= 768px. On smaller screen the menu is always visible.
+ * `GENERATE_TREEVIEW` MUST be enabled!
+ */
+--menu-display: block;
+
+--menu-focus-foreground: var(--page-background-color);
+--menu-focus-background: var(--primary-color);
+--menu-selected-background: rgba(0,0,0,.05);
+
+
+--header-background: var(--page-background-color);
+--header-foreground: var(--page-foreground-color);
+
+/* searchbar colors */
+--searchbar-background: var(--side-nav-background);
+--searchbar-foreground: var(--page-foreground-color);
+
+/* searchbar size
+ * (`searchbar-width` is only applied on screens >= 768px.
+ * on smaller screens the searchbar will always fill the entire screen width) */
+--searchbar-height: 33px;
+--searchbar-width: 210px;
+--searchbar-border-radius: var(--searchbar-height);
+
+/* code block colors */
+--code-background: #f5f5f5;
+--code-foreground: var(--page-foreground-color);
+
+/* fragment colors */
+--fragment-background: #F8F9FA;
+--fragment-foreground: #37474F;
+--fragment-keyword: #bb6bb2;
+--fragment-keywordtype: #8258b3;
+--fragment-keywordflow: #d67c3b;
+--fragment-token: #438a59;
+--fragment-comment: #969696;
+--fragment-link: #5383d6;
+--fragment-preprocessor: #46aaa5;
+--fragment-linenumber-color: #797979;
+--fragment-linenumber-background: #f4f4f5;
+--fragment-linenumber-border: #e3e5e7;
+--fragment-lineheight: 20px;
+
+/* sidebar navigation (treeview) colors */
+--side-nav-background: #fbfbfb;
+--side-nav-foreground: var(--page-foreground-color);
+--side-nav-arrow-opacity: 0;
+--side-nav-arrow-hover-opacity: 0.9;
+
+--toc-background: var(--side-nav-background);
+--toc-foreground: var(--side-nav-foreground);
+
+/* height of an item in any tree / collapsable table */
+--tree-item-height: 30px;
+
+--memname-font-size: var(--code-font-size);
+--memtitle-font-size: 18px;
+
+--webkit-scrollbar-size: 7px;
+--webkit-scrollbar-padding: 4px;
+--webkit-scrollbar-color: var(--separator-color);
+}
+
+@media screen and (max-width: 767px) {
+ html {
+ --page-font-size: 16px;
+ --navigation-font-size: 16px;
+ --code-font-size: 15px; /* affects code, fragment */
+ --title-font-size: 22px;
+ }
+}
+
+@media (prefers-color-scheme: dark) {
+ html:not(.light-mode) {
+ color-scheme: dark;
+
+ --primary-color: #1982d2;
+ --primary-dark-color: #86a9c4;
+ --primary-light-color: #4779ac;
+
+ --box-shadow: 0 2px 8px 0 rgba(0,0,0,.35);
+
+ --odd-color: rgba(100,100,100,.06);
+
+ --menu-selected-background: rgba(0,0,0,.4);
+
+ --page-background-color: #1C1D1F;
+ --page-foreground-color: #d2dbde;
+ --page-secondary-foreground-color: #859399;
+ --separator-color: #38393b;
+ --side-nav-background: #252628;
+
+ --code-background: #2a2c2f;
+
+ --tablehead-background: #2a2c2f;
+
+ --blockquote-background: #222325;
+ --blockquote-foreground: #7e8c92;
+
+ --warning-color: #2e1917;
+ --warning-color-dark: #ad2617;
+ --warning-color-darker: #f5b1aa;
+ --note-color: #3b2e04;
+ --note-color-dark: #f1b602;
+ --note-color-darker: #ceb670;
+ --todo-color: #163750;
+ --todo-color-dark: #1982D2;
+ --todo-color-darker: #dcf0fa;
+ --deprecated-color: #2e323b;
+ --deprecated-color-dark: #738396;
+ --deprecated-color-darker: #abb0bd;
+ --bug-color: #2a2536;
+ --bug-color-dark: #7661b3;
+ --bug-color-darker: #ae9ed6;
+ --invariant-color: #303a35;
+ --invariant-color-dark: #76ce96;
+ --invariant-color-darker: #cceed5;
+
+ --fragment-background: #282c34;
+ --fragment-foreground: #dbe4eb;
+ --fragment-keyword: #cc99cd;
+ --fragment-keywordtype: #ab99cd;
+ --fragment-keywordflow: #e08000;
+ --fragment-token: #7ec699;
+ --fragment-comment: #999999;
+ --fragment-link: #98c0e3;
+ --fragment-preprocessor: #65cabe;
+ --fragment-linenumber-color: #cccccc;
+ --fragment-linenumber-background: #35393c;
+ --fragment-linenumber-border: #1f1f1f;
+ }
+}
+
+/* dark mode variables are defined twice, to support both the dark-mode without and with doxygen-awesome-darkmode-toggle.js */
+html.dark-mode {
+ color-scheme: dark;
+
+ --primary-color: #1982d2;
+ --primary-dark-color: #86a9c4;
+ --primary-light-color: #4779ac;
+
+ --box-shadow: 0 2px 8px 0 rgba(0,0,0,.30);
+
+ --odd-color: rgba(100,100,100,.06);
+
+ --menu-selected-background: rgba(0,0,0,.4);
+
+ --page-background-color: #1C1D1F;
+ --page-foreground-color: #d2dbde;
+ --page-secondary-foreground-color: #859399;
+ --separator-color: #38393b;
+ --side-nav-background: #252628;
+
+ --code-background: #2a2c2f;
+
+ --tablehead-background: #2a2c2f;
+
+ --blockquote-background: #222325;
+ --blockquote-foreground: #7e8c92;
+
+ --warning-color: #2e1917;
+ --warning-color-dark: #ad2617;
+ --warning-color-darker: #f5b1aa;
+ --note-color: #3b2e04;
+ --note-color-dark: #f1b602;
+ --note-color-darker: #ceb670;
+ --todo-color: #163750;
+ --todo-color-dark: #1982D2;
+ --todo-color-darker: #dcf0fa;
+ --deprecated-color: #2e323b;
+ --deprecated-color-dark: #738396;
+ --deprecated-color-darker: #abb0bd;
+ --bug-color: #2a2536;
+ --bug-color-dark: #7661b3;
+ --bug-color-darker: #ae9ed6;
+ --invariant-color: #303a35;
+ --invariant-color-dark: #76ce96;
+ --invariant-color-darker: #cceed5;
+
+ --fragment-background: #282c34;
+ --fragment-foreground: #dbe4eb;
+ --fragment-keyword: #cc99cd;
+ --fragment-keywordtype: #ab99cd;
+ --fragment-keywordflow: #e08000;
+ --fragment-token: #7ec699;
+ --fragment-comment: #999999;
+ --fragment-link: #98c0e3;
+ --fragment-preprocessor: #65cabe;
+ --fragment-linenumber-color: #cccccc;
+ --fragment-linenumber-background: #35393c;
+ --fragment-linenumber-border: #1f1f1f;
+}
+
+body {
+ color: var(--page-foreground-color);
+ background-color: var(--page-background-color);
+ font-size: var(--page-font-size);
+}
+
+body, table, div, p, dl, #nav-tree .label, .title, .sm-dox a, .sm-dox a:hover, .sm-dox a:focus, #projectname, .SelectItem, #MSearchField, .navpath li.navelem a, .navpath li.navelem a:hover {
+ font-family: var(--font-family);
+}
+
+h1, h2, h3, h4, h5 {
+ margin-top: .9em;
+ font-weight: 600;
+ line-height: initial;
+}
+
+p, div, table, dl {
+ font-size: var(--page-font-size);
+}
+
+a:link, a:visited, a:hover, a:focus, a:active {
+ color: var(--primary-color) !important;
+ font-weight: 500;
+}
+
+a.anchor {
+ scroll-margin-top: var(--spacing-large);
+}
+
+/*
+Title and top navigation
+ */
+
+#top {
+ background: var(--header-background);
+ border-bottom: 1px solid var(--separator-color);
+}
+
+@media screen and (min-width: 768px) {
+ #top {
+ display: flex;
+ flex-wrap: wrap;
+ justify-content: space-between;
+ align-items: center;
+ }
+}
+
+#main-nav {
+ flex-grow: 5;
+ padding: var(--spacing-small) var(--spacing-medium);
+}
+
+#titlearea {
+ width: auto;
+ padding: var(--spacing-medium) var(--spacing-large);
+ background: none;
+ color: var(--header-foreground);
+ border-bottom: none;
+}
+
+@media screen and (max-width: 767px) {
+ #titlearea {
+ padding-bottom: var(--spacing-small);
+ }
+}
+
+#titlearea table tbody tr {
+ height: auto !important;
+}
+
+#projectname {
+ font-size: var(--title-font-size);
+ font-weight: 600;
+}
+
+#projectnumber {
+ font-family: inherit;
+ font-size: 60%;
+}
+
+#projectbrief {
+ font-family: inherit;
+ font-size: 80%;
+}
+
+#projectlogo {
+ vertical-align: middle;
+}
+
+#projectlogo img {
+ max-height: calc(var(--title-font-size) * 2);
+ margin-right: var(--spacing-small);
+}
+
+.sm-dox, .tabs, .tabs2, .tabs3 {
+ background: none;
+ padding: 0;
+}
+
+.tabs, .tabs2, .tabs3 {
+ border-bottom: 1px solid var(--separator-color);
+ margin-bottom: -1px;
+}
+
+@media screen and (max-width: 767px) {
+ .sm-dox a span.sub-arrow {
+ background: var(--code-background);
+ }
+
+ #main-menu a.has-submenu span.sub-arrow {
+ color: var(--page-secondary-foreground-color);
+ border-radius: var(--border-radius-medium);
+ }
+
+ #main-menu a.has-submenu:hover span.sub-arrow {
+ color: var(--page-foreground-color);
+ }
+}
+
+@media screen and (min-width: 768px) {
+ .sm-dox li, .tablist li {
+ display: var(--menu-display);
+ }
+
+ .sm-dox a span.sub-arrow {
+ border-color: var(--header-foreground) transparent transparent transparent;
+ }
+
+ .sm-dox a:hover span.sub-arrow {
+ border-color: var(--menu-focus-foreground) transparent transparent transparent;
+ }
+
+ .sm-dox ul a span.sub-arrow {
+ border-color: transparent transparent transparent var(--page-foreground-color);
+ }
+
+ .sm-dox ul a:hover span.sub-arrow {
+ border-color: transparent transparent transparent var(--menu-focus-foreground);
+ }
+}
+
+.sm-dox ul {
+ background: var(--page-background-color);
+ box-shadow: var(--box-shadow);
+ border: 1px solid var(--separator-color);
+ border-radius: var(--border-radius-medium) !important;
+ padding: var(--spacing-small);
+ animation: ease-out 150ms slideInMenu;
+}
+
+@keyframes slideInMenu {
+ from {
+ opacity: 0;
+ transform: translate(0px, -2px);
+ }
+
+ to {
+ opacity: 1;
+ transform: translate(0px, 0px);
+ }
+}
+
+.sm-dox ul a {
+ color: var(--page-foreground-color) !important;
+ background: var(--page-background-color);
+ font-size: var(--navigation-font-size);
+}
+
+.sm-dox>li>ul:after {
+ border-bottom-color: var(--page-background-color) !important;
+}
+
+.sm-dox>li>ul:before {
+ border-bottom-color: var(--separator-color) !important;
+}
+
+.sm-dox ul a:hover, .sm-dox ul a:active, .sm-dox ul a:focus {
+ font-size: var(--navigation-font-size) !important;
+ color: var(--menu-focus-foreground) !important;
+ text-shadow: none;
+ background-color: var(--menu-focus-background);
+ border-radius: var(--border-radius-small) !important;
+}
+
+.sm-dox a, .sm-dox a:focus, .tablist li, .tablist li a, .tablist li.current a {
+ text-shadow: none;
+ background: transparent;
+ background-image: none !important;
+ color: var(--header-foreground) !important;
+ font-weight: normal;
+ font-size: var(--navigation-font-size);
+ border-radius: var(--border-radius-small) !important;
+}
+
+.sm-dox a:focus {
+ outline: auto;
+}
+
+.sm-dox a:hover, .sm-dox a:active, .tablist li a:hover {
+ text-shadow: none;
+ font-weight: normal;
+ background: var(--menu-focus-background);
+ color: var(--menu-focus-foreground) !important;
+ border-radius: var(--border-radius-small) !important;
+ font-size: var(--navigation-font-size);
+}
+
+.tablist li.current {
+ border-radius: var(--border-radius-small);
+ background: var(--menu-selected-background);
+}
+
+.tablist li {
+ margin: var(--spacing-small) 0 var(--spacing-small) var(--spacing-small);
+}
+
+.tablist a {
+ padding: 0 var(--spacing-large);
+}
+
+
+/*
+Search box
+ */
+
+#MSearchBox {
+ height: var(--searchbar-height);
+ background: var(--searchbar-background);
+ border-radius: var(--searchbar-border-radius);
+ border: 1px solid var(--separator-color);
+ overflow: hidden;
+ width: var(--searchbar-width);
+ position: relative;
+ box-shadow: none;
+ display: block;
+ margin-top: 0;
+}
+
+.left #MSearchSelect {
+ left: 0;
+ user-select: none;
+ padding-left: 8px;
+}
+
+.left #MSearchSelect[src$=".png"] {
+ padding-left: 0
+}
+
+.SelectionMark {
+ user-select: none;
+}
+
+.tabs .left #MSearchSelect {
+ padding-left: 0;
+}
+
+.tabs #MSearchBox {
+ position: absolute;
+ right: var(--spacing-medium);
+}
+
+@media screen and (max-width: 767px) {
+ .tabs #MSearchBox {
+ position: relative;
+ right: 0;
+ margin-left: var(--spacing-medium);
+ margin-top: 0;
+ }
+}
+
+#MSearchSelectWindow, #MSearchResultsWindow {
+ z-index: 9999;
+}
+
+#MSearchBox.MSearchBoxActive {
+ border-color: var(--primary-color);
+ box-shadow: inset 0 0 0 1px var(--primary-color);
+}
+
+#main-menu > li:last-child {
+ margin-right: 0;
+}
+
+@media screen and (max-width: 767px) {
+ #main-menu > li:last-child {
+ height: 50px;
+ }
+}
+
+#MSearchField {
+ font-size: var(--navigation-font-size);
+ height: calc(var(--searchbar-height) - 2px);
+ background: transparent;
+ width: calc(var(--searchbar-width) - 64px);
+}
+
+.MSearchBoxActive #MSearchField {
+ color: var(--searchbar-foreground);
+}
+
+#MSearchSelect {
+ top: calc(calc(var(--searchbar-height) / 2) - 11px);
+}
+
+#MSearchBox span.left, #MSearchBox span.right {
+ background: none;
+ background-image: none;
+}
+
+#MSearchBox span.right {
+ padding-top: calc(calc(var(--searchbar-height) / 2) - 12px);
+ position: absolute;
+ right: var(--spacing-small);
+}
+
+.tabs #MSearchBox span.right {
+ top: calc(calc(var(--searchbar-height) / 2) - 12px);
+}
+
+@keyframes slideInSearchResults {
+ from {
+ opacity: 0;
+ transform: translate(0, 15px);
+ }
+
+ to {
+ opacity: 1;
+ transform: translate(0, 20px);
+ }
+}
+
+#MSearchResultsWindow {
+ left: auto !important;
+ right: var(--spacing-medium);
+ border-radius: var(--border-radius-large);
+ border: 1px solid var(--separator-color);
+ transform: translate(0, 20px);
+ box-shadow: var(--box-shadow);
+ animation: ease-out 280ms slideInSearchResults;
+ background: var(--page-background-color);
+}
+
+iframe#MSearchResults {
+ margin: 4px;
+}
+
+iframe {
+ color-scheme: normal;
+}
+
+@media (prefers-color-scheme: dark) {
+ html:not(.light-mode) iframe#MSearchResults {
+ filter: invert() hue-rotate(180deg);
+ }
+}
+
+html.dark-mode iframe#MSearchResults {
+ filter: invert() hue-rotate(180deg);
+}
+
+#MSearchSelectWindow {
+ border: 1px solid var(--separator-color);
+ border-radius: var(--border-radius-medium);
+ box-shadow: var(--box-shadow);
+ background: var(--page-background-color);
+ padding-top: var(--spacing-small);
+ padding-bottom: var(--spacing-small);
+}
+
+#MSearchSelectWindow a.SelectItem {
+ font-size: var(--navigation-font-size);
+ line-height: var(--content-line-height);
+ margin: 0 var(--spacing-small);
+ border-radius: var(--border-radius-small);
+ color: var(--page-foreground-color) !important;
+ font-weight: normal;
+}
+
+#MSearchSelectWindow a.SelectItem:hover {
+ background: var(--menu-focus-background);
+ color: var(--menu-focus-foreground) !important;
+}
+
+@media screen and (max-width: 767px) {
+ #MSearchBox {
+ margin-top: var(--spacing-medium);
+ margin-bottom: var(--spacing-medium);
+ width: calc(100vw - 30px);
+ }
+
+ #main-menu > li:last-child {
+ float: none !important;
+ }
+
+ #MSearchField {
+ width: calc(100vw - 110px);
+ }
+
+ @keyframes slideInSearchResultsMobile {
+ from {
+ opacity: 0;
+ transform: translate(0, 15px);
+ }
+
+ to {
+ opacity: 1;
+ transform: translate(0, 20px);
+ }
+ }
+
+ #MSearchResultsWindow {
+ left: var(--spacing-medium) !important;
+ right: var(--spacing-medium);
+ overflow: auto;
+ transform: translate(0, 20px);
+ animation: ease-out 280ms slideInSearchResultsMobile;
+ }
+
+ /*
+ * Overwrites for fixing the searchbox on mobile in doxygen 1.9.2
+ */
+label.main-menu-btn ~ #searchBoxPos1 {
+ top: 3px !important;
+ right: 6px !important;
+ left: 45px;
+ display: flex;
+}
+
+label.main-menu-btn ~ #searchBoxPos1 > #MSearchBox {
+ margin-top: 0;
+ margin-bottom: 0;
+ flex-grow: 2;
+ float: left;
+}
+}
+
+/*
+Tree view
+ */
+
+#side-nav {
+ padding: 0 !important;
+ background: var(--side-nav-background);
+}
+
+@media screen and (max-width: 767px) {
+ #side-nav {
+ display: none;
+ }
+
+ #doc-content {
+ margin-left: 0 !important;
+ }
+}
+
+#nav-tree {
+ background: transparent;
+}
+
+#nav-tree .label {
+ font-size: var(--navigation-font-size);
+}
+
+#nav-tree .item {
+ height: var(--tree-item-height);
+ line-height: var(--tree-item-height);
+}
+
+#nav-sync {
+ bottom: 12px;
+ right: 12px;
+ top: auto !important;
+ user-select: none;
+}
+
+#nav-tree .selected {
+ text-shadow: none;
+ background-image: none;
+ background-color: transparent;
+ position: relative;
+}
+
+#nav-tree .selected::after {
+ content: "";
+ position: absolute;
+ top: 1px;
+ bottom: 1px;
+ left: 0;
+ width: 4px;
+ border-radius: 0 var(--border-radius-small) var(--border-radius-small) 0;
+ background: var(--primary-color);
+}
+
+
+#nav-tree a {
+ color: var(--side-nav-foreground) !important;
+ font-weight: normal;
+}
+
+#nav-tree a:focus {
+ outline-style: auto;
+}
+
+#nav-tree .arrow {
+ opacity: var(--side-nav-arrow-opacity);
+}
+
+.arrow {
+ color: inherit;
+ cursor: pointer;
+ font-size: 45%;
+ vertical-align: middle;
+ margin-right: 2px;
+ font-family: serif;
+ height: auto;
+ text-align: right;
+}
+
+#nav-tree div.item:hover .arrow, #nav-tree a:focus .arrow {
+ opacity: var(--side-nav-arrow-hover-opacity);
+}
+
+#nav-tree .selected a {
+ color: var(--primary-color) !important;
+ font-weight: bolder;
+ font-weight: 600;
+}
+
+.ui-resizable-e {
+ background: var(--separator-color);
+ width: 1px;
+}
+
+/*
+Contents
+ */
+
+div.header {
+ border-bottom: 1px solid var(--separator-color);
+ background-color: var(--page-background-color);
+ background-image: none;
+}
+
+div.contents, div.header .title, div.header .summary {
+ max-width: var(--content-maxwidth);
+}
+
+div.contents, div.header .title {
+ line-height: initial;
+ margin: calc(var(--spacing-medium) + .2em) auto var(--spacing-medium) auto;
+}
+
+div.header .summary {
+ margin: var(--spacing-medium) auto 0 auto;
+}
+
+div.headertitle {
+ padding: 0;
+}
+
+div.header .title {
+ font-weight: 600;
+ font-size: 210%;
+ padding: var(--spacing-medium) var(--spacing-large);
+ word-break: break-word;
+}
+
+div.header .summary {
+ width: auto;
+ display: block;
+ float: none;
+ padding: 0 var(--spacing-large);
+}
+
+td.memSeparator {
+ border-color: var(--separator-color);
+}
+
+span.mlabel {
+ background: var(--primary-color);
+ border: none;
+ padding: 4px 9px;
+ border-radius: 12px;
+ margin-right: var(--spacing-medium);
+}
+
+span.mlabel:last-of-type {
+ margin-right: 2px;
+}
+
+div.contents {
+ padding: 0 var(--spacing-large);
+}
+
+div.contents p, div.contents li {
+ line-height: var(--content-line-height);
+}
+
+div.contents div.dyncontent {
+ margin: var(--spacing-medium) 0;
+}
+
+@media (prefers-color-scheme: dark) {
+ html:not(.light-mode) div.contents div.dyncontent img,
+ html:not(.light-mode) div.contents center img,
+ html:not(.light-mode) div.contents table img,
+ html:not(.light-mode) div.contents div.dyncontent iframe,
+ html:not(.light-mode) div.contents center iframe,
+ html:not(.light-mode) div.contents table iframe {
+ filter: hue-rotate(180deg) invert();
+ }
+}
+
+html.dark-mode div.contents div.dyncontent img,
+html.dark-mode div.contents center img,
+html.dark-mode div.contents table img,
+html.dark-mode div.contents div.dyncontent iframe,
+html.dark-mode div.contents center iframe,
+html.dark-mode div.contents table iframe {
+ filter: hue-rotate(180deg) invert();
+}
+
+h2.groupheader {
+ border-bottom: 0px;
+ color: var(--page-foreground-color);
+ box-shadow:
+ 100px 0 var(--page-background-color),
+ -100px 0 var(--page-background-color),
+ 100px 0.75px var(--separator-color),
+ -100px 0.75px var(--separator-color),
+ 500px 0 var(--page-background-color),
+ -500px 0 var(--page-background-color),
+ 500px 0.75px var(--separator-color),
+ -500px 0.75px var(--separator-color),
+ 1500px 0 var(--page-background-color),
+ -1500px 0 var(--page-background-color),
+ 1500px 0.75px var(--separator-color),
+ -1500px 0.75px var(--separator-color),
+ 2000px 0 var(--page-background-color),
+ -2000px 0 var(--page-background-color),
+ 2000px 0.75px var(--separator-color),
+ -2000px 0.75px var(--separator-color);
+}
+
+blockquote {
+ margin: 0 var(--spacing-medium) 0 var(--spacing-medium);
+ padding: var(--spacing-small) var(--spacing-large);
+ background: var(--blockquote-background);
+ color: var(--blockquote-foreground);
+ border-left: 0;
+ overflow: visible;
+ border-radius: var(--border-radius-medium);
+ overflow: visible;
+ position: relative;
+}
+
+blockquote::before, blockquote::after {
+ font-weight: bold;
+ font-family: serif;
+ font-size: 360%;
+ opacity: .15;
+ position: absolute;
+}
+
+blockquote::before {
+ content: "“";
+ left: -10px;
+ top: 4px;
+}
+
+blockquote::after {
+ content: "”";
+ right: -8px;
+ bottom: -25px;
+}
+
+blockquote p {
+ margin: var(--spacing-small) 0 var(--spacing-medium) 0;
+}
+.paramname {
+ font-weight: 600;
+ color: var(--primary-dark-color);
+}
+
+.paramname > code {
+ border: 0;
+}
+
+table.params .paramname {
+ font-weight: 600;
+ font-family: var(--font-family-monospace);
+ font-size: var(--code-font-size);
+ padding-right: var(--spacing-small);
+}
+
+.glow {
+ text-shadow: 0 0 15px var(--primary-light-color) !important;
+}
+
+.alphachar a {
+ color: var(--page-foreground-color);
+}
+
+/*
+Table of Contents
+ */
+
+div.toc {
+ z-index: 10;
+ position: relative;
+ background-color: var(--toc-background);
+ border: 1px solid var(--separator-color);
+ border-radius: var(--border-radius-medium);
+ box-shadow: var(--box-shadow);
+ padding: 0 var(--spacing-large);
+ margin: 0 0 var(--spacing-medium) var(--spacing-medium);
+}
+
+div.toc h3 {
+ color: var(--toc-foreground);
+ font-size: var(--navigation-font-size);
+ margin: var(--spacing-large) 0;
+}
+
+div.toc li {
+ font-size: var(--navigation-font-size);
+ padding: 0;
+ background: none;
+}
+
+div.toc li:before {
+ content: '↓';
+ font-weight: 800;
+ font-family: var(--font-family);
+ margin-right: var(--spacing-small);
+ color: var(--toc-foreground);
+ opacity: .4;
+}
+
+div.toc ul li.level1 {
+ margin: 0;
+}
+
+div.toc ul li.level2, div.toc ul li.level3 {
+ margin-top: 0;
+}
+
+
+@media screen and (max-width: 767px) {
+ div.toc {
+ float: none;
+ width: auto;
+ margin: 0 0 var(--spacing-medium) 0;
+ }
+}
+
+/*
+Code & Fragments
+ */
+
+code, div.fragment, pre.fragment {
+ border-radius: var(--border-radius-small);
+ border: 1px solid var(--separator-color);
+ overflow: hidden;
+}
+
+code {
+ display: inline;
+ background: var(--code-background);
+ color: var(--code-foreground);
+ padding: 2px 6px;
+ word-break: break-word;
+}
+
+div.fragment, pre.fragment {
+ margin: var(--spacing-medium) 0;
+ padding: calc(var(--spacing-large) - (var(--spacing-large) / 6)) var(--spacing-large);
+ background: var(--fragment-background);
+ color: var(--fragment-foreground);
+ overflow-x: auto;
+}
+
+@media screen and (max-width: 767px) {
+ div.fragment, pre.fragment {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0;
+ border-right: 0;
+ }
+
+ .contents > div.fragment,
+ .textblock > div.fragment,
+ .textblock > pre.fragment,
+ .contents > .doxygen-awesome-fragment-wrapper > div.fragment,
+ .textblock > .doxygen-awesome-fragment-wrapper > div.fragment,
+ .textblock > .doxygen-awesome-fragment-wrapper > pre.fragment {
+ margin: var(--spacing-medium) calc(0px - var(--spacing-large));
+ border-radius: 0;
+ border-left: 0;
+ }
+
+ .textblock li > .fragment,
+ .textblock li > .doxygen-awesome-fragment-wrapper > .fragment {
+ margin: var(--spacing-medium) calc(0px - var(--spacing-large));
+ }
+
+ .memdoc li > .fragment,
+ .memdoc li > .doxygen-awesome-fragment-wrapper > .fragment {
+ margin: var(--spacing-medium) calc(0px - var(--spacing-medium));
+ }
+
+ .textblock ul, .memdoc ul {
+ overflow: initial;
+ }
+
+ .memdoc > div.fragment,
+ .memdoc > pre.fragment,
+ dl dd > div.fragment,
+ dl dd pre.fragment,
+ .memdoc > .doxygen-awesome-fragment-wrapper > div.fragment,
+ .memdoc > .doxygen-awesome-fragment-wrapper > pre.fragment,
+ dl dd > .doxygen-awesome-fragment-wrapper > div.fragment,
+ dl dd .doxygen-awesome-fragment-wrapper > pre.fragment {
+ margin: var(--spacing-medium) calc(0px - var(--spacing-medium));
+ border-radius: 0;
+ border-left: 0;
+ }
+}
+
+code, code a, pre.fragment, div.fragment, div.fragment .line, div.fragment span, div.fragment .line a, div.fragment .line span {
+ font-family: var(--font-family-monospace);
+ font-size: var(--code-font-size) !important;
+}
+
+div.line:after {
+ margin-right: var(--spacing-medium);
+}
+
+div.fragment .line, pre.fragment {
+ white-space: pre;
+ word-wrap: initial;
+ line-height: var(--fragment-lineheight);
+}
+
+div.fragment span.keyword {
+ color: var(--fragment-keyword);
+}
+
+div.fragment span.keywordtype {
+ color: var(--fragment-keywordtype);
+}
+
+div.fragment span.keywordflow {
+ color: var(--fragment-keywordflow);
+}
+
+div.fragment span.stringliteral {
+ color: var(--fragment-token)
+}
+
+div.fragment span.comment {
+ color: var(--fragment-comment);
+}
+
+div.fragment a.code {
+ color: var(--fragment-link) !important;
+}
+
+div.fragment span.preprocessor {
+ color: var(--fragment-preprocessor);
+}
+
+div.fragment span.lineno {
+ display: inline-block;
+ width: 27px;
+ border-right: none;
+ background: var(--fragment-linenumber-background);
+ color: var(--fragment-linenumber-color);
+}
+
+div.fragment span.lineno a {
+ background: none;
+ color: var(--fragment-link) !important;
+}
+
+div.fragment .line:first-child .lineno {
+ box-shadow: -999999px 0px 0 999999px var(--fragment-linenumber-background), -999998px 0px 0 999999px var(--fragment-linenumber-border);
+}
+
+/*
+dl warning, attention, note, deprecated, bug, ...
+ */
+
+dl.bug dt a, dl.deprecated dt a, dl.todo dt a {
+ font-weight: bold !important;
+}
+
+dl.warning, dl.attention, dl.note, dl.deprecated, dl.bug, dl.invariant, dl.pre, dl.todo, dl.remark {
+ padding: var(--spacing-medium);
+ margin: var(--spacing-medium) 0;
+ color: var(--page-background-color);
+ overflow: hidden;
+ margin-left: 0;
+ border-radius: var(--border-radius-small);
+}
+
+dl.section dd {
+ margin-bottom: 2px;
+}
+
+dl.warning, dl.attention {
+ background: var(--warning-color);
+ border-left: 8px solid var(--warning-color-dark);
+ color: var(--warning-color-darker);
+}
+
+dl.warning dt, dl.attention dt {
+ color: var(--warning-color-dark);
+}
+
+dl.note, dl.remark {
+ background: var(--note-color);
+ border-left: 8px solid var(--note-color-dark);
+ color: var(--note-color-darker);
+}
+
+dl.note dt, dl.remark dt {
+ color: var(--note-color-dark);
+}
+
+dl.todo {
+ background: var(--todo-color);
+ border-left: 8px solid var(--todo-color-dark);
+ color: var(--todo-color-darker);
+}
+
+dl.todo dt {
+ color: var(--todo-color-dark);
+}
+
+dl.bug dt a {
+ color: var(--todo-color-dark) !important;
+}
+
+dl.bug {
+ background: var(--bug-color);
+ border-left: 8px solid var(--bug-color-dark);
+ color: var(--bug-color-darker);
+}
+
+dl.bug dt a {
+ color: var(--bug-color-dark) !important;
+}
+
+dl.deprecated {
+ background: var(--deprecated-color);
+ border-left: 8px solid var(--deprecated-color-dark);
+ color: var(--deprecated-color-darker);
+}
+
+dl.deprecated dt a {
+ color: var(--deprecated-color-dark) !important;
+}
+
+dl.section dd, dl.bug dd, dl.deprecated dd, dl.todo dd {
+ margin-inline-start: 0px;
+}
+
+dl.invariant, dl.pre {
+ background: var(--invariant-color);
+ border-left: 8px solid var(--invariant-color-dark);
+ color: var(--invariant-color-darker);
+}
+
+dl.invariant dt, dl.pre dt {
+ color: var(--invariant-color-dark);
+}
+
+/*
+memitem
+ */
+
+div.memdoc, div.memproto, h2.memtitle {
+ box-shadow: none;
+ background-image: none;
+ border: none;
+}
+
+div.memdoc {
+ padding: 0 var(--spacing-medium);
+ background: var(--page-background-color);
+}
+
+h2.memtitle, div.memitem {
+ border: 1px solid var(--separator-color);
+ box-shadow: var(--box-shadow);
+}
+
+h2.memtitle {
+ box-shadow: 0px var(--spacing-medium) 0 -1px var(--fragment-background), var(--box-shadow);
+}
+
+div.memitem {
+ transition: none;
+}
+
+div.memproto, h2.memtitle {
+ background: var(--fragment-background);
+ text-shadow: none;
+}
+
+h2.memtitle {
+ font-weight: 500;
+ font-size: var(--memtitle-font-size);
+ font-family: var(--font-family-monospace);
+ border-bottom: none;
+ border-top-left-radius: var(--border-radius-medium);
+ border-top-right-radius: var(--border-radius-medium);
+ word-break: break-all;
+ position: relative;
+}
+
+h2.memtitle:after {
+ content: "";
+ display: block;
+ background: var(--fragment-background);
+ height: var(--spacing-medium);
+ bottom: calc(0px - var(--spacing-medium));
+ left: 0;
+ right: -14px;
+ position: absolute;
+ border-top-right-radius: var(--border-radius-medium);
+}
+
+h2.memtitle > span.permalink {
+ font-size: inherit;
+}
+
+h2.memtitle > span.permalink > a {
+ text-decoration: none;
+ padding-left: 3px;
+ margin-right: -4px;
+ user-select: none;
+ display: inline-block;
+ margin-top: -6px;
+}
+
+h2.memtitle > span.permalink > a:hover {
+ color: var(--primary-dark-color) !important;
+}
+
+a:target + h2.memtitle, a:target + h2.memtitle + div.memitem {
+ border-color: var(--primary-light-color);
+}
+
+div.memitem {
+ border-top-right-radius: var(--border-radius-medium);
+ border-bottom-right-radius: var(--border-radius-medium);
+ border-bottom-left-radius: var(--border-radius-medium);
+ overflow: hidden;
+ display: block !important;
+}
+
+div.memdoc {
+ border-radius: 0;
+}
+
+div.memproto {
+ border-radius: 0 var(--border-radius-small) 0 0;
+ overflow: auto;
+ border-bottom: 1px solid var(--separator-color);
+ padding: var(--spacing-medium);
+ margin-bottom: -1px;
+}
+
+div.memtitle {
+ border-top-right-radius: var(--border-radius-medium);
+ border-top-left-radius: var(--border-radius-medium);
+}
+
+div.memproto table.memname {
+ font-family: var(--font-family-monospace);
+ color: var(--page-foreground-color);
+ font-size: var(--memname-font-size);
+}
+
+div.memproto div.memtemplate {
+ font-family: var(--font-family-monospace);
+ color: var(--primary-dark-color);
+ font-size: var(--memname-font-size);
+ margin-left: 2px;
+}
+
+table.mlabels, table.mlabels > tbody {
+ display: block;
+}
+
+td.mlabels-left {
+ width: auto;
+}
+
+td.mlabels-right {
+ margin-top: 3px;
+ position: sticky;
+ left: 0;
+}
+
+table.mlabels > tbody > tr:first-child {
+ display: flex;
+ justify-content: space-between;
+ flex-wrap: wrap;
+}
+
+.memname, .memitem span.mlabels {
+ margin: 0
+}
+
+/*
+reflist
+ */
+
+dl.reflist {
+ box-shadow: var(--box-shadow);
+ border-radius: var(--border-radius-medium);
+ border: 1px solid var(--separator-color);
+ overflow: hidden;
+ padding: 0;
+}
+
+
+dl.reflist dt, dl.reflist dd {
+ box-shadow: none;
+ text-shadow: none;
+ background-image: none;
+ border: none;
+ padding: 12px;
+}
+
+
+dl.reflist dt {
+ font-weight: 500;
+ border-radius: 0;
+ background: var(--code-background);
+ border-bottom: 1px solid var(--separator-color);
+ color: var(--page-foreground-color)
+}
+
+
+dl.reflist dd {
+ background: none;
+}
+
+/*
+Table
+ */
+
+.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) {
+ display: inline-block;
+ max-width: 100%;
+}
+
+.contents > table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname):not(.classindex) {
+ margin-left: calc(0px - var(--spacing-large));
+ margin-right: calc(0px - var(--spacing-large));
+ max-width: calc(100% + 2 * var(--spacing-large));
+}
+
+table.markdownTable, table.fieldtable {
+ border: none;
+ margin: var(--spacing-medium) 0;
+ box-shadow: 0 0 0 1px var(--separator-color);
+ border-radius: var(--border-radius-small);
+}
+
+table.fieldtable {
+ width: 100%;
+}
+
+th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone {
+ background: var(--tablehead-background);
+ color: var(--tablehead-foreground);
+ font-weight: 600;
+ font-size: var(--page-font-size);
+}
+
+th.markdownTableHeadLeft:first-child, th.markdownTableHeadRight:first-child, th.markdownTableHeadCenter:first-child, th.markdownTableHeadNone:first-child {
+ border-top-left-radius: var(--border-radius-small);
+}
+
+th.markdownTableHeadLeft:last-child, th.markdownTableHeadRight:last-child, th.markdownTableHeadCenter:last-child, th.markdownTableHeadNone:last-child {
+ border-top-right-radius: var(--border-radius-small);
+}
+
+table.markdownTable td, table.markdownTable th, table.fieldtable dt {
+ border: none;
+ border-right: 1px solid var(--separator-color);
+ padding: var(--spacing-small) var(--spacing-medium);
+}
+
+table.markdownTable td:last-child, table.markdownTable th:last-child, table.fieldtable dt:last-child {
+ border: none;
+}
+
+table.markdownTable tr, table.markdownTable tr {
+ border-bottom: 1px solid var(--separator-color);
+}
+
+table.markdownTable tr:last-child, table.markdownTable tr:last-child {
+ border-bottom: none;
+}
+
+table.fieldtable th {
+ font-size: var(--page-font-size);
+ font-weight: 600;
+ background-image: none;
+ background-color: var(--tablehead-background);
+ color: var(--tablehead-foreground);
+ border-bottom: 1px solid var(--separator-color);
+}
+
+.fieldtable td.fieldtype, .fieldtable td.fieldname {
+ border-bottom: 1px solid var(--separator-color);
+ border-right: 1px solid var(--separator-color);
+}
+
+.fieldtable td.fielddoc {
+ border-bottom: 1px solid var(--separator-color);
+}
+
+.memberdecls td.glow, .fieldtable tr.glow {
+ background-color: var(--primary-light-color);
+ box-shadow: 0 0 15px var(--primary-light-color);
+}
+
+table.memberdecls {
+ display: block;
+}
+
+table.memberdecls tr[class^='memitem'] {
+ font-family: var(--font-family-monospace);
+ font-size: var(--code-font-size);
+}
+
+table.memberdecls tr[class^='memitem'] .memTemplParams {
+ font-family: var(--font-family-monospace);
+ font-size: var(--code-font-size);
+ color: var(--primary-dark-color);
+}
+
+table.memberdecls .memItemLeft,
+table.memberdecls .memItemRight,
+table.memberdecls .memTemplItemLeft,
+table.memberdecls .memTemplItemRight,
+table.memberdecls .memTemplParams {
+ transition: none;
+ padding-top: var(--spacing-small);
+ padding-bottom: var(--spacing-small);
+ border-top: 1px solid var(--separator-color);
+ border-bottom: 1px solid var(--separator-color);
+ background-color: var(--fragment-background);
+}
+
+table.memberdecls .memTemplItemLeft,
+table.memberdecls .memTemplItemRight {
+ padding-top: 2px;
+}
+
+table.memberdecls .memTemplParams {
+ border-bottom: 0;
+ border-left: 1px solid var(--separator-color);
+ border-right: 1px solid var(--separator-color);
+ border-radius: var(--border-radius-small) var(--border-radius-small) 0 0;
+ padding-bottom: 0;
+}
+
+table.memberdecls .memTemplItemLeft {
+ border-radius: 0 0 0 var(--border-radius-small);
+ border-left: 1px solid var(--separator-color);
+ border-top: 0;
+}
+
+table.memberdecls .memTemplItemRight {
+ border-radius: 0 0 var(--border-radius-small) 0;
+ border-right: 1px solid var(--separator-color);
+ border-top: 0;
+}
+
+table.memberdecls .memItemLeft {
+ border-radius: var(--border-radius-small) 0 0 var(--border-radius-small);
+ border-left: 1px solid var(--separator-color);
+ padding-left: var(--spacing-medium);
+ padding-right: 0;
+}
+
+table.memberdecls .memItemRight {
+ border-radius: 0 var(--border-radius-small) var(--border-radius-small) 0;
+ border-right: 1px solid var(--separator-color);
+ padding-right: var(--spacing-medium);
+ padding-left: 0;
+
+}
+
+table.memberdecls .mdescLeft, table.memberdecls .mdescRight {
+ background: none;
+ color: var(--page-foreground-color);
+ padding: var(--spacing-small) 0;
+}
+
+table.memberdecls .memSeparator {
+ background: var(--page-background-color);
+ height: var(--spacing-large);
+ border: 0;
+ transition: none;
+}
+
+table.memberdecls .groupheader {
+ margin-bottom: var(--spacing-large);
+}
+
+table.memberdecls .inherit_header td {
+ padding: 0 0 var(--spacing-medium) 0;
+ text-indent: -12px;
+ line-height: 1.5em;
+ color: var(--page-secondary-foreground-color);
+}
+
+@media screen and (max-width: 767px) {
+
+ table.memberdecls .memItemLeft,
+ table.memberdecls .memItemRight,
+ table.memberdecls .mdescLeft,
+ table.memberdecls .mdescRight,
+ table.memberdecls .memTemplItemLeft,
+ table.memberdecls .memTemplItemRight,
+ table.memberdecls .memTemplParams {
+ display: block;
+ text-align: left;
+ padding-left: var(--spacing-large);
+ margin: 0 calc(0px - var(--spacing-large)) 0 calc(0px - var(--spacing-large));
+ border-right: none;
+ border-left: none;
+ border-radius: 0;
+ }
+
+ table.memberdecls .memItemLeft,
+ table.memberdecls .mdescLeft,
+ table.memberdecls .memTemplItemLeft {
+ border-bottom: 0;
+ padding-bottom: 0;
+ }
+
+ table.memberdecls .memTemplItemLeft {
+ padding-top: 0;
+ }
+
+ table.memberdecls .mdescLeft {
+ margin-top: calc(0px - var(--page-font-size));
+ }
+
+ table.memberdecls .memItemRight,
+ table.memberdecls .mdescRight,
+ table.memberdecls .memTemplItemRight {
+ border-top: 0;
+ padding-top: 0;
+ padding-right: var(--spacing-large);
+ overflow-x: auto;
+ }
+
+ table.memberdecls tr[class^='memitem']:not(.inherit) {
+ display: block;
+ width: calc(100vw - 2 * var(--spacing-large));
+ }
+
+ table.memberdecls .mdescRight {
+ color: var(--page-foreground-color);
+ }
+
+ table.memberdecls tr.inherit {
+ visibility: hidden;
+ }
+
+ table.memberdecls tr[style="display: table-row;"] {
+ display: block !important;
+ visibility: visible;
+ width: calc(100vw - 2 * var(--spacing-large));
+ animation: fade .5s;
+ }
+
+ @keyframes fade {
+ 0% {
+ opacity: 0;
+ max-height: 0;
+ }
+
+ 100% {
+ opacity: 1;
+ max-height: 200px;
+ }
+ }
+}
+
+
+/*
+Horizontal Rule
+ */
+
+hr {
+ margin-top: var(--spacing-large);
+ margin-bottom: var(--spacing-large);
+ height: 1px;
+ background-color: var(--separator-color);
+ border: 0;
+}
+
+.contents hr {
+ box-shadow: 100px 0 0 var(--separator-color),
+ -100px 0 0 var(--separator-color),
+ 500px 0 0 var(--separator-color),
+ -500px 0 0 var(--separator-color),
+ 1500px 0 0 var(--separator-color),
+ -1500px 0 0 var(--separator-color),
+ 2000px 0 0 var(--separator-color),
+ -2000px 0 0 var(--separator-color);
+}
+
+.contents img, .contents .center, .contents center, .contents div.image object {
+ max-width: 100%;
+ overflow: auto;
+}
+
+@media screen and (max-width: 767px) {
+ .contents .dyncontent > .center, .contents > center {
+ margin-left: calc(0px - var(--spacing-large));
+ margin-right: calc(0px - var(--spacing-large));
+ max-width: calc(100% + 2 * var(--spacing-large));
+ }
+}
+
+/*
+Directories
+ */
+div.directory {
+ border-top: 1px solid var(--separator-color);
+ border-bottom: 1px solid var(--separator-color);
+ width: auto;
+}
+
+table.directory {
+ font-family: var(--font-family);
+ font-size: var(--page-font-size);
+ font-weight: normal;
+ width: 100%;
+}
+
+table.directory td.entry {
+ padding: var(--spacing-small);
+}
+
+table.directory td.desc {
+ min-width: 250px;
+}
+
+table.directory tr.even {
+ background-color: var(--odd-color);
+}
+
+.icona {
+ width: auto;
+ height: auto;
+ margin: 0 var(--spacing-small);
+}
+
+.icon {
+ background: var(--primary-color);
+ width: 18px;
+ height: 18px;
+ line-height: 18px;
+}
+
+.iconfopen, .icondoc, .iconfclosed {
+ background-position: center;
+ margin-bottom: 0;
+}
+
+.icondoc {
+ filter: saturate(0.2);
+}
+
+@media screen and (max-width: 767px) {
+ div.directory {
+ margin-left: calc(0px - var(--spacing-large));
+ margin-right: calc(0px - var(--spacing-large));
+ }
+}
+
+@media (prefers-color-scheme: dark) {
+ html:not(.light-mode) .iconfopen, html:not(.light-mode) .iconfclosed {
+ filter: hue-rotate(180deg) invert();
+ }
+}
+
+html.dark-mode .iconfopen, html.dark-mode .iconfclosed {
+ filter: hue-rotate(180deg) invert();
+}
+
+/*
+Class list
+ */
+
+.classindex dl.odd {
+ background: var(--odd-color);
+ border-radius: var(--border-radius-small);
+}
+
+/*
+Class Index Doxygen 1.8
+ */
+
+table.classindex {
+ margin-left: 0;
+ margin-right: 0;
+ width: 100%;
+}
+
+table.classindex table div.ah {
+ background-image: none;
+ background-color: initial;
+ border-color: var(--separator-color);
+ color: var(--page-foreground-color);
+ box-shadow: var(--box-shadow);
+ border-radius: var(--border-radius-large);
+ padding: var(--spacing-small);
+}
+
+div.qindex {
+ background-color: var(--odd-color);
+ border-radius: var(--border-radius-small);
+ border: 1px solid var(--separator-color);
+ padding: var(--spacing-small) 0;
+}
+
+/*
+Footer and nav-path
+ */
+
+#nav-path {
+ width: 100%;
+}
+
+#nav-path ul {
+ background-image: none;
+ background: var(--page-background-color);
+ border: none;
+ border-top: 1px solid var(--separator-color);
+ border-bottom: 1px solid var(--separator-color);
+ border-bottom: 0;
+ box-shadow: 0 0.75px 0 var(--separator-color);
+ font-size: var(--navigation-font-size);
+}
+
+img.footer {
+ width: 60px;
+}
+
+.navpath li.footer {
+ color: var(--page-secondary-foreground-color);
+}
+
+address.footer {
+ color: var(--page-secondary-foreground-color);
+ margin-bottom: var(--spacing-large);
+}
+
+#nav-path li.navelem {
+ background-image: none;
+ display: flex;
+ align-items: center;
+}
+
+.navpath li.navelem a {
+ text-shadow: none;
+ display: inline-block;
+ color: var(--primary-color) !important;
+}
+
+.navpath li.navelem b {
+ color: var(--primary-dark-color);
+ font-weight: 500;
+}
+
+li.navelem {
+ padding: 0;
+ margin-left: -8px;
+}
+
+li.navelem:first-child {
+ margin-left: var(--spacing-large);
+}
+
+li.navelem:first-child:before {
+ display: none;
+}
+
+#nav-path li.navelem:after {
+ content: '';
+ border: 5px solid var(--page-background-color);
+ border-bottom-color: transparent;
+ border-right-color: transparent;
+ border-top-color: transparent;
+ transform: translateY(-1px) scaleY(4.2);
+ z-index: 10;
+ margin-left: 6px;
+}
+
+#nav-path li.navelem:before {
+ content: '';
+ border: 5px solid var(--separator-color);
+ border-bottom-color: transparent;
+ border-right-color: transparent;
+ border-top-color: transparent;
+ transform: translateY(-1px) scaleY(3.2);
+ margin-right: var(--spacing-small);
+}
+
+.navpath li.navelem a:hover {
+ color: var(--primary-color);
+}
+
+/*
+Scrollbars for Webkit
+ */
+
+#nav-tree::-webkit-scrollbar,
+div.fragment::-webkit-scrollbar,
+pre.fragment::-webkit-scrollbar,
+div.memproto::-webkit-scrollbar,
+.contents center::-webkit-scrollbar,
+.contents .center::-webkit-scrollbar,
+.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname)::-webkit-scrollbar {
+ width: calc(var(--webkit-scrollbar-size) + var(--webkit-scrollbar-padding) + var(--webkit-scrollbar-padding));
+ height: calc(var(--webkit-scrollbar-size) + var(--webkit-scrollbar-padding) + var(--webkit-scrollbar-padding));
+}
+
+#nav-tree::-webkit-scrollbar-thumb,
+div.fragment::-webkit-scrollbar-thumb,
+pre.fragment::-webkit-scrollbar-thumb,
+div.memproto::-webkit-scrollbar-thumb,
+.contents center::-webkit-scrollbar-thumb,
+.contents .center::-webkit-scrollbar-thumb,
+.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname)::-webkit-scrollbar-thumb {
+ background-color: transparent;
+ border: var(--webkit-scrollbar-padding) solid transparent;
+ border-radius: calc(var(--webkit-scrollbar-padding) + var(--webkit-scrollbar-padding));
+ background-clip: padding-box;
+}
+
+#nav-tree:hover::-webkit-scrollbar-thumb,
+div.fragment:hover::-webkit-scrollbar-thumb,
+pre.fragment:hover::-webkit-scrollbar-thumb,
+div.memproto:hover::-webkit-scrollbar-thumb,
+.contents center:hover::-webkit-scrollbar-thumb,
+.contents .center:hover::-webkit-scrollbar-thumb,
+.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname):hover::-webkit-scrollbar-thumb {
+ background-color: var(--webkit-scrollbar-color);
+}
+
+#nav-tree::-webkit-scrollbar-track,
+div.fragment::-webkit-scrollbar-track,
+pre.fragment::-webkit-scrollbar-track,
+div.memproto::-webkit-scrollbar-track,
+.contents center::-webkit-scrollbar-track,
+.contents .center::-webkit-scrollbar-track,
+.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname)::-webkit-scrollbar-track {
+ background: transparent;
+}
+
+#nav-tree::-webkit-scrollbar-corner {
+ background-color: var(--side-nav-background);
+}
+
+#nav-tree,
+div.fragment,
+pre.fragment,
+div.memproto,
+.contents center,
+.contents .center,
+.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) {
+ overflow-x: auto;
+ overflow-x: overlay;
+}
+
+#nav-tree {
+ overflow-x: auto;
+ overflow-y: auto;
+ overflow-y: overlay;
+}
+
+/*
+Scrollbars for Firefox
+ */
+
+#nav-tree,
+div.fragment,
+pre.fragment,
+div.memproto,
+.contents center,
+.contents .center,
+.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) {
+ scrollbar-width: thin;
+}
+
+/*
+Optional Dark mode toggle button
+ */
+
+doxygen-awesome-dark-mode-toggle {
+ display: inline-block;
+ margin: 0 0 0 var(--spacing-small);
+ padding: 0;
+ width: var(--searchbar-height);
+ height: var(--searchbar-height);
+ background: none;
+ border: none;
+ border-radius: var(--searchbar-height);
+ vertical-align: middle;
+ text-align: center;
+ line-height: var(--searchbar-height);
+ font-size: 22px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ user-select: none;
+ cursor: pointer;
+}
+
+doxygen-awesome-dark-mode-toggle > svg {
+ transition: transform .1s ease-in-out;
+}
+
+doxygen-awesome-dark-mode-toggle:active > svg {
+ transform: scale(.5);
+}
+
+doxygen-awesome-dark-mode-toggle:hover {
+ background-color: rgba(0,0,0,.03);
+}
+
+html.dark-mode doxygen-awesome-dark-mode-toggle:hover {
+ background-color: rgba(0,0,0,.18);
+}
+
+/*
+Optional fragment copy button
+ */
+.doxygen-awesome-fragment-wrapper {
+ position: relative;
+}
+
+doxygen-awesome-fragment-copy-button {
+ opacity: 0;
+ background: var(--fragment-background);
+ width: 28px;
+ height: 28px;
+ position: absolute;
+ right: calc(var(--spacing-large) - (var(--spacing-large) / 2.5));
+ top: calc(var(--spacing-large) - (var(--spacing-large) / 2.5));
+ border: 1px solid var(--fragment-foreground);
+ cursor: pointer;
+ border-radius: var(--border-radius-small);
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
+
+.doxygen-awesome-fragment-wrapper:hover doxygen-awesome-fragment-copy-button, doxygen-awesome-fragment-copy-button.success {
+ opacity: .28;
+}
+
+doxygen-awesome-fragment-copy-button:hover, doxygen-awesome-fragment-copy-button.success {
+ opacity: 1 !important;
+}
+
+doxygen-awesome-fragment-copy-button:active:not([class~=success]) svg {
+ transform: scale(.91);
+}
+
+doxygen-awesome-fragment-copy-button svg {
+ fill: var(--fragment-foreground);
+ width: 18px;
+ height: 18px;
+}
+
+doxygen-awesome-fragment-copy-button.success svg {
+ fill: rgb(14, 168, 14);
+}
+
+doxygen-awesome-fragment-copy-button.success {
+ border-color: rgb(14, 168, 14);
+}
+
+@media screen and (max-width: 767px) {
+ .textblock > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button,
+ .textblock li > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button,
+ .memdoc li > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button,
+ .memdoc > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button,
+ dl dd > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button {
+ right: 0;
+ }
+}
+
+/*
+Optional paragraph link button
+ */
+
+a.anchorlink {
+ font-size: 90%;
+ margin-left: var(--spacing-small);
+ color: var(--page-foreground-color) !important;
+ text-decoration: none;
+ opacity: .15;
+ display: none;
+ transition: opacity .1s ease-in-out, color .1s ease-in-out;
+}
+
+a.anchorlink svg {
+ fill: var(--page-foreground-color);
+}
+
+h3 a.anchorlink svg, h4 a.anchorlink svg {
+ margin-bottom: -3px;
+ margin-top: -4px;
+}
+
+a.anchorlink:hover {
+ opacity: .45;
+}
+
+h2:hover a.anchorlink, h1:hover a.anchorlink, h3:hover a.anchorlink, h4:hover a.anchorlink {
+ display: inline-block;
+}
diff --git a/docs/doxygen.conf b/docs/doxygen.conf
new file mode 100644
index 0000000..1d6bf27
--- /dev/null
+++ b/docs/doxygen.conf
@@ -0,0 +1,2738 @@
+# Doxyfile 1.9.4
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project.
+#
+# All text after a double hash (##) is considered a comment and is placed in
+# front of the TAG it is preceding.
+#
+# All text after a single hash (#) is considered a comment and will be ignored.
+# The format is:
+# TAG = value [value, ...]
+# For lists, items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (\" \").
+#
+# Note:
+#
+# Use doxygen to compare the used configuration file with the template
+# configuration file:
+# doxygen -x [configFile]
+# Use doxygen to compare the used configuration file with the template
+# configuration file without replacing the environment variables:
+# doxygen -x_noenv [configFile]
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# This tag specifies the encoding used for all characters in the configuration
+# file that follow. The default is UTF-8 which is also the encoding used for all
+# text before the first occurrence of this tag. Doxygen uses libiconv (or the
+# iconv built into libc) for the transcoding. See
+# https://www.gnu.org/software/libiconv/ for the list of possible encodings.
+# The default value is: UTF-8.
+
+DOXYFILE_ENCODING = UTF-8
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by
+# double-quotes, unless you are using Doxywizard) that should identify the
+# project for which the documentation is generated. This name is used in the
+# title of most generated pages and in a few other places.
+# The default value is: My Project.
+
+PROJECT_NAME = copyjit
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
+# could be handy for archiving the generated documentation or if some version
+# control system is used.
+
+PROJECT_NUMBER =
+
+# Using the PROJECT_BRIEF tag one can provide an optional one line description
+# for a project that appears at the top of each page and should give viewer a
+# quick idea about the purpose of the project. Keep the description short.
+
+PROJECT_BRIEF =
+
+# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
+# in the documentation. The maximum height of the logo should not exceed 55
+# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy
+# the logo to the output directory.
+
+PROJECT_LOGO =
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
+# into which the generated documentation will be written. If a relative path is
+# entered, it will be relative to the location where doxygen was started. If
+# left blank the current directory will be used.
+
+OUTPUT_DIRECTORY = docs/output
+
+# If the CREATE_SUBDIRS tag is set to YES then doxygen will create up to 4096
+# sub-directories (in 2 levels) under the output directory of each output format
+# and will distribute the generated files over these directories. Enabling this
+# option can be useful when feeding doxygen a huge amount of source files, where
+# putting all generated files in the same directory would otherwise causes
+# performance problems for the file system. Adapt CREATE_SUBDIRS_LEVEL to
+# control the number of sub-directories.
+# The default value is: NO.
+
+CREATE_SUBDIRS = NO
+
+# Controls the number of sub-directories that will be created when
+# CREATE_SUBDIRS tag is set to YES. Level 0 represents 16 directories, and every
+# level increment doubles the number of directories, resulting in 4096
+# directories at level 8 which is the default and also the maximum value. The
+# sub-directories are organized in 2 levels, the first level always has a fixed
+# numer of 16 directories.
+# Minimum value: 0, maximum value: 8, default value: 8.
+# This tag requires that the tag CREATE_SUBDIRS is set to YES.
+
+CREATE_SUBDIRS_LEVEL = 8
+
+# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
+# characters to appear in the names of generated files. If set to NO, non-ASCII
+# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode
+# U+3044.
+# The default value is: NO.
+
+ALLOW_UNICODE_NAMES = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Bulgarian,
+# Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, English
+# (United States), Esperanto, Farsi (Persian), Finnish, French, German, Greek,
+# Hindi, Hungarian, Indonesian, Italian, Japanese, Japanese-en (Japanese with
+# English messages), Korean, Korean-en (Korean with English messages), Latvian,
+# Lithuanian, Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese,
+# Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish,
+# Swedish, Turkish, Ukrainian and Vietnamese.
+# The default value is: English.
+
+OUTPUT_LANGUAGE = English
+
+# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member
+# descriptions after the members that are listed in the file and class
+# documentation (similar to Javadoc). Set to NO to disable this.
+# The default value is: YES.
+
+BRIEF_MEMBER_DESC = YES
+
+# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief
+# description of a member or function before the detailed description
+#
+# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+# The default value is: YES.
+
+REPEAT_BRIEF = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator that is
+# used to form the text in various listings. Each string in this list, if found
+# as the leading text of the brief description, will be stripped from the text
+# and the result, after processing the whole list, is used as the annotated
+# text. Otherwise, the brief description is used as-is. If left blank, the
+# following values are used ($name is automatically replaced with the name of
+# the entity):The $name class, The $name widget, The $name file, is, provides,
+# specifies, contains, represents, a, an and the.
+
+ABBREVIATE_BRIEF = "The $name class" \
+ "The $name widget" \
+ "The $name file" \
+ is \
+ provides \
+ specifies \
+ contains \
+ represents \
+ a \
+ an \
+ the
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# doxygen will generate a detailed section even if there is only a brief
+# description.
+# The default value is: NO.
+
+ALWAYS_DETAILED_SEC = YES
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
+# operators of the base classes will not be shown.
+# The default value is: NO.
+
+INLINE_INHERITED_MEMB = NO
+
+# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path
+# before files name in the file list and in the header files. If set to NO the
+# shortest path that makes the file name unique will be used
+# The default value is: YES.
+
+FULL_PATH_NAMES = YES
+
+# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
+# Stripping is only done if one of the specified strings matches the left-hand
+# part of the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the path to
+# strip.
+#
+# Note that you can specify absolute paths here, but also relative paths, which
+# will be relative from the directory where doxygen is started.
+# This tag requires that the tag FULL_PATH_NAMES is set to YES.
+
+STRIP_FROM_PATH =
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
+# path mentioned in the documentation of a class, which tells the reader which
+# header file to include in order to use a class. If left blank only the name of
+# the header file containing the class definition is used. Otherwise one should
+# specify the list of include paths that are normally passed to the compiler
+# using the -I flag.
+
+STRIP_FROM_INC_PATH =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
+# less readable) file names. This can be useful is your file systems doesn't
+# support long names like on DOS, Mac, or CD-ROM.
+# The default value is: NO.
+
+SHORT_NAMES = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the
+# first line (until the first dot) of a Javadoc-style comment as the brief
+# description. If set to NO, the Javadoc-style will behave just like regular Qt-
+# style comments (thus requiring an explicit @brief command for a brief
+# description.)
+# The default value is: NO.
+
+JAVADOC_AUTOBRIEF = YES
+
+# If the JAVADOC_BANNER tag is set to YES then doxygen will interpret a line
+# such as
+# /***************
+# as being the beginning of a Javadoc-style comment "banner". If set to NO, the
+# Javadoc-style will behave just like regular comments and it will not be
+# interpreted by doxygen.
+# The default value is: NO.
+
+JAVADOC_BANNER = NO
+
+# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
+# line (until the first dot) of a Qt-style comment as the brief description. If
+# set to NO, the Qt-style will behave just like regular Qt-style comments (thus
+# requiring an explicit \brief command for a brief description.)
+# The default value is: NO.
+
+QT_AUTOBRIEF = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a
+# multi-line C++ special comment block (i.e. a block of //! or /// comments) as
+# a brief description. This used to be the default behavior. The new default is
+# to treat a multi-line C++ comment block as a detailed description. Set this
+# tag to YES if you prefer the old behavior instead.
+#
+# Note that setting this tag to YES also means that rational rose comments are
+# not recognized any more.
+# The default value is: NO.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# By default Python docstrings are displayed as preformatted text and doxygen's
+# special commands cannot be used. By setting PYTHON_DOCSTRING to NO the
+# doxygen's special commands can be used and the contents of the docstring
+# documentation blocks is shown as doxygen documentation.
+# The default value is: YES.
+
+PYTHON_DOCSTRING = YES
+
+# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
+# documentation from any documented member that it re-implements.
+# The default value is: YES.
+
+INHERIT_DOCS = YES
+
+# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new
+# page for each member. If set to NO, the documentation of a member will be part
+# of the file/class/namespace that contains it.
+# The default value is: NO.
+
+SEPARATE_MEMBER_PAGES = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen
+# uses this value to replace tabs by spaces in code fragments.
+# Minimum value: 1, maximum value: 16, default value: 4.
+
+TAB_SIZE = 4
+
+# This tag can be used to specify a number of aliases that act as commands in
+# the documentation. An alias has the form:
+# name=value
+# For example adding
+# "sideeffect=@par Side Effects:^^"
+# will allow you to put the command \sideeffect (or @sideeffect) in the
+# documentation, which will result in a user-defined paragraph with heading
+# "Side Effects:". Note that you cannot put \n's in the value part of an alias
+# to insert newlines (in the resulting output). You can put ^^ in the value part
+# of an alias to insert a newline as if a physical newline was in the original
+# file. When you need a literal { or } or , in the value part of an alias you
+# have to escape them by means of a backslash (\), this can lead to conflicts
+# with the commands \{ and \} for these it is advised to use the version @{ and
+# @} or use a double escape (\\{ and \\})
+
+ALIASES = "global=\warning Global variable.^^" \
+ "sideeffects=\warning Expression is evaluated multiple times.^^"
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+# only. Doxygen will then generate output that is more tailored for C. For
+# instance, some of the names that are used will be different. The list of all
+# members will be omitted, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_FOR_C = YES
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
+# Python sources only. Doxygen will then generate output that is more tailored
+# for that language. For instance, namespaces will be presented as packages,
+# qualified scopes will look different, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_JAVA = NO
+
+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+# sources. Doxygen will then generate output that is tailored for Fortran.
+# The default value is: NO.
+
+OPTIMIZE_FOR_FORTRAN = NO
+
+# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+# sources. Doxygen will then generate output that is tailored for VHDL.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_VHDL = NO
+
+# Set the OPTIMIZE_OUTPUT_SLICE tag to YES if your project consists of Slice
+# sources only. Doxygen will then generate output that is more tailored for that
+# language. For instance, namespaces will be presented as modules, types will be
+# separated into more groups, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_SLICE = NO
+
+# Doxygen selects the parser to use depending on the extension of the files it
+# parses. With this tag you can assign which parser to use for a given
+# extension. Doxygen has a built-in mapping, but you can override or extend it
+# using this tag. The format is ext=language, where ext is a file extension, and
+# language is one of the parsers supported by doxygen: IDL, Java, JavaScript,
+# Csharp (C#), C, C++, Lex, D, PHP, md (Markdown), Objective-C, Python, Slice,
+# VHDL, Fortran (fixed format Fortran: FortranFixed, free formatted Fortran:
+# FortranFree, unknown formatted Fortran: Fortran. In the later case the parser
+# tries to guess whether the code is fixed or free formatted code, this is the
+# default for Fortran type files). For instance to make doxygen treat .inc files
+# as Fortran files (default is PHP), and .f files as C (default is Fortran),
+# use: inc=Fortran f=C.
+#
+# Note: For files without extension you can use no_extension as a placeholder.
+#
+# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
+# the files are not read by doxygen. When specifying no_extension you should add
+# * to the FILE_PATTERNS.
+#
+# Note see also the list of default file extension mappings.
+
+EXTENSION_MAPPING =
+
+# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
+# according to the Markdown format, which allows for more readable
+# documentation. See https://daringfireball.net/projects/markdown/ for details.
+# The output of markdown processing is further processed by doxygen, so you can
+# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
+# case of backward compatibilities issues.
+# The default value is: YES.
+
+MARKDOWN_SUPPORT = YES
+
+# When the TOC_INCLUDE_HEADINGS tag is set to a non-zero value, all headings up
+# to that level are automatically included in the table of contents, even if
+# they do not have an id attribute.
+# Note: This feature currently applies only to Markdown headings.
+# Minimum value: 0, maximum value: 99, default value: 5.
+# This tag requires that the tag MARKDOWN_SUPPORT is set to YES.
+
+TOC_INCLUDE_HEADINGS = 5
+
+# When enabled doxygen tries to link words that correspond to documented
+# classes, or namespaces to their corresponding documentation. Such a link can
+# be prevented in individual cases by putting a % sign in front of the word or
+# globally by setting AUTOLINK_SUPPORT to NO.
+# The default value is: YES.
+
+AUTOLINK_SUPPORT = YES
+
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+# to include (a tag file for) the STL sources as input, then you should set this
+# tag to YES in order to let doxygen match functions declarations and
+# definitions whose arguments contain STL classes (e.g. func(std::string);
+# versus func(std::string) {}). This also make the inheritance and collaboration
+# diagrams that involve STL classes more complete and accurate.
+# The default value is: NO.
+
+BUILTIN_STL_SUPPORT = NO
+
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# enable parsing support.
+# The default value is: NO.
+
+CPP_CLI_SUPPORT = NO
+
+# Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
+# https://www.riverbankcomputing.com/software/sip/intro) sources only. Doxygen
+# will parse them like normal C++ but will assume all classes use public instead
+# of private inheritance when no explicit protection keyword is present.
+# The default value is: NO.
+
+SIP_SUPPORT = NO
+
+# For Microsoft's IDL there are propget and propput attributes to indicate
+# getter and setter methods for a property. Setting this option to YES will make
+# doxygen to replace the get and set methods by a property in the documentation.
+# This will only work if the methods are indeed getting or setting a simple
+# type. If this is not the case, or you want to show the methods anyway, you
+# should set this option to NO.
+# The default value is: YES.
+
+IDL_PROPERTY_SUPPORT = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+# The default value is: NO.
+
+DISTRIBUTE_GROUP_DOC = NO
+
+# If one adds a struct or class to a group and this option is enabled, then also
+# any nested class or struct is added to the same group. By default this option
+# is disabled and one has to add nested compounds explicitly via \ingroup.
+# The default value is: NO.
+
+GROUP_NESTED_COMPOUNDS = NO
+
+# Set the SUBGROUPING tag to YES to allow class member groups of the same type
+# (for instance a group of public functions) to be put as a subgroup of that
+# type (e.g. under the Public Functions section). Set it to NO to prevent
+# subgrouping. Alternatively, this can be done per class using the
+# \nosubgrouping command.
+# The default value is: YES.
+
+SUBGROUPING = YES
+
+# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions
+# are shown inside the group in which they are included (e.g. using \ingroup)
+# instead of on a separate page (for HTML and Man pages) or section (for LaTeX
+# and RTF).
+#
+# Note that this feature does not work in combination with
+# SEPARATE_MEMBER_PAGES.
+# The default value is: NO.
+
+INLINE_GROUPED_CLASSES = NO
+
+# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions
+# with only public data fields or simple typedef fields will be shown inline in
+# the documentation of the scope in which they are defined (i.e. file,
+# namespace, or group documentation), provided this scope is documented. If set
+# to NO, structs, classes, and unions are shown on a separate page (for HTML and
+# Man pages) or section (for LaTeX and RTF).
+# The default value is: NO.
+
+INLINE_SIMPLE_STRUCTS = NO
+
+# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
+# enum is documented as struct, union, or enum with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically be
+# useful for C code in case the coding convention dictates that all compound
+# types are typedef'ed and only the typedef is referenced, never the tag name.
+# The default value is: NO.
+
+TYPEDEF_HIDES_STRUCT = NO
+
+# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
+# cache is used to resolve symbols given their name and scope. Since this can be
+# an expensive process and often the same symbol appears multiple times in the
+# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
+# doxygen will become slower. If the cache is too large, memory is wasted. The
+# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
+# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
+# symbols. At the end of a run doxygen will report the cache usage and suggest
+# the optimal cache size from a speed point of view.
+# Minimum value: 0, maximum value: 9, default value: 0.
+
+LOOKUP_CACHE_SIZE = 0
+
+# The NUM_PROC_THREADS specifies the number of threads doxygen is allowed to use
+# during processing. When set to 0 doxygen will based this on the number of
+# cores available in the system. You can set it explicitly to a value larger
+# than 0 to get more control over the balance between CPU load and processing
+# speed. At this moment only the input processing can be done using multiple
+# threads. Since this is still an experimental feature the default is set to 1,
+# which effectively disables parallel processing. Please report any issues you
+# encounter. Generating dot graphs in parallel is controlled by the
+# DOT_NUM_THREADS setting.
+# Minimum value: 0, maximum value: 32, default value: 1.
+
+NUM_PROC_THREADS = 1
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in
+# documentation are documented, even if no documentation was available. Private
+# class members and static file members will be hidden unless the
+# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
+# Note: This will also disable the warnings about undocumented members that are
+# normally produced when WARNINGS is set to YES.
+# The default value is: NO.
+
+EXTRACT_ALL = NO
+
+# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will
+# be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PRIVATE = NO
+
+# If the EXTRACT_PRIV_VIRTUAL tag is set to YES, documented private virtual
+# methods of a class will be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PRIV_VIRTUAL = NO
+
+# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
+# scope will be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PACKAGE = NO
+
+# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be
+# included in the documentation.
+# The default value is: NO.
+
+EXTRACT_STATIC = YES
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined
+# locally in source files will be included in the documentation. If set to NO,
+# only classes defined in header files are included. Does not have any effect
+# for Java sources.
+# The default value is: YES.
+
+EXTRACT_LOCAL_CLASSES = YES
+
+# This flag is only useful for Objective-C code. If set to YES, local methods,
+# which are defined in the implementation section but not in the interface are
+# included in the documentation. If set to NO, only methods in the interface are
+# included.
+# The default value is: NO.
+
+EXTRACT_LOCAL_METHODS = NO
+
+# If this flag is set to YES, the members of anonymous namespaces will be
+# extracted and appear in the documentation as a namespace called
+# 'anonymous_namespace{file}', where file will be replaced with the base name of
+# the file that contains the anonymous namespace. By default anonymous namespace
+# are hidden.
+# The default value is: NO.
+
+EXTRACT_ANON_NSPACES = NO
+
+# If this flag is set to YES, the name of an unnamed parameter in a declaration
+# will be determined by the corresponding definition. By default unnamed
+# parameters remain unnamed in the output.
+# The default value is: YES.
+
+RESOLVE_UNNAMED_PARAMS = YES
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
+# undocumented members inside documented classes or files. If set to NO these
+# members will be included in the various overviews, but no documentation
+# section is generated. This option has no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
+HIDE_UNDOC_MEMBERS = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy. If set
+# to NO, these classes will be included in the various overviews. This option
+# has no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
+HIDE_UNDOC_CLASSES = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
+# declarations. If set to NO, these declarations will be included in the
+# documentation.
+# The default value is: NO.
+
+HIDE_FRIEND_COMPOUNDS = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
+# documentation blocks found inside the body of a function. If set to NO, these
+# blocks will be appended to the function's detailed documentation block.
+# The default value is: NO.
+
+HIDE_IN_BODY_DOCS = NO
+
+# The INTERNAL_DOCS tag determines if documentation that is typed after a
+# \internal command is included. If the tag is set to NO then the documentation
+# will be excluded. Set it to YES to include the internal documentation.
+# The default value is: NO.
+
+INTERNAL_DOCS = NO
+
+# With the correct setting of option CASE_SENSE_NAMES doxygen will better be
+# able to match the capabilities of the underlying filesystem. In case the
+# filesystem is case sensitive (i.e. it supports files in the same directory
+# whose names only differ in casing), the option must be set to YES to properly
+# deal with such files in case they appear in the input. For filesystems that
+# are not case sensitive the option should be set to NO to properly deal with
+# output files written for symbols that only differ in casing, such as for two
+# classes, one named CLASS and the other named Class, and to also support
+# references to files without having to specify the exact matching casing. On
+# Windows (including Cygwin) and MacOS, users should typically set this option
+# to NO, whereas on Linux or other Unix flavors it should typically be set to
+# YES.
+# The default value is: system dependent.
+
+CASE_SENSE_NAMES = YES
+
+# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
+# their full class and namespace scopes in the documentation. If set to YES, the
+# scope will be hidden.
+# The default value is: NO.
+
+HIDE_SCOPE_NAMES = NO
+
+# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will
+# append additional text to a page's title, such as Class Reference. If set to
+# YES the compound reference will be hidden.
+# The default value is: NO.
+
+HIDE_COMPOUND_REFERENCE= NO
+
+# If the SHOW_HEADERFILE tag is set to YES then the documentation for a class
+# will show which file needs to be included to use the class.
+# The default value is: YES.
+
+SHOW_HEADERFILE = YES
+
+# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
+# the files that are included by a file in the documentation of that file.
+# The default value is: YES.
+
+SHOW_INCLUDE_FILES = YES
+
+# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
+# grouped member an include statement to the documentation, telling the reader
+# which file to include in order to use the member.
+# The default value is: NO.
+
+SHOW_GROUPED_MEMB_INC = NO
+
+# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
+# files with double quotes in the documentation rather than with sharp brackets.
+# The default value is: NO.
+
+FORCE_LOCAL_INCLUDES = NO
+
+# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the
+# documentation for inline members.
+# The default value is: YES.
+
+INLINE_INFO = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
+# (detailed) documentation of file and class members alphabetically by member
+# name. If set to NO, the members will appear in declaration order.
+# The default value is: YES.
+
+SORT_MEMBER_DOCS = NO
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
+# descriptions of file, namespace and class members alphabetically by member
+# name. If set to NO, the members will appear in declaration order. Note that
+# this will also influence the order of the classes in the class list.
+# The default value is: NO.
+
+SORT_BRIEF_DOCS = NO
+
+# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
+# (brief and detailed) documentation of class members so that constructors and
+# destructors are listed first. If set to NO the constructors will appear in the
+# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.
+# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief
+# member documentation.
+# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting
+# detailed member documentation.
+# The default value is: NO.
+
+SORT_MEMBERS_CTORS_1ST = NO
+
+# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
+# of group names into alphabetical order. If set to NO the group names will
+# appear in their defined order.
+# The default value is: NO.
+
+SORT_GROUP_NAMES = NO
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by
+# fully-qualified names, including namespaces. If set to NO, the class list will
+# be sorted only by class name, not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the alphabetical
+# list.
+# The default value is: NO.
+
+SORT_BY_SCOPE_NAME = NO
+
+# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
+# type resolution of all parameters of a function it will reject a match between
+# the prototype and the implementation of a member function even if there is
+# only one candidate or it is obvious which candidate to choose by doing a
+# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still
+# accept a match between prototype and implementation in such cases.
+# The default value is: NO.
+
+STRICT_PROTO_MATCHING = NO
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo
+# list. This list is created by putting \todo commands in the documentation.
+# The default value is: YES.
+
+GENERATE_TODOLIST = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test
+# list. This list is created by putting \test commands in the documentation.
+# The default value is: YES.
+
+GENERATE_TESTLIST = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug
+# list. This list is created by putting \bug commands in the documentation.
+# The default value is: YES.
+
+GENERATE_BUGLIST = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO)
+# the deprecated list. This list is created by putting \deprecated commands in
+# the documentation.
+# The default value is: YES.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional documentation
+# sections, marked by \if <section_label> ... \endif and \cond <section_label>
+# ... \endcond blocks.
+
+ENABLED_SECTIONS =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
+# initial value of a variable or macro / define can have for it to appear in the
+# documentation. If the initializer consists of more lines than specified here
+# it will be hidden. Use a value of 0 to hide initializers completely. The
+# appearance of the value of individual variables and macros / defines can be
+# controlled using \showinitializer or \hideinitializer command in the
+# documentation regardless of this setting.
+# Minimum value: 0, maximum value: 10000, default value: 30.
+
+MAX_INITIALIZER_LINES = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at
+# the bottom of the documentation of classes and structs. If set to YES, the
+# list will mention the files that were used to generate the documentation.
+# The default value is: YES.
+
+SHOW_USED_FILES = YES
+
+# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This
+# will remove the Files entry from the Quick Index and from the Folder Tree View
+# (if specified).
+# The default value is: YES.
+
+SHOW_FILES = YES
+
+# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces
+# page. This will remove the Namespaces entry from the Quick Index and from the
+# Folder Tree View (if specified).
+# The default value is: YES.
+
+SHOW_NAMESPACES = YES
+
+# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+# doxygen should invoke to get the current version for each file (typically from
+# the version control system). Doxygen will invoke the program by executing (via
+# popen()) the command command input-file, where command is the value of the
+# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided
+# by doxygen. Whatever the program writes to standard output is used as the file
+# version. For an example see the documentation.
+
+FILE_VERSION_FILTER =
+
+# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
+# by doxygen. The layout file controls the global structure of the generated
+# output files in an output format independent way. To create the layout file
+# that represents doxygen's defaults, run doxygen with the -l option. You can
+# optionally specify a file name after the option, if omitted DoxygenLayout.xml
+# will be used as the name of the layout file. See also section "Changing the
+# layout of pages" for information.
+#
+# Note that if you run doxygen from a directory containing a file called
+# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
+# tag is left empty.
+
+LAYOUT_FILE =
+
+# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
+# the reference definitions. This must be a list of .bib files. The .bib
+# extension is automatically appended if omitted. This requires the bibtex tool
+# to be installed. See also https://en.wikipedia.org/wiki/BibTeX for more info.
+# For LaTeX the style of the bibliography can be controlled using
+# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
+# search path. See also \cite for info how to create references.
+
+CITE_BIB_FILES =
+
+#---------------------------------------------------------------------------
+# Configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated to
+# standard output by doxygen. If QUIET is set to YES this implies that the
+# messages are off.
+# The default value is: NO.
+
+QUIET = YES
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES
+# this implies that the warnings are on.
+#
+# Tip: Turn warnings on while writing the documentation.
+# The default value is: YES.
+
+WARNINGS = YES
+
+# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
+# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
+# will automatically be disabled.
+# The default value is: YES.
+
+WARN_IF_UNDOCUMENTED = YES
+
+# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as documenting some parameters in
+# a documented function twice, or documenting parameters that don't exist or
+# using markup commands wrongly.
+# The default value is: YES.
+
+WARN_IF_DOC_ERROR = YES
+
+# If WARN_IF_INCOMPLETE_DOC is set to YES, doxygen will warn about incomplete
+# function parameter documentation. If set to NO, doxygen will accept that some
+# parameters have no documentation without warning.
+# The default value is: YES.
+
+WARN_IF_INCOMPLETE_DOC = YES
+
+# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
+# are documented, but have no documentation for their parameters or return
+# value. If set to NO, doxygen will only warn about wrong parameter
+# documentation, but not about the absence of documentation. If EXTRACT_ALL is
+# set to YES then this flag will automatically be disabled. See also
+# WARN_IF_INCOMPLETE_DOC
+# The default value is: NO.
+
+WARN_NO_PARAMDOC = YES
+
+# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when
+# a warning is encountered. If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS
+# then doxygen will continue running as if WARN_AS_ERROR tag is set to NO, but
+# at the end of the doxygen process doxygen will return with a non-zero status.
+# Possible values are: NO, YES and FAIL_ON_WARNINGS.
+# The default value is: NO.
+
+WARN_AS_ERROR = NO
+
+# The WARN_FORMAT tag determines the format of the warning messages that doxygen
+# can produce. The string should contain the $file, $line, and $text tags, which
+# will be replaced by the file and line number from which the warning originated
+# and the warning text. Optionally the format may contain $version, which will
+# be replaced by the version of the file (if it could be obtained via
+# FILE_VERSION_FILTER)
+# See also: WARN_LINE_FORMAT
+# The default value is: $file:$line: $text.
+
+WARN_FORMAT = "$file:$line: $text"
+
+# In the $text part of the WARN_FORMAT command it is possible that a reference
+# to a more specific place is given. To make it easier to jump to this place
+# (outside of doxygen) the user can define a custom "cut" / "paste" string.
+# Example:
+# WARN_LINE_FORMAT = "'vi $file +$line'"
+# See also: WARN_FORMAT
+# The default value is: at line $line of file $file.
+
+WARN_LINE_FORMAT = "at line $line of file $file"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning and error
+# messages should be written. If left blank the output is written to standard
+# error (stderr). In case the file specified cannot be opened for writing the
+# warning and error messages are written to standard error. When as file - is
+# specified the warning and error messages are written to standard output
+# (stdout).
+
+WARN_LOGFILE =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag is used to specify the files and/or directories that contain
+# documented source files. You may enter file names like myfile.cpp or
+# directories like /usr/src/myproject. Separate the files or directories with
+# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
+# Note: If this tag is empty the current directory is searched.
+
+INPUT = src \
+ docs \
+ README.md
+
+# This tag can be used to specify the character encoding of the source files
+# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
+# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
+# documentation (see:
+# https://www.gnu.org/software/libiconv/) for the list of possible encodings.
+# The default value is: UTF-8.
+
+INPUT_ENCODING = UTF-8
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and
+# *.h) to filter out the source-files in the directories.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# read by doxygen.
+#
+# Note the list of default checked file patterns might differ from the list of
+# default file extension mappings.
+#
+# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp,
+# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h,
+# *.hh, *.hxx, *.hpp, *.h++, *.l, *.cs, *.d, *.php, *.php4, *.php5, *.phtml,
+# *.inc, *.m, *.markdown, *.md, *.mm, *.dox (to be provided as doxygen C
+# comment), *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, *.f18, *.f, *.for, *.vhd,
+# *.vhdl, *.ucf, *.qsf and *.ice.
+
+FILE_PATTERNS = *.c \
+ *.cc \
+ *.cxx \
+ *.cpp \
+ *.c++ \
+ *.java \
+ *.ii \
+ *.ixx \
+ *.ipp \
+ *.i++ \
+ *.inl \
+ *.idl \
+ *.ddl \
+ *.odl \
+ *.h \
+ *.hh \
+ *.hxx \
+ *.hpp \
+ *.h++ \
+ *.cs \
+ *.d \
+ *.php \
+ *.php4 \
+ *.php5 \
+ *.phtml \
+ *.inc \
+ *.m \
+ *.markdown \
+ *.md \
+ *.mm \
+ *.dox \
+ *.py \
+ *.pyw \
+ *.f90 \
+ *.f95 \
+ *.f03 \
+ *.f08 \
+ *.f18 \
+ *.f \
+ *.for \
+ *.vhd \
+ *.vhdl \
+ *.ucf \
+ *.qsf \
+ *.ice
+
+# The RECURSIVE tag can be used to specify whether or not subdirectories should
+# be searched for input files as well.
+# The default value is: NO.
+
+RECURSIVE = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should be
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+#
+# Note that relative paths are relative to the directory from which doxygen is
+# run.
+
+EXCLUDE =
+
+# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
+# directories that are symbolic links (a Unix file system feature) are excluded
+# from the input.
+# The default value is: NO.
+
+EXCLUDE_SYMLINKS = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories for example use the pattern */test/*
+
+EXCLUDE_PATTERNS = */kernel/gen/*
+
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the
+# output. The symbol name can be a fully qualified name, a word, or if the
+# wildcard * is used, a substring. Examples: ANamespace, AClass,
+# ANamespace::AClass, ANamespace::*Test
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories use the pattern */test/*
+
+EXCLUDE_SYMBOLS =
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or directories
+# that contain example code fragments that are included (see the \include
+# command).
+
+EXAMPLE_PATH =
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
+# *.h) to filter out the source-files in the directories. If left blank all
+# files are included.
+
+EXAMPLE_PATTERNS = *
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude commands
+# irrespective of the value of the RECURSIVE tag.
+# The default value is: NO.
+
+EXAMPLE_RECURSIVE = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or directories
+# that contain images that are to be included in the documentation (see the
+# \image command).
+
+IMAGE_PATH =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command:
+#
+# <filter> <input-file>
+#
+# where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the
+# name of an input file. Doxygen will then use the output that the filter
+# program writes to standard output. If FILTER_PATTERNS is specified, this tag
+# will be ignored.
+#
+# Note that the filter must not add or remove lines; it is applied before the
+# code is scanned, but not when the output code is generated. If lines are added
+# or removed, the anchors will not be placed correctly.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
+
+INPUT_FILTER =
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis. Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match. The filters are a list of the form: pattern=filter
+# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how
+# filters are used. If the FILTER_PATTERNS tag is empty or if none of the
+# patterns match the file name, INPUT_FILTER is applied.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
+
+FILTER_PATTERNS =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will also be used to filter the input files that are used for
+# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES).
+# The default value is: NO.
+
+FILTER_SOURCE_FILES = NO
+
+# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
+# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and
+# it is also possible to disable source filtering for a specific pattern using
+# *.ext= (so without naming a filter).
+# This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
+
+FILTER_SOURCE_PATTERNS =
+
+# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
+# is part of the input, its contents will be placed on the main page
+# (index.html). This can be useful if you have a project on for instance GitHub
+# and want to reuse the introduction page also for the doxygen output.
+
+USE_MDFILE_AS_MAINPAGE =
+
+#---------------------------------------------------------------------------
+# Configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will be
+# generated. Documented entities will be cross-referenced with these sources.
+#
+# Note: To get rid of all source code in the generated output, make sure that
+# also VERBATIM_HEADERS is set to NO.
+# The default value is: NO.
+
+SOURCE_BROWSER = YES
+
+# Setting the INLINE_SOURCES tag to YES will include the body of functions,
+# classes and enums directly into the documentation.
+# The default value is: NO.
+
+INLINE_SOURCES = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any
+# special comment blocks from generated source code fragments. Normal C, C++ and
+# Fortran comments will always remain visible.
+# The default value is: YES.
+
+STRIP_CODE_COMMENTS = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES then for each documented
+# entity all documented functions referencing it will be listed.
+# The default value is: NO.
+
+REFERENCED_BY_RELATION = YES
+
+# If the REFERENCES_RELATION tag is set to YES then for each documented function
+# all documented entities called/used by that function will be listed.
+# The default value is: NO.
+
+REFERENCES_RELATION = YES
+
+# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set
+# to YES then the hyperlinks from functions in REFERENCES_RELATION and
+# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will
+# link to the documentation.
+# The default value is: YES.
+
+REFERENCES_LINK_SOURCE = YES
+
+# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the
+# source code will show a tooltip with additional information such as prototype,
+# brief description and links to the definition and documentation. Since this
+# will make the HTML file larger and loading of large files a bit slower, you
+# can opt to disable this feature.
+# The default value is: YES.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
+SOURCE_TOOLTIPS = YES
+
+# If the USE_HTAGS tag is set to YES then the references to source code will
+# point to the HTML generated by the htags(1) tool instead of doxygen built-in
+# source browser. The htags tool is part of GNU's global source tagging system
+# (see https://www.gnu.org/software/global/global.html). You will need version
+# 4.8.6 or higher.
+#
+# To use it do the following:
+# - Install the latest version of global
+# - Enable SOURCE_BROWSER and USE_HTAGS in the configuration file
+# - Make sure the INPUT points to the root of the source tree
+# - Run doxygen as normal
+#
+# Doxygen will invoke htags (and that will in turn invoke gtags), so these
+# tools must be available from the command line (i.e. in the search path).
+#
+# The result: instead of the source browser generated by doxygen, the links to
+# source code will now point to the output of htags.
+# The default value is: NO.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
+USE_HTAGS = NO
+
+# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a
+# verbatim copy of the header file for each class for which an include is
+# specified. Set to NO to disable this.
+# See also: Section \class.
+# The default value is: YES.
+
+VERBATIM_HEADERS = YES
+
+# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the
+# clang parser (see:
+# http://clang.llvm.org/) for more accurate parsing at the cost of reduced
+# performance. This can be particularly helpful with template rich C++ code for
+# which doxygen's built-in parser lacks the necessary type information.
+# Note: The availability of this option depends on whether or not doxygen was
+# generated with the -Duse_libclang=ON option for CMake.
+# The default value is: NO.
+
+CLANG_ASSISTED_PARSING = NO
+
+# If the CLANG_ASSISTED_PARSING tag is set to YES and the CLANG_ADD_INC_PATHS
+# tag is set to YES then doxygen will add the directory of each input to the
+# include path.
+# The default value is: YES.
+# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.
+
+CLANG_ADD_INC_PATHS = NO
+
+# If clang assisted parsing is enabled you can provide the compiler with command
+# line options that you would normally use when invoking the compiler. Note that
+# the include paths will already be set by doxygen for the files and directories
+# specified with INPUT and INCLUDE_PATH.
+# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.
+
+CLANG_OPTIONS =
+
+# If clang assisted parsing is enabled you can provide the clang parser with the
+# path to the directory containing a file called compile_commands.json. This
+# file is the compilation database (see:
+# http://clang.llvm.org/docs/HowToSetupToolingForLLVM.html) containing the
+# options used when the source files were built. This is equivalent to
+# specifying the -p option to a clang tool, such as clang-check. These options
+# will then be passed to the parser. Any options specified with CLANG_OPTIONS
+# will be added as well.
+# Note: The availability of this option depends on whether or not doxygen was
+# generated with the -Duse_libclang=ON option for CMake.
+
+CLANG_DATABASE_PATH =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all
+# compounds will be generated. Enable this if the project contains a lot of
+# classes, structs, unions or interfaces.
+# The default value is: YES.
+
+ALPHABETICAL_INDEX = YES
+
+# In case all classes in a project start with a common prefix, all classes will
+# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
+# can be used to specify a prefix (or a list of prefixes) that should be ignored
+# while generating the index headers.
+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
+IGNORE_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output
+# The default value is: YES.
+
+GENERATE_HTML = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_OUTPUT = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each
+# generated HTML page (for example: .htm, .php, .asp).
+# The default value is: .html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FILE_EXTENSION = .html
+
+# The HTML_HEADER tag can be used to specify a user-defined HTML header file for
+# each generated HTML page. If the tag is left blank doxygen will generate a
+# standard header.
+#
+# To get valid HTML the header file that includes any scripts and style sheets
+# that doxygen needs, which is dependent on the configuration options used (e.g.
+# the setting GENERATE_TREEVIEW). It is highly recommended to start with a
+# default header using
+# doxygen -w html new_header.html new_footer.html new_stylesheet.css
+# YourConfigFile
+# and then modify the file new_header.html. See also section "Doxygen usage"
+# for information on how to generate the default header that doxygen normally
+# uses.
+# Note: The header is subject to change so you typically have to regenerate the
+# default header when upgrading to a newer version of doxygen. For a description
+# of the possible markers and block names see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_HEADER =
+
+# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
+# generated HTML page. If the tag is left blank doxygen will generate a standard
+# footer. See HTML_HEADER for more information on how to generate a default
+# footer and what special commands can be used inside the footer. See also
+# section "Doxygen usage" for information on how to generate the default footer
+# that doxygen normally uses.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FOOTER =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
+# sheet that is used by each HTML page. It can be used to fine-tune the look of
+# the HTML output. If left blank doxygen will generate a default style sheet.
+# See also section "Doxygen usage" for information on how to generate the style
+# sheet that doxygen normally uses.
+# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as
+# it is more robust and this tag (HTML_STYLESHEET) will in the future become
+# obsolete.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_STYLESHEET =
+
+# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
+# cascading style sheets that are included after the standard style sheets
+# created by doxygen. Using this option one can overrule certain style aspects.
+# This is preferred over using HTML_STYLESHEET since it does not replace the
+# standard style sheet and is therefore more robust against future updates.
+# Doxygen will copy the style sheet files to the output directory.
+# Note: The order of the extra style sheet files is of importance (e.g. the last
+# style sheet in the list overrules the setting of the previous ones in the
+# list). For an example see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_STYLESHEET = docs/doxygen-kmi.css
+
+# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the HTML output directory. Note
+# that these files will be copied to the base HTML output directory. Use the
+# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
+# files. In the HTML_STYLESHEET file, use the file name only. Also note that the
+# files will be copied as-is; there are no commands or markers available.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_FILES =
+
+# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
+# will adjust the colors in the style sheet and background images according to
+# this color. Hue is specified as an angle on a color-wheel, see
+# https://en.wikipedia.org/wiki/Hue for more information. For instance the value
+# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
+# purple, and 360 is red again.
+# Minimum value: 0, maximum value: 359, default value: 220.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_HUE = 220
+
+# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors
+# in the HTML output. For a value of 0 the output will use gray-scales only. A
+# value of 255 will produce the most vivid colors.
+# Minimum value: 0, maximum value: 255, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_SAT = 100
+
+# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the
+# luminance component of the colors in the HTML output. Values below 100
+# gradually make the output lighter, whereas values above 100 make the output
+# darker. The value divided by 100 is the actual gamma applied, so 80 represents
+# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not
+# change the gamma.
+# Minimum value: 40, maximum value: 240, default value: 80.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_GAMMA = 80
+
+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+# page will contain the date and time when the page was generated. Setting this
+# to YES can help to show when doxygen was last run and thus if the
+# documentation is up to date.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_TIMESTAMP = NO
+
+# If the HTML_DYNAMIC_MENUS tag is set to YES then the generated HTML
+# documentation will contain a main index with vertical navigation menus that
+# are dynamically created via JavaScript. If disabled, the navigation index will
+# consists of multiple levels of tabs that are statically embedded in every HTML
+# page. Disable this option to support browsers that do not have JavaScript,
+# like the Qt help browser.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_DYNAMIC_MENUS = YES
+
+# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+# documentation will contain sections that can be hidden and shown after the
+# page has loaded.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_DYNAMIC_SECTIONS = NO
+
+# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
+# shown in the various tree structured indices initially; the user can expand
+# and collapse entries dynamically later on. Doxygen will expand the tree to
+# such a level that at most the specified number of entries are visible (unless
+# a fully collapsed tree already exceeds this amount). So setting the number of
+# entries 1 will produce a full collapsed tree by default. 0 is a special value
+# representing an infinite number of entries and will result in a full expanded
+# tree by default.
+# Minimum value: 0, maximum value: 9999, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_INDEX_NUM_ENTRIES = 100
+
+# If the GENERATE_DOCSET tag is set to YES, additional index files will be
+# generated that can be used as input for Apple's Xcode 3 integrated development
+# environment (see:
+# https://developer.apple.com/xcode/), introduced with OSX 10.5 (Leopard). To
+# create a documentation set, doxygen will generate a Makefile in the HTML
+# output directory. Running make will produce the docset in that directory and
+# running make install will install the docset in
+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
+# startup. See https://developer.apple.com/library/archive/featuredarticles/Doxy
+# genXcode/_index.html for more information.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_DOCSET = NO
+
+# This tag determines the name of the docset feed. A documentation feed provides
+# an umbrella under which multiple documentation sets from a single provider
+# (such as a company or product suite) can be grouped.
+# The default value is: Doxygen generated docs.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_FEEDNAME = "Doxygen generated docs"
+
+# This tag determines the URL of the docset feed. A documentation feed provides
+# an umbrella under which multiple documentation sets from a single provider
+# (such as a company or product suite) can be grouped.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_FEEDURL =
+
+# This tag specifies a string that should uniquely identify the documentation
+# set bundle. This should be a reverse domain-name style string, e.g.
+# com.mycompany.MyDocSet. Doxygen will append .docset to the name.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_BUNDLE_ID = org.doxygen.Project
+
+# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify
+# the documentation publisher. This should be a reverse domain-name style
+# string, e.g. com.mycompany.MyDocSet.documentation.
+# The default value is: org.doxygen.Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_ID = org.doxygen.Publisher
+
+# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+# The default value is: Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_NAME = Publisher
+
+# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
+# additional HTML index files: index.hhp, index.hhc, and index.hhk. The
+# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
+# on Windows. In the beginning of 2021 Microsoft took the original page, with
+# a.o. the download links, offline the HTML help workshop was already many years
+# in maintenance mode). You can download the HTML help workshop from the web
+# archives at Installation executable (see:
+# http://web.archive.org/web/20160201063255/http://download.microsoft.com/downlo
+# ad/0/A/9/0A939EF6-E31C-430F-A3DF-DFAE7960D564/htmlhelp.exe).
+#
+# The HTML Help Workshop contains a compiler that can convert all HTML output
+# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
+# files are now used as the Windows 98 help format, and will replace the old
+# Windows help format (.hlp) on all Windows platforms in the future. Compressed
+# HTML files also contain an index, a table of contents, and you can search for
+# words in the documentation. The HTML workshop also contains a viewer for
+# compressed HTML files.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_HTMLHELP = NO
+
+# The CHM_FILE tag can be used to specify the file name of the resulting .chm
+# file. You can add a path in front of the file if the result should not be
+# written to the html output directory.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_FILE =
+
+# The HHC_LOCATION tag can be used to specify the location (absolute path
+# including file name) of the HTML help compiler (hhc.exe). If non-empty,
+# doxygen will try to run the HTML help compiler on the generated index.hhp.
+# The file has to be specified with full path.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+HHC_LOCATION =
+
+# The GENERATE_CHI flag controls if a separate .chi index file is generated
+# (YES) or that it should be included in the main .chm file (NO).
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+GENERATE_CHI = NO
+
+# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc)
+# and project file content.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_INDEX_ENCODING =
+
+# The BINARY_TOC flag controls whether a binary table of contents is generated
+# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it
+# enables the Previous and Next buttons.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+BINARY_TOC = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members to
+# the table of contents of the HTML help documentation and to the tree view.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+TOC_EXPAND = NO
+
+# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
+# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that
+# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help
+# (.qch) of the generated HTML documentation.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_QHP = NO
+
+# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify
+# the file name of the resulting .qch file. The path specified is relative to
+# the HTML output folder.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QCH_FILE =
+
+# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
+# Project output. For more information please see Qt Help Project / Namespace
+# (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#namespace).
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_NAMESPACE = org.doxygen.Project
+
+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
+# Help Project output. For more information please see Qt Help Project / Virtual
+# Folders (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#virtual-folders).
+# The default value is: doc.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_VIRTUAL_FOLDER = doc
+
+# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
+# filter to add. For more information please see Qt Help Project / Custom
+# Filters (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_CUST_FILTER_NAME =
+
+# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
+# custom filter to add. For more information please see Qt Help Project / Custom
+# Filters (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_CUST_FILTER_ATTRS =
+
+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
+# project's filter section matches. Qt Help Project / Filter Attributes (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#filter-attributes).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_SECT_FILTER_ATTRS =
+
+# The QHG_LOCATION tag can be used to specify the location (absolute path
+# including file name) of Qt's qhelpgenerator. If non-empty doxygen will try to
+# run qhelpgenerator on the generated .qhp file.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHG_LOCATION =
+
+# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
+# generated, together with the HTML files, they form an Eclipse help plugin. To
+# install this plugin and make it available under the help contents menu in
+# Eclipse, the contents of the directory containing the HTML and XML files needs
+# to be copied into the plugins directory of eclipse. The name of the directory
+# within the plugins directory should be the same as the ECLIPSE_DOC_ID value.
+# After copying Eclipse needs to be restarted before the help appears.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_ECLIPSEHELP = NO
+
+# A unique identifier for the Eclipse help plugin. When installing the plugin
+# the directory name containing the HTML and XML files should also have this
+# name. Each documentation set should have its own identifier.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES.
+
+ECLIPSE_DOC_ID = org.doxygen.Project
+
+# If you want full control over the layout of the generated HTML pages it might
+# be necessary to disable the index and replace it with your own. The
+# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top
+# of each HTML page. A value of NO enables the index and the value YES disables
+# it. Since the tabs in the index contain the same information as the navigation
+# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+DISABLE_INDEX = NO
+
+# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+# structure should be generated to display hierarchical information. If the tag
+# value is set to YES, a side panel will be generated containing a tree-like
+# index structure (just like the one that is generated for HTML Help). For this
+# to work a browser that supports JavaScript, DHTML, CSS and frames is required
+# (i.e. any modern browser). Windows users are probably better off using the
+# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can
+# further fine tune the look of the index (see "Fine-tuning the output"). As an
+# example, the default style sheet generated by doxygen has an example that
+# shows how to put an image at the root of the tree instead of the PROJECT_NAME.
+# Since the tree basically has the same information as the tab index, you could
+# consider setting DISABLE_INDEX to YES when enabling this option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_TREEVIEW = YES
+
+# When both GENERATE_TREEVIEW and DISABLE_INDEX are set to YES, then the
+# FULL_SIDEBAR option determines if the side bar is limited to only the treeview
+# area (value NO) or if it should extend to the full height of the window (value
+# YES). Setting this to YES gives a layout similar to
+# https://docs.readthedocs.io with more room for contents, but less room for the
+# project logo, title, and description. If either GENERATE_TREEVIEW or
+# DISABLE_INDEX is set to NO, this option has no effect.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FULL_SIDEBAR = NO
+
+# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
+# doxygen will group on one line in the generated HTML documentation.
+#
+# Note that a value of 0 will completely suppress the enum values from appearing
+# in the overview section.
+# Minimum value: 0, maximum value: 20, default value: 4.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+ENUM_VALUES_PER_LINE = 1
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used
+# to set the initial width (in pixels) of the frame in which the tree is shown.
+# Minimum value: 0, maximum value: 1500, default value: 250.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+TREEVIEW_WIDTH = 250
+
+# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to
+# external symbols imported via tag files in a separate window.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+EXT_LINKS_IN_WINDOW = NO
+
+# If the OBFUSCATE_EMAILS tag is set to YES, doxygen will obfuscate email
+# addresses.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+OBFUSCATE_EMAILS = YES
+
+# If the HTML_FORMULA_FORMAT option is set to svg, doxygen will use the pdf2svg
+# tool (see https://github.com/dawbarton/pdf2svg) or inkscape (see
+# https://inkscape.org) to generate formulas as SVG images instead of PNGs for
+# the HTML output. These images will generally look nicer at scaled resolutions.
+# Possible values are: png (the default) and svg (looks nicer but requires the
+# pdf2svg or inkscape tool).
+# The default value is: png.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FORMULA_FORMAT = png
+
+# Use this tag to change the font size of LaTeX formulas included as images in
+# the HTML documentation. When you change the font size after a successful
+# doxygen run you need to manually remove any form_*.png images from the HTML
+# output directory to force them to be regenerated.
+# Minimum value: 8, maximum value: 50, default value: 10.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FORMULA_FONTSIZE = 10
+
+# Use the FORMULA_TRANSPARENT tag to determine whether or not the images
+# generated for formulas are transparent PNGs. Transparent PNGs are not
+# supported properly for IE 6.0, but are supported on all modern browsers.
+#
+# Note that when changing this option you need to delete any form_*.png files in
+# the HTML output directory before the changes have effect.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FORMULA_TRANSPARENT = YES
+
+# The FORMULA_MACROFILE can contain LaTeX \newcommand and \renewcommand commands
+# to create new LaTeX commands to be used in formulas as building blocks. See
+# the section "Including formulas" for details.
+
+FORMULA_MACROFILE =
+
+# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
+# https://www.mathjax.org) which uses client side JavaScript for the rendering
+# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
+# installed or if you want to formulas look prettier in the HTML output. When
+# enabled you may also need to install MathJax separately and configure the path
+# to it using the MATHJAX_RELPATH option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+USE_MATHJAX = NO
+
+# With MATHJAX_VERSION it is possible to specify the MathJax version to be used.
+# Note that the different versions of MathJax have different requirements with
+# regards to the different settings, so it is possible that also other MathJax
+# settings have to be changed when switching between the different MathJax
+# versions.
+# Possible values are: MathJax_2 and MathJax_3.
+# The default value is: MathJax_2.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_VERSION = MathJax_2
+
+# When MathJax is enabled you can set the default output format to be used for
+# the MathJax output. For more details about the output format see MathJax
+# version 2 (see:
+# http://docs.mathjax.org/en/v2.7-latest/output.html) and MathJax version 3
+# (see:
+# http://docs.mathjax.org/en/latest/web/components/output.html).
+# Possible values are: HTML-CSS (which is slower, but has the best
+# compatibility. This is the name for Mathjax version 2, for MathJax version 3
+# this will be translated into chtml), NativeMML (i.e. MathML. Only supported
+# for NathJax 2. For MathJax version 3 chtml will be used instead.), chtml (This
+# is the name for Mathjax version 3, for MathJax version 2 this will be
+# translated into HTML-CSS) and SVG.
+# The default value is: HTML-CSS.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_FORMAT = HTML-CSS
+
+# When MathJax is enabled you need to specify the location relative to the HTML
+# output directory using the MATHJAX_RELPATH option. The destination directory
+# should contain the MathJax.js script. For instance, if the mathjax directory
+# is located at the same level as the HTML output directory, then
+# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
+# Content Delivery Network so you can quickly see the result without installing
+# MathJax. However, it is strongly recommended to install a local copy of
+# MathJax from https://www.mathjax.org before deployment. The default value is:
+# - in case of MathJax version 2: https://cdn.jsdelivr.net/npm/mathjax@2
+# - in case of MathJax version 3: https://cdn.jsdelivr.net/npm/mathjax@3
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_RELPATH = https://cdn.jsdelivr.net/npm/mathjax@2
+
+# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
+# extension names that should be enabled during MathJax rendering. For example
+# for MathJax version 2 (see
+# https://docs.mathjax.org/en/v2.7-latest/tex.html#tex-and-latex-extensions):
+# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
+# For example for MathJax version 3 (see
+# http://docs.mathjax.org/en/latest/input/tex/extensions/index.html):
+# MATHJAX_EXTENSIONS = ams
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_EXTENSIONS =
+
+# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
+# of code that will be used on startup of the MathJax code. See the MathJax site
+# (see:
+# http://docs.mathjax.org/en/v2.7-latest/output.html) for more details. For an
+# example see the documentation.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_CODEFILE =
+
+# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
+# the HTML output. The underlying search engine uses javascript and DHTML and
+# should work on any modern browser. Note that when using HTML help
+# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)
+# there is already a search function so this one should typically be disabled.
+# For large projects the javascript based search engine can be slow, then
+# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to
+# search using the keyboard; to jump to the search box use <access key> + S
+# (what the <access key> is depends on the OS and browser, but it is typically
+# <CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down
+# key> to jump into the search results window, the results can be navigated
+# using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel
+# the search. The filter options can be selected when the cursor is inside the
+# search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys>
+# to select a filter and <Enter> or <escape> to activate or cancel the filter
+# option.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+SEARCHENGINE = YES
+
+# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
+# implemented using a web server instead of a web client using JavaScript. There
+# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
+# setting. When disabled, doxygen will generate a PHP script for searching and
+# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
+# and searching needs to be provided by external tools. See the section
+# "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SERVER_BASED_SEARCH = NO
+
+# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
+# script for searching. Instead the search results are written to an XML file
+# which needs to be processed by an external indexer. Doxygen will invoke an
+# external search engine pointed to by the SEARCHENGINE_URL option to obtain the
+# search results.
+#
+# Doxygen ships with an example indexer (doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see:
+# https://xapian.org/).
+#
+# See the section "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH = NO
+
+# The SEARCHENGINE_URL should point to a search engine hosted by a web server
+# which will return the search results when EXTERNAL_SEARCH is enabled.
+#
+# Doxygen ships with an example indexer (doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see:
+# https://xapian.org/). See the section "External Indexing and Searching" for
+# details.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHENGINE_URL =
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
+# search data is written to a file for indexing by an external tool. With the
+# SEARCHDATA_FILE tag the name of this file can be specified.
+# The default file is: searchdata.xml.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHDATA_FILE = searchdata.xml
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the
+# EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
+# useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple
+# projects and redirect the results back to the right project.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH_ID =
+
+# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
+# projects other than the one defined by this configuration file, but that are
+# all added to the same external search index. Each project needs to have a
+# unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of
+# to a relative location where the documentation can be found. The format is:
+# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTRA_SEARCH_MAPPINGS =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
+# The default value is: YES.
+
+GENERATE_LATEX = NO
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: latex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_OUTPUT = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked.
+#
+# Note that when not enabling USE_PDFLATEX the default is latex when enabling
+# USE_PDFLATEX the default is pdflatex and when in the later case latex is
+# chosen this is overwritten by pdflatex. For specific output languages the
+# default can have been set differently, this depends on the implementation of
+# the output language.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_CMD_NAME =
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate
+# index for LaTeX.
+# Note: This tag is used in the Makefile / make.bat.
+# See also: LATEX_MAKEINDEX_CMD for the part in the generated output file
+# (.tex).
+# The default file is: makeindex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+MAKEINDEX_CMD_NAME = makeindex
+
+# The LATEX_MAKEINDEX_CMD tag can be used to specify the command name to
+# generate index for LaTeX. In case there is no backslash (\) as first character
+# it will be automatically added in the LaTeX code.
+# Note: This tag is used in the generated output file (.tex).
+# See also: MAKEINDEX_CMD_NAME for the part in the Makefile / make.bat.
+# The default value is: makeindex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_MAKEINDEX_CMD = makeindex
+
+# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+COMPACT_LATEX = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used by the
+# printer.
+# Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches), legal (8.5 x
+# 14 inches) and executive (7.25 x 10.5 inches).
+# The default value is: a4.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+PAPER_TYPE = a4
+
+# The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names
+# that should be included in the LaTeX output. The package can be specified just
+# by its name or with the correct syntax as to be used with the LaTeX
+# \usepackage command. To get the times font for instance you can specify :
+# EXTRA_PACKAGES=times or EXTRA_PACKAGES={times}
+# To use the option intlimits with the amsmath package you can specify:
+# EXTRA_PACKAGES=[intlimits]{amsmath}
+# If left blank no extra packages will be included.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+EXTRA_PACKAGES =
+
+# The LATEX_HEADER tag can be used to specify a user-defined LaTeX header for
+# the generated LaTeX document. The header should contain everything until the
+# first chapter. If it is left blank doxygen will generate a standard header. It
+# is highly recommended to start with a default header using
+# doxygen -w latex new_header.tex new_footer.tex new_stylesheet.sty
+# and then modify the file new_header.tex. See also section "Doxygen usage" for
+# information on how to generate the default header that doxygen normally uses.
+#
+# Note: Only use a user-defined header if you know what you are doing!
+# Note: The header is subject to change so you typically have to regenerate the
+# default header when upgrading to a newer version of doxygen. The following
+# commands have a special meaning inside the header (and footer): For a
+# description of the possible markers and block names see the documentation.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_HEADER =
+
+# The LATEX_FOOTER tag can be used to specify a user-defined LaTeX footer for
+# the generated LaTeX document. The footer should contain everything after the
+# last chapter. If it is left blank doxygen will generate a standard footer. See
+# LATEX_HEADER for more information on how to generate a default footer and what
+# special commands can be used inside the footer. See also section "Doxygen
+# usage" for information on how to generate the default footer that doxygen
+# normally uses. Note: Only use a user-defined footer if you know what you are
+# doing!
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_FOOTER =
+
+# The LATEX_EXTRA_STYLESHEET tag can be used to specify additional user-defined
+# LaTeX style sheets that are included after the standard style sheets created
+# by doxygen. Using this option one can overrule certain style aspects. Doxygen
+# will copy the style sheet files to the output directory.
+# Note: The order of the extra style sheet files is of importance (e.g. the last
+# style sheet in the list overrules the setting of the previous ones in the
+# list).
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EXTRA_STYLESHEET =
+
+# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the LATEX_OUTPUT output
+# directory. Note that the files will be copied as-is; there are no commands or
+# markers available.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EXTRA_FILES =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is
+# prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will
+# contain links (just like the HTML output) instead of page references. This
+# makes the output suitable for online browsing using a PDF viewer.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+PDF_HYPERLINKS = YES
+
+# If the USE_PDFLATEX tag is set to YES, doxygen will use the engine as
+# specified with LATEX_CMD_NAME to generate the PDF file directly from the LaTeX
+# files. Set this option to YES, to get a higher quality PDF documentation.
+#
+# See also section LATEX_CMD_NAME for selecting the engine.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+USE_PDFLATEX = YES
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \batchmode
+# command to the generated LaTeX files. This will instruct LaTeX to keep running
+# if errors occur, instead of asking the user for help.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_BATCHMODE = NO
+
+# If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the
+# index chapters (such as File Index, Compound Index, etc.) in the output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_HIDE_INDICES = NO
+
+# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
+# bibliography, e.g. plainnat, or ieeetr. See
+# https://en.wikipedia.org/wiki/BibTeX and \cite for more info.
+# The default value is: plain.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_BIB_STYLE = plain
+
+# If the LATEX_TIMESTAMP tag is set to YES then the footer of each generated
+# page will contain the date and time when the page was generated. Setting this
+# to NO can help when comparing the output of multiple runs.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_TIMESTAMP = NO
+
+# The LATEX_EMOJI_DIRECTORY tag is used to specify the (relative or absolute)
+# path from which the emoji images will be read. If a relative path is entered,
+# it will be relative to the LATEX_OUTPUT directory. If left blank the
+# LATEX_OUTPUT directory will be used.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EMOJI_DIRECTORY =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The
+# RTF output is optimized for Word 97 and may not look too pretty with other RTF
+# readers/editors.
+# The default value is: NO.
+
+GENERATE_RTF = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: rtf.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_OUTPUT = rtf
+
+# If the COMPACT_RTF tag is set to YES, doxygen generates more compact RTF
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+COMPACT_RTF = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will
+# contain hyperlink fields. The RTF file will contain links (just like the HTML
+# output) instead of page references. This makes the output suitable for online
+# browsing using Word or some other Word compatible readers that support those
+# fields.
+#
+# Note: WordPad (write) and others do not support links.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_HYPERLINKS = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# configuration file, i.e. a series of assignments. You only have to provide
+# replacements, missing definitions are set to their default value.
+#
+# See also section "Doxygen usage" for information on how to generate the
+# default style sheet that doxygen normally uses.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_STYLESHEET_FILE =
+
+# Set optional variables used in the generation of an RTF document. Syntax is
+# similar to doxygen's configuration file. A template extensions file can be
+# generated using doxygen -e rtf extensionFile.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_EXTENSIONS_FILE =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for
+# classes and files.
+# The default value is: NO.
+
+GENERATE_MAN = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it. A directory man3 will be created inside the directory specified by
+# MAN_OUTPUT.
+# The default directory is: man.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_OUTPUT = man
+
+# The MAN_EXTENSION tag determines the extension that is added to the generated
+# man pages. In case the manual section does not start with a number, the number
+# 3 is prepended. The dot (.) at the beginning of the MAN_EXTENSION tag is
+# optional.
+# The default value is: .3.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_EXTENSION = .3
+
+# The MAN_SUBDIR tag determines the name of the directory created within
+# MAN_OUTPUT in which the man pages are placed. If defaults to man followed by
+# MAN_EXTENSION with the initial . removed.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_SUBDIR =
+
+# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
+# will generate one additional man file for each entity documented in the real
+# man page(s). These additional files only source the real man page, but without
+# them the man command would be unable to find the correct page.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_LINKS = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that
+# captures the structure of the code including all documentation.
+# The default value is: NO.
+
+GENERATE_XML = YES
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: xml.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_OUTPUT = xml
+
+# If the XML_PROGRAMLISTING tag is set to YES, doxygen will dump the program
+# listings (including syntax highlighting and cross-referencing information) to
+# the XML output. Note that enabling this will significantly increase the size
+# of the XML output.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_PROGRAMLISTING = YES
+
+# If the XML_NS_MEMB_FILE_SCOPE tag is set to YES, doxygen will include
+# namespace members in file scope as well, matching the HTML output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_NS_MEMB_FILE_SCOPE = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the DOCBOOK output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files
+# that can be used to generate PDF.
+# The default value is: NO.
+
+GENERATE_DOCBOOK = NO
+
+# The DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be put in
+# front of it.
+# The default directory is: docbook.
+# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
+
+DOCBOOK_OUTPUT = docbook
+
+#---------------------------------------------------------------------------
+# Configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an
+# AutoGen Definitions (see http://autogen.sourceforge.net/) file that captures
+# the structure of the code including all documentation. Note that this feature
+# is still experimental and incomplete at the moment.
+# The default value is: NO.
+
+GENERATE_AUTOGEN_DEF = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module
+# file that captures the structure of the code including all documentation.
+#
+# Note that this feature is still experimental and incomplete at the moment.
+# The default value is: NO.
+
+GENERATE_PERLMOD = NO
+
+# If the PERLMOD_LATEX tag is set to YES, doxygen will generate the necessary
+# Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI
+# output from the Perl module output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_LATEX = NO
+
+# If the PERLMOD_PRETTY tag is set to YES, the Perl module output will be nicely
+# formatted so it can be parsed by a human reader. This is useful if you want to
+# understand what is going on. On the other hand, if this tag is set to NO, the
+# size of the Perl module output will be much smaller and Perl will parse it
+# just the same.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_PRETTY = YES
+
+# The names of the make variables in the generated doxyrules.make file are
+# prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. This is useful
+# so different doxyrules.make files included by the same Makefile don't
+# overwrite each other's variables.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all
+# C-preprocessor directives found in the sources and include files.
+# The default value is: YES.
+
+ENABLE_PREPROCESSING = YES
+
+# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names
+# in the source code. If set to NO, only conditional compilation will be
+# performed. Macro expansion can be done in a controlled way by setting
+# EXPAND_ONLY_PREDEF to YES.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+MACRO_EXPANSION = YES
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then
+# the macro expansion is limited to the macros specified with the PREDEFINED and
+# EXPAND_AS_DEFINED tags.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+EXPAND_ONLY_PREDEF = NO
+
+# If the SEARCH_INCLUDES tag is set to YES, the include files in the
+# INCLUDE_PATH will be searched if a #include is found.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+SEARCH_INCLUDES = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by the
+# preprocessor. Note that the INCLUDE_PATH is not recursive, so the setting of
+# RECURSIVE has no effect here.
+# This tag requires that the tag SEARCH_INCLUDES is set to YES.
+
+INCLUDE_PATH =
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will be
+# used.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+INCLUDE_FILE_PATTERNS =
+
+# The PREDEFINED tag can be used to specify one or more macro names that are
+# defined before the preprocessor is started (similar to the -D option of e.g.
+# gcc). The argument of the tag is a list of macros of the form: name or
+# name=definition (no spaces). If the definition and the "=" are omitted, "=1"
+# is assumed. To prevent a macro definition from being undefined via #undef or
+# recursively expanded use the := operator instead of the = operator.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+PREDEFINED = DEBUG \
+ __GNUC__ \
+ riscv64 \
+ riscv32
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
+# tag can be used to specify a list of macro names that should be expanded. The
+# macro definition that is found in the sources will be used. Use the PREDEFINED
+# tag if you want to use a different macro definition that overrules the
+# definition found in the source code.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+EXPAND_AS_DEFINED =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
+# remove all references to function-like macros that are alone on a line, have
+# an all uppercase name, and do not end with a semicolon. Such function macros
+# are typically used for boiler-plate code, and will confuse the parser if not
+# removed.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+SKIP_FUNCTION_MACROS = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES tag can be used to specify one or more tag files. For each tag
+# file the location of the external documentation should be added. The format of
+# a tag file without this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where loc1 and loc2 can be relative or absolute paths or URLs. See the
+# section "Linking to external documentation" for more information about the use
+# of tag files.
+# Note: Each tag file must have a unique name (where the name does NOT include
+# the path). If a tag file is not located in the directory in which doxygen is
+# run, you must also specify the path to the tagfile here.
+
+TAGFILES =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create a
+# tag file that is based on the input files it reads. See section "Linking to
+# external documentation" for more information about the usage of tag files.
+
+GENERATE_TAGFILE =
+
+# If the ALLEXTERNALS tag is set to YES, all external class will be listed in
+# the class index. If set to NO, only the inherited external classes will be
+# listed.
+# The default value is: NO.
+
+ALLEXTERNALS = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will be
+# listed.
+# The default value is: YES.
+
+EXTERNAL_GROUPS = YES
+
+# If the EXTERNAL_PAGES tag is set to YES, all external pages will be listed in
+# the related pages index. If set to NO, only the current project's pages will
+# be listed.
+# The default value is: YES.
+
+EXTERNAL_PAGES = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# You can include diagrams made with dia in doxygen documentation. Doxygen will
+# then run dia to produce the diagram and insert it in the documentation. The
+# DIA_PATH tag allows you to specify the directory where the dia binary resides.
+# If left empty dia is assumed to be found in the default search path.
+
+DIA_PATH =
+
+# If set to YES the inheritance and collaboration graphs will hide inheritance
+# and usage relations if the target is undocumented or is not a class.
+# The default value is: YES.
+
+HIDE_UNDOC_RELATIONS = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz (see:
+# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
+# Bell Labs. The other options in this section have no effect if this option is
+# set to NO
+# The default value is: YES.
+
+HAVE_DOT = YES
+
+# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed
+# to run in parallel. When set to 0 doxygen will base this on the number of
+# processors available in the system. You can set it explicitly to a value
+# larger than 0 to get control over the balance between CPU load and processing
+# speed.
+# Minimum value: 0, maximum value: 32, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_NUM_THREADS = 0
+
+# When you want a differently looking font in the dot files that doxygen
+# generates you can specify the font name using DOT_FONTNAME. You need to make
+# sure dot is able to find the font, which can be done by putting it in a
+# standard location or by setting the DOTFONTPATH environment variable or by
+# setting DOT_FONTPATH to the directory containing the font.
+# The default value is: Helvetica.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTNAME = Helvetica
+
+# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of
+# dot graphs.
+# Minimum value: 4, maximum value: 24, default value: 10.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTSIZE = 10
+
+# By default doxygen will tell dot to use the default font as specified with
+# DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set
+# the path where dot can find it using this tag.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTPATH =
+
+# If the CLASS_GRAPH tag is set to YES (or GRAPH) then doxygen will generate a
+# graph for each documented class showing the direct and indirect inheritance
+# relations. In case HAVE_DOT is set as well dot will be used to draw the graph,
+# otherwise the built-in generator will be used. If the CLASS_GRAPH tag is set
+# to TEXT the direct and indirect inheritance relations will be shown as texts /
+# links.
+# Possible values are: NO, YES, TEXT and GRAPH.
+# The default value is: YES.
+
+CLASS_GRAPH = YES
+
+# If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a
+# graph for each documented class showing the direct and indirect implementation
+# dependencies (inheritance, containment, and class references variables) of the
+# class with other documented classes.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+COLLABORATION_GRAPH = YES
+
+# If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for
+# groups, showing the direct groups dependencies. See also the chapter Grouping
+# in the manual.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GROUP_GRAPHS = YES
+
+# If the UML_LOOK tag is set to YES, doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+UML_LOOK = NO
+
+# If the UML_LOOK tag is enabled, the fields and methods are shown inside the
+# class node. If there are many fields or methods and many nodes the graph may
+# become too big to be useful. The UML_LIMIT_NUM_FIELDS threshold limits the
+# number of items for each type to make the size more manageable. Set this to 0
+# for no limit. Note that the threshold may be exceeded by 50% before the limit
+# is enforced. So when you set the threshold to 10, up to 15 fields may appear,
+# but if the number exceeds 15, the total amount of fields shown is limited to
+# 10.
+# Minimum value: 0, maximum value: 100, default value: 10.
+# This tag requires that the tag UML_LOOK is set to YES.
+
+UML_LIMIT_NUM_FIELDS = 10
+
+# If the DOT_UML_DETAILS tag is set to NO, doxygen will show attributes and
+# methods without types and arguments in the UML graphs. If the DOT_UML_DETAILS
+# tag is set to YES, doxygen will add type and arguments for attributes and
+# methods in the UML graphs. If the DOT_UML_DETAILS tag is set to NONE, doxygen
+# will not generate fields with class member information in the UML graphs. The
+# class diagrams will look similar to the default class diagrams but using UML
+# notation for the relationships.
+# Possible values are: NO, YES and NONE.
+# The default value is: NO.
+# This tag requires that the tag UML_LOOK is set to YES.
+
+DOT_UML_DETAILS = YES
+
+# The DOT_WRAP_THRESHOLD tag can be used to set the maximum number of characters
+# to display on a single line. If the actual line length exceeds this threshold
+# significantly it will wrapped across multiple lines. Some heuristics are apply
+# to avoid ugly line breaks.
+# Minimum value: 0, maximum value: 1000, default value: 17.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_WRAP_THRESHOLD = 17
+
+# If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and
+# collaboration graphs will show the relations between templates and their
+# instances.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+TEMPLATE_RELATIONS = NO
+
+# If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to
+# YES then doxygen will generate a graph for each documented file showing the
+# direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INCLUDE_GRAPH = YES
+
+# If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are
+# set to YES then doxygen will generate a graph for each documented file showing
+# the direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INCLUDED_BY_GRAPH = YES
+
+# If the CALL_GRAPH tag is set to YES then doxygen will generate a call
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable call graphs for selected
+# functions only using the \callgraph command. Disabling a call graph can be
+# accomplished by means of the command \hidecallgraph.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CALL_GRAPH = YES
+
+# If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable caller graphs for selected
+# functions only using the \callergraph command. Disabling a caller graph can be
+# accomplished by means of the command \hidecallergraph.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CALLER_GRAPH = YES
+
+# If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical
+# hierarchy of all classes instead of a textual one.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GRAPHICAL_HIERARCHY = YES
+
+# If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the
+# dependencies a directory has on other directories in a graphical way. The
+# dependency relations are determined by the #include relations between the
+# files in the directories.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DIRECTORY_GRAPH = YES
+
+# The DIR_GRAPH_MAX_DEPTH tag can be used to limit the maximum number of levels
+# of child directories generated in directory dependency graphs by dot.
+# Minimum value: 1, maximum value: 25, default value: 1.
+# This tag requires that the tag DIRECTORY_GRAPH is set to YES.
+
+DIR_GRAPH_MAX_DEPTH = 1
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. For an explanation of the image formats see the section
+# output formats in the documentation of the dot tool (Graphviz (see:
+# http://www.graphviz.org/)).
+# Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order
+# to make the SVG files visible in IE 9+ (other browsers do not have this
+# requirement).
+# Possible values are: png, jpg, jpg:cairo, jpg:cairo:gd, jpg:gd, jpg:gd:gd,
+# gif, gif:cairo, gif:cairo:gd, gif:gd, gif:gd:gd, svg, png:gd, png:gd:gd,
+# png:cairo, png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and
+# png:gdiplus:gdiplus.
+# The default value is: png.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_IMAGE_FORMAT = svg
+
+# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
+# enable generation of interactive SVG images that allow zooming and panning.
+#
+# Note that this requires a modern browser other than Internet Explorer. Tested
+# and working are Firefox, Chrome, Safari, and Opera.
+# Note: For IE 9+ you need to set HTML_FILE_EXTENSION to xhtml in order to make
+# the SVG files visible. Older versions of IE do not have SVG support.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INTERACTIVE_SVG = NO
+
+# The DOT_PATH tag can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found in the path.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_PATH =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the \dotfile
+# command).
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOTFILE_DIRS =
+
+# The MSCFILE_DIRS tag can be used to specify one or more directories that
+# contain msc files that are included in the documentation (see the \mscfile
+# command).
+
+MSCFILE_DIRS =
+
+# The DIAFILE_DIRS tag can be used to specify one or more directories that
+# contain dia files that are included in the documentation (see the \diafile
+# command).
+
+DIAFILE_DIRS =
+
+# When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the
+# path where java can find the plantuml.jar file or to the filename of jar file
+# to be used. If left blank, it is assumed PlantUML is not used or called during
+# a preprocessing step. Doxygen will generate a warning when it encounters a
+# \startuml command in this case and will not generate output for the diagram.
+
+PLANTUML_JAR_PATH =
+
+# When using plantuml, the PLANTUML_CFG_FILE tag can be used to specify a
+# configuration file for plantuml.
+
+PLANTUML_CFG_FILE =
+
+# When using plantuml, the specified paths are searched for files specified by
+# the !include statement in a plantuml block.
+
+PLANTUML_INCLUDE_PATH =
+
+# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
+# that will be shown in the graph. If the number of nodes in a graph becomes
+# larger than this value, doxygen will truncate the graph, which is visualized
+# by representing a node as a red box. Note that doxygen if the number of direct
+# children of the root node in a graph is already larger than
+# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note that
+# the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+# Minimum value: 0, maximum value: 10000, default value: 50.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_GRAPH_MAX_NODES = 50
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs
+# generated by dot. A depth value of 3 means that only nodes reachable from the
+# root by following a path via at most 3 edges will be shown. Nodes that lay
+# further from the root node will be omitted. Note that setting this option to 1
+# or 2 may greatly reduce the computation time needed for large code bases. Also
+# note that the size of a graph can be further restricted by
+# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+# Minimum value: 0, maximum value: 1000, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+MAX_DOT_GRAPH_DEPTH = 0
+
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, because dot on Windows does not seem
+# to support this out of the box.
+#
+# Warning: Depending on the platform used, enabling this option may lead to
+# badly anti-aliased labels on the edges of a graph (i.e. they become hard to
+# read).
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_TRANSPARENT = YES
+
+# Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10) support
+# this, this feature is disabled by default.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_MULTI_TARGETS = NO
+
+# If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page
+# explaining the meaning of the various boxes and arrows in the dot generated
+# graphs.
+# Note: This tag requires that UML_LOOK isn't set, i.e. the doxygen internal
+# graphical representation for inheritance and collaboration diagrams is used.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GENERATE_LEGEND = YES
+
+# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate
+# files that are used to generate the various graphs.
+#
+# Note: This setting is not only used for dot files but also for msc temporary
+# files.
+# The default value is: YES.
+
+DOT_CLEANUP = YES
diff --git a/lib/decls.h b/lib/decls.h
new file mode 100644
index 0000000..84e92af
--- /dev/null
+++ b/lib/decls.h
@@ -0,0 +1,1300 @@
+#ifndef COPYJIT_DECLS_H
+#define COPYJIT_DECLS_H
+void *compile_add(ctx_t *ctx);
+void *compile_addao(ctx_t *ctx);
+void *compile_addxo(ctx_t *ctx);
+void *compile_addyo(ctx_t *ctx);
+void *compile_ban(ctx_t *ctx);
+void *compile_baz(ctx_t *ctx);
+void *compile_end(ctx_t *ctx);
+void *compile_incy(ctx_t *ctx);
+void *compile_j(ctx_t *ctx);
+void *compile_movao(ctx_t *ctx);
+void *compile_movxa(ctx_t *ctx);
+void *compile_movxo(ctx_t *ctx);
+void *compile_movya(ctx_t *ctx);
+void *compile_movyo(ctx_t *ctx);
+void *compile_sub(ctx_t *ctx);
+void *compile_subxo(ctx_t *ctx);
+void *compile_subyo(ctx_t *ctx);
+void *compile_addi0(ctx_t *ctx);
+void *compile_addi1(ctx_t *ctx);
+void *compile_addi10(ctx_t *ctx);
+void *compile_addi100(ctx_t *ctx);
+void *compile_addi101(ctx_t *ctx);
+void *compile_addi102(ctx_t *ctx);
+void *compile_addi103(ctx_t *ctx);
+void *compile_addi104(ctx_t *ctx);
+void *compile_addi105(ctx_t *ctx);
+void *compile_addi106(ctx_t *ctx);
+void *compile_addi107(ctx_t *ctx);
+void *compile_addi108(ctx_t *ctx);
+void *compile_addi109(ctx_t *ctx);
+void *compile_addi11(ctx_t *ctx);
+void *compile_addi110(ctx_t *ctx);
+void *compile_addi111(ctx_t *ctx);
+void *compile_addi112(ctx_t *ctx);
+void *compile_addi113(ctx_t *ctx);
+void *compile_addi114(ctx_t *ctx);
+void *compile_addi115(ctx_t *ctx);
+void *compile_addi116(ctx_t *ctx);
+void *compile_addi117(ctx_t *ctx);
+void *compile_addi118(ctx_t *ctx);
+void *compile_addi119(ctx_t *ctx);
+void *compile_addi12(ctx_t *ctx);
+void *compile_addi120(ctx_t *ctx);
+void *compile_addi121(ctx_t *ctx);
+void *compile_addi122(ctx_t *ctx);
+void *compile_addi123(ctx_t *ctx);
+void *compile_addi124(ctx_t *ctx);
+void *compile_addi125(ctx_t *ctx);
+void *compile_addi126(ctx_t *ctx);
+void *compile_addi127(ctx_t *ctx);
+void *compile_addi128(ctx_t *ctx);
+void *compile_addi129(ctx_t *ctx);
+void *compile_addi13(ctx_t *ctx);
+void *compile_addi130(ctx_t *ctx);
+void *compile_addi131(ctx_t *ctx);
+void *compile_addi132(ctx_t *ctx);
+void *compile_addi133(ctx_t *ctx);
+void *compile_addi134(ctx_t *ctx);
+void *compile_addi135(ctx_t *ctx);
+void *compile_addi136(ctx_t *ctx);
+void *compile_addi137(ctx_t *ctx);
+void *compile_addi138(ctx_t *ctx);
+void *compile_addi139(ctx_t *ctx);
+void *compile_addi14(ctx_t *ctx);
+void *compile_addi140(ctx_t *ctx);
+void *compile_addi141(ctx_t *ctx);
+void *compile_addi142(ctx_t *ctx);
+void *compile_addi143(ctx_t *ctx);
+void *compile_addi144(ctx_t *ctx);
+void *compile_addi145(ctx_t *ctx);
+void *compile_addi146(ctx_t *ctx);
+void *compile_addi147(ctx_t *ctx);
+void *compile_addi148(ctx_t *ctx);
+void *compile_addi149(ctx_t *ctx);
+void *compile_addi15(ctx_t *ctx);
+void *compile_addi150(ctx_t *ctx);
+void *compile_addi151(ctx_t *ctx);
+void *compile_addi152(ctx_t *ctx);
+void *compile_addi153(ctx_t *ctx);
+void *compile_addi154(ctx_t *ctx);
+void *compile_addi155(ctx_t *ctx);
+void *compile_addi156(ctx_t *ctx);
+void *compile_addi157(ctx_t *ctx);
+void *compile_addi158(ctx_t *ctx);
+void *compile_addi159(ctx_t *ctx);
+void *compile_addi16(ctx_t *ctx);
+void *compile_addi160(ctx_t *ctx);
+void *compile_addi161(ctx_t *ctx);
+void *compile_addi162(ctx_t *ctx);
+void *compile_addi163(ctx_t *ctx);
+void *compile_addi164(ctx_t *ctx);
+void *compile_addi165(ctx_t *ctx);
+void *compile_addi166(ctx_t *ctx);
+void *compile_addi167(ctx_t *ctx);
+void *compile_addi168(ctx_t *ctx);
+void *compile_addi169(ctx_t *ctx);
+void *compile_addi17(ctx_t *ctx);
+void *compile_addi170(ctx_t *ctx);
+void *compile_addi171(ctx_t *ctx);
+void *compile_addi172(ctx_t *ctx);
+void *compile_addi173(ctx_t *ctx);
+void *compile_addi174(ctx_t *ctx);
+void *compile_addi175(ctx_t *ctx);
+void *compile_addi176(ctx_t *ctx);
+void *compile_addi177(ctx_t *ctx);
+void *compile_addi178(ctx_t *ctx);
+void *compile_addi179(ctx_t *ctx);
+void *compile_addi18(ctx_t *ctx);
+void *compile_addi180(ctx_t *ctx);
+void *compile_addi181(ctx_t *ctx);
+void *compile_addi182(ctx_t *ctx);
+void *compile_addi183(ctx_t *ctx);
+void *compile_addi184(ctx_t *ctx);
+void *compile_addi185(ctx_t *ctx);
+void *compile_addi186(ctx_t *ctx);
+void *compile_addi187(ctx_t *ctx);
+void *compile_addi188(ctx_t *ctx);
+void *compile_addi189(ctx_t *ctx);
+void *compile_addi19(ctx_t *ctx);
+void *compile_addi190(ctx_t *ctx);
+void *compile_addi191(ctx_t *ctx);
+void *compile_addi192(ctx_t *ctx);
+void *compile_addi193(ctx_t *ctx);
+void *compile_addi194(ctx_t *ctx);
+void *compile_addi195(ctx_t *ctx);
+void *compile_addi196(ctx_t *ctx);
+void *compile_addi197(ctx_t *ctx);
+void *compile_addi198(ctx_t *ctx);
+void *compile_addi199(ctx_t *ctx);
+void *compile_addi2(ctx_t *ctx);
+void *compile_addi20(ctx_t *ctx);
+void *compile_addi200(ctx_t *ctx);
+void *compile_addi201(ctx_t *ctx);
+void *compile_addi202(ctx_t *ctx);
+void *compile_addi203(ctx_t *ctx);
+void *compile_addi204(ctx_t *ctx);
+void *compile_addi205(ctx_t *ctx);
+void *compile_addi206(ctx_t *ctx);
+void *compile_addi207(ctx_t *ctx);
+void *compile_addi208(ctx_t *ctx);
+void *compile_addi209(ctx_t *ctx);
+void *compile_addi21(ctx_t *ctx);
+void *compile_addi210(ctx_t *ctx);
+void *compile_addi211(ctx_t *ctx);
+void *compile_addi212(ctx_t *ctx);
+void *compile_addi213(ctx_t *ctx);
+void *compile_addi214(ctx_t *ctx);
+void *compile_addi215(ctx_t *ctx);
+void *compile_addi216(ctx_t *ctx);
+void *compile_addi217(ctx_t *ctx);
+void *compile_addi218(ctx_t *ctx);
+void *compile_addi219(ctx_t *ctx);
+void *compile_addi22(ctx_t *ctx);
+void *compile_addi220(ctx_t *ctx);
+void *compile_addi221(ctx_t *ctx);
+void *compile_addi222(ctx_t *ctx);
+void *compile_addi223(ctx_t *ctx);
+void *compile_addi224(ctx_t *ctx);
+void *compile_addi225(ctx_t *ctx);
+void *compile_addi226(ctx_t *ctx);
+void *compile_addi227(ctx_t *ctx);
+void *compile_addi228(ctx_t *ctx);
+void *compile_addi229(ctx_t *ctx);
+void *compile_addi23(ctx_t *ctx);
+void *compile_addi230(ctx_t *ctx);
+void *compile_addi231(ctx_t *ctx);
+void *compile_addi232(ctx_t *ctx);
+void *compile_addi233(ctx_t *ctx);
+void *compile_addi234(ctx_t *ctx);
+void *compile_addi235(ctx_t *ctx);
+void *compile_addi236(ctx_t *ctx);
+void *compile_addi237(ctx_t *ctx);
+void *compile_addi238(ctx_t *ctx);
+void *compile_addi239(ctx_t *ctx);
+void *compile_addi24(ctx_t *ctx);
+void *compile_addi240(ctx_t *ctx);
+void *compile_addi241(ctx_t *ctx);
+void *compile_addi242(ctx_t *ctx);
+void *compile_addi243(ctx_t *ctx);
+void *compile_addi244(ctx_t *ctx);
+void *compile_addi245(ctx_t *ctx);
+void *compile_addi246(ctx_t *ctx);
+void *compile_addi247(ctx_t *ctx);
+void *compile_addi248(ctx_t *ctx);
+void *compile_addi249(ctx_t *ctx);
+void *compile_addi25(ctx_t *ctx);
+void *compile_addi250(ctx_t *ctx);
+void *compile_addi251(ctx_t *ctx);
+void *compile_addi252(ctx_t *ctx);
+void *compile_addi253(ctx_t *ctx);
+void *compile_addi254(ctx_t *ctx);
+void *compile_addi255(ctx_t *ctx);
+void *compile_addi26(ctx_t *ctx);
+void *compile_addi27(ctx_t *ctx);
+void *compile_addi28(ctx_t *ctx);
+void *compile_addi29(ctx_t *ctx);
+void *compile_addi3(ctx_t *ctx);
+void *compile_addi30(ctx_t *ctx);
+void *compile_addi31(ctx_t *ctx);
+void *compile_addi32(ctx_t *ctx);
+void *compile_addi33(ctx_t *ctx);
+void *compile_addi34(ctx_t *ctx);
+void *compile_addi35(ctx_t *ctx);
+void *compile_addi36(ctx_t *ctx);
+void *compile_addi37(ctx_t *ctx);
+void *compile_addi38(ctx_t *ctx);
+void *compile_addi39(ctx_t *ctx);
+void *compile_addi4(ctx_t *ctx);
+void *compile_addi40(ctx_t *ctx);
+void *compile_addi41(ctx_t *ctx);
+void *compile_addi42(ctx_t *ctx);
+void *compile_addi43(ctx_t *ctx);
+void *compile_addi44(ctx_t *ctx);
+void *compile_addi45(ctx_t *ctx);
+void *compile_addi46(ctx_t *ctx);
+void *compile_addi47(ctx_t *ctx);
+void *compile_addi48(ctx_t *ctx);
+void *compile_addi49(ctx_t *ctx);
+void *compile_addi5(ctx_t *ctx);
+void *compile_addi50(ctx_t *ctx);
+void *compile_addi51(ctx_t *ctx);
+void *compile_addi52(ctx_t *ctx);
+void *compile_addi53(ctx_t *ctx);
+void *compile_addi54(ctx_t *ctx);
+void *compile_addi55(ctx_t *ctx);
+void *compile_addi56(ctx_t *ctx);
+void *compile_addi57(ctx_t *ctx);
+void *compile_addi58(ctx_t *ctx);
+void *compile_addi59(ctx_t *ctx);
+void *compile_addi6(ctx_t *ctx);
+void *compile_addi60(ctx_t *ctx);
+void *compile_addi61(ctx_t *ctx);
+void *compile_addi62(ctx_t *ctx);
+void *compile_addi63(ctx_t *ctx);
+void *compile_addi64(ctx_t *ctx);
+void *compile_addi65(ctx_t *ctx);
+void *compile_addi66(ctx_t *ctx);
+void *compile_addi67(ctx_t *ctx);
+void *compile_addi68(ctx_t *ctx);
+void *compile_addi69(ctx_t *ctx);
+void *compile_addi7(ctx_t *ctx);
+void *compile_addi70(ctx_t *ctx);
+void *compile_addi71(ctx_t *ctx);
+void *compile_addi72(ctx_t *ctx);
+void *compile_addi73(ctx_t *ctx);
+void *compile_addi74(ctx_t *ctx);
+void *compile_addi75(ctx_t *ctx);
+void *compile_addi76(ctx_t *ctx);
+void *compile_addi77(ctx_t *ctx);
+void *compile_addi78(ctx_t *ctx);
+void *compile_addi79(ctx_t *ctx);
+void *compile_addi8(ctx_t *ctx);
+void *compile_addi80(ctx_t *ctx);
+void *compile_addi81(ctx_t *ctx);
+void *compile_addi82(ctx_t *ctx);
+void *compile_addi83(ctx_t *ctx);
+void *compile_addi84(ctx_t *ctx);
+void *compile_addi85(ctx_t *ctx);
+void *compile_addi86(ctx_t *ctx);
+void *compile_addi87(ctx_t *ctx);
+void *compile_addi88(ctx_t *ctx);
+void *compile_addi89(ctx_t *ctx);
+void *compile_addi9(ctx_t *ctx);
+void *compile_addi90(ctx_t *ctx);
+void *compile_addi91(ctx_t *ctx);
+void *compile_addi92(ctx_t *ctx);
+void *compile_addi93(ctx_t *ctx);
+void *compile_addi94(ctx_t *ctx);
+void *compile_addi95(ctx_t *ctx);
+void *compile_addi96(ctx_t *ctx);
+void *compile_addi97(ctx_t *ctx);
+void *compile_addi98(ctx_t *ctx);
+void *compile_addi99(ctx_t *ctx);
+void *compile_bsa0(ctx_t *ctx);
+void *compile_bsa1(ctx_t *ctx);
+void *compile_bsa10(ctx_t *ctx);
+void *compile_bsa11(ctx_t *ctx);
+void *compile_bsa12(ctx_t *ctx);
+void *compile_bsa13(ctx_t *ctx);
+void *compile_bsa14(ctx_t *ctx);
+void *compile_bsa15(ctx_t *ctx);
+void *compile_bsa16(ctx_t *ctx);
+void *compile_bsa17(ctx_t *ctx);
+void *compile_bsa18(ctx_t *ctx);
+void *compile_bsa19(ctx_t *ctx);
+void *compile_bsa2(ctx_t *ctx);
+void *compile_bsa20(ctx_t *ctx);
+void *compile_bsa21(ctx_t *ctx);
+void *compile_bsa22(ctx_t *ctx);
+void *compile_bsa23(ctx_t *ctx);
+void *compile_bsa24(ctx_t *ctx);
+void *compile_bsa25(ctx_t *ctx);
+void *compile_bsa26(ctx_t *ctx);
+void *compile_bsa27(ctx_t *ctx);
+void *compile_bsa28(ctx_t *ctx);
+void *compile_bsa29(ctx_t *ctx);
+void *compile_bsa3(ctx_t *ctx);
+void *compile_bsa30(ctx_t *ctx);
+void *compile_bsa31(ctx_t *ctx);
+void *compile_bsa32(ctx_t *ctx);
+void *compile_bsa33(ctx_t *ctx);
+void *compile_bsa34(ctx_t *ctx);
+void *compile_bsa35(ctx_t *ctx);
+void *compile_bsa36(ctx_t *ctx);
+void *compile_bsa37(ctx_t *ctx);
+void *compile_bsa38(ctx_t *ctx);
+void *compile_bsa39(ctx_t *ctx);
+void *compile_bsa4(ctx_t *ctx);
+void *compile_bsa40(ctx_t *ctx);
+void *compile_bsa41(ctx_t *ctx);
+void *compile_bsa42(ctx_t *ctx);
+void *compile_bsa43(ctx_t *ctx);
+void *compile_bsa44(ctx_t *ctx);
+void *compile_bsa45(ctx_t *ctx);
+void *compile_bsa46(ctx_t *ctx);
+void *compile_bsa47(ctx_t *ctx);
+void *compile_bsa48(ctx_t *ctx);
+void *compile_bsa49(ctx_t *ctx);
+void *compile_bsa5(ctx_t *ctx);
+void *compile_bsa50(ctx_t *ctx);
+void *compile_bsa51(ctx_t *ctx);
+void *compile_bsa52(ctx_t *ctx);
+void *compile_bsa53(ctx_t *ctx);
+void *compile_bsa54(ctx_t *ctx);
+void *compile_bsa55(ctx_t *ctx);
+void *compile_bsa56(ctx_t *ctx);
+void *compile_bsa57(ctx_t *ctx);
+void *compile_bsa58(ctx_t *ctx);
+void *compile_bsa59(ctx_t *ctx);
+void *compile_bsa6(ctx_t *ctx);
+void *compile_bsa60(ctx_t *ctx);
+void *compile_bsa61(ctx_t *ctx);
+void *compile_bsa62(ctx_t *ctx);
+void *compile_bsa63(ctx_t *ctx);
+void *compile_bsa7(ctx_t *ctx);
+void *compile_bsa8(ctx_t *ctx);
+void *compile_bsa9(ctx_t *ctx);
+void *compile_bso0(ctx_t *ctx);
+void *compile_bso1(ctx_t *ctx);
+void *compile_bso10(ctx_t *ctx);
+void *compile_bso11(ctx_t *ctx);
+void *compile_bso12(ctx_t *ctx);
+void *compile_bso13(ctx_t *ctx);
+void *compile_bso14(ctx_t *ctx);
+void *compile_bso15(ctx_t *ctx);
+void *compile_bso16(ctx_t *ctx);
+void *compile_bso17(ctx_t *ctx);
+void *compile_bso18(ctx_t *ctx);
+void *compile_bso19(ctx_t *ctx);
+void *compile_bso2(ctx_t *ctx);
+void *compile_bso20(ctx_t *ctx);
+void *compile_bso21(ctx_t *ctx);
+void *compile_bso22(ctx_t *ctx);
+void *compile_bso23(ctx_t *ctx);
+void *compile_bso24(ctx_t *ctx);
+void *compile_bso25(ctx_t *ctx);
+void *compile_bso26(ctx_t *ctx);
+void *compile_bso27(ctx_t *ctx);
+void *compile_bso28(ctx_t *ctx);
+void *compile_bso29(ctx_t *ctx);
+void *compile_bso3(ctx_t *ctx);
+void *compile_bso30(ctx_t *ctx);
+void *compile_bso31(ctx_t *ctx);
+void *compile_bso32(ctx_t *ctx);
+void *compile_bso33(ctx_t *ctx);
+void *compile_bso34(ctx_t *ctx);
+void *compile_bso35(ctx_t *ctx);
+void *compile_bso36(ctx_t *ctx);
+void *compile_bso37(ctx_t *ctx);
+void *compile_bso38(ctx_t *ctx);
+void *compile_bso39(ctx_t *ctx);
+void *compile_bso4(ctx_t *ctx);
+void *compile_bso40(ctx_t *ctx);
+void *compile_bso41(ctx_t *ctx);
+void *compile_bso42(ctx_t *ctx);
+void *compile_bso43(ctx_t *ctx);
+void *compile_bso44(ctx_t *ctx);
+void *compile_bso45(ctx_t *ctx);
+void *compile_bso46(ctx_t *ctx);
+void *compile_bso47(ctx_t *ctx);
+void *compile_bso48(ctx_t *ctx);
+void *compile_bso49(ctx_t *ctx);
+void *compile_bso5(ctx_t *ctx);
+void *compile_bso50(ctx_t *ctx);
+void *compile_bso51(ctx_t *ctx);
+void *compile_bso52(ctx_t *ctx);
+void *compile_bso53(ctx_t *ctx);
+void *compile_bso54(ctx_t *ctx);
+void *compile_bso55(ctx_t *ctx);
+void *compile_bso56(ctx_t *ctx);
+void *compile_bso57(ctx_t *ctx);
+void *compile_bso58(ctx_t *ctx);
+void *compile_bso59(ctx_t *ctx);
+void *compile_bso6(ctx_t *ctx);
+void *compile_bso60(ctx_t *ctx);
+void *compile_bso61(ctx_t *ctx);
+void *compile_bso62(ctx_t *ctx);
+void *compile_bso63(ctx_t *ctx);
+void *compile_bso7(ctx_t *ctx);
+void *compile_bso8(ctx_t *ctx);
+void *compile_bso9(ctx_t *ctx);
+void *compile_bsx0(ctx_t *ctx);
+void *compile_bsx1(ctx_t *ctx);
+void *compile_bsx10(ctx_t *ctx);
+void *compile_bsx11(ctx_t *ctx);
+void *compile_bsx12(ctx_t *ctx);
+void *compile_bsx13(ctx_t *ctx);
+void *compile_bsx14(ctx_t *ctx);
+void *compile_bsx15(ctx_t *ctx);
+void *compile_bsx16(ctx_t *ctx);
+void *compile_bsx17(ctx_t *ctx);
+void *compile_bsx18(ctx_t *ctx);
+void *compile_bsx19(ctx_t *ctx);
+void *compile_bsx2(ctx_t *ctx);
+void *compile_bsx20(ctx_t *ctx);
+void *compile_bsx21(ctx_t *ctx);
+void *compile_bsx22(ctx_t *ctx);
+void *compile_bsx23(ctx_t *ctx);
+void *compile_bsx24(ctx_t *ctx);
+void *compile_bsx25(ctx_t *ctx);
+void *compile_bsx26(ctx_t *ctx);
+void *compile_bsx27(ctx_t *ctx);
+void *compile_bsx28(ctx_t *ctx);
+void *compile_bsx29(ctx_t *ctx);
+void *compile_bsx3(ctx_t *ctx);
+void *compile_bsx30(ctx_t *ctx);
+void *compile_bsx31(ctx_t *ctx);
+void *compile_bsx32(ctx_t *ctx);
+void *compile_bsx33(ctx_t *ctx);
+void *compile_bsx34(ctx_t *ctx);
+void *compile_bsx35(ctx_t *ctx);
+void *compile_bsx36(ctx_t *ctx);
+void *compile_bsx37(ctx_t *ctx);
+void *compile_bsx38(ctx_t *ctx);
+void *compile_bsx39(ctx_t *ctx);
+void *compile_bsx4(ctx_t *ctx);
+void *compile_bsx40(ctx_t *ctx);
+void *compile_bsx41(ctx_t *ctx);
+void *compile_bsx42(ctx_t *ctx);
+void *compile_bsx43(ctx_t *ctx);
+void *compile_bsx44(ctx_t *ctx);
+void *compile_bsx45(ctx_t *ctx);
+void *compile_bsx46(ctx_t *ctx);
+void *compile_bsx47(ctx_t *ctx);
+void *compile_bsx48(ctx_t *ctx);
+void *compile_bsx49(ctx_t *ctx);
+void *compile_bsx5(ctx_t *ctx);
+void *compile_bsx50(ctx_t *ctx);
+void *compile_bsx51(ctx_t *ctx);
+void *compile_bsx52(ctx_t *ctx);
+void *compile_bsx53(ctx_t *ctx);
+void *compile_bsx54(ctx_t *ctx);
+void *compile_bsx55(ctx_t *ctx);
+void *compile_bsx56(ctx_t *ctx);
+void *compile_bsx57(ctx_t *ctx);
+void *compile_bsx58(ctx_t *ctx);
+void *compile_bsx59(ctx_t *ctx);
+void *compile_bsx6(ctx_t *ctx);
+void *compile_bsx60(ctx_t *ctx);
+void *compile_bsx61(ctx_t *ctx);
+void *compile_bsx62(ctx_t *ctx);
+void *compile_bsx63(ctx_t *ctx);
+void *compile_bsx7(ctx_t *ctx);
+void *compile_bsx8(ctx_t *ctx);
+void *compile_bsx9(ctx_t *ctx);
+void *compile_bsy0(ctx_t *ctx);
+void *compile_bsy1(ctx_t *ctx);
+void *compile_bsy10(ctx_t *ctx);
+void *compile_bsy11(ctx_t *ctx);
+void *compile_bsy12(ctx_t *ctx);
+void *compile_bsy13(ctx_t *ctx);
+void *compile_bsy14(ctx_t *ctx);
+void *compile_bsy15(ctx_t *ctx);
+void *compile_bsy16(ctx_t *ctx);
+void *compile_bsy17(ctx_t *ctx);
+void *compile_bsy18(ctx_t *ctx);
+void *compile_bsy19(ctx_t *ctx);
+void *compile_bsy2(ctx_t *ctx);
+void *compile_bsy20(ctx_t *ctx);
+void *compile_bsy21(ctx_t *ctx);
+void *compile_bsy22(ctx_t *ctx);
+void *compile_bsy23(ctx_t *ctx);
+void *compile_bsy24(ctx_t *ctx);
+void *compile_bsy25(ctx_t *ctx);
+void *compile_bsy26(ctx_t *ctx);
+void *compile_bsy27(ctx_t *ctx);
+void *compile_bsy28(ctx_t *ctx);
+void *compile_bsy29(ctx_t *ctx);
+void *compile_bsy3(ctx_t *ctx);
+void *compile_bsy30(ctx_t *ctx);
+void *compile_bsy31(ctx_t *ctx);
+void *compile_bsy32(ctx_t *ctx);
+void *compile_bsy33(ctx_t *ctx);
+void *compile_bsy34(ctx_t *ctx);
+void *compile_bsy35(ctx_t *ctx);
+void *compile_bsy36(ctx_t *ctx);
+void *compile_bsy37(ctx_t *ctx);
+void *compile_bsy38(ctx_t *ctx);
+void *compile_bsy39(ctx_t *ctx);
+void *compile_bsy4(ctx_t *ctx);
+void *compile_bsy40(ctx_t *ctx);
+void *compile_bsy41(ctx_t *ctx);
+void *compile_bsy42(ctx_t *ctx);
+void *compile_bsy43(ctx_t *ctx);
+void *compile_bsy44(ctx_t *ctx);
+void *compile_bsy45(ctx_t *ctx);
+void *compile_bsy46(ctx_t *ctx);
+void *compile_bsy47(ctx_t *ctx);
+void *compile_bsy48(ctx_t *ctx);
+void *compile_bsy49(ctx_t *ctx);
+void *compile_bsy5(ctx_t *ctx);
+void *compile_bsy50(ctx_t *ctx);
+void *compile_bsy51(ctx_t *ctx);
+void *compile_bsy52(ctx_t *ctx);
+void *compile_bsy53(ctx_t *ctx);
+void *compile_bsy54(ctx_t *ctx);
+void *compile_bsy55(ctx_t *ctx);
+void *compile_bsy56(ctx_t *ctx);
+void *compile_bsy57(ctx_t *ctx);
+void *compile_bsy58(ctx_t *ctx);
+void *compile_bsy59(ctx_t *ctx);
+void *compile_bsy6(ctx_t *ctx);
+void *compile_bsy60(ctx_t *ctx);
+void *compile_bsy61(ctx_t *ctx);
+void *compile_bsy62(ctx_t *ctx);
+void *compile_bsy63(ctx_t *ctx);
+void *compile_bsy7(ctx_t *ctx);
+void *compile_bsy8(ctx_t *ctx);
+void *compile_bsy9(ctx_t *ctx);
+void *compile_li0(ctx_t *ctx);
+void *compile_li1(ctx_t *ctx);
+void *compile_li10(ctx_t *ctx);
+void *compile_li100(ctx_t *ctx);
+void *compile_li101(ctx_t *ctx);
+void *compile_li102(ctx_t *ctx);
+void *compile_li103(ctx_t *ctx);
+void *compile_li104(ctx_t *ctx);
+void *compile_li105(ctx_t *ctx);
+void *compile_li106(ctx_t *ctx);
+void *compile_li107(ctx_t *ctx);
+void *compile_li108(ctx_t *ctx);
+void *compile_li109(ctx_t *ctx);
+void *compile_li11(ctx_t *ctx);
+void *compile_li110(ctx_t *ctx);
+void *compile_li111(ctx_t *ctx);
+void *compile_li112(ctx_t *ctx);
+void *compile_li113(ctx_t *ctx);
+void *compile_li114(ctx_t *ctx);
+void *compile_li115(ctx_t *ctx);
+void *compile_li116(ctx_t *ctx);
+void *compile_li117(ctx_t *ctx);
+void *compile_li118(ctx_t *ctx);
+void *compile_li119(ctx_t *ctx);
+void *compile_li12(ctx_t *ctx);
+void *compile_li120(ctx_t *ctx);
+void *compile_li121(ctx_t *ctx);
+void *compile_li122(ctx_t *ctx);
+void *compile_li123(ctx_t *ctx);
+void *compile_li124(ctx_t *ctx);
+void *compile_li125(ctx_t *ctx);
+void *compile_li126(ctx_t *ctx);
+void *compile_li127(ctx_t *ctx);
+void *compile_li128(ctx_t *ctx);
+void *compile_li129(ctx_t *ctx);
+void *compile_li13(ctx_t *ctx);
+void *compile_li130(ctx_t *ctx);
+void *compile_li131(ctx_t *ctx);
+void *compile_li132(ctx_t *ctx);
+void *compile_li133(ctx_t *ctx);
+void *compile_li134(ctx_t *ctx);
+void *compile_li135(ctx_t *ctx);
+void *compile_li136(ctx_t *ctx);
+void *compile_li137(ctx_t *ctx);
+void *compile_li138(ctx_t *ctx);
+void *compile_li139(ctx_t *ctx);
+void *compile_li14(ctx_t *ctx);
+void *compile_li140(ctx_t *ctx);
+void *compile_li141(ctx_t *ctx);
+void *compile_li142(ctx_t *ctx);
+void *compile_li143(ctx_t *ctx);
+void *compile_li144(ctx_t *ctx);
+void *compile_li145(ctx_t *ctx);
+void *compile_li146(ctx_t *ctx);
+void *compile_li147(ctx_t *ctx);
+void *compile_li148(ctx_t *ctx);
+void *compile_li149(ctx_t *ctx);
+void *compile_li15(ctx_t *ctx);
+void *compile_li150(ctx_t *ctx);
+void *compile_li151(ctx_t *ctx);
+void *compile_li152(ctx_t *ctx);
+void *compile_li153(ctx_t *ctx);
+void *compile_li154(ctx_t *ctx);
+void *compile_li155(ctx_t *ctx);
+void *compile_li156(ctx_t *ctx);
+void *compile_li157(ctx_t *ctx);
+void *compile_li158(ctx_t *ctx);
+void *compile_li159(ctx_t *ctx);
+void *compile_li16(ctx_t *ctx);
+void *compile_li160(ctx_t *ctx);
+void *compile_li161(ctx_t *ctx);
+void *compile_li162(ctx_t *ctx);
+void *compile_li163(ctx_t *ctx);
+void *compile_li164(ctx_t *ctx);
+void *compile_li165(ctx_t *ctx);
+void *compile_li166(ctx_t *ctx);
+void *compile_li167(ctx_t *ctx);
+void *compile_li168(ctx_t *ctx);
+void *compile_li169(ctx_t *ctx);
+void *compile_li17(ctx_t *ctx);
+void *compile_li170(ctx_t *ctx);
+void *compile_li171(ctx_t *ctx);
+void *compile_li172(ctx_t *ctx);
+void *compile_li173(ctx_t *ctx);
+void *compile_li174(ctx_t *ctx);
+void *compile_li175(ctx_t *ctx);
+void *compile_li176(ctx_t *ctx);
+void *compile_li177(ctx_t *ctx);
+void *compile_li178(ctx_t *ctx);
+void *compile_li179(ctx_t *ctx);
+void *compile_li18(ctx_t *ctx);
+void *compile_li180(ctx_t *ctx);
+void *compile_li181(ctx_t *ctx);
+void *compile_li182(ctx_t *ctx);
+void *compile_li183(ctx_t *ctx);
+void *compile_li184(ctx_t *ctx);
+void *compile_li185(ctx_t *ctx);
+void *compile_li186(ctx_t *ctx);
+void *compile_li187(ctx_t *ctx);
+void *compile_li188(ctx_t *ctx);
+void *compile_li189(ctx_t *ctx);
+void *compile_li19(ctx_t *ctx);
+void *compile_li190(ctx_t *ctx);
+void *compile_li191(ctx_t *ctx);
+void *compile_li192(ctx_t *ctx);
+void *compile_li193(ctx_t *ctx);
+void *compile_li194(ctx_t *ctx);
+void *compile_li195(ctx_t *ctx);
+void *compile_li196(ctx_t *ctx);
+void *compile_li197(ctx_t *ctx);
+void *compile_li198(ctx_t *ctx);
+void *compile_li199(ctx_t *ctx);
+void *compile_li2(ctx_t *ctx);
+void *compile_li20(ctx_t *ctx);
+void *compile_li200(ctx_t *ctx);
+void *compile_li201(ctx_t *ctx);
+void *compile_li202(ctx_t *ctx);
+void *compile_li203(ctx_t *ctx);
+void *compile_li204(ctx_t *ctx);
+void *compile_li205(ctx_t *ctx);
+void *compile_li206(ctx_t *ctx);
+void *compile_li207(ctx_t *ctx);
+void *compile_li208(ctx_t *ctx);
+void *compile_li209(ctx_t *ctx);
+void *compile_li21(ctx_t *ctx);
+void *compile_li210(ctx_t *ctx);
+void *compile_li211(ctx_t *ctx);
+void *compile_li212(ctx_t *ctx);
+void *compile_li213(ctx_t *ctx);
+void *compile_li214(ctx_t *ctx);
+void *compile_li215(ctx_t *ctx);
+void *compile_li216(ctx_t *ctx);
+void *compile_li217(ctx_t *ctx);
+void *compile_li218(ctx_t *ctx);
+void *compile_li219(ctx_t *ctx);
+void *compile_li22(ctx_t *ctx);
+void *compile_li220(ctx_t *ctx);
+void *compile_li221(ctx_t *ctx);
+void *compile_li222(ctx_t *ctx);
+void *compile_li223(ctx_t *ctx);
+void *compile_li224(ctx_t *ctx);
+void *compile_li225(ctx_t *ctx);
+void *compile_li226(ctx_t *ctx);
+void *compile_li227(ctx_t *ctx);
+void *compile_li228(ctx_t *ctx);
+void *compile_li229(ctx_t *ctx);
+void *compile_li23(ctx_t *ctx);
+void *compile_li230(ctx_t *ctx);
+void *compile_li231(ctx_t *ctx);
+void *compile_li232(ctx_t *ctx);
+void *compile_li233(ctx_t *ctx);
+void *compile_li234(ctx_t *ctx);
+void *compile_li235(ctx_t *ctx);
+void *compile_li236(ctx_t *ctx);
+void *compile_li237(ctx_t *ctx);
+void *compile_li238(ctx_t *ctx);
+void *compile_li239(ctx_t *ctx);
+void *compile_li24(ctx_t *ctx);
+void *compile_li240(ctx_t *ctx);
+void *compile_li241(ctx_t *ctx);
+void *compile_li242(ctx_t *ctx);
+void *compile_li243(ctx_t *ctx);
+void *compile_li244(ctx_t *ctx);
+void *compile_li245(ctx_t *ctx);
+void *compile_li246(ctx_t *ctx);
+void *compile_li247(ctx_t *ctx);
+void *compile_li248(ctx_t *ctx);
+void *compile_li249(ctx_t *ctx);
+void *compile_li25(ctx_t *ctx);
+void *compile_li250(ctx_t *ctx);
+void *compile_li251(ctx_t *ctx);
+void *compile_li252(ctx_t *ctx);
+void *compile_li253(ctx_t *ctx);
+void *compile_li254(ctx_t *ctx);
+void *compile_li255(ctx_t *ctx);
+void *compile_li26(ctx_t *ctx);
+void *compile_li27(ctx_t *ctx);
+void *compile_li28(ctx_t *ctx);
+void *compile_li29(ctx_t *ctx);
+void *compile_li3(ctx_t *ctx);
+void *compile_li30(ctx_t *ctx);
+void *compile_li31(ctx_t *ctx);
+void *compile_li32(ctx_t *ctx);
+void *compile_li33(ctx_t *ctx);
+void *compile_li34(ctx_t *ctx);
+void *compile_li35(ctx_t *ctx);
+void *compile_li36(ctx_t *ctx);
+void *compile_li37(ctx_t *ctx);
+void *compile_li38(ctx_t *ctx);
+void *compile_li39(ctx_t *ctx);
+void *compile_li4(ctx_t *ctx);
+void *compile_li40(ctx_t *ctx);
+void *compile_li41(ctx_t *ctx);
+void *compile_li42(ctx_t *ctx);
+void *compile_li43(ctx_t *ctx);
+void *compile_li44(ctx_t *ctx);
+void *compile_li45(ctx_t *ctx);
+void *compile_li46(ctx_t *ctx);
+void *compile_li47(ctx_t *ctx);
+void *compile_li48(ctx_t *ctx);
+void *compile_li49(ctx_t *ctx);
+void *compile_li5(ctx_t *ctx);
+void *compile_li50(ctx_t *ctx);
+void *compile_li51(ctx_t *ctx);
+void *compile_li52(ctx_t *ctx);
+void *compile_li53(ctx_t *ctx);
+void *compile_li54(ctx_t *ctx);
+void *compile_li55(ctx_t *ctx);
+void *compile_li56(ctx_t *ctx);
+void *compile_li57(ctx_t *ctx);
+void *compile_li58(ctx_t *ctx);
+void *compile_li59(ctx_t *ctx);
+void *compile_li6(ctx_t *ctx);
+void *compile_li60(ctx_t *ctx);
+void *compile_li61(ctx_t *ctx);
+void *compile_li62(ctx_t *ctx);
+void *compile_li63(ctx_t *ctx);
+void *compile_li64(ctx_t *ctx);
+void *compile_li65(ctx_t *ctx);
+void *compile_li66(ctx_t *ctx);
+void *compile_li67(ctx_t *ctx);
+void *compile_li68(ctx_t *ctx);
+void *compile_li69(ctx_t *ctx);
+void *compile_li7(ctx_t *ctx);
+void *compile_li70(ctx_t *ctx);
+void *compile_li71(ctx_t *ctx);
+void *compile_li72(ctx_t *ctx);
+void *compile_li73(ctx_t *ctx);
+void *compile_li74(ctx_t *ctx);
+void *compile_li75(ctx_t *ctx);
+void *compile_li76(ctx_t *ctx);
+void *compile_li77(ctx_t *ctx);
+void *compile_li78(ctx_t *ctx);
+void *compile_li79(ctx_t *ctx);
+void *compile_li8(ctx_t *ctx);
+void *compile_li80(ctx_t *ctx);
+void *compile_li81(ctx_t *ctx);
+void *compile_li82(ctx_t *ctx);
+void *compile_li83(ctx_t *ctx);
+void *compile_li84(ctx_t *ctx);
+void *compile_li85(ctx_t *ctx);
+void *compile_li86(ctx_t *ctx);
+void *compile_li87(ctx_t *ctx);
+void *compile_li88(ctx_t *ctx);
+void *compile_li89(ctx_t *ctx);
+void *compile_li9(ctx_t *ctx);
+void *compile_li90(ctx_t *ctx);
+void *compile_li91(ctx_t *ctx);
+void *compile_li92(ctx_t *ctx);
+void *compile_li93(ctx_t *ctx);
+void *compile_li94(ctx_t *ctx);
+void *compile_li95(ctx_t *ctx);
+void *compile_li96(ctx_t *ctx);
+void *compile_li97(ctx_t *ctx);
+void *compile_li98(ctx_t *ctx);
+void *compile_li99(ctx_t *ctx);
+void *compile_sla0(ctx_t *ctx);
+void *compile_sla1(ctx_t *ctx);
+void *compile_sla10(ctx_t *ctx);
+void *compile_sla11(ctx_t *ctx);
+void *compile_sla12(ctx_t *ctx);
+void *compile_sla13(ctx_t *ctx);
+void *compile_sla14(ctx_t *ctx);
+void *compile_sla15(ctx_t *ctx);
+void *compile_sla16(ctx_t *ctx);
+void *compile_sla17(ctx_t *ctx);
+void *compile_sla18(ctx_t *ctx);
+void *compile_sla19(ctx_t *ctx);
+void *compile_sla2(ctx_t *ctx);
+void *compile_sla20(ctx_t *ctx);
+void *compile_sla21(ctx_t *ctx);
+void *compile_sla22(ctx_t *ctx);
+void *compile_sla23(ctx_t *ctx);
+void *compile_sla24(ctx_t *ctx);
+void *compile_sla25(ctx_t *ctx);
+void *compile_sla26(ctx_t *ctx);
+void *compile_sla27(ctx_t *ctx);
+void *compile_sla28(ctx_t *ctx);
+void *compile_sla29(ctx_t *ctx);
+void *compile_sla3(ctx_t *ctx);
+void *compile_sla30(ctx_t *ctx);
+void *compile_sla31(ctx_t *ctx);
+void *compile_sla32(ctx_t *ctx);
+void *compile_sla33(ctx_t *ctx);
+void *compile_sla34(ctx_t *ctx);
+void *compile_sla35(ctx_t *ctx);
+void *compile_sla36(ctx_t *ctx);
+void *compile_sla37(ctx_t *ctx);
+void *compile_sla38(ctx_t *ctx);
+void *compile_sla39(ctx_t *ctx);
+void *compile_sla4(ctx_t *ctx);
+void *compile_sla40(ctx_t *ctx);
+void *compile_sla41(ctx_t *ctx);
+void *compile_sla42(ctx_t *ctx);
+void *compile_sla43(ctx_t *ctx);
+void *compile_sla44(ctx_t *ctx);
+void *compile_sla45(ctx_t *ctx);
+void *compile_sla46(ctx_t *ctx);
+void *compile_sla47(ctx_t *ctx);
+void *compile_sla48(ctx_t *ctx);
+void *compile_sla49(ctx_t *ctx);
+void *compile_sla5(ctx_t *ctx);
+void *compile_sla50(ctx_t *ctx);
+void *compile_sla51(ctx_t *ctx);
+void *compile_sla52(ctx_t *ctx);
+void *compile_sla53(ctx_t *ctx);
+void *compile_sla54(ctx_t *ctx);
+void *compile_sla55(ctx_t *ctx);
+void *compile_sla56(ctx_t *ctx);
+void *compile_sla57(ctx_t *ctx);
+void *compile_sla58(ctx_t *ctx);
+void *compile_sla59(ctx_t *ctx);
+void *compile_sla6(ctx_t *ctx);
+void *compile_sla60(ctx_t *ctx);
+void *compile_sla61(ctx_t *ctx);
+void *compile_sla62(ctx_t *ctx);
+void *compile_sla63(ctx_t *ctx);
+void *compile_sla7(ctx_t *ctx);
+void *compile_sla8(ctx_t *ctx);
+void *compile_sla9(ctx_t *ctx);
+void *compile_slo0(ctx_t *ctx);
+void *compile_slo1(ctx_t *ctx);
+void *compile_slo10(ctx_t *ctx);
+void *compile_slo11(ctx_t *ctx);
+void *compile_slo12(ctx_t *ctx);
+void *compile_slo13(ctx_t *ctx);
+void *compile_slo14(ctx_t *ctx);
+void *compile_slo15(ctx_t *ctx);
+void *compile_slo16(ctx_t *ctx);
+void *compile_slo17(ctx_t *ctx);
+void *compile_slo18(ctx_t *ctx);
+void *compile_slo19(ctx_t *ctx);
+void *compile_slo2(ctx_t *ctx);
+void *compile_slo20(ctx_t *ctx);
+void *compile_slo21(ctx_t *ctx);
+void *compile_slo22(ctx_t *ctx);
+void *compile_slo23(ctx_t *ctx);
+void *compile_slo24(ctx_t *ctx);
+void *compile_slo25(ctx_t *ctx);
+void *compile_slo26(ctx_t *ctx);
+void *compile_slo27(ctx_t *ctx);
+void *compile_slo28(ctx_t *ctx);
+void *compile_slo29(ctx_t *ctx);
+void *compile_slo3(ctx_t *ctx);
+void *compile_slo30(ctx_t *ctx);
+void *compile_slo31(ctx_t *ctx);
+void *compile_slo32(ctx_t *ctx);
+void *compile_slo33(ctx_t *ctx);
+void *compile_slo34(ctx_t *ctx);
+void *compile_slo35(ctx_t *ctx);
+void *compile_slo36(ctx_t *ctx);
+void *compile_slo37(ctx_t *ctx);
+void *compile_slo38(ctx_t *ctx);
+void *compile_slo39(ctx_t *ctx);
+void *compile_slo4(ctx_t *ctx);
+void *compile_slo40(ctx_t *ctx);
+void *compile_slo41(ctx_t *ctx);
+void *compile_slo42(ctx_t *ctx);
+void *compile_slo43(ctx_t *ctx);
+void *compile_slo44(ctx_t *ctx);
+void *compile_slo45(ctx_t *ctx);
+void *compile_slo46(ctx_t *ctx);
+void *compile_slo47(ctx_t *ctx);
+void *compile_slo48(ctx_t *ctx);
+void *compile_slo49(ctx_t *ctx);
+void *compile_slo5(ctx_t *ctx);
+void *compile_slo50(ctx_t *ctx);
+void *compile_slo51(ctx_t *ctx);
+void *compile_slo52(ctx_t *ctx);
+void *compile_slo53(ctx_t *ctx);
+void *compile_slo54(ctx_t *ctx);
+void *compile_slo55(ctx_t *ctx);
+void *compile_slo56(ctx_t *ctx);
+void *compile_slo57(ctx_t *ctx);
+void *compile_slo58(ctx_t *ctx);
+void *compile_slo59(ctx_t *ctx);
+void *compile_slo6(ctx_t *ctx);
+void *compile_slo60(ctx_t *ctx);
+void *compile_slo61(ctx_t *ctx);
+void *compile_slo62(ctx_t *ctx);
+void *compile_slo63(ctx_t *ctx);
+void *compile_slo7(ctx_t *ctx);
+void *compile_slo8(ctx_t *ctx);
+void *compile_slo9(ctx_t *ctx);
+void *compile_slx0(ctx_t *ctx);
+void *compile_slx1(ctx_t *ctx);
+void *compile_slx10(ctx_t *ctx);
+void *compile_slx11(ctx_t *ctx);
+void *compile_slx12(ctx_t *ctx);
+void *compile_slx13(ctx_t *ctx);
+void *compile_slx14(ctx_t *ctx);
+void *compile_slx15(ctx_t *ctx);
+void *compile_slx16(ctx_t *ctx);
+void *compile_slx17(ctx_t *ctx);
+void *compile_slx18(ctx_t *ctx);
+void *compile_slx19(ctx_t *ctx);
+void *compile_slx2(ctx_t *ctx);
+void *compile_slx20(ctx_t *ctx);
+void *compile_slx21(ctx_t *ctx);
+void *compile_slx22(ctx_t *ctx);
+void *compile_slx23(ctx_t *ctx);
+void *compile_slx24(ctx_t *ctx);
+void *compile_slx25(ctx_t *ctx);
+void *compile_slx26(ctx_t *ctx);
+void *compile_slx27(ctx_t *ctx);
+void *compile_slx28(ctx_t *ctx);
+void *compile_slx29(ctx_t *ctx);
+void *compile_slx3(ctx_t *ctx);
+void *compile_slx30(ctx_t *ctx);
+void *compile_slx31(ctx_t *ctx);
+void *compile_slx32(ctx_t *ctx);
+void *compile_slx33(ctx_t *ctx);
+void *compile_slx34(ctx_t *ctx);
+void *compile_slx35(ctx_t *ctx);
+void *compile_slx36(ctx_t *ctx);
+void *compile_slx37(ctx_t *ctx);
+void *compile_slx38(ctx_t *ctx);
+void *compile_slx39(ctx_t *ctx);
+void *compile_slx4(ctx_t *ctx);
+void *compile_slx40(ctx_t *ctx);
+void *compile_slx41(ctx_t *ctx);
+void *compile_slx42(ctx_t *ctx);
+void *compile_slx43(ctx_t *ctx);
+void *compile_slx44(ctx_t *ctx);
+void *compile_slx45(ctx_t *ctx);
+void *compile_slx46(ctx_t *ctx);
+void *compile_slx47(ctx_t *ctx);
+void *compile_slx48(ctx_t *ctx);
+void *compile_slx49(ctx_t *ctx);
+void *compile_slx5(ctx_t *ctx);
+void *compile_slx50(ctx_t *ctx);
+void *compile_slx51(ctx_t *ctx);
+void *compile_slx52(ctx_t *ctx);
+void *compile_slx53(ctx_t *ctx);
+void *compile_slx54(ctx_t *ctx);
+void *compile_slx55(ctx_t *ctx);
+void *compile_slx56(ctx_t *ctx);
+void *compile_slx57(ctx_t *ctx);
+void *compile_slx58(ctx_t *ctx);
+void *compile_slx59(ctx_t *ctx);
+void *compile_slx6(ctx_t *ctx);
+void *compile_slx60(ctx_t *ctx);
+void *compile_slx61(ctx_t *ctx);
+void *compile_slx62(ctx_t *ctx);
+void *compile_slx63(ctx_t *ctx);
+void *compile_slx7(ctx_t *ctx);
+void *compile_slx8(ctx_t *ctx);
+void *compile_slx9(ctx_t *ctx);
+void *compile_sly0(ctx_t *ctx);
+void *compile_sly1(ctx_t *ctx);
+void *compile_sly10(ctx_t *ctx);
+void *compile_sly11(ctx_t *ctx);
+void *compile_sly12(ctx_t *ctx);
+void *compile_sly13(ctx_t *ctx);
+void *compile_sly14(ctx_t *ctx);
+void *compile_sly15(ctx_t *ctx);
+void *compile_sly16(ctx_t *ctx);
+void *compile_sly17(ctx_t *ctx);
+void *compile_sly18(ctx_t *ctx);
+void *compile_sly19(ctx_t *ctx);
+void *compile_sly2(ctx_t *ctx);
+void *compile_sly20(ctx_t *ctx);
+void *compile_sly21(ctx_t *ctx);
+void *compile_sly22(ctx_t *ctx);
+void *compile_sly23(ctx_t *ctx);
+void *compile_sly24(ctx_t *ctx);
+void *compile_sly25(ctx_t *ctx);
+void *compile_sly26(ctx_t *ctx);
+void *compile_sly27(ctx_t *ctx);
+void *compile_sly28(ctx_t *ctx);
+void *compile_sly29(ctx_t *ctx);
+void *compile_sly3(ctx_t *ctx);
+void *compile_sly30(ctx_t *ctx);
+void *compile_sly31(ctx_t *ctx);
+void *compile_sly32(ctx_t *ctx);
+void *compile_sly33(ctx_t *ctx);
+void *compile_sly34(ctx_t *ctx);
+void *compile_sly35(ctx_t *ctx);
+void *compile_sly36(ctx_t *ctx);
+void *compile_sly37(ctx_t *ctx);
+void *compile_sly38(ctx_t *ctx);
+void *compile_sly39(ctx_t *ctx);
+void *compile_sly4(ctx_t *ctx);
+void *compile_sly40(ctx_t *ctx);
+void *compile_sly41(ctx_t *ctx);
+void *compile_sly42(ctx_t *ctx);
+void *compile_sly43(ctx_t *ctx);
+void *compile_sly44(ctx_t *ctx);
+void *compile_sly45(ctx_t *ctx);
+void *compile_sly46(ctx_t *ctx);
+void *compile_sly47(ctx_t *ctx);
+void *compile_sly48(ctx_t *ctx);
+void *compile_sly49(ctx_t *ctx);
+void *compile_sly5(ctx_t *ctx);
+void *compile_sly50(ctx_t *ctx);
+void *compile_sly51(ctx_t *ctx);
+void *compile_sly52(ctx_t *ctx);
+void *compile_sly53(ctx_t *ctx);
+void *compile_sly54(ctx_t *ctx);
+void *compile_sly55(ctx_t *ctx);
+void *compile_sly56(ctx_t *ctx);
+void *compile_sly57(ctx_t *ctx);
+void *compile_sly58(ctx_t *ctx);
+void *compile_sly59(ctx_t *ctx);
+void *compile_sly6(ctx_t *ctx);
+void *compile_sly60(ctx_t *ctx);
+void *compile_sly61(ctx_t *ctx);
+void *compile_sly62(ctx_t *ctx);
+void *compile_sly63(ctx_t *ctx);
+void *compile_sly7(ctx_t *ctx);
+void *compile_sly8(ctx_t *ctx);
+void *compile_sly9(ctx_t *ctx);
+void *compile_sra0(ctx_t *ctx);
+void *compile_sra1(ctx_t *ctx);
+void *compile_sra10(ctx_t *ctx);
+void *compile_sra11(ctx_t *ctx);
+void *compile_sra12(ctx_t *ctx);
+void *compile_sra13(ctx_t *ctx);
+void *compile_sra14(ctx_t *ctx);
+void *compile_sra15(ctx_t *ctx);
+void *compile_sra16(ctx_t *ctx);
+void *compile_sra17(ctx_t *ctx);
+void *compile_sra18(ctx_t *ctx);
+void *compile_sra19(ctx_t *ctx);
+void *compile_sra2(ctx_t *ctx);
+void *compile_sra20(ctx_t *ctx);
+void *compile_sra21(ctx_t *ctx);
+void *compile_sra22(ctx_t *ctx);
+void *compile_sra23(ctx_t *ctx);
+void *compile_sra24(ctx_t *ctx);
+void *compile_sra25(ctx_t *ctx);
+void *compile_sra26(ctx_t *ctx);
+void *compile_sra27(ctx_t *ctx);
+void *compile_sra28(ctx_t *ctx);
+void *compile_sra29(ctx_t *ctx);
+void *compile_sra3(ctx_t *ctx);
+void *compile_sra30(ctx_t *ctx);
+void *compile_sra31(ctx_t *ctx);
+void *compile_sra32(ctx_t *ctx);
+void *compile_sra33(ctx_t *ctx);
+void *compile_sra34(ctx_t *ctx);
+void *compile_sra35(ctx_t *ctx);
+void *compile_sra36(ctx_t *ctx);
+void *compile_sra37(ctx_t *ctx);
+void *compile_sra38(ctx_t *ctx);
+void *compile_sra39(ctx_t *ctx);
+void *compile_sra4(ctx_t *ctx);
+void *compile_sra40(ctx_t *ctx);
+void *compile_sra41(ctx_t *ctx);
+void *compile_sra42(ctx_t *ctx);
+void *compile_sra43(ctx_t *ctx);
+void *compile_sra44(ctx_t *ctx);
+void *compile_sra45(ctx_t *ctx);
+void *compile_sra46(ctx_t *ctx);
+void *compile_sra47(ctx_t *ctx);
+void *compile_sra48(ctx_t *ctx);
+void *compile_sra49(ctx_t *ctx);
+void *compile_sra5(ctx_t *ctx);
+void *compile_sra50(ctx_t *ctx);
+void *compile_sra51(ctx_t *ctx);
+void *compile_sra52(ctx_t *ctx);
+void *compile_sra53(ctx_t *ctx);
+void *compile_sra54(ctx_t *ctx);
+void *compile_sra55(ctx_t *ctx);
+void *compile_sra56(ctx_t *ctx);
+void *compile_sra57(ctx_t *ctx);
+void *compile_sra58(ctx_t *ctx);
+void *compile_sra59(ctx_t *ctx);
+void *compile_sra6(ctx_t *ctx);
+void *compile_sra60(ctx_t *ctx);
+void *compile_sra61(ctx_t *ctx);
+void *compile_sra62(ctx_t *ctx);
+void *compile_sra63(ctx_t *ctx);
+void *compile_sra7(ctx_t *ctx);
+void *compile_sra8(ctx_t *ctx);
+void *compile_sra9(ctx_t *ctx);
+void *compile_sro0(ctx_t *ctx);
+void *compile_sro1(ctx_t *ctx);
+void *compile_sro10(ctx_t *ctx);
+void *compile_sro11(ctx_t *ctx);
+void *compile_sro12(ctx_t *ctx);
+void *compile_sro13(ctx_t *ctx);
+void *compile_sro14(ctx_t *ctx);
+void *compile_sro15(ctx_t *ctx);
+void *compile_sro16(ctx_t *ctx);
+void *compile_sro17(ctx_t *ctx);
+void *compile_sro18(ctx_t *ctx);
+void *compile_sro19(ctx_t *ctx);
+void *compile_sro2(ctx_t *ctx);
+void *compile_sro20(ctx_t *ctx);
+void *compile_sro21(ctx_t *ctx);
+void *compile_sro22(ctx_t *ctx);
+void *compile_sro23(ctx_t *ctx);
+void *compile_sro24(ctx_t *ctx);
+void *compile_sro25(ctx_t *ctx);
+void *compile_sro26(ctx_t *ctx);
+void *compile_sro27(ctx_t *ctx);
+void *compile_sro28(ctx_t *ctx);
+void *compile_sro29(ctx_t *ctx);
+void *compile_sro3(ctx_t *ctx);
+void *compile_sro30(ctx_t *ctx);
+void *compile_sro31(ctx_t *ctx);
+void *compile_sro32(ctx_t *ctx);
+void *compile_sro33(ctx_t *ctx);
+void *compile_sro34(ctx_t *ctx);
+void *compile_sro35(ctx_t *ctx);
+void *compile_sro36(ctx_t *ctx);
+void *compile_sro37(ctx_t *ctx);
+void *compile_sro38(ctx_t *ctx);
+void *compile_sro39(ctx_t *ctx);
+void *compile_sro4(ctx_t *ctx);
+void *compile_sro40(ctx_t *ctx);
+void *compile_sro41(ctx_t *ctx);
+void *compile_sro42(ctx_t *ctx);
+void *compile_sro43(ctx_t *ctx);
+void *compile_sro44(ctx_t *ctx);
+void *compile_sro45(ctx_t *ctx);
+void *compile_sro46(ctx_t *ctx);
+void *compile_sro47(ctx_t *ctx);
+void *compile_sro48(ctx_t *ctx);
+void *compile_sro49(ctx_t *ctx);
+void *compile_sro5(ctx_t *ctx);
+void *compile_sro50(ctx_t *ctx);
+void *compile_sro51(ctx_t *ctx);
+void *compile_sro52(ctx_t *ctx);
+void *compile_sro53(ctx_t *ctx);
+void *compile_sro54(ctx_t *ctx);
+void *compile_sro55(ctx_t *ctx);
+void *compile_sro56(ctx_t *ctx);
+void *compile_sro57(ctx_t *ctx);
+void *compile_sro58(ctx_t *ctx);
+void *compile_sro59(ctx_t *ctx);
+void *compile_sro6(ctx_t *ctx);
+void *compile_sro60(ctx_t *ctx);
+void *compile_sro61(ctx_t *ctx);
+void *compile_sro62(ctx_t *ctx);
+void *compile_sro63(ctx_t *ctx);
+void *compile_sro7(ctx_t *ctx);
+void *compile_sro8(ctx_t *ctx);
+void *compile_sro9(ctx_t *ctx);
+void *compile_srx0(ctx_t *ctx);
+void *compile_srx1(ctx_t *ctx);
+void *compile_srx10(ctx_t *ctx);
+void *compile_srx11(ctx_t *ctx);
+void *compile_srx12(ctx_t *ctx);
+void *compile_srx13(ctx_t *ctx);
+void *compile_srx14(ctx_t *ctx);
+void *compile_srx15(ctx_t *ctx);
+void *compile_srx16(ctx_t *ctx);
+void *compile_srx17(ctx_t *ctx);
+void *compile_srx18(ctx_t *ctx);
+void *compile_srx19(ctx_t *ctx);
+void *compile_srx2(ctx_t *ctx);
+void *compile_srx20(ctx_t *ctx);
+void *compile_srx21(ctx_t *ctx);
+void *compile_srx22(ctx_t *ctx);
+void *compile_srx23(ctx_t *ctx);
+void *compile_srx24(ctx_t *ctx);
+void *compile_srx25(ctx_t *ctx);
+void *compile_srx26(ctx_t *ctx);
+void *compile_srx27(ctx_t *ctx);
+void *compile_srx28(ctx_t *ctx);
+void *compile_srx29(ctx_t *ctx);
+void *compile_srx3(ctx_t *ctx);
+void *compile_srx30(ctx_t *ctx);
+void *compile_srx31(ctx_t *ctx);
+void *compile_srx32(ctx_t *ctx);
+void *compile_srx33(ctx_t *ctx);
+void *compile_srx34(ctx_t *ctx);
+void *compile_srx35(ctx_t *ctx);
+void *compile_srx36(ctx_t *ctx);
+void *compile_srx37(ctx_t *ctx);
+void *compile_srx38(ctx_t *ctx);
+void *compile_srx39(ctx_t *ctx);
+void *compile_srx4(ctx_t *ctx);
+void *compile_srx40(ctx_t *ctx);
+void *compile_srx41(ctx_t *ctx);
+void *compile_srx42(ctx_t *ctx);
+void *compile_srx43(ctx_t *ctx);
+void *compile_srx44(ctx_t *ctx);
+void *compile_srx45(ctx_t *ctx);
+void *compile_srx46(ctx_t *ctx);
+void *compile_srx47(ctx_t *ctx);
+void *compile_srx48(ctx_t *ctx);
+void *compile_srx49(ctx_t *ctx);
+void *compile_srx5(ctx_t *ctx);
+void *compile_srx50(ctx_t *ctx);
+void *compile_srx51(ctx_t *ctx);
+void *compile_srx52(ctx_t *ctx);
+void *compile_srx53(ctx_t *ctx);
+void *compile_srx54(ctx_t *ctx);
+void *compile_srx55(ctx_t *ctx);
+void *compile_srx56(ctx_t *ctx);
+void *compile_srx57(ctx_t *ctx);
+void *compile_srx58(ctx_t *ctx);
+void *compile_srx59(ctx_t *ctx);
+void *compile_srx6(ctx_t *ctx);
+void *compile_srx60(ctx_t *ctx);
+void *compile_srx61(ctx_t *ctx);
+void *compile_srx62(ctx_t *ctx);
+void *compile_srx63(ctx_t *ctx);
+void *compile_srx7(ctx_t *ctx);
+void *compile_srx8(ctx_t *ctx);
+void *compile_srx9(ctx_t *ctx);
+void *compile_sry0(ctx_t *ctx);
+void *compile_sry1(ctx_t *ctx);
+void *compile_sry10(ctx_t *ctx);
+void *compile_sry11(ctx_t *ctx);
+void *compile_sry12(ctx_t *ctx);
+void *compile_sry13(ctx_t *ctx);
+void *compile_sry14(ctx_t *ctx);
+void *compile_sry15(ctx_t *ctx);
+void *compile_sry16(ctx_t *ctx);
+void *compile_sry17(ctx_t *ctx);
+void *compile_sry18(ctx_t *ctx);
+void *compile_sry19(ctx_t *ctx);
+void *compile_sry2(ctx_t *ctx);
+void *compile_sry20(ctx_t *ctx);
+void *compile_sry21(ctx_t *ctx);
+void *compile_sry22(ctx_t *ctx);
+void *compile_sry23(ctx_t *ctx);
+void *compile_sry24(ctx_t *ctx);
+void *compile_sry25(ctx_t *ctx);
+void *compile_sry26(ctx_t *ctx);
+void *compile_sry27(ctx_t *ctx);
+void *compile_sry28(ctx_t *ctx);
+void *compile_sry29(ctx_t *ctx);
+void *compile_sry3(ctx_t *ctx);
+void *compile_sry30(ctx_t *ctx);
+void *compile_sry31(ctx_t *ctx);
+void *compile_sry32(ctx_t *ctx);
+void *compile_sry33(ctx_t *ctx);
+void *compile_sry34(ctx_t *ctx);
+void *compile_sry35(ctx_t *ctx);
+void *compile_sry36(ctx_t *ctx);
+void *compile_sry37(ctx_t *ctx);
+void *compile_sry38(ctx_t *ctx);
+void *compile_sry39(ctx_t *ctx);
+void *compile_sry4(ctx_t *ctx);
+void *compile_sry40(ctx_t *ctx);
+void *compile_sry41(ctx_t *ctx);
+void *compile_sry42(ctx_t *ctx);
+void *compile_sry43(ctx_t *ctx);
+void *compile_sry44(ctx_t *ctx);
+void *compile_sry45(ctx_t *ctx);
+void *compile_sry46(ctx_t *ctx);
+void *compile_sry47(ctx_t *ctx);
+void *compile_sry48(ctx_t *ctx);
+void *compile_sry49(ctx_t *ctx);
+void *compile_sry5(ctx_t *ctx);
+void *compile_sry50(ctx_t *ctx);
+void *compile_sry51(ctx_t *ctx);
+void *compile_sry52(ctx_t *ctx);
+void *compile_sry53(ctx_t *ctx);
+void *compile_sry54(ctx_t *ctx);
+void *compile_sry55(ctx_t *ctx);
+void *compile_sry56(ctx_t *ctx);
+void *compile_sry57(ctx_t *ctx);
+void *compile_sry58(ctx_t *ctx);
+void *compile_sry59(ctx_t *ctx);
+void *compile_sry6(ctx_t *ctx);
+void *compile_sry60(ctx_t *ctx);
+void *compile_sry61(ctx_t *ctx);
+void *compile_sry62(ctx_t *ctx);
+void *compile_sry63(ctx_t *ctx);
+void *compile_sry7(ctx_t *ctx);
+void *compile_sry8(ctx_t *ctx);
+void *compile_sry9(ctx_t *ctx);
+#endif /* COPYJIT_DECLS_H */
diff --git a/lib/defns.h b/lib/defns.h
new file mode 100644
index 0000000..ac9607a
--- /dev/null
+++ b/lib/defns.h
@@ -0,0 +1,9082 @@
+#ifndef COPYJIT_DEFNS_H
+#define COPYJIT_DEFNS_H
+void *compile_add(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_add, gen_add_len);
+ ctx->pc += gen_add_len;
+ return pc;
+ }
+void *compile_addao(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addao, gen_addao_len);
+ ctx->pc += gen_addao_len;
+ return pc;
+ }
+void *compile_addxo(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addxo, gen_addxo_len);
+ ctx->pc += gen_addxo_len;
+ return pc;
+ }
+void *compile_addyo(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addyo, gen_addyo_len);
+ ctx->pc += gen_addyo_len;
+ return pc;
+ }
+void *compile_ban(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_ban, gen_ban_len);
+ ctx->pc += gen_ban_len;
+ return pc;
+ }
+void *compile_baz(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_baz, gen_baz_len);
+ ctx->pc += gen_baz_len;
+ return pc;
+ }
+void *compile_end(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_end, gen_end_len);
+ ctx->pc += gen_end_len;
+ return pc;
+ }
+void *compile_incy(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_incy, gen_incy_len);
+ ctx->pc += gen_incy_len;
+ return pc;
+ }
+void *compile_j(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_j, gen_j_len);
+ ctx->pc += gen_j_len;
+ return pc;
+ }
+void *compile_movao(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_movao, gen_movao_len);
+ ctx->pc += gen_movao_len;
+ return pc;
+ }
+void *compile_movxa(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_movxa, gen_movxa_len);
+ ctx->pc += gen_movxa_len;
+ return pc;
+ }
+void *compile_movxo(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_movxo, gen_movxo_len);
+ ctx->pc += gen_movxo_len;
+ return pc;
+ }
+void *compile_movya(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_movya, gen_movya_len);
+ ctx->pc += gen_movya_len;
+ return pc;
+ }
+void *compile_movyo(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_movyo, gen_movyo_len);
+ ctx->pc += gen_movyo_len;
+ return pc;
+ }
+void *compile_sub(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sub, gen_sub_len);
+ ctx->pc += gen_sub_len;
+ return pc;
+ }
+void *compile_subxo(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_subxo, gen_subxo_len);
+ ctx->pc += gen_subxo_len;
+ return pc;
+ }
+void *compile_subyo(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_subyo, gen_subyo_len);
+ ctx->pc += gen_subyo_len;
+ return pc;
+ }
+void *compile_addi0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi0, gen_addi0_len);
+ ctx->pc += gen_addi0_len;
+ return pc;
+ }
+void *compile_addi1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi1, gen_addi1_len);
+ ctx->pc += gen_addi1_len;
+ return pc;
+ }
+void *compile_addi10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi10, gen_addi10_len);
+ ctx->pc += gen_addi10_len;
+ return pc;
+ }
+void *compile_addi100(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi100, gen_addi100_len);
+ ctx->pc += gen_addi100_len;
+ return pc;
+ }
+void *compile_addi101(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi101, gen_addi101_len);
+ ctx->pc += gen_addi101_len;
+ return pc;
+ }
+void *compile_addi102(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi102, gen_addi102_len);
+ ctx->pc += gen_addi102_len;
+ return pc;
+ }
+void *compile_addi103(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi103, gen_addi103_len);
+ ctx->pc += gen_addi103_len;
+ return pc;
+ }
+void *compile_addi104(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi104, gen_addi104_len);
+ ctx->pc += gen_addi104_len;
+ return pc;
+ }
+void *compile_addi105(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi105, gen_addi105_len);
+ ctx->pc += gen_addi105_len;
+ return pc;
+ }
+void *compile_addi106(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi106, gen_addi106_len);
+ ctx->pc += gen_addi106_len;
+ return pc;
+ }
+void *compile_addi107(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi107, gen_addi107_len);
+ ctx->pc += gen_addi107_len;
+ return pc;
+ }
+void *compile_addi108(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi108, gen_addi108_len);
+ ctx->pc += gen_addi108_len;
+ return pc;
+ }
+void *compile_addi109(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi109, gen_addi109_len);
+ ctx->pc += gen_addi109_len;
+ return pc;
+ }
+void *compile_addi11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi11, gen_addi11_len);
+ ctx->pc += gen_addi11_len;
+ return pc;
+ }
+void *compile_addi110(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi110, gen_addi110_len);
+ ctx->pc += gen_addi110_len;
+ return pc;
+ }
+void *compile_addi111(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi111, gen_addi111_len);
+ ctx->pc += gen_addi111_len;
+ return pc;
+ }
+void *compile_addi112(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi112, gen_addi112_len);
+ ctx->pc += gen_addi112_len;
+ return pc;
+ }
+void *compile_addi113(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi113, gen_addi113_len);
+ ctx->pc += gen_addi113_len;
+ return pc;
+ }
+void *compile_addi114(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi114, gen_addi114_len);
+ ctx->pc += gen_addi114_len;
+ return pc;
+ }
+void *compile_addi115(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi115, gen_addi115_len);
+ ctx->pc += gen_addi115_len;
+ return pc;
+ }
+void *compile_addi116(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi116, gen_addi116_len);
+ ctx->pc += gen_addi116_len;
+ return pc;
+ }
+void *compile_addi117(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi117, gen_addi117_len);
+ ctx->pc += gen_addi117_len;
+ return pc;
+ }
+void *compile_addi118(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi118, gen_addi118_len);
+ ctx->pc += gen_addi118_len;
+ return pc;
+ }
+void *compile_addi119(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi119, gen_addi119_len);
+ ctx->pc += gen_addi119_len;
+ return pc;
+ }
+void *compile_addi12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi12, gen_addi12_len);
+ ctx->pc += gen_addi12_len;
+ return pc;
+ }
+void *compile_addi120(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi120, gen_addi120_len);
+ ctx->pc += gen_addi120_len;
+ return pc;
+ }
+void *compile_addi121(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi121, gen_addi121_len);
+ ctx->pc += gen_addi121_len;
+ return pc;
+ }
+void *compile_addi122(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi122, gen_addi122_len);
+ ctx->pc += gen_addi122_len;
+ return pc;
+ }
+void *compile_addi123(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi123, gen_addi123_len);
+ ctx->pc += gen_addi123_len;
+ return pc;
+ }
+void *compile_addi124(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi124, gen_addi124_len);
+ ctx->pc += gen_addi124_len;
+ return pc;
+ }
+void *compile_addi125(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi125, gen_addi125_len);
+ ctx->pc += gen_addi125_len;
+ return pc;
+ }
+void *compile_addi126(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi126, gen_addi126_len);
+ ctx->pc += gen_addi126_len;
+ return pc;
+ }
+void *compile_addi127(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi127, gen_addi127_len);
+ ctx->pc += gen_addi127_len;
+ return pc;
+ }
+void *compile_addi128(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi128, gen_addi128_len);
+ ctx->pc += gen_addi128_len;
+ return pc;
+ }
+void *compile_addi129(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi129, gen_addi129_len);
+ ctx->pc += gen_addi129_len;
+ return pc;
+ }
+void *compile_addi13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi13, gen_addi13_len);
+ ctx->pc += gen_addi13_len;
+ return pc;
+ }
+void *compile_addi130(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi130, gen_addi130_len);
+ ctx->pc += gen_addi130_len;
+ return pc;
+ }
+void *compile_addi131(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi131, gen_addi131_len);
+ ctx->pc += gen_addi131_len;
+ return pc;
+ }
+void *compile_addi132(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi132, gen_addi132_len);
+ ctx->pc += gen_addi132_len;
+ return pc;
+ }
+void *compile_addi133(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi133, gen_addi133_len);
+ ctx->pc += gen_addi133_len;
+ return pc;
+ }
+void *compile_addi134(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi134, gen_addi134_len);
+ ctx->pc += gen_addi134_len;
+ return pc;
+ }
+void *compile_addi135(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi135, gen_addi135_len);
+ ctx->pc += gen_addi135_len;
+ return pc;
+ }
+void *compile_addi136(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi136, gen_addi136_len);
+ ctx->pc += gen_addi136_len;
+ return pc;
+ }
+void *compile_addi137(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi137, gen_addi137_len);
+ ctx->pc += gen_addi137_len;
+ return pc;
+ }
+void *compile_addi138(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi138, gen_addi138_len);
+ ctx->pc += gen_addi138_len;
+ return pc;
+ }
+void *compile_addi139(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi139, gen_addi139_len);
+ ctx->pc += gen_addi139_len;
+ return pc;
+ }
+void *compile_addi14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi14, gen_addi14_len);
+ ctx->pc += gen_addi14_len;
+ return pc;
+ }
+void *compile_addi140(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi140, gen_addi140_len);
+ ctx->pc += gen_addi140_len;
+ return pc;
+ }
+void *compile_addi141(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi141, gen_addi141_len);
+ ctx->pc += gen_addi141_len;
+ return pc;
+ }
+void *compile_addi142(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi142, gen_addi142_len);
+ ctx->pc += gen_addi142_len;
+ return pc;
+ }
+void *compile_addi143(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi143, gen_addi143_len);
+ ctx->pc += gen_addi143_len;
+ return pc;
+ }
+void *compile_addi144(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi144, gen_addi144_len);
+ ctx->pc += gen_addi144_len;
+ return pc;
+ }
+void *compile_addi145(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi145, gen_addi145_len);
+ ctx->pc += gen_addi145_len;
+ return pc;
+ }
+void *compile_addi146(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi146, gen_addi146_len);
+ ctx->pc += gen_addi146_len;
+ return pc;
+ }
+void *compile_addi147(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi147, gen_addi147_len);
+ ctx->pc += gen_addi147_len;
+ return pc;
+ }
+void *compile_addi148(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi148, gen_addi148_len);
+ ctx->pc += gen_addi148_len;
+ return pc;
+ }
+void *compile_addi149(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi149, gen_addi149_len);
+ ctx->pc += gen_addi149_len;
+ return pc;
+ }
+void *compile_addi15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi15, gen_addi15_len);
+ ctx->pc += gen_addi15_len;
+ return pc;
+ }
+void *compile_addi150(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi150, gen_addi150_len);
+ ctx->pc += gen_addi150_len;
+ return pc;
+ }
+void *compile_addi151(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi151, gen_addi151_len);
+ ctx->pc += gen_addi151_len;
+ return pc;
+ }
+void *compile_addi152(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi152, gen_addi152_len);
+ ctx->pc += gen_addi152_len;
+ return pc;
+ }
+void *compile_addi153(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi153, gen_addi153_len);
+ ctx->pc += gen_addi153_len;
+ return pc;
+ }
+void *compile_addi154(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi154, gen_addi154_len);
+ ctx->pc += gen_addi154_len;
+ return pc;
+ }
+void *compile_addi155(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi155, gen_addi155_len);
+ ctx->pc += gen_addi155_len;
+ return pc;
+ }
+void *compile_addi156(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi156, gen_addi156_len);
+ ctx->pc += gen_addi156_len;
+ return pc;
+ }
+void *compile_addi157(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi157, gen_addi157_len);
+ ctx->pc += gen_addi157_len;
+ return pc;
+ }
+void *compile_addi158(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi158, gen_addi158_len);
+ ctx->pc += gen_addi158_len;
+ return pc;
+ }
+void *compile_addi159(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi159, gen_addi159_len);
+ ctx->pc += gen_addi159_len;
+ return pc;
+ }
+void *compile_addi16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi16, gen_addi16_len);
+ ctx->pc += gen_addi16_len;
+ return pc;
+ }
+void *compile_addi160(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi160, gen_addi160_len);
+ ctx->pc += gen_addi160_len;
+ return pc;
+ }
+void *compile_addi161(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi161, gen_addi161_len);
+ ctx->pc += gen_addi161_len;
+ return pc;
+ }
+void *compile_addi162(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi162, gen_addi162_len);
+ ctx->pc += gen_addi162_len;
+ return pc;
+ }
+void *compile_addi163(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi163, gen_addi163_len);
+ ctx->pc += gen_addi163_len;
+ return pc;
+ }
+void *compile_addi164(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi164, gen_addi164_len);
+ ctx->pc += gen_addi164_len;
+ return pc;
+ }
+void *compile_addi165(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi165, gen_addi165_len);
+ ctx->pc += gen_addi165_len;
+ return pc;
+ }
+void *compile_addi166(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi166, gen_addi166_len);
+ ctx->pc += gen_addi166_len;
+ return pc;
+ }
+void *compile_addi167(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi167, gen_addi167_len);
+ ctx->pc += gen_addi167_len;
+ return pc;
+ }
+void *compile_addi168(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi168, gen_addi168_len);
+ ctx->pc += gen_addi168_len;
+ return pc;
+ }
+void *compile_addi169(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi169, gen_addi169_len);
+ ctx->pc += gen_addi169_len;
+ return pc;
+ }
+void *compile_addi17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi17, gen_addi17_len);
+ ctx->pc += gen_addi17_len;
+ return pc;
+ }
+void *compile_addi170(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi170, gen_addi170_len);
+ ctx->pc += gen_addi170_len;
+ return pc;
+ }
+void *compile_addi171(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi171, gen_addi171_len);
+ ctx->pc += gen_addi171_len;
+ return pc;
+ }
+void *compile_addi172(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi172, gen_addi172_len);
+ ctx->pc += gen_addi172_len;
+ return pc;
+ }
+void *compile_addi173(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi173, gen_addi173_len);
+ ctx->pc += gen_addi173_len;
+ return pc;
+ }
+void *compile_addi174(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi174, gen_addi174_len);
+ ctx->pc += gen_addi174_len;
+ return pc;
+ }
+void *compile_addi175(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi175, gen_addi175_len);
+ ctx->pc += gen_addi175_len;
+ return pc;
+ }
+void *compile_addi176(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi176, gen_addi176_len);
+ ctx->pc += gen_addi176_len;
+ return pc;
+ }
+void *compile_addi177(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi177, gen_addi177_len);
+ ctx->pc += gen_addi177_len;
+ return pc;
+ }
+void *compile_addi178(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi178, gen_addi178_len);
+ ctx->pc += gen_addi178_len;
+ return pc;
+ }
+void *compile_addi179(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi179, gen_addi179_len);
+ ctx->pc += gen_addi179_len;
+ return pc;
+ }
+void *compile_addi18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi18, gen_addi18_len);
+ ctx->pc += gen_addi18_len;
+ return pc;
+ }
+void *compile_addi180(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi180, gen_addi180_len);
+ ctx->pc += gen_addi180_len;
+ return pc;
+ }
+void *compile_addi181(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi181, gen_addi181_len);
+ ctx->pc += gen_addi181_len;
+ return pc;
+ }
+void *compile_addi182(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi182, gen_addi182_len);
+ ctx->pc += gen_addi182_len;
+ return pc;
+ }
+void *compile_addi183(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi183, gen_addi183_len);
+ ctx->pc += gen_addi183_len;
+ return pc;
+ }
+void *compile_addi184(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi184, gen_addi184_len);
+ ctx->pc += gen_addi184_len;
+ return pc;
+ }
+void *compile_addi185(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi185, gen_addi185_len);
+ ctx->pc += gen_addi185_len;
+ return pc;
+ }
+void *compile_addi186(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi186, gen_addi186_len);
+ ctx->pc += gen_addi186_len;
+ return pc;
+ }
+void *compile_addi187(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi187, gen_addi187_len);
+ ctx->pc += gen_addi187_len;
+ return pc;
+ }
+void *compile_addi188(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi188, gen_addi188_len);
+ ctx->pc += gen_addi188_len;
+ return pc;
+ }
+void *compile_addi189(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi189, gen_addi189_len);
+ ctx->pc += gen_addi189_len;
+ return pc;
+ }
+void *compile_addi19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi19, gen_addi19_len);
+ ctx->pc += gen_addi19_len;
+ return pc;
+ }
+void *compile_addi190(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi190, gen_addi190_len);
+ ctx->pc += gen_addi190_len;
+ return pc;
+ }
+void *compile_addi191(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi191, gen_addi191_len);
+ ctx->pc += gen_addi191_len;
+ return pc;
+ }
+void *compile_addi192(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi192, gen_addi192_len);
+ ctx->pc += gen_addi192_len;
+ return pc;
+ }
+void *compile_addi193(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi193, gen_addi193_len);
+ ctx->pc += gen_addi193_len;
+ return pc;
+ }
+void *compile_addi194(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi194, gen_addi194_len);
+ ctx->pc += gen_addi194_len;
+ return pc;
+ }
+void *compile_addi195(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi195, gen_addi195_len);
+ ctx->pc += gen_addi195_len;
+ return pc;
+ }
+void *compile_addi196(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi196, gen_addi196_len);
+ ctx->pc += gen_addi196_len;
+ return pc;
+ }
+void *compile_addi197(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi197, gen_addi197_len);
+ ctx->pc += gen_addi197_len;
+ return pc;
+ }
+void *compile_addi198(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi198, gen_addi198_len);
+ ctx->pc += gen_addi198_len;
+ return pc;
+ }
+void *compile_addi199(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi199, gen_addi199_len);
+ ctx->pc += gen_addi199_len;
+ return pc;
+ }
+void *compile_addi2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi2, gen_addi2_len);
+ ctx->pc += gen_addi2_len;
+ return pc;
+ }
+void *compile_addi20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi20, gen_addi20_len);
+ ctx->pc += gen_addi20_len;
+ return pc;
+ }
+void *compile_addi200(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi200, gen_addi200_len);
+ ctx->pc += gen_addi200_len;
+ return pc;
+ }
+void *compile_addi201(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi201, gen_addi201_len);
+ ctx->pc += gen_addi201_len;
+ return pc;
+ }
+void *compile_addi202(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi202, gen_addi202_len);
+ ctx->pc += gen_addi202_len;
+ return pc;
+ }
+void *compile_addi203(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi203, gen_addi203_len);
+ ctx->pc += gen_addi203_len;
+ return pc;
+ }
+void *compile_addi204(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi204, gen_addi204_len);
+ ctx->pc += gen_addi204_len;
+ return pc;
+ }
+void *compile_addi205(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi205, gen_addi205_len);
+ ctx->pc += gen_addi205_len;
+ return pc;
+ }
+void *compile_addi206(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi206, gen_addi206_len);
+ ctx->pc += gen_addi206_len;
+ return pc;
+ }
+void *compile_addi207(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi207, gen_addi207_len);
+ ctx->pc += gen_addi207_len;
+ return pc;
+ }
+void *compile_addi208(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi208, gen_addi208_len);
+ ctx->pc += gen_addi208_len;
+ return pc;
+ }
+void *compile_addi209(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi209, gen_addi209_len);
+ ctx->pc += gen_addi209_len;
+ return pc;
+ }
+void *compile_addi21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi21, gen_addi21_len);
+ ctx->pc += gen_addi21_len;
+ return pc;
+ }
+void *compile_addi210(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi210, gen_addi210_len);
+ ctx->pc += gen_addi210_len;
+ return pc;
+ }
+void *compile_addi211(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi211, gen_addi211_len);
+ ctx->pc += gen_addi211_len;
+ return pc;
+ }
+void *compile_addi212(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi212, gen_addi212_len);
+ ctx->pc += gen_addi212_len;
+ return pc;
+ }
+void *compile_addi213(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi213, gen_addi213_len);
+ ctx->pc += gen_addi213_len;
+ return pc;
+ }
+void *compile_addi214(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi214, gen_addi214_len);
+ ctx->pc += gen_addi214_len;
+ return pc;
+ }
+void *compile_addi215(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi215, gen_addi215_len);
+ ctx->pc += gen_addi215_len;
+ return pc;
+ }
+void *compile_addi216(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi216, gen_addi216_len);
+ ctx->pc += gen_addi216_len;
+ return pc;
+ }
+void *compile_addi217(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi217, gen_addi217_len);
+ ctx->pc += gen_addi217_len;
+ return pc;
+ }
+void *compile_addi218(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi218, gen_addi218_len);
+ ctx->pc += gen_addi218_len;
+ return pc;
+ }
+void *compile_addi219(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi219, gen_addi219_len);
+ ctx->pc += gen_addi219_len;
+ return pc;
+ }
+void *compile_addi22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi22, gen_addi22_len);
+ ctx->pc += gen_addi22_len;
+ return pc;
+ }
+void *compile_addi220(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi220, gen_addi220_len);
+ ctx->pc += gen_addi220_len;
+ return pc;
+ }
+void *compile_addi221(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi221, gen_addi221_len);
+ ctx->pc += gen_addi221_len;
+ return pc;
+ }
+void *compile_addi222(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi222, gen_addi222_len);
+ ctx->pc += gen_addi222_len;
+ return pc;
+ }
+void *compile_addi223(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi223, gen_addi223_len);
+ ctx->pc += gen_addi223_len;
+ return pc;
+ }
+void *compile_addi224(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi224, gen_addi224_len);
+ ctx->pc += gen_addi224_len;
+ return pc;
+ }
+void *compile_addi225(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi225, gen_addi225_len);
+ ctx->pc += gen_addi225_len;
+ return pc;
+ }
+void *compile_addi226(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi226, gen_addi226_len);
+ ctx->pc += gen_addi226_len;
+ return pc;
+ }
+void *compile_addi227(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi227, gen_addi227_len);
+ ctx->pc += gen_addi227_len;
+ return pc;
+ }
+void *compile_addi228(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi228, gen_addi228_len);
+ ctx->pc += gen_addi228_len;
+ return pc;
+ }
+void *compile_addi229(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi229, gen_addi229_len);
+ ctx->pc += gen_addi229_len;
+ return pc;
+ }
+void *compile_addi23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi23, gen_addi23_len);
+ ctx->pc += gen_addi23_len;
+ return pc;
+ }
+void *compile_addi230(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi230, gen_addi230_len);
+ ctx->pc += gen_addi230_len;
+ return pc;
+ }
+void *compile_addi231(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi231, gen_addi231_len);
+ ctx->pc += gen_addi231_len;
+ return pc;
+ }
+void *compile_addi232(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi232, gen_addi232_len);
+ ctx->pc += gen_addi232_len;
+ return pc;
+ }
+void *compile_addi233(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi233, gen_addi233_len);
+ ctx->pc += gen_addi233_len;
+ return pc;
+ }
+void *compile_addi234(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi234, gen_addi234_len);
+ ctx->pc += gen_addi234_len;
+ return pc;
+ }
+void *compile_addi235(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi235, gen_addi235_len);
+ ctx->pc += gen_addi235_len;
+ return pc;
+ }
+void *compile_addi236(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi236, gen_addi236_len);
+ ctx->pc += gen_addi236_len;
+ return pc;
+ }
+void *compile_addi237(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi237, gen_addi237_len);
+ ctx->pc += gen_addi237_len;
+ return pc;
+ }
+void *compile_addi238(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi238, gen_addi238_len);
+ ctx->pc += gen_addi238_len;
+ return pc;
+ }
+void *compile_addi239(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi239, gen_addi239_len);
+ ctx->pc += gen_addi239_len;
+ return pc;
+ }
+void *compile_addi24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi24, gen_addi24_len);
+ ctx->pc += gen_addi24_len;
+ return pc;
+ }
+void *compile_addi240(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi240, gen_addi240_len);
+ ctx->pc += gen_addi240_len;
+ return pc;
+ }
+void *compile_addi241(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi241, gen_addi241_len);
+ ctx->pc += gen_addi241_len;
+ return pc;
+ }
+void *compile_addi242(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi242, gen_addi242_len);
+ ctx->pc += gen_addi242_len;
+ return pc;
+ }
+void *compile_addi243(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi243, gen_addi243_len);
+ ctx->pc += gen_addi243_len;
+ return pc;
+ }
+void *compile_addi244(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi244, gen_addi244_len);
+ ctx->pc += gen_addi244_len;
+ return pc;
+ }
+void *compile_addi245(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi245, gen_addi245_len);
+ ctx->pc += gen_addi245_len;
+ return pc;
+ }
+void *compile_addi246(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi246, gen_addi246_len);
+ ctx->pc += gen_addi246_len;
+ return pc;
+ }
+void *compile_addi247(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi247, gen_addi247_len);
+ ctx->pc += gen_addi247_len;
+ return pc;
+ }
+void *compile_addi248(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi248, gen_addi248_len);
+ ctx->pc += gen_addi248_len;
+ return pc;
+ }
+void *compile_addi249(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi249, gen_addi249_len);
+ ctx->pc += gen_addi249_len;
+ return pc;
+ }
+void *compile_addi25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi25, gen_addi25_len);
+ ctx->pc += gen_addi25_len;
+ return pc;
+ }
+void *compile_addi250(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi250, gen_addi250_len);
+ ctx->pc += gen_addi250_len;
+ return pc;
+ }
+void *compile_addi251(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi251, gen_addi251_len);
+ ctx->pc += gen_addi251_len;
+ return pc;
+ }
+void *compile_addi252(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi252, gen_addi252_len);
+ ctx->pc += gen_addi252_len;
+ return pc;
+ }
+void *compile_addi253(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi253, gen_addi253_len);
+ ctx->pc += gen_addi253_len;
+ return pc;
+ }
+void *compile_addi254(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi254, gen_addi254_len);
+ ctx->pc += gen_addi254_len;
+ return pc;
+ }
+void *compile_addi255(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi255, gen_addi255_len);
+ ctx->pc += gen_addi255_len;
+ return pc;
+ }
+void *compile_addi26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi26, gen_addi26_len);
+ ctx->pc += gen_addi26_len;
+ return pc;
+ }
+void *compile_addi27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi27, gen_addi27_len);
+ ctx->pc += gen_addi27_len;
+ return pc;
+ }
+void *compile_addi28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi28, gen_addi28_len);
+ ctx->pc += gen_addi28_len;
+ return pc;
+ }
+void *compile_addi29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi29, gen_addi29_len);
+ ctx->pc += gen_addi29_len;
+ return pc;
+ }
+void *compile_addi3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi3, gen_addi3_len);
+ ctx->pc += gen_addi3_len;
+ return pc;
+ }
+void *compile_addi30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi30, gen_addi30_len);
+ ctx->pc += gen_addi30_len;
+ return pc;
+ }
+void *compile_addi31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi31, gen_addi31_len);
+ ctx->pc += gen_addi31_len;
+ return pc;
+ }
+void *compile_addi32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi32, gen_addi32_len);
+ ctx->pc += gen_addi32_len;
+ return pc;
+ }
+void *compile_addi33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi33, gen_addi33_len);
+ ctx->pc += gen_addi33_len;
+ return pc;
+ }
+void *compile_addi34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi34, gen_addi34_len);
+ ctx->pc += gen_addi34_len;
+ return pc;
+ }
+void *compile_addi35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi35, gen_addi35_len);
+ ctx->pc += gen_addi35_len;
+ return pc;
+ }
+void *compile_addi36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi36, gen_addi36_len);
+ ctx->pc += gen_addi36_len;
+ return pc;
+ }
+void *compile_addi37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi37, gen_addi37_len);
+ ctx->pc += gen_addi37_len;
+ return pc;
+ }
+void *compile_addi38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi38, gen_addi38_len);
+ ctx->pc += gen_addi38_len;
+ return pc;
+ }
+void *compile_addi39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi39, gen_addi39_len);
+ ctx->pc += gen_addi39_len;
+ return pc;
+ }
+void *compile_addi4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi4, gen_addi4_len);
+ ctx->pc += gen_addi4_len;
+ return pc;
+ }
+void *compile_addi40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi40, gen_addi40_len);
+ ctx->pc += gen_addi40_len;
+ return pc;
+ }
+void *compile_addi41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi41, gen_addi41_len);
+ ctx->pc += gen_addi41_len;
+ return pc;
+ }
+void *compile_addi42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi42, gen_addi42_len);
+ ctx->pc += gen_addi42_len;
+ return pc;
+ }
+void *compile_addi43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi43, gen_addi43_len);
+ ctx->pc += gen_addi43_len;
+ return pc;
+ }
+void *compile_addi44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi44, gen_addi44_len);
+ ctx->pc += gen_addi44_len;
+ return pc;
+ }
+void *compile_addi45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi45, gen_addi45_len);
+ ctx->pc += gen_addi45_len;
+ return pc;
+ }
+void *compile_addi46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi46, gen_addi46_len);
+ ctx->pc += gen_addi46_len;
+ return pc;
+ }
+void *compile_addi47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi47, gen_addi47_len);
+ ctx->pc += gen_addi47_len;
+ return pc;
+ }
+void *compile_addi48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi48, gen_addi48_len);
+ ctx->pc += gen_addi48_len;
+ return pc;
+ }
+void *compile_addi49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi49, gen_addi49_len);
+ ctx->pc += gen_addi49_len;
+ return pc;
+ }
+void *compile_addi5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi5, gen_addi5_len);
+ ctx->pc += gen_addi5_len;
+ return pc;
+ }
+void *compile_addi50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi50, gen_addi50_len);
+ ctx->pc += gen_addi50_len;
+ return pc;
+ }
+void *compile_addi51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi51, gen_addi51_len);
+ ctx->pc += gen_addi51_len;
+ return pc;
+ }
+void *compile_addi52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi52, gen_addi52_len);
+ ctx->pc += gen_addi52_len;
+ return pc;
+ }
+void *compile_addi53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi53, gen_addi53_len);
+ ctx->pc += gen_addi53_len;
+ return pc;
+ }
+void *compile_addi54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi54, gen_addi54_len);
+ ctx->pc += gen_addi54_len;
+ return pc;
+ }
+void *compile_addi55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi55, gen_addi55_len);
+ ctx->pc += gen_addi55_len;
+ return pc;
+ }
+void *compile_addi56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi56, gen_addi56_len);
+ ctx->pc += gen_addi56_len;
+ return pc;
+ }
+void *compile_addi57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi57, gen_addi57_len);
+ ctx->pc += gen_addi57_len;
+ return pc;
+ }
+void *compile_addi58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi58, gen_addi58_len);
+ ctx->pc += gen_addi58_len;
+ return pc;
+ }
+void *compile_addi59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi59, gen_addi59_len);
+ ctx->pc += gen_addi59_len;
+ return pc;
+ }
+void *compile_addi6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi6, gen_addi6_len);
+ ctx->pc += gen_addi6_len;
+ return pc;
+ }
+void *compile_addi60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi60, gen_addi60_len);
+ ctx->pc += gen_addi60_len;
+ return pc;
+ }
+void *compile_addi61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi61, gen_addi61_len);
+ ctx->pc += gen_addi61_len;
+ return pc;
+ }
+void *compile_addi62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi62, gen_addi62_len);
+ ctx->pc += gen_addi62_len;
+ return pc;
+ }
+void *compile_addi63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi63, gen_addi63_len);
+ ctx->pc += gen_addi63_len;
+ return pc;
+ }
+void *compile_addi64(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi64, gen_addi64_len);
+ ctx->pc += gen_addi64_len;
+ return pc;
+ }
+void *compile_addi65(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi65, gen_addi65_len);
+ ctx->pc += gen_addi65_len;
+ return pc;
+ }
+void *compile_addi66(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi66, gen_addi66_len);
+ ctx->pc += gen_addi66_len;
+ return pc;
+ }
+void *compile_addi67(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi67, gen_addi67_len);
+ ctx->pc += gen_addi67_len;
+ return pc;
+ }
+void *compile_addi68(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi68, gen_addi68_len);
+ ctx->pc += gen_addi68_len;
+ return pc;
+ }
+void *compile_addi69(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi69, gen_addi69_len);
+ ctx->pc += gen_addi69_len;
+ return pc;
+ }
+void *compile_addi7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi7, gen_addi7_len);
+ ctx->pc += gen_addi7_len;
+ return pc;
+ }
+void *compile_addi70(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi70, gen_addi70_len);
+ ctx->pc += gen_addi70_len;
+ return pc;
+ }
+void *compile_addi71(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi71, gen_addi71_len);
+ ctx->pc += gen_addi71_len;
+ return pc;
+ }
+void *compile_addi72(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi72, gen_addi72_len);
+ ctx->pc += gen_addi72_len;
+ return pc;
+ }
+void *compile_addi73(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi73, gen_addi73_len);
+ ctx->pc += gen_addi73_len;
+ return pc;
+ }
+void *compile_addi74(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi74, gen_addi74_len);
+ ctx->pc += gen_addi74_len;
+ return pc;
+ }
+void *compile_addi75(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi75, gen_addi75_len);
+ ctx->pc += gen_addi75_len;
+ return pc;
+ }
+void *compile_addi76(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi76, gen_addi76_len);
+ ctx->pc += gen_addi76_len;
+ return pc;
+ }
+void *compile_addi77(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi77, gen_addi77_len);
+ ctx->pc += gen_addi77_len;
+ return pc;
+ }
+void *compile_addi78(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi78, gen_addi78_len);
+ ctx->pc += gen_addi78_len;
+ return pc;
+ }
+void *compile_addi79(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi79, gen_addi79_len);
+ ctx->pc += gen_addi79_len;
+ return pc;
+ }
+void *compile_addi8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi8, gen_addi8_len);
+ ctx->pc += gen_addi8_len;
+ return pc;
+ }
+void *compile_addi80(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi80, gen_addi80_len);
+ ctx->pc += gen_addi80_len;
+ return pc;
+ }
+void *compile_addi81(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi81, gen_addi81_len);
+ ctx->pc += gen_addi81_len;
+ return pc;
+ }
+void *compile_addi82(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi82, gen_addi82_len);
+ ctx->pc += gen_addi82_len;
+ return pc;
+ }
+void *compile_addi83(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi83, gen_addi83_len);
+ ctx->pc += gen_addi83_len;
+ return pc;
+ }
+void *compile_addi84(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi84, gen_addi84_len);
+ ctx->pc += gen_addi84_len;
+ return pc;
+ }
+void *compile_addi85(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi85, gen_addi85_len);
+ ctx->pc += gen_addi85_len;
+ return pc;
+ }
+void *compile_addi86(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi86, gen_addi86_len);
+ ctx->pc += gen_addi86_len;
+ return pc;
+ }
+void *compile_addi87(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi87, gen_addi87_len);
+ ctx->pc += gen_addi87_len;
+ return pc;
+ }
+void *compile_addi88(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi88, gen_addi88_len);
+ ctx->pc += gen_addi88_len;
+ return pc;
+ }
+void *compile_addi89(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi89, gen_addi89_len);
+ ctx->pc += gen_addi89_len;
+ return pc;
+ }
+void *compile_addi9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi9, gen_addi9_len);
+ ctx->pc += gen_addi9_len;
+ return pc;
+ }
+void *compile_addi90(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi90, gen_addi90_len);
+ ctx->pc += gen_addi90_len;
+ return pc;
+ }
+void *compile_addi91(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi91, gen_addi91_len);
+ ctx->pc += gen_addi91_len;
+ return pc;
+ }
+void *compile_addi92(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi92, gen_addi92_len);
+ ctx->pc += gen_addi92_len;
+ return pc;
+ }
+void *compile_addi93(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi93, gen_addi93_len);
+ ctx->pc += gen_addi93_len;
+ return pc;
+ }
+void *compile_addi94(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi94, gen_addi94_len);
+ ctx->pc += gen_addi94_len;
+ return pc;
+ }
+void *compile_addi95(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi95, gen_addi95_len);
+ ctx->pc += gen_addi95_len;
+ return pc;
+ }
+void *compile_addi96(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi96, gen_addi96_len);
+ ctx->pc += gen_addi96_len;
+ return pc;
+ }
+void *compile_addi97(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi97, gen_addi97_len);
+ ctx->pc += gen_addi97_len;
+ return pc;
+ }
+void *compile_addi98(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi98, gen_addi98_len);
+ ctx->pc += gen_addi98_len;
+ return pc;
+ }
+void *compile_addi99(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_addi99, gen_addi99_len);
+ ctx->pc += gen_addi99_len;
+ return pc;
+ }
+void *compile_bsa0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa0, gen_bsa0_len);
+ ctx->pc += gen_bsa0_len;
+ return pc;
+ }
+void *compile_bsa1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa1, gen_bsa1_len);
+ ctx->pc += gen_bsa1_len;
+ return pc;
+ }
+void *compile_bsa10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa10, gen_bsa10_len);
+ ctx->pc += gen_bsa10_len;
+ return pc;
+ }
+void *compile_bsa11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa11, gen_bsa11_len);
+ ctx->pc += gen_bsa11_len;
+ return pc;
+ }
+void *compile_bsa12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa12, gen_bsa12_len);
+ ctx->pc += gen_bsa12_len;
+ return pc;
+ }
+void *compile_bsa13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa13, gen_bsa13_len);
+ ctx->pc += gen_bsa13_len;
+ return pc;
+ }
+void *compile_bsa14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa14, gen_bsa14_len);
+ ctx->pc += gen_bsa14_len;
+ return pc;
+ }
+void *compile_bsa15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa15, gen_bsa15_len);
+ ctx->pc += gen_bsa15_len;
+ return pc;
+ }
+void *compile_bsa16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa16, gen_bsa16_len);
+ ctx->pc += gen_bsa16_len;
+ return pc;
+ }
+void *compile_bsa17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa17, gen_bsa17_len);
+ ctx->pc += gen_bsa17_len;
+ return pc;
+ }
+void *compile_bsa18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa18, gen_bsa18_len);
+ ctx->pc += gen_bsa18_len;
+ return pc;
+ }
+void *compile_bsa19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa19, gen_bsa19_len);
+ ctx->pc += gen_bsa19_len;
+ return pc;
+ }
+void *compile_bsa2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa2, gen_bsa2_len);
+ ctx->pc += gen_bsa2_len;
+ return pc;
+ }
+void *compile_bsa20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa20, gen_bsa20_len);
+ ctx->pc += gen_bsa20_len;
+ return pc;
+ }
+void *compile_bsa21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa21, gen_bsa21_len);
+ ctx->pc += gen_bsa21_len;
+ return pc;
+ }
+void *compile_bsa22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa22, gen_bsa22_len);
+ ctx->pc += gen_bsa22_len;
+ return pc;
+ }
+void *compile_bsa23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa23, gen_bsa23_len);
+ ctx->pc += gen_bsa23_len;
+ return pc;
+ }
+void *compile_bsa24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa24, gen_bsa24_len);
+ ctx->pc += gen_bsa24_len;
+ return pc;
+ }
+void *compile_bsa25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa25, gen_bsa25_len);
+ ctx->pc += gen_bsa25_len;
+ return pc;
+ }
+void *compile_bsa26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa26, gen_bsa26_len);
+ ctx->pc += gen_bsa26_len;
+ return pc;
+ }
+void *compile_bsa27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa27, gen_bsa27_len);
+ ctx->pc += gen_bsa27_len;
+ return pc;
+ }
+void *compile_bsa28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa28, gen_bsa28_len);
+ ctx->pc += gen_bsa28_len;
+ return pc;
+ }
+void *compile_bsa29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa29, gen_bsa29_len);
+ ctx->pc += gen_bsa29_len;
+ return pc;
+ }
+void *compile_bsa3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa3, gen_bsa3_len);
+ ctx->pc += gen_bsa3_len;
+ return pc;
+ }
+void *compile_bsa30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa30, gen_bsa30_len);
+ ctx->pc += gen_bsa30_len;
+ return pc;
+ }
+void *compile_bsa31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa31, gen_bsa31_len);
+ ctx->pc += gen_bsa31_len;
+ return pc;
+ }
+void *compile_bsa32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa32, gen_bsa32_len);
+ ctx->pc += gen_bsa32_len;
+ return pc;
+ }
+void *compile_bsa33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa33, gen_bsa33_len);
+ ctx->pc += gen_bsa33_len;
+ return pc;
+ }
+void *compile_bsa34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa34, gen_bsa34_len);
+ ctx->pc += gen_bsa34_len;
+ return pc;
+ }
+void *compile_bsa35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa35, gen_bsa35_len);
+ ctx->pc += gen_bsa35_len;
+ return pc;
+ }
+void *compile_bsa36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa36, gen_bsa36_len);
+ ctx->pc += gen_bsa36_len;
+ return pc;
+ }
+void *compile_bsa37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa37, gen_bsa37_len);
+ ctx->pc += gen_bsa37_len;
+ return pc;
+ }
+void *compile_bsa38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa38, gen_bsa38_len);
+ ctx->pc += gen_bsa38_len;
+ return pc;
+ }
+void *compile_bsa39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa39, gen_bsa39_len);
+ ctx->pc += gen_bsa39_len;
+ return pc;
+ }
+void *compile_bsa4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa4, gen_bsa4_len);
+ ctx->pc += gen_bsa4_len;
+ return pc;
+ }
+void *compile_bsa40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa40, gen_bsa40_len);
+ ctx->pc += gen_bsa40_len;
+ return pc;
+ }
+void *compile_bsa41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa41, gen_bsa41_len);
+ ctx->pc += gen_bsa41_len;
+ return pc;
+ }
+void *compile_bsa42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa42, gen_bsa42_len);
+ ctx->pc += gen_bsa42_len;
+ return pc;
+ }
+void *compile_bsa43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa43, gen_bsa43_len);
+ ctx->pc += gen_bsa43_len;
+ return pc;
+ }
+void *compile_bsa44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa44, gen_bsa44_len);
+ ctx->pc += gen_bsa44_len;
+ return pc;
+ }
+void *compile_bsa45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa45, gen_bsa45_len);
+ ctx->pc += gen_bsa45_len;
+ return pc;
+ }
+void *compile_bsa46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa46, gen_bsa46_len);
+ ctx->pc += gen_bsa46_len;
+ return pc;
+ }
+void *compile_bsa47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa47, gen_bsa47_len);
+ ctx->pc += gen_bsa47_len;
+ return pc;
+ }
+void *compile_bsa48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa48, gen_bsa48_len);
+ ctx->pc += gen_bsa48_len;
+ return pc;
+ }
+void *compile_bsa49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa49, gen_bsa49_len);
+ ctx->pc += gen_bsa49_len;
+ return pc;
+ }
+void *compile_bsa5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa5, gen_bsa5_len);
+ ctx->pc += gen_bsa5_len;
+ return pc;
+ }
+void *compile_bsa50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa50, gen_bsa50_len);
+ ctx->pc += gen_bsa50_len;
+ return pc;
+ }
+void *compile_bsa51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa51, gen_bsa51_len);
+ ctx->pc += gen_bsa51_len;
+ return pc;
+ }
+void *compile_bsa52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa52, gen_bsa52_len);
+ ctx->pc += gen_bsa52_len;
+ return pc;
+ }
+void *compile_bsa53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa53, gen_bsa53_len);
+ ctx->pc += gen_bsa53_len;
+ return pc;
+ }
+void *compile_bsa54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa54, gen_bsa54_len);
+ ctx->pc += gen_bsa54_len;
+ return pc;
+ }
+void *compile_bsa55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa55, gen_bsa55_len);
+ ctx->pc += gen_bsa55_len;
+ return pc;
+ }
+void *compile_bsa56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa56, gen_bsa56_len);
+ ctx->pc += gen_bsa56_len;
+ return pc;
+ }
+void *compile_bsa57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa57, gen_bsa57_len);
+ ctx->pc += gen_bsa57_len;
+ return pc;
+ }
+void *compile_bsa58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa58, gen_bsa58_len);
+ ctx->pc += gen_bsa58_len;
+ return pc;
+ }
+void *compile_bsa59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa59, gen_bsa59_len);
+ ctx->pc += gen_bsa59_len;
+ return pc;
+ }
+void *compile_bsa6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa6, gen_bsa6_len);
+ ctx->pc += gen_bsa6_len;
+ return pc;
+ }
+void *compile_bsa60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa60, gen_bsa60_len);
+ ctx->pc += gen_bsa60_len;
+ return pc;
+ }
+void *compile_bsa61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa61, gen_bsa61_len);
+ ctx->pc += gen_bsa61_len;
+ return pc;
+ }
+void *compile_bsa62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa62, gen_bsa62_len);
+ ctx->pc += gen_bsa62_len;
+ return pc;
+ }
+void *compile_bsa63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa63, gen_bsa63_len);
+ ctx->pc += gen_bsa63_len;
+ return pc;
+ }
+void *compile_bsa7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa7, gen_bsa7_len);
+ ctx->pc += gen_bsa7_len;
+ return pc;
+ }
+void *compile_bsa8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa8, gen_bsa8_len);
+ ctx->pc += gen_bsa8_len;
+ return pc;
+ }
+void *compile_bsa9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsa9, gen_bsa9_len);
+ ctx->pc += gen_bsa9_len;
+ return pc;
+ }
+void *compile_bso0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso0, gen_bso0_len);
+ ctx->pc += gen_bso0_len;
+ return pc;
+ }
+void *compile_bso1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso1, gen_bso1_len);
+ ctx->pc += gen_bso1_len;
+ return pc;
+ }
+void *compile_bso10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso10, gen_bso10_len);
+ ctx->pc += gen_bso10_len;
+ return pc;
+ }
+void *compile_bso11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso11, gen_bso11_len);
+ ctx->pc += gen_bso11_len;
+ return pc;
+ }
+void *compile_bso12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso12, gen_bso12_len);
+ ctx->pc += gen_bso12_len;
+ return pc;
+ }
+void *compile_bso13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso13, gen_bso13_len);
+ ctx->pc += gen_bso13_len;
+ return pc;
+ }
+void *compile_bso14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso14, gen_bso14_len);
+ ctx->pc += gen_bso14_len;
+ return pc;
+ }
+void *compile_bso15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso15, gen_bso15_len);
+ ctx->pc += gen_bso15_len;
+ return pc;
+ }
+void *compile_bso16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso16, gen_bso16_len);
+ ctx->pc += gen_bso16_len;
+ return pc;
+ }
+void *compile_bso17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso17, gen_bso17_len);
+ ctx->pc += gen_bso17_len;
+ return pc;
+ }
+void *compile_bso18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso18, gen_bso18_len);
+ ctx->pc += gen_bso18_len;
+ return pc;
+ }
+void *compile_bso19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso19, gen_bso19_len);
+ ctx->pc += gen_bso19_len;
+ return pc;
+ }
+void *compile_bso2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso2, gen_bso2_len);
+ ctx->pc += gen_bso2_len;
+ return pc;
+ }
+void *compile_bso20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso20, gen_bso20_len);
+ ctx->pc += gen_bso20_len;
+ return pc;
+ }
+void *compile_bso21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso21, gen_bso21_len);
+ ctx->pc += gen_bso21_len;
+ return pc;
+ }
+void *compile_bso22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso22, gen_bso22_len);
+ ctx->pc += gen_bso22_len;
+ return pc;
+ }
+void *compile_bso23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso23, gen_bso23_len);
+ ctx->pc += gen_bso23_len;
+ return pc;
+ }
+void *compile_bso24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso24, gen_bso24_len);
+ ctx->pc += gen_bso24_len;
+ return pc;
+ }
+void *compile_bso25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso25, gen_bso25_len);
+ ctx->pc += gen_bso25_len;
+ return pc;
+ }
+void *compile_bso26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso26, gen_bso26_len);
+ ctx->pc += gen_bso26_len;
+ return pc;
+ }
+void *compile_bso27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso27, gen_bso27_len);
+ ctx->pc += gen_bso27_len;
+ return pc;
+ }
+void *compile_bso28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso28, gen_bso28_len);
+ ctx->pc += gen_bso28_len;
+ return pc;
+ }
+void *compile_bso29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso29, gen_bso29_len);
+ ctx->pc += gen_bso29_len;
+ return pc;
+ }
+void *compile_bso3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso3, gen_bso3_len);
+ ctx->pc += gen_bso3_len;
+ return pc;
+ }
+void *compile_bso30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso30, gen_bso30_len);
+ ctx->pc += gen_bso30_len;
+ return pc;
+ }
+void *compile_bso31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso31, gen_bso31_len);
+ ctx->pc += gen_bso31_len;
+ return pc;
+ }
+void *compile_bso32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso32, gen_bso32_len);
+ ctx->pc += gen_bso32_len;
+ return pc;
+ }
+void *compile_bso33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso33, gen_bso33_len);
+ ctx->pc += gen_bso33_len;
+ return pc;
+ }
+void *compile_bso34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso34, gen_bso34_len);
+ ctx->pc += gen_bso34_len;
+ return pc;
+ }
+void *compile_bso35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso35, gen_bso35_len);
+ ctx->pc += gen_bso35_len;
+ return pc;
+ }
+void *compile_bso36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso36, gen_bso36_len);
+ ctx->pc += gen_bso36_len;
+ return pc;
+ }
+void *compile_bso37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso37, gen_bso37_len);
+ ctx->pc += gen_bso37_len;
+ return pc;
+ }
+void *compile_bso38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso38, gen_bso38_len);
+ ctx->pc += gen_bso38_len;
+ return pc;
+ }
+void *compile_bso39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso39, gen_bso39_len);
+ ctx->pc += gen_bso39_len;
+ return pc;
+ }
+void *compile_bso4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso4, gen_bso4_len);
+ ctx->pc += gen_bso4_len;
+ return pc;
+ }
+void *compile_bso40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso40, gen_bso40_len);
+ ctx->pc += gen_bso40_len;
+ return pc;
+ }
+void *compile_bso41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso41, gen_bso41_len);
+ ctx->pc += gen_bso41_len;
+ return pc;
+ }
+void *compile_bso42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso42, gen_bso42_len);
+ ctx->pc += gen_bso42_len;
+ return pc;
+ }
+void *compile_bso43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso43, gen_bso43_len);
+ ctx->pc += gen_bso43_len;
+ return pc;
+ }
+void *compile_bso44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso44, gen_bso44_len);
+ ctx->pc += gen_bso44_len;
+ return pc;
+ }
+void *compile_bso45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso45, gen_bso45_len);
+ ctx->pc += gen_bso45_len;
+ return pc;
+ }
+void *compile_bso46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso46, gen_bso46_len);
+ ctx->pc += gen_bso46_len;
+ return pc;
+ }
+void *compile_bso47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso47, gen_bso47_len);
+ ctx->pc += gen_bso47_len;
+ return pc;
+ }
+void *compile_bso48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso48, gen_bso48_len);
+ ctx->pc += gen_bso48_len;
+ return pc;
+ }
+void *compile_bso49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso49, gen_bso49_len);
+ ctx->pc += gen_bso49_len;
+ return pc;
+ }
+void *compile_bso5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso5, gen_bso5_len);
+ ctx->pc += gen_bso5_len;
+ return pc;
+ }
+void *compile_bso50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso50, gen_bso50_len);
+ ctx->pc += gen_bso50_len;
+ return pc;
+ }
+void *compile_bso51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso51, gen_bso51_len);
+ ctx->pc += gen_bso51_len;
+ return pc;
+ }
+void *compile_bso52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso52, gen_bso52_len);
+ ctx->pc += gen_bso52_len;
+ return pc;
+ }
+void *compile_bso53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso53, gen_bso53_len);
+ ctx->pc += gen_bso53_len;
+ return pc;
+ }
+void *compile_bso54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso54, gen_bso54_len);
+ ctx->pc += gen_bso54_len;
+ return pc;
+ }
+void *compile_bso55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso55, gen_bso55_len);
+ ctx->pc += gen_bso55_len;
+ return pc;
+ }
+void *compile_bso56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso56, gen_bso56_len);
+ ctx->pc += gen_bso56_len;
+ return pc;
+ }
+void *compile_bso57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso57, gen_bso57_len);
+ ctx->pc += gen_bso57_len;
+ return pc;
+ }
+void *compile_bso58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso58, gen_bso58_len);
+ ctx->pc += gen_bso58_len;
+ return pc;
+ }
+void *compile_bso59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso59, gen_bso59_len);
+ ctx->pc += gen_bso59_len;
+ return pc;
+ }
+void *compile_bso6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso6, gen_bso6_len);
+ ctx->pc += gen_bso6_len;
+ return pc;
+ }
+void *compile_bso60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso60, gen_bso60_len);
+ ctx->pc += gen_bso60_len;
+ return pc;
+ }
+void *compile_bso61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso61, gen_bso61_len);
+ ctx->pc += gen_bso61_len;
+ return pc;
+ }
+void *compile_bso62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso62, gen_bso62_len);
+ ctx->pc += gen_bso62_len;
+ return pc;
+ }
+void *compile_bso63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso63, gen_bso63_len);
+ ctx->pc += gen_bso63_len;
+ return pc;
+ }
+void *compile_bso7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso7, gen_bso7_len);
+ ctx->pc += gen_bso7_len;
+ return pc;
+ }
+void *compile_bso8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso8, gen_bso8_len);
+ ctx->pc += gen_bso8_len;
+ return pc;
+ }
+void *compile_bso9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bso9, gen_bso9_len);
+ ctx->pc += gen_bso9_len;
+ return pc;
+ }
+void *compile_bsx0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx0, gen_bsx0_len);
+ ctx->pc += gen_bsx0_len;
+ return pc;
+ }
+void *compile_bsx1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx1, gen_bsx1_len);
+ ctx->pc += gen_bsx1_len;
+ return pc;
+ }
+void *compile_bsx10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx10, gen_bsx10_len);
+ ctx->pc += gen_bsx10_len;
+ return pc;
+ }
+void *compile_bsx11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx11, gen_bsx11_len);
+ ctx->pc += gen_bsx11_len;
+ return pc;
+ }
+void *compile_bsx12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx12, gen_bsx12_len);
+ ctx->pc += gen_bsx12_len;
+ return pc;
+ }
+void *compile_bsx13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx13, gen_bsx13_len);
+ ctx->pc += gen_bsx13_len;
+ return pc;
+ }
+void *compile_bsx14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx14, gen_bsx14_len);
+ ctx->pc += gen_bsx14_len;
+ return pc;
+ }
+void *compile_bsx15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx15, gen_bsx15_len);
+ ctx->pc += gen_bsx15_len;
+ return pc;
+ }
+void *compile_bsx16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx16, gen_bsx16_len);
+ ctx->pc += gen_bsx16_len;
+ return pc;
+ }
+void *compile_bsx17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx17, gen_bsx17_len);
+ ctx->pc += gen_bsx17_len;
+ return pc;
+ }
+void *compile_bsx18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx18, gen_bsx18_len);
+ ctx->pc += gen_bsx18_len;
+ return pc;
+ }
+void *compile_bsx19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx19, gen_bsx19_len);
+ ctx->pc += gen_bsx19_len;
+ return pc;
+ }
+void *compile_bsx2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx2, gen_bsx2_len);
+ ctx->pc += gen_bsx2_len;
+ return pc;
+ }
+void *compile_bsx20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx20, gen_bsx20_len);
+ ctx->pc += gen_bsx20_len;
+ return pc;
+ }
+void *compile_bsx21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx21, gen_bsx21_len);
+ ctx->pc += gen_bsx21_len;
+ return pc;
+ }
+void *compile_bsx22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx22, gen_bsx22_len);
+ ctx->pc += gen_bsx22_len;
+ return pc;
+ }
+void *compile_bsx23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx23, gen_bsx23_len);
+ ctx->pc += gen_bsx23_len;
+ return pc;
+ }
+void *compile_bsx24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx24, gen_bsx24_len);
+ ctx->pc += gen_bsx24_len;
+ return pc;
+ }
+void *compile_bsx25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx25, gen_bsx25_len);
+ ctx->pc += gen_bsx25_len;
+ return pc;
+ }
+void *compile_bsx26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx26, gen_bsx26_len);
+ ctx->pc += gen_bsx26_len;
+ return pc;
+ }
+void *compile_bsx27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx27, gen_bsx27_len);
+ ctx->pc += gen_bsx27_len;
+ return pc;
+ }
+void *compile_bsx28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx28, gen_bsx28_len);
+ ctx->pc += gen_bsx28_len;
+ return pc;
+ }
+void *compile_bsx29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx29, gen_bsx29_len);
+ ctx->pc += gen_bsx29_len;
+ return pc;
+ }
+void *compile_bsx3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx3, gen_bsx3_len);
+ ctx->pc += gen_bsx3_len;
+ return pc;
+ }
+void *compile_bsx30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx30, gen_bsx30_len);
+ ctx->pc += gen_bsx30_len;
+ return pc;
+ }
+void *compile_bsx31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx31, gen_bsx31_len);
+ ctx->pc += gen_bsx31_len;
+ return pc;
+ }
+void *compile_bsx32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx32, gen_bsx32_len);
+ ctx->pc += gen_bsx32_len;
+ return pc;
+ }
+void *compile_bsx33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx33, gen_bsx33_len);
+ ctx->pc += gen_bsx33_len;
+ return pc;
+ }
+void *compile_bsx34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx34, gen_bsx34_len);
+ ctx->pc += gen_bsx34_len;
+ return pc;
+ }
+void *compile_bsx35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx35, gen_bsx35_len);
+ ctx->pc += gen_bsx35_len;
+ return pc;
+ }
+void *compile_bsx36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx36, gen_bsx36_len);
+ ctx->pc += gen_bsx36_len;
+ return pc;
+ }
+void *compile_bsx37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx37, gen_bsx37_len);
+ ctx->pc += gen_bsx37_len;
+ return pc;
+ }
+void *compile_bsx38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx38, gen_bsx38_len);
+ ctx->pc += gen_bsx38_len;
+ return pc;
+ }
+void *compile_bsx39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx39, gen_bsx39_len);
+ ctx->pc += gen_bsx39_len;
+ return pc;
+ }
+void *compile_bsx4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx4, gen_bsx4_len);
+ ctx->pc += gen_bsx4_len;
+ return pc;
+ }
+void *compile_bsx40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx40, gen_bsx40_len);
+ ctx->pc += gen_bsx40_len;
+ return pc;
+ }
+void *compile_bsx41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx41, gen_bsx41_len);
+ ctx->pc += gen_bsx41_len;
+ return pc;
+ }
+void *compile_bsx42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx42, gen_bsx42_len);
+ ctx->pc += gen_bsx42_len;
+ return pc;
+ }
+void *compile_bsx43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx43, gen_bsx43_len);
+ ctx->pc += gen_bsx43_len;
+ return pc;
+ }
+void *compile_bsx44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx44, gen_bsx44_len);
+ ctx->pc += gen_bsx44_len;
+ return pc;
+ }
+void *compile_bsx45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx45, gen_bsx45_len);
+ ctx->pc += gen_bsx45_len;
+ return pc;
+ }
+void *compile_bsx46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx46, gen_bsx46_len);
+ ctx->pc += gen_bsx46_len;
+ return pc;
+ }
+void *compile_bsx47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx47, gen_bsx47_len);
+ ctx->pc += gen_bsx47_len;
+ return pc;
+ }
+void *compile_bsx48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx48, gen_bsx48_len);
+ ctx->pc += gen_bsx48_len;
+ return pc;
+ }
+void *compile_bsx49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx49, gen_bsx49_len);
+ ctx->pc += gen_bsx49_len;
+ return pc;
+ }
+void *compile_bsx5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx5, gen_bsx5_len);
+ ctx->pc += gen_bsx5_len;
+ return pc;
+ }
+void *compile_bsx50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx50, gen_bsx50_len);
+ ctx->pc += gen_bsx50_len;
+ return pc;
+ }
+void *compile_bsx51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx51, gen_bsx51_len);
+ ctx->pc += gen_bsx51_len;
+ return pc;
+ }
+void *compile_bsx52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx52, gen_bsx52_len);
+ ctx->pc += gen_bsx52_len;
+ return pc;
+ }
+void *compile_bsx53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx53, gen_bsx53_len);
+ ctx->pc += gen_bsx53_len;
+ return pc;
+ }
+void *compile_bsx54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx54, gen_bsx54_len);
+ ctx->pc += gen_bsx54_len;
+ return pc;
+ }
+void *compile_bsx55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx55, gen_bsx55_len);
+ ctx->pc += gen_bsx55_len;
+ return pc;
+ }
+void *compile_bsx56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx56, gen_bsx56_len);
+ ctx->pc += gen_bsx56_len;
+ return pc;
+ }
+void *compile_bsx57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx57, gen_bsx57_len);
+ ctx->pc += gen_bsx57_len;
+ return pc;
+ }
+void *compile_bsx58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx58, gen_bsx58_len);
+ ctx->pc += gen_bsx58_len;
+ return pc;
+ }
+void *compile_bsx59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx59, gen_bsx59_len);
+ ctx->pc += gen_bsx59_len;
+ return pc;
+ }
+void *compile_bsx6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx6, gen_bsx6_len);
+ ctx->pc += gen_bsx6_len;
+ return pc;
+ }
+void *compile_bsx60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx60, gen_bsx60_len);
+ ctx->pc += gen_bsx60_len;
+ return pc;
+ }
+void *compile_bsx61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx61, gen_bsx61_len);
+ ctx->pc += gen_bsx61_len;
+ return pc;
+ }
+void *compile_bsx62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx62, gen_bsx62_len);
+ ctx->pc += gen_bsx62_len;
+ return pc;
+ }
+void *compile_bsx63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx63, gen_bsx63_len);
+ ctx->pc += gen_bsx63_len;
+ return pc;
+ }
+void *compile_bsx7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx7, gen_bsx7_len);
+ ctx->pc += gen_bsx7_len;
+ return pc;
+ }
+void *compile_bsx8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx8, gen_bsx8_len);
+ ctx->pc += gen_bsx8_len;
+ return pc;
+ }
+void *compile_bsx9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsx9, gen_bsx9_len);
+ ctx->pc += gen_bsx9_len;
+ return pc;
+ }
+void *compile_bsy0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy0, gen_bsy0_len);
+ ctx->pc += gen_bsy0_len;
+ return pc;
+ }
+void *compile_bsy1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy1, gen_bsy1_len);
+ ctx->pc += gen_bsy1_len;
+ return pc;
+ }
+void *compile_bsy10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy10, gen_bsy10_len);
+ ctx->pc += gen_bsy10_len;
+ return pc;
+ }
+void *compile_bsy11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy11, gen_bsy11_len);
+ ctx->pc += gen_bsy11_len;
+ return pc;
+ }
+void *compile_bsy12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy12, gen_bsy12_len);
+ ctx->pc += gen_bsy12_len;
+ return pc;
+ }
+void *compile_bsy13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy13, gen_bsy13_len);
+ ctx->pc += gen_bsy13_len;
+ return pc;
+ }
+void *compile_bsy14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy14, gen_bsy14_len);
+ ctx->pc += gen_bsy14_len;
+ return pc;
+ }
+void *compile_bsy15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy15, gen_bsy15_len);
+ ctx->pc += gen_bsy15_len;
+ return pc;
+ }
+void *compile_bsy16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy16, gen_bsy16_len);
+ ctx->pc += gen_bsy16_len;
+ return pc;
+ }
+void *compile_bsy17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy17, gen_bsy17_len);
+ ctx->pc += gen_bsy17_len;
+ return pc;
+ }
+void *compile_bsy18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy18, gen_bsy18_len);
+ ctx->pc += gen_bsy18_len;
+ return pc;
+ }
+void *compile_bsy19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy19, gen_bsy19_len);
+ ctx->pc += gen_bsy19_len;
+ return pc;
+ }
+void *compile_bsy2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy2, gen_bsy2_len);
+ ctx->pc += gen_bsy2_len;
+ return pc;
+ }
+void *compile_bsy20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy20, gen_bsy20_len);
+ ctx->pc += gen_bsy20_len;
+ return pc;
+ }
+void *compile_bsy21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy21, gen_bsy21_len);
+ ctx->pc += gen_bsy21_len;
+ return pc;
+ }
+void *compile_bsy22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy22, gen_bsy22_len);
+ ctx->pc += gen_bsy22_len;
+ return pc;
+ }
+void *compile_bsy23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy23, gen_bsy23_len);
+ ctx->pc += gen_bsy23_len;
+ return pc;
+ }
+void *compile_bsy24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy24, gen_bsy24_len);
+ ctx->pc += gen_bsy24_len;
+ return pc;
+ }
+void *compile_bsy25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy25, gen_bsy25_len);
+ ctx->pc += gen_bsy25_len;
+ return pc;
+ }
+void *compile_bsy26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy26, gen_bsy26_len);
+ ctx->pc += gen_bsy26_len;
+ return pc;
+ }
+void *compile_bsy27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy27, gen_bsy27_len);
+ ctx->pc += gen_bsy27_len;
+ return pc;
+ }
+void *compile_bsy28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy28, gen_bsy28_len);
+ ctx->pc += gen_bsy28_len;
+ return pc;
+ }
+void *compile_bsy29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy29, gen_bsy29_len);
+ ctx->pc += gen_bsy29_len;
+ return pc;
+ }
+void *compile_bsy3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy3, gen_bsy3_len);
+ ctx->pc += gen_bsy3_len;
+ return pc;
+ }
+void *compile_bsy30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy30, gen_bsy30_len);
+ ctx->pc += gen_bsy30_len;
+ return pc;
+ }
+void *compile_bsy31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy31, gen_bsy31_len);
+ ctx->pc += gen_bsy31_len;
+ return pc;
+ }
+void *compile_bsy32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy32, gen_bsy32_len);
+ ctx->pc += gen_bsy32_len;
+ return pc;
+ }
+void *compile_bsy33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy33, gen_bsy33_len);
+ ctx->pc += gen_bsy33_len;
+ return pc;
+ }
+void *compile_bsy34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy34, gen_bsy34_len);
+ ctx->pc += gen_bsy34_len;
+ return pc;
+ }
+void *compile_bsy35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy35, gen_bsy35_len);
+ ctx->pc += gen_bsy35_len;
+ return pc;
+ }
+void *compile_bsy36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy36, gen_bsy36_len);
+ ctx->pc += gen_bsy36_len;
+ return pc;
+ }
+void *compile_bsy37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy37, gen_bsy37_len);
+ ctx->pc += gen_bsy37_len;
+ return pc;
+ }
+void *compile_bsy38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy38, gen_bsy38_len);
+ ctx->pc += gen_bsy38_len;
+ return pc;
+ }
+void *compile_bsy39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy39, gen_bsy39_len);
+ ctx->pc += gen_bsy39_len;
+ return pc;
+ }
+void *compile_bsy4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy4, gen_bsy4_len);
+ ctx->pc += gen_bsy4_len;
+ return pc;
+ }
+void *compile_bsy40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy40, gen_bsy40_len);
+ ctx->pc += gen_bsy40_len;
+ return pc;
+ }
+void *compile_bsy41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy41, gen_bsy41_len);
+ ctx->pc += gen_bsy41_len;
+ return pc;
+ }
+void *compile_bsy42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy42, gen_bsy42_len);
+ ctx->pc += gen_bsy42_len;
+ return pc;
+ }
+void *compile_bsy43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy43, gen_bsy43_len);
+ ctx->pc += gen_bsy43_len;
+ return pc;
+ }
+void *compile_bsy44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy44, gen_bsy44_len);
+ ctx->pc += gen_bsy44_len;
+ return pc;
+ }
+void *compile_bsy45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy45, gen_bsy45_len);
+ ctx->pc += gen_bsy45_len;
+ return pc;
+ }
+void *compile_bsy46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy46, gen_bsy46_len);
+ ctx->pc += gen_bsy46_len;
+ return pc;
+ }
+void *compile_bsy47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy47, gen_bsy47_len);
+ ctx->pc += gen_bsy47_len;
+ return pc;
+ }
+void *compile_bsy48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy48, gen_bsy48_len);
+ ctx->pc += gen_bsy48_len;
+ return pc;
+ }
+void *compile_bsy49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy49, gen_bsy49_len);
+ ctx->pc += gen_bsy49_len;
+ return pc;
+ }
+void *compile_bsy5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy5, gen_bsy5_len);
+ ctx->pc += gen_bsy5_len;
+ return pc;
+ }
+void *compile_bsy50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy50, gen_bsy50_len);
+ ctx->pc += gen_bsy50_len;
+ return pc;
+ }
+void *compile_bsy51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy51, gen_bsy51_len);
+ ctx->pc += gen_bsy51_len;
+ return pc;
+ }
+void *compile_bsy52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy52, gen_bsy52_len);
+ ctx->pc += gen_bsy52_len;
+ return pc;
+ }
+void *compile_bsy53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy53, gen_bsy53_len);
+ ctx->pc += gen_bsy53_len;
+ return pc;
+ }
+void *compile_bsy54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy54, gen_bsy54_len);
+ ctx->pc += gen_bsy54_len;
+ return pc;
+ }
+void *compile_bsy55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy55, gen_bsy55_len);
+ ctx->pc += gen_bsy55_len;
+ return pc;
+ }
+void *compile_bsy56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy56, gen_bsy56_len);
+ ctx->pc += gen_bsy56_len;
+ return pc;
+ }
+void *compile_bsy57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy57, gen_bsy57_len);
+ ctx->pc += gen_bsy57_len;
+ return pc;
+ }
+void *compile_bsy58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy58, gen_bsy58_len);
+ ctx->pc += gen_bsy58_len;
+ return pc;
+ }
+void *compile_bsy59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy59, gen_bsy59_len);
+ ctx->pc += gen_bsy59_len;
+ return pc;
+ }
+void *compile_bsy6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy6, gen_bsy6_len);
+ ctx->pc += gen_bsy6_len;
+ return pc;
+ }
+void *compile_bsy60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy60, gen_bsy60_len);
+ ctx->pc += gen_bsy60_len;
+ return pc;
+ }
+void *compile_bsy61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy61, gen_bsy61_len);
+ ctx->pc += gen_bsy61_len;
+ return pc;
+ }
+void *compile_bsy62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy62, gen_bsy62_len);
+ ctx->pc += gen_bsy62_len;
+ return pc;
+ }
+void *compile_bsy63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy63, gen_bsy63_len);
+ ctx->pc += gen_bsy63_len;
+ return pc;
+ }
+void *compile_bsy7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy7, gen_bsy7_len);
+ ctx->pc += gen_bsy7_len;
+ return pc;
+ }
+void *compile_bsy8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy8, gen_bsy8_len);
+ ctx->pc += gen_bsy8_len;
+ return pc;
+ }
+void *compile_bsy9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_bsy9, gen_bsy9_len);
+ ctx->pc += gen_bsy9_len;
+ return pc;
+ }
+void *compile_li0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li0, gen_li0_len);
+ ctx->pc += gen_li0_len;
+ return pc;
+ }
+void *compile_li1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li1, gen_li1_len);
+ ctx->pc += gen_li1_len;
+ return pc;
+ }
+void *compile_li10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li10, gen_li10_len);
+ ctx->pc += gen_li10_len;
+ return pc;
+ }
+void *compile_li100(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li100, gen_li100_len);
+ ctx->pc += gen_li100_len;
+ return pc;
+ }
+void *compile_li101(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li101, gen_li101_len);
+ ctx->pc += gen_li101_len;
+ return pc;
+ }
+void *compile_li102(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li102, gen_li102_len);
+ ctx->pc += gen_li102_len;
+ return pc;
+ }
+void *compile_li103(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li103, gen_li103_len);
+ ctx->pc += gen_li103_len;
+ return pc;
+ }
+void *compile_li104(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li104, gen_li104_len);
+ ctx->pc += gen_li104_len;
+ return pc;
+ }
+void *compile_li105(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li105, gen_li105_len);
+ ctx->pc += gen_li105_len;
+ return pc;
+ }
+void *compile_li106(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li106, gen_li106_len);
+ ctx->pc += gen_li106_len;
+ return pc;
+ }
+void *compile_li107(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li107, gen_li107_len);
+ ctx->pc += gen_li107_len;
+ return pc;
+ }
+void *compile_li108(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li108, gen_li108_len);
+ ctx->pc += gen_li108_len;
+ return pc;
+ }
+void *compile_li109(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li109, gen_li109_len);
+ ctx->pc += gen_li109_len;
+ return pc;
+ }
+void *compile_li11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li11, gen_li11_len);
+ ctx->pc += gen_li11_len;
+ return pc;
+ }
+void *compile_li110(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li110, gen_li110_len);
+ ctx->pc += gen_li110_len;
+ return pc;
+ }
+void *compile_li111(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li111, gen_li111_len);
+ ctx->pc += gen_li111_len;
+ return pc;
+ }
+void *compile_li112(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li112, gen_li112_len);
+ ctx->pc += gen_li112_len;
+ return pc;
+ }
+void *compile_li113(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li113, gen_li113_len);
+ ctx->pc += gen_li113_len;
+ return pc;
+ }
+void *compile_li114(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li114, gen_li114_len);
+ ctx->pc += gen_li114_len;
+ return pc;
+ }
+void *compile_li115(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li115, gen_li115_len);
+ ctx->pc += gen_li115_len;
+ return pc;
+ }
+void *compile_li116(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li116, gen_li116_len);
+ ctx->pc += gen_li116_len;
+ return pc;
+ }
+void *compile_li117(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li117, gen_li117_len);
+ ctx->pc += gen_li117_len;
+ return pc;
+ }
+void *compile_li118(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li118, gen_li118_len);
+ ctx->pc += gen_li118_len;
+ return pc;
+ }
+void *compile_li119(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li119, gen_li119_len);
+ ctx->pc += gen_li119_len;
+ return pc;
+ }
+void *compile_li12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li12, gen_li12_len);
+ ctx->pc += gen_li12_len;
+ return pc;
+ }
+void *compile_li120(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li120, gen_li120_len);
+ ctx->pc += gen_li120_len;
+ return pc;
+ }
+void *compile_li121(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li121, gen_li121_len);
+ ctx->pc += gen_li121_len;
+ return pc;
+ }
+void *compile_li122(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li122, gen_li122_len);
+ ctx->pc += gen_li122_len;
+ return pc;
+ }
+void *compile_li123(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li123, gen_li123_len);
+ ctx->pc += gen_li123_len;
+ return pc;
+ }
+void *compile_li124(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li124, gen_li124_len);
+ ctx->pc += gen_li124_len;
+ return pc;
+ }
+void *compile_li125(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li125, gen_li125_len);
+ ctx->pc += gen_li125_len;
+ return pc;
+ }
+void *compile_li126(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li126, gen_li126_len);
+ ctx->pc += gen_li126_len;
+ return pc;
+ }
+void *compile_li127(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li127, gen_li127_len);
+ ctx->pc += gen_li127_len;
+ return pc;
+ }
+void *compile_li128(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li128, gen_li128_len);
+ ctx->pc += gen_li128_len;
+ return pc;
+ }
+void *compile_li129(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li129, gen_li129_len);
+ ctx->pc += gen_li129_len;
+ return pc;
+ }
+void *compile_li13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li13, gen_li13_len);
+ ctx->pc += gen_li13_len;
+ return pc;
+ }
+void *compile_li130(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li130, gen_li130_len);
+ ctx->pc += gen_li130_len;
+ return pc;
+ }
+void *compile_li131(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li131, gen_li131_len);
+ ctx->pc += gen_li131_len;
+ return pc;
+ }
+void *compile_li132(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li132, gen_li132_len);
+ ctx->pc += gen_li132_len;
+ return pc;
+ }
+void *compile_li133(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li133, gen_li133_len);
+ ctx->pc += gen_li133_len;
+ return pc;
+ }
+void *compile_li134(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li134, gen_li134_len);
+ ctx->pc += gen_li134_len;
+ return pc;
+ }
+void *compile_li135(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li135, gen_li135_len);
+ ctx->pc += gen_li135_len;
+ return pc;
+ }
+void *compile_li136(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li136, gen_li136_len);
+ ctx->pc += gen_li136_len;
+ return pc;
+ }
+void *compile_li137(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li137, gen_li137_len);
+ ctx->pc += gen_li137_len;
+ return pc;
+ }
+void *compile_li138(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li138, gen_li138_len);
+ ctx->pc += gen_li138_len;
+ return pc;
+ }
+void *compile_li139(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li139, gen_li139_len);
+ ctx->pc += gen_li139_len;
+ return pc;
+ }
+void *compile_li14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li14, gen_li14_len);
+ ctx->pc += gen_li14_len;
+ return pc;
+ }
+void *compile_li140(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li140, gen_li140_len);
+ ctx->pc += gen_li140_len;
+ return pc;
+ }
+void *compile_li141(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li141, gen_li141_len);
+ ctx->pc += gen_li141_len;
+ return pc;
+ }
+void *compile_li142(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li142, gen_li142_len);
+ ctx->pc += gen_li142_len;
+ return pc;
+ }
+void *compile_li143(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li143, gen_li143_len);
+ ctx->pc += gen_li143_len;
+ return pc;
+ }
+void *compile_li144(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li144, gen_li144_len);
+ ctx->pc += gen_li144_len;
+ return pc;
+ }
+void *compile_li145(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li145, gen_li145_len);
+ ctx->pc += gen_li145_len;
+ return pc;
+ }
+void *compile_li146(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li146, gen_li146_len);
+ ctx->pc += gen_li146_len;
+ return pc;
+ }
+void *compile_li147(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li147, gen_li147_len);
+ ctx->pc += gen_li147_len;
+ return pc;
+ }
+void *compile_li148(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li148, gen_li148_len);
+ ctx->pc += gen_li148_len;
+ return pc;
+ }
+void *compile_li149(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li149, gen_li149_len);
+ ctx->pc += gen_li149_len;
+ return pc;
+ }
+void *compile_li15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li15, gen_li15_len);
+ ctx->pc += gen_li15_len;
+ return pc;
+ }
+void *compile_li150(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li150, gen_li150_len);
+ ctx->pc += gen_li150_len;
+ return pc;
+ }
+void *compile_li151(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li151, gen_li151_len);
+ ctx->pc += gen_li151_len;
+ return pc;
+ }
+void *compile_li152(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li152, gen_li152_len);
+ ctx->pc += gen_li152_len;
+ return pc;
+ }
+void *compile_li153(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li153, gen_li153_len);
+ ctx->pc += gen_li153_len;
+ return pc;
+ }
+void *compile_li154(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li154, gen_li154_len);
+ ctx->pc += gen_li154_len;
+ return pc;
+ }
+void *compile_li155(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li155, gen_li155_len);
+ ctx->pc += gen_li155_len;
+ return pc;
+ }
+void *compile_li156(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li156, gen_li156_len);
+ ctx->pc += gen_li156_len;
+ return pc;
+ }
+void *compile_li157(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li157, gen_li157_len);
+ ctx->pc += gen_li157_len;
+ return pc;
+ }
+void *compile_li158(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li158, gen_li158_len);
+ ctx->pc += gen_li158_len;
+ return pc;
+ }
+void *compile_li159(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li159, gen_li159_len);
+ ctx->pc += gen_li159_len;
+ return pc;
+ }
+void *compile_li16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li16, gen_li16_len);
+ ctx->pc += gen_li16_len;
+ return pc;
+ }
+void *compile_li160(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li160, gen_li160_len);
+ ctx->pc += gen_li160_len;
+ return pc;
+ }
+void *compile_li161(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li161, gen_li161_len);
+ ctx->pc += gen_li161_len;
+ return pc;
+ }
+void *compile_li162(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li162, gen_li162_len);
+ ctx->pc += gen_li162_len;
+ return pc;
+ }
+void *compile_li163(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li163, gen_li163_len);
+ ctx->pc += gen_li163_len;
+ return pc;
+ }
+void *compile_li164(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li164, gen_li164_len);
+ ctx->pc += gen_li164_len;
+ return pc;
+ }
+void *compile_li165(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li165, gen_li165_len);
+ ctx->pc += gen_li165_len;
+ return pc;
+ }
+void *compile_li166(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li166, gen_li166_len);
+ ctx->pc += gen_li166_len;
+ return pc;
+ }
+void *compile_li167(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li167, gen_li167_len);
+ ctx->pc += gen_li167_len;
+ return pc;
+ }
+void *compile_li168(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li168, gen_li168_len);
+ ctx->pc += gen_li168_len;
+ return pc;
+ }
+void *compile_li169(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li169, gen_li169_len);
+ ctx->pc += gen_li169_len;
+ return pc;
+ }
+void *compile_li17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li17, gen_li17_len);
+ ctx->pc += gen_li17_len;
+ return pc;
+ }
+void *compile_li170(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li170, gen_li170_len);
+ ctx->pc += gen_li170_len;
+ return pc;
+ }
+void *compile_li171(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li171, gen_li171_len);
+ ctx->pc += gen_li171_len;
+ return pc;
+ }
+void *compile_li172(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li172, gen_li172_len);
+ ctx->pc += gen_li172_len;
+ return pc;
+ }
+void *compile_li173(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li173, gen_li173_len);
+ ctx->pc += gen_li173_len;
+ return pc;
+ }
+void *compile_li174(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li174, gen_li174_len);
+ ctx->pc += gen_li174_len;
+ return pc;
+ }
+void *compile_li175(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li175, gen_li175_len);
+ ctx->pc += gen_li175_len;
+ return pc;
+ }
+void *compile_li176(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li176, gen_li176_len);
+ ctx->pc += gen_li176_len;
+ return pc;
+ }
+void *compile_li177(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li177, gen_li177_len);
+ ctx->pc += gen_li177_len;
+ return pc;
+ }
+void *compile_li178(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li178, gen_li178_len);
+ ctx->pc += gen_li178_len;
+ return pc;
+ }
+void *compile_li179(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li179, gen_li179_len);
+ ctx->pc += gen_li179_len;
+ return pc;
+ }
+void *compile_li18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li18, gen_li18_len);
+ ctx->pc += gen_li18_len;
+ return pc;
+ }
+void *compile_li180(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li180, gen_li180_len);
+ ctx->pc += gen_li180_len;
+ return pc;
+ }
+void *compile_li181(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li181, gen_li181_len);
+ ctx->pc += gen_li181_len;
+ return pc;
+ }
+void *compile_li182(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li182, gen_li182_len);
+ ctx->pc += gen_li182_len;
+ return pc;
+ }
+void *compile_li183(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li183, gen_li183_len);
+ ctx->pc += gen_li183_len;
+ return pc;
+ }
+void *compile_li184(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li184, gen_li184_len);
+ ctx->pc += gen_li184_len;
+ return pc;
+ }
+void *compile_li185(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li185, gen_li185_len);
+ ctx->pc += gen_li185_len;
+ return pc;
+ }
+void *compile_li186(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li186, gen_li186_len);
+ ctx->pc += gen_li186_len;
+ return pc;
+ }
+void *compile_li187(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li187, gen_li187_len);
+ ctx->pc += gen_li187_len;
+ return pc;
+ }
+void *compile_li188(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li188, gen_li188_len);
+ ctx->pc += gen_li188_len;
+ return pc;
+ }
+void *compile_li189(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li189, gen_li189_len);
+ ctx->pc += gen_li189_len;
+ return pc;
+ }
+void *compile_li19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li19, gen_li19_len);
+ ctx->pc += gen_li19_len;
+ return pc;
+ }
+void *compile_li190(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li190, gen_li190_len);
+ ctx->pc += gen_li190_len;
+ return pc;
+ }
+void *compile_li191(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li191, gen_li191_len);
+ ctx->pc += gen_li191_len;
+ return pc;
+ }
+void *compile_li192(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li192, gen_li192_len);
+ ctx->pc += gen_li192_len;
+ return pc;
+ }
+void *compile_li193(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li193, gen_li193_len);
+ ctx->pc += gen_li193_len;
+ return pc;
+ }
+void *compile_li194(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li194, gen_li194_len);
+ ctx->pc += gen_li194_len;
+ return pc;
+ }
+void *compile_li195(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li195, gen_li195_len);
+ ctx->pc += gen_li195_len;
+ return pc;
+ }
+void *compile_li196(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li196, gen_li196_len);
+ ctx->pc += gen_li196_len;
+ return pc;
+ }
+void *compile_li197(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li197, gen_li197_len);
+ ctx->pc += gen_li197_len;
+ return pc;
+ }
+void *compile_li198(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li198, gen_li198_len);
+ ctx->pc += gen_li198_len;
+ return pc;
+ }
+void *compile_li199(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li199, gen_li199_len);
+ ctx->pc += gen_li199_len;
+ return pc;
+ }
+void *compile_li2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li2, gen_li2_len);
+ ctx->pc += gen_li2_len;
+ return pc;
+ }
+void *compile_li20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li20, gen_li20_len);
+ ctx->pc += gen_li20_len;
+ return pc;
+ }
+void *compile_li200(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li200, gen_li200_len);
+ ctx->pc += gen_li200_len;
+ return pc;
+ }
+void *compile_li201(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li201, gen_li201_len);
+ ctx->pc += gen_li201_len;
+ return pc;
+ }
+void *compile_li202(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li202, gen_li202_len);
+ ctx->pc += gen_li202_len;
+ return pc;
+ }
+void *compile_li203(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li203, gen_li203_len);
+ ctx->pc += gen_li203_len;
+ return pc;
+ }
+void *compile_li204(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li204, gen_li204_len);
+ ctx->pc += gen_li204_len;
+ return pc;
+ }
+void *compile_li205(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li205, gen_li205_len);
+ ctx->pc += gen_li205_len;
+ return pc;
+ }
+void *compile_li206(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li206, gen_li206_len);
+ ctx->pc += gen_li206_len;
+ return pc;
+ }
+void *compile_li207(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li207, gen_li207_len);
+ ctx->pc += gen_li207_len;
+ return pc;
+ }
+void *compile_li208(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li208, gen_li208_len);
+ ctx->pc += gen_li208_len;
+ return pc;
+ }
+void *compile_li209(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li209, gen_li209_len);
+ ctx->pc += gen_li209_len;
+ return pc;
+ }
+void *compile_li21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li21, gen_li21_len);
+ ctx->pc += gen_li21_len;
+ return pc;
+ }
+void *compile_li210(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li210, gen_li210_len);
+ ctx->pc += gen_li210_len;
+ return pc;
+ }
+void *compile_li211(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li211, gen_li211_len);
+ ctx->pc += gen_li211_len;
+ return pc;
+ }
+void *compile_li212(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li212, gen_li212_len);
+ ctx->pc += gen_li212_len;
+ return pc;
+ }
+void *compile_li213(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li213, gen_li213_len);
+ ctx->pc += gen_li213_len;
+ return pc;
+ }
+void *compile_li214(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li214, gen_li214_len);
+ ctx->pc += gen_li214_len;
+ return pc;
+ }
+void *compile_li215(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li215, gen_li215_len);
+ ctx->pc += gen_li215_len;
+ return pc;
+ }
+void *compile_li216(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li216, gen_li216_len);
+ ctx->pc += gen_li216_len;
+ return pc;
+ }
+void *compile_li217(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li217, gen_li217_len);
+ ctx->pc += gen_li217_len;
+ return pc;
+ }
+void *compile_li218(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li218, gen_li218_len);
+ ctx->pc += gen_li218_len;
+ return pc;
+ }
+void *compile_li219(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li219, gen_li219_len);
+ ctx->pc += gen_li219_len;
+ return pc;
+ }
+void *compile_li22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li22, gen_li22_len);
+ ctx->pc += gen_li22_len;
+ return pc;
+ }
+void *compile_li220(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li220, gen_li220_len);
+ ctx->pc += gen_li220_len;
+ return pc;
+ }
+void *compile_li221(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li221, gen_li221_len);
+ ctx->pc += gen_li221_len;
+ return pc;
+ }
+void *compile_li222(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li222, gen_li222_len);
+ ctx->pc += gen_li222_len;
+ return pc;
+ }
+void *compile_li223(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li223, gen_li223_len);
+ ctx->pc += gen_li223_len;
+ return pc;
+ }
+void *compile_li224(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li224, gen_li224_len);
+ ctx->pc += gen_li224_len;
+ return pc;
+ }
+void *compile_li225(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li225, gen_li225_len);
+ ctx->pc += gen_li225_len;
+ return pc;
+ }
+void *compile_li226(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li226, gen_li226_len);
+ ctx->pc += gen_li226_len;
+ return pc;
+ }
+void *compile_li227(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li227, gen_li227_len);
+ ctx->pc += gen_li227_len;
+ return pc;
+ }
+void *compile_li228(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li228, gen_li228_len);
+ ctx->pc += gen_li228_len;
+ return pc;
+ }
+void *compile_li229(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li229, gen_li229_len);
+ ctx->pc += gen_li229_len;
+ return pc;
+ }
+void *compile_li23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li23, gen_li23_len);
+ ctx->pc += gen_li23_len;
+ return pc;
+ }
+void *compile_li230(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li230, gen_li230_len);
+ ctx->pc += gen_li230_len;
+ return pc;
+ }
+void *compile_li231(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li231, gen_li231_len);
+ ctx->pc += gen_li231_len;
+ return pc;
+ }
+void *compile_li232(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li232, gen_li232_len);
+ ctx->pc += gen_li232_len;
+ return pc;
+ }
+void *compile_li233(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li233, gen_li233_len);
+ ctx->pc += gen_li233_len;
+ return pc;
+ }
+void *compile_li234(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li234, gen_li234_len);
+ ctx->pc += gen_li234_len;
+ return pc;
+ }
+void *compile_li235(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li235, gen_li235_len);
+ ctx->pc += gen_li235_len;
+ return pc;
+ }
+void *compile_li236(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li236, gen_li236_len);
+ ctx->pc += gen_li236_len;
+ return pc;
+ }
+void *compile_li237(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li237, gen_li237_len);
+ ctx->pc += gen_li237_len;
+ return pc;
+ }
+void *compile_li238(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li238, gen_li238_len);
+ ctx->pc += gen_li238_len;
+ return pc;
+ }
+void *compile_li239(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li239, gen_li239_len);
+ ctx->pc += gen_li239_len;
+ return pc;
+ }
+void *compile_li24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li24, gen_li24_len);
+ ctx->pc += gen_li24_len;
+ return pc;
+ }
+void *compile_li240(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li240, gen_li240_len);
+ ctx->pc += gen_li240_len;
+ return pc;
+ }
+void *compile_li241(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li241, gen_li241_len);
+ ctx->pc += gen_li241_len;
+ return pc;
+ }
+void *compile_li242(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li242, gen_li242_len);
+ ctx->pc += gen_li242_len;
+ return pc;
+ }
+void *compile_li243(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li243, gen_li243_len);
+ ctx->pc += gen_li243_len;
+ return pc;
+ }
+void *compile_li244(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li244, gen_li244_len);
+ ctx->pc += gen_li244_len;
+ return pc;
+ }
+void *compile_li245(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li245, gen_li245_len);
+ ctx->pc += gen_li245_len;
+ return pc;
+ }
+void *compile_li246(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li246, gen_li246_len);
+ ctx->pc += gen_li246_len;
+ return pc;
+ }
+void *compile_li247(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li247, gen_li247_len);
+ ctx->pc += gen_li247_len;
+ return pc;
+ }
+void *compile_li248(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li248, gen_li248_len);
+ ctx->pc += gen_li248_len;
+ return pc;
+ }
+void *compile_li249(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li249, gen_li249_len);
+ ctx->pc += gen_li249_len;
+ return pc;
+ }
+void *compile_li25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li25, gen_li25_len);
+ ctx->pc += gen_li25_len;
+ return pc;
+ }
+void *compile_li250(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li250, gen_li250_len);
+ ctx->pc += gen_li250_len;
+ return pc;
+ }
+void *compile_li251(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li251, gen_li251_len);
+ ctx->pc += gen_li251_len;
+ return pc;
+ }
+void *compile_li252(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li252, gen_li252_len);
+ ctx->pc += gen_li252_len;
+ return pc;
+ }
+void *compile_li253(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li253, gen_li253_len);
+ ctx->pc += gen_li253_len;
+ return pc;
+ }
+void *compile_li254(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li254, gen_li254_len);
+ ctx->pc += gen_li254_len;
+ return pc;
+ }
+void *compile_li255(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li255, gen_li255_len);
+ ctx->pc += gen_li255_len;
+ return pc;
+ }
+void *compile_li26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li26, gen_li26_len);
+ ctx->pc += gen_li26_len;
+ return pc;
+ }
+void *compile_li27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li27, gen_li27_len);
+ ctx->pc += gen_li27_len;
+ return pc;
+ }
+void *compile_li28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li28, gen_li28_len);
+ ctx->pc += gen_li28_len;
+ return pc;
+ }
+void *compile_li29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li29, gen_li29_len);
+ ctx->pc += gen_li29_len;
+ return pc;
+ }
+void *compile_li3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li3, gen_li3_len);
+ ctx->pc += gen_li3_len;
+ return pc;
+ }
+void *compile_li30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li30, gen_li30_len);
+ ctx->pc += gen_li30_len;
+ return pc;
+ }
+void *compile_li31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li31, gen_li31_len);
+ ctx->pc += gen_li31_len;
+ return pc;
+ }
+void *compile_li32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li32, gen_li32_len);
+ ctx->pc += gen_li32_len;
+ return pc;
+ }
+void *compile_li33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li33, gen_li33_len);
+ ctx->pc += gen_li33_len;
+ return pc;
+ }
+void *compile_li34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li34, gen_li34_len);
+ ctx->pc += gen_li34_len;
+ return pc;
+ }
+void *compile_li35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li35, gen_li35_len);
+ ctx->pc += gen_li35_len;
+ return pc;
+ }
+void *compile_li36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li36, gen_li36_len);
+ ctx->pc += gen_li36_len;
+ return pc;
+ }
+void *compile_li37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li37, gen_li37_len);
+ ctx->pc += gen_li37_len;
+ return pc;
+ }
+void *compile_li38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li38, gen_li38_len);
+ ctx->pc += gen_li38_len;
+ return pc;
+ }
+void *compile_li39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li39, gen_li39_len);
+ ctx->pc += gen_li39_len;
+ return pc;
+ }
+void *compile_li4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li4, gen_li4_len);
+ ctx->pc += gen_li4_len;
+ return pc;
+ }
+void *compile_li40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li40, gen_li40_len);
+ ctx->pc += gen_li40_len;
+ return pc;
+ }
+void *compile_li41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li41, gen_li41_len);
+ ctx->pc += gen_li41_len;
+ return pc;
+ }
+void *compile_li42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li42, gen_li42_len);
+ ctx->pc += gen_li42_len;
+ return pc;
+ }
+void *compile_li43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li43, gen_li43_len);
+ ctx->pc += gen_li43_len;
+ return pc;
+ }
+void *compile_li44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li44, gen_li44_len);
+ ctx->pc += gen_li44_len;
+ return pc;
+ }
+void *compile_li45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li45, gen_li45_len);
+ ctx->pc += gen_li45_len;
+ return pc;
+ }
+void *compile_li46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li46, gen_li46_len);
+ ctx->pc += gen_li46_len;
+ return pc;
+ }
+void *compile_li47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li47, gen_li47_len);
+ ctx->pc += gen_li47_len;
+ return pc;
+ }
+void *compile_li48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li48, gen_li48_len);
+ ctx->pc += gen_li48_len;
+ return pc;
+ }
+void *compile_li49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li49, gen_li49_len);
+ ctx->pc += gen_li49_len;
+ return pc;
+ }
+void *compile_li5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li5, gen_li5_len);
+ ctx->pc += gen_li5_len;
+ return pc;
+ }
+void *compile_li50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li50, gen_li50_len);
+ ctx->pc += gen_li50_len;
+ return pc;
+ }
+void *compile_li51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li51, gen_li51_len);
+ ctx->pc += gen_li51_len;
+ return pc;
+ }
+void *compile_li52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li52, gen_li52_len);
+ ctx->pc += gen_li52_len;
+ return pc;
+ }
+void *compile_li53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li53, gen_li53_len);
+ ctx->pc += gen_li53_len;
+ return pc;
+ }
+void *compile_li54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li54, gen_li54_len);
+ ctx->pc += gen_li54_len;
+ return pc;
+ }
+void *compile_li55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li55, gen_li55_len);
+ ctx->pc += gen_li55_len;
+ return pc;
+ }
+void *compile_li56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li56, gen_li56_len);
+ ctx->pc += gen_li56_len;
+ return pc;
+ }
+void *compile_li57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li57, gen_li57_len);
+ ctx->pc += gen_li57_len;
+ return pc;
+ }
+void *compile_li58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li58, gen_li58_len);
+ ctx->pc += gen_li58_len;
+ return pc;
+ }
+void *compile_li59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li59, gen_li59_len);
+ ctx->pc += gen_li59_len;
+ return pc;
+ }
+void *compile_li6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li6, gen_li6_len);
+ ctx->pc += gen_li6_len;
+ return pc;
+ }
+void *compile_li60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li60, gen_li60_len);
+ ctx->pc += gen_li60_len;
+ return pc;
+ }
+void *compile_li61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li61, gen_li61_len);
+ ctx->pc += gen_li61_len;
+ return pc;
+ }
+void *compile_li62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li62, gen_li62_len);
+ ctx->pc += gen_li62_len;
+ return pc;
+ }
+void *compile_li63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li63, gen_li63_len);
+ ctx->pc += gen_li63_len;
+ return pc;
+ }
+void *compile_li64(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li64, gen_li64_len);
+ ctx->pc += gen_li64_len;
+ return pc;
+ }
+void *compile_li65(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li65, gen_li65_len);
+ ctx->pc += gen_li65_len;
+ return pc;
+ }
+void *compile_li66(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li66, gen_li66_len);
+ ctx->pc += gen_li66_len;
+ return pc;
+ }
+void *compile_li67(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li67, gen_li67_len);
+ ctx->pc += gen_li67_len;
+ return pc;
+ }
+void *compile_li68(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li68, gen_li68_len);
+ ctx->pc += gen_li68_len;
+ return pc;
+ }
+void *compile_li69(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li69, gen_li69_len);
+ ctx->pc += gen_li69_len;
+ return pc;
+ }
+void *compile_li7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li7, gen_li7_len);
+ ctx->pc += gen_li7_len;
+ return pc;
+ }
+void *compile_li70(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li70, gen_li70_len);
+ ctx->pc += gen_li70_len;
+ return pc;
+ }
+void *compile_li71(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li71, gen_li71_len);
+ ctx->pc += gen_li71_len;
+ return pc;
+ }
+void *compile_li72(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li72, gen_li72_len);
+ ctx->pc += gen_li72_len;
+ return pc;
+ }
+void *compile_li73(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li73, gen_li73_len);
+ ctx->pc += gen_li73_len;
+ return pc;
+ }
+void *compile_li74(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li74, gen_li74_len);
+ ctx->pc += gen_li74_len;
+ return pc;
+ }
+void *compile_li75(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li75, gen_li75_len);
+ ctx->pc += gen_li75_len;
+ return pc;
+ }
+void *compile_li76(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li76, gen_li76_len);
+ ctx->pc += gen_li76_len;
+ return pc;
+ }
+void *compile_li77(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li77, gen_li77_len);
+ ctx->pc += gen_li77_len;
+ return pc;
+ }
+void *compile_li78(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li78, gen_li78_len);
+ ctx->pc += gen_li78_len;
+ return pc;
+ }
+void *compile_li79(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li79, gen_li79_len);
+ ctx->pc += gen_li79_len;
+ return pc;
+ }
+void *compile_li8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li8, gen_li8_len);
+ ctx->pc += gen_li8_len;
+ return pc;
+ }
+void *compile_li80(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li80, gen_li80_len);
+ ctx->pc += gen_li80_len;
+ return pc;
+ }
+void *compile_li81(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li81, gen_li81_len);
+ ctx->pc += gen_li81_len;
+ return pc;
+ }
+void *compile_li82(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li82, gen_li82_len);
+ ctx->pc += gen_li82_len;
+ return pc;
+ }
+void *compile_li83(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li83, gen_li83_len);
+ ctx->pc += gen_li83_len;
+ return pc;
+ }
+void *compile_li84(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li84, gen_li84_len);
+ ctx->pc += gen_li84_len;
+ return pc;
+ }
+void *compile_li85(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li85, gen_li85_len);
+ ctx->pc += gen_li85_len;
+ return pc;
+ }
+void *compile_li86(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li86, gen_li86_len);
+ ctx->pc += gen_li86_len;
+ return pc;
+ }
+void *compile_li87(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li87, gen_li87_len);
+ ctx->pc += gen_li87_len;
+ return pc;
+ }
+void *compile_li88(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li88, gen_li88_len);
+ ctx->pc += gen_li88_len;
+ return pc;
+ }
+void *compile_li89(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li89, gen_li89_len);
+ ctx->pc += gen_li89_len;
+ return pc;
+ }
+void *compile_li9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li9, gen_li9_len);
+ ctx->pc += gen_li9_len;
+ return pc;
+ }
+void *compile_li90(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li90, gen_li90_len);
+ ctx->pc += gen_li90_len;
+ return pc;
+ }
+void *compile_li91(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li91, gen_li91_len);
+ ctx->pc += gen_li91_len;
+ return pc;
+ }
+void *compile_li92(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li92, gen_li92_len);
+ ctx->pc += gen_li92_len;
+ return pc;
+ }
+void *compile_li93(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li93, gen_li93_len);
+ ctx->pc += gen_li93_len;
+ return pc;
+ }
+void *compile_li94(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li94, gen_li94_len);
+ ctx->pc += gen_li94_len;
+ return pc;
+ }
+void *compile_li95(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li95, gen_li95_len);
+ ctx->pc += gen_li95_len;
+ return pc;
+ }
+void *compile_li96(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li96, gen_li96_len);
+ ctx->pc += gen_li96_len;
+ return pc;
+ }
+void *compile_li97(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li97, gen_li97_len);
+ ctx->pc += gen_li97_len;
+ return pc;
+ }
+void *compile_li98(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li98, gen_li98_len);
+ ctx->pc += gen_li98_len;
+ return pc;
+ }
+void *compile_li99(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_li99, gen_li99_len);
+ ctx->pc += gen_li99_len;
+ return pc;
+ }
+void *compile_sla0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla0, gen_sla0_len);
+ ctx->pc += gen_sla0_len;
+ return pc;
+ }
+void *compile_sla1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla1, gen_sla1_len);
+ ctx->pc += gen_sla1_len;
+ return pc;
+ }
+void *compile_sla10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla10, gen_sla10_len);
+ ctx->pc += gen_sla10_len;
+ return pc;
+ }
+void *compile_sla11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla11, gen_sla11_len);
+ ctx->pc += gen_sla11_len;
+ return pc;
+ }
+void *compile_sla12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla12, gen_sla12_len);
+ ctx->pc += gen_sla12_len;
+ return pc;
+ }
+void *compile_sla13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla13, gen_sla13_len);
+ ctx->pc += gen_sla13_len;
+ return pc;
+ }
+void *compile_sla14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla14, gen_sla14_len);
+ ctx->pc += gen_sla14_len;
+ return pc;
+ }
+void *compile_sla15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla15, gen_sla15_len);
+ ctx->pc += gen_sla15_len;
+ return pc;
+ }
+void *compile_sla16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla16, gen_sla16_len);
+ ctx->pc += gen_sla16_len;
+ return pc;
+ }
+void *compile_sla17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla17, gen_sla17_len);
+ ctx->pc += gen_sla17_len;
+ return pc;
+ }
+void *compile_sla18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla18, gen_sla18_len);
+ ctx->pc += gen_sla18_len;
+ return pc;
+ }
+void *compile_sla19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla19, gen_sla19_len);
+ ctx->pc += gen_sla19_len;
+ return pc;
+ }
+void *compile_sla2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla2, gen_sla2_len);
+ ctx->pc += gen_sla2_len;
+ return pc;
+ }
+void *compile_sla20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla20, gen_sla20_len);
+ ctx->pc += gen_sla20_len;
+ return pc;
+ }
+void *compile_sla21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla21, gen_sla21_len);
+ ctx->pc += gen_sla21_len;
+ return pc;
+ }
+void *compile_sla22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla22, gen_sla22_len);
+ ctx->pc += gen_sla22_len;
+ return pc;
+ }
+void *compile_sla23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla23, gen_sla23_len);
+ ctx->pc += gen_sla23_len;
+ return pc;
+ }
+void *compile_sla24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla24, gen_sla24_len);
+ ctx->pc += gen_sla24_len;
+ return pc;
+ }
+void *compile_sla25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla25, gen_sla25_len);
+ ctx->pc += gen_sla25_len;
+ return pc;
+ }
+void *compile_sla26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla26, gen_sla26_len);
+ ctx->pc += gen_sla26_len;
+ return pc;
+ }
+void *compile_sla27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla27, gen_sla27_len);
+ ctx->pc += gen_sla27_len;
+ return pc;
+ }
+void *compile_sla28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla28, gen_sla28_len);
+ ctx->pc += gen_sla28_len;
+ return pc;
+ }
+void *compile_sla29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla29, gen_sla29_len);
+ ctx->pc += gen_sla29_len;
+ return pc;
+ }
+void *compile_sla3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla3, gen_sla3_len);
+ ctx->pc += gen_sla3_len;
+ return pc;
+ }
+void *compile_sla30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla30, gen_sla30_len);
+ ctx->pc += gen_sla30_len;
+ return pc;
+ }
+void *compile_sla31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla31, gen_sla31_len);
+ ctx->pc += gen_sla31_len;
+ return pc;
+ }
+void *compile_sla32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla32, gen_sla32_len);
+ ctx->pc += gen_sla32_len;
+ return pc;
+ }
+void *compile_sla33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla33, gen_sla33_len);
+ ctx->pc += gen_sla33_len;
+ return pc;
+ }
+void *compile_sla34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla34, gen_sla34_len);
+ ctx->pc += gen_sla34_len;
+ return pc;
+ }
+void *compile_sla35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla35, gen_sla35_len);
+ ctx->pc += gen_sla35_len;
+ return pc;
+ }
+void *compile_sla36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla36, gen_sla36_len);
+ ctx->pc += gen_sla36_len;
+ return pc;
+ }
+void *compile_sla37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla37, gen_sla37_len);
+ ctx->pc += gen_sla37_len;
+ return pc;
+ }
+void *compile_sla38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla38, gen_sla38_len);
+ ctx->pc += gen_sla38_len;
+ return pc;
+ }
+void *compile_sla39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla39, gen_sla39_len);
+ ctx->pc += gen_sla39_len;
+ return pc;
+ }
+void *compile_sla4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla4, gen_sla4_len);
+ ctx->pc += gen_sla4_len;
+ return pc;
+ }
+void *compile_sla40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla40, gen_sla40_len);
+ ctx->pc += gen_sla40_len;
+ return pc;
+ }
+void *compile_sla41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla41, gen_sla41_len);
+ ctx->pc += gen_sla41_len;
+ return pc;
+ }
+void *compile_sla42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla42, gen_sla42_len);
+ ctx->pc += gen_sla42_len;
+ return pc;
+ }
+void *compile_sla43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla43, gen_sla43_len);
+ ctx->pc += gen_sla43_len;
+ return pc;
+ }
+void *compile_sla44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla44, gen_sla44_len);
+ ctx->pc += gen_sla44_len;
+ return pc;
+ }
+void *compile_sla45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla45, gen_sla45_len);
+ ctx->pc += gen_sla45_len;
+ return pc;
+ }
+void *compile_sla46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla46, gen_sla46_len);
+ ctx->pc += gen_sla46_len;
+ return pc;
+ }
+void *compile_sla47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla47, gen_sla47_len);
+ ctx->pc += gen_sla47_len;
+ return pc;
+ }
+void *compile_sla48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla48, gen_sla48_len);
+ ctx->pc += gen_sla48_len;
+ return pc;
+ }
+void *compile_sla49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla49, gen_sla49_len);
+ ctx->pc += gen_sla49_len;
+ return pc;
+ }
+void *compile_sla5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla5, gen_sla5_len);
+ ctx->pc += gen_sla5_len;
+ return pc;
+ }
+void *compile_sla50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla50, gen_sla50_len);
+ ctx->pc += gen_sla50_len;
+ return pc;
+ }
+void *compile_sla51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla51, gen_sla51_len);
+ ctx->pc += gen_sla51_len;
+ return pc;
+ }
+void *compile_sla52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla52, gen_sla52_len);
+ ctx->pc += gen_sla52_len;
+ return pc;
+ }
+void *compile_sla53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla53, gen_sla53_len);
+ ctx->pc += gen_sla53_len;
+ return pc;
+ }
+void *compile_sla54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla54, gen_sla54_len);
+ ctx->pc += gen_sla54_len;
+ return pc;
+ }
+void *compile_sla55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla55, gen_sla55_len);
+ ctx->pc += gen_sla55_len;
+ return pc;
+ }
+void *compile_sla56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla56, gen_sla56_len);
+ ctx->pc += gen_sla56_len;
+ return pc;
+ }
+void *compile_sla57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla57, gen_sla57_len);
+ ctx->pc += gen_sla57_len;
+ return pc;
+ }
+void *compile_sla58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla58, gen_sla58_len);
+ ctx->pc += gen_sla58_len;
+ return pc;
+ }
+void *compile_sla59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla59, gen_sla59_len);
+ ctx->pc += gen_sla59_len;
+ return pc;
+ }
+void *compile_sla6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla6, gen_sla6_len);
+ ctx->pc += gen_sla6_len;
+ return pc;
+ }
+void *compile_sla60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla60, gen_sla60_len);
+ ctx->pc += gen_sla60_len;
+ return pc;
+ }
+void *compile_sla61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla61, gen_sla61_len);
+ ctx->pc += gen_sla61_len;
+ return pc;
+ }
+void *compile_sla62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla62, gen_sla62_len);
+ ctx->pc += gen_sla62_len;
+ return pc;
+ }
+void *compile_sla63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla63, gen_sla63_len);
+ ctx->pc += gen_sla63_len;
+ return pc;
+ }
+void *compile_sla7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla7, gen_sla7_len);
+ ctx->pc += gen_sla7_len;
+ return pc;
+ }
+void *compile_sla8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla8, gen_sla8_len);
+ ctx->pc += gen_sla8_len;
+ return pc;
+ }
+void *compile_sla9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sla9, gen_sla9_len);
+ ctx->pc += gen_sla9_len;
+ return pc;
+ }
+void *compile_slo0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo0, gen_slo0_len);
+ ctx->pc += gen_slo0_len;
+ return pc;
+ }
+void *compile_slo1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo1, gen_slo1_len);
+ ctx->pc += gen_slo1_len;
+ return pc;
+ }
+void *compile_slo10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo10, gen_slo10_len);
+ ctx->pc += gen_slo10_len;
+ return pc;
+ }
+void *compile_slo11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo11, gen_slo11_len);
+ ctx->pc += gen_slo11_len;
+ return pc;
+ }
+void *compile_slo12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo12, gen_slo12_len);
+ ctx->pc += gen_slo12_len;
+ return pc;
+ }
+void *compile_slo13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo13, gen_slo13_len);
+ ctx->pc += gen_slo13_len;
+ return pc;
+ }
+void *compile_slo14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo14, gen_slo14_len);
+ ctx->pc += gen_slo14_len;
+ return pc;
+ }
+void *compile_slo15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo15, gen_slo15_len);
+ ctx->pc += gen_slo15_len;
+ return pc;
+ }
+void *compile_slo16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo16, gen_slo16_len);
+ ctx->pc += gen_slo16_len;
+ return pc;
+ }
+void *compile_slo17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo17, gen_slo17_len);
+ ctx->pc += gen_slo17_len;
+ return pc;
+ }
+void *compile_slo18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo18, gen_slo18_len);
+ ctx->pc += gen_slo18_len;
+ return pc;
+ }
+void *compile_slo19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo19, gen_slo19_len);
+ ctx->pc += gen_slo19_len;
+ return pc;
+ }
+void *compile_slo2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo2, gen_slo2_len);
+ ctx->pc += gen_slo2_len;
+ return pc;
+ }
+void *compile_slo20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo20, gen_slo20_len);
+ ctx->pc += gen_slo20_len;
+ return pc;
+ }
+void *compile_slo21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo21, gen_slo21_len);
+ ctx->pc += gen_slo21_len;
+ return pc;
+ }
+void *compile_slo22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo22, gen_slo22_len);
+ ctx->pc += gen_slo22_len;
+ return pc;
+ }
+void *compile_slo23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo23, gen_slo23_len);
+ ctx->pc += gen_slo23_len;
+ return pc;
+ }
+void *compile_slo24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo24, gen_slo24_len);
+ ctx->pc += gen_slo24_len;
+ return pc;
+ }
+void *compile_slo25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo25, gen_slo25_len);
+ ctx->pc += gen_slo25_len;
+ return pc;
+ }
+void *compile_slo26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo26, gen_slo26_len);
+ ctx->pc += gen_slo26_len;
+ return pc;
+ }
+void *compile_slo27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo27, gen_slo27_len);
+ ctx->pc += gen_slo27_len;
+ return pc;
+ }
+void *compile_slo28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo28, gen_slo28_len);
+ ctx->pc += gen_slo28_len;
+ return pc;
+ }
+void *compile_slo29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo29, gen_slo29_len);
+ ctx->pc += gen_slo29_len;
+ return pc;
+ }
+void *compile_slo3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo3, gen_slo3_len);
+ ctx->pc += gen_slo3_len;
+ return pc;
+ }
+void *compile_slo30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo30, gen_slo30_len);
+ ctx->pc += gen_slo30_len;
+ return pc;
+ }
+void *compile_slo31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo31, gen_slo31_len);
+ ctx->pc += gen_slo31_len;
+ return pc;
+ }
+void *compile_slo32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo32, gen_slo32_len);
+ ctx->pc += gen_slo32_len;
+ return pc;
+ }
+void *compile_slo33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo33, gen_slo33_len);
+ ctx->pc += gen_slo33_len;
+ return pc;
+ }
+void *compile_slo34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo34, gen_slo34_len);
+ ctx->pc += gen_slo34_len;
+ return pc;
+ }
+void *compile_slo35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo35, gen_slo35_len);
+ ctx->pc += gen_slo35_len;
+ return pc;
+ }
+void *compile_slo36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo36, gen_slo36_len);
+ ctx->pc += gen_slo36_len;
+ return pc;
+ }
+void *compile_slo37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo37, gen_slo37_len);
+ ctx->pc += gen_slo37_len;
+ return pc;
+ }
+void *compile_slo38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo38, gen_slo38_len);
+ ctx->pc += gen_slo38_len;
+ return pc;
+ }
+void *compile_slo39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo39, gen_slo39_len);
+ ctx->pc += gen_slo39_len;
+ return pc;
+ }
+void *compile_slo4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo4, gen_slo4_len);
+ ctx->pc += gen_slo4_len;
+ return pc;
+ }
+void *compile_slo40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo40, gen_slo40_len);
+ ctx->pc += gen_slo40_len;
+ return pc;
+ }
+void *compile_slo41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo41, gen_slo41_len);
+ ctx->pc += gen_slo41_len;
+ return pc;
+ }
+void *compile_slo42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo42, gen_slo42_len);
+ ctx->pc += gen_slo42_len;
+ return pc;
+ }
+void *compile_slo43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo43, gen_slo43_len);
+ ctx->pc += gen_slo43_len;
+ return pc;
+ }
+void *compile_slo44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo44, gen_slo44_len);
+ ctx->pc += gen_slo44_len;
+ return pc;
+ }
+void *compile_slo45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo45, gen_slo45_len);
+ ctx->pc += gen_slo45_len;
+ return pc;
+ }
+void *compile_slo46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo46, gen_slo46_len);
+ ctx->pc += gen_slo46_len;
+ return pc;
+ }
+void *compile_slo47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo47, gen_slo47_len);
+ ctx->pc += gen_slo47_len;
+ return pc;
+ }
+void *compile_slo48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo48, gen_slo48_len);
+ ctx->pc += gen_slo48_len;
+ return pc;
+ }
+void *compile_slo49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo49, gen_slo49_len);
+ ctx->pc += gen_slo49_len;
+ return pc;
+ }
+void *compile_slo5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo5, gen_slo5_len);
+ ctx->pc += gen_slo5_len;
+ return pc;
+ }
+void *compile_slo50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo50, gen_slo50_len);
+ ctx->pc += gen_slo50_len;
+ return pc;
+ }
+void *compile_slo51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo51, gen_slo51_len);
+ ctx->pc += gen_slo51_len;
+ return pc;
+ }
+void *compile_slo52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo52, gen_slo52_len);
+ ctx->pc += gen_slo52_len;
+ return pc;
+ }
+void *compile_slo53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo53, gen_slo53_len);
+ ctx->pc += gen_slo53_len;
+ return pc;
+ }
+void *compile_slo54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo54, gen_slo54_len);
+ ctx->pc += gen_slo54_len;
+ return pc;
+ }
+void *compile_slo55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo55, gen_slo55_len);
+ ctx->pc += gen_slo55_len;
+ return pc;
+ }
+void *compile_slo56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo56, gen_slo56_len);
+ ctx->pc += gen_slo56_len;
+ return pc;
+ }
+void *compile_slo57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo57, gen_slo57_len);
+ ctx->pc += gen_slo57_len;
+ return pc;
+ }
+void *compile_slo58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo58, gen_slo58_len);
+ ctx->pc += gen_slo58_len;
+ return pc;
+ }
+void *compile_slo59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo59, gen_slo59_len);
+ ctx->pc += gen_slo59_len;
+ return pc;
+ }
+void *compile_slo6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo6, gen_slo6_len);
+ ctx->pc += gen_slo6_len;
+ return pc;
+ }
+void *compile_slo60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo60, gen_slo60_len);
+ ctx->pc += gen_slo60_len;
+ return pc;
+ }
+void *compile_slo61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo61, gen_slo61_len);
+ ctx->pc += gen_slo61_len;
+ return pc;
+ }
+void *compile_slo62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo62, gen_slo62_len);
+ ctx->pc += gen_slo62_len;
+ return pc;
+ }
+void *compile_slo63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo63, gen_slo63_len);
+ ctx->pc += gen_slo63_len;
+ return pc;
+ }
+void *compile_slo7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo7, gen_slo7_len);
+ ctx->pc += gen_slo7_len;
+ return pc;
+ }
+void *compile_slo8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo8, gen_slo8_len);
+ ctx->pc += gen_slo8_len;
+ return pc;
+ }
+void *compile_slo9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slo9, gen_slo9_len);
+ ctx->pc += gen_slo9_len;
+ return pc;
+ }
+void *compile_slx0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx0, gen_slx0_len);
+ ctx->pc += gen_slx0_len;
+ return pc;
+ }
+void *compile_slx1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx1, gen_slx1_len);
+ ctx->pc += gen_slx1_len;
+ return pc;
+ }
+void *compile_slx10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx10, gen_slx10_len);
+ ctx->pc += gen_slx10_len;
+ return pc;
+ }
+void *compile_slx11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx11, gen_slx11_len);
+ ctx->pc += gen_slx11_len;
+ return pc;
+ }
+void *compile_slx12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx12, gen_slx12_len);
+ ctx->pc += gen_slx12_len;
+ return pc;
+ }
+void *compile_slx13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx13, gen_slx13_len);
+ ctx->pc += gen_slx13_len;
+ return pc;
+ }
+void *compile_slx14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx14, gen_slx14_len);
+ ctx->pc += gen_slx14_len;
+ return pc;
+ }
+void *compile_slx15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx15, gen_slx15_len);
+ ctx->pc += gen_slx15_len;
+ return pc;
+ }
+void *compile_slx16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx16, gen_slx16_len);
+ ctx->pc += gen_slx16_len;
+ return pc;
+ }
+void *compile_slx17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx17, gen_slx17_len);
+ ctx->pc += gen_slx17_len;
+ return pc;
+ }
+void *compile_slx18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx18, gen_slx18_len);
+ ctx->pc += gen_slx18_len;
+ return pc;
+ }
+void *compile_slx19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx19, gen_slx19_len);
+ ctx->pc += gen_slx19_len;
+ return pc;
+ }
+void *compile_slx2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx2, gen_slx2_len);
+ ctx->pc += gen_slx2_len;
+ return pc;
+ }
+void *compile_slx20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx20, gen_slx20_len);
+ ctx->pc += gen_slx20_len;
+ return pc;
+ }
+void *compile_slx21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx21, gen_slx21_len);
+ ctx->pc += gen_slx21_len;
+ return pc;
+ }
+void *compile_slx22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx22, gen_slx22_len);
+ ctx->pc += gen_slx22_len;
+ return pc;
+ }
+void *compile_slx23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx23, gen_slx23_len);
+ ctx->pc += gen_slx23_len;
+ return pc;
+ }
+void *compile_slx24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx24, gen_slx24_len);
+ ctx->pc += gen_slx24_len;
+ return pc;
+ }
+void *compile_slx25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx25, gen_slx25_len);
+ ctx->pc += gen_slx25_len;
+ return pc;
+ }
+void *compile_slx26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx26, gen_slx26_len);
+ ctx->pc += gen_slx26_len;
+ return pc;
+ }
+void *compile_slx27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx27, gen_slx27_len);
+ ctx->pc += gen_slx27_len;
+ return pc;
+ }
+void *compile_slx28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx28, gen_slx28_len);
+ ctx->pc += gen_slx28_len;
+ return pc;
+ }
+void *compile_slx29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx29, gen_slx29_len);
+ ctx->pc += gen_slx29_len;
+ return pc;
+ }
+void *compile_slx3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx3, gen_slx3_len);
+ ctx->pc += gen_slx3_len;
+ return pc;
+ }
+void *compile_slx30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx30, gen_slx30_len);
+ ctx->pc += gen_slx30_len;
+ return pc;
+ }
+void *compile_slx31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx31, gen_slx31_len);
+ ctx->pc += gen_slx31_len;
+ return pc;
+ }
+void *compile_slx32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx32, gen_slx32_len);
+ ctx->pc += gen_slx32_len;
+ return pc;
+ }
+void *compile_slx33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx33, gen_slx33_len);
+ ctx->pc += gen_slx33_len;
+ return pc;
+ }
+void *compile_slx34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx34, gen_slx34_len);
+ ctx->pc += gen_slx34_len;
+ return pc;
+ }
+void *compile_slx35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx35, gen_slx35_len);
+ ctx->pc += gen_slx35_len;
+ return pc;
+ }
+void *compile_slx36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx36, gen_slx36_len);
+ ctx->pc += gen_slx36_len;
+ return pc;
+ }
+void *compile_slx37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx37, gen_slx37_len);
+ ctx->pc += gen_slx37_len;
+ return pc;
+ }
+void *compile_slx38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx38, gen_slx38_len);
+ ctx->pc += gen_slx38_len;
+ return pc;
+ }
+void *compile_slx39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx39, gen_slx39_len);
+ ctx->pc += gen_slx39_len;
+ return pc;
+ }
+void *compile_slx4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx4, gen_slx4_len);
+ ctx->pc += gen_slx4_len;
+ return pc;
+ }
+void *compile_slx40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx40, gen_slx40_len);
+ ctx->pc += gen_slx40_len;
+ return pc;
+ }
+void *compile_slx41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx41, gen_slx41_len);
+ ctx->pc += gen_slx41_len;
+ return pc;
+ }
+void *compile_slx42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx42, gen_slx42_len);
+ ctx->pc += gen_slx42_len;
+ return pc;
+ }
+void *compile_slx43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx43, gen_slx43_len);
+ ctx->pc += gen_slx43_len;
+ return pc;
+ }
+void *compile_slx44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx44, gen_slx44_len);
+ ctx->pc += gen_slx44_len;
+ return pc;
+ }
+void *compile_slx45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx45, gen_slx45_len);
+ ctx->pc += gen_slx45_len;
+ return pc;
+ }
+void *compile_slx46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx46, gen_slx46_len);
+ ctx->pc += gen_slx46_len;
+ return pc;
+ }
+void *compile_slx47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx47, gen_slx47_len);
+ ctx->pc += gen_slx47_len;
+ return pc;
+ }
+void *compile_slx48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx48, gen_slx48_len);
+ ctx->pc += gen_slx48_len;
+ return pc;
+ }
+void *compile_slx49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx49, gen_slx49_len);
+ ctx->pc += gen_slx49_len;
+ return pc;
+ }
+void *compile_slx5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx5, gen_slx5_len);
+ ctx->pc += gen_slx5_len;
+ return pc;
+ }
+void *compile_slx50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx50, gen_slx50_len);
+ ctx->pc += gen_slx50_len;
+ return pc;
+ }
+void *compile_slx51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx51, gen_slx51_len);
+ ctx->pc += gen_slx51_len;
+ return pc;
+ }
+void *compile_slx52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx52, gen_slx52_len);
+ ctx->pc += gen_slx52_len;
+ return pc;
+ }
+void *compile_slx53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx53, gen_slx53_len);
+ ctx->pc += gen_slx53_len;
+ return pc;
+ }
+void *compile_slx54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx54, gen_slx54_len);
+ ctx->pc += gen_slx54_len;
+ return pc;
+ }
+void *compile_slx55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx55, gen_slx55_len);
+ ctx->pc += gen_slx55_len;
+ return pc;
+ }
+void *compile_slx56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx56, gen_slx56_len);
+ ctx->pc += gen_slx56_len;
+ return pc;
+ }
+void *compile_slx57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx57, gen_slx57_len);
+ ctx->pc += gen_slx57_len;
+ return pc;
+ }
+void *compile_slx58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx58, gen_slx58_len);
+ ctx->pc += gen_slx58_len;
+ return pc;
+ }
+void *compile_slx59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx59, gen_slx59_len);
+ ctx->pc += gen_slx59_len;
+ return pc;
+ }
+void *compile_slx6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx6, gen_slx6_len);
+ ctx->pc += gen_slx6_len;
+ return pc;
+ }
+void *compile_slx60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx60, gen_slx60_len);
+ ctx->pc += gen_slx60_len;
+ return pc;
+ }
+void *compile_slx61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx61, gen_slx61_len);
+ ctx->pc += gen_slx61_len;
+ return pc;
+ }
+void *compile_slx62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx62, gen_slx62_len);
+ ctx->pc += gen_slx62_len;
+ return pc;
+ }
+void *compile_slx63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx63, gen_slx63_len);
+ ctx->pc += gen_slx63_len;
+ return pc;
+ }
+void *compile_slx7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx7, gen_slx7_len);
+ ctx->pc += gen_slx7_len;
+ return pc;
+ }
+void *compile_slx8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx8, gen_slx8_len);
+ ctx->pc += gen_slx8_len;
+ return pc;
+ }
+void *compile_slx9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_slx9, gen_slx9_len);
+ ctx->pc += gen_slx9_len;
+ return pc;
+ }
+void *compile_sly0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly0, gen_sly0_len);
+ ctx->pc += gen_sly0_len;
+ return pc;
+ }
+void *compile_sly1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly1, gen_sly1_len);
+ ctx->pc += gen_sly1_len;
+ return pc;
+ }
+void *compile_sly10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly10, gen_sly10_len);
+ ctx->pc += gen_sly10_len;
+ return pc;
+ }
+void *compile_sly11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly11, gen_sly11_len);
+ ctx->pc += gen_sly11_len;
+ return pc;
+ }
+void *compile_sly12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly12, gen_sly12_len);
+ ctx->pc += gen_sly12_len;
+ return pc;
+ }
+void *compile_sly13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly13, gen_sly13_len);
+ ctx->pc += gen_sly13_len;
+ return pc;
+ }
+void *compile_sly14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly14, gen_sly14_len);
+ ctx->pc += gen_sly14_len;
+ return pc;
+ }
+void *compile_sly15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly15, gen_sly15_len);
+ ctx->pc += gen_sly15_len;
+ return pc;
+ }
+void *compile_sly16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly16, gen_sly16_len);
+ ctx->pc += gen_sly16_len;
+ return pc;
+ }
+void *compile_sly17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly17, gen_sly17_len);
+ ctx->pc += gen_sly17_len;
+ return pc;
+ }
+void *compile_sly18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly18, gen_sly18_len);
+ ctx->pc += gen_sly18_len;
+ return pc;
+ }
+void *compile_sly19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly19, gen_sly19_len);
+ ctx->pc += gen_sly19_len;
+ return pc;
+ }
+void *compile_sly2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly2, gen_sly2_len);
+ ctx->pc += gen_sly2_len;
+ return pc;
+ }
+void *compile_sly20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly20, gen_sly20_len);
+ ctx->pc += gen_sly20_len;
+ return pc;
+ }
+void *compile_sly21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly21, gen_sly21_len);
+ ctx->pc += gen_sly21_len;
+ return pc;
+ }
+void *compile_sly22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly22, gen_sly22_len);
+ ctx->pc += gen_sly22_len;
+ return pc;
+ }
+void *compile_sly23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly23, gen_sly23_len);
+ ctx->pc += gen_sly23_len;
+ return pc;
+ }
+void *compile_sly24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly24, gen_sly24_len);
+ ctx->pc += gen_sly24_len;
+ return pc;
+ }
+void *compile_sly25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly25, gen_sly25_len);
+ ctx->pc += gen_sly25_len;
+ return pc;
+ }
+void *compile_sly26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly26, gen_sly26_len);
+ ctx->pc += gen_sly26_len;
+ return pc;
+ }
+void *compile_sly27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly27, gen_sly27_len);
+ ctx->pc += gen_sly27_len;
+ return pc;
+ }
+void *compile_sly28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly28, gen_sly28_len);
+ ctx->pc += gen_sly28_len;
+ return pc;
+ }
+void *compile_sly29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly29, gen_sly29_len);
+ ctx->pc += gen_sly29_len;
+ return pc;
+ }
+void *compile_sly3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly3, gen_sly3_len);
+ ctx->pc += gen_sly3_len;
+ return pc;
+ }
+void *compile_sly30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly30, gen_sly30_len);
+ ctx->pc += gen_sly30_len;
+ return pc;
+ }
+void *compile_sly31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly31, gen_sly31_len);
+ ctx->pc += gen_sly31_len;
+ return pc;
+ }
+void *compile_sly32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly32, gen_sly32_len);
+ ctx->pc += gen_sly32_len;
+ return pc;
+ }
+void *compile_sly33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly33, gen_sly33_len);
+ ctx->pc += gen_sly33_len;
+ return pc;
+ }
+void *compile_sly34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly34, gen_sly34_len);
+ ctx->pc += gen_sly34_len;
+ return pc;
+ }
+void *compile_sly35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly35, gen_sly35_len);
+ ctx->pc += gen_sly35_len;
+ return pc;
+ }
+void *compile_sly36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly36, gen_sly36_len);
+ ctx->pc += gen_sly36_len;
+ return pc;
+ }
+void *compile_sly37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly37, gen_sly37_len);
+ ctx->pc += gen_sly37_len;
+ return pc;
+ }
+void *compile_sly38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly38, gen_sly38_len);
+ ctx->pc += gen_sly38_len;
+ return pc;
+ }
+void *compile_sly39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly39, gen_sly39_len);
+ ctx->pc += gen_sly39_len;
+ return pc;
+ }
+void *compile_sly4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly4, gen_sly4_len);
+ ctx->pc += gen_sly4_len;
+ return pc;
+ }
+void *compile_sly40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly40, gen_sly40_len);
+ ctx->pc += gen_sly40_len;
+ return pc;
+ }
+void *compile_sly41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly41, gen_sly41_len);
+ ctx->pc += gen_sly41_len;
+ return pc;
+ }
+void *compile_sly42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly42, gen_sly42_len);
+ ctx->pc += gen_sly42_len;
+ return pc;
+ }
+void *compile_sly43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly43, gen_sly43_len);
+ ctx->pc += gen_sly43_len;
+ return pc;
+ }
+void *compile_sly44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly44, gen_sly44_len);
+ ctx->pc += gen_sly44_len;
+ return pc;
+ }
+void *compile_sly45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly45, gen_sly45_len);
+ ctx->pc += gen_sly45_len;
+ return pc;
+ }
+void *compile_sly46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly46, gen_sly46_len);
+ ctx->pc += gen_sly46_len;
+ return pc;
+ }
+void *compile_sly47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly47, gen_sly47_len);
+ ctx->pc += gen_sly47_len;
+ return pc;
+ }
+void *compile_sly48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly48, gen_sly48_len);
+ ctx->pc += gen_sly48_len;
+ return pc;
+ }
+void *compile_sly49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly49, gen_sly49_len);
+ ctx->pc += gen_sly49_len;
+ return pc;
+ }
+void *compile_sly5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly5, gen_sly5_len);
+ ctx->pc += gen_sly5_len;
+ return pc;
+ }
+void *compile_sly50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly50, gen_sly50_len);
+ ctx->pc += gen_sly50_len;
+ return pc;
+ }
+void *compile_sly51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly51, gen_sly51_len);
+ ctx->pc += gen_sly51_len;
+ return pc;
+ }
+void *compile_sly52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly52, gen_sly52_len);
+ ctx->pc += gen_sly52_len;
+ return pc;
+ }
+void *compile_sly53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly53, gen_sly53_len);
+ ctx->pc += gen_sly53_len;
+ return pc;
+ }
+void *compile_sly54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly54, gen_sly54_len);
+ ctx->pc += gen_sly54_len;
+ return pc;
+ }
+void *compile_sly55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly55, gen_sly55_len);
+ ctx->pc += gen_sly55_len;
+ return pc;
+ }
+void *compile_sly56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly56, gen_sly56_len);
+ ctx->pc += gen_sly56_len;
+ return pc;
+ }
+void *compile_sly57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly57, gen_sly57_len);
+ ctx->pc += gen_sly57_len;
+ return pc;
+ }
+void *compile_sly58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly58, gen_sly58_len);
+ ctx->pc += gen_sly58_len;
+ return pc;
+ }
+void *compile_sly59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly59, gen_sly59_len);
+ ctx->pc += gen_sly59_len;
+ return pc;
+ }
+void *compile_sly6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly6, gen_sly6_len);
+ ctx->pc += gen_sly6_len;
+ return pc;
+ }
+void *compile_sly60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly60, gen_sly60_len);
+ ctx->pc += gen_sly60_len;
+ return pc;
+ }
+void *compile_sly61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly61, gen_sly61_len);
+ ctx->pc += gen_sly61_len;
+ return pc;
+ }
+void *compile_sly62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly62, gen_sly62_len);
+ ctx->pc += gen_sly62_len;
+ return pc;
+ }
+void *compile_sly63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly63, gen_sly63_len);
+ ctx->pc += gen_sly63_len;
+ return pc;
+ }
+void *compile_sly7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly7, gen_sly7_len);
+ ctx->pc += gen_sly7_len;
+ return pc;
+ }
+void *compile_sly8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly8, gen_sly8_len);
+ ctx->pc += gen_sly8_len;
+ return pc;
+ }
+void *compile_sly9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sly9, gen_sly9_len);
+ ctx->pc += gen_sly9_len;
+ return pc;
+ }
+void *compile_sra0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra0, gen_sra0_len);
+ ctx->pc += gen_sra0_len;
+ return pc;
+ }
+void *compile_sra1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra1, gen_sra1_len);
+ ctx->pc += gen_sra1_len;
+ return pc;
+ }
+void *compile_sra10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra10, gen_sra10_len);
+ ctx->pc += gen_sra10_len;
+ return pc;
+ }
+void *compile_sra11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra11, gen_sra11_len);
+ ctx->pc += gen_sra11_len;
+ return pc;
+ }
+void *compile_sra12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra12, gen_sra12_len);
+ ctx->pc += gen_sra12_len;
+ return pc;
+ }
+void *compile_sra13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra13, gen_sra13_len);
+ ctx->pc += gen_sra13_len;
+ return pc;
+ }
+void *compile_sra14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra14, gen_sra14_len);
+ ctx->pc += gen_sra14_len;
+ return pc;
+ }
+void *compile_sra15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra15, gen_sra15_len);
+ ctx->pc += gen_sra15_len;
+ return pc;
+ }
+void *compile_sra16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra16, gen_sra16_len);
+ ctx->pc += gen_sra16_len;
+ return pc;
+ }
+void *compile_sra17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra17, gen_sra17_len);
+ ctx->pc += gen_sra17_len;
+ return pc;
+ }
+void *compile_sra18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra18, gen_sra18_len);
+ ctx->pc += gen_sra18_len;
+ return pc;
+ }
+void *compile_sra19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra19, gen_sra19_len);
+ ctx->pc += gen_sra19_len;
+ return pc;
+ }
+void *compile_sra2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra2, gen_sra2_len);
+ ctx->pc += gen_sra2_len;
+ return pc;
+ }
+void *compile_sra20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra20, gen_sra20_len);
+ ctx->pc += gen_sra20_len;
+ return pc;
+ }
+void *compile_sra21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra21, gen_sra21_len);
+ ctx->pc += gen_sra21_len;
+ return pc;
+ }
+void *compile_sra22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra22, gen_sra22_len);
+ ctx->pc += gen_sra22_len;
+ return pc;
+ }
+void *compile_sra23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra23, gen_sra23_len);
+ ctx->pc += gen_sra23_len;
+ return pc;
+ }
+void *compile_sra24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra24, gen_sra24_len);
+ ctx->pc += gen_sra24_len;
+ return pc;
+ }
+void *compile_sra25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra25, gen_sra25_len);
+ ctx->pc += gen_sra25_len;
+ return pc;
+ }
+void *compile_sra26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra26, gen_sra26_len);
+ ctx->pc += gen_sra26_len;
+ return pc;
+ }
+void *compile_sra27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra27, gen_sra27_len);
+ ctx->pc += gen_sra27_len;
+ return pc;
+ }
+void *compile_sra28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra28, gen_sra28_len);
+ ctx->pc += gen_sra28_len;
+ return pc;
+ }
+void *compile_sra29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra29, gen_sra29_len);
+ ctx->pc += gen_sra29_len;
+ return pc;
+ }
+void *compile_sra3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra3, gen_sra3_len);
+ ctx->pc += gen_sra3_len;
+ return pc;
+ }
+void *compile_sra30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra30, gen_sra30_len);
+ ctx->pc += gen_sra30_len;
+ return pc;
+ }
+void *compile_sra31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra31, gen_sra31_len);
+ ctx->pc += gen_sra31_len;
+ return pc;
+ }
+void *compile_sra32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra32, gen_sra32_len);
+ ctx->pc += gen_sra32_len;
+ return pc;
+ }
+void *compile_sra33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra33, gen_sra33_len);
+ ctx->pc += gen_sra33_len;
+ return pc;
+ }
+void *compile_sra34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra34, gen_sra34_len);
+ ctx->pc += gen_sra34_len;
+ return pc;
+ }
+void *compile_sra35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra35, gen_sra35_len);
+ ctx->pc += gen_sra35_len;
+ return pc;
+ }
+void *compile_sra36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra36, gen_sra36_len);
+ ctx->pc += gen_sra36_len;
+ return pc;
+ }
+void *compile_sra37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra37, gen_sra37_len);
+ ctx->pc += gen_sra37_len;
+ return pc;
+ }
+void *compile_sra38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra38, gen_sra38_len);
+ ctx->pc += gen_sra38_len;
+ return pc;
+ }
+void *compile_sra39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra39, gen_sra39_len);
+ ctx->pc += gen_sra39_len;
+ return pc;
+ }
+void *compile_sra4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra4, gen_sra4_len);
+ ctx->pc += gen_sra4_len;
+ return pc;
+ }
+void *compile_sra40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra40, gen_sra40_len);
+ ctx->pc += gen_sra40_len;
+ return pc;
+ }
+void *compile_sra41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra41, gen_sra41_len);
+ ctx->pc += gen_sra41_len;
+ return pc;
+ }
+void *compile_sra42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra42, gen_sra42_len);
+ ctx->pc += gen_sra42_len;
+ return pc;
+ }
+void *compile_sra43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra43, gen_sra43_len);
+ ctx->pc += gen_sra43_len;
+ return pc;
+ }
+void *compile_sra44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra44, gen_sra44_len);
+ ctx->pc += gen_sra44_len;
+ return pc;
+ }
+void *compile_sra45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra45, gen_sra45_len);
+ ctx->pc += gen_sra45_len;
+ return pc;
+ }
+void *compile_sra46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra46, gen_sra46_len);
+ ctx->pc += gen_sra46_len;
+ return pc;
+ }
+void *compile_sra47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra47, gen_sra47_len);
+ ctx->pc += gen_sra47_len;
+ return pc;
+ }
+void *compile_sra48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra48, gen_sra48_len);
+ ctx->pc += gen_sra48_len;
+ return pc;
+ }
+void *compile_sra49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra49, gen_sra49_len);
+ ctx->pc += gen_sra49_len;
+ return pc;
+ }
+void *compile_sra5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra5, gen_sra5_len);
+ ctx->pc += gen_sra5_len;
+ return pc;
+ }
+void *compile_sra50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra50, gen_sra50_len);
+ ctx->pc += gen_sra50_len;
+ return pc;
+ }
+void *compile_sra51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra51, gen_sra51_len);
+ ctx->pc += gen_sra51_len;
+ return pc;
+ }
+void *compile_sra52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra52, gen_sra52_len);
+ ctx->pc += gen_sra52_len;
+ return pc;
+ }
+void *compile_sra53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra53, gen_sra53_len);
+ ctx->pc += gen_sra53_len;
+ return pc;
+ }
+void *compile_sra54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra54, gen_sra54_len);
+ ctx->pc += gen_sra54_len;
+ return pc;
+ }
+void *compile_sra55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra55, gen_sra55_len);
+ ctx->pc += gen_sra55_len;
+ return pc;
+ }
+void *compile_sra56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra56, gen_sra56_len);
+ ctx->pc += gen_sra56_len;
+ return pc;
+ }
+void *compile_sra57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra57, gen_sra57_len);
+ ctx->pc += gen_sra57_len;
+ return pc;
+ }
+void *compile_sra58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra58, gen_sra58_len);
+ ctx->pc += gen_sra58_len;
+ return pc;
+ }
+void *compile_sra59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra59, gen_sra59_len);
+ ctx->pc += gen_sra59_len;
+ return pc;
+ }
+void *compile_sra6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra6, gen_sra6_len);
+ ctx->pc += gen_sra6_len;
+ return pc;
+ }
+void *compile_sra60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra60, gen_sra60_len);
+ ctx->pc += gen_sra60_len;
+ return pc;
+ }
+void *compile_sra61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra61, gen_sra61_len);
+ ctx->pc += gen_sra61_len;
+ return pc;
+ }
+void *compile_sra62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra62, gen_sra62_len);
+ ctx->pc += gen_sra62_len;
+ return pc;
+ }
+void *compile_sra63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra63, gen_sra63_len);
+ ctx->pc += gen_sra63_len;
+ return pc;
+ }
+void *compile_sra7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra7, gen_sra7_len);
+ ctx->pc += gen_sra7_len;
+ return pc;
+ }
+void *compile_sra8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra8, gen_sra8_len);
+ ctx->pc += gen_sra8_len;
+ return pc;
+ }
+void *compile_sra9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sra9, gen_sra9_len);
+ ctx->pc += gen_sra9_len;
+ return pc;
+ }
+void *compile_sro0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro0, gen_sro0_len);
+ ctx->pc += gen_sro0_len;
+ return pc;
+ }
+void *compile_sro1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro1, gen_sro1_len);
+ ctx->pc += gen_sro1_len;
+ return pc;
+ }
+void *compile_sro10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro10, gen_sro10_len);
+ ctx->pc += gen_sro10_len;
+ return pc;
+ }
+void *compile_sro11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro11, gen_sro11_len);
+ ctx->pc += gen_sro11_len;
+ return pc;
+ }
+void *compile_sro12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro12, gen_sro12_len);
+ ctx->pc += gen_sro12_len;
+ return pc;
+ }
+void *compile_sro13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro13, gen_sro13_len);
+ ctx->pc += gen_sro13_len;
+ return pc;
+ }
+void *compile_sro14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro14, gen_sro14_len);
+ ctx->pc += gen_sro14_len;
+ return pc;
+ }
+void *compile_sro15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro15, gen_sro15_len);
+ ctx->pc += gen_sro15_len;
+ return pc;
+ }
+void *compile_sro16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro16, gen_sro16_len);
+ ctx->pc += gen_sro16_len;
+ return pc;
+ }
+void *compile_sro17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro17, gen_sro17_len);
+ ctx->pc += gen_sro17_len;
+ return pc;
+ }
+void *compile_sro18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro18, gen_sro18_len);
+ ctx->pc += gen_sro18_len;
+ return pc;
+ }
+void *compile_sro19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro19, gen_sro19_len);
+ ctx->pc += gen_sro19_len;
+ return pc;
+ }
+void *compile_sro2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro2, gen_sro2_len);
+ ctx->pc += gen_sro2_len;
+ return pc;
+ }
+void *compile_sro20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro20, gen_sro20_len);
+ ctx->pc += gen_sro20_len;
+ return pc;
+ }
+void *compile_sro21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro21, gen_sro21_len);
+ ctx->pc += gen_sro21_len;
+ return pc;
+ }
+void *compile_sro22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro22, gen_sro22_len);
+ ctx->pc += gen_sro22_len;
+ return pc;
+ }
+void *compile_sro23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro23, gen_sro23_len);
+ ctx->pc += gen_sro23_len;
+ return pc;
+ }
+void *compile_sro24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro24, gen_sro24_len);
+ ctx->pc += gen_sro24_len;
+ return pc;
+ }
+void *compile_sro25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro25, gen_sro25_len);
+ ctx->pc += gen_sro25_len;
+ return pc;
+ }
+void *compile_sro26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro26, gen_sro26_len);
+ ctx->pc += gen_sro26_len;
+ return pc;
+ }
+void *compile_sro27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro27, gen_sro27_len);
+ ctx->pc += gen_sro27_len;
+ return pc;
+ }
+void *compile_sro28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro28, gen_sro28_len);
+ ctx->pc += gen_sro28_len;
+ return pc;
+ }
+void *compile_sro29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro29, gen_sro29_len);
+ ctx->pc += gen_sro29_len;
+ return pc;
+ }
+void *compile_sro3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro3, gen_sro3_len);
+ ctx->pc += gen_sro3_len;
+ return pc;
+ }
+void *compile_sro30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro30, gen_sro30_len);
+ ctx->pc += gen_sro30_len;
+ return pc;
+ }
+void *compile_sro31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro31, gen_sro31_len);
+ ctx->pc += gen_sro31_len;
+ return pc;
+ }
+void *compile_sro32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro32, gen_sro32_len);
+ ctx->pc += gen_sro32_len;
+ return pc;
+ }
+void *compile_sro33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro33, gen_sro33_len);
+ ctx->pc += gen_sro33_len;
+ return pc;
+ }
+void *compile_sro34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro34, gen_sro34_len);
+ ctx->pc += gen_sro34_len;
+ return pc;
+ }
+void *compile_sro35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro35, gen_sro35_len);
+ ctx->pc += gen_sro35_len;
+ return pc;
+ }
+void *compile_sro36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro36, gen_sro36_len);
+ ctx->pc += gen_sro36_len;
+ return pc;
+ }
+void *compile_sro37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro37, gen_sro37_len);
+ ctx->pc += gen_sro37_len;
+ return pc;
+ }
+void *compile_sro38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro38, gen_sro38_len);
+ ctx->pc += gen_sro38_len;
+ return pc;
+ }
+void *compile_sro39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro39, gen_sro39_len);
+ ctx->pc += gen_sro39_len;
+ return pc;
+ }
+void *compile_sro4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro4, gen_sro4_len);
+ ctx->pc += gen_sro4_len;
+ return pc;
+ }
+void *compile_sro40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro40, gen_sro40_len);
+ ctx->pc += gen_sro40_len;
+ return pc;
+ }
+void *compile_sro41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro41, gen_sro41_len);
+ ctx->pc += gen_sro41_len;
+ return pc;
+ }
+void *compile_sro42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro42, gen_sro42_len);
+ ctx->pc += gen_sro42_len;
+ return pc;
+ }
+void *compile_sro43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro43, gen_sro43_len);
+ ctx->pc += gen_sro43_len;
+ return pc;
+ }
+void *compile_sro44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro44, gen_sro44_len);
+ ctx->pc += gen_sro44_len;
+ return pc;
+ }
+void *compile_sro45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro45, gen_sro45_len);
+ ctx->pc += gen_sro45_len;
+ return pc;
+ }
+void *compile_sro46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro46, gen_sro46_len);
+ ctx->pc += gen_sro46_len;
+ return pc;
+ }
+void *compile_sro47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro47, gen_sro47_len);
+ ctx->pc += gen_sro47_len;
+ return pc;
+ }
+void *compile_sro48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro48, gen_sro48_len);
+ ctx->pc += gen_sro48_len;
+ return pc;
+ }
+void *compile_sro49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro49, gen_sro49_len);
+ ctx->pc += gen_sro49_len;
+ return pc;
+ }
+void *compile_sro5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro5, gen_sro5_len);
+ ctx->pc += gen_sro5_len;
+ return pc;
+ }
+void *compile_sro50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro50, gen_sro50_len);
+ ctx->pc += gen_sro50_len;
+ return pc;
+ }
+void *compile_sro51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro51, gen_sro51_len);
+ ctx->pc += gen_sro51_len;
+ return pc;
+ }
+void *compile_sro52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro52, gen_sro52_len);
+ ctx->pc += gen_sro52_len;
+ return pc;
+ }
+void *compile_sro53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro53, gen_sro53_len);
+ ctx->pc += gen_sro53_len;
+ return pc;
+ }
+void *compile_sro54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro54, gen_sro54_len);
+ ctx->pc += gen_sro54_len;
+ return pc;
+ }
+void *compile_sro55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro55, gen_sro55_len);
+ ctx->pc += gen_sro55_len;
+ return pc;
+ }
+void *compile_sro56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro56, gen_sro56_len);
+ ctx->pc += gen_sro56_len;
+ return pc;
+ }
+void *compile_sro57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro57, gen_sro57_len);
+ ctx->pc += gen_sro57_len;
+ return pc;
+ }
+void *compile_sro58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro58, gen_sro58_len);
+ ctx->pc += gen_sro58_len;
+ return pc;
+ }
+void *compile_sro59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro59, gen_sro59_len);
+ ctx->pc += gen_sro59_len;
+ return pc;
+ }
+void *compile_sro6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro6, gen_sro6_len);
+ ctx->pc += gen_sro6_len;
+ return pc;
+ }
+void *compile_sro60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro60, gen_sro60_len);
+ ctx->pc += gen_sro60_len;
+ return pc;
+ }
+void *compile_sro61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro61, gen_sro61_len);
+ ctx->pc += gen_sro61_len;
+ return pc;
+ }
+void *compile_sro62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro62, gen_sro62_len);
+ ctx->pc += gen_sro62_len;
+ return pc;
+ }
+void *compile_sro63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro63, gen_sro63_len);
+ ctx->pc += gen_sro63_len;
+ return pc;
+ }
+void *compile_sro7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro7, gen_sro7_len);
+ ctx->pc += gen_sro7_len;
+ return pc;
+ }
+void *compile_sro8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro8, gen_sro8_len);
+ ctx->pc += gen_sro8_len;
+ return pc;
+ }
+void *compile_sro9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sro9, gen_sro9_len);
+ ctx->pc += gen_sro9_len;
+ return pc;
+ }
+void *compile_srx0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx0, gen_srx0_len);
+ ctx->pc += gen_srx0_len;
+ return pc;
+ }
+void *compile_srx1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx1, gen_srx1_len);
+ ctx->pc += gen_srx1_len;
+ return pc;
+ }
+void *compile_srx10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx10, gen_srx10_len);
+ ctx->pc += gen_srx10_len;
+ return pc;
+ }
+void *compile_srx11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx11, gen_srx11_len);
+ ctx->pc += gen_srx11_len;
+ return pc;
+ }
+void *compile_srx12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx12, gen_srx12_len);
+ ctx->pc += gen_srx12_len;
+ return pc;
+ }
+void *compile_srx13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx13, gen_srx13_len);
+ ctx->pc += gen_srx13_len;
+ return pc;
+ }
+void *compile_srx14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx14, gen_srx14_len);
+ ctx->pc += gen_srx14_len;
+ return pc;
+ }
+void *compile_srx15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx15, gen_srx15_len);
+ ctx->pc += gen_srx15_len;
+ return pc;
+ }
+void *compile_srx16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx16, gen_srx16_len);
+ ctx->pc += gen_srx16_len;
+ return pc;
+ }
+void *compile_srx17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx17, gen_srx17_len);
+ ctx->pc += gen_srx17_len;
+ return pc;
+ }
+void *compile_srx18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx18, gen_srx18_len);
+ ctx->pc += gen_srx18_len;
+ return pc;
+ }
+void *compile_srx19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx19, gen_srx19_len);
+ ctx->pc += gen_srx19_len;
+ return pc;
+ }
+void *compile_srx2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx2, gen_srx2_len);
+ ctx->pc += gen_srx2_len;
+ return pc;
+ }
+void *compile_srx20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx20, gen_srx20_len);
+ ctx->pc += gen_srx20_len;
+ return pc;
+ }
+void *compile_srx21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx21, gen_srx21_len);
+ ctx->pc += gen_srx21_len;
+ return pc;
+ }
+void *compile_srx22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx22, gen_srx22_len);
+ ctx->pc += gen_srx22_len;
+ return pc;
+ }
+void *compile_srx23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx23, gen_srx23_len);
+ ctx->pc += gen_srx23_len;
+ return pc;
+ }
+void *compile_srx24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx24, gen_srx24_len);
+ ctx->pc += gen_srx24_len;
+ return pc;
+ }
+void *compile_srx25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx25, gen_srx25_len);
+ ctx->pc += gen_srx25_len;
+ return pc;
+ }
+void *compile_srx26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx26, gen_srx26_len);
+ ctx->pc += gen_srx26_len;
+ return pc;
+ }
+void *compile_srx27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx27, gen_srx27_len);
+ ctx->pc += gen_srx27_len;
+ return pc;
+ }
+void *compile_srx28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx28, gen_srx28_len);
+ ctx->pc += gen_srx28_len;
+ return pc;
+ }
+void *compile_srx29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx29, gen_srx29_len);
+ ctx->pc += gen_srx29_len;
+ return pc;
+ }
+void *compile_srx3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx3, gen_srx3_len);
+ ctx->pc += gen_srx3_len;
+ return pc;
+ }
+void *compile_srx30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx30, gen_srx30_len);
+ ctx->pc += gen_srx30_len;
+ return pc;
+ }
+void *compile_srx31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx31, gen_srx31_len);
+ ctx->pc += gen_srx31_len;
+ return pc;
+ }
+void *compile_srx32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx32, gen_srx32_len);
+ ctx->pc += gen_srx32_len;
+ return pc;
+ }
+void *compile_srx33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx33, gen_srx33_len);
+ ctx->pc += gen_srx33_len;
+ return pc;
+ }
+void *compile_srx34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx34, gen_srx34_len);
+ ctx->pc += gen_srx34_len;
+ return pc;
+ }
+void *compile_srx35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx35, gen_srx35_len);
+ ctx->pc += gen_srx35_len;
+ return pc;
+ }
+void *compile_srx36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx36, gen_srx36_len);
+ ctx->pc += gen_srx36_len;
+ return pc;
+ }
+void *compile_srx37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx37, gen_srx37_len);
+ ctx->pc += gen_srx37_len;
+ return pc;
+ }
+void *compile_srx38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx38, gen_srx38_len);
+ ctx->pc += gen_srx38_len;
+ return pc;
+ }
+void *compile_srx39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx39, gen_srx39_len);
+ ctx->pc += gen_srx39_len;
+ return pc;
+ }
+void *compile_srx4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx4, gen_srx4_len);
+ ctx->pc += gen_srx4_len;
+ return pc;
+ }
+void *compile_srx40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx40, gen_srx40_len);
+ ctx->pc += gen_srx40_len;
+ return pc;
+ }
+void *compile_srx41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx41, gen_srx41_len);
+ ctx->pc += gen_srx41_len;
+ return pc;
+ }
+void *compile_srx42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx42, gen_srx42_len);
+ ctx->pc += gen_srx42_len;
+ return pc;
+ }
+void *compile_srx43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx43, gen_srx43_len);
+ ctx->pc += gen_srx43_len;
+ return pc;
+ }
+void *compile_srx44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx44, gen_srx44_len);
+ ctx->pc += gen_srx44_len;
+ return pc;
+ }
+void *compile_srx45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx45, gen_srx45_len);
+ ctx->pc += gen_srx45_len;
+ return pc;
+ }
+void *compile_srx46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx46, gen_srx46_len);
+ ctx->pc += gen_srx46_len;
+ return pc;
+ }
+void *compile_srx47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx47, gen_srx47_len);
+ ctx->pc += gen_srx47_len;
+ return pc;
+ }
+void *compile_srx48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx48, gen_srx48_len);
+ ctx->pc += gen_srx48_len;
+ return pc;
+ }
+void *compile_srx49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx49, gen_srx49_len);
+ ctx->pc += gen_srx49_len;
+ return pc;
+ }
+void *compile_srx5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx5, gen_srx5_len);
+ ctx->pc += gen_srx5_len;
+ return pc;
+ }
+void *compile_srx50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx50, gen_srx50_len);
+ ctx->pc += gen_srx50_len;
+ return pc;
+ }
+void *compile_srx51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx51, gen_srx51_len);
+ ctx->pc += gen_srx51_len;
+ return pc;
+ }
+void *compile_srx52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx52, gen_srx52_len);
+ ctx->pc += gen_srx52_len;
+ return pc;
+ }
+void *compile_srx53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx53, gen_srx53_len);
+ ctx->pc += gen_srx53_len;
+ return pc;
+ }
+void *compile_srx54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx54, gen_srx54_len);
+ ctx->pc += gen_srx54_len;
+ return pc;
+ }
+void *compile_srx55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx55, gen_srx55_len);
+ ctx->pc += gen_srx55_len;
+ return pc;
+ }
+void *compile_srx56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx56, gen_srx56_len);
+ ctx->pc += gen_srx56_len;
+ return pc;
+ }
+void *compile_srx57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx57, gen_srx57_len);
+ ctx->pc += gen_srx57_len;
+ return pc;
+ }
+void *compile_srx58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx58, gen_srx58_len);
+ ctx->pc += gen_srx58_len;
+ return pc;
+ }
+void *compile_srx59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx59, gen_srx59_len);
+ ctx->pc += gen_srx59_len;
+ return pc;
+ }
+void *compile_srx6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx6, gen_srx6_len);
+ ctx->pc += gen_srx6_len;
+ return pc;
+ }
+void *compile_srx60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx60, gen_srx60_len);
+ ctx->pc += gen_srx60_len;
+ return pc;
+ }
+void *compile_srx61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx61, gen_srx61_len);
+ ctx->pc += gen_srx61_len;
+ return pc;
+ }
+void *compile_srx62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx62, gen_srx62_len);
+ ctx->pc += gen_srx62_len;
+ return pc;
+ }
+void *compile_srx63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx63, gen_srx63_len);
+ ctx->pc += gen_srx63_len;
+ return pc;
+ }
+void *compile_srx7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx7, gen_srx7_len);
+ ctx->pc += gen_srx7_len;
+ return pc;
+ }
+void *compile_srx8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx8, gen_srx8_len);
+ ctx->pc += gen_srx8_len;
+ return pc;
+ }
+void *compile_srx9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_srx9, gen_srx9_len);
+ ctx->pc += gen_srx9_len;
+ return pc;
+ }
+void *compile_sry0(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry0, gen_sry0_len);
+ ctx->pc += gen_sry0_len;
+ return pc;
+ }
+void *compile_sry1(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry1, gen_sry1_len);
+ ctx->pc += gen_sry1_len;
+ return pc;
+ }
+void *compile_sry10(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry10, gen_sry10_len);
+ ctx->pc += gen_sry10_len;
+ return pc;
+ }
+void *compile_sry11(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry11, gen_sry11_len);
+ ctx->pc += gen_sry11_len;
+ return pc;
+ }
+void *compile_sry12(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry12, gen_sry12_len);
+ ctx->pc += gen_sry12_len;
+ return pc;
+ }
+void *compile_sry13(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry13, gen_sry13_len);
+ ctx->pc += gen_sry13_len;
+ return pc;
+ }
+void *compile_sry14(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry14, gen_sry14_len);
+ ctx->pc += gen_sry14_len;
+ return pc;
+ }
+void *compile_sry15(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry15, gen_sry15_len);
+ ctx->pc += gen_sry15_len;
+ return pc;
+ }
+void *compile_sry16(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry16, gen_sry16_len);
+ ctx->pc += gen_sry16_len;
+ return pc;
+ }
+void *compile_sry17(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry17, gen_sry17_len);
+ ctx->pc += gen_sry17_len;
+ return pc;
+ }
+void *compile_sry18(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry18, gen_sry18_len);
+ ctx->pc += gen_sry18_len;
+ return pc;
+ }
+void *compile_sry19(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry19, gen_sry19_len);
+ ctx->pc += gen_sry19_len;
+ return pc;
+ }
+void *compile_sry2(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry2, gen_sry2_len);
+ ctx->pc += gen_sry2_len;
+ return pc;
+ }
+void *compile_sry20(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry20, gen_sry20_len);
+ ctx->pc += gen_sry20_len;
+ return pc;
+ }
+void *compile_sry21(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry21, gen_sry21_len);
+ ctx->pc += gen_sry21_len;
+ return pc;
+ }
+void *compile_sry22(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry22, gen_sry22_len);
+ ctx->pc += gen_sry22_len;
+ return pc;
+ }
+void *compile_sry23(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry23, gen_sry23_len);
+ ctx->pc += gen_sry23_len;
+ return pc;
+ }
+void *compile_sry24(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry24, gen_sry24_len);
+ ctx->pc += gen_sry24_len;
+ return pc;
+ }
+void *compile_sry25(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry25, gen_sry25_len);
+ ctx->pc += gen_sry25_len;
+ return pc;
+ }
+void *compile_sry26(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry26, gen_sry26_len);
+ ctx->pc += gen_sry26_len;
+ return pc;
+ }
+void *compile_sry27(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry27, gen_sry27_len);
+ ctx->pc += gen_sry27_len;
+ return pc;
+ }
+void *compile_sry28(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry28, gen_sry28_len);
+ ctx->pc += gen_sry28_len;
+ return pc;
+ }
+void *compile_sry29(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry29, gen_sry29_len);
+ ctx->pc += gen_sry29_len;
+ return pc;
+ }
+void *compile_sry3(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry3, gen_sry3_len);
+ ctx->pc += gen_sry3_len;
+ return pc;
+ }
+void *compile_sry30(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry30, gen_sry30_len);
+ ctx->pc += gen_sry30_len;
+ return pc;
+ }
+void *compile_sry31(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry31, gen_sry31_len);
+ ctx->pc += gen_sry31_len;
+ return pc;
+ }
+void *compile_sry32(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry32, gen_sry32_len);
+ ctx->pc += gen_sry32_len;
+ return pc;
+ }
+void *compile_sry33(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry33, gen_sry33_len);
+ ctx->pc += gen_sry33_len;
+ return pc;
+ }
+void *compile_sry34(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry34, gen_sry34_len);
+ ctx->pc += gen_sry34_len;
+ return pc;
+ }
+void *compile_sry35(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry35, gen_sry35_len);
+ ctx->pc += gen_sry35_len;
+ return pc;
+ }
+void *compile_sry36(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry36, gen_sry36_len);
+ ctx->pc += gen_sry36_len;
+ return pc;
+ }
+void *compile_sry37(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry37, gen_sry37_len);
+ ctx->pc += gen_sry37_len;
+ return pc;
+ }
+void *compile_sry38(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry38, gen_sry38_len);
+ ctx->pc += gen_sry38_len;
+ return pc;
+ }
+void *compile_sry39(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry39, gen_sry39_len);
+ ctx->pc += gen_sry39_len;
+ return pc;
+ }
+void *compile_sry4(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry4, gen_sry4_len);
+ ctx->pc += gen_sry4_len;
+ return pc;
+ }
+void *compile_sry40(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry40, gen_sry40_len);
+ ctx->pc += gen_sry40_len;
+ return pc;
+ }
+void *compile_sry41(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry41, gen_sry41_len);
+ ctx->pc += gen_sry41_len;
+ return pc;
+ }
+void *compile_sry42(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry42, gen_sry42_len);
+ ctx->pc += gen_sry42_len;
+ return pc;
+ }
+void *compile_sry43(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry43, gen_sry43_len);
+ ctx->pc += gen_sry43_len;
+ return pc;
+ }
+void *compile_sry44(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry44, gen_sry44_len);
+ ctx->pc += gen_sry44_len;
+ return pc;
+ }
+void *compile_sry45(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry45, gen_sry45_len);
+ ctx->pc += gen_sry45_len;
+ return pc;
+ }
+void *compile_sry46(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry46, gen_sry46_len);
+ ctx->pc += gen_sry46_len;
+ return pc;
+ }
+void *compile_sry47(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry47, gen_sry47_len);
+ ctx->pc += gen_sry47_len;
+ return pc;
+ }
+void *compile_sry48(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry48, gen_sry48_len);
+ ctx->pc += gen_sry48_len;
+ return pc;
+ }
+void *compile_sry49(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry49, gen_sry49_len);
+ ctx->pc += gen_sry49_len;
+ return pc;
+ }
+void *compile_sry5(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry5, gen_sry5_len);
+ ctx->pc += gen_sry5_len;
+ return pc;
+ }
+void *compile_sry50(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry50, gen_sry50_len);
+ ctx->pc += gen_sry50_len;
+ return pc;
+ }
+void *compile_sry51(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry51, gen_sry51_len);
+ ctx->pc += gen_sry51_len;
+ return pc;
+ }
+void *compile_sry52(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry52, gen_sry52_len);
+ ctx->pc += gen_sry52_len;
+ return pc;
+ }
+void *compile_sry53(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry53, gen_sry53_len);
+ ctx->pc += gen_sry53_len;
+ return pc;
+ }
+void *compile_sry54(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry54, gen_sry54_len);
+ ctx->pc += gen_sry54_len;
+ return pc;
+ }
+void *compile_sry55(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry55, gen_sry55_len);
+ ctx->pc += gen_sry55_len;
+ return pc;
+ }
+void *compile_sry56(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry56, gen_sry56_len);
+ ctx->pc += gen_sry56_len;
+ return pc;
+ }
+void *compile_sry57(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry57, gen_sry57_len);
+ ctx->pc += gen_sry57_len;
+ return pc;
+ }
+void *compile_sry58(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry58, gen_sry58_len);
+ ctx->pc += gen_sry58_len;
+ return pc;
+ }
+void *compile_sry59(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry59, gen_sry59_len);
+ ctx->pc += gen_sry59_len;
+ return pc;
+ }
+void *compile_sry6(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry6, gen_sry6_len);
+ ctx->pc += gen_sry6_len;
+ return pc;
+ }
+void *compile_sry60(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry60, gen_sry60_len);
+ ctx->pc += gen_sry60_len;
+ return pc;
+ }
+void *compile_sry61(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry61, gen_sry61_len);
+ ctx->pc += gen_sry61_len;
+ return pc;
+ }
+void *compile_sry62(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry62, gen_sry62_len);
+ ctx->pc += gen_sry62_len;
+ return pc;
+ }
+void *compile_sry63(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry63, gen_sry63_len);
+ ctx->pc += gen_sry63_len;
+ return pc;
+ }
+void *compile_sry7(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry7, gen_sry7_len);
+ ctx->pc += gen_sry7_len;
+ return pc;
+ }
+void *compile_sry8(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry8, gen_sry8_len);
+ ctx->pc += gen_sry8_len;
+ return pc;
+ }
+void *compile_sry9(ctx_t *ctx)
+ {
+ void *pc = ctx->pc;
+ memcpy(pc, gen_sry9, gen_sry9_len);
+ ctx->pc += gen_sry9_len;
+ return pc;
+ }
+#endif /* COPYJIT_DEFNS_H */
diff --git a/lib/empty.c b/lib/empty.c
new file mode 100644
index 0000000..6cbdee2
--- /dev/null
+++ b/lib/empty.c
@@ -0,0 +1,6 @@
+#include "../ops/common.h"
+
+DEFINE_OP(empty)
+{
+ NEXT_OP(sp, a, x, y, o);
+}
diff --git a/lib/gen/.gitkeep b/lib/gen/.gitkeep
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/lib/gen/.gitkeep
diff --git a/lib/gen_lib b/lib/gen_lib
new file mode 100755
index 0000000..1a86726
--- /dev/null
+++ b/lib/gen_lib
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+echo "#ifndef COPYJIT_OPS_H" > ops.h
+echo "#define COPYJIT_OPS_H" >> ops.h
+
+echo "#ifndef COPYJIT_DECLS_H" > decls.h
+echo "#define COPYJIT_DECLS_H" >> decls.h
+
+echo "#ifndef COPYJIT_DEFNS_H" > defns.h
+echo "#define COPYJIT_DEFNS_H" >> defns.h
+
+for bin in ${1}
+do
+ base=$(basename "${bin}")
+ op=${base%.*}
+ cp "../${bin}" "gen/${op}"
+ xxd -i "gen/${op}" >> ops.h
+ echo "void *compile_${op}(ctx_t *ctx);" >> decls.h
+ echo "void *compile_${op}(ctx_t *ctx)\n" \
+ "{\n" \
+ " void *pc = ctx->pc;\n" \
+ " memcpy(pc, gen_${op}, gen_${op}_len);\n" \
+ " ctx->pc += gen_${op}_len;\n" \
+ " return pc;\n" \
+ "}" >> defns.h
+done
+
+echo "#endif /* COPYJIT_OPS_H */" >> ops.h
+echo "#endif /* COPYJIT_DECLS_H */" >> decls.h
+echo "#endif /* COPYJIT_DEFNS_H */" >> defns.h
diff --git a/lib/ops.h b/lib/ops.h
new file mode 100644
index 0000000..af33f0d
--- /dev/null
+++ b/lib/ops.h
@@ -0,0 +1,5180 @@
+#ifndef COPYJIT_OPS_H
+#define COPYJIT_OPS_H
+unsigned char gen_add[] = {
+ 0x48, 0x8d, 0x34, 0x0a
+};
+unsigned int gen_add_len = 4;
+unsigned char gen_addao[] = {
+ 0x4c, 0x01, 0xc6
+};
+unsigned int gen_addao_len = 3;
+unsigned char gen_addxo[] = {
+ 0x4c, 0x01, 0xc2
+};
+unsigned int gen_addxo_len = 3;
+unsigned char gen_addyo[] = {
+ 0x4c, 0x01, 0xc1
+};
+unsigned int gen_addyo_len = 3;
+unsigned char gen_ban[] = {
+ 0x48, 0x85, 0xf6, 0x48, 0x8d, 0x05, 0x06, 0x00, 0x00, 0x00, 0x49, 0x0f,
+ 0x45, 0xc0, 0xff, 0xe0
+};
+unsigned int gen_ban_len = 16;
+unsigned char gen_baz[] = {
+ 0x48, 0x85, 0xf6, 0x48, 0x8d, 0x05, 0x06, 0x00, 0x00, 0x00, 0x49, 0x0f,
+ 0x44, 0xc0, 0xff, 0xe0
+};
+unsigned int gen_baz_len = 16;
+unsigned char gen_end[] = {
+ 0xc3
+};
+unsigned int gen_end_len = 1;
+unsigned char gen_incy[] = {
+ 0x48, 0x83, 0xc1, 0x01
+};
+unsigned int gen_incy_len = 4;
+unsigned char gen_j[] = {
+ 0x41, 0xff, 0xe0
+};
+unsigned int gen_j_len = 3;
+unsigned char gen_movao[] = {
+ 0x4c, 0x89, 0xc6
+};
+unsigned int gen_movao_len = 3;
+unsigned char gen_movxa[] = {
+ 0x48, 0x89, 0xf2
+};
+unsigned int gen_movxa_len = 3;
+unsigned char gen_movxo[] = {
+ 0x4c, 0x89, 0xc2
+};
+unsigned int gen_movxo_len = 3;
+unsigned char gen_movya[] = {
+ 0x48, 0x89, 0xf1
+};
+unsigned int gen_movya_len = 3;
+unsigned char gen_movyo[] = {
+ 0x4c, 0x89, 0xc1
+};
+unsigned int gen_movyo_len = 3;
+unsigned char gen_sub[] = {
+ 0x48, 0x89, 0xf0, 0x48, 0x29, 0xca, 0x48, 0x89, 0xd6, 0x48, 0x89, 0xc2
+};
+unsigned int gen_sub_len = 12;
+unsigned char gen_subxo[] = {
+ 0x48, 0x89, 0xd6, 0x4c, 0x29, 0xc6
+};
+unsigned int gen_subxo_len = 6;
+unsigned char gen_subyo[] = {
+ 0x48, 0x89, 0xce, 0x4c, 0x29, 0xc6
+};
+unsigned int gen_subyo_len = 6;
+unsigned char gen_addi0[] = {
+};
+unsigned int gen_addi0_len = 0;
+unsigned char gen_addi1[] = {
+ 0x49, 0x83, 0xc0, 0x01
+};
+unsigned int gen_addi1_len = 4;
+unsigned char gen_addi10[] = {
+ 0x49, 0x83, 0xc0, 0x0a
+};
+unsigned int gen_addi10_len = 4;
+unsigned char gen_addi100[] = {
+ 0x49, 0x83, 0xc0, 0x64
+};
+unsigned int gen_addi100_len = 4;
+unsigned char gen_addi101[] = {
+ 0x49, 0x83, 0xc0, 0x65
+};
+unsigned int gen_addi101_len = 4;
+unsigned char gen_addi102[] = {
+ 0x49, 0x83, 0xc0, 0x66
+};
+unsigned int gen_addi102_len = 4;
+unsigned char gen_addi103[] = {
+ 0x49, 0x83, 0xc0, 0x67
+};
+unsigned int gen_addi103_len = 4;
+unsigned char gen_addi104[] = {
+ 0x49, 0x83, 0xc0, 0x68
+};
+unsigned int gen_addi104_len = 4;
+unsigned char gen_addi105[] = {
+ 0x49, 0x83, 0xc0, 0x69
+};
+unsigned int gen_addi105_len = 4;
+unsigned char gen_addi106[] = {
+ 0x49, 0x83, 0xc0, 0x6a
+};
+unsigned int gen_addi106_len = 4;
+unsigned char gen_addi107[] = {
+ 0x49, 0x83, 0xc0, 0x6b
+};
+unsigned int gen_addi107_len = 4;
+unsigned char gen_addi108[] = {
+ 0x49, 0x83, 0xc0, 0x6c
+};
+unsigned int gen_addi108_len = 4;
+unsigned char gen_addi109[] = {
+ 0x49, 0x83, 0xc0, 0x6d
+};
+unsigned int gen_addi109_len = 4;
+unsigned char gen_addi11[] = {
+ 0x49, 0x83, 0xc0, 0x0b
+};
+unsigned int gen_addi11_len = 4;
+unsigned char gen_addi110[] = {
+ 0x49, 0x83, 0xc0, 0x6e
+};
+unsigned int gen_addi110_len = 4;
+unsigned char gen_addi111[] = {
+ 0x49, 0x83, 0xc0, 0x6f
+};
+unsigned int gen_addi111_len = 4;
+unsigned char gen_addi112[] = {
+ 0x49, 0x83, 0xc0, 0x70
+};
+unsigned int gen_addi112_len = 4;
+unsigned char gen_addi113[] = {
+ 0x49, 0x83, 0xc0, 0x71
+};
+unsigned int gen_addi113_len = 4;
+unsigned char gen_addi114[] = {
+ 0x49, 0x83, 0xc0, 0x72
+};
+unsigned int gen_addi114_len = 4;
+unsigned char gen_addi115[] = {
+ 0x49, 0x83, 0xc0, 0x73
+};
+unsigned int gen_addi115_len = 4;
+unsigned char gen_addi116[] = {
+ 0x49, 0x83, 0xc0, 0x74
+};
+unsigned int gen_addi116_len = 4;
+unsigned char gen_addi117[] = {
+ 0x49, 0x83, 0xc0, 0x75
+};
+unsigned int gen_addi117_len = 4;
+unsigned char gen_addi118[] = {
+ 0x49, 0x83, 0xc0, 0x76
+};
+unsigned int gen_addi118_len = 4;
+unsigned char gen_addi119[] = {
+ 0x49, 0x83, 0xc0, 0x77
+};
+unsigned int gen_addi119_len = 4;
+unsigned char gen_addi12[] = {
+ 0x49, 0x83, 0xc0, 0x0c
+};
+unsigned int gen_addi12_len = 4;
+unsigned char gen_addi120[] = {
+ 0x49, 0x83, 0xc0, 0x78
+};
+unsigned int gen_addi120_len = 4;
+unsigned char gen_addi121[] = {
+ 0x49, 0x83, 0xc0, 0x79
+};
+unsigned int gen_addi121_len = 4;
+unsigned char gen_addi122[] = {
+ 0x49, 0x83, 0xc0, 0x7a
+};
+unsigned int gen_addi122_len = 4;
+unsigned char gen_addi123[] = {
+ 0x49, 0x83, 0xc0, 0x7b
+};
+unsigned int gen_addi123_len = 4;
+unsigned char gen_addi124[] = {
+ 0x49, 0x83, 0xc0, 0x7c
+};
+unsigned int gen_addi124_len = 4;
+unsigned char gen_addi125[] = {
+ 0x49, 0x83, 0xc0, 0x7d
+};
+unsigned int gen_addi125_len = 4;
+unsigned char gen_addi126[] = {
+ 0x49, 0x83, 0xc0, 0x7e
+};
+unsigned int gen_addi126_len = 4;
+unsigned char gen_addi127[] = {
+ 0x49, 0x83, 0xc0, 0x7f
+};
+unsigned int gen_addi127_len = 4;
+unsigned char gen_addi128[] = {
+ 0x49, 0x83, 0xe8, 0x80
+};
+unsigned int gen_addi128_len = 4;
+unsigned char gen_addi129[] = {
+ 0x49, 0x81, 0xc0, 0x81, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi129_len = 7;
+unsigned char gen_addi13[] = {
+ 0x49, 0x83, 0xc0, 0x0d
+};
+unsigned int gen_addi13_len = 4;
+unsigned char gen_addi130[] = {
+ 0x49, 0x81, 0xc0, 0x82, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi130_len = 7;
+unsigned char gen_addi131[] = {
+ 0x49, 0x81, 0xc0, 0x83, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi131_len = 7;
+unsigned char gen_addi132[] = {
+ 0x49, 0x81, 0xc0, 0x84, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi132_len = 7;
+unsigned char gen_addi133[] = {
+ 0x49, 0x81, 0xc0, 0x85, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi133_len = 7;
+unsigned char gen_addi134[] = {
+ 0x49, 0x81, 0xc0, 0x86, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi134_len = 7;
+unsigned char gen_addi135[] = {
+ 0x49, 0x81, 0xc0, 0x87, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi135_len = 7;
+unsigned char gen_addi136[] = {
+ 0x49, 0x81, 0xc0, 0x88, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi136_len = 7;
+unsigned char gen_addi137[] = {
+ 0x49, 0x81, 0xc0, 0x89, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi137_len = 7;
+unsigned char gen_addi138[] = {
+ 0x49, 0x81, 0xc0, 0x8a, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi138_len = 7;
+unsigned char gen_addi139[] = {
+ 0x49, 0x81, 0xc0, 0x8b, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi139_len = 7;
+unsigned char gen_addi14[] = {
+ 0x49, 0x83, 0xc0, 0x0e
+};
+unsigned int gen_addi14_len = 4;
+unsigned char gen_addi140[] = {
+ 0x49, 0x81, 0xc0, 0x8c, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi140_len = 7;
+unsigned char gen_addi141[] = {
+ 0x49, 0x81, 0xc0, 0x8d, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi141_len = 7;
+unsigned char gen_addi142[] = {
+ 0x49, 0x81, 0xc0, 0x8e, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi142_len = 7;
+unsigned char gen_addi143[] = {
+ 0x49, 0x81, 0xc0, 0x8f, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi143_len = 7;
+unsigned char gen_addi144[] = {
+ 0x49, 0x81, 0xc0, 0x90, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi144_len = 7;
+unsigned char gen_addi145[] = {
+ 0x49, 0x81, 0xc0, 0x91, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi145_len = 7;
+unsigned char gen_addi146[] = {
+ 0x49, 0x81, 0xc0, 0x92, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi146_len = 7;
+unsigned char gen_addi147[] = {
+ 0x49, 0x81, 0xc0, 0x93, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi147_len = 7;
+unsigned char gen_addi148[] = {
+ 0x49, 0x81, 0xc0, 0x94, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi148_len = 7;
+unsigned char gen_addi149[] = {
+ 0x49, 0x81, 0xc0, 0x95, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi149_len = 7;
+unsigned char gen_addi15[] = {
+ 0x49, 0x83, 0xc0, 0x0f
+};
+unsigned int gen_addi15_len = 4;
+unsigned char gen_addi150[] = {
+ 0x49, 0x81, 0xc0, 0x96, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi150_len = 7;
+unsigned char gen_addi151[] = {
+ 0x49, 0x81, 0xc0, 0x97, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi151_len = 7;
+unsigned char gen_addi152[] = {
+ 0x49, 0x81, 0xc0, 0x98, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi152_len = 7;
+unsigned char gen_addi153[] = {
+ 0x49, 0x81, 0xc0, 0x99, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi153_len = 7;
+unsigned char gen_addi154[] = {
+ 0x49, 0x81, 0xc0, 0x9a, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi154_len = 7;
+unsigned char gen_addi155[] = {
+ 0x49, 0x81, 0xc0, 0x9b, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi155_len = 7;
+unsigned char gen_addi156[] = {
+ 0x49, 0x81, 0xc0, 0x9c, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi156_len = 7;
+unsigned char gen_addi157[] = {
+ 0x49, 0x81, 0xc0, 0x9d, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi157_len = 7;
+unsigned char gen_addi158[] = {
+ 0x49, 0x81, 0xc0, 0x9e, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi158_len = 7;
+unsigned char gen_addi159[] = {
+ 0x49, 0x81, 0xc0, 0x9f, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi159_len = 7;
+unsigned char gen_addi16[] = {
+ 0x49, 0x83, 0xc0, 0x10
+};
+unsigned int gen_addi16_len = 4;
+unsigned char gen_addi160[] = {
+ 0x49, 0x81, 0xc0, 0xa0, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi160_len = 7;
+unsigned char gen_addi161[] = {
+ 0x49, 0x81, 0xc0, 0xa1, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi161_len = 7;
+unsigned char gen_addi162[] = {
+ 0x49, 0x81, 0xc0, 0xa2, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi162_len = 7;
+unsigned char gen_addi163[] = {
+ 0x49, 0x81, 0xc0, 0xa3, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi163_len = 7;
+unsigned char gen_addi164[] = {
+ 0x49, 0x81, 0xc0, 0xa4, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi164_len = 7;
+unsigned char gen_addi165[] = {
+ 0x49, 0x81, 0xc0, 0xa5, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi165_len = 7;
+unsigned char gen_addi166[] = {
+ 0x49, 0x81, 0xc0, 0xa6, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi166_len = 7;
+unsigned char gen_addi167[] = {
+ 0x49, 0x81, 0xc0, 0xa7, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi167_len = 7;
+unsigned char gen_addi168[] = {
+ 0x49, 0x81, 0xc0, 0xa8, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi168_len = 7;
+unsigned char gen_addi169[] = {
+ 0x49, 0x81, 0xc0, 0xa9, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi169_len = 7;
+unsigned char gen_addi17[] = {
+ 0x49, 0x83, 0xc0, 0x11
+};
+unsigned int gen_addi17_len = 4;
+unsigned char gen_addi170[] = {
+ 0x49, 0x81, 0xc0, 0xaa, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi170_len = 7;
+unsigned char gen_addi171[] = {
+ 0x49, 0x81, 0xc0, 0xab, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi171_len = 7;
+unsigned char gen_addi172[] = {
+ 0x49, 0x81, 0xc0, 0xac, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi172_len = 7;
+unsigned char gen_addi173[] = {
+ 0x49, 0x81, 0xc0, 0xad, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi173_len = 7;
+unsigned char gen_addi174[] = {
+ 0x49, 0x81, 0xc0, 0xae, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi174_len = 7;
+unsigned char gen_addi175[] = {
+ 0x49, 0x81, 0xc0, 0xaf, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi175_len = 7;
+unsigned char gen_addi176[] = {
+ 0x49, 0x81, 0xc0, 0xb0, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi176_len = 7;
+unsigned char gen_addi177[] = {
+ 0x49, 0x81, 0xc0, 0xb1, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi177_len = 7;
+unsigned char gen_addi178[] = {
+ 0x49, 0x81, 0xc0, 0xb2, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi178_len = 7;
+unsigned char gen_addi179[] = {
+ 0x49, 0x81, 0xc0, 0xb3, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi179_len = 7;
+unsigned char gen_addi18[] = {
+ 0x49, 0x83, 0xc0, 0x12
+};
+unsigned int gen_addi18_len = 4;
+unsigned char gen_addi180[] = {
+ 0x49, 0x81, 0xc0, 0xb4, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi180_len = 7;
+unsigned char gen_addi181[] = {
+ 0x49, 0x81, 0xc0, 0xb5, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi181_len = 7;
+unsigned char gen_addi182[] = {
+ 0x49, 0x81, 0xc0, 0xb6, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi182_len = 7;
+unsigned char gen_addi183[] = {
+ 0x49, 0x81, 0xc0, 0xb7, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi183_len = 7;
+unsigned char gen_addi184[] = {
+ 0x49, 0x81, 0xc0, 0xb8, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi184_len = 7;
+unsigned char gen_addi185[] = {
+ 0x49, 0x81, 0xc0, 0xb9, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi185_len = 7;
+unsigned char gen_addi186[] = {
+ 0x49, 0x81, 0xc0, 0xba, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi186_len = 7;
+unsigned char gen_addi187[] = {
+ 0x49, 0x81, 0xc0, 0xbb, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi187_len = 7;
+unsigned char gen_addi188[] = {
+ 0x49, 0x81, 0xc0, 0xbc, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi188_len = 7;
+unsigned char gen_addi189[] = {
+ 0x49, 0x81, 0xc0, 0xbd, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi189_len = 7;
+unsigned char gen_addi19[] = {
+ 0x49, 0x83, 0xc0, 0x13
+};
+unsigned int gen_addi19_len = 4;
+unsigned char gen_addi190[] = {
+ 0x49, 0x81, 0xc0, 0xbe, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi190_len = 7;
+unsigned char gen_addi191[] = {
+ 0x49, 0x81, 0xc0, 0xbf, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi191_len = 7;
+unsigned char gen_addi192[] = {
+ 0x49, 0x81, 0xc0, 0xc0, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi192_len = 7;
+unsigned char gen_addi193[] = {
+ 0x49, 0x81, 0xc0, 0xc1, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi193_len = 7;
+unsigned char gen_addi194[] = {
+ 0x49, 0x81, 0xc0, 0xc2, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi194_len = 7;
+unsigned char gen_addi195[] = {
+ 0x49, 0x81, 0xc0, 0xc3, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi195_len = 7;
+unsigned char gen_addi196[] = {
+ 0x49, 0x81, 0xc0, 0xc4, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi196_len = 7;
+unsigned char gen_addi197[] = {
+ 0x49, 0x81, 0xc0, 0xc5, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi197_len = 7;
+unsigned char gen_addi198[] = {
+ 0x49, 0x81, 0xc0, 0xc6, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi198_len = 7;
+unsigned char gen_addi199[] = {
+ 0x49, 0x81, 0xc0, 0xc7, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi199_len = 7;
+unsigned char gen_addi2[] = {
+ 0x49, 0x83, 0xc0, 0x02
+};
+unsigned int gen_addi2_len = 4;
+unsigned char gen_addi20[] = {
+ 0x49, 0x83, 0xc0, 0x14
+};
+unsigned int gen_addi20_len = 4;
+unsigned char gen_addi200[] = {
+ 0x49, 0x81, 0xc0, 0xc8, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi200_len = 7;
+unsigned char gen_addi201[] = {
+ 0x49, 0x81, 0xc0, 0xc9, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi201_len = 7;
+unsigned char gen_addi202[] = {
+ 0x49, 0x81, 0xc0, 0xca, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi202_len = 7;
+unsigned char gen_addi203[] = {
+ 0x49, 0x81, 0xc0, 0xcb, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi203_len = 7;
+unsigned char gen_addi204[] = {
+ 0x49, 0x81, 0xc0, 0xcc, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi204_len = 7;
+unsigned char gen_addi205[] = {
+ 0x49, 0x81, 0xc0, 0xcd, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi205_len = 7;
+unsigned char gen_addi206[] = {
+ 0x49, 0x81, 0xc0, 0xce, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi206_len = 7;
+unsigned char gen_addi207[] = {
+ 0x49, 0x81, 0xc0, 0xcf, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi207_len = 7;
+unsigned char gen_addi208[] = {
+ 0x49, 0x81, 0xc0, 0xd0, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi208_len = 7;
+unsigned char gen_addi209[] = {
+ 0x49, 0x81, 0xc0, 0xd1, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi209_len = 7;
+unsigned char gen_addi21[] = {
+ 0x49, 0x83, 0xc0, 0x15
+};
+unsigned int gen_addi21_len = 4;
+unsigned char gen_addi210[] = {
+ 0x49, 0x81, 0xc0, 0xd2, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi210_len = 7;
+unsigned char gen_addi211[] = {
+ 0x49, 0x81, 0xc0, 0xd3, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi211_len = 7;
+unsigned char gen_addi212[] = {
+ 0x49, 0x81, 0xc0, 0xd4, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi212_len = 7;
+unsigned char gen_addi213[] = {
+ 0x49, 0x81, 0xc0, 0xd5, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi213_len = 7;
+unsigned char gen_addi214[] = {
+ 0x49, 0x81, 0xc0, 0xd6, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi214_len = 7;
+unsigned char gen_addi215[] = {
+ 0x49, 0x81, 0xc0, 0xd7, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi215_len = 7;
+unsigned char gen_addi216[] = {
+ 0x49, 0x81, 0xc0, 0xd8, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi216_len = 7;
+unsigned char gen_addi217[] = {
+ 0x49, 0x81, 0xc0, 0xd9, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi217_len = 7;
+unsigned char gen_addi218[] = {
+ 0x49, 0x81, 0xc0, 0xda, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi218_len = 7;
+unsigned char gen_addi219[] = {
+ 0x49, 0x81, 0xc0, 0xdb, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi219_len = 7;
+unsigned char gen_addi22[] = {
+ 0x49, 0x83, 0xc0, 0x16
+};
+unsigned int gen_addi22_len = 4;
+unsigned char gen_addi220[] = {
+ 0x49, 0x81, 0xc0, 0xdc, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi220_len = 7;
+unsigned char gen_addi221[] = {
+ 0x49, 0x81, 0xc0, 0xdd, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi221_len = 7;
+unsigned char gen_addi222[] = {
+ 0x49, 0x81, 0xc0, 0xde, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi222_len = 7;
+unsigned char gen_addi223[] = {
+ 0x49, 0x81, 0xc0, 0xdf, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi223_len = 7;
+unsigned char gen_addi224[] = {
+ 0x49, 0x81, 0xc0, 0xe0, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi224_len = 7;
+unsigned char gen_addi225[] = {
+ 0x49, 0x81, 0xc0, 0xe1, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi225_len = 7;
+unsigned char gen_addi226[] = {
+ 0x49, 0x81, 0xc0, 0xe2, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi226_len = 7;
+unsigned char gen_addi227[] = {
+ 0x49, 0x81, 0xc0, 0xe3, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi227_len = 7;
+unsigned char gen_addi228[] = {
+ 0x49, 0x81, 0xc0, 0xe4, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi228_len = 7;
+unsigned char gen_addi229[] = {
+ 0x49, 0x81, 0xc0, 0xe5, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi229_len = 7;
+unsigned char gen_addi23[] = {
+ 0x49, 0x83, 0xc0, 0x17
+};
+unsigned int gen_addi23_len = 4;
+unsigned char gen_addi230[] = {
+ 0x49, 0x81, 0xc0, 0xe6, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi230_len = 7;
+unsigned char gen_addi231[] = {
+ 0x49, 0x81, 0xc0, 0xe7, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi231_len = 7;
+unsigned char gen_addi232[] = {
+ 0x49, 0x81, 0xc0, 0xe8, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi232_len = 7;
+unsigned char gen_addi233[] = {
+ 0x49, 0x81, 0xc0, 0xe9, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi233_len = 7;
+unsigned char gen_addi234[] = {
+ 0x49, 0x81, 0xc0, 0xea, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi234_len = 7;
+unsigned char gen_addi235[] = {
+ 0x49, 0x81, 0xc0, 0xeb, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi235_len = 7;
+unsigned char gen_addi236[] = {
+ 0x49, 0x81, 0xc0, 0xec, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi236_len = 7;
+unsigned char gen_addi237[] = {
+ 0x49, 0x81, 0xc0, 0xed, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi237_len = 7;
+unsigned char gen_addi238[] = {
+ 0x49, 0x81, 0xc0, 0xee, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi238_len = 7;
+unsigned char gen_addi239[] = {
+ 0x49, 0x81, 0xc0, 0xef, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi239_len = 7;
+unsigned char gen_addi24[] = {
+ 0x49, 0x83, 0xc0, 0x18
+};
+unsigned int gen_addi24_len = 4;
+unsigned char gen_addi240[] = {
+ 0x49, 0x81, 0xc0, 0xf0, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi240_len = 7;
+unsigned char gen_addi241[] = {
+ 0x49, 0x81, 0xc0, 0xf1, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi241_len = 7;
+unsigned char gen_addi242[] = {
+ 0x49, 0x81, 0xc0, 0xf2, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi242_len = 7;
+unsigned char gen_addi243[] = {
+ 0x49, 0x81, 0xc0, 0xf3, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi243_len = 7;
+unsigned char gen_addi244[] = {
+ 0x49, 0x81, 0xc0, 0xf4, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi244_len = 7;
+unsigned char gen_addi245[] = {
+ 0x49, 0x81, 0xc0, 0xf5, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi245_len = 7;
+unsigned char gen_addi246[] = {
+ 0x49, 0x81, 0xc0, 0xf6, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi246_len = 7;
+unsigned char gen_addi247[] = {
+ 0x49, 0x81, 0xc0, 0xf7, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi247_len = 7;
+unsigned char gen_addi248[] = {
+ 0x49, 0x81, 0xc0, 0xf8, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi248_len = 7;
+unsigned char gen_addi249[] = {
+ 0x49, 0x81, 0xc0, 0xf9, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi249_len = 7;
+unsigned char gen_addi25[] = {
+ 0x49, 0x83, 0xc0, 0x19
+};
+unsigned int gen_addi25_len = 4;
+unsigned char gen_addi250[] = {
+ 0x49, 0x81, 0xc0, 0xfa, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi250_len = 7;
+unsigned char gen_addi251[] = {
+ 0x49, 0x81, 0xc0, 0xfb, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi251_len = 7;
+unsigned char gen_addi252[] = {
+ 0x49, 0x81, 0xc0, 0xfc, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi252_len = 7;
+unsigned char gen_addi253[] = {
+ 0x49, 0x81, 0xc0, 0xfd, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi253_len = 7;
+unsigned char gen_addi254[] = {
+ 0x49, 0x81, 0xc0, 0xfe, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi254_len = 7;
+unsigned char gen_addi255[] = {
+ 0x49, 0x81, 0xc0, 0xff, 0x00, 0x00, 0x00
+};
+unsigned int gen_addi255_len = 7;
+unsigned char gen_addi26[] = {
+ 0x49, 0x83, 0xc0, 0x1a
+};
+unsigned int gen_addi26_len = 4;
+unsigned char gen_addi27[] = {
+ 0x49, 0x83, 0xc0, 0x1b
+};
+unsigned int gen_addi27_len = 4;
+unsigned char gen_addi28[] = {
+ 0x49, 0x83, 0xc0, 0x1c
+};
+unsigned int gen_addi28_len = 4;
+unsigned char gen_addi29[] = {
+ 0x49, 0x83, 0xc0, 0x1d
+};
+unsigned int gen_addi29_len = 4;
+unsigned char gen_addi3[] = {
+ 0x49, 0x83, 0xc0, 0x03
+};
+unsigned int gen_addi3_len = 4;
+unsigned char gen_addi30[] = {
+ 0x49, 0x83, 0xc0, 0x1e
+};
+unsigned int gen_addi30_len = 4;
+unsigned char gen_addi31[] = {
+ 0x49, 0x83, 0xc0, 0x1f
+};
+unsigned int gen_addi31_len = 4;
+unsigned char gen_addi32[] = {
+ 0x49, 0x83, 0xc0, 0x20
+};
+unsigned int gen_addi32_len = 4;
+unsigned char gen_addi33[] = {
+ 0x49, 0x83, 0xc0, 0x21
+};
+unsigned int gen_addi33_len = 4;
+unsigned char gen_addi34[] = {
+ 0x49, 0x83, 0xc0, 0x22
+};
+unsigned int gen_addi34_len = 4;
+unsigned char gen_addi35[] = {
+ 0x49, 0x83, 0xc0, 0x23
+};
+unsigned int gen_addi35_len = 4;
+unsigned char gen_addi36[] = {
+ 0x49, 0x83, 0xc0, 0x24
+};
+unsigned int gen_addi36_len = 4;
+unsigned char gen_addi37[] = {
+ 0x49, 0x83, 0xc0, 0x25
+};
+unsigned int gen_addi37_len = 4;
+unsigned char gen_addi38[] = {
+ 0x49, 0x83, 0xc0, 0x26
+};
+unsigned int gen_addi38_len = 4;
+unsigned char gen_addi39[] = {
+ 0x49, 0x83, 0xc0, 0x27
+};
+unsigned int gen_addi39_len = 4;
+unsigned char gen_addi4[] = {
+ 0x49, 0x83, 0xc0, 0x04
+};
+unsigned int gen_addi4_len = 4;
+unsigned char gen_addi40[] = {
+ 0x49, 0x83, 0xc0, 0x28
+};
+unsigned int gen_addi40_len = 4;
+unsigned char gen_addi41[] = {
+ 0x49, 0x83, 0xc0, 0x29
+};
+unsigned int gen_addi41_len = 4;
+unsigned char gen_addi42[] = {
+ 0x49, 0x83, 0xc0, 0x2a
+};
+unsigned int gen_addi42_len = 4;
+unsigned char gen_addi43[] = {
+ 0x49, 0x83, 0xc0, 0x2b
+};
+unsigned int gen_addi43_len = 4;
+unsigned char gen_addi44[] = {
+ 0x49, 0x83, 0xc0, 0x2c
+};
+unsigned int gen_addi44_len = 4;
+unsigned char gen_addi45[] = {
+ 0x49, 0x83, 0xc0, 0x2d
+};
+unsigned int gen_addi45_len = 4;
+unsigned char gen_addi46[] = {
+ 0x49, 0x83, 0xc0, 0x2e
+};
+unsigned int gen_addi46_len = 4;
+unsigned char gen_addi47[] = {
+ 0x49, 0x83, 0xc0, 0x2f
+};
+unsigned int gen_addi47_len = 4;
+unsigned char gen_addi48[] = {
+ 0x49, 0x83, 0xc0, 0x30
+};
+unsigned int gen_addi48_len = 4;
+unsigned char gen_addi49[] = {
+ 0x49, 0x83, 0xc0, 0x31
+};
+unsigned int gen_addi49_len = 4;
+unsigned char gen_addi5[] = {
+ 0x49, 0x83, 0xc0, 0x05
+};
+unsigned int gen_addi5_len = 4;
+unsigned char gen_addi50[] = {
+ 0x49, 0x83, 0xc0, 0x32
+};
+unsigned int gen_addi50_len = 4;
+unsigned char gen_addi51[] = {
+ 0x49, 0x83, 0xc0, 0x33
+};
+unsigned int gen_addi51_len = 4;
+unsigned char gen_addi52[] = {
+ 0x49, 0x83, 0xc0, 0x34
+};
+unsigned int gen_addi52_len = 4;
+unsigned char gen_addi53[] = {
+ 0x49, 0x83, 0xc0, 0x35
+};
+unsigned int gen_addi53_len = 4;
+unsigned char gen_addi54[] = {
+ 0x49, 0x83, 0xc0, 0x36
+};
+unsigned int gen_addi54_len = 4;
+unsigned char gen_addi55[] = {
+ 0x49, 0x83, 0xc0, 0x37
+};
+unsigned int gen_addi55_len = 4;
+unsigned char gen_addi56[] = {
+ 0x49, 0x83, 0xc0, 0x38
+};
+unsigned int gen_addi56_len = 4;
+unsigned char gen_addi57[] = {
+ 0x49, 0x83, 0xc0, 0x39
+};
+unsigned int gen_addi57_len = 4;
+unsigned char gen_addi58[] = {
+ 0x49, 0x83, 0xc0, 0x3a
+};
+unsigned int gen_addi58_len = 4;
+unsigned char gen_addi59[] = {
+ 0x49, 0x83, 0xc0, 0x3b
+};
+unsigned int gen_addi59_len = 4;
+unsigned char gen_addi6[] = {
+ 0x49, 0x83, 0xc0, 0x06
+};
+unsigned int gen_addi6_len = 4;
+unsigned char gen_addi60[] = {
+ 0x49, 0x83, 0xc0, 0x3c
+};
+unsigned int gen_addi60_len = 4;
+unsigned char gen_addi61[] = {
+ 0x49, 0x83, 0xc0, 0x3d
+};
+unsigned int gen_addi61_len = 4;
+unsigned char gen_addi62[] = {
+ 0x49, 0x83, 0xc0, 0x3e
+};
+unsigned int gen_addi62_len = 4;
+unsigned char gen_addi63[] = {
+ 0x49, 0x83, 0xc0, 0x3f
+};
+unsigned int gen_addi63_len = 4;
+unsigned char gen_addi64[] = {
+ 0x49, 0x83, 0xc0, 0x40
+};
+unsigned int gen_addi64_len = 4;
+unsigned char gen_addi65[] = {
+ 0x49, 0x83, 0xc0, 0x41
+};
+unsigned int gen_addi65_len = 4;
+unsigned char gen_addi66[] = {
+ 0x49, 0x83, 0xc0, 0x42
+};
+unsigned int gen_addi66_len = 4;
+unsigned char gen_addi67[] = {
+ 0x49, 0x83, 0xc0, 0x43
+};
+unsigned int gen_addi67_len = 4;
+unsigned char gen_addi68[] = {
+ 0x49, 0x83, 0xc0, 0x44
+};
+unsigned int gen_addi68_len = 4;
+unsigned char gen_addi69[] = {
+ 0x49, 0x83, 0xc0, 0x45
+};
+unsigned int gen_addi69_len = 4;
+unsigned char gen_addi7[] = {
+ 0x49, 0x83, 0xc0, 0x07
+};
+unsigned int gen_addi7_len = 4;
+unsigned char gen_addi70[] = {
+ 0x49, 0x83, 0xc0, 0x46
+};
+unsigned int gen_addi70_len = 4;
+unsigned char gen_addi71[] = {
+ 0x49, 0x83, 0xc0, 0x47
+};
+unsigned int gen_addi71_len = 4;
+unsigned char gen_addi72[] = {
+ 0x49, 0x83, 0xc0, 0x48
+};
+unsigned int gen_addi72_len = 4;
+unsigned char gen_addi73[] = {
+ 0x49, 0x83, 0xc0, 0x49
+};
+unsigned int gen_addi73_len = 4;
+unsigned char gen_addi74[] = {
+ 0x49, 0x83, 0xc0, 0x4a
+};
+unsigned int gen_addi74_len = 4;
+unsigned char gen_addi75[] = {
+ 0x49, 0x83, 0xc0, 0x4b
+};
+unsigned int gen_addi75_len = 4;
+unsigned char gen_addi76[] = {
+ 0x49, 0x83, 0xc0, 0x4c
+};
+unsigned int gen_addi76_len = 4;
+unsigned char gen_addi77[] = {
+ 0x49, 0x83, 0xc0, 0x4d
+};
+unsigned int gen_addi77_len = 4;
+unsigned char gen_addi78[] = {
+ 0x49, 0x83, 0xc0, 0x4e
+};
+unsigned int gen_addi78_len = 4;
+unsigned char gen_addi79[] = {
+ 0x49, 0x83, 0xc0, 0x4f
+};
+unsigned int gen_addi79_len = 4;
+unsigned char gen_addi8[] = {
+ 0x49, 0x83, 0xc0, 0x08
+};
+unsigned int gen_addi8_len = 4;
+unsigned char gen_addi80[] = {
+ 0x49, 0x83, 0xc0, 0x50
+};
+unsigned int gen_addi80_len = 4;
+unsigned char gen_addi81[] = {
+ 0x49, 0x83, 0xc0, 0x51
+};
+unsigned int gen_addi81_len = 4;
+unsigned char gen_addi82[] = {
+ 0x49, 0x83, 0xc0, 0x52
+};
+unsigned int gen_addi82_len = 4;
+unsigned char gen_addi83[] = {
+ 0x49, 0x83, 0xc0, 0x53
+};
+unsigned int gen_addi83_len = 4;
+unsigned char gen_addi84[] = {
+ 0x49, 0x83, 0xc0, 0x54
+};
+unsigned int gen_addi84_len = 4;
+unsigned char gen_addi85[] = {
+ 0x49, 0x83, 0xc0, 0x55
+};
+unsigned int gen_addi85_len = 4;
+unsigned char gen_addi86[] = {
+ 0x49, 0x83, 0xc0, 0x56
+};
+unsigned int gen_addi86_len = 4;
+unsigned char gen_addi87[] = {
+ 0x49, 0x83, 0xc0, 0x57
+};
+unsigned int gen_addi87_len = 4;
+unsigned char gen_addi88[] = {
+ 0x49, 0x83, 0xc0, 0x58
+};
+unsigned int gen_addi88_len = 4;
+unsigned char gen_addi89[] = {
+ 0x49, 0x83, 0xc0, 0x59
+};
+unsigned int gen_addi89_len = 4;
+unsigned char gen_addi9[] = {
+ 0x49, 0x83, 0xc0, 0x09
+};
+unsigned int gen_addi9_len = 4;
+unsigned char gen_addi90[] = {
+ 0x49, 0x83, 0xc0, 0x5a
+};
+unsigned int gen_addi90_len = 4;
+unsigned char gen_addi91[] = {
+ 0x49, 0x83, 0xc0, 0x5b
+};
+unsigned int gen_addi91_len = 4;
+unsigned char gen_addi92[] = {
+ 0x49, 0x83, 0xc0, 0x5c
+};
+unsigned int gen_addi92_len = 4;
+unsigned char gen_addi93[] = {
+ 0x49, 0x83, 0xc0, 0x5d
+};
+unsigned int gen_addi93_len = 4;
+unsigned char gen_addi94[] = {
+ 0x49, 0x83, 0xc0, 0x5e
+};
+unsigned int gen_addi94_len = 4;
+unsigned char gen_addi95[] = {
+ 0x49, 0x83, 0xc0, 0x5f
+};
+unsigned int gen_addi95_len = 4;
+unsigned char gen_addi96[] = {
+ 0x49, 0x83, 0xc0, 0x60
+};
+unsigned int gen_addi96_len = 4;
+unsigned char gen_addi97[] = {
+ 0x49, 0x83, 0xc0, 0x61
+};
+unsigned int gen_addi97_len = 4;
+unsigned char gen_addi98[] = {
+ 0x49, 0x83, 0xc0, 0x62
+};
+unsigned int gen_addi98_len = 4;
+unsigned char gen_addi99[] = {
+ 0x49, 0x83, 0xc0, 0x63
+};
+unsigned int gen_addi99_len = 4;
+unsigned char gen_bsa0[] = {
+};
+unsigned int gen_bsa0_len = 0;
+unsigned char gen_bsa1[] = {
+ 0x48, 0xd1, 0xee
+};
+unsigned int gen_bsa1_len = 3;
+unsigned char gen_bsa10[] = {
+ 0x48, 0xc1, 0xee, 0x0a
+};
+unsigned int gen_bsa10_len = 4;
+unsigned char gen_bsa11[] = {
+ 0x48, 0xc1, 0xee, 0x0b
+};
+unsigned int gen_bsa11_len = 4;
+unsigned char gen_bsa12[] = {
+ 0x48, 0xc1, 0xee, 0x0c
+};
+unsigned int gen_bsa12_len = 4;
+unsigned char gen_bsa13[] = {
+ 0x48, 0xc1, 0xee, 0x0d
+};
+unsigned int gen_bsa13_len = 4;
+unsigned char gen_bsa14[] = {
+ 0x48, 0xc1, 0xee, 0x0e
+};
+unsigned int gen_bsa14_len = 4;
+unsigned char gen_bsa15[] = {
+ 0x48, 0xc1, 0xee, 0x0f
+};
+unsigned int gen_bsa15_len = 4;
+unsigned char gen_bsa16[] = {
+ 0x48, 0xc1, 0xee, 0x10
+};
+unsigned int gen_bsa16_len = 4;
+unsigned char gen_bsa17[] = {
+ 0x48, 0xc1, 0xee, 0x11
+};
+unsigned int gen_bsa17_len = 4;
+unsigned char gen_bsa18[] = {
+ 0x48, 0xc1, 0xee, 0x12
+};
+unsigned int gen_bsa18_len = 4;
+unsigned char gen_bsa19[] = {
+ 0x48, 0xc1, 0xee, 0x13
+};
+unsigned int gen_bsa19_len = 4;
+unsigned char gen_bsa2[] = {
+ 0x48, 0xc1, 0xee, 0x02
+};
+unsigned int gen_bsa2_len = 4;
+unsigned char gen_bsa20[] = {
+ 0x48, 0xc1, 0xee, 0x14
+};
+unsigned int gen_bsa20_len = 4;
+unsigned char gen_bsa21[] = {
+ 0x48, 0xc1, 0xee, 0x15
+};
+unsigned int gen_bsa21_len = 4;
+unsigned char gen_bsa22[] = {
+ 0x48, 0xc1, 0xee, 0x16
+};
+unsigned int gen_bsa22_len = 4;
+unsigned char gen_bsa23[] = {
+ 0x48, 0xc1, 0xee, 0x17
+};
+unsigned int gen_bsa23_len = 4;
+unsigned char gen_bsa24[] = {
+ 0x48, 0xc1, 0xee, 0x18
+};
+unsigned int gen_bsa24_len = 4;
+unsigned char gen_bsa25[] = {
+ 0x48, 0xc1, 0xee, 0x19
+};
+unsigned int gen_bsa25_len = 4;
+unsigned char gen_bsa26[] = {
+ 0x48, 0xc1, 0xee, 0x1a
+};
+unsigned int gen_bsa26_len = 4;
+unsigned char gen_bsa27[] = {
+ 0x48, 0xc1, 0xee, 0x1b
+};
+unsigned int gen_bsa27_len = 4;
+unsigned char gen_bsa28[] = {
+ 0x48, 0xc1, 0xee, 0x1c
+};
+unsigned int gen_bsa28_len = 4;
+unsigned char gen_bsa29[] = {
+ 0x48, 0xc1, 0xee, 0x1d
+};
+unsigned int gen_bsa29_len = 4;
+unsigned char gen_bsa3[] = {
+ 0x48, 0xc1, 0xee, 0x03
+};
+unsigned int gen_bsa3_len = 4;
+unsigned char gen_bsa30[] = {
+ 0x48, 0xc1, 0xee, 0x1e
+};
+unsigned int gen_bsa30_len = 4;
+unsigned char gen_bsa31[] = {
+ 0x48, 0xc1, 0xee, 0x1f
+};
+unsigned int gen_bsa31_len = 4;
+unsigned char gen_bsa32[] = {
+ 0x48, 0xc1, 0xee, 0x20
+};
+unsigned int gen_bsa32_len = 4;
+unsigned char gen_bsa33[] = {
+ 0x48, 0xc1, 0xee, 0x21
+};
+unsigned int gen_bsa33_len = 4;
+unsigned char gen_bsa34[] = {
+ 0x48, 0xc1, 0xee, 0x22
+};
+unsigned int gen_bsa34_len = 4;
+unsigned char gen_bsa35[] = {
+ 0x48, 0xc1, 0xee, 0x23
+};
+unsigned int gen_bsa35_len = 4;
+unsigned char gen_bsa36[] = {
+ 0x48, 0xc1, 0xee, 0x24
+};
+unsigned int gen_bsa36_len = 4;
+unsigned char gen_bsa37[] = {
+ 0x48, 0xc1, 0xee, 0x25
+};
+unsigned int gen_bsa37_len = 4;
+unsigned char gen_bsa38[] = {
+ 0x48, 0xc1, 0xee, 0x26
+};
+unsigned int gen_bsa38_len = 4;
+unsigned char gen_bsa39[] = {
+ 0x48, 0xc1, 0xee, 0x27
+};
+unsigned int gen_bsa39_len = 4;
+unsigned char gen_bsa4[] = {
+ 0x48, 0xc1, 0xee, 0x04
+};
+unsigned int gen_bsa4_len = 4;
+unsigned char gen_bsa40[] = {
+ 0x48, 0xc1, 0xee, 0x28
+};
+unsigned int gen_bsa40_len = 4;
+unsigned char gen_bsa41[] = {
+ 0x48, 0xc1, 0xee, 0x29
+};
+unsigned int gen_bsa41_len = 4;
+unsigned char gen_bsa42[] = {
+ 0x48, 0xc1, 0xee, 0x2a
+};
+unsigned int gen_bsa42_len = 4;
+unsigned char gen_bsa43[] = {
+ 0x48, 0xc1, 0xee, 0x2b
+};
+unsigned int gen_bsa43_len = 4;
+unsigned char gen_bsa44[] = {
+ 0x48, 0xc1, 0xee, 0x2c
+};
+unsigned int gen_bsa44_len = 4;
+unsigned char gen_bsa45[] = {
+ 0x48, 0xc1, 0xee, 0x2d
+};
+unsigned int gen_bsa45_len = 4;
+unsigned char gen_bsa46[] = {
+ 0x48, 0xc1, 0xee, 0x2e
+};
+unsigned int gen_bsa46_len = 4;
+unsigned char gen_bsa47[] = {
+ 0x48, 0xc1, 0xee, 0x2f
+};
+unsigned int gen_bsa47_len = 4;
+unsigned char gen_bsa48[] = {
+ 0x48, 0xc1, 0xee, 0x30
+};
+unsigned int gen_bsa48_len = 4;
+unsigned char gen_bsa49[] = {
+ 0x48, 0xc1, 0xee, 0x31
+};
+unsigned int gen_bsa49_len = 4;
+unsigned char gen_bsa5[] = {
+ 0x48, 0xc1, 0xee, 0x05
+};
+unsigned int gen_bsa5_len = 4;
+unsigned char gen_bsa50[] = {
+ 0x48, 0xc1, 0xee, 0x32
+};
+unsigned int gen_bsa50_len = 4;
+unsigned char gen_bsa51[] = {
+ 0x48, 0xc1, 0xee, 0x33
+};
+unsigned int gen_bsa51_len = 4;
+unsigned char gen_bsa52[] = {
+ 0x48, 0xc1, 0xee, 0x34
+};
+unsigned int gen_bsa52_len = 4;
+unsigned char gen_bsa53[] = {
+ 0x48, 0xc1, 0xee, 0x35
+};
+unsigned int gen_bsa53_len = 4;
+unsigned char gen_bsa54[] = {
+ 0x48, 0xc1, 0xee, 0x36
+};
+unsigned int gen_bsa54_len = 4;
+unsigned char gen_bsa55[] = {
+ 0x48, 0xc1, 0xee, 0x37
+};
+unsigned int gen_bsa55_len = 4;
+unsigned char gen_bsa56[] = {
+ 0x48, 0xc1, 0xee, 0x38
+};
+unsigned int gen_bsa56_len = 4;
+unsigned char gen_bsa57[] = {
+ 0x48, 0xc1, 0xee, 0x39
+};
+unsigned int gen_bsa57_len = 4;
+unsigned char gen_bsa58[] = {
+ 0x48, 0xc1, 0xee, 0x3a
+};
+unsigned int gen_bsa58_len = 4;
+unsigned char gen_bsa59[] = {
+ 0x48, 0xc1, 0xee, 0x3b
+};
+unsigned int gen_bsa59_len = 4;
+unsigned char gen_bsa6[] = {
+ 0x48, 0xc1, 0xee, 0x06
+};
+unsigned int gen_bsa6_len = 4;
+unsigned char gen_bsa60[] = {
+ 0x48, 0xc1, 0xee, 0x3c
+};
+unsigned int gen_bsa60_len = 4;
+unsigned char gen_bsa61[] = {
+ 0x48, 0xc1, 0xee, 0x3d
+};
+unsigned int gen_bsa61_len = 4;
+unsigned char gen_bsa62[] = {
+ 0x48, 0xc1, 0xee, 0x3e
+};
+unsigned int gen_bsa62_len = 4;
+unsigned char gen_bsa63[] = {
+ 0x48, 0xc1, 0xee, 0x3f
+};
+unsigned int gen_bsa63_len = 4;
+unsigned char gen_bsa7[] = {
+ 0x48, 0xc1, 0xee, 0x07
+};
+unsigned int gen_bsa7_len = 4;
+unsigned char gen_bsa8[] = {
+ 0x48, 0xc1, 0xee, 0x08
+};
+unsigned int gen_bsa8_len = 4;
+unsigned char gen_bsa9[] = {
+ 0x48, 0xc1, 0xee, 0x09
+};
+unsigned int gen_bsa9_len = 4;
+unsigned char gen_bso0[] = {
+};
+unsigned int gen_bso0_len = 0;
+unsigned char gen_bso1[] = {
+ 0x49, 0xd1, 0xe8
+};
+unsigned int gen_bso1_len = 3;
+unsigned char gen_bso10[] = {
+ 0x49, 0xc1, 0xe8, 0x0a
+};
+unsigned int gen_bso10_len = 4;
+unsigned char gen_bso11[] = {
+ 0x49, 0xc1, 0xe8, 0x0b
+};
+unsigned int gen_bso11_len = 4;
+unsigned char gen_bso12[] = {
+ 0x49, 0xc1, 0xe8, 0x0c
+};
+unsigned int gen_bso12_len = 4;
+unsigned char gen_bso13[] = {
+ 0x49, 0xc1, 0xe8, 0x0d
+};
+unsigned int gen_bso13_len = 4;
+unsigned char gen_bso14[] = {
+ 0x49, 0xc1, 0xe8, 0x0e
+};
+unsigned int gen_bso14_len = 4;
+unsigned char gen_bso15[] = {
+ 0x49, 0xc1, 0xe8, 0x0f
+};
+unsigned int gen_bso15_len = 4;
+unsigned char gen_bso16[] = {
+ 0x49, 0xc1, 0xe8, 0x10
+};
+unsigned int gen_bso16_len = 4;
+unsigned char gen_bso17[] = {
+ 0x49, 0xc1, 0xe8, 0x11
+};
+unsigned int gen_bso17_len = 4;
+unsigned char gen_bso18[] = {
+ 0x49, 0xc1, 0xe8, 0x12
+};
+unsigned int gen_bso18_len = 4;
+unsigned char gen_bso19[] = {
+ 0x49, 0xc1, 0xe8, 0x13
+};
+unsigned int gen_bso19_len = 4;
+unsigned char gen_bso2[] = {
+ 0x49, 0xc1, 0xe8, 0x02
+};
+unsigned int gen_bso2_len = 4;
+unsigned char gen_bso20[] = {
+ 0x49, 0xc1, 0xe8, 0x14
+};
+unsigned int gen_bso20_len = 4;
+unsigned char gen_bso21[] = {
+ 0x49, 0xc1, 0xe8, 0x15
+};
+unsigned int gen_bso21_len = 4;
+unsigned char gen_bso22[] = {
+ 0x49, 0xc1, 0xe8, 0x16
+};
+unsigned int gen_bso22_len = 4;
+unsigned char gen_bso23[] = {
+ 0x49, 0xc1, 0xe8, 0x17
+};
+unsigned int gen_bso23_len = 4;
+unsigned char gen_bso24[] = {
+ 0x49, 0xc1, 0xe8, 0x18
+};
+unsigned int gen_bso24_len = 4;
+unsigned char gen_bso25[] = {
+ 0x49, 0xc1, 0xe8, 0x19
+};
+unsigned int gen_bso25_len = 4;
+unsigned char gen_bso26[] = {
+ 0x49, 0xc1, 0xe8, 0x1a
+};
+unsigned int gen_bso26_len = 4;
+unsigned char gen_bso27[] = {
+ 0x49, 0xc1, 0xe8, 0x1b
+};
+unsigned int gen_bso27_len = 4;
+unsigned char gen_bso28[] = {
+ 0x49, 0xc1, 0xe8, 0x1c
+};
+unsigned int gen_bso28_len = 4;
+unsigned char gen_bso29[] = {
+ 0x49, 0xc1, 0xe8, 0x1d
+};
+unsigned int gen_bso29_len = 4;
+unsigned char gen_bso3[] = {
+ 0x49, 0xc1, 0xe8, 0x03
+};
+unsigned int gen_bso3_len = 4;
+unsigned char gen_bso30[] = {
+ 0x49, 0xc1, 0xe8, 0x1e
+};
+unsigned int gen_bso30_len = 4;
+unsigned char gen_bso31[] = {
+ 0x49, 0xc1, 0xe8, 0x1f
+};
+unsigned int gen_bso31_len = 4;
+unsigned char gen_bso32[] = {
+ 0x49, 0xc1, 0xe8, 0x20
+};
+unsigned int gen_bso32_len = 4;
+unsigned char gen_bso33[] = {
+ 0x49, 0xc1, 0xe8, 0x21
+};
+unsigned int gen_bso33_len = 4;
+unsigned char gen_bso34[] = {
+ 0x49, 0xc1, 0xe8, 0x22
+};
+unsigned int gen_bso34_len = 4;
+unsigned char gen_bso35[] = {
+ 0x49, 0xc1, 0xe8, 0x23
+};
+unsigned int gen_bso35_len = 4;
+unsigned char gen_bso36[] = {
+ 0x49, 0xc1, 0xe8, 0x24
+};
+unsigned int gen_bso36_len = 4;
+unsigned char gen_bso37[] = {
+ 0x49, 0xc1, 0xe8, 0x25
+};
+unsigned int gen_bso37_len = 4;
+unsigned char gen_bso38[] = {
+ 0x49, 0xc1, 0xe8, 0x26
+};
+unsigned int gen_bso38_len = 4;
+unsigned char gen_bso39[] = {
+ 0x49, 0xc1, 0xe8, 0x27
+};
+unsigned int gen_bso39_len = 4;
+unsigned char gen_bso4[] = {
+ 0x49, 0xc1, 0xe8, 0x04
+};
+unsigned int gen_bso4_len = 4;
+unsigned char gen_bso40[] = {
+ 0x49, 0xc1, 0xe8, 0x28
+};
+unsigned int gen_bso40_len = 4;
+unsigned char gen_bso41[] = {
+ 0x49, 0xc1, 0xe8, 0x29
+};
+unsigned int gen_bso41_len = 4;
+unsigned char gen_bso42[] = {
+ 0x49, 0xc1, 0xe8, 0x2a
+};
+unsigned int gen_bso42_len = 4;
+unsigned char gen_bso43[] = {
+ 0x49, 0xc1, 0xe8, 0x2b
+};
+unsigned int gen_bso43_len = 4;
+unsigned char gen_bso44[] = {
+ 0x49, 0xc1, 0xe8, 0x2c
+};
+unsigned int gen_bso44_len = 4;
+unsigned char gen_bso45[] = {
+ 0x49, 0xc1, 0xe8, 0x2d
+};
+unsigned int gen_bso45_len = 4;
+unsigned char gen_bso46[] = {
+ 0x49, 0xc1, 0xe8, 0x2e
+};
+unsigned int gen_bso46_len = 4;
+unsigned char gen_bso47[] = {
+ 0x49, 0xc1, 0xe8, 0x2f
+};
+unsigned int gen_bso47_len = 4;
+unsigned char gen_bso48[] = {
+ 0x49, 0xc1, 0xe8, 0x30
+};
+unsigned int gen_bso48_len = 4;
+unsigned char gen_bso49[] = {
+ 0x49, 0xc1, 0xe8, 0x31
+};
+unsigned int gen_bso49_len = 4;
+unsigned char gen_bso5[] = {
+ 0x49, 0xc1, 0xe8, 0x05
+};
+unsigned int gen_bso5_len = 4;
+unsigned char gen_bso50[] = {
+ 0x49, 0xc1, 0xe8, 0x32
+};
+unsigned int gen_bso50_len = 4;
+unsigned char gen_bso51[] = {
+ 0x49, 0xc1, 0xe8, 0x33
+};
+unsigned int gen_bso51_len = 4;
+unsigned char gen_bso52[] = {
+ 0x49, 0xc1, 0xe8, 0x34
+};
+unsigned int gen_bso52_len = 4;
+unsigned char gen_bso53[] = {
+ 0x49, 0xc1, 0xe8, 0x35
+};
+unsigned int gen_bso53_len = 4;
+unsigned char gen_bso54[] = {
+ 0x49, 0xc1, 0xe8, 0x36
+};
+unsigned int gen_bso54_len = 4;
+unsigned char gen_bso55[] = {
+ 0x49, 0xc1, 0xe8, 0x37
+};
+unsigned int gen_bso55_len = 4;
+unsigned char gen_bso56[] = {
+ 0x49, 0xc1, 0xe8, 0x38
+};
+unsigned int gen_bso56_len = 4;
+unsigned char gen_bso57[] = {
+ 0x49, 0xc1, 0xe8, 0x39
+};
+unsigned int gen_bso57_len = 4;
+unsigned char gen_bso58[] = {
+ 0x49, 0xc1, 0xe8, 0x3a
+};
+unsigned int gen_bso58_len = 4;
+unsigned char gen_bso59[] = {
+ 0x49, 0xc1, 0xe8, 0x3b
+};
+unsigned int gen_bso59_len = 4;
+unsigned char gen_bso6[] = {
+ 0x49, 0xc1, 0xe8, 0x06
+};
+unsigned int gen_bso6_len = 4;
+unsigned char gen_bso60[] = {
+ 0x49, 0xc1, 0xe8, 0x3c
+};
+unsigned int gen_bso60_len = 4;
+unsigned char gen_bso61[] = {
+ 0x49, 0xc1, 0xe8, 0x3d
+};
+unsigned int gen_bso61_len = 4;
+unsigned char gen_bso62[] = {
+ 0x49, 0xc1, 0xe8, 0x3e
+};
+unsigned int gen_bso62_len = 4;
+unsigned char gen_bso63[] = {
+ 0x49, 0xc1, 0xe8, 0x3f
+};
+unsigned int gen_bso63_len = 4;
+unsigned char gen_bso7[] = {
+ 0x49, 0xc1, 0xe8, 0x07
+};
+unsigned int gen_bso7_len = 4;
+unsigned char gen_bso8[] = {
+ 0x49, 0xc1, 0xe8, 0x08
+};
+unsigned int gen_bso8_len = 4;
+unsigned char gen_bso9[] = {
+ 0x49, 0xc1, 0xe8, 0x09
+};
+unsigned int gen_bso9_len = 4;
+unsigned char gen_bsx0[] = {
+};
+unsigned int gen_bsx0_len = 0;
+unsigned char gen_bsx1[] = {
+ 0x48, 0xd1, 0xea
+};
+unsigned int gen_bsx1_len = 3;
+unsigned char gen_bsx10[] = {
+ 0x48, 0xc1, 0xea, 0x0a
+};
+unsigned int gen_bsx10_len = 4;
+unsigned char gen_bsx11[] = {
+ 0x48, 0xc1, 0xea, 0x0b
+};
+unsigned int gen_bsx11_len = 4;
+unsigned char gen_bsx12[] = {
+ 0x48, 0xc1, 0xea, 0x0c
+};
+unsigned int gen_bsx12_len = 4;
+unsigned char gen_bsx13[] = {
+ 0x48, 0xc1, 0xea, 0x0d
+};
+unsigned int gen_bsx13_len = 4;
+unsigned char gen_bsx14[] = {
+ 0x48, 0xc1, 0xea, 0x0e
+};
+unsigned int gen_bsx14_len = 4;
+unsigned char gen_bsx15[] = {
+ 0x48, 0xc1, 0xea, 0x0f
+};
+unsigned int gen_bsx15_len = 4;
+unsigned char gen_bsx16[] = {
+ 0x48, 0xc1, 0xea, 0x10
+};
+unsigned int gen_bsx16_len = 4;
+unsigned char gen_bsx17[] = {
+ 0x48, 0xc1, 0xea, 0x11
+};
+unsigned int gen_bsx17_len = 4;
+unsigned char gen_bsx18[] = {
+ 0x48, 0xc1, 0xea, 0x12
+};
+unsigned int gen_bsx18_len = 4;
+unsigned char gen_bsx19[] = {
+ 0x48, 0xc1, 0xea, 0x13
+};
+unsigned int gen_bsx19_len = 4;
+unsigned char gen_bsx2[] = {
+ 0x48, 0xc1, 0xea, 0x02
+};
+unsigned int gen_bsx2_len = 4;
+unsigned char gen_bsx20[] = {
+ 0x48, 0xc1, 0xea, 0x14
+};
+unsigned int gen_bsx20_len = 4;
+unsigned char gen_bsx21[] = {
+ 0x48, 0xc1, 0xea, 0x15
+};
+unsigned int gen_bsx21_len = 4;
+unsigned char gen_bsx22[] = {
+ 0x48, 0xc1, 0xea, 0x16
+};
+unsigned int gen_bsx22_len = 4;
+unsigned char gen_bsx23[] = {
+ 0x48, 0xc1, 0xea, 0x17
+};
+unsigned int gen_bsx23_len = 4;
+unsigned char gen_bsx24[] = {
+ 0x48, 0xc1, 0xea, 0x18
+};
+unsigned int gen_bsx24_len = 4;
+unsigned char gen_bsx25[] = {
+ 0x48, 0xc1, 0xea, 0x19
+};
+unsigned int gen_bsx25_len = 4;
+unsigned char gen_bsx26[] = {
+ 0x48, 0xc1, 0xea, 0x1a
+};
+unsigned int gen_bsx26_len = 4;
+unsigned char gen_bsx27[] = {
+ 0x48, 0xc1, 0xea, 0x1b
+};
+unsigned int gen_bsx27_len = 4;
+unsigned char gen_bsx28[] = {
+ 0x48, 0xc1, 0xea, 0x1c
+};
+unsigned int gen_bsx28_len = 4;
+unsigned char gen_bsx29[] = {
+ 0x48, 0xc1, 0xea, 0x1d
+};
+unsigned int gen_bsx29_len = 4;
+unsigned char gen_bsx3[] = {
+ 0x48, 0xc1, 0xea, 0x03
+};
+unsigned int gen_bsx3_len = 4;
+unsigned char gen_bsx30[] = {
+ 0x48, 0xc1, 0xea, 0x1e
+};
+unsigned int gen_bsx30_len = 4;
+unsigned char gen_bsx31[] = {
+ 0x48, 0xc1, 0xea, 0x1f
+};
+unsigned int gen_bsx31_len = 4;
+unsigned char gen_bsx32[] = {
+ 0x48, 0xc1, 0xea, 0x20
+};
+unsigned int gen_bsx32_len = 4;
+unsigned char gen_bsx33[] = {
+ 0x48, 0xc1, 0xea, 0x21
+};
+unsigned int gen_bsx33_len = 4;
+unsigned char gen_bsx34[] = {
+ 0x48, 0xc1, 0xea, 0x22
+};
+unsigned int gen_bsx34_len = 4;
+unsigned char gen_bsx35[] = {
+ 0x48, 0xc1, 0xea, 0x23
+};
+unsigned int gen_bsx35_len = 4;
+unsigned char gen_bsx36[] = {
+ 0x48, 0xc1, 0xea, 0x24
+};
+unsigned int gen_bsx36_len = 4;
+unsigned char gen_bsx37[] = {
+ 0x48, 0xc1, 0xea, 0x25
+};
+unsigned int gen_bsx37_len = 4;
+unsigned char gen_bsx38[] = {
+ 0x48, 0xc1, 0xea, 0x26
+};
+unsigned int gen_bsx38_len = 4;
+unsigned char gen_bsx39[] = {
+ 0x48, 0xc1, 0xea, 0x27
+};
+unsigned int gen_bsx39_len = 4;
+unsigned char gen_bsx4[] = {
+ 0x48, 0xc1, 0xea, 0x04
+};
+unsigned int gen_bsx4_len = 4;
+unsigned char gen_bsx40[] = {
+ 0x48, 0xc1, 0xea, 0x28
+};
+unsigned int gen_bsx40_len = 4;
+unsigned char gen_bsx41[] = {
+ 0x48, 0xc1, 0xea, 0x29
+};
+unsigned int gen_bsx41_len = 4;
+unsigned char gen_bsx42[] = {
+ 0x48, 0xc1, 0xea, 0x2a
+};
+unsigned int gen_bsx42_len = 4;
+unsigned char gen_bsx43[] = {
+ 0x48, 0xc1, 0xea, 0x2b
+};
+unsigned int gen_bsx43_len = 4;
+unsigned char gen_bsx44[] = {
+ 0x48, 0xc1, 0xea, 0x2c
+};
+unsigned int gen_bsx44_len = 4;
+unsigned char gen_bsx45[] = {
+ 0x48, 0xc1, 0xea, 0x2d
+};
+unsigned int gen_bsx45_len = 4;
+unsigned char gen_bsx46[] = {
+ 0x48, 0xc1, 0xea, 0x2e
+};
+unsigned int gen_bsx46_len = 4;
+unsigned char gen_bsx47[] = {
+ 0x48, 0xc1, 0xea, 0x2f
+};
+unsigned int gen_bsx47_len = 4;
+unsigned char gen_bsx48[] = {
+ 0x48, 0xc1, 0xea, 0x30
+};
+unsigned int gen_bsx48_len = 4;
+unsigned char gen_bsx49[] = {
+ 0x48, 0xc1, 0xea, 0x31
+};
+unsigned int gen_bsx49_len = 4;
+unsigned char gen_bsx5[] = {
+ 0x48, 0xc1, 0xea, 0x05
+};
+unsigned int gen_bsx5_len = 4;
+unsigned char gen_bsx50[] = {
+ 0x48, 0xc1, 0xea, 0x32
+};
+unsigned int gen_bsx50_len = 4;
+unsigned char gen_bsx51[] = {
+ 0x48, 0xc1, 0xea, 0x33
+};
+unsigned int gen_bsx51_len = 4;
+unsigned char gen_bsx52[] = {
+ 0x48, 0xc1, 0xea, 0x34
+};
+unsigned int gen_bsx52_len = 4;
+unsigned char gen_bsx53[] = {
+ 0x48, 0xc1, 0xea, 0x35
+};
+unsigned int gen_bsx53_len = 4;
+unsigned char gen_bsx54[] = {
+ 0x48, 0xc1, 0xea, 0x36
+};
+unsigned int gen_bsx54_len = 4;
+unsigned char gen_bsx55[] = {
+ 0x48, 0xc1, 0xea, 0x37
+};
+unsigned int gen_bsx55_len = 4;
+unsigned char gen_bsx56[] = {
+ 0x48, 0xc1, 0xea, 0x38
+};
+unsigned int gen_bsx56_len = 4;
+unsigned char gen_bsx57[] = {
+ 0x48, 0xc1, 0xea, 0x39
+};
+unsigned int gen_bsx57_len = 4;
+unsigned char gen_bsx58[] = {
+ 0x48, 0xc1, 0xea, 0x3a
+};
+unsigned int gen_bsx58_len = 4;
+unsigned char gen_bsx59[] = {
+ 0x48, 0xc1, 0xea, 0x3b
+};
+unsigned int gen_bsx59_len = 4;
+unsigned char gen_bsx6[] = {
+ 0x48, 0xc1, 0xea, 0x06
+};
+unsigned int gen_bsx6_len = 4;
+unsigned char gen_bsx60[] = {
+ 0x48, 0xc1, 0xea, 0x3c
+};
+unsigned int gen_bsx60_len = 4;
+unsigned char gen_bsx61[] = {
+ 0x48, 0xc1, 0xea, 0x3d
+};
+unsigned int gen_bsx61_len = 4;
+unsigned char gen_bsx62[] = {
+ 0x48, 0xc1, 0xea, 0x3e
+};
+unsigned int gen_bsx62_len = 4;
+unsigned char gen_bsx63[] = {
+ 0x48, 0xc1, 0xea, 0x3f
+};
+unsigned int gen_bsx63_len = 4;
+unsigned char gen_bsx7[] = {
+ 0x48, 0xc1, 0xea, 0x07
+};
+unsigned int gen_bsx7_len = 4;
+unsigned char gen_bsx8[] = {
+ 0x48, 0xc1, 0xea, 0x08
+};
+unsigned int gen_bsx8_len = 4;
+unsigned char gen_bsx9[] = {
+ 0x48, 0xc1, 0xea, 0x09
+};
+unsigned int gen_bsx9_len = 4;
+unsigned char gen_bsy0[] = {
+};
+unsigned int gen_bsy0_len = 0;
+unsigned char gen_bsy1[] = {
+ 0x48, 0xd1, 0xe9
+};
+unsigned int gen_bsy1_len = 3;
+unsigned char gen_bsy10[] = {
+ 0x48, 0xc1, 0xe9, 0x0a
+};
+unsigned int gen_bsy10_len = 4;
+unsigned char gen_bsy11[] = {
+ 0x48, 0xc1, 0xe9, 0x0b
+};
+unsigned int gen_bsy11_len = 4;
+unsigned char gen_bsy12[] = {
+ 0x48, 0xc1, 0xe9, 0x0c
+};
+unsigned int gen_bsy12_len = 4;
+unsigned char gen_bsy13[] = {
+ 0x48, 0xc1, 0xe9, 0x0d
+};
+unsigned int gen_bsy13_len = 4;
+unsigned char gen_bsy14[] = {
+ 0x48, 0xc1, 0xe9, 0x0e
+};
+unsigned int gen_bsy14_len = 4;
+unsigned char gen_bsy15[] = {
+ 0x48, 0xc1, 0xe9, 0x0f
+};
+unsigned int gen_bsy15_len = 4;
+unsigned char gen_bsy16[] = {
+ 0x48, 0xc1, 0xe9, 0x10
+};
+unsigned int gen_bsy16_len = 4;
+unsigned char gen_bsy17[] = {
+ 0x48, 0xc1, 0xe9, 0x11
+};
+unsigned int gen_bsy17_len = 4;
+unsigned char gen_bsy18[] = {
+ 0x48, 0xc1, 0xe9, 0x12
+};
+unsigned int gen_bsy18_len = 4;
+unsigned char gen_bsy19[] = {
+ 0x48, 0xc1, 0xe9, 0x13
+};
+unsigned int gen_bsy19_len = 4;
+unsigned char gen_bsy2[] = {
+ 0x48, 0xc1, 0xe9, 0x02
+};
+unsigned int gen_bsy2_len = 4;
+unsigned char gen_bsy20[] = {
+ 0x48, 0xc1, 0xe9, 0x14
+};
+unsigned int gen_bsy20_len = 4;
+unsigned char gen_bsy21[] = {
+ 0x48, 0xc1, 0xe9, 0x15
+};
+unsigned int gen_bsy21_len = 4;
+unsigned char gen_bsy22[] = {
+ 0x48, 0xc1, 0xe9, 0x16
+};
+unsigned int gen_bsy22_len = 4;
+unsigned char gen_bsy23[] = {
+ 0x48, 0xc1, 0xe9, 0x17
+};
+unsigned int gen_bsy23_len = 4;
+unsigned char gen_bsy24[] = {
+ 0x48, 0xc1, 0xe9, 0x18
+};
+unsigned int gen_bsy24_len = 4;
+unsigned char gen_bsy25[] = {
+ 0x48, 0xc1, 0xe9, 0x19
+};
+unsigned int gen_bsy25_len = 4;
+unsigned char gen_bsy26[] = {
+ 0x48, 0xc1, 0xe9, 0x1a
+};
+unsigned int gen_bsy26_len = 4;
+unsigned char gen_bsy27[] = {
+ 0x48, 0xc1, 0xe9, 0x1b
+};
+unsigned int gen_bsy27_len = 4;
+unsigned char gen_bsy28[] = {
+ 0x48, 0xc1, 0xe9, 0x1c
+};
+unsigned int gen_bsy28_len = 4;
+unsigned char gen_bsy29[] = {
+ 0x48, 0xc1, 0xe9, 0x1d
+};
+unsigned int gen_bsy29_len = 4;
+unsigned char gen_bsy3[] = {
+ 0x48, 0xc1, 0xe9, 0x03
+};
+unsigned int gen_bsy3_len = 4;
+unsigned char gen_bsy30[] = {
+ 0x48, 0xc1, 0xe9, 0x1e
+};
+unsigned int gen_bsy30_len = 4;
+unsigned char gen_bsy31[] = {
+ 0x48, 0xc1, 0xe9, 0x1f
+};
+unsigned int gen_bsy31_len = 4;
+unsigned char gen_bsy32[] = {
+ 0x48, 0xc1, 0xe9, 0x20
+};
+unsigned int gen_bsy32_len = 4;
+unsigned char gen_bsy33[] = {
+ 0x48, 0xc1, 0xe9, 0x21
+};
+unsigned int gen_bsy33_len = 4;
+unsigned char gen_bsy34[] = {
+ 0x48, 0xc1, 0xe9, 0x22
+};
+unsigned int gen_bsy34_len = 4;
+unsigned char gen_bsy35[] = {
+ 0x48, 0xc1, 0xe9, 0x23
+};
+unsigned int gen_bsy35_len = 4;
+unsigned char gen_bsy36[] = {
+ 0x48, 0xc1, 0xe9, 0x24
+};
+unsigned int gen_bsy36_len = 4;
+unsigned char gen_bsy37[] = {
+ 0x48, 0xc1, 0xe9, 0x25
+};
+unsigned int gen_bsy37_len = 4;
+unsigned char gen_bsy38[] = {
+ 0x48, 0xc1, 0xe9, 0x26
+};
+unsigned int gen_bsy38_len = 4;
+unsigned char gen_bsy39[] = {
+ 0x48, 0xc1, 0xe9, 0x27
+};
+unsigned int gen_bsy39_len = 4;
+unsigned char gen_bsy4[] = {
+ 0x48, 0xc1, 0xe9, 0x04
+};
+unsigned int gen_bsy4_len = 4;
+unsigned char gen_bsy40[] = {
+ 0x48, 0xc1, 0xe9, 0x28
+};
+unsigned int gen_bsy40_len = 4;
+unsigned char gen_bsy41[] = {
+ 0x48, 0xc1, 0xe9, 0x29
+};
+unsigned int gen_bsy41_len = 4;
+unsigned char gen_bsy42[] = {
+ 0x48, 0xc1, 0xe9, 0x2a
+};
+unsigned int gen_bsy42_len = 4;
+unsigned char gen_bsy43[] = {
+ 0x48, 0xc1, 0xe9, 0x2b
+};
+unsigned int gen_bsy43_len = 4;
+unsigned char gen_bsy44[] = {
+ 0x48, 0xc1, 0xe9, 0x2c
+};
+unsigned int gen_bsy44_len = 4;
+unsigned char gen_bsy45[] = {
+ 0x48, 0xc1, 0xe9, 0x2d
+};
+unsigned int gen_bsy45_len = 4;
+unsigned char gen_bsy46[] = {
+ 0x48, 0xc1, 0xe9, 0x2e
+};
+unsigned int gen_bsy46_len = 4;
+unsigned char gen_bsy47[] = {
+ 0x48, 0xc1, 0xe9, 0x2f
+};
+unsigned int gen_bsy47_len = 4;
+unsigned char gen_bsy48[] = {
+ 0x48, 0xc1, 0xe9, 0x30
+};
+unsigned int gen_bsy48_len = 4;
+unsigned char gen_bsy49[] = {
+ 0x48, 0xc1, 0xe9, 0x31
+};
+unsigned int gen_bsy49_len = 4;
+unsigned char gen_bsy5[] = {
+ 0x48, 0xc1, 0xe9, 0x05
+};
+unsigned int gen_bsy5_len = 4;
+unsigned char gen_bsy50[] = {
+ 0x48, 0xc1, 0xe9, 0x32
+};
+unsigned int gen_bsy50_len = 4;
+unsigned char gen_bsy51[] = {
+ 0x48, 0xc1, 0xe9, 0x33
+};
+unsigned int gen_bsy51_len = 4;
+unsigned char gen_bsy52[] = {
+ 0x48, 0xc1, 0xe9, 0x34
+};
+unsigned int gen_bsy52_len = 4;
+unsigned char gen_bsy53[] = {
+ 0x48, 0xc1, 0xe9, 0x35
+};
+unsigned int gen_bsy53_len = 4;
+unsigned char gen_bsy54[] = {
+ 0x48, 0xc1, 0xe9, 0x36
+};
+unsigned int gen_bsy54_len = 4;
+unsigned char gen_bsy55[] = {
+ 0x48, 0xc1, 0xe9, 0x37
+};
+unsigned int gen_bsy55_len = 4;
+unsigned char gen_bsy56[] = {
+ 0x48, 0xc1, 0xe9, 0x38
+};
+unsigned int gen_bsy56_len = 4;
+unsigned char gen_bsy57[] = {
+ 0x48, 0xc1, 0xe9, 0x39
+};
+unsigned int gen_bsy57_len = 4;
+unsigned char gen_bsy58[] = {
+ 0x48, 0xc1, 0xe9, 0x3a
+};
+unsigned int gen_bsy58_len = 4;
+unsigned char gen_bsy59[] = {
+ 0x48, 0xc1, 0xe9, 0x3b
+};
+unsigned int gen_bsy59_len = 4;
+unsigned char gen_bsy6[] = {
+ 0x48, 0xc1, 0xe9, 0x06
+};
+unsigned int gen_bsy6_len = 4;
+unsigned char gen_bsy60[] = {
+ 0x48, 0xc1, 0xe9, 0x3c
+};
+unsigned int gen_bsy60_len = 4;
+unsigned char gen_bsy61[] = {
+ 0x48, 0xc1, 0xe9, 0x3d
+};
+unsigned int gen_bsy61_len = 4;
+unsigned char gen_bsy62[] = {
+ 0x48, 0xc1, 0xe9, 0x3e
+};
+unsigned int gen_bsy62_len = 4;
+unsigned char gen_bsy63[] = {
+ 0x48, 0xc1, 0xe9, 0x3f
+};
+unsigned int gen_bsy63_len = 4;
+unsigned char gen_bsy7[] = {
+ 0x48, 0xc1, 0xe9, 0x07
+};
+unsigned int gen_bsy7_len = 4;
+unsigned char gen_bsy8[] = {
+ 0x48, 0xc1, 0xe9, 0x08
+};
+unsigned int gen_bsy8_len = 4;
+unsigned char gen_bsy9[] = {
+ 0x48, 0xc1, 0xe9, 0x09
+};
+unsigned int gen_bsy9_len = 4;
+unsigned char gen_li0[] = {
+ 0x45, 0x31, 0xc0
+};
+unsigned int gen_li0_len = 3;
+unsigned char gen_li1[] = {
+ 0x41, 0xb8, 0x01, 0x00, 0x00, 0x00
+};
+unsigned int gen_li1_len = 6;
+unsigned char gen_li10[] = {
+ 0x41, 0xb8, 0x0a, 0x00, 0x00, 0x00
+};
+unsigned int gen_li10_len = 6;
+unsigned char gen_li100[] = {
+ 0x41, 0xb8, 0x64, 0x00, 0x00, 0x00
+};
+unsigned int gen_li100_len = 6;
+unsigned char gen_li101[] = {
+ 0x41, 0xb8, 0x65, 0x00, 0x00, 0x00
+};
+unsigned int gen_li101_len = 6;
+unsigned char gen_li102[] = {
+ 0x41, 0xb8, 0x66, 0x00, 0x00, 0x00
+};
+unsigned int gen_li102_len = 6;
+unsigned char gen_li103[] = {
+ 0x41, 0xb8, 0x67, 0x00, 0x00, 0x00
+};
+unsigned int gen_li103_len = 6;
+unsigned char gen_li104[] = {
+ 0x41, 0xb8, 0x68, 0x00, 0x00, 0x00
+};
+unsigned int gen_li104_len = 6;
+unsigned char gen_li105[] = {
+ 0x41, 0xb8, 0x69, 0x00, 0x00, 0x00
+};
+unsigned int gen_li105_len = 6;
+unsigned char gen_li106[] = {
+ 0x41, 0xb8, 0x6a, 0x00, 0x00, 0x00
+};
+unsigned int gen_li106_len = 6;
+unsigned char gen_li107[] = {
+ 0x41, 0xb8, 0x6b, 0x00, 0x00, 0x00
+};
+unsigned int gen_li107_len = 6;
+unsigned char gen_li108[] = {
+ 0x41, 0xb8, 0x6c, 0x00, 0x00, 0x00
+};
+unsigned int gen_li108_len = 6;
+unsigned char gen_li109[] = {
+ 0x41, 0xb8, 0x6d, 0x00, 0x00, 0x00
+};
+unsigned int gen_li109_len = 6;
+unsigned char gen_li11[] = {
+ 0x41, 0xb8, 0x0b, 0x00, 0x00, 0x00
+};
+unsigned int gen_li11_len = 6;
+unsigned char gen_li110[] = {
+ 0x41, 0xb8, 0x6e, 0x00, 0x00, 0x00
+};
+unsigned int gen_li110_len = 6;
+unsigned char gen_li111[] = {
+ 0x41, 0xb8, 0x6f, 0x00, 0x00, 0x00
+};
+unsigned int gen_li111_len = 6;
+unsigned char gen_li112[] = {
+ 0x41, 0xb8, 0x70, 0x00, 0x00, 0x00
+};
+unsigned int gen_li112_len = 6;
+unsigned char gen_li113[] = {
+ 0x41, 0xb8, 0x71, 0x00, 0x00, 0x00
+};
+unsigned int gen_li113_len = 6;
+unsigned char gen_li114[] = {
+ 0x41, 0xb8, 0x72, 0x00, 0x00, 0x00
+};
+unsigned int gen_li114_len = 6;
+unsigned char gen_li115[] = {
+ 0x41, 0xb8, 0x73, 0x00, 0x00, 0x00
+};
+unsigned int gen_li115_len = 6;
+unsigned char gen_li116[] = {
+ 0x41, 0xb8, 0x74, 0x00, 0x00, 0x00
+};
+unsigned int gen_li116_len = 6;
+unsigned char gen_li117[] = {
+ 0x41, 0xb8, 0x75, 0x00, 0x00, 0x00
+};
+unsigned int gen_li117_len = 6;
+unsigned char gen_li118[] = {
+ 0x41, 0xb8, 0x76, 0x00, 0x00, 0x00
+};
+unsigned int gen_li118_len = 6;
+unsigned char gen_li119[] = {
+ 0x41, 0xb8, 0x77, 0x00, 0x00, 0x00
+};
+unsigned int gen_li119_len = 6;
+unsigned char gen_li12[] = {
+ 0x41, 0xb8, 0x0c, 0x00, 0x00, 0x00
+};
+unsigned int gen_li12_len = 6;
+unsigned char gen_li120[] = {
+ 0x41, 0xb8, 0x78, 0x00, 0x00, 0x00
+};
+unsigned int gen_li120_len = 6;
+unsigned char gen_li121[] = {
+ 0x41, 0xb8, 0x79, 0x00, 0x00, 0x00
+};
+unsigned int gen_li121_len = 6;
+unsigned char gen_li122[] = {
+ 0x41, 0xb8, 0x7a, 0x00, 0x00, 0x00
+};
+unsigned int gen_li122_len = 6;
+unsigned char gen_li123[] = {
+ 0x41, 0xb8, 0x7b, 0x00, 0x00, 0x00
+};
+unsigned int gen_li123_len = 6;
+unsigned char gen_li124[] = {
+ 0x41, 0xb8, 0x7c, 0x00, 0x00, 0x00
+};
+unsigned int gen_li124_len = 6;
+unsigned char gen_li125[] = {
+ 0x41, 0xb8, 0x7d, 0x00, 0x00, 0x00
+};
+unsigned int gen_li125_len = 6;
+unsigned char gen_li126[] = {
+ 0x41, 0xb8, 0x7e, 0x00, 0x00, 0x00
+};
+unsigned int gen_li126_len = 6;
+unsigned char gen_li127[] = {
+ 0x41, 0xb8, 0x7f, 0x00, 0x00, 0x00
+};
+unsigned int gen_li127_len = 6;
+unsigned char gen_li128[] = {
+ 0x41, 0xb8, 0x80, 0x00, 0x00, 0x00
+};
+unsigned int gen_li128_len = 6;
+unsigned char gen_li129[] = {
+ 0x41, 0xb8, 0x81, 0x00, 0x00, 0x00
+};
+unsigned int gen_li129_len = 6;
+unsigned char gen_li13[] = {
+ 0x41, 0xb8, 0x0d, 0x00, 0x00, 0x00
+};
+unsigned int gen_li13_len = 6;
+unsigned char gen_li130[] = {
+ 0x41, 0xb8, 0x82, 0x00, 0x00, 0x00
+};
+unsigned int gen_li130_len = 6;
+unsigned char gen_li131[] = {
+ 0x41, 0xb8, 0x83, 0x00, 0x00, 0x00
+};
+unsigned int gen_li131_len = 6;
+unsigned char gen_li132[] = {
+ 0x41, 0xb8, 0x84, 0x00, 0x00, 0x00
+};
+unsigned int gen_li132_len = 6;
+unsigned char gen_li133[] = {
+ 0x41, 0xb8, 0x85, 0x00, 0x00, 0x00
+};
+unsigned int gen_li133_len = 6;
+unsigned char gen_li134[] = {
+ 0x41, 0xb8, 0x86, 0x00, 0x00, 0x00
+};
+unsigned int gen_li134_len = 6;
+unsigned char gen_li135[] = {
+ 0x41, 0xb8, 0x87, 0x00, 0x00, 0x00
+};
+unsigned int gen_li135_len = 6;
+unsigned char gen_li136[] = {
+ 0x41, 0xb8, 0x88, 0x00, 0x00, 0x00
+};
+unsigned int gen_li136_len = 6;
+unsigned char gen_li137[] = {
+ 0x41, 0xb8, 0x89, 0x00, 0x00, 0x00
+};
+unsigned int gen_li137_len = 6;
+unsigned char gen_li138[] = {
+ 0x41, 0xb8, 0x8a, 0x00, 0x00, 0x00
+};
+unsigned int gen_li138_len = 6;
+unsigned char gen_li139[] = {
+ 0x41, 0xb8, 0x8b, 0x00, 0x00, 0x00
+};
+unsigned int gen_li139_len = 6;
+unsigned char gen_li14[] = {
+ 0x41, 0xb8, 0x0e, 0x00, 0x00, 0x00
+};
+unsigned int gen_li14_len = 6;
+unsigned char gen_li140[] = {
+ 0x41, 0xb8, 0x8c, 0x00, 0x00, 0x00
+};
+unsigned int gen_li140_len = 6;
+unsigned char gen_li141[] = {
+ 0x41, 0xb8, 0x8d, 0x00, 0x00, 0x00
+};
+unsigned int gen_li141_len = 6;
+unsigned char gen_li142[] = {
+ 0x41, 0xb8, 0x8e, 0x00, 0x00, 0x00
+};
+unsigned int gen_li142_len = 6;
+unsigned char gen_li143[] = {
+ 0x41, 0xb8, 0x8f, 0x00, 0x00, 0x00
+};
+unsigned int gen_li143_len = 6;
+unsigned char gen_li144[] = {
+ 0x41, 0xb8, 0x90, 0x00, 0x00, 0x00
+};
+unsigned int gen_li144_len = 6;
+unsigned char gen_li145[] = {
+ 0x41, 0xb8, 0x91, 0x00, 0x00, 0x00
+};
+unsigned int gen_li145_len = 6;
+unsigned char gen_li146[] = {
+ 0x41, 0xb8, 0x92, 0x00, 0x00, 0x00
+};
+unsigned int gen_li146_len = 6;
+unsigned char gen_li147[] = {
+ 0x41, 0xb8, 0x93, 0x00, 0x00, 0x00
+};
+unsigned int gen_li147_len = 6;
+unsigned char gen_li148[] = {
+ 0x41, 0xb8, 0x94, 0x00, 0x00, 0x00
+};
+unsigned int gen_li148_len = 6;
+unsigned char gen_li149[] = {
+ 0x41, 0xb8, 0x95, 0x00, 0x00, 0x00
+};
+unsigned int gen_li149_len = 6;
+unsigned char gen_li15[] = {
+ 0x41, 0xb8, 0x0f, 0x00, 0x00, 0x00
+};
+unsigned int gen_li15_len = 6;
+unsigned char gen_li150[] = {
+ 0x41, 0xb8, 0x96, 0x00, 0x00, 0x00
+};
+unsigned int gen_li150_len = 6;
+unsigned char gen_li151[] = {
+ 0x41, 0xb8, 0x97, 0x00, 0x00, 0x00
+};
+unsigned int gen_li151_len = 6;
+unsigned char gen_li152[] = {
+ 0x41, 0xb8, 0x98, 0x00, 0x00, 0x00
+};
+unsigned int gen_li152_len = 6;
+unsigned char gen_li153[] = {
+ 0x41, 0xb8, 0x99, 0x00, 0x00, 0x00
+};
+unsigned int gen_li153_len = 6;
+unsigned char gen_li154[] = {
+ 0x41, 0xb8, 0x9a, 0x00, 0x00, 0x00
+};
+unsigned int gen_li154_len = 6;
+unsigned char gen_li155[] = {
+ 0x41, 0xb8, 0x9b, 0x00, 0x00, 0x00
+};
+unsigned int gen_li155_len = 6;
+unsigned char gen_li156[] = {
+ 0x41, 0xb8, 0x9c, 0x00, 0x00, 0x00
+};
+unsigned int gen_li156_len = 6;
+unsigned char gen_li157[] = {
+ 0x41, 0xb8, 0x9d, 0x00, 0x00, 0x00
+};
+unsigned int gen_li157_len = 6;
+unsigned char gen_li158[] = {
+ 0x41, 0xb8, 0x9e, 0x00, 0x00, 0x00
+};
+unsigned int gen_li158_len = 6;
+unsigned char gen_li159[] = {
+ 0x41, 0xb8, 0x9f, 0x00, 0x00, 0x00
+};
+unsigned int gen_li159_len = 6;
+unsigned char gen_li16[] = {
+ 0x41, 0xb8, 0x10, 0x00, 0x00, 0x00
+};
+unsigned int gen_li16_len = 6;
+unsigned char gen_li160[] = {
+ 0x41, 0xb8, 0xa0, 0x00, 0x00, 0x00
+};
+unsigned int gen_li160_len = 6;
+unsigned char gen_li161[] = {
+ 0x41, 0xb8, 0xa1, 0x00, 0x00, 0x00
+};
+unsigned int gen_li161_len = 6;
+unsigned char gen_li162[] = {
+ 0x41, 0xb8, 0xa2, 0x00, 0x00, 0x00
+};
+unsigned int gen_li162_len = 6;
+unsigned char gen_li163[] = {
+ 0x41, 0xb8, 0xa3, 0x00, 0x00, 0x00
+};
+unsigned int gen_li163_len = 6;
+unsigned char gen_li164[] = {
+ 0x41, 0xb8, 0xa4, 0x00, 0x00, 0x00
+};
+unsigned int gen_li164_len = 6;
+unsigned char gen_li165[] = {
+ 0x41, 0xb8, 0xa5, 0x00, 0x00, 0x00
+};
+unsigned int gen_li165_len = 6;
+unsigned char gen_li166[] = {
+ 0x41, 0xb8, 0xa6, 0x00, 0x00, 0x00
+};
+unsigned int gen_li166_len = 6;
+unsigned char gen_li167[] = {
+ 0x41, 0xb8, 0xa7, 0x00, 0x00, 0x00
+};
+unsigned int gen_li167_len = 6;
+unsigned char gen_li168[] = {
+ 0x41, 0xb8, 0xa8, 0x00, 0x00, 0x00
+};
+unsigned int gen_li168_len = 6;
+unsigned char gen_li169[] = {
+ 0x41, 0xb8, 0xa9, 0x00, 0x00, 0x00
+};
+unsigned int gen_li169_len = 6;
+unsigned char gen_li17[] = {
+ 0x41, 0xb8, 0x11, 0x00, 0x00, 0x00
+};
+unsigned int gen_li17_len = 6;
+unsigned char gen_li170[] = {
+ 0x41, 0xb8, 0xaa, 0x00, 0x00, 0x00
+};
+unsigned int gen_li170_len = 6;
+unsigned char gen_li171[] = {
+ 0x41, 0xb8, 0xab, 0x00, 0x00, 0x00
+};
+unsigned int gen_li171_len = 6;
+unsigned char gen_li172[] = {
+ 0x41, 0xb8, 0xac, 0x00, 0x00, 0x00
+};
+unsigned int gen_li172_len = 6;
+unsigned char gen_li173[] = {
+ 0x41, 0xb8, 0xad, 0x00, 0x00, 0x00
+};
+unsigned int gen_li173_len = 6;
+unsigned char gen_li174[] = {
+ 0x41, 0xb8, 0xae, 0x00, 0x00, 0x00
+};
+unsigned int gen_li174_len = 6;
+unsigned char gen_li175[] = {
+ 0x41, 0xb8, 0xaf, 0x00, 0x00, 0x00
+};
+unsigned int gen_li175_len = 6;
+unsigned char gen_li176[] = {
+ 0x41, 0xb8, 0xb0, 0x00, 0x00, 0x00
+};
+unsigned int gen_li176_len = 6;
+unsigned char gen_li177[] = {
+ 0x41, 0xb8, 0xb1, 0x00, 0x00, 0x00
+};
+unsigned int gen_li177_len = 6;
+unsigned char gen_li178[] = {
+ 0x41, 0xb8, 0xb2, 0x00, 0x00, 0x00
+};
+unsigned int gen_li178_len = 6;
+unsigned char gen_li179[] = {
+ 0x41, 0xb8, 0xb3, 0x00, 0x00, 0x00
+};
+unsigned int gen_li179_len = 6;
+unsigned char gen_li18[] = {
+ 0x41, 0xb8, 0x12, 0x00, 0x00, 0x00
+};
+unsigned int gen_li18_len = 6;
+unsigned char gen_li180[] = {
+ 0x41, 0xb8, 0xb4, 0x00, 0x00, 0x00
+};
+unsigned int gen_li180_len = 6;
+unsigned char gen_li181[] = {
+ 0x41, 0xb8, 0xb5, 0x00, 0x00, 0x00
+};
+unsigned int gen_li181_len = 6;
+unsigned char gen_li182[] = {
+ 0x41, 0xb8, 0xb6, 0x00, 0x00, 0x00
+};
+unsigned int gen_li182_len = 6;
+unsigned char gen_li183[] = {
+ 0x41, 0xb8, 0xb7, 0x00, 0x00, 0x00
+};
+unsigned int gen_li183_len = 6;
+unsigned char gen_li184[] = {
+ 0x41, 0xb8, 0xb8, 0x00, 0x00, 0x00
+};
+unsigned int gen_li184_len = 6;
+unsigned char gen_li185[] = {
+ 0x41, 0xb8, 0xb9, 0x00, 0x00, 0x00
+};
+unsigned int gen_li185_len = 6;
+unsigned char gen_li186[] = {
+ 0x41, 0xb8, 0xba, 0x00, 0x00, 0x00
+};
+unsigned int gen_li186_len = 6;
+unsigned char gen_li187[] = {
+ 0x41, 0xb8, 0xbb, 0x00, 0x00, 0x00
+};
+unsigned int gen_li187_len = 6;
+unsigned char gen_li188[] = {
+ 0x41, 0xb8, 0xbc, 0x00, 0x00, 0x00
+};
+unsigned int gen_li188_len = 6;
+unsigned char gen_li189[] = {
+ 0x41, 0xb8, 0xbd, 0x00, 0x00, 0x00
+};
+unsigned int gen_li189_len = 6;
+unsigned char gen_li19[] = {
+ 0x41, 0xb8, 0x13, 0x00, 0x00, 0x00
+};
+unsigned int gen_li19_len = 6;
+unsigned char gen_li190[] = {
+ 0x41, 0xb8, 0xbe, 0x00, 0x00, 0x00
+};
+unsigned int gen_li190_len = 6;
+unsigned char gen_li191[] = {
+ 0x41, 0xb8, 0xbf, 0x00, 0x00, 0x00
+};
+unsigned int gen_li191_len = 6;
+unsigned char gen_li192[] = {
+ 0x41, 0xb8, 0xc0, 0x00, 0x00, 0x00
+};
+unsigned int gen_li192_len = 6;
+unsigned char gen_li193[] = {
+ 0x41, 0xb8, 0xc1, 0x00, 0x00, 0x00
+};
+unsigned int gen_li193_len = 6;
+unsigned char gen_li194[] = {
+ 0x41, 0xb8, 0xc2, 0x00, 0x00, 0x00
+};
+unsigned int gen_li194_len = 6;
+unsigned char gen_li195[] = {
+ 0x41, 0xb8, 0xc3, 0x00, 0x00, 0x00
+};
+unsigned int gen_li195_len = 6;
+unsigned char gen_li196[] = {
+ 0x41, 0xb8, 0xc4, 0x00, 0x00, 0x00
+};
+unsigned int gen_li196_len = 6;
+unsigned char gen_li197[] = {
+ 0x41, 0xb8, 0xc5, 0x00, 0x00, 0x00
+};
+unsigned int gen_li197_len = 6;
+unsigned char gen_li198[] = {
+ 0x41, 0xb8, 0xc6, 0x00, 0x00, 0x00
+};
+unsigned int gen_li198_len = 6;
+unsigned char gen_li199[] = {
+ 0x41, 0xb8, 0xc7, 0x00, 0x00, 0x00
+};
+unsigned int gen_li199_len = 6;
+unsigned char gen_li2[] = {
+ 0x41, 0xb8, 0x02, 0x00, 0x00, 0x00
+};
+unsigned int gen_li2_len = 6;
+unsigned char gen_li20[] = {
+ 0x41, 0xb8, 0x14, 0x00, 0x00, 0x00
+};
+unsigned int gen_li20_len = 6;
+unsigned char gen_li200[] = {
+ 0x41, 0xb8, 0xc8, 0x00, 0x00, 0x00
+};
+unsigned int gen_li200_len = 6;
+unsigned char gen_li201[] = {
+ 0x41, 0xb8, 0xc9, 0x00, 0x00, 0x00
+};
+unsigned int gen_li201_len = 6;
+unsigned char gen_li202[] = {
+ 0x41, 0xb8, 0xca, 0x00, 0x00, 0x00
+};
+unsigned int gen_li202_len = 6;
+unsigned char gen_li203[] = {
+ 0x41, 0xb8, 0xcb, 0x00, 0x00, 0x00
+};
+unsigned int gen_li203_len = 6;
+unsigned char gen_li204[] = {
+ 0x41, 0xb8, 0xcc, 0x00, 0x00, 0x00
+};
+unsigned int gen_li204_len = 6;
+unsigned char gen_li205[] = {
+ 0x41, 0xb8, 0xcd, 0x00, 0x00, 0x00
+};
+unsigned int gen_li205_len = 6;
+unsigned char gen_li206[] = {
+ 0x41, 0xb8, 0xce, 0x00, 0x00, 0x00
+};
+unsigned int gen_li206_len = 6;
+unsigned char gen_li207[] = {
+ 0x41, 0xb8, 0xcf, 0x00, 0x00, 0x00
+};
+unsigned int gen_li207_len = 6;
+unsigned char gen_li208[] = {
+ 0x41, 0xb8, 0xd0, 0x00, 0x00, 0x00
+};
+unsigned int gen_li208_len = 6;
+unsigned char gen_li209[] = {
+ 0x41, 0xb8, 0xd1, 0x00, 0x00, 0x00
+};
+unsigned int gen_li209_len = 6;
+unsigned char gen_li21[] = {
+ 0x41, 0xb8, 0x15, 0x00, 0x00, 0x00
+};
+unsigned int gen_li21_len = 6;
+unsigned char gen_li210[] = {
+ 0x41, 0xb8, 0xd2, 0x00, 0x00, 0x00
+};
+unsigned int gen_li210_len = 6;
+unsigned char gen_li211[] = {
+ 0x41, 0xb8, 0xd3, 0x00, 0x00, 0x00
+};
+unsigned int gen_li211_len = 6;
+unsigned char gen_li212[] = {
+ 0x41, 0xb8, 0xd4, 0x00, 0x00, 0x00
+};
+unsigned int gen_li212_len = 6;
+unsigned char gen_li213[] = {
+ 0x41, 0xb8, 0xd5, 0x00, 0x00, 0x00
+};
+unsigned int gen_li213_len = 6;
+unsigned char gen_li214[] = {
+ 0x41, 0xb8, 0xd6, 0x00, 0x00, 0x00
+};
+unsigned int gen_li214_len = 6;
+unsigned char gen_li215[] = {
+ 0x41, 0xb8, 0xd7, 0x00, 0x00, 0x00
+};
+unsigned int gen_li215_len = 6;
+unsigned char gen_li216[] = {
+ 0x41, 0xb8, 0xd8, 0x00, 0x00, 0x00
+};
+unsigned int gen_li216_len = 6;
+unsigned char gen_li217[] = {
+ 0x41, 0xb8, 0xd9, 0x00, 0x00, 0x00
+};
+unsigned int gen_li217_len = 6;
+unsigned char gen_li218[] = {
+ 0x41, 0xb8, 0xda, 0x00, 0x00, 0x00
+};
+unsigned int gen_li218_len = 6;
+unsigned char gen_li219[] = {
+ 0x41, 0xb8, 0xdb, 0x00, 0x00, 0x00
+};
+unsigned int gen_li219_len = 6;
+unsigned char gen_li22[] = {
+ 0x41, 0xb8, 0x16, 0x00, 0x00, 0x00
+};
+unsigned int gen_li22_len = 6;
+unsigned char gen_li220[] = {
+ 0x41, 0xb8, 0xdc, 0x00, 0x00, 0x00
+};
+unsigned int gen_li220_len = 6;
+unsigned char gen_li221[] = {
+ 0x41, 0xb8, 0xdd, 0x00, 0x00, 0x00
+};
+unsigned int gen_li221_len = 6;
+unsigned char gen_li222[] = {
+ 0x41, 0xb8, 0xde, 0x00, 0x00, 0x00
+};
+unsigned int gen_li222_len = 6;
+unsigned char gen_li223[] = {
+ 0x41, 0xb8, 0xdf, 0x00, 0x00, 0x00
+};
+unsigned int gen_li223_len = 6;
+unsigned char gen_li224[] = {
+ 0x41, 0xb8, 0xe0, 0x00, 0x00, 0x00
+};
+unsigned int gen_li224_len = 6;
+unsigned char gen_li225[] = {
+ 0x41, 0xb8, 0xe1, 0x00, 0x00, 0x00
+};
+unsigned int gen_li225_len = 6;
+unsigned char gen_li226[] = {
+ 0x41, 0xb8, 0xe2, 0x00, 0x00, 0x00
+};
+unsigned int gen_li226_len = 6;
+unsigned char gen_li227[] = {
+ 0x41, 0xb8, 0xe3, 0x00, 0x00, 0x00
+};
+unsigned int gen_li227_len = 6;
+unsigned char gen_li228[] = {
+ 0x41, 0xb8, 0xe4, 0x00, 0x00, 0x00
+};
+unsigned int gen_li228_len = 6;
+unsigned char gen_li229[] = {
+ 0x41, 0xb8, 0xe5, 0x00, 0x00, 0x00
+};
+unsigned int gen_li229_len = 6;
+unsigned char gen_li23[] = {
+ 0x41, 0xb8, 0x17, 0x00, 0x00, 0x00
+};
+unsigned int gen_li23_len = 6;
+unsigned char gen_li230[] = {
+ 0x41, 0xb8, 0xe6, 0x00, 0x00, 0x00
+};
+unsigned int gen_li230_len = 6;
+unsigned char gen_li231[] = {
+ 0x41, 0xb8, 0xe7, 0x00, 0x00, 0x00
+};
+unsigned int gen_li231_len = 6;
+unsigned char gen_li232[] = {
+ 0x41, 0xb8, 0xe8, 0x00, 0x00, 0x00
+};
+unsigned int gen_li232_len = 6;
+unsigned char gen_li233[] = {
+ 0x41, 0xb8, 0xe9, 0x00, 0x00, 0x00
+};
+unsigned int gen_li233_len = 6;
+unsigned char gen_li234[] = {
+ 0x41, 0xb8, 0xea, 0x00, 0x00, 0x00
+};
+unsigned int gen_li234_len = 6;
+unsigned char gen_li235[] = {
+ 0x41, 0xb8, 0xeb, 0x00, 0x00, 0x00
+};
+unsigned int gen_li235_len = 6;
+unsigned char gen_li236[] = {
+ 0x41, 0xb8, 0xec, 0x00, 0x00, 0x00
+};
+unsigned int gen_li236_len = 6;
+unsigned char gen_li237[] = {
+ 0x41, 0xb8, 0xed, 0x00, 0x00, 0x00
+};
+unsigned int gen_li237_len = 6;
+unsigned char gen_li238[] = {
+ 0x41, 0xb8, 0xee, 0x00, 0x00, 0x00
+};
+unsigned int gen_li238_len = 6;
+unsigned char gen_li239[] = {
+ 0x41, 0xb8, 0xef, 0x00, 0x00, 0x00
+};
+unsigned int gen_li239_len = 6;
+unsigned char gen_li24[] = {
+ 0x41, 0xb8, 0x18, 0x00, 0x00, 0x00
+};
+unsigned int gen_li24_len = 6;
+unsigned char gen_li240[] = {
+ 0x41, 0xb8, 0xf0, 0x00, 0x00, 0x00
+};
+unsigned int gen_li240_len = 6;
+unsigned char gen_li241[] = {
+ 0x41, 0xb8, 0xf1, 0x00, 0x00, 0x00
+};
+unsigned int gen_li241_len = 6;
+unsigned char gen_li242[] = {
+ 0x41, 0xb8, 0xf2, 0x00, 0x00, 0x00
+};
+unsigned int gen_li242_len = 6;
+unsigned char gen_li243[] = {
+ 0x41, 0xb8, 0xf3, 0x00, 0x00, 0x00
+};
+unsigned int gen_li243_len = 6;
+unsigned char gen_li244[] = {
+ 0x41, 0xb8, 0xf4, 0x00, 0x00, 0x00
+};
+unsigned int gen_li244_len = 6;
+unsigned char gen_li245[] = {
+ 0x41, 0xb8, 0xf5, 0x00, 0x00, 0x00
+};
+unsigned int gen_li245_len = 6;
+unsigned char gen_li246[] = {
+ 0x41, 0xb8, 0xf6, 0x00, 0x00, 0x00
+};
+unsigned int gen_li246_len = 6;
+unsigned char gen_li247[] = {
+ 0x41, 0xb8, 0xf7, 0x00, 0x00, 0x00
+};
+unsigned int gen_li247_len = 6;
+unsigned char gen_li248[] = {
+ 0x41, 0xb8, 0xf8, 0x00, 0x00, 0x00
+};
+unsigned int gen_li248_len = 6;
+unsigned char gen_li249[] = {
+ 0x41, 0xb8, 0xf9, 0x00, 0x00, 0x00
+};
+unsigned int gen_li249_len = 6;
+unsigned char gen_li25[] = {
+ 0x41, 0xb8, 0x19, 0x00, 0x00, 0x00
+};
+unsigned int gen_li25_len = 6;
+unsigned char gen_li250[] = {
+ 0x41, 0xb8, 0xfa, 0x00, 0x00, 0x00
+};
+unsigned int gen_li250_len = 6;
+unsigned char gen_li251[] = {
+ 0x41, 0xb8, 0xfb, 0x00, 0x00, 0x00
+};
+unsigned int gen_li251_len = 6;
+unsigned char gen_li252[] = {
+ 0x41, 0xb8, 0xfc, 0x00, 0x00, 0x00
+};
+unsigned int gen_li252_len = 6;
+unsigned char gen_li253[] = {
+ 0x41, 0xb8, 0xfd, 0x00, 0x00, 0x00
+};
+unsigned int gen_li253_len = 6;
+unsigned char gen_li254[] = {
+ 0x41, 0xb8, 0xfe, 0x00, 0x00, 0x00
+};
+unsigned int gen_li254_len = 6;
+unsigned char gen_li255[] = {
+ 0x41, 0xb8, 0xff, 0x00, 0x00, 0x00
+};
+unsigned int gen_li255_len = 6;
+unsigned char gen_li26[] = {
+ 0x41, 0xb8, 0x1a, 0x00, 0x00, 0x00
+};
+unsigned int gen_li26_len = 6;
+unsigned char gen_li27[] = {
+ 0x41, 0xb8, 0x1b, 0x00, 0x00, 0x00
+};
+unsigned int gen_li27_len = 6;
+unsigned char gen_li28[] = {
+ 0x41, 0xb8, 0x1c, 0x00, 0x00, 0x00
+};
+unsigned int gen_li28_len = 6;
+unsigned char gen_li29[] = {
+ 0x41, 0xb8, 0x1d, 0x00, 0x00, 0x00
+};
+unsigned int gen_li29_len = 6;
+unsigned char gen_li3[] = {
+ 0x41, 0xb8, 0x03, 0x00, 0x00, 0x00
+};
+unsigned int gen_li3_len = 6;
+unsigned char gen_li30[] = {
+ 0x41, 0xb8, 0x1e, 0x00, 0x00, 0x00
+};
+unsigned int gen_li30_len = 6;
+unsigned char gen_li31[] = {
+ 0x41, 0xb8, 0x1f, 0x00, 0x00, 0x00
+};
+unsigned int gen_li31_len = 6;
+unsigned char gen_li32[] = {
+ 0x41, 0xb8, 0x20, 0x00, 0x00, 0x00
+};
+unsigned int gen_li32_len = 6;
+unsigned char gen_li33[] = {
+ 0x41, 0xb8, 0x21, 0x00, 0x00, 0x00
+};
+unsigned int gen_li33_len = 6;
+unsigned char gen_li34[] = {
+ 0x41, 0xb8, 0x22, 0x00, 0x00, 0x00
+};
+unsigned int gen_li34_len = 6;
+unsigned char gen_li35[] = {
+ 0x41, 0xb8, 0x23, 0x00, 0x00, 0x00
+};
+unsigned int gen_li35_len = 6;
+unsigned char gen_li36[] = {
+ 0x41, 0xb8, 0x24, 0x00, 0x00, 0x00
+};
+unsigned int gen_li36_len = 6;
+unsigned char gen_li37[] = {
+ 0x41, 0xb8, 0x25, 0x00, 0x00, 0x00
+};
+unsigned int gen_li37_len = 6;
+unsigned char gen_li38[] = {
+ 0x41, 0xb8, 0x26, 0x00, 0x00, 0x00
+};
+unsigned int gen_li38_len = 6;
+unsigned char gen_li39[] = {
+ 0x41, 0xb8, 0x27, 0x00, 0x00, 0x00
+};
+unsigned int gen_li39_len = 6;
+unsigned char gen_li4[] = {
+ 0x41, 0xb8, 0x04, 0x00, 0x00, 0x00
+};
+unsigned int gen_li4_len = 6;
+unsigned char gen_li40[] = {
+ 0x41, 0xb8, 0x28, 0x00, 0x00, 0x00
+};
+unsigned int gen_li40_len = 6;
+unsigned char gen_li41[] = {
+ 0x41, 0xb8, 0x29, 0x00, 0x00, 0x00
+};
+unsigned int gen_li41_len = 6;
+unsigned char gen_li42[] = {
+ 0x41, 0xb8, 0x2a, 0x00, 0x00, 0x00
+};
+unsigned int gen_li42_len = 6;
+unsigned char gen_li43[] = {
+ 0x41, 0xb8, 0x2b, 0x00, 0x00, 0x00
+};
+unsigned int gen_li43_len = 6;
+unsigned char gen_li44[] = {
+ 0x41, 0xb8, 0x2c, 0x00, 0x00, 0x00
+};
+unsigned int gen_li44_len = 6;
+unsigned char gen_li45[] = {
+ 0x41, 0xb8, 0x2d, 0x00, 0x00, 0x00
+};
+unsigned int gen_li45_len = 6;
+unsigned char gen_li46[] = {
+ 0x41, 0xb8, 0x2e, 0x00, 0x00, 0x00
+};
+unsigned int gen_li46_len = 6;
+unsigned char gen_li47[] = {
+ 0x41, 0xb8, 0x2f, 0x00, 0x00, 0x00
+};
+unsigned int gen_li47_len = 6;
+unsigned char gen_li48[] = {
+ 0x41, 0xb8, 0x30, 0x00, 0x00, 0x00
+};
+unsigned int gen_li48_len = 6;
+unsigned char gen_li49[] = {
+ 0x41, 0xb8, 0x31, 0x00, 0x00, 0x00
+};
+unsigned int gen_li49_len = 6;
+unsigned char gen_li5[] = {
+ 0x41, 0xb8, 0x05, 0x00, 0x00, 0x00
+};
+unsigned int gen_li5_len = 6;
+unsigned char gen_li50[] = {
+ 0x41, 0xb8, 0x32, 0x00, 0x00, 0x00
+};
+unsigned int gen_li50_len = 6;
+unsigned char gen_li51[] = {
+ 0x41, 0xb8, 0x33, 0x00, 0x00, 0x00
+};
+unsigned int gen_li51_len = 6;
+unsigned char gen_li52[] = {
+ 0x41, 0xb8, 0x34, 0x00, 0x00, 0x00
+};
+unsigned int gen_li52_len = 6;
+unsigned char gen_li53[] = {
+ 0x41, 0xb8, 0x35, 0x00, 0x00, 0x00
+};
+unsigned int gen_li53_len = 6;
+unsigned char gen_li54[] = {
+ 0x41, 0xb8, 0x36, 0x00, 0x00, 0x00
+};
+unsigned int gen_li54_len = 6;
+unsigned char gen_li55[] = {
+ 0x41, 0xb8, 0x37, 0x00, 0x00, 0x00
+};
+unsigned int gen_li55_len = 6;
+unsigned char gen_li56[] = {
+ 0x41, 0xb8, 0x38, 0x00, 0x00, 0x00
+};
+unsigned int gen_li56_len = 6;
+unsigned char gen_li57[] = {
+ 0x41, 0xb8, 0x39, 0x00, 0x00, 0x00
+};
+unsigned int gen_li57_len = 6;
+unsigned char gen_li58[] = {
+ 0x41, 0xb8, 0x3a, 0x00, 0x00, 0x00
+};
+unsigned int gen_li58_len = 6;
+unsigned char gen_li59[] = {
+ 0x41, 0xb8, 0x3b, 0x00, 0x00, 0x00
+};
+unsigned int gen_li59_len = 6;
+unsigned char gen_li6[] = {
+ 0x41, 0xb8, 0x06, 0x00, 0x00, 0x00
+};
+unsigned int gen_li6_len = 6;
+unsigned char gen_li60[] = {
+ 0x41, 0xb8, 0x3c, 0x00, 0x00, 0x00
+};
+unsigned int gen_li60_len = 6;
+unsigned char gen_li61[] = {
+ 0x41, 0xb8, 0x3d, 0x00, 0x00, 0x00
+};
+unsigned int gen_li61_len = 6;
+unsigned char gen_li62[] = {
+ 0x41, 0xb8, 0x3e, 0x00, 0x00, 0x00
+};
+unsigned int gen_li62_len = 6;
+unsigned char gen_li63[] = {
+ 0x41, 0xb8, 0x3f, 0x00, 0x00, 0x00
+};
+unsigned int gen_li63_len = 6;
+unsigned char gen_li64[] = {
+ 0x41, 0xb8, 0x40, 0x00, 0x00, 0x00
+};
+unsigned int gen_li64_len = 6;
+unsigned char gen_li65[] = {
+ 0x41, 0xb8, 0x41, 0x00, 0x00, 0x00
+};
+unsigned int gen_li65_len = 6;
+unsigned char gen_li66[] = {
+ 0x41, 0xb8, 0x42, 0x00, 0x00, 0x00
+};
+unsigned int gen_li66_len = 6;
+unsigned char gen_li67[] = {
+ 0x41, 0xb8, 0x43, 0x00, 0x00, 0x00
+};
+unsigned int gen_li67_len = 6;
+unsigned char gen_li68[] = {
+ 0x41, 0xb8, 0x44, 0x00, 0x00, 0x00
+};
+unsigned int gen_li68_len = 6;
+unsigned char gen_li69[] = {
+ 0x41, 0xb8, 0x45, 0x00, 0x00, 0x00
+};
+unsigned int gen_li69_len = 6;
+unsigned char gen_li7[] = {
+ 0x41, 0xb8, 0x07, 0x00, 0x00, 0x00
+};
+unsigned int gen_li7_len = 6;
+unsigned char gen_li70[] = {
+ 0x41, 0xb8, 0x46, 0x00, 0x00, 0x00
+};
+unsigned int gen_li70_len = 6;
+unsigned char gen_li71[] = {
+ 0x41, 0xb8, 0x47, 0x00, 0x00, 0x00
+};
+unsigned int gen_li71_len = 6;
+unsigned char gen_li72[] = {
+ 0x41, 0xb8, 0x48, 0x00, 0x00, 0x00
+};
+unsigned int gen_li72_len = 6;
+unsigned char gen_li73[] = {
+ 0x41, 0xb8, 0x49, 0x00, 0x00, 0x00
+};
+unsigned int gen_li73_len = 6;
+unsigned char gen_li74[] = {
+ 0x41, 0xb8, 0x4a, 0x00, 0x00, 0x00
+};
+unsigned int gen_li74_len = 6;
+unsigned char gen_li75[] = {
+ 0x41, 0xb8, 0x4b, 0x00, 0x00, 0x00
+};
+unsigned int gen_li75_len = 6;
+unsigned char gen_li76[] = {
+ 0x41, 0xb8, 0x4c, 0x00, 0x00, 0x00
+};
+unsigned int gen_li76_len = 6;
+unsigned char gen_li77[] = {
+ 0x41, 0xb8, 0x4d, 0x00, 0x00, 0x00
+};
+unsigned int gen_li77_len = 6;
+unsigned char gen_li78[] = {
+ 0x41, 0xb8, 0x4e, 0x00, 0x00, 0x00
+};
+unsigned int gen_li78_len = 6;
+unsigned char gen_li79[] = {
+ 0x41, 0xb8, 0x4f, 0x00, 0x00, 0x00
+};
+unsigned int gen_li79_len = 6;
+unsigned char gen_li8[] = {
+ 0x41, 0xb8, 0x08, 0x00, 0x00, 0x00
+};
+unsigned int gen_li8_len = 6;
+unsigned char gen_li80[] = {
+ 0x41, 0xb8, 0x50, 0x00, 0x00, 0x00
+};
+unsigned int gen_li80_len = 6;
+unsigned char gen_li81[] = {
+ 0x41, 0xb8, 0x51, 0x00, 0x00, 0x00
+};
+unsigned int gen_li81_len = 6;
+unsigned char gen_li82[] = {
+ 0x41, 0xb8, 0x52, 0x00, 0x00, 0x00
+};
+unsigned int gen_li82_len = 6;
+unsigned char gen_li83[] = {
+ 0x41, 0xb8, 0x53, 0x00, 0x00, 0x00
+};
+unsigned int gen_li83_len = 6;
+unsigned char gen_li84[] = {
+ 0x41, 0xb8, 0x54, 0x00, 0x00, 0x00
+};
+unsigned int gen_li84_len = 6;
+unsigned char gen_li85[] = {
+ 0x41, 0xb8, 0x55, 0x00, 0x00, 0x00
+};
+unsigned int gen_li85_len = 6;
+unsigned char gen_li86[] = {
+ 0x41, 0xb8, 0x56, 0x00, 0x00, 0x00
+};
+unsigned int gen_li86_len = 6;
+unsigned char gen_li87[] = {
+ 0x41, 0xb8, 0x57, 0x00, 0x00, 0x00
+};
+unsigned int gen_li87_len = 6;
+unsigned char gen_li88[] = {
+ 0x41, 0xb8, 0x58, 0x00, 0x00, 0x00
+};
+unsigned int gen_li88_len = 6;
+unsigned char gen_li89[] = {
+ 0x41, 0xb8, 0x59, 0x00, 0x00, 0x00
+};
+unsigned int gen_li89_len = 6;
+unsigned char gen_li9[] = {
+ 0x41, 0xb8, 0x09, 0x00, 0x00, 0x00
+};
+unsigned int gen_li9_len = 6;
+unsigned char gen_li90[] = {
+ 0x41, 0xb8, 0x5a, 0x00, 0x00, 0x00
+};
+unsigned int gen_li90_len = 6;
+unsigned char gen_li91[] = {
+ 0x41, 0xb8, 0x5b, 0x00, 0x00, 0x00
+};
+unsigned int gen_li91_len = 6;
+unsigned char gen_li92[] = {
+ 0x41, 0xb8, 0x5c, 0x00, 0x00, 0x00
+};
+unsigned int gen_li92_len = 6;
+unsigned char gen_li93[] = {
+ 0x41, 0xb8, 0x5d, 0x00, 0x00, 0x00
+};
+unsigned int gen_li93_len = 6;
+unsigned char gen_li94[] = {
+ 0x41, 0xb8, 0x5e, 0x00, 0x00, 0x00
+};
+unsigned int gen_li94_len = 6;
+unsigned char gen_li95[] = {
+ 0x41, 0xb8, 0x5f, 0x00, 0x00, 0x00
+};
+unsigned int gen_li95_len = 6;
+unsigned char gen_li96[] = {
+ 0x41, 0xb8, 0x60, 0x00, 0x00, 0x00
+};
+unsigned int gen_li96_len = 6;
+unsigned char gen_li97[] = {
+ 0x41, 0xb8, 0x61, 0x00, 0x00, 0x00
+};
+unsigned int gen_li97_len = 6;
+unsigned char gen_li98[] = {
+ 0x41, 0xb8, 0x62, 0x00, 0x00, 0x00
+};
+unsigned int gen_li98_len = 6;
+unsigned char gen_li99[] = {
+ 0x41, 0xb8, 0x63, 0x00, 0x00, 0x00
+};
+unsigned int gen_li99_len = 6;
+unsigned char gen_sla0[] = {
+};
+unsigned int gen_sla0_len = 0;
+unsigned char gen_sla1[] = {
+ 0x48, 0xd1, 0xee
+};
+unsigned int gen_sla1_len = 3;
+unsigned char gen_sla10[] = {
+ 0x48, 0xc1, 0xee, 0x0a
+};
+unsigned int gen_sla10_len = 4;
+unsigned char gen_sla11[] = {
+ 0x48, 0xc1, 0xee, 0x0b
+};
+unsigned int gen_sla11_len = 4;
+unsigned char gen_sla12[] = {
+ 0x48, 0xc1, 0xee, 0x0c
+};
+unsigned int gen_sla12_len = 4;
+unsigned char gen_sla13[] = {
+ 0x48, 0xc1, 0xee, 0x0d
+};
+unsigned int gen_sla13_len = 4;
+unsigned char gen_sla14[] = {
+ 0x48, 0xc1, 0xee, 0x0e
+};
+unsigned int gen_sla14_len = 4;
+unsigned char gen_sla15[] = {
+ 0x48, 0xc1, 0xee, 0x0f
+};
+unsigned int gen_sla15_len = 4;
+unsigned char gen_sla16[] = {
+ 0x48, 0xc1, 0xee, 0x10
+};
+unsigned int gen_sla16_len = 4;
+unsigned char gen_sla17[] = {
+ 0x48, 0xc1, 0xee, 0x11
+};
+unsigned int gen_sla17_len = 4;
+unsigned char gen_sla18[] = {
+ 0x48, 0xc1, 0xee, 0x12
+};
+unsigned int gen_sla18_len = 4;
+unsigned char gen_sla19[] = {
+ 0x48, 0xc1, 0xee, 0x13
+};
+unsigned int gen_sla19_len = 4;
+unsigned char gen_sla2[] = {
+ 0x48, 0xc1, 0xee, 0x02
+};
+unsigned int gen_sla2_len = 4;
+unsigned char gen_sla20[] = {
+ 0x48, 0xc1, 0xee, 0x14
+};
+unsigned int gen_sla20_len = 4;
+unsigned char gen_sla21[] = {
+ 0x48, 0xc1, 0xee, 0x15
+};
+unsigned int gen_sla21_len = 4;
+unsigned char gen_sla22[] = {
+ 0x48, 0xc1, 0xee, 0x16
+};
+unsigned int gen_sla22_len = 4;
+unsigned char gen_sla23[] = {
+ 0x48, 0xc1, 0xee, 0x17
+};
+unsigned int gen_sla23_len = 4;
+unsigned char gen_sla24[] = {
+ 0x48, 0xc1, 0xee, 0x18
+};
+unsigned int gen_sla24_len = 4;
+unsigned char gen_sla25[] = {
+ 0x48, 0xc1, 0xee, 0x19
+};
+unsigned int gen_sla25_len = 4;
+unsigned char gen_sla26[] = {
+ 0x48, 0xc1, 0xee, 0x1a
+};
+unsigned int gen_sla26_len = 4;
+unsigned char gen_sla27[] = {
+ 0x48, 0xc1, 0xee, 0x1b
+};
+unsigned int gen_sla27_len = 4;
+unsigned char gen_sla28[] = {
+ 0x48, 0xc1, 0xee, 0x1c
+};
+unsigned int gen_sla28_len = 4;
+unsigned char gen_sla29[] = {
+ 0x48, 0xc1, 0xee, 0x1d
+};
+unsigned int gen_sla29_len = 4;
+unsigned char gen_sla3[] = {
+ 0x48, 0xc1, 0xee, 0x03
+};
+unsigned int gen_sla3_len = 4;
+unsigned char gen_sla30[] = {
+ 0x48, 0xc1, 0xee, 0x1e
+};
+unsigned int gen_sla30_len = 4;
+unsigned char gen_sla31[] = {
+ 0x48, 0xc1, 0xee, 0x1f
+};
+unsigned int gen_sla31_len = 4;
+unsigned char gen_sla32[] = {
+ 0x48, 0xc1, 0xee, 0x20
+};
+unsigned int gen_sla32_len = 4;
+unsigned char gen_sla33[] = {
+ 0x48, 0xc1, 0xee, 0x21
+};
+unsigned int gen_sla33_len = 4;
+unsigned char gen_sla34[] = {
+ 0x48, 0xc1, 0xee, 0x22
+};
+unsigned int gen_sla34_len = 4;
+unsigned char gen_sla35[] = {
+ 0x48, 0xc1, 0xee, 0x23
+};
+unsigned int gen_sla35_len = 4;
+unsigned char gen_sla36[] = {
+ 0x48, 0xc1, 0xee, 0x24
+};
+unsigned int gen_sla36_len = 4;
+unsigned char gen_sla37[] = {
+ 0x48, 0xc1, 0xee, 0x25
+};
+unsigned int gen_sla37_len = 4;
+unsigned char gen_sla38[] = {
+ 0x48, 0xc1, 0xee, 0x26
+};
+unsigned int gen_sla38_len = 4;
+unsigned char gen_sla39[] = {
+ 0x48, 0xc1, 0xee, 0x27
+};
+unsigned int gen_sla39_len = 4;
+unsigned char gen_sla4[] = {
+ 0x48, 0xc1, 0xee, 0x04
+};
+unsigned int gen_sla4_len = 4;
+unsigned char gen_sla40[] = {
+ 0x48, 0xc1, 0xee, 0x28
+};
+unsigned int gen_sla40_len = 4;
+unsigned char gen_sla41[] = {
+ 0x48, 0xc1, 0xee, 0x29
+};
+unsigned int gen_sla41_len = 4;
+unsigned char gen_sla42[] = {
+ 0x48, 0xc1, 0xee, 0x2a
+};
+unsigned int gen_sla42_len = 4;
+unsigned char gen_sla43[] = {
+ 0x48, 0xc1, 0xee, 0x2b
+};
+unsigned int gen_sla43_len = 4;
+unsigned char gen_sla44[] = {
+ 0x48, 0xc1, 0xee, 0x2c
+};
+unsigned int gen_sla44_len = 4;
+unsigned char gen_sla45[] = {
+ 0x48, 0xc1, 0xee, 0x2d
+};
+unsigned int gen_sla45_len = 4;
+unsigned char gen_sla46[] = {
+ 0x48, 0xc1, 0xee, 0x2e
+};
+unsigned int gen_sla46_len = 4;
+unsigned char gen_sla47[] = {
+ 0x48, 0xc1, 0xee, 0x2f
+};
+unsigned int gen_sla47_len = 4;
+unsigned char gen_sla48[] = {
+ 0x48, 0xc1, 0xee, 0x30
+};
+unsigned int gen_sla48_len = 4;
+unsigned char gen_sla49[] = {
+ 0x48, 0xc1, 0xee, 0x31
+};
+unsigned int gen_sla49_len = 4;
+unsigned char gen_sla5[] = {
+ 0x48, 0xc1, 0xee, 0x05
+};
+unsigned int gen_sla5_len = 4;
+unsigned char gen_sla50[] = {
+ 0x48, 0xc1, 0xee, 0x32
+};
+unsigned int gen_sla50_len = 4;
+unsigned char gen_sla51[] = {
+ 0x48, 0xc1, 0xee, 0x33
+};
+unsigned int gen_sla51_len = 4;
+unsigned char gen_sla52[] = {
+ 0x48, 0xc1, 0xee, 0x34
+};
+unsigned int gen_sla52_len = 4;
+unsigned char gen_sla53[] = {
+ 0x48, 0xc1, 0xee, 0x35
+};
+unsigned int gen_sla53_len = 4;
+unsigned char gen_sla54[] = {
+ 0x48, 0xc1, 0xee, 0x36
+};
+unsigned int gen_sla54_len = 4;
+unsigned char gen_sla55[] = {
+ 0x48, 0xc1, 0xee, 0x37
+};
+unsigned int gen_sla55_len = 4;
+unsigned char gen_sla56[] = {
+ 0x48, 0xc1, 0xee, 0x38
+};
+unsigned int gen_sla56_len = 4;
+unsigned char gen_sla57[] = {
+ 0x48, 0xc1, 0xee, 0x39
+};
+unsigned int gen_sla57_len = 4;
+unsigned char gen_sla58[] = {
+ 0x48, 0xc1, 0xee, 0x3a
+};
+unsigned int gen_sla58_len = 4;
+unsigned char gen_sla59[] = {
+ 0x48, 0xc1, 0xee, 0x3b
+};
+unsigned int gen_sla59_len = 4;
+unsigned char gen_sla6[] = {
+ 0x48, 0xc1, 0xee, 0x06
+};
+unsigned int gen_sla6_len = 4;
+unsigned char gen_sla60[] = {
+ 0x48, 0xc1, 0xee, 0x3c
+};
+unsigned int gen_sla60_len = 4;
+unsigned char gen_sla61[] = {
+ 0x48, 0xc1, 0xee, 0x3d
+};
+unsigned int gen_sla61_len = 4;
+unsigned char gen_sla62[] = {
+ 0x48, 0xc1, 0xee, 0x3e
+};
+unsigned int gen_sla62_len = 4;
+unsigned char gen_sla63[] = {
+ 0x48, 0xc1, 0xee, 0x3f
+};
+unsigned int gen_sla63_len = 4;
+unsigned char gen_sla7[] = {
+ 0x48, 0xc1, 0xee, 0x07
+};
+unsigned int gen_sla7_len = 4;
+unsigned char gen_sla8[] = {
+ 0x48, 0xc1, 0xee, 0x08
+};
+unsigned int gen_sla8_len = 4;
+unsigned char gen_sla9[] = {
+ 0x48, 0xc1, 0xee, 0x09
+};
+unsigned int gen_sla9_len = 4;
+unsigned char gen_slo0[] = {
+};
+unsigned int gen_slo0_len = 0;
+unsigned char gen_slo1[] = {
+ 0x4d, 0x01, 0xc0
+};
+unsigned int gen_slo1_len = 3;
+unsigned char gen_slo10[] = {
+ 0x49, 0xc1, 0xe0, 0x0a
+};
+unsigned int gen_slo10_len = 4;
+unsigned char gen_slo11[] = {
+ 0x49, 0xc1, 0xe0, 0x0b
+};
+unsigned int gen_slo11_len = 4;
+unsigned char gen_slo12[] = {
+ 0x49, 0xc1, 0xe0, 0x0c
+};
+unsigned int gen_slo12_len = 4;
+unsigned char gen_slo13[] = {
+ 0x49, 0xc1, 0xe0, 0x0d
+};
+unsigned int gen_slo13_len = 4;
+unsigned char gen_slo14[] = {
+ 0x49, 0xc1, 0xe0, 0x0e
+};
+unsigned int gen_slo14_len = 4;
+unsigned char gen_slo15[] = {
+ 0x49, 0xc1, 0xe0, 0x0f
+};
+unsigned int gen_slo15_len = 4;
+unsigned char gen_slo16[] = {
+ 0x49, 0xc1, 0xe0, 0x10
+};
+unsigned int gen_slo16_len = 4;
+unsigned char gen_slo17[] = {
+ 0x49, 0xc1, 0xe0, 0x11
+};
+unsigned int gen_slo17_len = 4;
+unsigned char gen_slo18[] = {
+ 0x49, 0xc1, 0xe0, 0x12
+};
+unsigned int gen_slo18_len = 4;
+unsigned char gen_slo19[] = {
+ 0x49, 0xc1, 0xe0, 0x13
+};
+unsigned int gen_slo19_len = 4;
+unsigned char gen_slo2[] = {
+ 0x4e, 0x8d, 0x04, 0x85, 0x00, 0x00, 0x00, 0x00
+};
+unsigned int gen_slo2_len = 8;
+unsigned char gen_slo20[] = {
+ 0x49, 0xc1, 0xe0, 0x14
+};
+unsigned int gen_slo20_len = 4;
+unsigned char gen_slo21[] = {
+ 0x49, 0xc1, 0xe0, 0x15
+};
+unsigned int gen_slo21_len = 4;
+unsigned char gen_slo22[] = {
+ 0x49, 0xc1, 0xe0, 0x16
+};
+unsigned int gen_slo22_len = 4;
+unsigned char gen_slo23[] = {
+ 0x49, 0xc1, 0xe0, 0x17
+};
+unsigned int gen_slo23_len = 4;
+unsigned char gen_slo24[] = {
+ 0x49, 0xc1, 0xe0, 0x18
+};
+unsigned int gen_slo24_len = 4;
+unsigned char gen_slo25[] = {
+ 0x49, 0xc1, 0xe0, 0x19
+};
+unsigned int gen_slo25_len = 4;
+unsigned char gen_slo26[] = {
+ 0x49, 0xc1, 0xe0, 0x1a
+};
+unsigned int gen_slo26_len = 4;
+unsigned char gen_slo27[] = {
+ 0x49, 0xc1, 0xe0, 0x1b
+};
+unsigned int gen_slo27_len = 4;
+unsigned char gen_slo28[] = {
+ 0x49, 0xc1, 0xe0, 0x1c
+};
+unsigned int gen_slo28_len = 4;
+unsigned char gen_slo29[] = {
+ 0x49, 0xc1, 0xe0, 0x1d
+};
+unsigned int gen_slo29_len = 4;
+unsigned char gen_slo3[] = {
+ 0x4e, 0x8d, 0x04, 0xc5, 0x00, 0x00, 0x00, 0x00
+};
+unsigned int gen_slo3_len = 8;
+unsigned char gen_slo30[] = {
+ 0x49, 0xc1, 0xe0, 0x1e
+};
+unsigned int gen_slo30_len = 4;
+unsigned char gen_slo31[] = {
+ 0x49, 0xc1, 0xe0, 0x1f
+};
+unsigned int gen_slo31_len = 4;
+unsigned char gen_slo32[] = {
+ 0x49, 0xc1, 0xe0, 0x20
+};
+unsigned int gen_slo32_len = 4;
+unsigned char gen_slo33[] = {
+ 0x49, 0xc1, 0xe0, 0x21
+};
+unsigned int gen_slo33_len = 4;
+unsigned char gen_slo34[] = {
+ 0x49, 0xc1, 0xe0, 0x22
+};
+unsigned int gen_slo34_len = 4;
+unsigned char gen_slo35[] = {
+ 0x49, 0xc1, 0xe0, 0x23
+};
+unsigned int gen_slo35_len = 4;
+unsigned char gen_slo36[] = {
+ 0x49, 0xc1, 0xe0, 0x24
+};
+unsigned int gen_slo36_len = 4;
+unsigned char gen_slo37[] = {
+ 0x49, 0xc1, 0xe0, 0x25
+};
+unsigned int gen_slo37_len = 4;
+unsigned char gen_slo38[] = {
+ 0x49, 0xc1, 0xe0, 0x26
+};
+unsigned int gen_slo38_len = 4;
+unsigned char gen_slo39[] = {
+ 0x49, 0xc1, 0xe0, 0x27
+};
+unsigned int gen_slo39_len = 4;
+unsigned char gen_slo4[] = {
+ 0x49, 0xc1, 0xe0, 0x04
+};
+unsigned int gen_slo4_len = 4;
+unsigned char gen_slo40[] = {
+ 0x49, 0xc1, 0xe0, 0x28
+};
+unsigned int gen_slo40_len = 4;
+unsigned char gen_slo41[] = {
+ 0x49, 0xc1, 0xe0, 0x29
+};
+unsigned int gen_slo41_len = 4;
+unsigned char gen_slo42[] = {
+ 0x49, 0xc1, 0xe0, 0x2a
+};
+unsigned int gen_slo42_len = 4;
+unsigned char gen_slo43[] = {
+ 0x49, 0xc1, 0xe0, 0x2b
+};
+unsigned int gen_slo43_len = 4;
+unsigned char gen_slo44[] = {
+ 0x49, 0xc1, 0xe0, 0x2c
+};
+unsigned int gen_slo44_len = 4;
+unsigned char gen_slo45[] = {
+ 0x49, 0xc1, 0xe0, 0x2d
+};
+unsigned int gen_slo45_len = 4;
+unsigned char gen_slo46[] = {
+ 0x49, 0xc1, 0xe0, 0x2e
+};
+unsigned int gen_slo46_len = 4;
+unsigned char gen_slo47[] = {
+ 0x49, 0xc1, 0xe0, 0x2f
+};
+unsigned int gen_slo47_len = 4;
+unsigned char gen_slo48[] = {
+ 0x49, 0xc1, 0xe0, 0x30
+};
+unsigned int gen_slo48_len = 4;
+unsigned char gen_slo49[] = {
+ 0x49, 0xc1, 0xe0, 0x31
+};
+unsigned int gen_slo49_len = 4;
+unsigned char gen_slo5[] = {
+ 0x49, 0xc1, 0xe0, 0x05
+};
+unsigned int gen_slo5_len = 4;
+unsigned char gen_slo50[] = {
+ 0x49, 0xc1, 0xe0, 0x32
+};
+unsigned int gen_slo50_len = 4;
+unsigned char gen_slo51[] = {
+ 0x49, 0xc1, 0xe0, 0x33
+};
+unsigned int gen_slo51_len = 4;
+unsigned char gen_slo52[] = {
+ 0x49, 0xc1, 0xe0, 0x34
+};
+unsigned int gen_slo52_len = 4;
+unsigned char gen_slo53[] = {
+ 0x49, 0xc1, 0xe0, 0x35
+};
+unsigned int gen_slo53_len = 4;
+unsigned char gen_slo54[] = {
+ 0x49, 0xc1, 0xe0, 0x36
+};
+unsigned int gen_slo54_len = 4;
+unsigned char gen_slo55[] = {
+ 0x49, 0xc1, 0xe0, 0x37
+};
+unsigned int gen_slo55_len = 4;
+unsigned char gen_slo56[] = {
+ 0x49, 0xc1, 0xe0, 0x38
+};
+unsigned int gen_slo56_len = 4;
+unsigned char gen_slo57[] = {
+ 0x49, 0xc1, 0xe0, 0x39
+};
+unsigned int gen_slo57_len = 4;
+unsigned char gen_slo58[] = {
+ 0x49, 0xc1, 0xe0, 0x3a
+};
+unsigned int gen_slo58_len = 4;
+unsigned char gen_slo59[] = {
+ 0x49, 0xc1, 0xe0, 0x3b
+};
+unsigned int gen_slo59_len = 4;
+unsigned char gen_slo6[] = {
+ 0x49, 0xc1, 0xe0, 0x06
+};
+unsigned int gen_slo6_len = 4;
+unsigned char gen_slo60[] = {
+ 0x49, 0xc1, 0xe0, 0x3c
+};
+unsigned int gen_slo60_len = 4;
+unsigned char gen_slo61[] = {
+ 0x49, 0xc1, 0xe0, 0x3d
+};
+unsigned int gen_slo61_len = 4;
+unsigned char gen_slo62[] = {
+ 0x49, 0xc1, 0xe0, 0x3e
+};
+unsigned int gen_slo62_len = 4;
+unsigned char gen_slo63[] = {
+ 0x49, 0xc1, 0xe0, 0x3f
+};
+unsigned int gen_slo63_len = 4;
+unsigned char gen_slo7[] = {
+ 0x49, 0xc1, 0xe0, 0x07
+};
+unsigned int gen_slo7_len = 4;
+unsigned char gen_slo8[] = {
+ 0x49, 0xc1, 0xe0, 0x08
+};
+unsigned int gen_slo8_len = 4;
+unsigned char gen_slo9[] = {
+ 0x49, 0xc1, 0xe0, 0x09
+};
+unsigned int gen_slo9_len = 4;
+unsigned char gen_slx0[] = {
+};
+unsigned int gen_slx0_len = 0;
+unsigned char gen_slx1[] = {
+ 0x48, 0x01, 0xd2
+};
+unsigned int gen_slx1_len = 3;
+unsigned char gen_slx10[] = {
+ 0x48, 0xc1, 0xe2, 0x0a
+};
+unsigned int gen_slx10_len = 4;
+unsigned char gen_slx11[] = {
+ 0x48, 0xc1, 0xe2, 0x0b
+};
+unsigned int gen_slx11_len = 4;
+unsigned char gen_slx12[] = {
+ 0x48, 0xc1, 0xe2, 0x0c
+};
+unsigned int gen_slx12_len = 4;
+unsigned char gen_slx13[] = {
+ 0x48, 0xc1, 0xe2, 0x0d
+};
+unsigned int gen_slx13_len = 4;
+unsigned char gen_slx14[] = {
+ 0x48, 0xc1, 0xe2, 0x0e
+};
+unsigned int gen_slx14_len = 4;
+unsigned char gen_slx15[] = {
+ 0x48, 0xc1, 0xe2, 0x0f
+};
+unsigned int gen_slx15_len = 4;
+unsigned char gen_slx16[] = {
+ 0x48, 0xc1, 0xe2, 0x10
+};
+unsigned int gen_slx16_len = 4;
+unsigned char gen_slx17[] = {
+ 0x48, 0xc1, 0xe2, 0x11
+};
+unsigned int gen_slx17_len = 4;
+unsigned char gen_slx18[] = {
+ 0x48, 0xc1, 0xe2, 0x12
+};
+unsigned int gen_slx18_len = 4;
+unsigned char gen_slx19[] = {
+ 0x48, 0xc1, 0xe2, 0x13
+};
+unsigned int gen_slx19_len = 4;
+unsigned char gen_slx2[] = {
+ 0x48, 0xc1, 0xe2, 0x02
+};
+unsigned int gen_slx2_len = 4;
+unsigned char gen_slx20[] = {
+ 0x48, 0xc1, 0xe2, 0x14
+};
+unsigned int gen_slx20_len = 4;
+unsigned char gen_slx21[] = {
+ 0x48, 0xc1, 0xe2, 0x15
+};
+unsigned int gen_slx21_len = 4;
+unsigned char gen_slx22[] = {
+ 0x48, 0xc1, 0xe2, 0x16
+};
+unsigned int gen_slx22_len = 4;
+unsigned char gen_slx23[] = {
+ 0x48, 0xc1, 0xe2, 0x17
+};
+unsigned int gen_slx23_len = 4;
+unsigned char gen_slx24[] = {
+ 0x48, 0xc1, 0xe2, 0x18
+};
+unsigned int gen_slx24_len = 4;
+unsigned char gen_slx25[] = {
+ 0x48, 0xc1, 0xe2, 0x19
+};
+unsigned int gen_slx25_len = 4;
+unsigned char gen_slx26[] = {
+ 0x48, 0xc1, 0xe2, 0x1a
+};
+unsigned int gen_slx26_len = 4;
+unsigned char gen_slx27[] = {
+ 0x48, 0xc1, 0xe2, 0x1b
+};
+unsigned int gen_slx27_len = 4;
+unsigned char gen_slx28[] = {
+ 0x48, 0xc1, 0xe2, 0x1c
+};
+unsigned int gen_slx28_len = 4;
+unsigned char gen_slx29[] = {
+ 0x48, 0xc1, 0xe2, 0x1d
+};
+unsigned int gen_slx29_len = 4;
+unsigned char gen_slx3[] = {
+ 0x48, 0xc1, 0xe2, 0x03
+};
+unsigned int gen_slx3_len = 4;
+unsigned char gen_slx30[] = {
+ 0x48, 0xc1, 0xe2, 0x1e
+};
+unsigned int gen_slx30_len = 4;
+unsigned char gen_slx31[] = {
+ 0x48, 0xc1, 0xe2, 0x1f
+};
+unsigned int gen_slx31_len = 4;
+unsigned char gen_slx32[] = {
+ 0x48, 0xc1, 0xe2, 0x20
+};
+unsigned int gen_slx32_len = 4;
+unsigned char gen_slx33[] = {
+ 0x48, 0xc1, 0xe2, 0x21
+};
+unsigned int gen_slx33_len = 4;
+unsigned char gen_slx34[] = {
+ 0x48, 0xc1, 0xe2, 0x22
+};
+unsigned int gen_slx34_len = 4;
+unsigned char gen_slx35[] = {
+ 0x48, 0xc1, 0xe2, 0x23
+};
+unsigned int gen_slx35_len = 4;
+unsigned char gen_slx36[] = {
+ 0x48, 0xc1, 0xe2, 0x24
+};
+unsigned int gen_slx36_len = 4;
+unsigned char gen_slx37[] = {
+ 0x48, 0xc1, 0xe2, 0x25
+};
+unsigned int gen_slx37_len = 4;
+unsigned char gen_slx38[] = {
+ 0x48, 0xc1, 0xe2, 0x26
+};
+unsigned int gen_slx38_len = 4;
+unsigned char gen_slx39[] = {
+ 0x48, 0xc1, 0xe2, 0x27
+};
+unsigned int gen_slx39_len = 4;
+unsigned char gen_slx4[] = {
+ 0x48, 0xc1, 0xe2, 0x04
+};
+unsigned int gen_slx4_len = 4;
+unsigned char gen_slx40[] = {
+ 0x48, 0xc1, 0xe2, 0x28
+};
+unsigned int gen_slx40_len = 4;
+unsigned char gen_slx41[] = {
+ 0x48, 0xc1, 0xe2, 0x29
+};
+unsigned int gen_slx41_len = 4;
+unsigned char gen_slx42[] = {
+ 0x48, 0xc1, 0xe2, 0x2a
+};
+unsigned int gen_slx42_len = 4;
+unsigned char gen_slx43[] = {
+ 0x48, 0xc1, 0xe2, 0x2b
+};
+unsigned int gen_slx43_len = 4;
+unsigned char gen_slx44[] = {
+ 0x48, 0xc1, 0xe2, 0x2c
+};
+unsigned int gen_slx44_len = 4;
+unsigned char gen_slx45[] = {
+ 0x48, 0xc1, 0xe2, 0x2d
+};
+unsigned int gen_slx45_len = 4;
+unsigned char gen_slx46[] = {
+ 0x48, 0xc1, 0xe2, 0x2e
+};
+unsigned int gen_slx46_len = 4;
+unsigned char gen_slx47[] = {
+ 0x48, 0xc1, 0xe2, 0x2f
+};
+unsigned int gen_slx47_len = 4;
+unsigned char gen_slx48[] = {
+ 0x48, 0xc1, 0xe2, 0x30
+};
+unsigned int gen_slx48_len = 4;
+unsigned char gen_slx49[] = {
+ 0x48, 0xc1, 0xe2, 0x31
+};
+unsigned int gen_slx49_len = 4;
+unsigned char gen_slx5[] = {
+ 0x48, 0xc1, 0xe2, 0x05
+};
+unsigned int gen_slx5_len = 4;
+unsigned char gen_slx50[] = {
+ 0x48, 0xc1, 0xe2, 0x32
+};
+unsigned int gen_slx50_len = 4;
+unsigned char gen_slx51[] = {
+ 0x48, 0xc1, 0xe2, 0x33
+};
+unsigned int gen_slx51_len = 4;
+unsigned char gen_slx52[] = {
+ 0x48, 0xc1, 0xe2, 0x34
+};
+unsigned int gen_slx52_len = 4;
+unsigned char gen_slx53[] = {
+ 0x48, 0xc1, 0xe2, 0x35
+};
+unsigned int gen_slx53_len = 4;
+unsigned char gen_slx54[] = {
+ 0x48, 0xc1, 0xe2, 0x36
+};
+unsigned int gen_slx54_len = 4;
+unsigned char gen_slx55[] = {
+ 0x48, 0xc1, 0xe2, 0x37
+};
+unsigned int gen_slx55_len = 4;
+unsigned char gen_slx56[] = {
+ 0x48, 0xc1, 0xe2, 0x38
+};
+unsigned int gen_slx56_len = 4;
+unsigned char gen_slx57[] = {
+ 0x48, 0xc1, 0xe2, 0x39
+};
+unsigned int gen_slx57_len = 4;
+unsigned char gen_slx58[] = {
+ 0x48, 0xc1, 0xe2, 0x3a
+};
+unsigned int gen_slx58_len = 4;
+unsigned char gen_slx59[] = {
+ 0x48, 0xc1, 0xe2, 0x3b
+};
+unsigned int gen_slx59_len = 4;
+unsigned char gen_slx6[] = {
+ 0x48, 0xc1, 0xe2, 0x06
+};
+unsigned int gen_slx6_len = 4;
+unsigned char gen_slx60[] = {
+ 0x48, 0xc1, 0xe2, 0x3c
+};
+unsigned int gen_slx60_len = 4;
+unsigned char gen_slx61[] = {
+ 0x48, 0xc1, 0xe2, 0x3d
+};
+unsigned int gen_slx61_len = 4;
+unsigned char gen_slx62[] = {
+ 0x48, 0xc1, 0xe2, 0x3e
+};
+unsigned int gen_slx62_len = 4;
+unsigned char gen_slx63[] = {
+ 0x48, 0xc1, 0xe2, 0x3f
+};
+unsigned int gen_slx63_len = 4;
+unsigned char gen_slx7[] = {
+ 0x48, 0xc1, 0xe2, 0x07
+};
+unsigned int gen_slx7_len = 4;
+unsigned char gen_slx8[] = {
+ 0x48, 0xc1, 0xe2, 0x08
+};
+unsigned int gen_slx8_len = 4;
+unsigned char gen_slx9[] = {
+ 0x48, 0xc1, 0xe2, 0x09
+};
+unsigned int gen_slx9_len = 4;
+unsigned char gen_sly0[] = {
+};
+unsigned int gen_sly0_len = 0;
+unsigned char gen_sly1[] = {
+ 0x48, 0x01, 0xc9
+};
+unsigned int gen_sly1_len = 3;
+unsigned char gen_sly10[] = {
+ 0x48, 0xc1, 0xe1, 0x0a
+};
+unsigned int gen_sly10_len = 4;
+unsigned char gen_sly11[] = {
+ 0x48, 0xc1, 0xe1, 0x0b
+};
+unsigned int gen_sly11_len = 4;
+unsigned char gen_sly12[] = {
+ 0x48, 0xc1, 0xe1, 0x0c
+};
+unsigned int gen_sly12_len = 4;
+unsigned char gen_sly13[] = {
+ 0x48, 0xc1, 0xe1, 0x0d
+};
+unsigned int gen_sly13_len = 4;
+unsigned char gen_sly14[] = {
+ 0x48, 0xc1, 0xe1, 0x0e
+};
+unsigned int gen_sly14_len = 4;
+unsigned char gen_sly15[] = {
+ 0x48, 0xc1, 0xe1, 0x0f
+};
+unsigned int gen_sly15_len = 4;
+unsigned char gen_sly16[] = {
+ 0x48, 0xc1, 0xe1, 0x10
+};
+unsigned int gen_sly16_len = 4;
+unsigned char gen_sly17[] = {
+ 0x48, 0xc1, 0xe1, 0x11
+};
+unsigned int gen_sly17_len = 4;
+unsigned char gen_sly18[] = {
+ 0x48, 0xc1, 0xe1, 0x12
+};
+unsigned int gen_sly18_len = 4;
+unsigned char gen_sly19[] = {
+ 0x48, 0xc1, 0xe1, 0x13
+};
+unsigned int gen_sly19_len = 4;
+unsigned char gen_sly2[] = {
+ 0x48, 0xc1, 0xe1, 0x02
+};
+unsigned int gen_sly2_len = 4;
+unsigned char gen_sly20[] = {
+ 0x48, 0xc1, 0xe1, 0x14
+};
+unsigned int gen_sly20_len = 4;
+unsigned char gen_sly21[] = {
+ 0x48, 0xc1, 0xe1, 0x15
+};
+unsigned int gen_sly21_len = 4;
+unsigned char gen_sly22[] = {
+ 0x48, 0xc1, 0xe1, 0x16
+};
+unsigned int gen_sly22_len = 4;
+unsigned char gen_sly23[] = {
+ 0x48, 0xc1, 0xe1, 0x17
+};
+unsigned int gen_sly23_len = 4;
+unsigned char gen_sly24[] = {
+ 0x48, 0xc1, 0xe1, 0x18
+};
+unsigned int gen_sly24_len = 4;
+unsigned char gen_sly25[] = {
+ 0x48, 0xc1, 0xe1, 0x19
+};
+unsigned int gen_sly25_len = 4;
+unsigned char gen_sly26[] = {
+ 0x48, 0xc1, 0xe1, 0x1a
+};
+unsigned int gen_sly26_len = 4;
+unsigned char gen_sly27[] = {
+ 0x48, 0xc1, 0xe1, 0x1b
+};
+unsigned int gen_sly27_len = 4;
+unsigned char gen_sly28[] = {
+ 0x48, 0xc1, 0xe1, 0x1c
+};
+unsigned int gen_sly28_len = 4;
+unsigned char gen_sly29[] = {
+ 0x48, 0xc1, 0xe1, 0x1d
+};
+unsigned int gen_sly29_len = 4;
+unsigned char gen_sly3[] = {
+ 0x48, 0xc1, 0xe1, 0x03
+};
+unsigned int gen_sly3_len = 4;
+unsigned char gen_sly30[] = {
+ 0x48, 0xc1, 0xe1, 0x1e
+};
+unsigned int gen_sly30_len = 4;
+unsigned char gen_sly31[] = {
+ 0x48, 0xc1, 0xe1, 0x1f
+};
+unsigned int gen_sly31_len = 4;
+unsigned char gen_sly32[] = {
+ 0x48, 0xc1, 0xe1, 0x20
+};
+unsigned int gen_sly32_len = 4;
+unsigned char gen_sly33[] = {
+ 0x48, 0xc1, 0xe1, 0x21
+};
+unsigned int gen_sly33_len = 4;
+unsigned char gen_sly34[] = {
+ 0x48, 0xc1, 0xe1, 0x22
+};
+unsigned int gen_sly34_len = 4;
+unsigned char gen_sly35[] = {
+ 0x48, 0xc1, 0xe1, 0x23
+};
+unsigned int gen_sly35_len = 4;
+unsigned char gen_sly36[] = {
+ 0x48, 0xc1, 0xe1, 0x24
+};
+unsigned int gen_sly36_len = 4;
+unsigned char gen_sly37[] = {
+ 0x48, 0xc1, 0xe1, 0x25
+};
+unsigned int gen_sly37_len = 4;
+unsigned char gen_sly38[] = {
+ 0x48, 0xc1, 0xe1, 0x26
+};
+unsigned int gen_sly38_len = 4;
+unsigned char gen_sly39[] = {
+ 0x48, 0xc1, 0xe1, 0x27
+};
+unsigned int gen_sly39_len = 4;
+unsigned char gen_sly4[] = {
+ 0x48, 0xc1, 0xe1, 0x04
+};
+unsigned int gen_sly4_len = 4;
+unsigned char gen_sly40[] = {
+ 0x48, 0xc1, 0xe1, 0x28
+};
+unsigned int gen_sly40_len = 4;
+unsigned char gen_sly41[] = {
+ 0x48, 0xc1, 0xe1, 0x29
+};
+unsigned int gen_sly41_len = 4;
+unsigned char gen_sly42[] = {
+ 0x48, 0xc1, 0xe1, 0x2a
+};
+unsigned int gen_sly42_len = 4;
+unsigned char gen_sly43[] = {
+ 0x48, 0xc1, 0xe1, 0x2b
+};
+unsigned int gen_sly43_len = 4;
+unsigned char gen_sly44[] = {
+ 0x48, 0xc1, 0xe1, 0x2c
+};
+unsigned int gen_sly44_len = 4;
+unsigned char gen_sly45[] = {
+ 0x48, 0xc1, 0xe1, 0x2d
+};
+unsigned int gen_sly45_len = 4;
+unsigned char gen_sly46[] = {
+ 0x48, 0xc1, 0xe1, 0x2e
+};
+unsigned int gen_sly46_len = 4;
+unsigned char gen_sly47[] = {
+ 0x48, 0xc1, 0xe1, 0x2f
+};
+unsigned int gen_sly47_len = 4;
+unsigned char gen_sly48[] = {
+ 0x48, 0xc1, 0xe1, 0x30
+};
+unsigned int gen_sly48_len = 4;
+unsigned char gen_sly49[] = {
+ 0x48, 0xc1, 0xe1, 0x31
+};
+unsigned int gen_sly49_len = 4;
+unsigned char gen_sly5[] = {
+ 0x48, 0xc1, 0xe1, 0x05
+};
+unsigned int gen_sly5_len = 4;
+unsigned char gen_sly50[] = {
+ 0x48, 0xc1, 0xe1, 0x32
+};
+unsigned int gen_sly50_len = 4;
+unsigned char gen_sly51[] = {
+ 0x48, 0xc1, 0xe1, 0x33
+};
+unsigned int gen_sly51_len = 4;
+unsigned char gen_sly52[] = {
+ 0x48, 0xc1, 0xe1, 0x34
+};
+unsigned int gen_sly52_len = 4;
+unsigned char gen_sly53[] = {
+ 0x48, 0xc1, 0xe1, 0x35
+};
+unsigned int gen_sly53_len = 4;
+unsigned char gen_sly54[] = {
+ 0x48, 0xc1, 0xe1, 0x36
+};
+unsigned int gen_sly54_len = 4;
+unsigned char gen_sly55[] = {
+ 0x48, 0xc1, 0xe1, 0x37
+};
+unsigned int gen_sly55_len = 4;
+unsigned char gen_sly56[] = {
+ 0x48, 0xc1, 0xe1, 0x38
+};
+unsigned int gen_sly56_len = 4;
+unsigned char gen_sly57[] = {
+ 0x48, 0xc1, 0xe1, 0x39
+};
+unsigned int gen_sly57_len = 4;
+unsigned char gen_sly58[] = {
+ 0x48, 0xc1, 0xe1, 0x3a
+};
+unsigned int gen_sly58_len = 4;
+unsigned char gen_sly59[] = {
+ 0x48, 0xc1, 0xe1, 0x3b
+};
+unsigned int gen_sly59_len = 4;
+unsigned char gen_sly6[] = {
+ 0x48, 0xc1, 0xe1, 0x06
+};
+unsigned int gen_sly6_len = 4;
+unsigned char gen_sly60[] = {
+ 0x48, 0xc1, 0xe1, 0x3c
+};
+unsigned int gen_sly60_len = 4;
+unsigned char gen_sly61[] = {
+ 0x48, 0xc1, 0xe1, 0x3d
+};
+unsigned int gen_sly61_len = 4;
+unsigned char gen_sly62[] = {
+ 0x48, 0xc1, 0xe1, 0x3e
+};
+unsigned int gen_sly62_len = 4;
+unsigned char gen_sly63[] = {
+ 0x48, 0xc1, 0xe1, 0x3f
+};
+unsigned int gen_sly63_len = 4;
+unsigned char gen_sly7[] = {
+ 0x48, 0xc1, 0xe1, 0x07
+};
+unsigned int gen_sly7_len = 4;
+unsigned char gen_sly8[] = {
+ 0x48, 0xc1, 0xe1, 0x08
+};
+unsigned int gen_sly8_len = 4;
+unsigned char gen_sly9[] = {
+ 0x48, 0xc1, 0xe1, 0x09
+};
+unsigned int gen_sly9_len = 4;
+unsigned char gen_sra0[] = {
+};
+unsigned int gen_sra0_len = 0;
+unsigned char gen_sra1[] = {
+ 0x48, 0xd1, 0xfe
+};
+unsigned int gen_sra1_len = 3;
+unsigned char gen_sra10[] = {
+ 0x48, 0xc1, 0xfe, 0x0a
+};
+unsigned int gen_sra10_len = 4;
+unsigned char gen_sra11[] = {
+ 0x48, 0xc1, 0xfe, 0x0b
+};
+unsigned int gen_sra11_len = 4;
+unsigned char gen_sra12[] = {
+ 0x48, 0xc1, 0xfe, 0x0c
+};
+unsigned int gen_sra12_len = 4;
+unsigned char gen_sra13[] = {
+ 0x48, 0xc1, 0xfe, 0x0d
+};
+unsigned int gen_sra13_len = 4;
+unsigned char gen_sra14[] = {
+ 0x48, 0xc1, 0xfe, 0x0e
+};
+unsigned int gen_sra14_len = 4;
+unsigned char gen_sra15[] = {
+ 0x48, 0xc1, 0xfe, 0x0f
+};
+unsigned int gen_sra15_len = 4;
+unsigned char gen_sra16[] = {
+ 0x48, 0xc1, 0xfe, 0x10
+};
+unsigned int gen_sra16_len = 4;
+unsigned char gen_sra17[] = {
+ 0x48, 0xc1, 0xfe, 0x11
+};
+unsigned int gen_sra17_len = 4;
+unsigned char gen_sra18[] = {
+ 0x48, 0xc1, 0xfe, 0x12
+};
+unsigned int gen_sra18_len = 4;
+unsigned char gen_sra19[] = {
+ 0x48, 0xc1, 0xfe, 0x13
+};
+unsigned int gen_sra19_len = 4;
+unsigned char gen_sra2[] = {
+ 0x48, 0xc1, 0xfe, 0x02
+};
+unsigned int gen_sra2_len = 4;
+unsigned char gen_sra20[] = {
+ 0x48, 0xc1, 0xfe, 0x14
+};
+unsigned int gen_sra20_len = 4;
+unsigned char gen_sra21[] = {
+ 0x48, 0xc1, 0xfe, 0x15
+};
+unsigned int gen_sra21_len = 4;
+unsigned char gen_sra22[] = {
+ 0x48, 0xc1, 0xfe, 0x16
+};
+unsigned int gen_sra22_len = 4;
+unsigned char gen_sra23[] = {
+ 0x48, 0xc1, 0xfe, 0x17
+};
+unsigned int gen_sra23_len = 4;
+unsigned char gen_sra24[] = {
+ 0x48, 0xc1, 0xfe, 0x18
+};
+unsigned int gen_sra24_len = 4;
+unsigned char gen_sra25[] = {
+ 0x48, 0xc1, 0xfe, 0x19
+};
+unsigned int gen_sra25_len = 4;
+unsigned char gen_sra26[] = {
+ 0x48, 0xc1, 0xfe, 0x1a
+};
+unsigned int gen_sra26_len = 4;
+unsigned char gen_sra27[] = {
+ 0x48, 0xc1, 0xfe, 0x1b
+};
+unsigned int gen_sra27_len = 4;
+unsigned char gen_sra28[] = {
+ 0x48, 0xc1, 0xfe, 0x1c
+};
+unsigned int gen_sra28_len = 4;
+unsigned char gen_sra29[] = {
+ 0x48, 0xc1, 0xfe, 0x1d
+};
+unsigned int gen_sra29_len = 4;
+unsigned char gen_sra3[] = {
+ 0x48, 0xc1, 0xfe, 0x03
+};
+unsigned int gen_sra3_len = 4;
+unsigned char gen_sra30[] = {
+ 0x48, 0xc1, 0xfe, 0x1e
+};
+unsigned int gen_sra30_len = 4;
+unsigned char gen_sra31[] = {
+ 0x48, 0xc1, 0xfe, 0x1f
+};
+unsigned int gen_sra31_len = 4;
+unsigned char gen_sra32[] = {
+ 0x48, 0xc1, 0xfe, 0x20
+};
+unsigned int gen_sra32_len = 4;
+unsigned char gen_sra33[] = {
+ 0x48, 0xc1, 0xfe, 0x21
+};
+unsigned int gen_sra33_len = 4;
+unsigned char gen_sra34[] = {
+ 0x48, 0xc1, 0xfe, 0x22
+};
+unsigned int gen_sra34_len = 4;
+unsigned char gen_sra35[] = {
+ 0x48, 0xc1, 0xfe, 0x23
+};
+unsigned int gen_sra35_len = 4;
+unsigned char gen_sra36[] = {
+ 0x48, 0xc1, 0xfe, 0x24
+};
+unsigned int gen_sra36_len = 4;
+unsigned char gen_sra37[] = {
+ 0x48, 0xc1, 0xfe, 0x25
+};
+unsigned int gen_sra37_len = 4;
+unsigned char gen_sra38[] = {
+ 0x48, 0xc1, 0xfe, 0x26
+};
+unsigned int gen_sra38_len = 4;
+unsigned char gen_sra39[] = {
+ 0x48, 0xc1, 0xfe, 0x27
+};
+unsigned int gen_sra39_len = 4;
+unsigned char gen_sra4[] = {
+ 0x48, 0xc1, 0xfe, 0x04
+};
+unsigned int gen_sra4_len = 4;
+unsigned char gen_sra40[] = {
+ 0x48, 0xc1, 0xfe, 0x28
+};
+unsigned int gen_sra40_len = 4;
+unsigned char gen_sra41[] = {
+ 0x48, 0xc1, 0xfe, 0x29
+};
+unsigned int gen_sra41_len = 4;
+unsigned char gen_sra42[] = {
+ 0x48, 0xc1, 0xfe, 0x2a
+};
+unsigned int gen_sra42_len = 4;
+unsigned char gen_sra43[] = {
+ 0x48, 0xc1, 0xfe, 0x2b
+};
+unsigned int gen_sra43_len = 4;
+unsigned char gen_sra44[] = {
+ 0x48, 0xc1, 0xfe, 0x2c
+};
+unsigned int gen_sra44_len = 4;
+unsigned char gen_sra45[] = {
+ 0x48, 0xc1, 0xfe, 0x2d
+};
+unsigned int gen_sra45_len = 4;
+unsigned char gen_sra46[] = {
+ 0x48, 0xc1, 0xfe, 0x2e
+};
+unsigned int gen_sra46_len = 4;
+unsigned char gen_sra47[] = {
+ 0x48, 0xc1, 0xfe, 0x2f
+};
+unsigned int gen_sra47_len = 4;
+unsigned char gen_sra48[] = {
+ 0x48, 0xc1, 0xfe, 0x30
+};
+unsigned int gen_sra48_len = 4;
+unsigned char gen_sra49[] = {
+ 0x48, 0xc1, 0xfe, 0x31
+};
+unsigned int gen_sra49_len = 4;
+unsigned char gen_sra5[] = {
+ 0x48, 0xc1, 0xfe, 0x05
+};
+unsigned int gen_sra5_len = 4;
+unsigned char gen_sra50[] = {
+ 0x48, 0xc1, 0xfe, 0x32
+};
+unsigned int gen_sra50_len = 4;
+unsigned char gen_sra51[] = {
+ 0x48, 0xc1, 0xfe, 0x33
+};
+unsigned int gen_sra51_len = 4;
+unsigned char gen_sra52[] = {
+ 0x48, 0xc1, 0xfe, 0x34
+};
+unsigned int gen_sra52_len = 4;
+unsigned char gen_sra53[] = {
+ 0x48, 0xc1, 0xfe, 0x35
+};
+unsigned int gen_sra53_len = 4;
+unsigned char gen_sra54[] = {
+ 0x48, 0xc1, 0xfe, 0x36
+};
+unsigned int gen_sra54_len = 4;
+unsigned char gen_sra55[] = {
+ 0x48, 0xc1, 0xfe, 0x37
+};
+unsigned int gen_sra55_len = 4;
+unsigned char gen_sra56[] = {
+ 0x48, 0xc1, 0xfe, 0x38
+};
+unsigned int gen_sra56_len = 4;
+unsigned char gen_sra57[] = {
+ 0x48, 0xc1, 0xfe, 0x39
+};
+unsigned int gen_sra57_len = 4;
+unsigned char gen_sra58[] = {
+ 0x48, 0xc1, 0xfe, 0x3a
+};
+unsigned int gen_sra58_len = 4;
+unsigned char gen_sra59[] = {
+ 0x48, 0xc1, 0xfe, 0x3b
+};
+unsigned int gen_sra59_len = 4;
+unsigned char gen_sra6[] = {
+ 0x48, 0xc1, 0xfe, 0x06
+};
+unsigned int gen_sra6_len = 4;
+unsigned char gen_sra60[] = {
+ 0x48, 0xc1, 0xfe, 0x3c
+};
+unsigned int gen_sra60_len = 4;
+unsigned char gen_sra61[] = {
+ 0x48, 0xc1, 0xfe, 0x3d
+};
+unsigned int gen_sra61_len = 4;
+unsigned char gen_sra62[] = {
+ 0x48, 0xc1, 0xfe, 0x3e
+};
+unsigned int gen_sra62_len = 4;
+unsigned char gen_sra63[] = {
+ 0x48, 0xc1, 0xfe, 0x3f
+};
+unsigned int gen_sra63_len = 4;
+unsigned char gen_sra7[] = {
+ 0x48, 0xc1, 0xfe, 0x07
+};
+unsigned int gen_sra7_len = 4;
+unsigned char gen_sra8[] = {
+ 0x48, 0xc1, 0xfe, 0x08
+};
+unsigned int gen_sra8_len = 4;
+unsigned char gen_sra9[] = {
+ 0x48, 0xc1, 0xfe, 0x09
+};
+unsigned int gen_sra9_len = 4;
+unsigned char gen_sro0[] = {
+};
+unsigned int gen_sro0_len = 0;
+unsigned char gen_sro1[] = {
+ 0x49, 0xd1, 0xf8
+};
+unsigned int gen_sro1_len = 3;
+unsigned char gen_sro10[] = {
+ 0x49, 0xc1, 0xf8, 0x0a
+};
+unsigned int gen_sro10_len = 4;
+unsigned char gen_sro11[] = {
+ 0x49, 0xc1, 0xf8, 0x0b
+};
+unsigned int gen_sro11_len = 4;
+unsigned char gen_sro12[] = {
+ 0x49, 0xc1, 0xf8, 0x0c
+};
+unsigned int gen_sro12_len = 4;
+unsigned char gen_sro13[] = {
+ 0x49, 0xc1, 0xf8, 0x0d
+};
+unsigned int gen_sro13_len = 4;
+unsigned char gen_sro14[] = {
+ 0x49, 0xc1, 0xf8, 0x0e
+};
+unsigned int gen_sro14_len = 4;
+unsigned char gen_sro15[] = {
+ 0x49, 0xc1, 0xf8, 0x0f
+};
+unsigned int gen_sro15_len = 4;
+unsigned char gen_sro16[] = {
+ 0x49, 0xc1, 0xf8, 0x10
+};
+unsigned int gen_sro16_len = 4;
+unsigned char gen_sro17[] = {
+ 0x49, 0xc1, 0xf8, 0x11
+};
+unsigned int gen_sro17_len = 4;
+unsigned char gen_sro18[] = {
+ 0x49, 0xc1, 0xf8, 0x12
+};
+unsigned int gen_sro18_len = 4;
+unsigned char gen_sro19[] = {
+ 0x49, 0xc1, 0xf8, 0x13
+};
+unsigned int gen_sro19_len = 4;
+unsigned char gen_sro2[] = {
+ 0x49, 0xc1, 0xf8, 0x02
+};
+unsigned int gen_sro2_len = 4;
+unsigned char gen_sro20[] = {
+ 0x49, 0xc1, 0xf8, 0x14
+};
+unsigned int gen_sro20_len = 4;
+unsigned char gen_sro21[] = {
+ 0x49, 0xc1, 0xf8, 0x15
+};
+unsigned int gen_sro21_len = 4;
+unsigned char gen_sro22[] = {
+ 0x49, 0xc1, 0xf8, 0x16
+};
+unsigned int gen_sro22_len = 4;
+unsigned char gen_sro23[] = {
+ 0x49, 0xc1, 0xf8, 0x17
+};
+unsigned int gen_sro23_len = 4;
+unsigned char gen_sro24[] = {
+ 0x49, 0xc1, 0xf8, 0x18
+};
+unsigned int gen_sro24_len = 4;
+unsigned char gen_sro25[] = {
+ 0x49, 0xc1, 0xf8, 0x19
+};
+unsigned int gen_sro25_len = 4;
+unsigned char gen_sro26[] = {
+ 0x49, 0xc1, 0xf8, 0x1a
+};
+unsigned int gen_sro26_len = 4;
+unsigned char gen_sro27[] = {
+ 0x49, 0xc1, 0xf8, 0x1b
+};
+unsigned int gen_sro27_len = 4;
+unsigned char gen_sro28[] = {
+ 0x49, 0xc1, 0xf8, 0x1c
+};
+unsigned int gen_sro28_len = 4;
+unsigned char gen_sro29[] = {
+ 0x49, 0xc1, 0xf8, 0x1d
+};
+unsigned int gen_sro29_len = 4;
+unsigned char gen_sro3[] = {
+ 0x49, 0xc1, 0xf8, 0x03
+};
+unsigned int gen_sro3_len = 4;
+unsigned char gen_sro30[] = {
+ 0x49, 0xc1, 0xf8, 0x1e
+};
+unsigned int gen_sro30_len = 4;
+unsigned char gen_sro31[] = {
+ 0x49, 0xc1, 0xf8, 0x1f
+};
+unsigned int gen_sro31_len = 4;
+unsigned char gen_sro32[] = {
+ 0x49, 0xc1, 0xf8, 0x20
+};
+unsigned int gen_sro32_len = 4;
+unsigned char gen_sro33[] = {
+ 0x49, 0xc1, 0xf8, 0x21
+};
+unsigned int gen_sro33_len = 4;
+unsigned char gen_sro34[] = {
+ 0x49, 0xc1, 0xf8, 0x22
+};
+unsigned int gen_sro34_len = 4;
+unsigned char gen_sro35[] = {
+ 0x49, 0xc1, 0xf8, 0x23
+};
+unsigned int gen_sro35_len = 4;
+unsigned char gen_sro36[] = {
+ 0x49, 0xc1, 0xf8, 0x24
+};
+unsigned int gen_sro36_len = 4;
+unsigned char gen_sro37[] = {
+ 0x49, 0xc1, 0xf8, 0x25
+};
+unsigned int gen_sro37_len = 4;
+unsigned char gen_sro38[] = {
+ 0x49, 0xc1, 0xf8, 0x26
+};
+unsigned int gen_sro38_len = 4;
+unsigned char gen_sro39[] = {
+ 0x49, 0xc1, 0xf8, 0x27
+};
+unsigned int gen_sro39_len = 4;
+unsigned char gen_sro4[] = {
+ 0x49, 0xc1, 0xf8, 0x04
+};
+unsigned int gen_sro4_len = 4;
+unsigned char gen_sro40[] = {
+ 0x49, 0xc1, 0xf8, 0x28
+};
+unsigned int gen_sro40_len = 4;
+unsigned char gen_sro41[] = {
+ 0x49, 0xc1, 0xf8, 0x29
+};
+unsigned int gen_sro41_len = 4;
+unsigned char gen_sro42[] = {
+ 0x49, 0xc1, 0xf8, 0x2a
+};
+unsigned int gen_sro42_len = 4;
+unsigned char gen_sro43[] = {
+ 0x49, 0xc1, 0xf8, 0x2b
+};
+unsigned int gen_sro43_len = 4;
+unsigned char gen_sro44[] = {
+ 0x49, 0xc1, 0xf8, 0x2c
+};
+unsigned int gen_sro44_len = 4;
+unsigned char gen_sro45[] = {
+ 0x49, 0xc1, 0xf8, 0x2d
+};
+unsigned int gen_sro45_len = 4;
+unsigned char gen_sro46[] = {
+ 0x49, 0xc1, 0xf8, 0x2e
+};
+unsigned int gen_sro46_len = 4;
+unsigned char gen_sro47[] = {
+ 0x49, 0xc1, 0xf8, 0x2f
+};
+unsigned int gen_sro47_len = 4;
+unsigned char gen_sro48[] = {
+ 0x49, 0xc1, 0xf8, 0x30
+};
+unsigned int gen_sro48_len = 4;
+unsigned char gen_sro49[] = {
+ 0x49, 0xc1, 0xf8, 0x31
+};
+unsigned int gen_sro49_len = 4;
+unsigned char gen_sro5[] = {
+ 0x49, 0xc1, 0xf8, 0x05
+};
+unsigned int gen_sro5_len = 4;
+unsigned char gen_sro50[] = {
+ 0x49, 0xc1, 0xf8, 0x32
+};
+unsigned int gen_sro50_len = 4;
+unsigned char gen_sro51[] = {
+ 0x49, 0xc1, 0xf8, 0x33
+};
+unsigned int gen_sro51_len = 4;
+unsigned char gen_sro52[] = {
+ 0x49, 0xc1, 0xf8, 0x34
+};
+unsigned int gen_sro52_len = 4;
+unsigned char gen_sro53[] = {
+ 0x49, 0xc1, 0xf8, 0x35
+};
+unsigned int gen_sro53_len = 4;
+unsigned char gen_sro54[] = {
+ 0x49, 0xc1, 0xf8, 0x36
+};
+unsigned int gen_sro54_len = 4;
+unsigned char gen_sro55[] = {
+ 0x49, 0xc1, 0xf8, 0x37
+};
+unsigned int gen_sro55_len = 4;
+unsigned char gen_sro56[] = {
+ 0x49, 0xc1, 0xf8, 0x38
+};
+unsigned int gen_sro56_len = 4;
+unsigned char gen_sro57[] = {
+ 0x49, 0xc1, 0xf8, 0x39
+};
+unsigned int gen_sro57_len = 4;
+unsigned char gen_sro58[] = {
+ 0x49, 0xc1, 0xf8, 0x3a
+};
+unsigned int gen_sro58_len = 4;
+unsigned char gen_sro59[] = {
+ 0x49, 0xc1, 0xf8, 0x3b
+};
+unsigned int gen_sro59_len = 4;
+unsigned char gen_sro6[] = {
+ 0x49, 0xc1, 0xf8, 0x06
+};
+unsigned int gen_sro6_len = 4;
+unsigned char gen_sro60[] = {
+ 0x49, 0xc1, 0xf8, 0x3c
+};
+unsigned int gen_sro60_len = 4;
+unsigned char gen_sro61[] = {
+ 0x49, 0xc1, 0xf8, 0x3d
+};
+unsigned int gen_sro61_len = 4;
+unsigned char gen_sro62[] = {
+ 0x49, 0xc1, 0xf8, 0x3e
+};
+unsigned int gen_sro62_len = 4;
+unsigned char gen_sro63[] = {
+ 0x49, 0xc1, 0xf8, 0x3f
+};
+unsigned int gen_sro63_len = 4;
+unsigned char gen_sro7[] = {
+ 0x49, 0xc1, 0xf8, 0x07
+};
+unsigned int gen_sro7_len = 4;
+unsigned char gen_sro8[] = {
+ 0x49, 0xc1, 0xf8, 0x08
+};
+unsigned int gen_sro8_len = 4;
+unsigned char gen_sro9[] = {
+ 0x49, 0xc1, 0xf8, 0x09
+};
+unsigned int gen_sro9_len = 4;
+unsigned char gen_srx0[] = {
+};
+unsigned int gen_srx0_len = 0;
+unsigned char gen_srx1[] = {
+ 0x48, 0xd1, 0xfa
+};
+unsigned int gen_srx1_len = 3;
+unsigned char gen_srx10[] = {
+ 0x48, 0xc1, 0xfa, 0x0a
+};
+unsigned int gen_srx10_len = 4;
+unsigned char gen_srx11[] = {
+ 0x48, 0xc1, 0xfa, 0x0b
+};
+unsigned int gen_srx11_len = 4;
+unsigned char gen_srx12[] = {
+ 0x48, 0xc1, 0xfa, 0x0c
+};
+unsigned int gen_srx12_len = 4;
+unsigned char gen_srx13[] = {
+ 0x48, 0xc1, 0xfa, 0x0d
+};
+unsigned int gen_srx13_len = 4;
+unsigned char gen_srx14[] = {
+ 0x48, 0xc1, 0xfa, 0x0e
+};
+unsigned int gen_srx14_len = 4;
+unsigned char gen_srx15[] = {
+ 0x48, 0xc1, 0xfa, 0x0f
+};
+unsigned int gen_srx15_len = 4;
+unsigned char gen_srx16[] = {
+ 0x48, 0xc1, 0xfa, 0x10
+};
+unsigned int gen_srx16_len = 4;
+unsigned char gen_srx17[] = {
+ 0x48, 0xc1, 0xfa, 0x11
+};
+unsigned int gen_srx17_len = 4;
+unsigned char gen_srx18[] = {
+ 0x48, 0xc1, 0xfa, 0x12
+};
+unsigned int gen_srx18_len = 4;
+unsigned char gen_srx19[] = {
+ 0x48, 0xc1, 0xfa, 0x13
+};
+unsigned int gen_srx19_len = 4;
+unsigned char gen_srx2[] = {
+ 0x48, 0xc1, 0xfa, 0x02
+};
+unsigned int gen_srx2_len = 4;
+unsigned char gen_srx20[] = {
+ 0x48, 0xc1, 0xfa, 0x14
+};
+unsigned int gen_srx20_len = 4;
+unsigned char gen_srx21[] = {
+ 0x48, 0xc1, 0xfa, 0x15
+};
+unsigned int gen_srx21_len = 4;
+unsigned char gen_srx22[] = {
+ 0x48, 0xc1, 0xfa, 0x16
+};
+unsigned int gen_srx22_len = 4;
+unsigned char gen_srx23[] = {
+ 0x48, 0xc1, 0xfa, 0x17
+};
+unsigned int gen_srx23_len = 4;
+unsigned char gen_srx24[] = {
+ 0x48, 0xc1, 0xfa, 0x18
+};
+unsigned int gen_srx24_len = 4;
+unsigned char gen_srx25[] = {
+ 0x48, 0xc1, 0xfa, 0x19
+};
+unsigned int gen_srx25_len = 4;
+unsigned char gen_srx26[] = {
+ 0x48, 0xc1, 0xfa, 0x1a
+};
+unsigned int gen_srx26_len = 4;
+unsigned char gen_srx27[] = {
+ 0x48, 0xc1, 0xfa, 0x1b
+};
+unsigned int gen_srx27_len = 4;
+unsigned char gen_srx28[] = {
+ 0x48, 0xc1, 0xfa, 0x1c
+};
+unsigned int gen_srx28_len = 4;
+unsigned char gen_srx29[] = {
+ 0x48, 0xc1, 0xfa, 0x1d
+};
+unsigned int gen_srx29_len = 4;
+unsigned char gen_srx3[] = {
+ 0x48, 0xc1, 0xfa, 0x03
+};
+unsigned int gen_srx3_len = 4;
+unsigned char gen_srx30[] = {
+ 0x48, 0xc1, 0xfa, 0x1e
+};
+unsigned int gen_srx30_len = 4;
+unsigned char gen_srx31[] = {
+ 0x48, 0xc1, 0xfa, 0x1f
+};
+unsigned int gen_srx31_len = 4;
+unsigned char gen_srx32[] = {
+ 0x48, 0xc1, 0xfa, 0x20
+};
+unsigned int gen_srx32_len = 4;
+unsigned char gen_srx33[] = {
+ 0x48, 0xc1, 0xfa, 0x21
+};
+unsigned int gen_srx33_len = 4;
+unsigned char gen_srx34[] = {
+ 0x48, 0xc1, 0xfa, 0x22
+};
+unsigned int gen_srx34_len = 4;
+unsigned char gen_srx35[] = {
+ 0x48, 0xc1, 0xfa, 0x23
+};
+unsigned int gen_srx35_len = 4;
+unsigned char gen_srx36[] = {
+ 0x48, 0xc1, 0xfa, 0x24
+};
+unsigned int gen_srx36_len = 4;
+unsigned char gen_srx37[] = {
+ 0x48, 0xc1, 0xfa, 0x25
+};
+unsigned int gen_srx37_len = 4;
+unsigned char gen_srx38[] = {
+ 0x48, 0xc1, 0xfa, 0x26
+};
+unsigned int gen_srx38_len = 4;
+unsigned char gen_srx39[] = {
+ 0x48, 0xc1, 0xfa, 0x27
+};
+unsigned int gen_srx39_len = 4;
+unsigned char gen_srx4[] = {
+ 0x48, 0xc1, 0xfa, 0x04
+};
+unsigned int gen_srx4_len = 4;
+unsigned char gen_srx40[] = {
+ 0x48, 0xc1, 0xfa, 0x28
+};
+unsigned int gen_srx40_len = 4;
+unsigned char gen_srx41[] = {
+ 0x48, 0xc1, 0xfa, 0x29
+};
+unsigned int gen_srx41_len = 4;
+unsigned char gen_srx42[] = {
+ 0x48, 0xc1, 0xfa, 0x2a
+};
+unsigned int gen_srx42_len = 4;
+unsigned char gen_srx43[] = {
+ 0x48, 0xc1, 0xfa, 0x2b
+};
+unsigned int gen_srx43_len = 4;
+unsigned char gen_srx44[] = {
+ 0x48, 0xc1, 0xfa, 0x2c
+};
+unsigned int gen_srx44_len = 4;
+unsigned char gen_srx45[] = {
+ 0x48, 0xc1, 0xfa, 0x2d
+};
+unsigned int gen_srx45_len = 4;
+unsigned char gen_srx46[] = {
+ 0x48, 0xc1, 0xfa, 0x2e
+};
+unsigned int gen_srx46_len = 4;
+unsigned char gen_srx47[] = {
+ 0x48, 0xc1, 0xfa, 0x2f
+};
+unsigned int gen_srx47_len = 4;
+unsigned char gen_srx48[] = {
+ 0x48, 0xc1, 0xfa, 0x30
+};
+unsigned int gen_srx48_len = 4;
+unsigned char gen_srx49[] = {
+ 0x48, 0xc1, 0xfa, 0x31
+};
+unsigned int gen_srx49_len = 4;
+unsigned char gen_srx5[] = {
+ 0x48, 0xc1, 0xfa, 0x05
+};
+unsigned int gen_srx5_len = 4;
+unsigned char gen_srx50[] = {
+ 0x48, 0xc1, 0xfa, 0x32
+};
+unsigned int gen_srx50_len = 4;
+unsigned char gen_srx51[] = {
+ 0x48, 0xc1, 0xfa, 0x33
+};
+unsigned int gen_srx51_len = 4;
+unsigned char gen_srx52[] = {
+ 0x48, 0xc1, 0xfa, 0x34
+};
+unsigned int gen_srx52_len = 4;
+unsigned char gen_srx53[] = {
+ 0x48, 0xc1, 0xfa, 0x35
+};
+unsigned int gen_srx53_len = 4;
+unsigned char gen_srx54[] = {
+ 0x48, 0xc1, 0xfa, 0x36
+};
+unsigned int gen_srx54_len = 4;
+unsigned char gen_srx55[] = {
+ 0x48, 0xc1, 0xfa, 0x37
+};
+unsigned int gen_srx55_len = 4;
+unsigned char gen_srx56[] = {
+ 0x48, 0xc1, 0xfa, 0x38
+};
+unsigned int gen_srx56_len = 4;
+unsigned char gen_srx57[] = {
+ 0x48, 0xc1, 0xfa, 0x39
+};
+unsigned int gen_srx57_len = 4;
+unsigned char gen_srx58[] = {
+ 0x48, 0xc1, 0xfa, 0x3a
+};
+unsigned int gen_srx58_len = 4;
+unsigned char gen_srx59[] = {
+ 0x48, 0xc1, 0xfa, 0x3b
+};
+unsigned int gen_srx59_len = 4;
+unsigned char gen_srx6[] = {
+ 0x48, 0xc1, 0xfa, 0x06
+};
+unsigned int gen_srx6_len = 4;
+unsigned char gen_srx60[] = {
+ 0x48, 0xc1, 0xfa, 0x3c
+};
+unsigned int gen_srx60_len = 4;
+unsigned char gen_srx61[] = {
+ 0x48, 0xc1, 0xfa, 0x3d
+};
+unsigned int gen_srx61_len = 4;
+unsigned char gen_srx62[] = {
+ 0x48, 0xc1, 0xfa, 0x3e
+};
+unsigned int gen_srx62_len = 4;
+unsigned char gen_srx63[] = {
+ 0x48, 0xc1, 0xfa, 0x3f
+};
+unsigned int gen_srx63_len = 4;
+unsigned char gen_srx7[] = {
+ 0x48, 0xc1, 0xfa, 0x07
+};
+unsigned int gen_srx7_len = 4;
+unsigned char gen_srx8[] = {
+ 0x48, 0xc1, 0xfa, 0x08
+};
+unsigned int gen_srx8_len = 4;
+unsigned char gen_srx9[] = {
+ 0x48, 0xc1, 0xfa, 0x09
+};
+unsigned int gen_srx9_len = 4;
+unsigned char gen_sry0[] = {
+};
+unsigned int gen_sry0_len = 0;
+unsigned char gen_sry1[] = {
+ 0x48, 0xd1, 0xf9
+};
+unsigned int gen_sry1_len = 3;
+unsigned char gen_sry10[] = {
+ 0x48, 0xc1, 0xf9, 0x0a
+};
+unsigned int gen_sry10_len = 4;
+unsigned char gen_sry11[] = {
+ 0x48, 0xc1, 0xf9, 0x0b
+};
+unsigned int gen_sry11_len = 4;
+unsigned char gen_sry12[] = {
+ 0x48, 0xc1, 0xf9, 0x0c
+};
+unsigned int gen_sry12_len = 4;
+unsigned char gen_sry13[] = {
+ 0x48, 0xc1, 0xf9, 0x0d
+};
+unsigned int gen_sry13_len = 4;
+unsigned char gen_sry14[] = {
+ 0x48, 0xc1, 0xf9, 0x0e
+};
+unsigned int gen_sry14_len = 4;
+unsigned char gen_sry15[] = {
+ 0x48, 0xc1, 0xf9, 0x0f
+};
+unsigned int gen_sry15_len = 4;
+unsigned char gen_sry16[] = {
+ 0x48, 0xc1, 0xf9, 0x10
+};
+unsigned int gen_sry16_len = 4;
+unsigned char gen_sry17[] = {
+ 0x48, 0xc1, 0xf9, 0x11
+};
+unsigned int gen_sry17_len = 4;
+unsigned char gen_sry18[] = {
+ 0x48, 0xc1, 0xf9, 0x12
+};
+unsigned int gen_sry18_len = 4;
+unsigned char gen_sry19[] = {
+ 0x48, 0xc1, 0xf9, 0x13
+};
+unsigned int gen_sry19_len = 4;
+unsigned char gen_sry2[] = {
+ 0x48, 0xc1, 0xf9, 0x02
+};
+unsigned int gen_sry2_len = 4;
+unsigned char gen_sry20[] = {
+ 0x48, 0xc1, 0xf9, 0x14
+};
+unsigned int gen_sry20_len = 4;
+unsigned char gen_sry21[] = {
+ 0x48, 0xc1, 0xf9, 0x15
+};
+unsigned int gen_sry21_len = 4;
+unsigned char gen_sry22[] = {
+ 0x48, 0xc1, 0xf9, 0x16
+};
+unsigned int gen_sry22_len = 4;
+unsigned char gen_sry23[] = {
+ 0x48, 0xc1, 0xf9, 0x17
+};
+unsigned int gen_sry23_len = 4;
+unsigned char gen_sry24[] = {
+ 0x48, 0xc1, 0xf9, 0x18
+};
+unsigned int gen_sry24_len = 4;
+unsigned char gen_sry25[] = {
+ 0x48, 0xc1, 0xf9, 0x19
+};
+unsigned int gen_sry25_len = 4;
+unsigned char gen_sry26[] = {
+ 0x48, 0xc1, 0xf9, 0x1a
+};
+unsigned int gen_sry26_len = 4;
+unsigned char gen_sry27[] = {
+ 0x48, 0xc1, 0xf9, 0x1b
+};
+unsigned int gen_sry27_len = 4;
+unsigned char gen_sry28[] = {
+ 0x48, 0xc1, 0xf9, 0x1c
+};
+unsigned int gen_sry28_len = 4;
+unsigned char gen_sry29[] = {
+ 0x48, 0xc1, 0xf9, 0x1d
+};
+unsigned int gen_sry29_len = 4;
+unsigned char gen_sry3[] = {
+ 0x48, 0xc1, 0xf9, 0x03
+};
+unsigned int gen_sry3_len = 4;
+unsigned char gen_sry30[] = {
+ 0x48, 0xc1, 0xf9, 0x1e
+};
+unsigned int gen_sry30_len = 4;
+unsigned char gen_sry31[] = {
+ 0x48, 0xc1, 0xf9, 0x1f
+};
+unsigned int gen_sry31_len = 4;
+unsigned char gen_sry32[] = {
+ 0x48, 0xc1, 0xf9, 0x20
+};
+unsigned int gen_sry32_len = 4;
+unsigned char gen_sry33[] = {
+ 0x48, 0xc1, 0xf9, 0x21
+};
+unsigned int gen_sry33_len = 4;
+unsigned char gen_sry34[] = {
+ 0x48, 0xc1, 0xf9, 0x22
+};
+unsigned int gen_sry34_len = 4;
+unsigned char gen_sry35[] = {
+ 0x48, 0xc1, 0xf9, 0x23
+};
+unsigned int gen_sry35_len = 4;
+unsigned char gen_sry36[] = {
+ 0x48, 0xc1, 0xf9, 0x24
+};
+unsigned int gen_sry36_len = 4;
+unsigned char gen_sry37[] = {
+ 0x48, 0xc1, 0xf9, 0x25
+};
+unsigned int gen_sry37_len = 4;
+unsigned char gen_sry38[] = {
+ 0x48, 0xc1, 0xf9, 0x26
+};
+unsigned int gen_sry38_len = 4;
+unsigned char gen_sry39[] = {
+ 0x48, 0xc1, 0xf9, 0x27
+};
+unsigned int gen_sry39_len = 4;
+unsigned char gen_sry4[] = {
+ 0x48, 0xc1, 0xf9, 0x04
+};
+unsigned int gen_sry4_len = 4;
+unsigned char gen_sry40[] = {
+ 0x48, 0xc1, 0xf9, 0x28
+};
+unsigned int gen_sry40_len = 4;
+unsigned char gen_sry41[] = {
+ 0x48, 0xc1, 0xf9, 0x29
+};
+unsigned int gen_sry41_len = 4;
+unsigned char gen_sry42[] = {
+ 0x48, 0xc1, 0xf9, 0x2a
+};
+unsigned int gen_sry42_len = 4;
+unsigned char gen_sry43[] = {
+ 0x48, 0xc1, 0xf9, 0x2b
+};
+unsigned int gen_sry43_len = 4;
+unsigned char gen_sry44[] = {
+ 0x48, 0xc1, 0xf9, 0x2c
+};
+unsigned int gen_sry44_len = 4;
+unsigned char gen_sry45[] = {
+ 0x48, 0xc1, 0xf9, 0x2d
+};
+unsigned int gen_sry45_len = 4;
+unsigned char gen_sry46[] = {
+ 0x48, 0xc1, 0xf9, 0x2e
+};
+unsigned int gen_sry46_len = 4;
+unsigned char gen_sry47[] = {
+ 0x48, 0xc1, 0xf9, 0x2f
+};
+unsigned int gen_sry47_len = 4;
+unsigned char gen_sry48[] = {
+ 0x48, 0xc1, 0xf9, 0x30
+};
+unsigned int gen_sry48_len = 4;
+unsigned char gen_sry49[] = {
+ 0x48, 0xc1, 0xf9, 0x31
+};
+unsigned int gen_sry49_len = 4;
+unsigned char gen_sry5[] = {
+ 0x48, 0xc1, 0xf9, 0x05
+};
+unsigned int gen_sry5_len = 4;
+unsigned char gen_sry50[] = {
+ 0x48, 0xc1, 0xf9, 0x32
+};
+unsigned int gen_sry50_len = 4;
+unsigned char gen_sry51[] = {
+ 0x48, 0xc1, 0xf9, 0x33
+};
+unsigned int gen_sry51_len = 4;
+unsigned char gen_sry52[] = {
+ 0x48, 0xc1, 0xf9, 0x34
+};
+unsigned int gen_sry52_len = 4;
+unsigned char gen_sry53[] = {
+ 0x48, 0xc1, 0xf9, 0x35
+};
+unsigned int gen_sry53_len = 4;
+unsigned char gen_sry54[] = {
+ 0x48, 0xc1, 0xf9, 0x36
+};
+unsigned int gen_sry54_len = 4;
+unsigned char gen_sry55[] = {
+ 0x48, 0xc1, 0xf9, 0x37
+};
+unsigned int gen_sry55_len = 4;
+unsigned char gen_sry56[] = {
+ 0x48, 0xc1, 0xf9, 0x38
+};
+unsigned int gen_sry56_len = 4;
+unsigned char gen_sry57[] = {
+ 0x48, 0xc1, 0xf9, 0x39
+};
+unsigned int gen_sry57_len = 4;
+unsigned char gen_sry58[] = {
+ 0x48, 0xc1, 0xf9, 0x3a
+};
+unsigned int gen_sry58_len = 4;
+unsigned char gen_sry59[] = {
+ 0x48, 0xc1, 0xf9, 0x3b
+};
+unsigned int gen_sry59_len = 4;
+unsigned char gen_sry6[] = {
+ 0x48, 0xc1, 0xf9, 0x06
+};
+unsigned int gen_sry6_len = 4;
+unsigned char gen_sry60[] = {
+ 0x48, 0xc1, 0xf9, 0x3c
+};
+unsigned int gen_sry60_len = 4;
+unsigned char gen_sry61[] = {
+ 0x48, 0xc1, 0xf9, 0x3d
+};
+unsigned int gen_sry61_len = 4;
+unsigned char gen_sry62[] = {
+ 0x48, 0xc1, 0xf9, 0x3e
+};
+unsigned int gen_sry62_len = 4;
+unsigned char gen_sry63[] = {
+ 0x48, 0xc1, 0xf9, 0x3f
+};
+unsigned int gen_sry63_len = 4;
+unsigned char gen_sry7[] = {
+ 0x48, 0xc1, 0xf9, 0x07
+};
+unsigned int gen_sry7_len = 4;
+unsigned char gen_sry8[] = {
+ 0x48, 0xc1, 0xf9, 0x08
+};
+unsigned int gen_sry8_len = 4;
+unsigned char gen_sry9[] = {
+ 0x48, 0xc1, 0xf9, 0x09
+};
+unsigned int gen_sry9_len = 4;
+#endif /* COPYJIT_OPS_H */
diff --git a/lib/prune.c b/lib/prune.c
new file mode 100644
index 0000000..5bf5f0b
--- /dev/null
+++ b/lib/prune.c
@@ -0,0 +1,82 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+static void usage(const char *name)
+{
+ printf("Usage: %s <filter> <file>\n", name);
+}
+
+static size_t file_size(FILE *file)
+{
+ fseek(file, 0, SEEK_END);
+ size_t size = ftell(file);
+ rewind(file);
+ return size;
+}
+
+static char *read_file(FILE *file, size_t bytes)
+{
+ char *buf = malloc(bytes);
+ fread(buf, bytes, 1, file);
+ rewind(file);
+ return buf;
+}
+
+static int try_filter(FILE *filter, FILE *file)
+{
+ size_t filtsize = file_size(filter);
+ char *filtbuf = read_file(filter, filtsize);
+
+ size_t filsize = file_size(file);
+ char *filbuf = read_file(file, filsize);
+
+ // inform the user?
+ if (filsize < filtsize) {
+ free(filtbuf);
+ free(filbuf);
+ return 0;
+ }
+
+ size_t off = filsize - filtsize;
+ if (strncmp(filbuf + off, filtbuf, filtsize) != 0) {
+ // filter didn't match
+ free(filtbuf);
+ free(filbuf);
+ return 0;
+ }
+
+ // write everything except filtered part back to file
+ freopen(NULL, "w+", file);
+ fwrite(filbuf, off, 1, file);
+ free(filtbuf);
+ free(filbuf);
+ return 0;
+}
+
+int main(int argc, char *argv[])
+{
+ if (argc != 3) {
+ usage(argv[0]);
+ return -1;
+ }
+
+ FILE *filter = fopen(argv[1], "r");
+ if (!filter) {
+ fprintf(stderr, "failed opening filter file %s\n", argv[1]);
+ return -1;
+ }
+
+ FILE *file = fopen(argv[2], "r");
+ if (!file) {
+ fprintf(stderr, "failed opening file %s\n", argv[2]);
+ fclose(filter);
+ return -1;
+ }
+
+ int ret = try_filter(filter, file);
+
+ fclose(filter);
+ fclose(file);
+ return ret;
+}
diff --git a/lib/source.mk b/lib/source.mk
new file mode 100644
index 0000000..4bf99a7
--- /dev/null
+++ b/lib/source.mk
@@ -0,0 +1,14 @@
+# some glue to keep everything together
+lib/prune: lib/empty.bin
+ $(COMPILE) lib/prune.c -o lib/prune
+
+lib/empty.c: ops/common.h
+lib/empty.bin: lib/empty.o
+ $(OBJCOPY) -j .text -Obinary lib/empty.o lib/empty.bin
+
+lib/empty.o: lib/empty.c
+ $(OP_COMPILE) -c lib/empty.c -o lib/empty.o
+
+src/copyjit.c: lib/decls.h
+lib/decls.h: $(OPS)
+ cd lib && ./gen_lib "$(OPS)"
diff --git a/ops/add.c b/ops/add.c
new file mode 100644
index 0000000..164307e
--- /dev/null
+++ b/ops/add.c
@@ -0,0 +1,7 @@
+#include "common.h"
+
+DEFINE_OP(add)
+{
+ UNUSED(a);
+ NEXT_OP(sp, x + y, x, y, o);
+}
diff --git a/ops/addao.c b/ops/addao.c
new file mode 100644
index 0000000..300a71b
--- /dev/null
+++ b/ops/addao.c
@@ -0,0 +1,6 @@
+#include "common.h"
+
+DEFINE_OP(addao)
+{
+ NEXT_OP(sp, a + o, x, y, o);
+}
diff --git a/ops/addi/addi0.c b/ops/addi/addi0.c
new file mode 100644
index 0000000..f77f7c2
--- /dev/null
+++ b/ops/addi/addi0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi0) {
+ NEXT_OP(sp, a, x, y, o + 0);
+}
diff --git a/ops/addi/addi1.c b/ops/addi/addi1.c
new file mode 100644
index 0000000..616b4b8
--- /dev/null
+++ b/ops/addi/addi1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi1) {
+ NEXT_OP(sp, a, x, y, o + 1);
+}
diff --git a/ops/addi/addi10.c b/ops/addi/addi10.c
new file mode 100644
index 0000000..65ede77
--- /dev/null
+++ b/ops/addi/addi10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi10) {
+ NEXT_OP(sp, a, x, y, o + 10);
+}
diff --git a/ops/addi/addi100.c b/ops/addi/addi100.c
new file mode 100644
index 0000000..0081e88
--- /dev/null
+++ b/ops/addi/addi100.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi100) {
+ NEXT_OP(sp, a, x, y, o + 100);
+}
diff --git a/ops/addi/addi101.c b/ops/addi/addi101.c
new file mode 100644
index 0000000..226d710
--- /dev/null
+++ b/ops/addi/addi101.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi101) {
+ NEXT_OP(sp, a, x, y, o + 101);
+}
diff --git a/ops/addi/addi102.c b/ops/addi/addi102.c
new file mode 100644
index 0000000..8d371b0
--- /dev/null
+++ b/ops/addi/addi102.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi102) {
+ NEXT_OP(sp, a, x, y, o + 102);
+}
diff --git a/ops/addi/addi103.c b/ops/addi/addi103.c
new file mode 100644
index 0000000..139870b
--- /dev/null
+++ b/ops/addi/addi103.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi103) {
+ NEXT_OP(sp, a, x, y, o + 103);
+}
diff --git a/ops/addi/addi104.c b/ops/addi/addi104.c
new file mode 100644
index 0000000..deb4b90
--- /dev/null
+++ b/ops/addi/addi104.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi104) {
+ NEXT_OP(sp, a, x, y, o + 104);
+}
diff --git a/ops/addi/addi105.c b/ops/addi/addi105.c
new file mode 100644
index 0000000..3b07e7b
--- /dev/null
+++ b/ops/addi/addi105.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi105) {
+ NEXT_OP(sp, a, x, y, o + 105);
+}
diff --git a/ops/addi/addi106.c b/ops/addi/addi106.c
new file mode 100644
index 0000000..114992f
--- /dev/null
+++ b/ops/addi/addi106.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi106) {
+ NEXT_OP(sp, a, x, y, o + 106);
+}
diff --git a/ops/addi/addi107.c b/ops/addi/addi107.c
new file mode 100644
index 0000000..3b2f21b
--- /dev/null
+++ b/ops/addi/addi107.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi107) {
+ NEXT_OP(sp, a, x, y, o + 107);
+}
diff --git a/ops/addi/addi108.c b/ops/addi/addi108.c
new file mode 100644
index 0000000..fb5cf32
--- /dev/null
+++ b/ops/addi/addi108.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi108) {
+ NEXT_OP(sp, a, x, y, o + 108);
+}
diff --git a/ops/addi/addi109.c b/ops/addi/addi109.c
new file mode 100644
index 0000000..5474cab
--- /dev/null
+++ b/ops/addi/addi109.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi109) {
+ NEXT_OP(sp, a, x, y, o + 109);
+}
diff --git a/ops/addi/addi11.c b/ops/addi/addi11.c
new file mode 100644
index 0000000..ac57072
--- /dev/null
+++ b/ops/addi/addi11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi11) {
+ NEXT_OP(sp, a, x, y, o + 11);
+}
diff --git a/ops/addi/addi110.c b/ops/addi/addi110.c
new file mode 100644
index 0000000..215319a
--- /dev/null
+++ b/ops/addi/addi110.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi110) {
+ NEXT_OP(sp, a, x, y, o + 110);
+}
diff --git a/ops/addi/addi111.c b/ops/addi/addi111.c
new file mode 100644
index 0000000..37a49e6
--- /dev/null
+++ b/ops/addi/addi111.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi111) {
+ NEXT_OP(sp, a, x, y, o + 111);
+}
diff --git a/ops/addi/addi112.c b/ops/addi/addi112.c
new file mode 100644
index 0000000..7996d09
--- /dev/null
+++ b/ops/addi/addi112.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi112) {
+ NEXT_OP(sp, a, x, y, o + 112);
+}
diff --git a/ops/addi/addi113.c b/ops/addi/addi113.c
new file mode 100644
index 0000000..d960c7f
--- /dev/null
+++ b/ops/addi/addi113.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi113) {
+ NEXT_OP(sp, a, x, y, o + 113);
+}
diff --git a/ops/addi/addi114.c b/ops/addi/addi114.c
new file mode 100644
index 0000000..2a29945
--- /dev/null
+++ b/ops/addi/addi114.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi114) {
+ NEXT_OP(sp, a, x, y, o + 114);
+}
diff --git a/ops/addi/addi115.c b/ops/addi/addi115.c
new file mode 100644
index 0000000..eb9a862
--- /dev/null
+++ b/ops/addi/addi115.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi115) {
+ NEXT_OP(sp, a, x, y, o + 115);
+}
diff --git a/ops/addi/addi116.c b/ops/addi/addi116.c
new file mode 100644
index 0000000..4edefc7
--- /dev/null
+++ b/ops/addi/addi116.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi116) {
+ NEXT_OP(sp, a, x, y, o + 116);
+}
diff --git a/ops/addi/addi117.c b/ops/addi/addi117.c
new file mode 100644
index 0000000..6eebf9d
--- /dev/null
+++ b/ops/addi/addi117.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi117) {
+ NEXT_OP(sp, a, x, y, o + 117);
+}
diff --git a/ops/addi/addi118.c b/ops/addi/addi118.c
new file mode 100644
index 0000000..60f6622
--- /dev/null
+++ b/ops/addi/addi118.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi118) {
+ NEXT_OP(sp, a, x, y, o + 118);
+}
diff --git a/ops/addi/addi119.c b/ops/addi/addi119.c
new file mode 100644
index 0000000..dba9ebd
--- /dev/null
+++ b/ops/addi/addi119.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi119) {
+ NEXT_OP(sp, a, x, y, o + 119);
+}
diff --git a/ops/addi/addi12.c b/ops/addi/addi12.c
new file mode 100644
index 0000000..9ceeaca
--- /dev/null
+++ b/ops/addi/addi12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi12) {
+ NEXT_OP(sp, a, x, y, o + 12);
+}
diff --git a/ops/addi/addi120.c b/ops/addi/addi120.c
new file mode 100644
index 0000000..ec3af0b
--- /dev/null
+++ b/ops/addi/addi120.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi120) {
+ NEXT_OP(sp, a, x, y, o + 120);
+}
diff --git a/ops/addi/addi121.c b/ops/addi/addi121.c
new file mode 100644
index 0000000..2308ddf
--- /dev/null
+++ b/ops/addi/addi121.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi121) {
+ NEXT_OP(sp, a, x, y, o + 121);
+}
diff --git a/ops/addi/addi122.c b/ops/addi/addi122.c
new file mode 100644
index 0000000..a90dfba
--- /dev/null
+++ b/ops/addi/addi122.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi122) {
+ NEXT_OP(sp, a, x, y, o + 122);
+}
diff --git a/ops/addi/addi123.c b/ops/addi/addi123.c
new file mode 100644
index 0000000..c7ee8ab
--- /dev/null
+++ b/ops/addi/addi123.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi123) {
+ NEXT_OP(sp, a, x, y, o + 123);
+}
diff --git a/ops/addi/addi124.c b/ops/addi/addi124.c
new file mode 100644
index 0000000..d7f84dd
--- /dev/null
+++ b/ops/addi/addi124.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi124) {
+ NEXT_OP(sp, a, x, y, o + 124);
+}
diff --git a/ops/addi/addi125.c b/ops/addi/addi125.c
new file mode 100644
index 0000000..0e8c879
--- /dev/null
+++ b/ops/addi/addi125.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi125) {
+ NEXT_OP(sp, a, x, y, o + 125);
+}
diff --git a/ops/addi/addi126.c b/ops/addi/addi126.c
new file mode 100644
index 0000000..ea7b4c8
--- /dev/null
+++ b/ops/addi/addi126.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi126) {
+ NEXT_OP(sp, a, x, y, o + 126);
+}
diff --git a/ops/addi/addi127.c b/ops/addi/addi127.c
new file mode 100644
index 0000000..f3290f6
--- /dev/null
+++ b/ops/addi/addi127.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi127) {
+ NEXT_OP(sp, a, x, y, o + 127);
+}
diff --git a/ops/addi/addi128.c b/ops/addi/addi128.c
new file mode 100644
index 0000000..c12a8b2
--- /dev/null
+++ b/ops/addi/addi128.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi128) {
+ NEXT_OP(sp, a, x, y, o + 128);
+}
diff --git a/ops/addi/addi129.c b/ops/addi/addi129.c
new file mode 100644
index 0000000..3f3c561
--- /dev/null
+++ b/ops/addi/addi129.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi129) {
+ NEXT_OP(sp, a, x, y, o + 129);
+}
diff --git a/ops/addi/addi13.c b/ops/addi/addi13.c
new file mode 100644
index 0000000..ac7a697
--- /dev/null
+++ b/ops/addi/addi13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi13) {
+ NEXT_OP(sp, a, x, y, o + 13);
+}
diff --git a/ops/addi/addi130.c b/ops/addi/addi130.c
new file mode 100644
index 0000000..3b1da10
--- /dev/null
+++ b/ops/addi/addi130.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi130) {
+ NEXT_OP(sp, a, x, y, o + 130);
+}
diff --git a/ops/addi/addi131.c b/ops/addi/addi131.c
new file mode 100644
index 0000000..8dcf9fb
--- /dev/null
+++ b/ops/addi/addi131.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi131) {
+ NEXT_OP(sp, a, x, y, o + 131);
+}
diff --git a/ops/addi/addi132.c b/ops/addi/addi132.c
new file mode 100644
index 0000000..bbe2a98
--- /dev/null
+++ b/ops/addi/addi132.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi132) {
+ NEXT_OP(sp, a, x, y, o + 132);
+}
diff --git a/ops/addi/addi133.c b/ops/addi/addi133.c
new file mode 100644
index 0000000..926d543
--- /dev/null
+++ b/ops/addi/addi133.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi133) {
+ NEXT_OP(sp, a, x, y, o + 133);
+}
diff --git a/ops/addi/addi134.c b/ops/addi/addi134.c
new file mode 100644
index 0000000..2bc14af
--- /dev/null
+++ b/ops/addi/addi134.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi134) {
+ NEXT_OP(sp, a, x, y, o + 134);
+}
diff --git a/ops/addi/addi135.c b/ops/addi/addi135.c
new file mode 100644
index 0000000..13ab34e
--- /dev/null
+++ b/ops/addi/addi135.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi135) {
+ NEXT_OP(sp, a, x, y, o + 135);
+}
diff --git a/ops/addi/addi136.c b/ops/addi/addi136.c
new file mode 100644
index 0000000..cf9fe14
--- /dev/null
+++ b/ops/addi/addi136.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi136) {
+ NEXT_OP(sp, a, x, y, o + 136);
+}
diff --git a/ops/addi/addi137.c b/ops/addi/addi137.c
new file mode 100644
index 0000000..452c8c6
--- /dev/null
+++ b/ops/addi/addi137.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi137) {
+ NEXT_OP(sp, a, x, y, o + 137);
+}
diff --git a/ops/addi/addi138.c b/ops/addi/addi138.c
new file mode 100644
index 0000000..4d7acf5
--- /dev/null
+++ b/ops/addi/addi138.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi138) {
+ NEXT_OP(sp, a, x, y, o + 138);
+}
diff --git a/ops/addi/addi139.c b/ops/addi/addi139.c
new file mode 100644
index 0000000..4333d2b
--- /dev/null
+++ b/ops/addi/addi139.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi139) {
+ NEXT_OP(sp, a, x, y, o + 139);
+}
diff --git a/ops/addi/addi14.c b/ops/addi/addi14.c
new file mode 100644
index 0000000..231ea84
--- /dev/null
+++ b/ops/addi/addi14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi14) {
+ NEXT_OP(sp, a, x, y, o + 14);
+}
diff --git a/ops/addi/addi140.c b/ops/addi/addi140.c
new file mode 100644
index 0000000..70d13a9
--- /dev/null
+++ b/ops/addi/addi140.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi140) {
+ NEXT_OP(sp, a, x, y, o + 140);
+}
diff --git a/ops/addi/addi141.c b/ops/addi/addi141.c
new file mode 100644
index 0000000..af09531
--- /dev/null
+++ b/ops/addi/addi141.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi141) {
+ NEXT_OP(sp, a, x, y, o + 141);
+}
diff --git a/ops/addi/addi142.c b/ops/addi/addi142.c
new file mode 100644
index 0000000..3c9ef91
--- /dev/null
+++ b/ops/addi/addi142.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi142) {
+ NEXT_OP(sp, a, x, y, o + 142);
+}
diff --git a/ops/addi/addi143.c b/ops/addi/addi143.c
new file mode 100644
index 0000000..0346ed5
--- /dev/null
+++ b/ops/addi/addi143.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi143) {
+ NEXT_OP(sp, a, x, y, o + 143);
+}
diff --git a/ops/addi/addi144.c b/ops/addi/addi144.c
new file mode 100644
index 0000000..eea737a
--- /dev/null
+++ b/ops/addi/addi144.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi144) {
+ NEXT_OP(sp, a, x, y, o + 144);
+}
diff --git a/ops/addi/addi145.c b/ops/addi/addi145.c
new file mode 100644
index 0000000..dd6d701
--- /dev/null
+++ b/ops/addi/addi145.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi145) {
+ NEXT_OP(sp, a, x, y, o + 145);
+}
diff --git a/ops/addi/addi146.c b/ops/addi/addi146.c
new file mode 100644
index 0000000..f819949
--- /dev/null
+++ b/ops/addi/addi146.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi146) {
+ NEXT_OP(sp, a, x, y, o + 146);
+}
diff --git a/ops/addi/addi147.c b/ops/addi/addi147.c
new file mode 100644
index 0000000..cae2f7f
--- /dev/null
+++ b/ops/addi/addi147.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi147) {
+ NEXT_OP(sp, a, x, y, o + 147);
+}
diff --git a/ops/addi/addi148.c b/ops/addi/addi148.c
new file mode 100644
index 0000000..44e8ab3
--- /dev/null
+++ b/ops/addi/addi148.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi148) {
+ NEXT_OP(sp, a, x, y, o + 148);
+}
diff --git a/ops/addi/addi149.c b/ops/addi/addi149.c
new file mode 100644
index 0000000..75af095
--- /dev/null
+++ b/ops/addi/addi149.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi149) {
+ NEXT_OP(sp, a, x, y, o + 149);
+}
diff --git a/ops/addi/addi15.c b/ops/addi/addi15.c
new file mode 100644
index 0000000..5917fc8
--- /dev/null
+++ b/ops/addi/addi15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi15) {
+ NEXT_OP(sp, a, x, y, o + 15);
+}
diff --git a/ops/addi/addi150.c b/ops/addi/addi150.c
new file mode 100644
index 0000000..180ef12
--- /dev/null
+++ b/ops/addi/addi150.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi150) {
+ NEXT_OP(sp, a, x, y, o + 150);
+}
diff --git a/ops/addi/addi151.c b/ops/addi/addi151.c
new file mode 100644
index 0000000..4d1542d
--- /dev/null
+++ b/ops/addi/addi151.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi151) {
+ NEXT_OP(sp, a, x, y, o + 151);
+}
diff --git a/ops/addi/addi152.c b/ops/addi/addi152.c
new file mode 100644
index 0000000..ef49115
--- /dev/null
+++ b/ops/addi/addi152.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi152) {
+ NEXT_OP(sp, a, x, y, o + 152);
+}
diff --git a/ops/addi/addi153.c b/ops/addi/addi153.c
new file mode 100644
index 0000000..2323e0f
--- /dev/null
+++ b/ops/addi/addi153.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi153) {
+ NEXT_OP(sp, a, x, y, o + 153);
+}
diff --git a/ops/addi/addi154.c b/ops/addi/addi154.c
new file mode 100644
index 0000000..5fbbcf4
--- /dev/null
+++ b/ops/addi/addi154.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi154) {
+ NEXT_OP(sp, a, x, y, o + 154);
+}
diff --git a/ops/addi/addi155.c b/ops/addi/addi155.c
new file mode 100644
index 0000000..63290d0
--- /dev/null
+++ b/ops/addi/addi155.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi155) {
+ NEXT_OP(sp, a, x, y, o + 155);
+}
diff --git a/ops/addi/addi156.c b/ops/addi/addi156.c
new file mode 100644
index 0000000..79d8851
--- /dev/null
+++ b/ops/addi/addi156.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi156) {
+ NEXT_OP(sp, a, x, y, o + 156);
+}
diff --git a/ops/addi/addi157.c b/ops/addi/addi157.c
new file mode 100644
index 0000000..3ec6947
--- /dev/null
+++ b/ops/addi/addi157.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi157) {
+ NEXT_OP(sp, a, x, y, o + 157);
+}
diff --git a/ops/addi/addi158.c b/ops/addi/addi158.c
new file mode 100644
index 0000000..d06a9af
--- /dev/null
+++ b/ops/addi/addi158.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi158) {
+ NEXT_OP(sp, a, x, y, o + 158);
+}
diff --git a/ops/addi/addi159.c b/ops/addi/addi159.c
new file mode 100644
index 0000000..b3e9b2a
--- /dev/null
+++ b/ops/addi/addi159.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi159) {
+ NEXT_OP(sp, a, x, y, o + 159);
+}
diff --git a/ops/addi/addi16.c b/ops/addi/addi16.c
new file mode 100644
index 0000000..306c68f
--- /dev/null
+++ b/ops/addi/addi16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi16) {
+ NEXT_OP(sp, a, x, y, o + 16);
+}
diff --git a/ops/addi/addi160.c b/ops/addi/addi160.c
new file mode 100644
index 0000000..5de2a10
--- /dev/null
+++ b/ops/addi/addi160.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi160) {
+ NEXT_OP(sp, a, x, y, o + 160);
+}
diff --git a/ops/addi/addi161.c b/ops/addi/addi161.c
new file mode 100644
index 0000000..f3755d7
--- /dev/null
+++ b/ops/addi/addi161.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi161) {
+ NEXT_OP(sp, a, x, y, o + 161);
+}
diff --git a/ops/addi/addi162.c b/ops/addi/addi162.c
new file mode 100644
index 0000000..02c6381
--- /dev/null
+++ b/ops/addi/addi162.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi162) {
+ NEXT_OP(sp, a, x, y, o + 162);
+}
diff --git a/ops/addi/addi163.c b/ops/addi/addi163.c
new file mode 100644
index 0000000..c92034c
--- /dev/null
+++ b/ops/addi/addi163.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi163) {
+ NEXT_OP(sp, a, x, y, o + 163);
+}
diff --git a/ops/addi/addi164.c b/ops/addi/addi164.c
new file mode 100644
index 0000000..c7170d3
--- /dev/null
+++ b/ops/addi/addi164.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi164) {
+ NEXT_OP(sp, a, x, y, o + 164);
+}
diff --git a/ops/addi/addi165.c b/ops/addi/addi165.c
new file mode 100644
index 0000000..6a51bea
--- /dev/null
+++ b/ops/addi/addi165.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi165) {
+ NEXT_OP(sp, a, x, y, o + 165);
+}
diff --git a/ops/addi/addi166.c b/ops/addi/addi166.c
new file mode 100644
index 0000000..993fa4d
--- /dev/null
+++ b/ops/addi/addi166.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi166) {
+ NEXT_OP(sp, a, x, y, o + 166);
+}
diff --git a/ops/addi/addi167.c b/ops/addi/addi167.c
new file mode 100644
index 0000000..62a03fa
--- /dev/null
+++ b/ops/addi/addi167.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi167) {
+ NEXT_OP(sp, a, x, y, o + 167);
+}
diff --git a/ops/addi/addi168.c b/ops/addi/addi168.c
new file mode 100644
index 0000000..14e0873
--- /dev/null
+++ b/ops/addi/addi168.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi168) {
+ NEXT_OP(sp, a, x, y, o + 168);
+}
diff --git a/ops/addi/addi169.c b/ops/addi/addi169.c
new file mode 100644
index 0000000..9181b02
--- /dev/null
+++ b/ops/addi/addi169.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi169) {
+ NEXT_OP(sp, a, x, y, o + 169);
+}
diff --git a/ops/addi/addi17.c b/ops/addi/addi17.c
new file mode 100644
index 0000000..2efa1ed
--- /dev/null
+++ b/ops/addi/addi17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi17) {
+ NEXT_OP(sp, a, x, y, o + 17);
+}
diff --git a/ops/addi/addi170.c b/ops/addi/addi170.c
new file mode 100644
index 0000000..155be2e
--- /dev/null
+++ b/ops/addi/addi170.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi170) {
+ NEXT_OP(sp, a, x, y, o + 170);
+}
diff --git a/ops/addi/addi171.c b/ops/addi/addi171.c
new file mode 100644
index 0000000..eacf7c0
--- /dev/null
+++ b/ops/addi/addi171.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi171) {
+ NEXT_OP(sp, a, x, y, o + 171);
+}
diff --git a/ops/addi/addi172.c b/ops/addi/addi172.c
new file mode 100644
index 0000000..e1ee244
--- /dev/null
+++ b/ops/addi/addi172.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi172) {
+ NEXT_OP(sp, a, x, y, o + 172);
+}
diff --git a/ops/addi/addi173.c b/ops/addi/addi173.c
new file mode 100644
index 0000000..58c98be
--- /dev/null
+++ b/ops/addi/addi173.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi173) {
+ NEXT_OP(sp, a, x, y, o + 173);
+}
diff --git a/ops/addi/addi174.c b/ops/addi/addi174.c
new file mode 100644
index 0000000..20302dc
--- /dev/null
+++ b/ops/addi/addi174.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi174) {
+ NEXT_OP(sp, a, x, y, o + 174);
+}
diff --git a/ops/addi/addi175.c b/ops/addi/addi175.c
new file mode 100644
index 0000000..0dbe835
--- /dev/null
+++ b/ops/addi/addi175.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi175) {
+ NEXT_OP(sp, a, x, y, o + 175);
+}
diff --git a/ops/addi/addi176.c b/ops/addi/addi176.c
new file mode 100644
index 0000000..c1c7588
--- /dev/null
+++ b/ops/addi/addi176.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi176) {
+ NEXT_OP(sp, a, x, y, o + 176);
+}
diff --git a/ops/addi/addi177.c b/ops/addi/addi177.c
new file mode 100644
index 0000000..a3d8696
--- /dev/null
+++ b/ops/addi/addi177.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi177) {
+ NEXT_OP(sp, a, x, y, o + 177);
+}
diff --git a/ops/addi/addi178.c b/ops/addi/addi178.c
new file mode 100644
index 0000000..d8183c0
--- /dev/null
+++ b/ops/addi/addi178.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi178) {
+ NEXT_OP(sp, a, x, y, o + 178);
+}
diff --git a/ops/addi/addi179.c b/ops/addi/addi179.c
new file mode 100644
index 0000000..48564ba
--- /dev/null
+++ b/ops/addi/addi179.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi179) {
+ NEXT_OP(sp, a, x, y, o + 179);
+}
diff --git a/ops/addi/addi18.c b/ops/addi/addi18.c
new file mode 100644
index 0000000..f50a357
--- /dev/null
+++ b/ops/addi/addi18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi18) {
+ NEXT_OP(sp, a, x, y, o + 18);
+}
diff --git a/ops/addi/addi180.c b/ops/addi/addi180.c
new file mode 100644
index 0000000..fa7340c
--- /dev/null
+++ b/ops/addi/addi180.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi180) {
+ NEXT_OP(sp, a, x, y, o + 180);
+}
diff --git a/ops/addi/addi181.c b/ops/addi/addi181.c
new file mode 100644
index 0000000..ba29d89
--- /dev/null
+++ b/ops/addi/addi181.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi181) {
+ NEXT_OP(sp, a, x, y, o + 181);
+}
diff --git a/ops/addi/addi182.c b/ops/addi/addi182.c
new file mode 100644
index 0000000..6fff114
--- /dev/null
+++ b/ops/addi/addi182.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi182) {
+ NEXT_OP(sp, a, x, y, o + 182);
+}
diff --git a/ops/addi/addi183.c b/ops/addi/addi183.c
new file mode 100644
index 0000000..5ec9609
--- /dev/null
+++ b/ops/addi/addi183.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi183) {
+ NEXT_OP(sp, a, x, y, o + 183);
+}
diff --git a/ops/addi/addi184.c b/ops/addi/addi184.c
new file mode 100644
index 0000000..af248e2
--- /dev/null
+++ b/ops/addi/addi184.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi184) {
+ NEXT_OP(sp, a, x, y, o + 184);
+}
diff --git a/ops/addi/addi185.c b/ops/addi/addi185.c
new file mode 100644
index 0000000..4e1c174
--- /dev/null
+++ b/ops/addi/addi185.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi185) {
+ NEXT_OP(sp, a, x, y, o + 185);
+}
diff --git a/ops/addi/addi186.c b/ops/addi/addi186.c
new file mode 100644
index 0000000..ae2e952
--- /dev/null
+++ b/ops/addi/addi186.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi186) {
+ NEXT_OP(sp, a, x, y, o + 186);
+}
diff --git a/ops/addi/addi187.c b/ops/addi/addi187.c
new file mode 100644
index 0000000..5b2728e
--- /dev/null
+++ b/ops/addi/addi187.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi187) {
+ NEXT_OP(sp, a, x, y, o + 187);
+}
diff --git a/ops/addi/addi188.c b/ops/addi/addi188.c
new file mode 100644
index 0000000..f0c1791
--- /dev/null
+++ b/ops/addi/addi188.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi188) {
+ NEXT_OP(sp, a, x, y, o + 188);
+}
diff --git a/ops/addi/addi189.c b/ops/addi/addi189.c
new file mode 100644
index 0000000..bc148b0
--- /dev/null
+++ b/ops/addi/addi189.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi189) {
+ NEXT_OP(sp, a, x, y, o + 189);
+}
diff --git a/ops/addi/addi19.c b/ops/addi/addi19.c
new file mode 100644
index 0000000..f9eda26
--- /dev/null
+++ b/ops/addi/addi19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi19) {
+ NEXT_OP(sp, a, x, y, o + 19);
+}
diff --git a/ops/addi/addi190.c b/ops/addi/addi190.c
new file mode 100644
index 0000000..3a9fa85
--- /dev/null
+++ b/ops/addi/addi190.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi190) {
+ NEXT_OP(sp, a, x, y, o + 190);
+}
diff --git a/ops/addi/addi191.c b/ops/addi/addi191.c
new file mode 100644
index 0000000..f586ba8
--- /dev/null
+++ b/ops/addi/addi191.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi191) {
+ NEXT_OP(sp, a, x, y, o + 191);
+}
diff --git a/ops/addi/addi192.c b/ops/addi/addi192.c
new file mode 100644
index 0000000..4f79302
--- /dev/null
+++ b/ops/addi/addi192.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi192) {
+ NEXT_OP(sp, a, x, y, o + 192);
+}
diff --git a/ops/addi/addi193.c b/ops/addi/addi193.c
new file mode 100644
index 0000000..28dd36a
--- /dev/null
+++ b/ops/addi/addi193.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi193) {
+ NEXT_OP(sp, a, x, y, o + 193);
+}
diff --git a/ops/addi/addi194.c b/ops/addi/addi194.c
new file mode 100644
index 0000000..06cf01a
--- /dev/null
+++ b/ops/addi/addi194.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi194) {
+ NEXT_OP(sp, a, x, y, o + 194);
+}
diff --git a/ops/addi/addi195.c b/ops/addi/addi195.c
new file mode 100644
index 0000000..a8c6feb
--- /dev/null
+++ b/ops/addi/addi195.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi195) {
+ NEXT_OP(sp, a, x, y, o + 195);
+}
diff --git a/ops/addi/addi196.c b/ops/addi/addi196.c
new file mode 100644
index 0000000..3567db7
--- /dev/null
+++ b/ops/addi/addi196.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi196) {
+ NEXT_OP(sp, a, x, y, o + 196);
+}
diff --git a/ops/addi/addi197.c b/ops/addi/addi197.c
new file mode 100644
index 0000000..55b9384
--- /dev/null
+++ b/ops/addi/addi197.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi197) {
+ NEXT_OP(sp, a, x, y, o + 197);
+}
diff --git a/ops/addi/addi198.c b/ops/addi/addi198.c
new file mode 100644
index 0000000..ac04254
--- /dev/null
+++ b/ops/addi/addi198.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi198) {
+ NEXT_OP(sp, a, x, y, o + 198);
+}
diff --git a/ops/addi/addi199.c b/ops/addi/addi199.c
new file mode 100644
index 0000000..fcf6db2
--- /dev/null
+++ b/ops/addi/addi199.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi199) {
+ NEXT_OP(sp, a, x, y, o + 199);
+}
diff --git a/ops/addi/addi2.c b/ops/addi/addi2.c
new file mode 100644
index 0000000..4bca229
--- /dev/null
+++ b/ops/addi/addi2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi2) {
+ NEXT_OP(sp, a, x, y, o + 2);
+}
diff --git a/ops/addi/addi20.c b/ops/addi/addi20.c
new file mode 100644
index 0000000..3fee7e0
--- /dev/null
+++ b/ops/addi/addi20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi20) {
+ NEXT_OP(sp, a, x, y, o + 20);
+}
diff --git a/ops/addi/addi200.c b/ops/addi/addi200.c
new file mode 100644
index 0000000..ac8d5f3
--- /dev/null
+++ b/ops/addi/addi200.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi200) {
+ NEXT_OP(sp, a, x, y, o + 200);
+}
diff --git a/ops/addi/addi201.c b/ops/addi/addi201.c
new file mode 100644
index 0000000..7c21069
--- /dev/null
+++ b/ops/addi/addi201.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi201) {
+ NEXT_OP(sp, a, x, y, o + 201);
+}
diff --git a/ops/addi/addi202.c b/ops/addi/addi202.c
new file mode 100644
index 0000000..863845a
--- /dev/null
+++ b/ops/addi/addi202.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi202) {
+ NEXT_OP(sp, a, x, y, o + 202);
+}
diff --git a/ops/addi/addi203.c b/ops/addi/addi203.c
new file mode 100644
index 0000000..ab3e7b4
--- /dev/null
+++ b/ops/addi/addi203.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi203) {
+ NEXT_OP(sp, a, x, y, o + 203);
+}
diff --git a/ops/addi/addi204.c b/ops/addi/addi204.c
new file mode 100644
index 0000000..80b667c
--- /dev/null
+++ b/ops/addi/addi204.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi204) {
+ NEXT_OP(sp, a, x, y, o + 204);
+}
diff --git a/ops/addi/addi205.c b/ops/addi/addi205.c
new file mode 100644
index 0000000..7dbfaf2
--- /dev/null
+++ b/ops/addi/addi205.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi205) {
+ NEXT_OP(sp, a, x, y, o + 205);
+}
diff --git a/ops/addi/addi206.c b/ops/addi/addi206.c
new file mode 100644
index 0000000..63693b2
--- /dev/null
+++ b/ops/addi/addi206.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi206) {
+ NEXT_OP(sp, a, x, y, o + 206);
+}
diff --git a/ops/addi/addi207.c b/ops/addi/addi207.c
new file mode 100644
index 0000000..fc1c90a
--- /dev/null
+++ b/ops/addi/addi207.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi207) {
+ NEXT_OP(sp, a, x, y, o + 207);
+}
diff --git a/ops/addi/addi208.c b/ops/addi/addi208.c
new file mode 100644
index 0000000..33becf2
--- /dev/null
+++ b/ops/addi/addi208.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi208) {
+ NEXT_OP(sp, a, x, y, o + 208);
+}
diff --git a/ops/addi/addi209.c b/ops/addi/addi209.c
new file mode 100644
index 0000000..4f40f2e
--- /dev/null
+++ b/ops/addi/addi209.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi209) {
+ NEXT_OP(sp, a, x, y, o + 209);
+}
diff --git a/ops/addi/addi21.c b/ops/addi/addi21.c
new file mode 100644
index 0000000..6c652c2
--- /dev/null
+++ b/ops/addi/addi21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi21) {
+ NEXT_OP(sp, a, x, y, o + 21);
+}
diff --git a/ops/addi/addi210.c b/ops/addi/addi210.c
new file mode 100644
index 0000000..20a171f
--- /dev/null
+++ b/ops/addi/addi210.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi210) {
+ NEXT_OP(sp, a, x, y, o + 210);
+}
diff --git a/ops/addi/addi211.c b/ops/addi/addi211.c
new file mode 100644
index 0000000..6191f1a
--- /dev/null
+++ b/ops/addi/addi211.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi211) {
+ NEXT_OP(sp, a, x, y, o + 211);
+}
diff --git a/ops/addi/addi212.c b/ops/addi/addi212.c
new file mode 100644
index 0000000..49f2a01
--- /dev/null
+++ b/ops/addi/addi212.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi212) {
+ NEXT_OP(sp, a, x, y, o + 212);
+}
diff --git a/ops/addi/addi213.c b/ops/addi/addi213.c
new file mode 100644
index 0000000..0f720a9
--- /dev/null
+++ b/ops/addi/addi213.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi213) {
+ NEXT_OP(sp, a, x, y, o + 213);
+}
diff --git a/ops/addi/addi214.c b/ops/addi/addi214.c
new file mode 100644
index 0000000..d24f076
--- /dev/null
+++ b/ops/addi/addi214.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi214) {
+ NEXT_OP(sp, a, x, y, o + 214);
+}
diff --git a/ops/addi/addi215.c b/ops/addi/addi215.c
new file mode 100644
index 0000000..0bd2323
--- /dev/null
+++ b/ops/addi/addi215.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi215) {
+ NEXT_OP(sp, a, x, y, o + 215);
+}
diff --git a/ops/addi/addi216.c b/ops/addi/addi216.c
new file mode 100644
index 0000000..4f9baab
--- /dev/null
+++ b/ops/addi/addi216.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi216) {
+ NEXT_OP(sp, a, x, y, o + 216);
+}
diff --git a/ops/addi/addi217.c b/ops/addi/addi217.c
new file mode 100644
index 0000000..4a5041e
--- /dev/null
+++ b/ops/addi/addi217.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi217) {
+ NEXT_OP(sp, a, x, y, o + 217);
+}
diff --git a/ops/addi/addi218.c b/ops/addi/addi218.c
new file mode 100644
index 0000000..1fbccd9
--- /dev/null
+++ b/ops/addi/addi218.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi218) {
+ NEXT_OP(sp, a, x, y, o + 218);
+}
diff --git a/ops/addi/addi219.c b/ops/addi/addi219.c
new file mode 100644
index 0000000..4dff587
--- /dev/null
+++ b/ops/addi/addi219.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi219) {
+ NEXT_OP(sp, a, x, y, o + 219);
+}
diff --git a/ops/addi/addi22.c b/ops/addi/addi22.c
new file mode 100644
index 0000000..0969a03
--- /dev/null
+++ b/ops/addi/addi22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi22) {
+ NEXT_OP(sp, a, x, y, o + 22);
+}
diff --git a/ops/addi/addi220.c b/ops/addi/addi220.c
new file mode 100644
index 0000000..34a27cd
--- /dev/null
+++ b/ops/addi/addi220.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi220) {
+ NEXT_OP(sp, a, x, y, o + 220);
+}
diff --git a/ops/addi/addi221.c b/ops/addi/addi221.c
new file mode 100644
index 0000000..1a3df22
--- /dev/null
+++ b/ops/addi/addi221.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi221) {
+ NEXT_OP(sp, a, x, y, o + 221);
+}
diff --git a/ops/addi/addi222.c b/ops/addi/addi222.c
new file mode 100644
index 0000000..4022c7e
--- /dev/null
+++ b/ops/addi/addi222.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi222) {
+ NEXT_OP(sp, a, x, y, o + 222);
+}
diff --git a/ops/addi/addi223.c b/ops/addi/addi223.c
new file mode 100644
index 0000000..35a7e9f
--- /dev/null
+++ b/ops/addi/addi223.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi223) {
+ NEXT_OP(sp, a, x, y, o + 223);
+}
diff --git a/ops/addi/addi224.c b/ops/addi/addi224.c
new file mode 100644
index 0000000..684415f
--- /dev/null
+++ b/ops/addi/addi224.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi224) {
+ NEXT_OP(sp, a, x, y, o + 224);
+}
diff --git a/ops/addi/addi225.c b/ops/addi/addi225.c
new file mode 100644
index 0000000..82e7307
--- /dev/null
+++ b/ops/addi/addi225.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi225) {
+ NEXT_OP(sp, a, x, y, o + 225);
+}
diff --git a/ops/addi/addi226.c b/ops/addi/addi226.c
new file mode 100644
index 0000000..e128da4
--- /dev/null
+++ b/ops/addi/addi226.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi226) {
+ NEXT_OP(sp, a, x, y, o + 226);
+}
diff --git a/ops/addi/addi227.c b/ops/addi/addi227.c
new file mode 100644
index 0000000..10d12e2
--- /dev/null
+++ b/ops/addi/addi227.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi227) {
+ NEXT_OP(sp, a, x, y, o + 227);
+}
diff --git a/ops/addi/addi228.c b/ops/addi/addi228.c
new file mode 100644
index 0000000..4731c47
--- /dev/null
+++ b/ops/addi/addi228.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi228) {
+ NEXT_OP(sp, a, x, y, o + 228);
+}
diff --git a/ops/addi/addi229.c b/ops/addi/addi229.c
new file mode 100644
index 0000000..037ee06
--- /dev/null
+++ b/ops/addi/addi229.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi229) {
+ NEXT_OP(sp, a, x, y, o + 229);
+}
diff --git a/ops/addi/addi23.c b/ops/addi/addi23.c
new file mode 100644
index 0000000..cd0c6a0
--- /dev/null
+++ b/ops/addi/addi23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi23) {
+ NEXT_OP(sp, a, x, y, o + 23);
+}
diff --git a/ops/addi/addi230.c b/ops/addi/addi230.c
new file mode 100644
index 0000000..f2a402b
--- /dev/null
+++ b/ops/addi/addi230.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi230) {
+ NEXT_OP(sp, a, x, y, o + 230);
+}
diff --git a/ops/addi/addi231.c b/ops/addi/addi231.c
new file mode 100644
index 0000000..c355d78
--- /dev/null
+++ b/ops/addi/addi231.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi231) {
+ NEXT_OP(sp, a, x, y, o + 231);
+}
diff --git a/ops/addi/addi232.c b/ops/addi/addi232.c
new file mode 100644
index 0000000..886b03d
--- /dev/null
+++ b/ops/addi/addi232.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi232) {
+ NEXT_OP(sp, a, x, y, o + 232);
+}
diff --git a/ops/addi/addi233.c b/ops/addi/addi233.c
new file mode 100644
index 0000000..c06d21d
--- /dev/null
+++ b/ops/addi/addi233.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi233) {
+ NEXT_OP(sp, a, x, y, o + 233);
+}
diff --git a/ops/addi/addi234.c b/ops/addi/addi234.c
new file mode 100644
index 0000000..9eae1a7
--- /dev/null
+++ b/ops/addi/addi234.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi234) {
+ NEXT_OP(sp, a, x, y, o + 234);
+}
diff --git a/ops/addi/addi235.c b/ops/addi/addi235.c
new file mode 100644
index 0000000..83c222e
--- /dev/null
+++ b/ops/addi/addi235.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi235) {
+ NEXT_OP(sp, a, x, y, o + 235);
+}
diff --git a/ops/addi/addi236.c b/ops/addi/addi236.c
new file mode 100644
index 0000000..d380ce4
--- /dev/null
+++ b/ops/addi/addi236.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi236) {
+ NEXT_OP(sp, a, x, y, o + 236);
+}
diff --git a/ops/addi/addi237.c b/ops/addi/addi237.c
new file mode 100644
index 0000000..0d18695
--- /dev/null
+++ b/ops/addi/addi237.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi237) {
+ NEXT_OP(sp, a, x, y, o + 237);
+}
diff --git a/ops/addi/addi238.c b/ops/addi/addi238.c
new file mode 100644
index 0000000..4ad95cf
--- /dev/null
+++ b/ops/addi/addi238.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi238) {
+ NEXT_OP(sp, a, x, y, o + 238);
+}
diff --git a/ops/addi/addi239.c b/ops/addi/addi239.c
new file mode 100644
index 0000000..12893de
--- /dev/null
+++ b/ops/addi/addi239.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi239) {
+ NEXT_OP(sp, a, x, y, o + 239);
+}
diff --git a/ops/addi/addi24.c b/ops/addi/addi24.c
new file mode 100644
index 0000000..59ee552
--- /dev/null
+++ b/ops/addi/addi24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi24) {
+ NEXT_OP(sp, a, x, y, o + 24);
+}
diff --git a/ops/addi/addi240.c b/ops/addi/addi240.c
new file mode 100644
index 0000000..b9bb15a
--- /dev/null
+++ b/ops/addi/addi240.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi240) {
+ NEXT_OP(sp, a, x, y, o + 240);
+}
diff --git a/ops/addi/addi241.c b/ops/addi/addi241.c
new file mode 100644
index 0000000..f64a0ad
--- /dev/null
+++ b/ops/addi/addi241.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi241) {
+ NEXT_OP(sp, a, x, y, o + 241);
+}
diff --git a/ops/addi/addi242.c b/ops/addi/addi242.c
new file mode 100644
index 0000000..65c5175
--- /dev/null
+++ b/ops/addi/addi242.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi242) {
+ NEXT_OP(sp, a, x, y, o + 242);
+}
diff --git a/ops/addi/addi243.c b/ops/addi/addi243.c
new file mode 100644
index 0000000..c59018b
--- /dev/null
+++ b/ops/addi/addi243.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi243) {
+ NEXT_OP(sp, a, x, y, o + 243);
+}
diff --git a/ops/addi/addi244.c b/ops/addi/addi244.c
new file mode 100644
index 0000000..db19807
--- /dev/null
+++ b/ops/addi/addi244.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi244) {
+ NEXT_OP(sp, a, x, y, o + 244);
+}
diff --git a/ops/addi/addi245.c b/ops/addi/addi245.c
new file mode 100644
index 0000000..6b37971
--- /dev/null
+++ b/ops/addi/addi245.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi245) {
+ NEXT_OP(sp, a, x, y, o + 245);
+}
diff --git a/ops/addi/addi246.c b/ops/addi/addi246.c
new file mode 100644
index 0000000..63f1108
--- /dev/null
+++ b/ops/addi/addi246.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi246) {
+ NEXT_OP(sp, a, x, y, o + 246);
+}
diff --git a/ops/addi/addi247.c b/ops/addi/addi247.c
new file mode 100644
index 0000000..ff2224a
--- /dev/null
+++ b/ops/addi/addi247.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi247) {
+ NEXT_OP(sp, a, x, y, o + 247);
+}
diff --git a/ops/addi/addi248.c b/ops/addi/addi248.c
new file mode 100644
index 0000000..323c11f
--- /dev/null
+++ b/ops/addi/addi248.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi248) {
+ NEXT_OP(sp, a, x, y, o + 248);
+}
diff --git a/ops/addi/addi249.c b/ops/addi/addi249.c
new file mode 100644
index 0000000..ed8421f
--- /dev/null
+++ b/ops/addi/addi249.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi249) {
+ NEXT_OP(sp, a, x, y, o + 249);
+}
diff --git a/ops/addi/addi25.c b/ops/addi/addi25.c
new file mode 100644
index 0000000..266aa7e
--- /dev/null
+++ b/ops/addi/addi25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi25) {
+ NEXT_OP(sp, a, x, y, o + 25);
+}
diff --git a/ops/addi/addi250.c b/ops/addi/addi250.c
new file mode 100644
index 0000000..2b9b805
--- /dev/null
+++ b/ops/addi/addi250.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi250) {
+ NEXT_OP(sp, a, x, y, o + 250);
+}
diff --git a/ops/addi/addi251.c b/ops/addi/addi251.c
new file mode 100644
index 0000000..f772a60
--- /dev/null
+++ b/ops/addi/addi251.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi251) {
+ NEXT_OP(sp, a, x, y, o + 251);
+}
diff --git a/ops/addi/addi252.c b/ops/addi/addi252.c
new file mode 100644
index 0000000..b1ebe4e
--- /dev/null
+++ b/ops/addi/addi252.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi252) {
+ NEXT_OP(sp, a, x, y, o + 252);
+}
diff --git a/ops/addi/addi253.c b/ops/addi/addi253.c
new file mode 100644
index 0000000..3181bda
--- /dev/null
+++ b/ops/addi/addi253.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi253) {
+ NEXT_OP(sp, a, x, y, o + 253);
+}
diff --git a/ops/addi/addi254.c b/ops/addi/addi254.c
new file mode 100644
index 0000000..1fb693e
--- /dev/null
+++ b/ops/addi/addi254.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi254) {
+ NEXT_OP(sp, a, x, y, o + 254);
+}
diff --git a/ops/addi/addi255.c b/ops/addi/addi255.c
new file mode 100644
index 0000000..9707593
--- /dev/null
+++ b/ops/addi/addi255.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi255) {
+ NEXT_OP(sp, a, x, y, o + 255);
+}
diff --git a/ops/addi/addi26.c b/ops/addi/addi26.c
new file mode 100644
index 0000000..398ddce
--- /dev/null
+++ b/ops/addi/addi26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi26) {
+ NEXT_OP(sp, a, x, y, o + 26);
+}
diff --git a/ops/addi/addi27.c b/ops/addi/addi27.c
new file mode 100644
index 0000000..7c46842
--- /dev/null
+++ b/ops/addi/addi27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi27) {
+ NEXT_OP(sp, a, x, y, o + 27);
+}
diff --git a/ops/addi/addi28.c b/ops/addi/addi28.c
new file mode 100644
index 0000000..896bbe8
--- /dev/null
+++ b/ops/addi/addi28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi28) {
+ NEXT_OP(sp, a, x, y, o + 28);
+}
diff --git a/ops/addi/addi29.c b/ops/addi/addi29.c
new file mode 100644
index 0000000..bee0074
--- /dev/null
+++ b/ops/addi/addi29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi29) {
+ NEXT_OP(sp, a, x, y, o + 29);
+}
diff --git a/ops/addi/addi3.c b/ops/addi/addi3.c
new file mode 100644
index 0000000..43a0b9e
--- /dev/null
+++ b/ops/addi/addi3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi3) {
+ NEXT_OP(sp, a, x, y, o + 3);
+}
diff --git a/ops/addi/addi30.c b/ops/addi/addi30.c
new file mode 100644
index 0000000..5fc96e1
--- /dev/null
+++ b/ops/addi/addi30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi30) {
+ NEXT_OP(sp, a, x, y, o + 30);
+}
diff --git a/ops/addi/addi31.c b/ops/addi/addi31.c
new file mode 100644
index 0000000..c3f67b9
--- /dev/null
+++ b/ops/addi/addi31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi31) {
+ NEXT_OP(sp, a, x, y, o + 31);
+}
diff --git a/ops/addi/addi32.c b/ops/addi/addi32.c
new file mode 100644
index 0000000..8db58f6
--- /dev/null
+++ b/ops/addi/addi32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi32) {
+ NEXT_OP(sp, a, x, y, o + 32);
+}
diff --git a/ops/addi/addi33.c b/ops/addi/addi33.c
new file mode 100644
index 0000000..32aaa2e
--- /dev/null
+++ b/ops/addi/addi33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi33) {
+ NEXT_OP(sp, a, x, y, o + 33);
+}
diff --git a/ops/addi/addi34.c b/ops/addi/addi34.c
new file mode 100644
index 0000000..c6deab1
--- /dev/null
+++ b/ops/addi/addi34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi34) {
+ NEXT_OP(sp, a, x, y, o + 34);
+}
diff --git a/ops/addi/addi35.c b/ops/addi/addi35.c
new file mode 100644
index 0000000..7b012a0
--- /dev/null
+++ b/ops/addi/addi35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi35) {
+ NEXT_OP(sp, a, x, y, o + 35);
+}
diff --git a/ops/addi/addi36.c b/ops/addi/addi36.c
new file mode 100644
index 0000000..61ec9a5
--- /dev/null
+++ b/ops/addi/addi36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi36) {
+ NEXT_OP(sp, a, x, y, o + 36);
+}
diff --git a/ops/addi/addi37.c b/ops/addi/addi37.c
new file mode 100644
index 0000000..a195615
--- /dev/null
+++ b/ops/addi/addi37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi37) {
+ NEXT_OP(sp, a, x, y, o + 37);
+}
diff --git a/ops/addi/addi38.c b/ops/addi/addi38.c
new file mode 100644
index 0000000..d8e982a
--- /dev/null
+++ b/ops/addi/addi38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi38) {
+ NEXT_OP(sp, a, x, y, o + 38);
+}
diff --git a/ops/addi/addi39.c b/ops/addi/addi39.c
new file mode 100644
index 0000000..26fc098
--- /dev/null
+++ b/ops/addi/addi39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi39) {
+ NEXT_OP(sp, a, x, y, o + 39);
+}
diff --git a/ops/addi/addi4.c b/ops/addi/addi4.c
new file mode 100644
index 0000000..b897fc5
--- /dev/null
+++ b/ops/addi/addi4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi4) {
+ NEXT_OP(sp, a, x, y, o + 4);
+}
diff --git a/ops/addi/addi40.c b/ops/addi/addi40.c
new file mode 100644
index 0000000..90e8bc8
--- /dev/null
+++ b/ops/addi/addi40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi40) {
+ NEXT_OP(sp, a, x, y, o + 40);
+}
diff --git a/ops/addi/addi41.c b/ops/addi/addi41.c
new file mode 100644
index 0000000..63131c3
--- /dev/null
+++ b/ops/addi/addi41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi41) {
+ NEXT_OP(sp, a, x, y, o + 41);
+}
diff --git a/ops/addi/addi42.c b/ops/addi/addi42.c
new file mode 100644
index 0000000..7c722aa
--- /dev/null
+++ b/ops/addi/addi42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi42) {
+ NEXT_OP(sp, a, x, y, o + 42);
+}
diff --git a/ops/addi/addi43.c b/ops/addi/addi43.c
new file mode 100644
index 0000000..a98577f
--- /dev/null
+++ b/ops/addi/addi43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi43) {
+ NEXT_OP(sp, a, x, y, o + 43);
+}
diff --git a/ops/addi/addi44.c b/ops/addi/addi44.c
new file mode 100644
index 0000000..948e761
--- /dev/null
+++ b/ops/addi/addi44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi44) {
+ NEXT_OP(sp, a, x, y, o + 44);
+}
diff --git a/ops/addi/addi45.c b/ops/addi/addi45.c
new file mode 100644
index 0000000..bb05c09
--- /dev/null
+++ b/ops/addi/addi45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi45) {
+ NEXT_OP(sp, a, x, y, o + 45);
+}
diff --git a/ops/addi/addi46.c b/ops/addi/addi46.c
new file mode 100644
index 0000000..0104769
--- /dev/null
+++ b/ops/addi/addi46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi46) {
+ NEXT_OP(sp, a, x, y, o + 46);
+}
diff --git a/ops/addi/addi47.c b/ops/addi/addi47.c
new file mode 100644
index 0000000..4aa34c2
--- /dev/null
+++ b/ops/addi/addi47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi47) {
+ NEXT_OP(sp, a, x, y, o + 47);
+}
diff --git a/ops/addi/addi48.c b/ops/addi/addi48.c
new file mode 100644
index 0000000..c14a5aa
--- /dev/null
+++ b/ops/addi/addi48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi48) {
+ NEXT_OP(sp, a, x, y, o + 48);
+}
diff --git a/ops/addi/addi49.c b/ops/addi/addi49.c
new file mode 100644
index 0000000..d0c46a9
--- /dev/null
+++ b/ops/addi/addi49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi49) {
+ NEXT_OP(sp, a, x, y, o + 49);
+}
diff --git a/ops/addi/addi5.c b/ops/addi/addi5.c
new file mode 100644
index 0000000..895312f
--- /dev/null
+++ b/ops/addi/addi5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi5) {
+ NEXT_OP(sp, a, x, y, o + 5);
+}
diff --git a/ops/addi/addi50.c b/ops/addi/addi50.c
new file mode 100644
index 0000000..13fb17a
--- /dev/null
+++ b/ops/addi/addi50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi50) {
+ NEXT_OP(sp, a, x, y, o + 50);
+}
diff --git a/ops/addi/addi51.c b/ops/addi/addi51.c
new file mode 100644
index 0000000..3a999e7
--- /dev/null
+++ b/ops/addi/addi51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi51) {
+ NEXT_OP(sp, a, x, y, o + 51);
+}
diff --git a/ops/addi/addi52.c b/ops/addi/addi52.c
new file mode 100644
index 0000000..002e282
--- /dev/null
+++ b/ops/addi/addi52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi52) {
+ NEXT_OP(sp, a, x, y, o + 52);
+}
diff --git a/ops/addi/addi53.c b/ops/addi/addi53.c
new file mode 100644
index 0000000..61ceaf6
--- /dev/null
+++ b/ops/addi/addi53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi53) {
+ NEXT_OP(sp, a, x, y, o + 53);
+}
diff --git a/ops/addi/addi54.c b/ops/addi/addi54.c
new file mode 100644
index 0000000..e57647c
--- /dev/null
+++ b/ops/addi/addi54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi54) {
+ NEXT_OP(sp, a, x, y, o + 54);
+}
diff --git a/ops/addi/addi55.c b/ops/addi/addi55.c
new file mode 100644
index 0000000..41a1b27
--- /dev/null
+++ b/ops/addi/addi55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi55) {
+ NEXT_OP(sp, a, x, y, o + 55);
+}
diff --git a/ops/addi/addi56.c b/ops/addi/addi56.c
new file mode 100644
index 0000000..b6b05f4
--- /dev/null
+++ b/ops/addi/addi56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi56) {
+ NEXT_OP(sp, a, x, y, o + 56);
+}
diff --git a/ops/addi/addi57.c b/ops/addi/addi57.c
new file mode 100644
index 0000000..a53b11a
--- /dev/null
+++ b/ops/addi/addi57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi57) {
+ NEXT_OP(sp, a, x, y, o + 57);
+}
diff --git a/ops/addi/addi58.c b/ops/addi/addi58.c
new file mode 100644
index 0000000..c6242f8
--- /dev/null
+++ b/ops/addi/addi58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi58) {
+ NEXT_OP(sp, a, x, y, o + 58);
+}
diff --git a/ops/addi/addi59.c b/ops/addi/addi59.c
new file mode 100644
index 0000000..79d2ce4
--- /dev/null
+++ b/ops/addi/addi59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi59) {
+ NEXT_OP(sp, a, x, y, o + 59);
+}
diff --git a/ops/addi/addi6.c b/ops/addi/addi6.c
new file mode 100644
index 0000000..52a04b5
--- /dev/null
+++ b/ops/addi/addi6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi6) {
+ NEXT_OP(sp, a, x, y, o + 6);
+}
diff --git a/ops/addi/addi60.c b/ops/addi/addi60.c
new file mode 100644
index 0000000..402b5ef
--- /dev/null
+++ b/ops/addi/addi60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi60) {
+ NEXT_OP(sp, a, x, y, o + 60);
+}
diff --git a/ops/addi/addi61.c b/ops/addi/addi61.c
new file mode 100644
index 0000000..470fc85
--- /dev/null
+++ b/ops/addi/addi61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi61) {
+ NEXT_OP(sp, a, x, y, o + 61);
+}
diff --git a/ops/addi/addi62.c b/ops/addi/addi62.c
new file mode 100644
index 0000000..aa53bf0
--- /dev/null
+++ b/ops/addi/addi62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi62) {
+ NEXT_OP(sp, a, x, y, o + 62);
+}
diff --git a/ops/addi/addi63.c b/ops/addi/addi63.c
new file mode 100644
index 0000000..e7c076c
--- /dev/null
+++ b/ops/addi/addi63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi63) {
+ NEXT_OP(sp, a, x, y, o + 63);
+}
diff --git a/ops/addi/addi64.c b/ops/addi/addi64.c
new file mode 100644
index 0000000..fdd39ba
--- /dev/null
+++ b/ops/addi/addi64.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi64) {
+ NEXT_OP(sp, a, x, y, o + 64);
+}
diff --git a/ops/addi/addi65.c b/ops/addi/addi65.c
new file mode 100644
index 0000000..4543e82
--- /dev/null
+++ b/ops/addi/addi65.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi65) {
+ NEXT_OP(sp, a, x, y, o + 65);
+}
diff --git a/ops/addi/addi66.c b/ops/addi/addi66.c
new file mode 100644
index 0000000..57f7253
--- /dev/null
+++ b/ops/addi/addi66.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi66) {
+ NEXT_OP(sp, a, x, y, o + 66);
+}
diff --git a/ops/addi/addi67.c b/ops/addi/addi67.c
new file mode 100644
index 0000000..38501bb
--- /dev/null
+++ b/ops/addi/addi67.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi67) {
+ NEXT_OP(sp, a, x, y, o + 67);
+}
diff --git a/ops/addi/addi68.c b/ops/addi/addi68.c
new file mode 100644
index 0000000..c4037ef
--- /dev/null
+++ b/ops/addi/addi68.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi68) {
+ NEXT_OP(sp, a, x, y, o + 68);
+}
diff --git a/ops/addi/addi69.c b/ops/addi/addi69.c
new file mode 100644
index 0000000..e57195f
--- /dev/null
+++ b/ops/addi/addi69.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi69) {
+ NEXT_OP(sp, a, x, y, o + 69);
+}
diff --git a/ops/addi/addi7.c b/ops/addi/addi7.c
new file mode 100644
index 0000000..5456586
--- /dev/null
+++ b/ops/addi/addi7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi7) {
+ NEXT_OP(sp, a, x, y, o + 7);
+}
diff --git a/ops/addi/addi70.c b/ops/addi/addi70.c
new file mode 100644
index 0000000..c9a68df
--- /dev/null
+++ b/ops/addi/addi70.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi70) {
+ NEXT_OP(sp, a, x, y, o + 70);
+}
diff --git a/ops/addi/addi71.c b/ops/addi/addi71.c
new file mode 100644
index 0000000..6f0dea4
--- /dev/null
+++ b/ops/addi/addi71.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi71) {
+ NEXT_OP(sp, a, x, y, o + 71);
+}
diff --git a/ops/addi/addi72.c b/ops/addi/addi72.c
new file mode 100644
index 0000000..d4c8871
--- /dev/null
+++ b/ops/addi/addi72.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi72) {
+ NEXT_OP(sp, a, x, y, o + 72);
+}
diff --git a/ops/addi/addi73.c b/ops/addi/addi73.c
new file mode 100644
index 0000000..cc544b2
--- /dev/null
+++ b/ops/addi/addi73.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi73) {
+ NEXT_OP(sp, a, x, y, o + 73);
+}
diff --git a/ops/addi/addi74.c b/ops/addi/addi74.c
new file mode 100644
index 0000000..2fa98b1
--- /dev/null
+++ b/ops/addi/addi74.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi74) {
+ NEXT_OP(sp, a, x, y, o + 74);
+}
diff --git a/ops/addi/addi75.c b/ops/addi/addi75.c
new file mode 100644
index 0000000..ca98390
--- /dev/null
+++ b/ops/addi/addi75.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi75) {
+ NEXT_OP(sp, a, x, y, o + 75);
+}
diff --git a/ops/addi/addi76.c b/ops/addi/addi76.c
new file mode 100644
index 0000000..28feb12
--- /dev/null
+++ b/ops/addi/addi76.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi76) {
+ NEXT_OP(sp, a, x, y, o + 76);
+}
diff --git a/ops/addi/addi77.c b/ops/addi/addi77.c
new file mode 100644
index 0000000..71b4d4c
--- /dev/null
+++ b/ops/addi/addi77.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi77) {
+ NEXT_OP(sp, a, x, y, o + 77);
+}
diff --git a/ops/addi/addi78.c b/ops/addi/addi78.c
new file mode 100644
index 0000000..01fb7b5
--- /dev/null
+++ b/ops/addi/addi78.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi78) {
+ NEXT_OP(sp, a, x, y, o + 78);
+}
diff --git a/ops/addi/addi79.c b/ops/addi/addi79.c
new file mode 100644
index 0000000..f5a065a
--- /dev/null
+++ b/ops/addi/addi79.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi79) {
+ NEXT_OP(sp, a, x, y, o + 79);
+}
diff --git a/ops/addi/addi8.c b/ops/addi/addi8.c
new file mode 100644
index 0000000..81864d6
--- /dev/null
+++ b/ops/addi/addi8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi8) {
+ NEXT_OP(sp, a, x, y, o + 8);
+}
diff --git a/ops/addi/addi80.c b/ops/addi/addi80.c
new file mode 100644
index 0000000..a551614
--- /dev/null
+++ b/ops/addi/addi80.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi80) {
+ NEXT_OP(sp, a, x, y, o + 80);
+}
diff --git a/ops/addi/addi81.c b/ops/addi/addi81.c
new file mode 100644
index 0000000..aad66b9
--- /dev/null
+++ b/ops/addi/addi81.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi81) {
+ NEXT_OP(sp, a, x, y, o + 81);
+}
diff --git a/ops/addi/addi82.c b/ops/addi/addi82.c
new file mode 100644
index 0000000..a938d2c
--- /dev/null
+++ b/ops/addi/addi82.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi82) {
+ NEXT_OP(sp, a, x, y, o + 82);
+}
diff --git a/ops/addi/addi83.c b/ops/addi/addi83.c
new file mode 100644
index 0000000..7a425f4
--- /dev/null
+++ b/ops/addi/addi83.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi83) {
+ NEXT_OP(sp, a, x, y, o + 83);
+}
diff --git a/ops/addi/addi84.c b/ops/addi/addi84.c
new file mode 100644
index 0000000..68944fd
--- /dev/null
+++ b/ops/addi/addi84.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi84) {
+ NEXT_OP(sp, a, x, y, o + 84);
+}
diff --git a/ops/addi/addi85.c b/ops/addi/addi85.c
new file mode 100644
index 0000000..d2b7ed2
--- /dev/null
+++ b/ops/addi/addi85.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi85) {
+ NEXT_OP(sp, a, x, y, o + 85);
+}
diff --git a/ops/addi/addi86.c b/ops/addi/addi86.c
new file mode 100644
index 0000000..e8191e5
--- /dev/null
+++ b/ops/addi/addi86.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi86) {
+ NEXT_OP(sp, a, x, y, o + 86);
+}
diff --git a/ops/addi/addi87.c b/ops/addi/addi87.c
new file mode 100644
index 0000000..e0b482b
--- /dev/null
+++ b/ops/addi/addi87.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi87) {
+ NEXT_OP(sp, a, x, y, o + 87);
+}
diff --git a/ops/addi/addi88.c b/ops/addi/addi88.c
new file mode 100644
index 0000000..f0835e8
--- /dev/null
+++ b/ops/addi/addi88.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi88) {
+ NEXT_OP(sp, a, x, y, o + 88);
+}
diff --git a/ops/addi/addi89.c b/ops/addi/addi89.c
new file mode 100644
index 0000000..fa274a6
--- /dev/null
+++ b/ops/addi/addi89.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi89) {
+ NEXT_OP(sp, a, x, y, o + 89);
+}
diff --git a/ops/addi/addi9.c b/ops/addi/addi9.c
new file mode 100644
index 0000000..70cdbd3
--- /dev/null
+++ b/ops/addi/addi9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi9) {
+ NEXT_OP(sp, a, x, y, o + 9);
+}
diff --git a/ops/addi/addi90.c b/ops/addi/addi90.c
new file mode 100644
index 0000000..75d952f
--- /dev/null
+++ b/ops/addi/addi90.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi90) {
+ NEXT_OP(sp, a, x, y, o + 90);
+}
diff --git a/ops/addi/addi91.c b/ops/addi/addi91.c
new file mode 100644
index 0000000..a3c8e49
--- /dev/null
+++ b/ops/addi/addi91.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi91) {
+ NEXT_OP(sp, a, x, y, o + 91);
+}
diff --git a/ops/addi/addi92.c b/ops/addi/addi92.c
new file mode 100644
index 0000000..a417d01
--- /dev/null
+++ b/ops/addi/addi92.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi92) {
+ NEXT_OP(sp, a, x, y, o + 92);
+}
diff --git a/ops/addi/addi93.c b/ops/addi/addi93.c
new file mode 100644
index 0000000..32223ab
--- /dev/null
+++ b/ops/addi/addi93.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi93) {
+ NEXT_OP(sp, a, x, y, o + 93);
+}
diff --git a/ops/addi/addi94.c b/ops/addi/addi94.c
new file mode 100644
index 0000000..09bcaea
--- /dev/null
+++ b/ops/addi/addi94.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi94) {
+ NEXT_OP(sp, a, x, y, o + 94);
+}
diff --git a/ops/addi/addi95.c b/ops/addi/addi95.c
new file mode 100644
index 0000000..aab4d7e
--- /dev/null
+++ b/ops/addi/addi95.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi95) {
+ NEXT_OP(sp, a, x, y, o + 95);
+}
diff --git a/ops/addi/addi96.c b/ops/addi/addi96.c
new file mode 100644
index 0000000..c55ebe7
--- /dev/null
+++ b/ops/addi/addi96.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi96) {
+ NEXT_OP(sp, a, x, y, o + 96);
+}
diff --git a/ops/addi/addi97.c b/ops/addi/addi97.c
new file mode 100644
index 0000000..eb308b8
--- /dev/null
+++ b/ops/addi/addi97.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi97) {
+ NEXT_OP(sp, a, x, y, o + 97);
+}
diff --git a/ops/addi/addi98.c b/ops/addi/addi98.c
new file mode 100644
index 0000000..3f22000
--- /dev/null
+++ b/ops/addi/addi98.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi98) {
+ NEXT_OP(sp, a, x, y, o + 98);
+}
diff --git a/ops/addi/addi99.c b/ops/addi/addi99.c
new file mode 100644
index 0000000..6a7f890
--- /dev/null
+++ b/ops/addi/addi99.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(addi99) {
+ NEXT_OP(sp, a, x, y, o + 99);
+}
diff --git a/ops/addi/gen_addi.sh b/ops/addi/gen_addi.sh
new file mode 100755
index 0000000..d1e8c78
--- /dev/null
+++ b/ops/addi/gen_addi.sh
@@ -0,0 +1,7 @@
+for i in $(seq 0 255); do
+ filename=addi"$i".c
+ echo "#include \"../common.h\"\n" \
+ "DEFINE_OP(addi$i) {" \
+ "NEXT_OP(sp, a, x, y, o + $i);" \
+ "}" > "$filename"
+done
diff --git a/ops/addi/source.mk b/ops/addi/source.mk
new file mode 100644
index 0000000..dfca21b
--- /dev/null
+++ b/ops/addi/source.mk
@@ -0,0 +1,2 @@
+OP_SRC != echo ops/addi/*.c
+OP_SOURCES += $(OP_SRC)
diff --git a/ops/addxo.c b/ops/addxo.c
new file mode 100644
index 0000000..d046b7e
--- /dev/null
+++ b/ops/addxo.c
@@ -0,0 +1,6 @@
+#include "common.h"
+
+DEFINE_OP(addxo)
+{
+ NEXT_OP(sp, a, x + o, y, o);
+}
diff --git a/ops/addyo.c b/ops/addyo.c
new file mode 100644
index 0000000..ce36fca
--- /dev/null
+++ b/ops/addyo.c
@@ -0,0 +1,6 @@
+#include "common.h"
+
+DEFINE_OP(addyo)
+{
+ NEXT_OP(sp, a, x, y + o, o);
+}
diff --git a/ops/ban.c b/ops/ban.c
new file mode 100644
index 0000000..253befa
--- /dev/null
+++ b/ops/ban.c
@@ -0,0 +1,6 @@
+#include "common.h"
+
+DEFINE_OP(ban)
+{
+ BRANCH(o, a != 0, sp, a, x, y, o);
+}
diff --git a/ops/baz.c b/ops/baz.c
new file mode 100644
index 0000000..f53eebe
--- /dev/null
+++ b/ops/baz.c
@@ -0,0 +1,11 @@
+#include "common.h"
+
+DEFINE_OP(baz)
+{
+ // todo check if this could on some platforms end up with identical
+ // epilogue, in which case it shouldn't be filtered out
+ //
+ // best method might be to place all procedures we don't want to filter
+ // in a separate directory, maybe?
+ BRANCH(o, a == 0, sp, a, x, y, o);
+}
diff --git a/ops/bs/bsa0.c b/ops/bs/bsa0.c
new file mode 100644
index 0000000..c9ea0e9
--- /dev/null
+++ b/ops/bs/bsa0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa0) {
+ NEXT_OP(sp, a >> 0, x, y, o);
+}
diff --git a/ops/bs/bsa1.c b/ops/bs/bsa1.c
new file mode 100644
index 0000000..b8af984
--- /dev/null
+++ b/ops/bs/bsa1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa1) {
+ NEXT_OP(sp, a >> 1, x, y, o);
+}
diff --git a/ops/bs/bsa10.c b/ops/bs/bsa10.c
new file mode 100644
index 0000000..6291ca4
--- /dev/null
+++ b/ops/bs/bsa10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa10) {
+ NEXT_OP(sp, a >> 10, x, y, o);
+}
diff --git a/ops/bs/bsa11.c b/ops/bs/bsa11.c
new file mode 100644
index 0000000..e0c949d
--- /dev/null
+++ b/ops/bs/bsa11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa11) {
+ NEXT_OP(sp, a >> 11, x, y, o);
+}
diff --git a/ops/bs/bsa12.c b/ops/bs/bsa12.c
new file mode 100644
index 0000000..d6071a7
--- /dev/null
+++ b/ops/bs/bsa12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa12) {
+ NEXT_OP(sp, a >> 12, x, y, o);
+}
diff --git a/ops/bs/bsa13.c b/ops/bs/bsa13.c
new file mode 100644
index 0000000..2cfe471
--- /dev/null
+++ b/ops/bs/bsa13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa13) {
+ NEXT_OP(sp, a >> 13, x, y, o);
+}
diff --git a/ops/bs/bsa14.c b/ops/bs/bsa14.c
new file mode 100644
index 0000000..a772ebf
--- /dev/null
+++ b/ops/bs/bsa14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa14) {
+ NEXT_OP(sp, a >> 14, x, y, o);
+}
diff --git a/ops/bs/bsa15.c b/ops/bs/bsa15.c
new file mode 100644
index 0000000..240b39d
--- /dev/null
+++ b/ops/bs/bsa15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa15) {
+ NEXT_OP(sp, a >> 15, x, y, o);
+}
diff --git a/ops/bs/bsa16.c b/ops/bs/bsa16.c
new file mode 100644
index 0000000..b9819c7
--- /dev/null
+++ b/ops/bs/bsa16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa16) {
+ NEXT_OP(sp, a >> 16, x, y, o);
+}
diff --git a/ops/bs/bsa17.c b/ops/bs/bsa17.c
new file mode 100644
index 0000000..ed11634
--- /dev/null
+++ b/ops/bs/bsa17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa17) {
+ NEXT_OP(sp, a >> 17, x, y, o);
+}
diff --git a/ops/bs/bsa18.c b/ops/bs/bsa18.c
new file mode 100644
index 0000000..fa3bcd5
--- /dev/null
+++ b/ops/bs/bsa18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa18) {
+ NEXT_OP(sp, a >> 18, x, y, o);
+}
diff --git a/ops/bs/bsa19.c b/ops/bs/bsa19.c
new file mode 100644
index 0000000..2d1b267
--- /dev/null
+++ b/ops/bs/bsa19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa19) {
+ NEXT_OP(sp, a >> 19, x, y, o);
+}
diff --git a/ops/bs/bsa2.c b/ops/bs/bsa2.c
new file mode 100644
index 0000000..3ca8e56
--- /dev/null
+++ b/ops/bs/bsa2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa2) {
+ NEXT_OP(sp, a >> 2, x, y, o);
+}
diff --git a/ops/bs/bsa20.c b/ops/bs/bsa20.c
new file mode 100644
index 0000000..a9eabe7
--- /dev/null
+++ b/ops/bs/bsa20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa20) {
+ NEXT_OP(sp, a >> 20, x, y, o);
+}
diff --git a/ops/bs/bsa21.c b/ops/bs/bsa21.c
new file mode 100644
index 0000000..534dda3
--- /dev/null
+++ b/ops/bs/bsa21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa21) {
+ NEXT_OP(sp, a >> 21, x, y, o);
+}
diff --git a/ops/bs/bsa22.c b/ops/bs/bsa22.c
new file mode 100644
index 0000000..2f313c9
--- /dev/null
+++ b/ops/bs/bsa22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa22) {
+ NEXT_OP(sp, a >> 22, x, y, o);
+}
diff --git a/ops/bs/bsa23.c b/ops/bs/bsa23.c
new file mode 100644
index 0000000..91fff47
--- /dev/null
+++ b/ops/bs/bsa23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa23) {
+ NEXT_OP(sp, a >> 23, x, y, o);
+}
diff --git a/ops/bs/bsa24.c b/ops/bs/bsa24.c
new file mode 100644
index 0000000..66669de
--- /dev/null
+++ b/ops/bs/bsa24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa24) {
+ NEXT_OP(sp, a >> 24, x, y, o);
+}
diff --git a/ops/bs/bsa25.c b/ops/bs/bsa25.c
new file mode 100644
index 0000000..e881ff5
--- /dev/null
+++ b/ops/bs/bsa25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa25) {
+ NEXT_OP(sp, a >> 25, x, y, o);
+}
diff --git a/ops/bs/bsa26.c b/ops/bs/bsa26.c
new file mode 100644
index 0000000..de40f9d
--- /dev/null
+++ b/ops/bs/bsa26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa26) {
+ NEXT_OP(sp, a >> 26, x, y, o);
+}
diff --git a/ops/bs/bsa27.c b/ops/bs/bsa27.c
new file mode 100644
index 0000000..ba8e33a
--- /dev/null
+++ b/ops/bs/bsa27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa27) {
+ NEXT_OP(sp, a >> 27, x, y, o);
+}
diff --git a/ops/bs/bsa28.c b/ops/bs/bsa28.c
new file mode 100644
index 0000000..9a88519
--- /dev/null
+++ b/ops/bs/bsa28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa28) {
+ NEXT_OP(sp, a >> 28, x, y, o);
+}
diff --git a/ops/bs/bsa29.c b/ops/bs/bsa29.c
new file mode 100644
index 0000000..fe3b1e2
--- /dev/null
+++ b/ops/bs/bsa29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa29) {
+ NEXT_OP(sp, a >> 29, x, y, o);
+}
diff --git a/ops/bs/bsa3.c b/ops/bs/bsa3.c
new file mode 100644
index 0000000..52d4f6f
--- /dev/null
+++ b/ops/bs/bsa3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa3) {
+ NEXT_OP(sp, a >> 3, x, y, o);
+}
diff --git a/ops/bs/bsa30.c b/ops/bs/bsa30.c
new file mode 100644
index 0000000..7ba6cf0
--- /dev/null
+++ b/ops/bs/bsa30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa30) {
+ NEXT_OP(sp, a >> 30, x, y, o);
+}
diff --git a/ops/bs/bsa31.c b/ops/bs/bsa31.c
new file mode 100644
index 0000000..a86237b
--- /dev/null
+++ b/ops/bs/bsa31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa31) {
+ NEXT_OP(sp, a >> 31, x, y, o);
+}
diff --git a/ops/bs/bsa32.c b/ops/bs/bsa32.c
new file mode 100644
index 0000000..51524fc
--- /dev/null
+++ b/ops/bs/bsa32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa32) {
+ NEXT_OP(sp, a >> 32, x, y, o);
+}
diff --git a/ops/bs/bsa33.c b/ops/bs/bsa33.c
new file mode 100644
index 0000000..3c54449
--- /dev/null
+++ b/ops/bs/bsa33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa33) {
+ NEXT_OP(sp, a >> 33, x, y, o);
+}
diff --git a/ops/bs/bsa34.c b/ops/bs/bsa34.c
new file mode 100644
index 0000000..8e4c881
--- /dev/null
+++ b/ops/bs/bsa34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa34) {
+ NEXT_OP(sp, a >> 34, x, y, o);
+}
diff --git a/ops/bs/bsa35.c b/ops/bs/bsa35.c
new file mode 100644
index 0000000..d03fe93
--- /dev/null
+++ b/ops/bs/bsa35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa35) {
+ NEXT_OP(sp, a >> 35, x, y, o);
+}
diff --git a/ops/bs/bsa36.c b/ops/bs/bsa36.c
new file mode 100644
index 0000000..d6417dd
--- /dev/null
+++ b/ops/bs/bsa36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa36) {
+ NEXT_OP(sp, a >> 36, x, y, o);
+}
diff --git a/ops/bs/bsa37.c b/ops/bs/bsa37.c
new file mode 100644
index 0000000..6a804ac
--- /dev/null
+++ b/ops/bs/bsa37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa37) {
+ NEXT_OP(sp, a >> 37, x, y, o);
+}
diff --git a/ops/bs/bsa38.c b/ops/bs/bsa38.c
new file mode 100644
index 0000000..cd89c2f
--- /dev/null
+++ b/ops/bs/bsa38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa38) {
+ NEXT_OP(sp, a >> 38, x, y, o);
+}
diff --git a/ops/bs/bsa39.c b/ops/bs/bsa39.c
new file mode 100644
index 0000000..da284d6
--- /dev/null
+++ b/ops/bs/bsa39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa39) {
+ NEXT_OP(sp, a >> 39, x, y, o);
+}
diff --git a/ops/bs/bsa4.c b/ops/bs/bsa4.c
new file mode 100644
index 0000000..cb7260d
--- /dev/null
+++ b/ops/bs/bsa4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa4) {
+ NEXT_OP(sp, a >> 4, x, y, o);
+}
diff --git a/ops/bs/bsa40.c b/ops/bs/bsa40.c
new file mode 100644
index 0000000..f0d3fb6
--- /dev/null
+++ b/ops/bs/bsa40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa40) {
+ NEXT_OP(sp, a >> 40, x, y, o);
+}
diff --git a/ops/bs/bsa41.c b/ops/bs/bsa41.c
new file mode 100644
index 0000000..6613ffe
--- /dev/null
+++ b/ops/bs/bsa41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa41) {
+ NEXT_OP(sp, a >> 41, x, y, o);
+}
diff --git a/ops/bs/bsa42.c b/ops/bs/bsa42.c
new file mode 100644
index 0000000..65e0d12
--- /dev/null
+++ b/ops/bs/bsa42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa42) {
+ NEXT_OP(sp, a >> 42, x, y, o);
+}
diff --git a/ops/bs/bsa43.c b/ops/bs/bsa43.c
new file mode 100644
index 0000000..90fdbbd
--- /dev/null
+++ b/ops/bs/bsa43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa43) {
+ NEXT_OP(sp, a >> 43, x, y, o);
+}
diff --git a/ops/bs/bsa44.c b/ops/bs/bsa44.c
new file mode 100644
index 0000000..baf051b
--- /dev/null
+++ b/ops/bs/bsa44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa44) {
+ NEXT_OP(sp, a >> 44, x, y, o);
+}
diff --git a/ops/bs/bsa45.c b/ops/bs/bsa45.c
new file mode 100644
index 0000000..dc4a2c3
--- /dev/null
+++ b/ops/bs/bsa45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa45) {
+ NEXT_OP(sp, a >> 45, x, y, o);
+}
diff --git a/ops/bs/bsa46.c b/ops/bs/bsa46.c
new file mode 100644
index 0000000..41a3bc9
--- /dev/null
+++ b/ops/bs/bsa46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa46) {
+ NEXT_OP(sp, a >> 46, x, y, o);
+}
diff --git a/ops/bs/bsa47.c b/ops/bs/bsa47.c
new file mode 100644
index 0000000..76a5b23
--- /dev/null
+++ b/ops/bs/bsa47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa47) {
+ NEXT_OP(sp, a >> 47, x, y, o);
+}
diff --git a/ops/bs/bsa48.c b/ops/bs/bsa48.c
new file mode 100644
index 0000000..78af1d6
--- /dev/null
+++ b/ops/bs/bsa48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa48) {
+ NEXT_OP(sp, a >> 48, x, y, o);
+}
diff --git a/ops/bs/bsa49.c b/ops/bs/bsa49.c
new file mode 100644
index 0000000..1889ac1
--- /dev/null
+++ b/ops/bs/bsa49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa49) {
+ NEXT_OP(sp, a >> 49, x, y, o);
+}
diff --git a/ops/bs/bsa5.c b/ops/bs/bsa5.c
new file mode 100644
index 0000000..bda8bfd
--- /dev/null
+++ b/ops/bs/bsa5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa5) {
+ NEXT_OP(sp, a >> 5, x, y, o);
+}
diff --git a/ops/bs/bsa50.c b/ops/bs/bsa50.c
new file mode 100644
index 0000000..ef31495
--- /dev/null
+++ b/ops/bs/bsa50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa50) {
+ NEXT_OP(sp, a >> 50, x, y, o);
+}
diff --git a/ops/bs/bsa51.c b/ops/bs/bsa51.c
new file mode 100644
index 0000000..ebbd792
--- /dev/null
+++ b/ops/bs/bsa51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa51) {
+ NEXT_OP(sp, a >> 51, x, y, o);
+}
diff --git a/ops/bs/bsa52.c b/ops/bs/bsa52.c
new file mode 100644
index 0000000..d9b81ed
--- /dev/null
+++ b/ops/bs/bsa52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa52) {
+ NEXT_OP(sp, a >> 52, x, y, o);
+}
diff --git a/ops/bs/bsa53.c b/ops/bs/bsa53.c
new file mode 100644
index 0000000..efdaa18
--- /dev/null
+++ b/ops/bs/bsa53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa53) {
+ NEXT_OP(sp, a >> 53, x, y, o);
+}
diff --git a/ops/bs/bsa54.c b/ops/bs/bsa54.c
new file mode 100644
index 0000000..6490468
--- /dev/null
+++ b/ops/bs/bsa54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa54) {
+ NEXT_OP(sp, a >> 54, x, y, o);
+}
diff --git a/ops/bs/bsa55.c b/ops/bs/bsa55.c
new file mode 100644
index 0000000..cd31e73
--- /dev/null
+++ b/ops/bs/bsa55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa55) {
+ NEXT_OP(sp, a >> 55, x, y, o);
+}
diff --git a/ops/bs/bsa56.c b/ops/bs/bsa56.c
new file mode 100644
index 0000000..0455f25
--- /dev/null
+++ b/ops/bs/bsa56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa56) {
+ NEXT_OP(sp, a >> 56, x, y, o);
+}
diff --git a/ops/bs/bsa57.c b/ops/bs/bsa57.c
new file mode 100644
index 0000000..3f5f884
--- /dev/null
+++ b/ops/bs/bsa57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa57) {
+ NEXT_OP(sp, a >> 57, x, y, o);
+}
diff --git a/ops/bs/bsa58.c b/ops/bs/bsa58.c
new file mode 100644
index 0000000..0e33fa2
--- /dev/null
+++ b/ops/bs/bsa58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa58) {
+ NEXT_OP(sp, a >> 58, x, y, o);
+}
diff --git a/ops/bs/bsa59.c b/ops/bs/bsa59.c
new file mode 100644
index 0000000..687119f
--- /dev/null
+++ b/ops/bs/bsa59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa59) {
+ NEXT_OP(sp, a >> 59, x, y, o);
+}
diff --git a/ops/bs/bsa6.c b/ops/bs/bsa6.c
new file mode 100644
index 0000000..097ea2d
--- /dev/null
+++ b/ops/bs/bsa6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa6) {
+ NEXT_OP(sp, a >> 6, x, y, o);
+}
diff --git a/ops/bs/bsa60.c b/ops/bs/bsa60.c
new file mode 100644
index 0000000..5d928d3
--- /dev/null
+++ b/ops/bs/bsa60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa60) {
+ NEXT_OP(sp, a >> 60, x, y, o);
+}
diff --git a/ops/bs/bsa61.c b/ops/bs/bsa61.c
new file mode 100644
index 0000000..9e768e2
--- /dev/null
+++ b/ops/bs/bsa61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa61) {
+ NEXT_OP(sp, a >> 61, x, y, o);
+}
diff --git a/ops/bs/bsa62.c b/ops/bs/bsa62.c
new file mode 100644
index 0000000..96c744d
--- /dev/null
+++ b/ops/bs/bsa62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa62) {
+ NEXT_OP(sp, a >> 62, x, y, o);
+}
diff --git a/ops/bs/bsa63.c b/ops/bs/bsa63.c
new file mode 100644
index 0000000..4e4672c
--- /dev/null
+++ b/ops/bs/bsa63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa63) {
+ NEXT_OP(sp, a >> 63, x, y, o);
+}
diff --git a/ops/bs/bsa7.c b/ops/bs/bsa7.c
new file mode 100644
index 0000000..70cbdc2
--- /dev/null
+++ b/ops/bs/bsa7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa7) {
+ NEXT_OP(sp, a >> 7, x, y, o);
+}
diff --git a/ops/bs/bsa8.c b/ops/bs/bsa8.c
new file mode 100644
index 0000000..370eceb
--- /dev/null
+++ b/ops/bs/bsa8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa8) {
+ NEXT_OP(sp, a >> 8, x, y, o);
+}
diff --git a/ops/bs/bsa9.c b/ops/bs/bsa9.c
new file mode 100644
index 0000000..1e802df
--- /dev/null
+++ b/ops/bs/bsa9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsa9) {
+ NEXT_OP(sp, a >> 9, x, y, o);
+}
diff --git a/ops/bs/bso0.c b/ops/bs/bso0.c
new file mode 100644
index 0000000..36495f1
--- /dev/null
+++ b/ops/bs/bso0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso0) {
+ NEXT_OP(sp, a, x, y, o >> 0);
+}
diff --git a/ops/bs/bso1.c b/ops/bs/bso1.c
new file mode 100644
index 0000000..cec6818
--- /dev/null
+++ b/ops/bs/bso1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso1) {
+ NEXT_OP(sp, a, x, y, o >> 1);
+}
diff --git a/ops/bs/bso10.c b/ops/bs/bso10.c
new file mode 100644
index 0000000..3995dc0
--- /dev/null
+++ b/ops/bs/bso10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso10) {
+ NEXT_OP(sp, a, x, y, o >> 10);
+}
diff --git a/ops/bs/bso11.c b/ops/bs/bso11.c
new file mode 100644
index 0000000..2d18759
--- /dev/null
+++ b/ops/bs/bso11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso11) {
+ NEXT_OP(sp, a, x, y, o >> 11);
+}
diff --git a/ops/bs/bso12.c b/ops/bs/bso12.c
new file mode 100644
index 0000000..9c94aa1
--- /dev/null
+++ b/ops/bs/bso12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso12) {
+ NEXT_OP(sp, a, x, y, o >> 12);
+}
diff --git a/ops/bs/bso13.c b/ops/bs/bso13.c
new file mode 100644
index 0000000..b23cbf9
--- /dev/null
+++ b/ops/bs/bso13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso13) {
+ NEXT_OP(sp, a, x, y, o >> 13);
+}
diff --git a/ops/bs/bso14.c b/ops/bs/bso14.c
new file mode 100644
index 0000000..8b141ab
--- /dev/null
+++ b/ops/bs/bso14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso14) {
+ NEXT_OP(sp, a, x, y, o >> 14);
+}
diff --git a/ops/bs/bso15.c b/ops/bs/bso15.c
new file mode 100644
index 0000000..10f5ac3
--- /dev/null
+++ b/ops/bs/bso15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso15) {
+ NEXT_OP(sp, a, x, y, o >> 15);
+}
diff --git a/ops/bs/bso16.c b/ops/bs/bso16.c
new file mode 100644
index 0000000..8f5f931
--- /dev/null
+++ b/ops/bs/bso16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso16) {
+ NEXT_OP(sp, a, x, y, o >> 16);
+}
diff --git a/ops/bs/bso17.c b/ops/bs/bso17.c
new file mode 100644
index 0000000..1e9ea79
--- /dev/null
+++ b/ops/bs/bso17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso17) {
+ NEXT_OP(sp, a, x, y, o >> 17);
+}
diff --git a/ops/bs/bso18.c b/ops/bs/bso18.c
new file mode 100644
index 0000000..b77ae7d
--- /dev/null
+++ b/ops/bs/bso18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso18) {
+ NEXT_OP(sp, a, x, y, o >> 18);
+}
diff --git a/ops/bs/bso19.c b/ops/bs/bso19.c
new file mode 100644
index 0000000..3ac9747
--- /dev/null
+++ b/ops/bs/bso19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso19) {
+ NEXT_OP(sp, a, x, y, o >> 19);
+}
diff --git a/ops/bs/bso2.c b/ops/bs/bso2.c
new file mode 100644
index 0000000..2879968
--- /dev/null
+++ b/ops/bs/bso2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso2) {
+ NEXT_OP(sp, a, x, y, o >> 2);
+}
diff --git a/ops/bs/bso20.c b/ops/bs/bso20.c
new file mode 100644
index 0000000..67e5a5a
--- /dev/null
+++ b/ops/bs/bso20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso20) {
+ NEXT_OP(sp, a, x, y, o >> 20);
+}
diff --git a/ops/bs/bso21.c b/ops/bs/bso21.c
new file mode 100644
index 0000000..523c48a
--- /dev/null
+++ b/ops/bs/bso21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso21) {
+ NEXT_OP(sp, a, x, y, o >> 21);
+}
diff --git a/ops/bs/bso22.c b/ops/bs/bso22.c
new file mode 100644
index 0000000..2a8fedf
--- /dev/null
+++ b/ops/bs/bso22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso22) {
+ NEXT_OP(sp, a, x, y, o >> 22);
+}
diff --git a/ops/bs/bso23.c b/ops/bs/bso23.c
new file mode 100644
index 0000000..bf3cccc
--- /dev/null
+++ b/ops/bs/bso23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso23) {
+ NEXT_OP(sp, a, x, y, o >> 23);
+}
diff --git a/ops/bs/bso24.c b/ops/bs/bso24.c
new file mode 100644
index 0000000..4af1a58
--- /dev/null
+++ b/ops/bs/bso24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso24) {
+ NEXT_OP(sp, a, x, y, o >> 24);
+}
diff --git a/ops/bs/bso25.c b/ops/bs/bso25.c
new file mode 100644
index 0000000..83ee764
--- /dev/null
+++ b/ops/bs/bso25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso25) {
+ NEXT_OP(sp, a, x, y, o >> 25);
+}
diff --git a/ops/bs/bso26.c b/ops/bs/bso26.c
new file mode 100644
index 0000000..ecf2053
--- /dev/null
+++ b/ops/bs/bso26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso26) {
+ NEXT_OP(sp, a, x, y, o >> 26);
+}
diff --git a/ops/bs/bso27.c b/ops/bs/bso27.c
new file mode 100644
index 0000000..c6d954c
--- /dev/null
+++ b/ops/bs/bso27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso27) {
+ NEXT_OP(sp, a, x, y, o >> 27);
+}
diff --git a/ops/bs/bso28.c b/ops/bs/bso28.c
new file mode 100644
index 0000000..7fbd52f
--- /dev/null
+++ b/ops/bs/bso28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso28) {
+ NEXT_OP(sp, a, x, y, o >> 28);
+}
diff --git a/ops/bs/bso29.c b/ops/bs/bso29.c
new file mode 100644
index 0000000..068f95c
--- /dev/null
+++ b/ops/bs/bso29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso29) {
+ NEXT_OP(sp, a, x, y, o >> 29);
+}
diff --git a/ops/bs/bso3.c b/ops/bs/bso3.c
new file mode 100644
index 0000000..ef0ae0e
--- /dev/null
+++ b/ops/bs/bso3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso3) {
+ NEXT_OP(sp, a, x, y, o >> 3);
+}
diff --git a/ops/bs/bso30.c b/ops/bs/bso30.c
new file mode 100644
index 0000000..d89472c
--- /dev/null
+++ b/ops/bs/bso30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso30) {
+ NEXT_OP(sp, a, x, y, o >> 30);
+}
diff --git a/ops/bs/bso31.c b/ops/bs/bso31.c
new file mode 100644
index 0000000..52649c2
--- /dev/null
+++ b/ops/bs/bso31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso31) {
+ NEXT_OP(sp, a, x, y, o >> 31);
+}
diff --git a/ops/bs/bso32.c b/ops/bs/bso32.c
new file mode 100644
index 0000000..e1afa09
--- /dev/null
+++ b/ops/bs/bso32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso32) {
+ NEXT_OP(sp, a, x, y, o >> 32);
+}
diff --git a/ops/bs/bso33.c b/ops/bs/bso33.c
new file mode 100644
index 0000000..7628da7
--- /dev/null
+++ b/ops/bs/bso33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso33) {
+ NEXT_OP(sp, a, x, y, o >> 33);
+}
diff --git a/ops/bs/bso34.c b/ops/bs/bso34.c
new file mode 100644
index 0000000..dfacc0e
--- /dev/null
+++ b/ops/bs/bso34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso34) {
+ NEXT_OP(sp, a, x, y, o >> 34);
+}
diff --git a/ops/bs/bso35.c b/ops/bs/bso35.c
new file mode 100644
index 0000000..f2ce28e
--- /dev/null
+++ b/ops/bs/bso35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso35) {
+ NEXT_OP(sp, a, x, y, o >> 35);
+}
diff --git a/ops/bs/bso36.c b/ops/bs/bso36.c
new file mode 100644
index 0000000..afc89fa
--- /dev/null
+++ b/ops/bs/bso36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso36) {
+ NEXT_OP(sp, a, x, y, o >> 36);
+}
diff --git a/ops/bs/bso37.c b/ops/bs/bso37.c
new file mode 100644
index 0000000..62189fe
--- /dev/null
+++ b/ops/bs/bso37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso37) {
+ NEXT_OP(sp, a, x, y, o >> 37);
+}
diff --git a/ops/bs/bso38.c b/ops/bs/bso38.c
new file mode 100644
index 0000000..455a186
--- /dev/null
+++ b/ops/bs/bso38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso38) {
+ NEXT_OP(sp, a, x, y, o >> 38);
+}
diff --git a/ops/bs/bso39.c b/ops/bs/bso39.c
new file mode 100644
index 0000000..b317fc7
--- /dev/null
+++ b/ops/bs/bso39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso39) {
+ NEXT_OP(sp, a, x, y, o >> 39);
+}
diff --git a/ops/bs/bso4.c b/ops/bs/bso4.c
new file mode 100644
index 0000000..5e1a492
--- /dev/null
+++ b/ops/bs/bso4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso4) {
+ NEXT_OP(sp, a, x, y, o >> 4);
+}
diff --git a/ops/bs/bso40.c b/ops/bs/bso40.c
new file mode 100644
index 0000000..c7b9a02
--- /dev/null
+++ b/ops/bs/bso40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso40) {
+ NEXT_OP(sp, a, x, y, o >> 40);
+}
diff --git a/ops/bs/bso41.c b/ops/bs/bso41.c
new file mode 100644
index 0000000..4e185e1
--- /dev/null
+++ b/ops/bs/bso41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso41) {
+ NEXT_OP(sp, a, x, y, o >> 41);
+}
diff --git a/ops/bs/bso42.c b/ops/bs/bso42.c
new file mode 100644
index 0000000..2c4252f
--- /dev/null
+++ b/ops/bs/bso42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso42) {
+ NEXT_OP(sp, a, x, y, o >> 42);
+}
diff --git a/ops/bs/bso43.c b/ops/bs/bso43.c
new file mode 100644
index 0000000..644ca41
--- /dev/null
+++ b/ops/bs/bso43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso43) {
+ NEXT_OP(sp, a, x, y, o >> 43);
+}
diff --git a/ops/bs/bso44.c b/ops/bs/bso44.c
new file mode 100644
index 0000000..ed786a8
--- /dev/null
+++ b/ops/bs/bso44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso44) {
+ NEXT_OP(sp, a, x, y, o >> 44);
+}
diff --git a/ops/bs/bso45.c b/ops/bs/bso45.c
new file mode 100644
index 0000000..2d4fcd2
--- /dev/null
+++ b/ops/bs/bso45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso45) {
+ NEXT_OP(sp, a, x, y, o >> 45);
+}
diff --git a/ops/bs/bso46.c b/ops/bs/bso46.c
new file mode 100644
index 0000000..60fbe0c
--- /dev/null
+++ b/ops/bs/bso46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso46) {
+ NEXT_OP(sp, a, x, y, o >> 46);
+}
diff --git a/ops/bs/bso47.c b/ops/bs/bso47.c
new file mode 100644
index 0000000..1582777
--- /dev/null
+++ b/ops/bs/bso47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso47) {
+ NEXT_OP(sp, a, x, y, o >> 47);
+}
diff --git a/ops/bs/bso48.c b/ops/bs/bso48.c
new file mode 100644
index 0000000..6c7a8cc
--- /dev/null
+++ b/ops/bs/bso48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso48) {
+ NEXT_OP(sp, a, x, y, o >> 48);
+}
diff --git a/ops/bs/bso49.c b/ops/bs/bso49.c
new file mode 100644
index 0000000..22f0cef
--- /dev/null
+++ b/ops/bs/bso49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso49) {
+ NEXT_OP(sp, a, x, y, o >> 49);
+}
diff --git a/ops/bs/bso5.c b/ops/bs/bso5.c
new file mode 100644
index 0000000..1300d8b
--- /dev/null
+++ b/ops/bs/bso5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso5) {
+ NEXT_OP(sp, a, x, y, o >> 5);
+}
diff --git a/ops/bs/bso50.c b/ops/bs/bso50.c
new file mode 100644
index 0000000..b858e27
--- /dev/null
+++ b/ops/bs/bso50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso50) {
+ NEXT_OP(sp, a, x, y, o >> 50);
+}
diff --git a/ops/bs/bso51.c b/ops/bs/bso51.c
new file mode 100644
index 0000000..3e47b0a
--- /dev/null
+++ b/ops/bs/bso51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso51) {
+ NEXT_OP(sp, a, x, y, o >> 51);
+}
diff --git a/ops/bs/bso52.c b/ops/bs/bso52.c
new file mode 100644
index 0000000..c3be92d
--- /dev/null
+++ b/ops/bs/bso52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso52) {
+ NEXT_OP(sp, a, x, y, o >> 52);
+}
diff --git a/ops/bs/bso53.c b/ops/bs/bso53.c
new file mode 100644
index 0000000..bab54b7
--- /dev/null
+++ b/ops/bs/bso53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso53) {
+ NEXT_OP(sp, a, x, y, o >> 53);
+}
diff --git a/ops/bs/bso54.c b/ops/bs/bso54.c
new file mode 100644
index 0000000..9a30a54
--- /dev/null
+++ b/ops/bs/bso54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso54) {
+ NEXT_OP(sp, a, x, y, o >> 54);
+}
diff --git a/ops/bs/bso55.c b/ops/bs/bso55.c
new file mode 100644
index 0000000..b1d10fc
--- /dev/null
+++ b/ops/bs/bso55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso55) {
+ NEXT_OP(sp, a, x, y, o >> 55);
+}
diff --git a/ops/bs/bso56.c b/ops/bs/bso56.c
new file mode 100644
index 0000000..d7a3346
--- /dev/null
+++ b/ops/bs/bso56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso56) {
+ NEXT_OP(sp, a, x, y, o >> 56);
+}
diff --git a/ops/bs/bso57.c b/ops/bs/bso57.c
new file mode 100644
index 0000000..6e577cf
--- /dev/null
+++ b/ops/bs/bso57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso57) {
+ NEXT_OP(sp, a, x, y, o >> 57);
+}
diff --git a/ops/bs/bso58.c b/ops/bs/bso58.c
new file mode 100644
index 0000000..395321c
--- /dev/null
+++ b/ops/bs/bso58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso58) {
+ NEXT_OP(sp, a, x, y, o >> 58);
+}
diff --git a/ops/bs/bso59.c b/ops/bs/bso59.c
new file mode 100644
index 0000000..da6a54d
--- /dev/null
+++ b/ops/bs/bso59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso59) {
+ NEXT_OP(sp, a, x, y, o >> 59);
+}
diff --git a/ops/bs/bso6.c b/ops/bs/bso6.c
new file mode 100644
index 0000000..6842a65
--- /dev/null
+++ b/ops/bs/bso6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso6) {
+ NEXT_OP(sp, a, x, y, o >> 6);
+}
diff --git a/ops/bs/bso60.c b/ops/bs/bso60.c
new file mode 100644
index 0000000..7cfd5b4
--- /dev/null
+++ b/ops/bs/bso60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso60) {
+ NEXT_OP(sp, a, x, y, o >> 60);
+}
diff --git a/ops/bs/bso61.c b/ops/bs/bso61.c
new file mode 100644
index 0000000..cc960b2
--- /dev/null
+++ b/ops/bs/bso61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso61) {
+ NEXT_OP(sp, a, x, y, o >> 61);
+}
diff --git a/ops/bs/bso62.c b/ops/bs/bso62.c
new file mode 100644
index 0000000..38c3ed0
--- /dev/null
+++ b/ops/bs/bso62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso62) {
+ NEXT_OP(sp, a, x, y, o >> 62);
+}
diff --git a/ops/bs/bso63.c b/ops/bs/bso63.c
new file mode 100644
index 0000000..1281e92
--- /dev/null
+++ b/ops/bs/bso63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso63) {
+ NEXT_OP(sp, a, x, y, o >> 63);
+}
diff --git a/ops/bs/bso7.c b/ops/bs/bso7.c
new file mode 100644
index 0000000..2cd96d9
--- /dev/null
+++ b/ops/bs/bso7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso7) {
+ NEXT_OP(sp, a, x, y, o >> 7);
+}
diff --git a/ops/bs/bso8.c b/ops/bs/bso8.c
new file mode 100644
index 0000000..68136bd
--- /dev/null
+++ b/ops/bs/bso8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso8) {
+ NEXT_OP(sp, a, x, y, o >> 8);
+}
diff --git a/ops/bs/bso9.c b/ops/bs/bso9.c
new file mode 100644
index 0000000..bda35cd
--- /dev/null
+++ b/ops/bs/bso9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bso9) {
+ NEXT_OP(sp, a, x, y, o >> 9);
+}
diff --git a/ops/bs/bsx0.c b/ops/bs/bsx0.c
new file mode 100644
index 0000000..5a306f2
--- /dev/null
+++ b/ops/bs/bsx0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx0) {
+ NEXT_OP(sp, a, x >> 0, y, o);
+}
diff --git a/ops/bs/bsx1.c b/ops/bs/bsx1.c
new file mode 100644
index 0000000..c5bd38f
--- /dev/null
+++ b/ops/bs/bsx1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx1) {
+ NEXT_OP(sp, a, x >> 1, y, o);
+}
diff --git a/ops/bs/bsx10.c b/ops/bs/bsx10.c
new file mode 100644
index 0000000..c3a3338
--- /dev/null
+++ b/ops/bs/bsx10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx10) {
+ NEXT_OP(sp, a, x >> 10, y, o);
+}
diff --git a/ops/bs/bsx11.c b/ops/bs/bsx11.c
new file mode 100644
index 0000000..909d493
--- /dev/null
+++ b/ops/bs/bsx11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx11) {
+ NEXT_OP(sp, a, x >> 11, y, o);
+}
diff --git a/ops/bs/bsx12.c b/ops/bs/bsx12.c
new file mode 100644
index 0000000..0d6878d
--- /dev/null
+++ b/ops/bs/bsx12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx12) {
+ NEXT_OP(sp, a, x >> 12, y, o);
+}
diff --git a/ops/bs/bsx13.c b/ops/bs/bsx13.c
new file mode 100644
index 0000000..9e2642a
--- /dev/null
+++ b/ops/bs/bsx13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx13) {
+ NEXT_OP(sp, a, x >> 13, y, o);
+}
diff --git a/ops/bs/bsx14.c b/ops/bs/bsx14.c
new file mode 100644
index 0000000..ae38210
--- /dev/null
+++ b/ops/bs/bsx14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx14) {
+ NEXT_OP(sp, a, x >> 14, y, o);
+}
diff --git a/ops/bs/bsx15.c b/ops/bs/bsx15.c
new file mode 100644
index 0000000..bc7fd71
--- /dev/null
+++ b/ops/bs/bsx15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx15) {
+ NEXT_OP(sp, a, x >> 15, y, o);
+}
diff --git a/ops/bs/bsx16.c b/ops/bs/bsx16.c
new file mode 100644
index 0000000..cb97d02
--- /dev/null
+++ b/ops/bs/bsx16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx16) {
+ NEXT_OP(sp, a, x >> 16, y, o);
+}
diff --git a/ops/bs/bsx17.c b/ops/bs/bsx17.c
new file mode 100644
index 0000000..0175cfe
--- /dev/null
+++ b/ops/bs/bsx17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx17) {
+ NEXT_OP(sp, a, x >> 17, y, o);
+}
diff --git a/ops/bs/bsx18.c b/ops/bs/bsx18.c
new file mode 100644
index 0000000..0149e26
--- /dev/null
+++ b/ops/bs/bsx18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx18) {
+ NEXT_OP(sp, a, x >> 18, y, o);
+}
diff --git a/ops/bs/bsx19.c b/ops/bs/bsx19.c
new file mode 100644
index 0000000..356bc44
--- /dev/null
+++ b/ops/bs/bsx19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx19) {
+ NEXT_OP(sp, a, x >> 19, y, o);
+}
diff --git a/ops/bs/bsx2.c b/ops/bs/bsx2.c
new file mode 100644
index 0000000..6cabc2b
--- /dev/null
+++ b/ops/bs/bsx2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx2) {
+ NEXT_OP(sp, a, x >> 2, y, o);
+}
diff --git a/ops/bs/bsx20.c b/ops/bs/bsx20.c
new file mode 100644
index 0000000..51dd53f
--- /dev/null
+++ b/ops/bs/bsx20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx20) {
+ NEXT_OP(sp, a, x >> 20, y, o);
+}
diff --git a/ops/bs/bsx21.c b/ops/bs/bsx21.c
new file mode 100644
index 0000000..dd4a603
--- /dev/null
+++ b/ops/bs/bsx21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx21) {
+ NEXT_OP(sp, a, x >> 21, y, o);
+}
diff --git a/ops/bs/bsx22.c b/ops/bs/bsx22.c
new file mode 100644
index 0000000..98f7db9
--- /dev/null
+++ b/ops/bs/bsx22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx22) {
+ NEXT_OP(sp, a, x >> 22, y, o);
+}
diff --git a/ops/bs/bsx23.c b/ops/bs/bsx23.c
new file mode 100644
index 0000000..9a92ece
--- /dev/null
+++ b/ops/bs/bsx23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx23) {
+ NEXT_OP(sp, a, x >> 23, y, o);
+}
diff --git a/ops/bs/bsx24.c b/ops/bs/bsx24.c
new file mode 100644
index 0000000..82a6ae6
--- /dev/null
+++ b/ops/bs/bsx24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx24) {
+ NEXT_OP(sp, a, x >> 24, y, o);
+}
diff --git a/ops/bs/bsx25.c b/ops/bs/bsx25.c
new file mode 100644
index 0000000..432feee
--- /dev/null
+++ b/ops/bs/bsx25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx25) {
+ NEXT_OP(sp, a, x >> 25, y, o);
+}
diff --git a/ops/bs/bsx26.c b/ops/bs/bsx26.c
new file mode 100644
index 0000000..4ad18fc
--- /dev/null
+++ b/ops/bs/bsx26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx26) {
+ NEXT_OP(sp, a, x >> 26, y, o);
+}
diff --git a/ops/bs/bsx27.c b/ops/bs/bsx27.c
new file mode 100644
index 0000000..eb0b13e
--- /dev/null
+++ b/ops/bs/bsx27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx27) {
+ NEXT_OP(sp, a, x >> 27, y, o);
+}
diff --git a/ops/bs/bsx28.c b/ops/bs/bsx28.c
new file mode 100644
index 0000000..c2ed41f
--- /dev/null
+++ b/ops/bs/bsx28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx28) {
+ NEXT_OP(sp, a, x >> 28, y, o);
+}
diff --git a/ops/bs/bsx29.c b/ops/bs/bsx29.c
new file mode 100644
index 0000000..7f64bec
--- /dev/null
+++ b/ops/bs/bsx29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx29) {
+ NEXT_OP(sp, a, x >> 29, y, o);
+}
diff --git a/ops/bs/bsx3.c b/ops/bs/bsx3.c
new file mode 100644
index 0000000..b71b8e0
--- /dev/null
+++ b/ops/bs/bsx3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx3) {
+ NEXT_OP(sp, a, x >> 3, y, o);
+}
diff --git a/ops/bs/bsx30.c b/ops/bs/bsx30.c
new file mode 100644
index 0000000..52ed5fb
--- /dev/null
+++ b/ops/bs/bsx30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx30) {
+ NEXT_OP(sp, a, x >> 30, y, o);
+}
diff --git a/ops/bs/bsx31.c b/ops/bs/bsx31.c
new file mode 100644
index 0000000..235575c
--- /dev/null
+++ b/ops/bs/bsx31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx31) {
+ NEXT_OP(sp, a, x >> 31, y, o);
+}
diff --git a/ops/bs/bsx32.c b/ops/bs/bsx32.c
new file mode 100644
index 0000000..e0ea0d7
--- /dev/null
+++ b/ops/bs/bsx32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx32) {
+ NEXT_OP(sp, a, x >> 32, y, o);
+}
diff --git a/ops/bs/bsx33.c b/ops/bs/bsx33.c
new file mode 100644
index 0000000..45aec9e
--- /dev/null
+++ b/ops/bs/bsx33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx33) {
+ NEXT_OP(sp, a, x >> 33, y, o);
+}
diff --git a/ops/bs/bsx34.c b/ops/bs/bsx34.c
new file mode 100644
index 0000000..c060ffd
--- /dev/null
+++ b/ops/bs/bsx34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx34) {
+ NEXT_OP(sp, a, x >> 34, y, o);
+}
diff --git a/ops/bs/bsx35.c b/ops/bs/bsx35.c
new file mode 100644
index 0000000..e11fced
--- /dev/null
+++ b/ops/bs/bsx35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx35) {
+ NEXT_OP(sp, a, x >> 35, y, o);
+}
diff --git a/ops/bs/bsx36.c b/ops/bs/bsx36.c
new file mode 100644
index 0000000..0b8d3e3
--- /dev/null
+++ b/ops/bs/bsx36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx36) {
+ NEXT_OP(sp, a, x >> 36, y, o);
+}
diff --git a/ops/bs/bsx37.c b/ops/bs/bsx37.c
new file mode 100644
index 0000000..0f5bd1e
--- /dev/null
+++ b/ops/bs/bsx37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx37) {
+ NEXT_OP(sp, a, x >> 37, y, o);
+}
diff --git a/ops/bs/bsx38.c b/ops/bs/bsx38.c
new file mode 100644
index 0000000..8b9e4f0
--- /dev/null
+++ b/ops/bs/bsx38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx38) {
+ NEXT_OP(sp, a, x >> 38, y, o);
+}
diff --git a/ops/bs/bsx39.c b/ops/bs/bsx39.c
new file mode 100644
index 0000000..1af974c
--- /dev/null
+++ b/ops/bs/bsx39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx39) {
+ NEXT_OP(sp, a, x >> 39, y, o);
+}
diff --git a/ops/bs/bsx4.c b/ops/bs/bsx4.c
new file mode 100644
index 0000000..ff101a5
--- /dev/null
+++ b/ops/bs/bsx4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx4) {
+ NEXT_OP(sp, a, x >> 4, y, o);
+}
diff --git a/ops/bs/bsx40.c b/ops/bs/bsx40.c
new file mode 100644
index 0000000..118658a
--- /dev/null
+++ b/ops/bs/bsx40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx40) {
+ NEXT_OP(sp, a, x >> 40, y, o);
+}
diff --git a/ops/bs/bsx41.c b/ops/bs/bsx41.c
new file mode 100644
index 0000000..d190fa4
--- /dev/null
+++ b/ops/bs/bsx41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx41) {
+ NEXT_OP(sp, a, x >> 41, y, o);
+}
diff --git a/ops/bs/bsx42.c b/ops/bs/bsx42.c
new file mode 100644
index 0000000..5ca38cf
--- /dev/null
+++ b/ops/bs/bsx42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx42) {
+ NEXT_OP(sp, a, x >> 42, y, o);
+}
diff --git a/ops/bs/bsx43.c b/ops/bs/bsx43.c
new file mode 100644
index 0000000..2e774fc
--- /dev/null
+++ b/ops/bs/bsx43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx43) {
+ NEXT_OP(sp, a, x >> 43, y, o);
+}
diff --git a/ops/bs/bsx44.c b/ops/bs/bsx44.c
new file mode 100644
index 0000000..c6b794e
--- /dev/null
+++ b/ops/bs/bsx44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx44) {
+ NEXT_OP(sp, a, x >> 44, y, o);
+}
diff --git a/ops/bs/bsx45.c b/ops/bs/bsx45.c
new file mode 100644
index 0000000..263ee51
--- /dev/null
+++ b/ops/bs/bsx45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx45) {
+ NEXT_OP(sp, a, x >> 45, y, o);
+}
diff --git a/ops/bs/bsx46.c b/ops/bs/bsx46.c
new file mode 100644
index 0000000..9c00810
--- /dev/null
+++ b/ops/bs/bsx46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx46) {
+ NEXT_OP(sp, a, x >> 46, y, o);
+}
diff --git a/ops/bs/bsx47.c b/ops/bs/bsx47.c
new file mode 100644
index 0000000..a86e5c4
--- /dev/null
+++ b/ops/bs/bsx47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx47) {
+ NEXT_OP(sp, a, x >> 47, y, o);
+}
diff --git a/ops/bs/bsx48.c b/ops/bs/bsx48.c
new file mode 100644
index 0000000..e4ba410
--- /dev/null
+++ b/ops/bs/bsx48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx48) {
+ NEXT_OP(sp, a, x >> 48, y, o);
+}
diff --git a/ops/bs/bsx49.c b/ops/bs/bsx49.c
new file mode 100644
index 0000000..0d47446
--- /dev/null
+++ b/ops/bs/bsx49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx49) {
+ NEXT_OP(sp, a, x >> 49, y, o);
+}
diff --git a/ops/bs/bsx5.c b/ops/bs/bsx5.c
new file mode 100644
index 0000000..421359b
--- /dev/null
+++ b/ops/bs/bsx5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx5) {
+ NEXT_OP(sp, a, x >> 5, y, o);
+}
diff --git a/ops/bs/bsx50.c b/ops/bs/bsx50.c
new file mode 100644
index 0000000..769711d
--- /dev/null
+++ b/ops/bs/bsx50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx50) {
+ NEXT_OP(sp, a, x >> 50, y, o);
+}
diff --git a/ops/bs/bsx51.c b/ops/bs/bsx51.c
new file mode 100644
index 0000000..1020f89
--- /dev/null
+++ b/ops/bs/bsx51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx51) {
+ NEXT_OP(sp, a, x >> 51, y, o);
+}
diff --git a/ops/bs/bsx52.c b/ops/bs/bsx52.c
new file mode 100644
index 0000000..9f7c716
--- /dev/null
+++ b/ops/bs/bsx52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx52) {
+ NEXT_OP(sp, a, x >> 52, y, o);
+}
diff --git a/ops/bs/bsx53.c b/ops/bs/bsx53.c
new file mode 100644
index 0000000..876f911
--- /dev/null
+++ b/ops/bs/bsx53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx53) {
+ NEXT_OP(sp, a, x >> 53, y, o);
+}
diff --git a/ops/bs/bsx54.c b/ops/bs/bsx54.c
new file mode 100644
index 0000000..e1a0f17
--- /dev/null
+++ b/ops/bs/bsx54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx54) {
+ NEXT_OP(sp, a, x >> 54, y, o);
+}
diff --git a/ops/bs/bsx55.c b/ops/bs/bsx55.c
new file mode 100644
index 0000000..69e4436
--- /dev/null
+++ b/ops/bs/bsx55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx55) {
+ NEXT_OP(sp, a, x >> 55, y, o);
+}
diff --git a/ops/bs/bsx56.c b/ops/bs/bsx56.c
new file mode 100644
index 0000000..b26c594
--- /dev/null
+++ b/ops/bs/bsx56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx56) {
+ NEXT_OP(sp, a, x >> 56, y, o);
+}
diff --git a/ops/bs/bsx57.c b/ops/bs/bsx57.c
new file mode 100644
index 0000000..67fd9de
--- /dev/null
+++ b/ops/bs/bsx57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx57) {
+ NEXT_OP(sp, a, x >> 57, y, o);
+}
diff --git a/ops/bs/bsx58.c b/ops/bs/bsx58.c
new file mode 100644
index 0000000..06c2538
--- /dev/null
+++ b/ops/bs/bsx58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx58) {
+ NEXT_OP(sp, a, x >> 58, y, o);
+}
diff --git a/ops/bs/bsx59.c b/ops/bs/bsx59.c
new file mode 100644
index 0000000..c5399bf
--- /dev/null
+++ b/ops/bs/bsx59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx59) {
+ NEXT_OP(sp, a, x >> 59, y, o);
+}
diff --git a/ops/bs/bsx6.c b/ops/bs/bsx6.c
new file mode 100644
index 0000000..f3ea76c
--- /dev/null
+++ b/ops/bs/bsx6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx6) {
+ NEXT_OP(sp, a, x >> 6, y, o);
+}
diff --git a/ops/bs/bsx60.c b/ops/bs/bsx60.c
new file mode 100644
index 0000000..478f0ab
--- /dev/null
+++ b/ops/bs/bsx60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx60) {
+ NEXT_OP(sp, a, x >> 60, y, o);
+}
diff --git a/ops/bs/bsx61.c b/ops/bs/bsx61.c
new file mode 100644
index 0000000..a24fba4
--- /dev/null
+++ b/ops/bs/bsx61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx61) {
+ NEXT_OP(sp, a, x >> 61, y, o);
+}
diff --git a/ops/bs/bsx62.c b/ops/bs/bsx62.c
new file mode 100644
index 0000000..4e63c86
--- /dev/null
+++ b/ops/bs/bsx62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx62) {
+ NEXT_OP(sp, a, x >> 62, y, o);
+}
diff --git a/ops/bs/bsx63.c b/ops/bs/bsx63.c
new file mode 100644
index 0000000..eecdae2
--- /dev/null
+++ b/ops/bs/bsx63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx63) {
+ NEXT_OP(sp, a, x >> 63, y, o);
+}
diff --git a/ops/bs/bsx7.c b/ops/bs/bsx7.c
new file mode 100644
index 0000000..a3224e6
--- /dev/null
+++ b/ops/bs/bsx7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx7) {
+ NEXT_OP(sp, a, x >> 7, y, o);
+}
diff --git a/ops/bs/bsx8.c b/ops/bs/bsx8.c
new file mode 100644
index 0000000..fd60413
--- /dev/null
+++ b/ops/bs/bsx8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx8) {
+ NEXT_OP(sp, a, x >> 8, y, o);
+}
diff --git a/ops/bs/bsx9.c b/ops/bs/bsx9.c
new file mode 100644
index 0000000..a2cd166
--- /dev/null
+++ b/ops/bs/bsx9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsx9) {
+ NEXT_OP(sp, a, x >> 9, y, o);
+}
diff --git a/ops/bs/bsy0.c b/ops/bs/bsy0.c
new file mode 100644
index 0000000..e55b08b
--- /dev/null
+++ b/ops/bs/bsy0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy0) {
+ NEXT_OP(sp, a, x, y >> 0, o);
+}
diff --git a/ops/bs/bsy1.c b/ops/bs/bsy1.c
new file mode 100644
index 0000000..e7b2588
--- /dev/null
+++ b/ops/bs/bsy1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy1) {
+ NEXT_OP(sp, a, x, y >> 1, o);
+}
diff --git a/ops/bs/bsy10.c b/ops/bs/bsy10.c
new file mode 100644
index 0000000..5bd54b1
--- /dev/null
+++ b/ops/bs/bsy10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy10) {
+ NEXT_OP(sp, a, x, y >> 10, o);
+}
diff --git a/ops/bs/bsy11.c b/ops/bs/bsy11.c
new file mode 100644
index 0000000..d7783f9
--- /dev/null
+++ b/ops/bs/bsy11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy11) {
+ NEXT_OP(sp, a, x, y >> 11, o);
+}
diff --git a/ops/bs/bsy12.c b/ops/bs/bsy12.c
new file mode 100644
index 0000000..698b52a
--- /dev/null
+++ b/ops/bs/bsy12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy12) {
+ NEXT_OP(sp, a, x, y >> 12, o);
+}
diff --git a/ops/bs/bsy13.c b/ops/bs/bsy13.c
new file mode 100644
index 0000000..f11212c
--- /dev/null
+++ b/ops/bs/bsy13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy13) {
+ NEXT_OP(sp, a, x, y >> 13, o);
+}
diff --git a/ops/bs/bsy14.c b/ops/bs/bsy14.c
new file mode 100644
index 0000000..5d7aa32
--- /dev/null
+++ b/ops/bs/bsy14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy14) {
+ NEXT_OP(sp, a, x, y >> 14, o);
+}
diff --git a/ops/bs/bsy15.c b/ops/bs/bsy15.c
new file mode 100644
index 0000000..2002e7c
--- /dev/null
+++ b/ops/bs/bsy15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy15) {
+ NEXT_OP(sp, a, x, y >> 15, o);
+}
diff --git a/ops/bs/bsy16.c b/ops/bs/bsy16.c
new file mode 100644
index 0000000..3e8f3d9
--- /dev/null
+++ b/ops/bs/bsy16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy16) {
+ NEXT_OP(sp, a, x, y >> 16, o);
+}
diff --git a/ops/bs/bsy17.c b/ops/bs/bsy17.c
new file mode 100644
index 0000000..678bb10
--- /dev/null
+++ b/ops/bs/bsy17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy17) {
+ NEXT_OP(sp, a, x, y >> 17, o);
+}
diff --git a/ops/bs/bsy18.c b/ops/bs/bsy18.c
new file mode 100644
index 0000000..a8c902a
--- /dev/null
+++ b/ops/bs/bsy18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy18) {
+ NEXT_OP(sp, a, x, y >> 18, o);
+}
diff --git a/ops/bs/bsy19.c b/ops/bs/bsy19.c
new file mode 100644
index 0000000..73a1f2d
--- /dev/null
+++ b/ops/bs/bsy19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy19) {
+ NEXT_OP(sp, a, x, y >> 19, o);
+}
diff --git a/ops/bs/bsy2.c b/ops/bs/bsy2.c
new file mode 100644
index 0000000..7e9d17f
--- /dev/null
+++ b/ops/bs/bsy2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy2) {
+ NEXT_OP(sp, a, x, y >> 2, o);
+}
diff --git a/ops/bs/bsy20.c b/ops/bs/bsy20.c
new file mode 100644
index 0000000..81eb0d7
--- /dev/null
+++ b/ops/bs/bsy20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy20) {
+ NEXT_OP(sp, a, x, y >> 20, o);
+}
diff --git a/ops/bs/bsy21.c b/ops/bs/bsy21.c
new file mode 100644
index 0000000..59f6b4b
--- /dev/null
+++ b/ops/bs/bsy21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy21) {
+ NEXT_OP(sp, a, x, y >> 21, o);
+}
diff --git a/ops/bs/bsy22.c b/ops/bs/bsy22.c
new file mode 100644
index 0000000..d6c1578
--- /dev/null
+++ b/ops/bs/bsy22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy22) {
+ NEXT_OP(sp, a, x, y >> 22, o);
+}
diff --git a/ops/bs/bsy23.c b/ops/bs/bsy23.c
new file mode 100644
index 0000000..39a8cb3
--- /dev/null
+++ b/ops/bs/bsy23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy23) {
+ NEXT_OP(sp, a, x, y >> 23, o);
+}
diff --git a/ops/bs/bsy24.c b/ops/bs/bsy24.c
new file mode 100644
index 0000000..7228748
--- /dev/null
+++ b/ops/bs/bsy24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy24) {
+ NEXT_OP(sp, a, x, y >> 24, o);
+}
diff --git a/ops/bs/bsy25.c b/ops/bs/bsy25.c
new file mode 100644
index 0000000..40cc1c8
--- /dev/null
+++ b/ops/bs/bsy25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy25) {
+ NEXT_OP(sp, a, x, y >> 25, o);
+}
diff --git a/ops/bs/bsy26.c b/ops/bs/bsy26.c
new file mode 100644
index 0000000..9e078df
--- /dev/null
+++ b/ops/bs/bsy26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy26) {
+ NEXT_OP(sp, a, x, y >> 26, o);
+}
diff --git a/ops/bs/bsy27.c b/ops/bs/bsy27.c
new file mode 100644
index 0000000..6963dbd
--- /dev/null
+++ b/ops/bs/bsy27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy27) {
+ NEXT_OP(sp, a, x, y >> 27, o);
+}
diff --git a/ops/bs/bsy28.c b/ops/bs/bsy28.c
new file mode 100644
index 0000000..f70c713
--- /dev/null
+++ b/ops/bs/bsy28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy28) {
+ NEXT_OP(sp, a, x, y >> 28, o);
+}
diff --git a/ops/bs/bsy29.c b/ops/bs/bsy29.c
new file mode 100644
index 0000000..2647bc9
--- /dev/null
+++ b/ops/bs/bsy29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy29) {
+ NEXT_OP(sp, a, x, y >> 29, o);
+}
diff --git a/ops/bs/bsy3.c b/ops/bs/bsy3.c
new file mode 100644
index 0000000..96a5298
--- /dev/null
+++ b/ops/bs/bsy3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy3) {
+ NEXT_OP(sp, a, x, y >> 3, o);
+}
diff --git a/ops/bs/bsy30.c b/ops/bs/bsy30.c
new file mode 100644
index 0000000..02c3b5e
--- /dev/null
+++ b/ops/bs/bsy30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy30) {
+ NEXT_OP(sp, a, x, y >> 30, o);
+}
diff --git a/ops/bs/bsy31.c b/ops/bs/bsy31.c
new file mode 100644
index 0000000..714d344
--- /dev/null
+++ b/ops/bs/bsy31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy31) {
+ NEXT_OP(sp, a, x, y >> 31, o);
+}
diff --git a/ops/bs/bsy32.c b/ops/bs/bsy32.c
new file mode 100644
index 0000000..03eb2f7
--- /dev/null
+++ b/ops/bs/bsy32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy32) {
+ NEXT_OP(sp, a, x, y >> 32, o);
+}
diff --git a/ops/bs/bsy33.c b/ops/bs/bsy33.c
new file mode 100644
index 0000000..fa4b5bd
--- /dev/null
+++ b/ops/bs/bsy33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy33) {
+ NEXT_OP(sp, a, x, y >> 33, o);
+}
diff --git a/ops/bs/bsy34.c b/ops/bs/bsy34.c
new file mode 100644
index 0000000..7ce911b
--- /dev/null
+++ b/ops/bs/bsy34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy34) {
+ NEXT_OP(sp, a, x, y >> 34, o);
+}
diff --git a/ops/bs/bsy35.c b/ops/bs/bsy35.c
new file mode 100644
index 0000000..bf90a36
--- /dev/null
+++ b/ops/bs/bsy35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy35) {
+ NEXT_OP(sp, a, x, y >> 35, o);
+}
diff --git a/ops/bs/bsy36.c b/ops/bs/bsy36.c
new file mode 100644
index 0000000..fb63209
--- /dev/null
+++ b/ops/bs/bsy36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy36) {
+ NEXT_OP(sp, a, x, y >> 36, o);
+}
diff --git a/ops/bs/bsy37.c b/ops/bs/bsy37.c
new file mode 100644
index 0000000..6ecf3d0
--- /dev/null
+++ b/ops/bs/bsy37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy37) {
+ NEXT_OP(sp, a, x, y >> 37, o);
+}
diff --git a/ops/bs/bsy38.c b/ops/bs/bsy38.c
new file mode 100644
index 0000000..eb8b565
--- /dev/null
+++ b/ops/bs/bsy38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy38) {
+ NEXT_OP(sp, a, x, y >> 38, o);
+}
diff --git a/ops/bs/bsy39.c b/ops/bs/bsy39.c
new file mode 100644
index 0000000..6e1ae95
--- /dev/null
+++ b/ops/bs/bsy39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy39) {
+ NEXT_OP(sp, a, x, y >> 39, o);
+}
diff --git a/ops/bs/bsy4.c b/ops/bs/bsy4.c
new file mode 100644
index 0000000..a7999e6
--- /dev/null
+++ b/ops/bs/bsy4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy4) {
+ NEXT_OP(sp, a, x, y >> 4, o);
+}
diff --git a/ops/bs/bsy40.c b/ops/bs/bsy40.c
new file mode 100644
index 0000000..e9490e4
--- /dev/null
+++ b/ops/bs/bsy40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy40) {
+ NEXT_OP(sp, a, x, y >> 40, o);
+}
diff --git a/ops/bs/bsy41.c b/ops/bs/bsy41.c
new file mode 100644
index 0000000..23db0b8
--- /dev/null
+++ b/ops/bs/bsy41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy41) {
+ NEXT_OP(sp, a, x, y >> 41, o);
+}
diff --git a/ops/bs/bsy42.c b/ops/bs/bsy42.c
new file mode 100644
index 0000000..006a107
--- /dev/null
+++ b/ops/bs/bsy42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy42) {
+ NEXT_OP(sp, a, x, y >> 42, o);
+}
diff --git a/ops/bs/bsy43.c b/ops/bs/bsy43.c
new file mode 100644
index 0000000..895c4b2
--- /dev/null
+++ b/ops/bs/bsy43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy43) {
+ NEXT_OP(sp, a, x, y >> 43, o);
+}
diff --git a/ops/bs/bsy44.c b/ops/bs/bsy44.c
new file mode 100644
index 0000000..476907b
--- /dev/null
+++ b/ops/bs/bsy44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy44) {
+ NEXT_OP(sp, a, x, y >> 44, o);
+}
diff --git a/ops/bs/bsy45.c b/ops/bs/bsy45.c
new file mode 100644
index 0000000..0f86b31
--- /dev/null
+++ b/ops/bs/bsy45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy45) {
+ NEXT_OP(sp, a, x, y >> 45, o);
+}
diff --git a/ops/bs/bsy46.c b/ops/bs/bsy46.c
new file mode 100644
index 0000000..a50caaa
--- /dev/null
+++ b/ops/bs/bsy46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy46) {
+ NEXT_OP(sp, a, x, y >> 46, o);
+}
diff --git a/ops/bs/bsy47.c b/ops/bs/bsy47.c
new file mode 100644
index 0000000..f41abec
--- /dev/null
+++ b/ops/bs/bsy47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy47) {
+ NEXT_OP(sp, a, x, y >> 47, o);
+}
diff --git a/ops/bs/bsy48.c b/ops/bs/bsy48.c
new file mode 100644
index 0000000..30319e1
--- /dev/null
+++ b/ops/bs/bsy48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy48) {
+ NEXT_OP(sp, a, x, y >> 48, o);
+}
diff --git a/ops/bs/bsy49.c b/ops/bs/bsy49.c
new file mode 100644
index 0000000..7f088b8
--- /dev/null
+++ b/ops/bs/bsy49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy49) {
+ NEXT_OP(sp, a, x, y >> 49, o);
+}
diff --git a/ops/bs/bsy5.c b/ops/bs/bsy5.c
new file mode 100644
index 0000000..c747497
--- /dev/null
+++ b/ops/bs/bsy5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy5) {
+ NEXT_OP(sp, a, x, y >> 5, o);
+}
diff --git a/ops/bs/bsy50.c b/ops/bs/bsy50.c
new file mode 100644
index 0000000..231b22f
--- /dev/null
+++ b/ops/bs/bsy50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy50) {
+ NEXT_OP(sp, a, x, y >> 50, o);
+}
diff --git a/ops/bs/bsy51.c b/ops/bs/bsy51.c
new file mode 100644
index 0000000..cc5d6bf
--- /dev/null
+++ b/ops/bs/bsy51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy51) {
+ NEXT_OP(sp, a, x, y >> 51, o);
+}
diff --git a/ops/bs/bsy52.c b/ops/bs/bsy52.c
new file mode 100644
index 0000000..fab67d8
--- /dev/null
+++ b/ops/bs/bsy52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy52) {
+ NEXT_OP(sp, a, x, y >> 52, o);
+}
diff --git a/ops/bs/bsy53.c b/ops/bs/bsy53.c
new file mode 100644
index 0000000..73df366
--- /dev/null
+++ b/ops/bs/bsy53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy53) {
+ NEXT_OP(sp, a, x, y >> 53, o);
+}
diff --git a/ops/bs/bsy54.c b/ops/bs/bsy54.c
new file mode 100644
index 0000000..c04a860
--- /dev/null
+++ b/ops/bs/bsy54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy54) {
+ NEXT_OP(sp, a, x, y >> 54, o);
+}
diff --git a/ops/bs/bsy55.c b/ops/bs/bsy55.c
new file mode 100644
index 0000000..37f04f1
--- /dev/null
+++ b/ops/bs/bsy55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy55) {
+ NEXT_OP(sp, a, x, y >> 55, o);
+}
diff --git a/ops/bs/bsy56.c b/ops/bs/bsy56.c
new file mode 100644
index 0000000..e462e38
--- /dev/null
+++ b/ops/bs/bsy56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy56) {
+ NEXT_OP(sp, a, x, y >> 56, o);
+}
diff --git a/ops/bs/bsy57.c b/ops/bs/bsy57.c
new file mode 100644
index 0000000..a8d0988
--- /dev/null
+++ b/ops/bs/bsy57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy57) {
+ NEXT_OP(sp, a, x, y >> 57, o);
+}
diff --git a/ops/bs/bsy58.c b/ops/bs/bsy58.c
new file mode 100644
index 0000000..cdbe55e
--- /dev/null
+++ b/ops/bs/bsy58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy58) {
+ NEXT_OP(sp, a, x, y >> 58, o);
+}
diff --git a/ops/bs/bsy59.c b/ops/bs/bsy59.c
new file mode 100644
index 0000000..ff06279
--- /dev/null
+++ b/ops/bs/bsy59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy59) {
+ NEXT_OP(sp, a, x, y >> 59, o);
+}
diff --git a/ops/bs/bsy6.c b/ops/bs/bsy6.c
new file mode 100644
index 0000000..64a8796
--- /dev/null
+++ b/ops/bs/bsy6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy6) {
+ NEXT_OP(sp, a, x, y >> 6, o);
+}
diff --git a/ops/bs/bsy60.c b/ops/bs/bsy60.c
new file mode 100644
index 0000000..59538ce
--- /dev/null
+++ b/ops/bs/bsy60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy60) {
+ NEXT_OP(sp, a, x, y >> 60, o);
+}
diff --git a/ops/bs/bsy61.c b/ops/bs/bsy61.c
new file mode 100644
index 0000000..f37bbc4
--- /dev/null
+++ b/ops/bs/bsy61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy61) {
+ NEXT_OP(sp, a, x, y >> 61, o);
+}
diff --git a/ops/bs/bsy62.c b/ops/bs/bsy62.c
new file mode 100644
index 0000000..7c319ff
--- /dev/null
+++ b/ops/bs/bsy62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy62) {
+ NEXT_OP(sp, a, x, y >> 62, o);
+}
diff --git a/ops/bs/bsy63.c b/ops/bs/bsy63.c
new file mode 100644
index 0000000..7651291
--- /dev/null
+++ b/ops/bs/bsy63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy63) {
+ NEXT_OP(sp, a, x, y >> 63, o);
+}
diff --git a/ops/bs/bsy7.c b/ops/bs/bsy7.c
new file mode 100644
index 0000000..0010b4c
--- /dev/null
+++ b/ops/bs/bsy7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy7) {
+ NEXT_OP(sp, a, x, y >> 7, o);
+}
diff --git a/ops/bs/bsy8.c b/ops/bs/bsy8.c
new file mode 100644
index 0000000..c3726dd
--- /dev/null
+++ b/ops/bs/bsy8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy8) {
+ NEXT_OP(sp, a, x, y >> 8, o);
+}
diff --git a/ops/bs/bsy9.c b/ops/bs/bsy9.c
new file mode 100644
index 0000000..5d1d28c
--- /dev/null
+++ b/ops/bs/bsy9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(bsy9) {
+ NEXT_OP(sp, a, x, y >> 9, o);
+}
diff --git a/ops/bs/gen_bs.sh b/ops/bs/gen_bs.sh
new file mode 100755
index 0000000..4429d20
--- /dev/null
+++ b/ops/bs/gen_bs.sh
@@ -0,0 +1,39 @@
+# barrel shift right register o
+for i in $(seq 0 63); do
+ opname=bso"$i"
+ filename="$opname".c
+ echo -e "#include \"../common.h\"\n" \
+ "DEFINE_OP($opname) {" \
+ "NEXT_OP(sp, a, x, y, o >> $i);" \
+ "}" > "$filename"
+done
+
+# barrel shift right register x
+for i in $(seq 0 63); do
+ opname=bsx"$i"
+ filename="$opname".c
+ echo -e "#include \"../common.h\"\n" \
+ "DEFINE_OP($opname) {" \
+ "NEXT_OP(sp, a, x >> $i, y, o);" \
+ "}" > "$filename"
+done
+
+# shift right register y
+for i in $(seq 0 63); do
+ opname=bsy"$i"
+ filename="$opname".c
+ echo -e "#include \"../common.h\"\n" \
+ "DEFINE_OP($opname) {" \
+ "NEXT_OP(sp, a, x, y >> $i, o);" \
+ "}" > "$filename"
+done
+
+# shift right register a
+for i in $(seq 0 63); do
+ opname=bsa"$i"
+ filename="$opname".c
+ echo -e "#include \"../common.h\"\n" \
+ "DEFINE_OP($opname) {" \
+ "NEXT_OP(sp, a >> $i, x, y, o);" \
+ "}" > "$filename"
+done
diff --git a/ops/bs/source.mk b/ops/bs/source.mk
new file mode 100644
index 0000000..54ca45a
--- /dev/null
+++ b/ops/bs/source.mk
@@ -0,0 +1,2 @@
+OP_SRC != echo ops/bs/*.c
+OP_SOURCES += $(OP_SRC)
diff --git a/ops/common.h b/ops/common.h
new file mode 100644
index 0000000..b447aab
--- /dev/null
+++ b/ops/common.h
@@ -0,0 +1,24 @@
+#ifndef OPS_COMMON_H
+#define OPS_COMMON_H
+
+typedef unsigned long reg_t;
+typedef signed long sreg_t;
+
+typedef void (*op_call)(reg_t *sp, reg_t a, reg_t x, reg_t y, reg_t o);
+
+#define NEXT_OP(sp, a, x, y, o) \
+ ((op_call)(&&_next_op))((sp), (a), (x), (y), (o)); _next_op: (void)1;
+
+#define JUMP(target, sp, a, x, y, o) \
+ ((op_call)(target))((sp), (a), (x), (y), (o));
+
+#define BRANCH(target, cond, sp, a, x, y, o) \
+ ((op_call)((cond) ? (void *)(target) : (void *)&&_next_op)) \
+ ((sp), (a), (x), (y), (o)); \
+_next_op: (void)1;
+
+#define DEFINE_OP(name) void name(reg_t *sp, reg_t a, reg_t x, reg_t y, reg_t o)
+
+#define UNUSED(x) (void)(x);
+
+#endif /* OPS_COMMON_H */
diff --git a/ops/end.c b/ops/end.c
new file mode 100644
index 0000000..dde88e5
--- /dev/null
+++ b/ops/end.c
@@ -0,0 +1,11 @@
+#include "common.h"
+
+DEFINE_OP(end)
+{
+ UNUSED(sp);
+ UNUSED(a);
+ UNUSED(x);
+ UNUSED(y);
+ UNUSED(o);
+ return;
+}
diff --git a/ops/incy.c b/ops/incy.c
new file mode 100644
index 0000000..e32646f
--- /dev/null
+++ b/ops/incy.c
@@ -0,0 +1,6 @@
+#include "common.h"
+
+DEFINE_OP(incy)
+{
+ NEXT_OP(sp, a, x, y + 1, o);
+}
diff --git a/ops/j.c b/ops/j.c
new file mode 100644
index 0000000..b30129d
--- /dev/null
+++ b/ops/j.c
@@ -0,0 +1,5 @@
+#include "common.h"
+
+DEFINE_OP(j) {
+ JUMP(o, sp, a, x, y, o);
+}
diff --git a/ops/li/gen_li.sh b/ops/li/gen_li.sh
new file mode 100755
index 0000000..a844de4
--- /dev/null
+++ b/ops/li/gen_li.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+for i in $(seq 0 255); do
+ filename=li"$i".c
+ echo "#include \"../common.h\"\n" \
+ "DEFINE_OP(li$i) {" \
+ "UNUSED(o);" \
+ "NEXT_OP(sp, a, x, y, $i);" \
+ "}" > "$filename"
+done
diff --git a/ops/li/li0.c b/ops/li/li0.c
new file mode 100644
index 0000000..dd89d45
--- /dev/null
+++ b/ops/li/li0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li0) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 0);
+}
diff --git a/ops/li/li1.c b/ops/li/li1.c
new file mode 100644
index 0000000..c6e649f
--- /dev/null
+++ b/ops/li/li1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li1) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 1);
+}
diff --git a/ops/li/li10.c b/ops/li/li10.c
new file mode 100644
index 0000000..73dd0ff
--- /dev/null
+++ b/ops/li/li10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li10) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 10);
+}
diff --git a/ops/li/li100.c b/ops/li/li100.c
new file mode 100644
index 0000000..5a84188
--- /dev/null
+++ b/ops/li/li100.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li100) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 100);
+}
diff --git a/ops/li/li101.c b/ops/li/li101.c
new file mode 100644
index 0000000..8c0f77e
--- /dev/null
+++ b/ops/li/li101.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li101) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 101);
+}
diff --git a/ops/li/li102.c b/ops/li/li102.c
new file mode 100644
index 0000000..aaba7bf
--- /dev/null
+++ b/ops/li/li102.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li102) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 102);
+}
diff --git a/ops/li/li103.c b/ops/li/li103.c
new file mode 100644
index 0000000..5bbed26
--- /dev/null
+++ b/ops/li/li103.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li103) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 103);
+}
diff --git a/ops/li/li104.c b/ops/li/li104.c
new file mode 100644
index 0000000..e5343cf
--- /dev/null
+++ b/ops/li/li104.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li104) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 104);
+}
diff --git a/ops/li/li105.c b/ops/li/li105.c
new file mode 100644
index 0000000..920ac5d
--- /dev/null
+++ b/ops/li/li105.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li105) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 105);
+}
diff --git a/ops/li/li106.c b/ops/li/li106.c
new file mode 100644
index 0000000..a96d235
--- /dev/null
+++ b/ops/li/li106.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li106) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 106);
+}
diff --git a/ops/li/li107.c b/ops/li/li107.c
new file mode 100644
index 0000000..864ba1e
--- /dev/null
+++ b/ops/li/li107.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li107) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 107);
+}
diff --git a/ops/li/li108.c b/ops/li/li108.c
new file mode 100644
index 0000000..9d1d85d
--- /dev/null
+++ b/ops/li/li108.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li108) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 108);
+}
diff --git a/ops/li/li109.c b/ops/li/li109.c
new file mode 100644
index 0000000..4b73a96
--- /dev/null
+++ b/ops/li/li109.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li109) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 109);
+}
diff --git a/ops/li/li11.c b/ops/li/li11.c
new file mode 100644
index 0000000..50a8228
--- /dev/null
+++ b/ops/li/li11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li11) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 11);
+}
diff --git a/ops/li/li110.c b/ops/li/li110.c
new file mode 100644
index 0000000..a9383bb
--- /dev/null
+++ b/ops/li/li110.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li110) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 110);
+}
diff --git a/ops/li/li111.c b/ops/li/li111.c
new file mode 100644
index 0000000..88c7c9f
--- /dev/null
+++ b/ops/li/li111.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li111) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 111);
+}
diff --git a/ops/li/li112.c b/ops/li/li112.c
new file mode 100644
index 0000000..1b5e211
--- /dev/null
+++ b/ops/li/li112.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li112) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 112);
+}
diff --git a/ops/li/li113.c b/ops/li/li113.c
new file mode 100644
index 0000000..fa675e0
--- /dev/null
+++ b/ops/li/li113.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li113) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 113);
+}
diff --git a/ops/li/li114.c b/ops/li/li114.c
new file mode 100644
index 0000000..85efd38
--- /dev/null
+++ b/ops/li/li114.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li114) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 114);
+}
diff --git a/ops/li/li115.c b/ops/li/li115.c
new file mode 100644
index 0000000..c3455a1
--- /dev/null
+++ b/ops/li/li115.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li115) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 115);
+}
diff --git a/ops/li/li116.c b/ops/li/li116.c
new file mode 100644
index 0000000..48488e3
--- /dev/null
+++ b/ops/li/li116.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li116) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 116);
+}
diff --git a/ops/li/li117.c b/ops/li/li117.c
new file mode 100644
index 0000000..4e9b726
--- /dev/null
+++ b/ops/li/li117.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li117) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 117);
+}
diff --git a/ops/li/li118.c b/ops/li/li118.c
new file mode 100644
index 0000000..0c719cd
--- /dev/null
+++ b/ops/li/li118.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li118) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 118);
+}
diff --git a/ops/li/li119.c b/ops/li/li119.c
new file mode 100644
index 0000000..a835082
--- /dev/null
+++ b/ops/li/li119.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li119) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 119);
+}
diff --git a/ops/li/li12.c b/ops/li/li12.c
new file mode 100644
index 0000000..651bce7
--- /dev/null
+++ b/ops/li/li12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li12) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 12);
+}
diff --git a/ops/li/li120.c b/ops/li/li120.c
new file mode 100644
index 0000000..f066b3e
--- /dev/null
+++ b/ops/li/li120.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li120) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 120);
+}
diff --git a/ops/li/li121.c b/ops/li/li121.c
new file mode 100644
index 0000000..5e2f106
--- /dev/null
+++ b/ops/li/li121.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li121) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 121);
+}
diff --git a/ops/li/li122.c b/ops/li/li122.c
new file mode 100644
index 0000000..2a8435a
--- /dev/null
+++ b/ops/li/li122.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li122) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 122);
+}
diff --git a/ops/li/li123.c b/ops/li/li123.c
new file mode 100644
index 0000000..d613358
--- /dev/null
+++ b/ops/li/li123.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li123) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 123);
+}
diff --git a/ops/li/li124.c b/ops/li/li124.c
new file mode 100644
index 0000000..8ef260e
--- /dev/null
+++ b/ops/li/li124.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li124) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 124);
+}
diff --git a/ops/li/li125.c b/ops/li/li125.c
new file mode 100644
index 0000000..3ea3d31
--- /dev/null
+++ b/ops/li/li125.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li125) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 125);
+}
diff --git a/ops/li/li126.c b/ops/li/li126.c
new file mode 100644
index 0000000..5269b38
--- /dev/null
+++ b/ops/li/li126.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li126) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 126);
+}
diff --git a/ops/li/li127.c b/ops/li/li127.c
new file mode 100644
index 0000000..1d558e1
--- /dev/null
+++ b/ops/li/li127.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li127) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 127);
+}
diff --git a/ops/li/li128.c b/ops/li/li128.c
new file mode 100644
index 0000000..6bc9f24
--- /dev/null
+++ b/ops/li/li128.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li128) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 128);
+}
diff --git a/ops/li/li129.c b/ops/li/li129.c
new file mode 100644
index 0000000..5adc603
--- /dev/null
+++ b/ops/li/li129.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li129) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 129);
+}
diff --git a/ops/li/li13.c b/ops/li/li13.c
new file mode 100644
index 0000000..ca5dc1b
--- /dev/null
+++ b/ops/li/li13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li13) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 13);
+}
diff --git a/ops/li/li130.c b/ops/li/li130.c
new file mode 100644
index 0000000..a1eacca
--- /dev/null
+++ b/ops/li/li130.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li130) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 130);
+}
diff --git a/ops/li/li131.c b/ops/li/li131.c
new file mode 100644
index 0000000..2bb097d
--- /dev/null
+++ b/ops/li/li131.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li131) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 131);
+}
diff --git a/ops/li/li132.c b/ops/li/li132.c
new file mode 100644
index 0000000..e35c5e9
--- /dev/null
+++ b/ops/li/li132.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li132) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 132);
+}
diff --git a/ops/li/li133.c b/ops/li/li133.c
new file mode 100644
index 0000000..bf980a4
--- /dev/null
+++ b/ops/li/li133.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li133) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 133);
+}
diff --git a/ops/li/li134.c b/ops/li/li134.c
new file mode 100644
index 0000000..651927c
--- /dev/null
+++ b/ops/li/li134.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li134) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 134);
+}
diff --git a/ops/li/li135.c b/ops/li/li135.c
new file mode 100644
index 0000000..1286594
--- /dev/null
+++ b/ops/li/li135.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li135) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 135);
+}
diff --git a/ops/li/li136.c b/ops/li/li136.c
new file mode 100644
index 0000000..0c06cb0
--- /dev/null
+++ b/ops/li/li136.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li136) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 136);
+}
diff --git a/ops/li/li137.c b/ops/li/li137.c
new file mode 100644
index 0000000..997ef71
--- /dev/null
+++ b/ops/li/li137.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li137) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 137);
+}
diff --git a/ops/li/li138.c b/ops/li/li138.c
new file mode 100644
index 0000000..78d3582
--- /dev/null
+++ b/ops/li/li138.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li138) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 138);
+}
diff --git a/ops/li/li139.c b/ops/li/li139.c
new file mode 100644
index 0000000..90ca33f
--- /dev/null
+++ b/ops/li/li139.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li139) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 139);
+}
diff --git a/ops/li/li14.c b/ops/li/li14.c
new file mode 100644
index 0000000..ef80ba1
--- /dev/null
+++ b/ops/li/li14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li14) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 14);
+}
diff --git a/ops/li/li140.c b/ops/li/li140.c
new file mode 100644
index 0000000..a1b7f0e
--- /dev/null
+++ b/ops/li/li140.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li140) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 140);
+}
diff --git a/ops/li/li141.c b/ops/li/li141.c
new file mode 100644
index 0000000..f70f2d8
--- /dev/null
+++ b/ops/li/li141.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li141) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 141);
+}
diff --git a/ops/li/li142.c b/ops/li/li142.c
new file mode 100644
index 0000000..f60b218
--- /dev/null
+++ b/ops/li/li142.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li142) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 142);
+}
diff --git a/ops/li/li143.c b/ops/li/li143.c
new file mode 100644
index 0000000..b4bcfcd
--- /dev/null
+++ b/ops/li/li143.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li143) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 143);
+}
diff --git a/ops/li/li144.c b/ops/li/li144.c
new file mode 100644
index 0000000..e6dac48
--- /dev/null
+++ b/ops/li/li144.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li144) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 144);
+}
diff --git a/ops/li/li145.c b/ops/li/li145.c
new file mode 100644
index 0000000..160942a
--- /dev/null
+++ b/ops/li/li145.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li145) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 145);
+}
diff --git a/ops/li/li146.c b/ops/li/li146.c
new file mode 100644
index 0000000..d2bc425
--- /dev/null
+++ b/ops/li/li146.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li146) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 146);
+}
diff --git a/ops/li/li147.c b/ops/li/li147.c
new file mode 100644
index 0000000..05d9d19
--- /dev/null
+++ b/ops/li/li147.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li147) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 147);
+}
diff --git a/ops/li/li148.c b/ops/li/li148.c
new file mode 100644
index 0000000..6b2a444
--- /dev/null
+++ b/ops/li/li148.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li148) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 148);
+}
diff --git a/ops/li/li149.c b/ops/li/li149.c
new file mode 100644
index 0000000..a86587d
--- /dev/null
+++ b/ops/li/li149.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li149) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 149);
+}
diff --git a/ops/li/li15.c b/ops/li/li15.c
new file mode 100644
index 0000000..411e6c0
--- /dev/null
+++ b/ops/li/li15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li15) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 15);
+}
diff --git a/ops/li/li150.c b/ops/li/li150.c
new file mode 100644
index 0000000..ead11d6
--- /dev/null
+++ b/ops/li/li150.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li150) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 150);
+}
diff --git a/ops/li/li151.c b/ops/li/li151.c
new file mode 100644
index 0000000..a0d6f31
--- /dev/null
+++ b/ops/li/li151.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li151) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 151);
+}
diff --git a/ops/li/li152.c b/ops/li/li152.c
new file mode 100644
index 0000000..0462272
--- /dev/null
+++ b/ops/li/li152.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li152) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 152);
+}
diff --git a/ops/li/li153.c b/ops/li/li153.c
new file mode 100644
index 0000000..f569b35
--- /dev/null
+++ b/ops/li/li153.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li153) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 153);
+}
diff --git a/ops/li/li154.c b/ops/li/li154.c
new file mode 100644
index 0000000..855a561
--- /dev/null
+++ b/ops/li/li154.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li154) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 154);
+}
diff --git a/ops/li/li155.c b/ops/li/li155.c
new file mode 100644
index 0000000..0bd8b9a
--- /dev/null
+++ b/ops/li/li155.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li155) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 155);
+}
diff --git a/ops/li/li156.c b/ops/li/li156.c
new file mode 100644
index 0000000..1a3d6b9
--- /dev/null
+++ b/ops/li/li156.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li156) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 156);
+}
diff --git a/ops/li/li157.c b/ops/li/li157.c
new file mode 100644
index 0000000..7e8027f
--- /dev/null
+++ b/ops/li/li157.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li157) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 157);
+}
diff --git a/ops/li/li158.c b/ops/li/li158.c
new file mode 100644
index 0000000..07a4610
--- /dev/null
+++ b/ops/li/li158.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li158) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 158);
+}
diff --git a/ops/li/li159.c b/ops/li/li159.c
new file mode 100644
index 0000000..7176572
--- /dev/null
+++ b/ops/li/li159.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li159) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 159);
+}
diff --git a/ops/li/li16.c b/ops/li/li16.c
new file mode 100644
index 0000000..1bfe846
--- /dev/null
+++ b/ops/li/li16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li16) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 16);
+}
diff --git a/ops/li/li160.c b/ops/li/li160.c
new file mode 100644
index 0000000..063efa4
--- /dev/null
+++ b/ops/li/li160.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li160) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 160);
+}
diff --git a/ops/li/li161.c b/ops/li/li161.c
new file mode 100644
index 0000000..7e7c273
--- /dev/null
+++ b/ops/li/li161.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li161) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 161);
+}
diff --git a/ops/li/li162.c b/ops/li/li162.c
new file mode 100644
index 0000000..33f40cb
--- /dev/null
+++ b/ops/li/li162.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li162) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 162);
+}
diff --git a/ops/li/li163.c b/ops/li/li163.c
new file mode 100644
index 0000000..e4a7562
--- /dev/null
+++ b/ops/li/li163.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li163) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 163);
+}
diff --git a/ops/li/li164.c b/ops/li/li164.c
new file mode 100644
index 0000000..e8cc05a
--- /dev/null
+++ b/ops/li/li164.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li164) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 164);
+}
diff --git a/ops/li/li165.c b/ops/li/li165.c
new file mode 100644
index 0000000..9531ed6
--- /dev/null
+++ b/ops/li/li165.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li165) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 165);
+}
diff --git a/ops/li/li166.c b/ops/li/li166.c
new file mode 100644
index 0000000..123c77b
--- /dev/null
+++ b/ops/li/li166.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li166) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 166);
+}
diff --git a/ops/li/li167.c b/ops/li/li167.c
new file mode 100644
index 0000000..6995862
--- /dev/null
+++ b/ops/li/li167.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li167) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 167);
+}
diff --git a/ops/li/li168.c b/ops/li/li168.c
new file mode 100644
index 0000000..b5035fb
--- /dev/null
+++ b/ops/li/li168.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li168) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 168);
+}
diff --git a/ops/li/li169.c b/ops/li/li169.c
new file mode 100644
index 0000000..dead7ce
--- /dev/null
+++ b/ops/li/li169.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li169) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 169);
+}
diff --git a/ops/li/li17.c b/ops/li/li17.c
new file mode 100644
index 0000000..efb3d83
--- /dev/null
+++ b/ops/li/li17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li17) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 17);
+}
diff --git a/ops/li/li170.c b/ops/li/li170.c
new file mode 100644
index 0000000..6d07929
--- /dev/null
+++ b/ops/li/li170.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li170) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 170);
+}
diff --git a/ops/li/li171.c b/ops/li/li171.c
new file mode 100644
index 0000000..302c9c8
--- /dev/null
+++ b/ops/li/li171.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li171) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 171);
+}
diff --git a/ops/li/li172.c b/ops/li/li172.c
new file mode 100644
index 0000000..c63bd9d
--- /dev/null
+++ b/ops/li/li172.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li172) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 172);
+}
diff --git a/ops/li/li173.c b/ops/li/li173.c
new file mode 100644
index 0000000..ee3baa0
--- /dev/null
+++ b/ops/li/li173.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li173) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 173);
+}
diff --git a/ops/li/li174.c b/ops/li/li174.c
new file mode 100644
index 0000000..d8cf448
--- /dev/null
+++ b/ops/li/li174.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li174) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 174);
+}
diff --git a/ops/li/li175.c b/ops/li/li175.c
new file mode 100644
index 0000000..18b1522
--- /dev/null
+++ b/ops/li/li175.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li175) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 175);
+}
diff --git a/ops/li/li176.c b/ops/li/li176.c
new file mode 100644
index 0000000..eff4e77
--- /dev/null
+++ b/ops/li/li176.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li176) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 176);
+}
diff --git a/ops/li/li177.c b/ops/li/li177.c
new file mode 100644
index 0000000..7e9ef7a
--- /dev/null
+++ b/ops/li/li177.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li177) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 177);
+}
diff --git a/ops/li/li178.c b/ops/li/li178.c
new file mode 100644
index 0000000..da1786d
--- /dev/null
+++ b/ops/li/li178.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li178) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 178);
+}
diff --git a/ops/li/li179.c b/ops/li/li179.c
new file mode 100644
index 0000000..9fb21c4
--- /dev/null
+++ b/ops/li/li179.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li179) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 179);
+}
diff --git a/ops/li/li18.c b/ops/li/li18.c
new file mode 100644
index 0000000..aca48ff
--- /dev/null
+++ b/ops/li/li18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li18) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 18);
+}
diff --git a/ops/li/li180.c b/ops/li/li180.c
new file mode 100644
index 0000000..6ee010f
--- /dev/null
+++ b/ops/li/li180.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li180) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 180);
+}
diff --git a/ops/li/li181.c b/ops/li/li181.c
new file mode 100644
index 0000000..dcc239e
--- /dev/null
+++ b/ops/li/li181.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li181) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 181);
+}
diff --git a/ops/li/li182.c b/ops/li/li182.c
new file mode 100644
index 0000000..0a610d5
--- /dev/null
+++ b/ops/li/li182.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li182) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 182);
+}
diff --git a/ops/li/li183.c b/ops/li/li183.c
new file mode 100644
index 0000000..f5b1a4e
--- /dev/null
+++ b/ops/li/li183.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li183) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 183);
+}
diff --git a/ops/li/li184.c b/ops/li/li184.c
new file mode 100644
index 0000000..134b98d
--- /dev/null
+++ b/ops/li/li184.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li184) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 184);
+}
diff --git a/ops/li/li185.c b/ops/li/li185.c
new file mode 100644
index 0000000..9a0847d
--- /dev/null
+++ b/ops/li/li185.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li185) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 185);
+}
diff --git a/ops/li/li186.c b/ops/li/li186.c
new file mode 100644
index 0000000..36158b9
--- /dev/null
+++ b/ops/li/li186.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li186) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 186);
+}
diff --git a/ops/li/li187.c b/ops/li/li187.c
new file mode 100644
index 0000000..b6f4ede
--- /dev/null
+++ b/ops/li/li187.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li187) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 187);
+}
diff --git a/ops/li/li188.c b/ops/li/li188.c
new file mode 100644
index 0000000..90961cf
--- /dev/null
+++ b/ops/li/li188.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li188) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 188);
+}
diff --git a/ops/li/li189.c b/ops/li/li189.c
new file mode 100644
index 0000000..5b239b9
--- /dev/null
+++ b/ops/li/li189.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li189) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 189);
+}
diff --git a/ops/li/li19.c b/ops/li/li19.c
new file mode 100644
index 0000000..036d1f5
--- /dev/null
+++ b/ops/li/li19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li19) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 19);
+}
diff --git a/ops/li/li190.c b/ops/li/li190.c
new file mode 100644
index 0000000..5988773
--- /dev/null
+++ b/ops/li/li190.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li190) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 190);
+}
diff --git a/ops/li/li191.c b/ops/li/li191.c
new file mode 100644
index 0000000..f3d74de
--- /dev/null
+++ b/ops/li/li191.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li191) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 191);
+}
diff --git a/ops/li/li192.c b/ops/li/li192.c
new file mode 100644
index 0000000..e258fea
--- /dev/null
+++ b/ops/li/li192.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li192) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 192);
+}
diff --git a/ops/li/li193.c b/ops/li/li193.c
new file mode 100644
index 0000000..dc184fe
--- /dev/null
+++ b/ops/li/li193.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li193) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 193);
+}
diff --git a/ops/li/li194.c b/ops/li/li194.c
new file mode 100644
index 0000000..9a78c43
--- /dev/null
+++ b/ops/li/li194.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li194) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 194);
+}
diff --git a/ops/li/li195.c b/ops/li/li195.c
new file mode 100644
index 0000000..6c67fed
--- /dev/null
+++ b/ops/li/li195.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li195) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 195);
+}
diff --git a/ops/li/li196.c b/ops/li/li196.c
new file mode 100644
index 0000000..ebdfc3a
--- /dev/null
+++ b/ops/li/li196.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li196) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 196);
+}
diff --git a/ops/li/li197.c b/ops/li/li197.c
new file mode 100644
index 0000000..9a32b74
--- /dev/null
+++ b/ops/li/li197.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li197) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 197);
+}
diff --git a/ops/li/li198.c b/ops/li/li198.c
new file mode 100644
index 0000000..2070c18
--- /dev/null
+++ b/ops/li/li198.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li198) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 198);
+}
diff --git a/ops/li/li199.c b/ops/li/li199.c
new file mode 100644
index 0000000..221dacb
--- /dev/null
+++ b/ops/li/li199.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li199) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 199);
+}
diff --git a/ops/li/li2.c b/ops/li/li2.c
new file mode 100644
index 0000000..55d199c
--- /dev/null
+++ b/ops/li/li2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li2) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 2);
+}
diff --git a/ops/li/li20.c b/ops/li/li20.c
new file mode 100644
index 0000000..1c816c7
--- /dev/null
+++ b/ops/li/li20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li20) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 20);
+}
diff --git a/ops/li/li200.c b/ops/li/li200.c
new file mode 100644
index 0000000..62e4172
--- /dev/null
+++ b/ops/li/li200.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li200) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 200);
+}
diff --git a/ops/li/li201.c b/ops/li/li201.c
new file mode 100644
index 0000000..7dbe6eb
--- /dev/null
+++ b/ops/li/li201.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li201) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 201);
+}
diff --git a/ops/li/li202.c b/ops/li/li202.c
new file mode 100644
index 0000000..9e78945
--- /dev/null
+++ b/ops/li/li202.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li202) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 202);
+}
diff --git a/ops/li/li203.c b/ops/li/li203.c
new file mode 100644
index 0000000..fce5823
--- /dev/null
+++ b/ops/li/li203.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li203) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 203);
+}
diff --git a/ops/li/li204.c b/ops/li/li204.c
new file mode 100644
index 0000000..e97d089
--- /dev/null
+++ b/ops/li/li204.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li204) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 204);
+}
diff --git a/ops/li/li205.c b/ops/li/li205.c
new file mode 100644
index 0000000..520f64c
--- /dev/null
+++ b/ops/li/li205.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li205) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 205);
+}
diff --git a/ops/li/li206.c b/ops/li/li206.c
new file mode 100644
index 0000000..b583ba7
--- /dev/null
+++ b/ops/li/li206.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li206) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 206);
+}
diff --git a/ops/li/li207.c b/ops/li/li207.c
new file mode 100644
index 0000000..dd4a558
--- /dev/null
+++ b/ops/li/li207.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li207) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 207);
+}
diff --git a/ops/li/li208.c b/ops/li/li208.c
new file mode 100644
index 0000000..ce038bd
--- /dev/null
+++ b/ops/li/li208.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li208) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 208);
+}
diff --git a/ops/li/li209.c b/ops/li/li209.c
new file mode 100644
index 0000000..b22b85d
--- /dev/null
+++ b/ops/li/li209.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li209) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 209);
+}
diff --git a/ops/li/li21.c b/ops/li/li21.c
new file mode 100644
index 0000000..7299083
--- /dev/null
+++ b/ops/li/li21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li21) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 21);
+}
diff --git a/ops/li/li210.c b/ops/li/li210.c
new file mode 100644
index 0000000..256e638
--- /dev/null
+++ b/ops/li/li210.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li210) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 210);
+}
diff --git a/ops/li/li211.c b/ops/li/li211.c
new file mode 100644
index 0000000..fa798ec
--- /dev/null
+++ b/ops/li/li211.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li211) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 211);
+}
diff --git a/ops/li/li212.c b/ops/li/li212.c
new file mode 100644
index 0000000..2b3ee87
--- /dev/null
+++ b/ops/li/li212.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li212) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 212);
+}
diff --git a/ops/li/li213.c b/ops/li/li213.c
new file mode 100644
index 0000000..400fbf8
--- /dev/null
+++ b/ops/li/li213.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li213) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 213);
+}
diff --git a/ops/li/li214.c b/ops/li/li214.c
new file mode 100644
index 0000000..6c4b072
--- /dev/null
+++ b/ops/li/li214.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li214) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 214);
+}
diff --git a/ops/li/li215.c b/ops/li/li215.c
new file mode 100644
index 0000000..98a84c3
--- /dev/null
+++ b/ops/li/li215.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li215) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 215);
+}
diff --git a/ops/li/li216.c b/ops/li/li216.c
new file mode 100644
index 0000000..c7e17a7
--- /dev/null
+++ b/ops/li/li216.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li216) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 216);
+}
diff --git a/ops/li/li217.c b/ops/li/li217.c
new file mode 100644
index 0000000..543f6c3
--- /dev/null
+++ b/ops/li/li217.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li217) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 217);
+}
diff --git a/ops/li/li218.c b/ops/li/li218.c
new file mode 100644
index 0000000..f08b275
--- /dev/null
+++ b/ops/li/li218.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li218) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 218);
+}
diff --git a/ops/li/li219.c b/ops/li/li219.c
new file mode 100644
index 0000000..3461867
--- /dev/null
+++ b/ops/li/li219.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li219) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 219);
+}
diff --git a/ops/li/li22.c b/ops/li/li22.c
new file mode 100644
index 0000000..8758ff5
--- /dev/null
+++ b/ops/li/li22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li22) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 22);
+}
diff --git a/ops/li/li220.c b/ops/li/li220.c
new file mode 100644
index 0000000..0419c36
--- /dev/null
+++ b/ops/li/li220.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li220) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 220);
+}
diff --git a/ops/li/li221.c b/ops/li/li221.c
new file mode 100644
index 0000000..147502f
--- /dev/null
+++ b/ops/li/li221.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li221) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 221);
+}
diff --git a/ops/li/li222.c b/ops/li/li222.c
new file mode 100644
index 0000000..01adea9
--- /dev/null
+++ b/ops/li/li222.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li222) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 222);
+}
diff --git a/ops/li/li223.c b/ops/li/li223.c
new file mode 100644
index 0000000..84ca4c9
--- /dev/null
+++ b/ops/li/li223.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li223) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 223);
+}
diff --git a/ops/li/li224.c b/ops/li/li224.c
new file mode 100644
index 0000000..4a96f95
--- /dev/null
+++ b/ops/li/li224.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li224) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 224);
+}
diff --git a/ops/li/li225.c b/ops/li/li225.c
new file mode 100644
index 0000000..5b372e1
--- /dev/null
+++ b/ops/li/li225.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li225) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 225);
+}
diff --git a/ops/li/li226.c b/ops/li/li226.c
new file mode 100644
index 0000000..aa11f8f
--- /dev/null
+++ b/ops/li/li226.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li226) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 226);
+}
diff --git a/ops/li/li227.c b/ops/li/li227.c
new file mode 100644
index 0000000..ff56bbf
--- /dev/null
+++ b/ops/li/li227.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li227) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 227);
+}
diff --git a/ops/li/li228.c b/ops/li/li228.c
new file mode 100644
index 0000000..96202ad
--- /dev/null
+++ b/ops/li/li228.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li228) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 228);
+}
diff --git a/ops/li/li229.c b/ops/li/li229.c
new file mode 100644
index 0000000..715654e
--- /dev/null
+++ b/ops/li/li229.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li229) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 229);
+}
diff --git a/ops/li/li23.c b/ops/li/li23.c
new file mode 100644
index 0000000..ef313f0
--- /dev/null
+++ b/ops/li/li23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li23) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 23);
+}
diff --git a/ops/li/li230.c b/ops/li/li230.c
new file mode 100644
index 0000000..8fecfed
--- /dev/null
+++ b/ops/li/li230.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li230) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 230);
+}
diff --git a/ops/li/li231.c b/ops/li/li231.c
new file mode 100644
index 0000000..d49e450
--- /dev/null
+++ b/ops/li/li231.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li231) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 231);
+}
diff --git a/ops/li/li232.c b/ops/li/li232.c
new file mode 100644
index 0000000..f2e7249
--- /dev/null
+++ b/ops/li/li232.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li232) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 232);
+}
diff --git a/ops/li/li233.c b/ops/li/li233.c
new file mode 100644
index 0000000..e6be8ac
--- /dev/null
+++ b/ops/li/li233.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li233) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 233);
+}
diff --git a/ops/li/li234.c b/ops/li/li234.c
new file mode 100644
index 0000000..dfe84d5
--- /dev/null
+++ b/ops/li/li234.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li234) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 234);
+}
diff --git a/ops/li/li235.c b/ops/li/li235.c
new file mode 100644
index 0000000..99dfe06
--- /dev/null
+++ b/ops/li/li235.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li235) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 235);
+}
diff --git a/ops/li/li236.c b/ops/li/li236.c
new file mode 100644
index 0000000..cbbb5eb
--- /dev/null
+++ b/ops/li/li236.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li236) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 236);
+}
diff --git a/ops/li/li237.c b/ops/li/li237.c
new file mode 100644
index 0000000..7914c4d
--- /dev/null
+++ b/ops/li/li237.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li237) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 237);
+}
diff --git a/ops/li/li238.c b/ops/li/li238.c
new file mode 100644
index 0000000..611c8bb
--- /dev/null
+++ b/ops/li/li238.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li238) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 238);
+}
diff --git a/ops/li/li239.c b/ops/li/li239.c
new file mode 100644
index 0000000..9f3b5b4
--- /dev/null
+++ b/ops/li/li239.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li239) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 239);
+}
diff --git a/ops/li/li24.c b/ops/li/li24.c
new file mode 100644
index 0000000..27cacb0
--- /dev/null
+++ b/ops/li/li24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li24) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 24);
+}
diff --git a/ops/li/li240.c b/ops/li/li240.c
new file mode 100644
index 0000000..79b9036
--- /dev/null
+++ b/ops/li/li240.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li240) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 240);
+}
diff --git a/ops/li/li241.c b/ops/li/li241.c
new file mode 100644
index 0000000..465347d
--- /dev/null
+++ b/ops/li/li241.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li241) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 241);
+}
diff --git a/ops/li/li242.c b/ops/li/li242.c
new file mode 100644
index 0000000..c2eed09
--- /dev/null
+++ b/ops/li/li242.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li242) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 242);
+}
diff --git a/ops/li/li243.c b/ops/li/li243.c
new file mode 100644
index 0000000..dbbac9f
--- /dev/null
+++ b/ops/li/li243.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li243) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 243);
+}
diff --git a/ops/li/li244.c b/ops/li/li244.c
new file mode 100644
index 0000000..5dfdaa8
--- /dev/null
+++ b/ops/li/li244.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li244) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 244);
+}
diff --git a/ops/li/li245.c b/ops/li/li245.c
new file mode 100644
index 0000000..b24b189
--- /dev/null
+++ b/ops/li/li245.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li245) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 245);
+}
diff --git a/ops/li/li246.c b/ops/li/li246.c
new file mode 100644
index 0000000..8abad79
--- /dev/null
+++ b/ops/li/li246.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li246) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 246);
+}
diff --git a/ops/li/li247.c b/ops/li/li247.c
new file mode 100644
index 0000000..5ba15d3
--- /dev/null
+++ b/ops/li/li247.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li247) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 247);
+}
diff --git a/ops/li/li248.c b/ops/li/li248.c
new file mode 100644
index 0000000..7bcc1f5
--- /dev/null
+++ b/ops/li/li248.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li248) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 248);
+}
diff --git a/ops/li/li249.c b/ops/li/li249.c
new file mode 100644
index 0000000..5627248
--- /dev/null
+++ b/ops/li/li249.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li249) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 249);
+}
diff --git a/ops/li/li25.c b/ops/li/li25.c
new file mode 100644
index 0000000..d523a97
--- /dev/null
+++ b/ops/li/li25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li25) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 25);
+}
diff --git a/ops/li/li250.c b/ops/li/li250.c
new file mode 100644
index 0000000..9a774cf
--- /dev/null
+++ b/ops/li/li250.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li250) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 250);
+}
diff --git a/ops/li/li251.c b/ops/li/li251.c
new file mode 100644
index 0000000..b27229d
--- /dev/null
+++ b/ops/li/li251.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li251) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 251);
+}
diff --git a/ops/li/li252.c b/ops/li/li252.c
new file mode 100644
index 0000000..727917b
--- /dev/null
+++ b/ops/li/li252.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li252) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 252);
+}
diff --git a/ops/li/li253.c b/ops/li/li253.c
new file mode 100644
index 0000000..ae32d8d
--- /dev/null
+++ b/ops/li/li253.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li253) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 253);
+}
diff --git a/ops/li/li254.c b/ops/li/li254.c
new file mode 100644
index 0000000..471f1a4
--- /dev/null
+++ b/ops/li/li254.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li254) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 254);
+}
diff --git a/ops/li/li255.c b/ops/li/li255.c
new file mode 100644
index 0000000..0ed8320
--- /dev/null
+++ b/ops/li/li255.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li255) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 255);
+}
diff --git a/ops/li/li26.c b/ops/li/li26.c
new file mode 100644
index 0000000..c761666
--- /dev/null
+++ b/ops/li/li26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li26) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 26);
+}
diff --git a/ops/li/li27.c b/ops/li/li27.c
new file mode 100644
index 0000000..6689371
--- /dev/null
+++ b/ops/li/li27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li27) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 27);
+}
diff --git a/ops/li/li28.c b/ops/li/li28.c
new file mode 100644
index 0000000..752c063
--- /dev/null
+++ b/ops/li/li28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li28) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 28);
+}
diff --git a/ops/li/li29.c b/ops/li/li29.c
new file mode 100644
index 0000000..f909b56
--- /dev/null
+++ b/ops/li/li29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li29) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 29);
+}
diff --git a/ops/li/li3.c b/ops/li/li3.c
new file mode 100644
index 0000000..acc7821
--- /dev/null
+++ b/ops/li/li3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li3) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 3);
+}
diff --git a/ops/li/li30.c b/ops/li/li30.c
new file mode 100644
index 0000000..d065f86
--- /dev/null
+++ b/ops/li/li30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li30) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 30);
+}
diff --git a/ops/li/li31.c b/ops/li/li31.c
new file mode 100644
index 0000000..f3fca8d
--- /dev/null
+++ b/ops/li/li31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li31) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 31);
+}
diff --git a/ops/li/li32.c b/ops/li/li32.c
new file mode 100644
index 0000000..95a75f0
--- /dev/null
+++ b/ops/li/li32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li32) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 32);
+}
diff --git a/ops/li/li33.c b/ops/li/li33.c
new file mode 100644
index 0000000..f018b5c
--- /dev/null
+++ b/ops/li/li33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li33) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 33);
+}
diff --git a/ops/li/li34.c b/ops/li/li34.c
new file mode 100644
index 0000000..fcbb026
--- /dev/null
+++ b/ops/li/li34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li34) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 34);
+}
diff --git a/ops/li/li35.c b/ops/li/li35.c
new file mode 100644
index 0000000..d816a77
--- /dev/null
+++ b/ops/li/li35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li35) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 35);
+}
diff --git a/ops/li/li36.c b/ops/li/li36.c
new file mode 100644
index 0000000..633a405
--- /dev/null
+++ b/ops/li/li36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li36) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 36);
+}
diff --git a/ops/li/li37.c b/ops/li/li37.c
new file mode 100644
index 0000000..4cd3cfe
--- /dev/null
+++ b/ops/li/li37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li37) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 37);
+}
diff --git a/ops/li/li38.c b/ops/li/li38.c
new file mode 100644
index 0000000..5573c2d
--- /dev/null
+++ b/ops/li/li38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li38) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 38);
+}
diff --git a/ops/li/li39.c b/ops/li/li39.c
new file mode 100644
index 0000000..a684912
--- /dev/null
+++ b/ops/li/li39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li39) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 39);
+}
diff --git a/ops/li/li4.c b/ops/li/li4.c
new file mode 100644
index 0000000..cfaf87c
--- /dev/null
+++ b/ops/li/li4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li4) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 4);
+}
diff --git a/ops/li/li40.c b/ops/li/li40.c
new file mode 100644
index 0000000..a153a98
--- /dev/null
+++ b/ops/li/li40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li40) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 40);
+}
diff --git a/ops/li/li41.c b/ops/li/li41.c
new file mode 100644
index 0000000..ec5d504
--- /dev/null
+++ b/ops/li/li41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li41) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 41);
+}
diff --git a/ops/li/li42.c b/ops/li/li42.c
new file mode 100644
index 0000000..f8ed8fb
--- /dev/null
+++ b/ops/li/li42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li42) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 42);
+}
diff --git a/ops/li/li43.c b/ops/li/li43.c
new file mode 100644
index 0000000..0b10f66
--- /dev/null
+++ b/ops/li/li43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li43) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 43);
+}
diff --git a/ops/li/li44.c b/ops/li/li44.c
new file mode 100644
index 0000000..4f4f326
--- /dev/null
+++ b/ops/li/li44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li44) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 44);
+}
diff --git a/ops/li/li45.c b/ops/li/li45.c
new file mode 100644
index 0000000..6328ece
--- /dev/null
+++ b/ops/li/li45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li45) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 45);
+}
diff --git a/ops/li/li46.c b/ops/li/li46.c
new file mode 100644
index 0000000..c5ce119
--- /dev/null
+++ b/ops/li/li46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li46) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 46);
+}
diff --git a/ops/li/li47.c b/ops/li/li47.c
new file mode 100644
index 0000000..164287f
--- /dev/null
+++ b/ops/li/li47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li47) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 47);
+}
diff --git a/ops/li/li48.c b/ops/li/li48.c
new file mode 100644
index 0000000..0a32e38
--- /dev/null
+++ b/ops/li/li48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li48) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 48);
+}
diff --git a/ops/li/li49.c b/ops/li/li49.c
new file mode 100644
index 0000000..f3deba0
--- /dev/null
+++ b/ops/li/li49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li49) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 49);
+}
diff --git a/ops/li/li5.c b/ops/li/li5.c
new file mode 100644
index 0000000..cc518b6
--- /dev/null
+++ b/ops/li/li5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li5) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 5);
+}
diff --git a/ops/li/li50.c b/ops/li/li50.c
new file mode 100644
index 0000000..3c70ac8
--- /dev/null
+++ b/ops/li/li50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li50) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 50);
+}
diff --git a/ops/li/li51.c b/ops/li/li51.c
new file mode 100644
index 0000000..ab12afe
--- /dev/null
+++ b/ops/li/li51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li51) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 51);
+}
diff --git a/ops/li/li52.c b/ops/li/li52.c
new file mode 100644
index 0000000..9e16d56
--- /dev/null
+++ b/ops/li/li52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li52) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 52);
+}
diff --git a/ops/li/li53.c b/ops/li/li53.c
new file mode 100644
index 0000000..947ee6a
--- /dev/null
+++ b/ops/li/li53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li53) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 53);
+}
diff --git a/ops/li/li54.c b/ops/li/li54.c
new file mode 100644
index 0000000..9d51433
--- /dev/null
+++ b/ops/li/li54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li54) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 54);
+}
diff --git a/ops/li/li55.c b/ops/li/li55.c
new file mode 100644
index 0000000..d4b4329
--- /dev/null
+++ b/ops/li/li55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li55) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 55);
+}
diff --git a/ops/li/li56.c b/ops/li/li56.c
new file mode 100644
index 0000000..7fe33d6
--- /dev/null
+++ b/ops/li/li56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li56) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 56);
+}
diff --git a/ops/li/li57.c b/ops/li/li57.c
new file mode 100644
index 0000000..3b81c2c
--- /dev/null
+++ b/ops/li/li57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li57) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 57);
+}
diff --git a/ops/li/li58.c b/ops/li/li58.c
new file mode 100644
index 0000000..e85576d
--- /dev/null
+++ b/ops/li/li58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li58) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 58);
+}
diff --git a/ops/li/li59.c b/ops/li/li59.c
new file mode 100644
index 0000000..2302908
--- /dev/null
+++ b/ops/li/li59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li59) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 59);
+}
diff --git a/ops/li/li6.c b/ops/li/li6.c
new file mode 100644
index 0000000..c075db5
--- /dev/null
+++ b/ops/li/li6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li6) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 6);
+}
diff --git a/ops/li/li60.c b/ops/li/li60.c
new file mode 100644
index 0000000..56b4a4e
--- /dev/null
+++ b/ops/li/li60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li60) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 60);
+}
diff --git a/ops/li/li61.c b/ops/li/li61.c
new file mode 100644
index 0000000..02f01ac
--- /dev/null
+++ b/ops/li/li61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li61) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 61);
+}
diff --git a/ops/li/li62.c b/ops/li/li62.c
new file mode 100644
index 0000000..2b84299
--- /dev/null
+++ b/ops/li/li62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li62) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 62);
+}
diff --git a/ops/li/li63.c b/ops/li/li63.c
new file mode 100644
index 0000000..945ae04
--- /dev/null
+++ b/ops/li/li63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li63) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 63);
+}
diff --git a/ops/li/li64.c b/ops/li/li64.c
new file mode 100644
index 0000000..068cccf
--- /dev/null
+++ b/ops/li/li64.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li64) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 64);
+}
diff --git a/ops/li/li65.c b/ops/li/li65.c
new file mode 100644
index 0000000..e8abe40
--- /dev/null
+++ b/ops/li/li65.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li65) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 65);
+}
diff --git a/ops/li/li66.c b/ops/li/li66.c
new file mode 100644
index 0000000..b61863f
--- /dev/null
+++ b/ops/li/li66.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li66) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 66);
+}
diff --git a/ops/li/li67.c b/ops/li/li67.c
new file mode 100644
index 0000000..ac8f96b
--- /dev/null
+++ b/ops/li/li67.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li67) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 67);
+}
diff --git a/ops/li/li68.c b/ops/li/li68.c
new file mode 100644
index 0000000..64383ff
--- /dev/null
+++ b/ops/li/li68.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li68) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 68);
+}
diff --git a/ops/li/li69.c b/ops/li/li69.c
new file mode 100644
index 0000000..0a6d82a
--- /dev/null
+++ b/ops/li/li69.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li69) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 69);
+}
diff --git a/ops/li/li7.c b/ops/li/li7.c
new file mode 100644
index 0000000..15b2281
--- /dev/null
+++ b/ops/li/li7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li7) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 7);
+}
diff --git a/ops/li/li70.c b/ops/li/li70.c
new file mode 100644
index 0000000..d401bae
--- /dev/null
+++ b/ops/li/li70.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li70) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 70);
+}
diff --git a/ops/li/li71.c b/ops/li/li71.c
new file mode 100644
index 0000000..2311464
--- /dev/null
+++ b/ops/li/li71.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li71) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 71);
+}
diff --git a/ops/li/li72.c b/ops/li/li72.c
new file mode 100644
index 0000000..3e28226
--- /dev/null
+++ b/ops/li/li72.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li72) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 72);
+}
diff --git a/ops/li/li73.c b/ops/li/li73.c
new file mode 100644
index 0000000..0fe07dc
--- /dev/null
+++ b/ops/li/li73.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li73) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 73);
+}
diff --git a/ops/li/li74.c b/ops/li/li74.c
new file mode 100644
index 0000000..e975b21
--- /dev/null
+++ b/ops/li/li74.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li74) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 74);
+}
diff --git a/ops/li/li75.c b/ops/li/li75.c
new file mode 100644
index 0000000..58544bf
--- /dev/null
+++ b/ops/li/li75.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li75) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 75);
+}
diff --git a/ops/li/li76.c b/ops/li/li76.c
new file mode 100644
index 0000000..654d5a8
--- /dev/null
+++ b/ops/li/li76.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li76) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 76);
+}
diff --git a/ops/li/li77.c b/ops/li/li77.c
new file mode 100644
index 0000000..d796a08
--- /dev/null
+++ b/ops/li/li77.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li77) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 77);
+}
diff --git a/ops/li/li78.c b/ops/li/li78.c
new file mode 100644
index 0000000..6e2506e
--- /dev/null
+++ b/ops/li/li78.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li78) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 78);
+}
diff --git a/ops/li/li79.c b/ops/li/li79.c
new file mode 100644
index 0000000..4b73f2b
--- /dev/null
+++ b/ops/li/li79.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li79) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 79);
+}
diff --git a/ops/li/li8.c b/ops/li/li8.c
new file mode 100644
index 0000000..a46b1b0
--- /dev/null
+++ b/ops/li/li8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li8) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 8);
+}
diff --git a/ops/li/li80.c b/ops/li/li80.c
new file mode 100644
index 0000000..0a1e99f
--- /dev/null
+++ b/ops/li/li80.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li80) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 80);
+}
diff --git a/ops/li/li81.c b/ops/li/li81.c
new file mode 100644
index 0000000..5eac894
--- /dev/null
+++ b/ops/li/li81.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li81) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 81);
+}
diff --git a/ops/li/li82.c b/ops/li/li82.c
new file mode 100644
index 0000000..8d24342
--- /dev/null
+++ b/ops/li/li82.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li82) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 82);
+}
diff --git a/ops/li/li83.c b/ops/li/li83.c
new file mode 100644
index 0000000..35acceb
--- /dev/null
+++ b/ops/li/li83.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li83) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 83);
+}
diff --git a/ops/li/li84.c b/ops/li/li84.c
new file mode 100644
index 0000000..04c2b0d
--- /dev/null
+++ b/ops/li/li84.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li84) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 84);
+}
diff --git a/ops/li/li85.c b/ops/li/li85.c
new file mode 100644
index 0000000..2507201
--- /dev/null
+++ b/ops/li/li85.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li85) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 85);
+}
diff --git a/ops/li/li86.c b/ops/li/li86.c
new file mode 100644
index 0000000..0a46527
--- /dev/null
+++ b/ops/li/li86.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li86) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 86);
+}
diff --git a/ops/li/li87.c b/ops/li/li87.c
new file mode 100644
index 0000000..a203288
--- /dev/null
+++ b/ops/li/li87.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li87) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 87);
+}
diff --git a/ops/li/li88.c b/ops/li/li88.c
new file mode 100644
index 0000000..905779b
--- /dev/null
+++ b/ops/li/li88.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li88) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 88);
+}
diff --git a/ops/li/li89.c b/ops/li/li89.c
new file mode 100644
index 0000000..f9ed506
--- /dev/null
+++ b/ops/li/li89.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li89) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 89);
+}
diff --git a/ops/li/li9.c b/ops/li/li9.c
new file mode 100644
index 0000000..62b1522
--- /dev/null
+++ b/ops/li/li9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li9) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 9);
+}
diff --git a/ops/li/li90.c b/ops/li/li90.c
new file mode 100644
index 0000000..508de46
--- /dev/null
+++ b/ops/li/li90.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li90) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 90);
+}
diff --git a/ops/li/li91.c b/ops/li/li91.c
new file mode 100644
index 0000000..b35308a
--- /dev/null
+++ b/ops/li/li91.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li91) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 91);
+}
diff --git a/ops/li/li92.c b/ops/li/li92.c
new file mode 100644
index 0000000..4a56884
--- /dev/null
+++ b/ops/li/li92.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li92) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 92);
+}
diff --git a/ops/li/li93.c b/ops/li/li93.c
new file mode 100644
index 0000000..cc3afce
--- /dev/null
+++ b/ops/li/li93.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li93) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 93);
+}
diff --git a/ops/li/li94.c b/ops/li/li94.c
new file mode 100644
index 0000000..2ecc577
--- /dev/null
+++ b/ops/li/li94.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li94) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 94);
+}
diff --git a/ops/li/li95.c b/ops/li/li95.c
new file mode 100644
index 0000000..348c11b
--- /dev/null
+++ b/ops/li/li95.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li95) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 95);
+}
diff --git a/ops/li/li96.c b/ops/li/li96.c
new file mode 100644
index 0000000..e1afeee
--- /dev/null
+++ b/ops/li/li96.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li96) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 96);
+}
diff --git a/ops/li/li97.c b/ops/li/li97.c
new file mode 100644
index 0000000..f79a05f
--- /dev/null
+++ b/ops/li/li97.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li97) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 97);
+}
diff --git a/ops/li/li98.c b/ops/li/li98.c
new file mode 100644
index 0000000..6b32001
--- /dev/null
+++ b/ops/li/li98.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li98) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 98);
+}
diff --git a/ops/li/li99.c b/ops/li/li99.c
new file mode 100644
index 0000000..d5e4be6
--- /dev/null
+++ b/ops/li/li99.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(li99) {
+ UNUSED(o); NEXT_OP(sp, a, x, y, 99);
+}
diff --git a/ops/li/source.mk b/ops/li/source.mk
new file mode 100644
index 0000000..166249b
--- /dev/null
+++ b/ops/li/source.mk
@@ -0,0 +1,2 @@
+OP_SRC != echo ops/li/*.c
+OP_SOURCES += $(OP_SRC)
diff --git a/ops/movao.c b/ops/movao.c
new file mode 100644
index 0000000..8e8f928
--- /dev/null
+++ b/ops/movao.c
@@ -0,0 +1,7 @@
+#include "common.h"
+
+DEFINE_OP(movao)
+{
+ UNUSED(a);
+ NEXT_OP(sp, o, x, y, o);
+}
diff --git a/ops/movxa.c b/ops/movxa.c
new file mode 100644
index 0000000..95c8c1e
--- /dev/null
+++ b/ops/movxa.c
@@ -0,0 +1,7 @@
+#include "common.h"
+
+DEFINE_OP(movxa)
+{
+ UNUSED(x);
+ NEXT_OP(sp, a, a, y, o);
+}
diff --git a/ops/movxo.c b/ops/movxo.c
new file mode 100644
index 0000000..9d82df6
--- /dev/null
+++ b/ops/movxo.c
@@ -0,0 +1,6 @@
+#include "common.h"
+
+DEFINE_OP(movxo) {
+ UNUSED(x);
+ NEXT_OP(sp, a, o, y, o);
+}
diff --git a/ops/movya.c b/ops/movya.c
new file mode 100644
index 0000000..a96ffe3
--- /dev/null
+++ b/ops/movya.c
@@ -0,0 +1,7 @@
+#include "common.h"
+
+DEFINE_OP(movya)
+{
+ UNUSED(y);
+ NEXT_OP(sp, a, x, a, o);
+}
diff --git a/ops/movyo.c b/ops/movyo.c
new file mode 100644
index 0000000..1707edb
--- /dev/null
+++ b/ops/movyo.c
@@ -0,0 +1,7 @@
+#include "common.h"
+
+DEFINE_OP(movyo)
+{
+ UNUSED(y);
+ NEXT_OP(sp, a, x, o, o);
+}
diff --git a/ops/sl/gen_sl.sh b/ops/sl/gen_sl.sh
new file mode 100755
index 0000000..120c956
--- /dev/null
+++ b/ops/sl/gen_sl.sh
@@ -0,0 +1,41 @@
+#!/bin/sh
+
+# shift left register o
+for i in $(seq 0 63); do
+ opname=slo"$i"
+ filename="$opname".c
+ echo "#include \"../common.h\"\n" \
+ "DEFINE_OP($opname) {" \
+ "NEXT_OP(sp, a, x, y, o << $i);" \
+ "}" > "$filename"
+done
+
+# shift left register x
+for i in $(seq 0 63); do
+ opname=slx"$i"
+ filename="$opname".c
+ echo "#include \"../common.h\"\n" \
+ "DEFINE_OP($opname) {" \
+ "NEXT_OP(sp, a, x << $i, y, o);" \
+ "}" > "$filename"
+done
+
+# shift left register y
+for i in $(seq 0 63); do
+ opname=sly"$i"
+ filename="$opname".c
+ echo "#include \"../common.h\"\n" \
+ "DEFINE_OP($opname) {" \
+ "NEXT_OP(sp, a, x, y << $i, o);" \
+ "}" > "$filename"
+done
+
+# shift left register a
+for i in $(seq 0 63); do
+ opname=sla"$i"
+ filename="$opname".c
+ echo "#include \"../common.h\"\n" \
+ "DEFINE_OP($opname) {" \
+ "NEXT_OP(sp, a >> $i, x, y, o);" \
+ "}" > "$filename"
+done
diff --git a/ops/sl/sla0.c b/ops/sl/sla0.c
new file mode 100644
index 0000000..e599255
--- /dev/null
+++ b/ops/sl/sla0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla0) {
+ NEXT_OP(sp, a >> 0, x, y, o);
+}
diff --git a/ops/sl/sla1.c b/ops/sl/sla1.c
new file mode 100644
index 0000000..42e033b
--- /dev/null
+++ b/ops/sl/sla1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla1) {
+ NEXT_OP(sp, a >> 1, x, y, o);
+}
diff --git a/ops/sl/sla10.c b/ops/sl/sla10.c
new file mode 100644
index 0000000..6cde6e5
--- /dev/null
+++ b/ops/sl/sla10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla10) {
+ NEXT_OP(sp, a >> 10, x, y, o);
+}
diff --git a/ops/sl/sla11.c b/ops/sl/sla11.c
new file mode 100644
index 0000000..28ea581
--- /dev/null
+++ b/ops/sl/sla11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla11) {
+ NEXT_OP(sp, a >> 11, x, y, o);
+}
diff --git a/ops/sl/sla12.c b/ops/sl/sla12.c
new file mode 100644
index 0000000..c6b901c
--- /dev/null
+++ b/ops/sl/sla12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla12) {
+ NEXT_OP(sp, a >> 12, x, y, o);
+}
diff --git a/ops/sl/sla13.c b/ops/sl/sla13.c
new file mode 100644
index 0000000..6e73522
--- /dev/null
+++ b/ops/sl/sla13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla13) {
+ NEXT_OP(sp, a >> 13, x, y, o);
+}
diff --git a/ops/sl/sla14.c b/ops/sl/sla14.c
new file mode 100644
index 0000000..e4d4707
--- /dev/null
+++ b/ops/sl/sla14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla14) {
+ NEXT_OP(sp, a >> 14, x, y, o);
+}
diff --git a/ops/sl/sla15.c b/ops/sl/sla15.c
new file mode 100644
index 0000000..9a4650d
--- /dev/null
+++ b/ops/sl/sla15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla15) {
+ NEXT_OP(sp, a >> 15, x, y, o);
+}
diff --git a/ops/sl/sla16.c b/ops/sl/sla16.c
new file mode 100644
index 0000000..d7edbf9
--- /dev/null
+++ b/ops/sl/sla16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla16) {
+ NEXT_OP(sp, a >> 16, x, y, o);
+}
diff --git a/ops/sl/sla17.c b/ops/sl/sla17.c
new file mode 100644
index 0000000..55b73a6
--- /dev/null
+++ b/ops/sl/sla17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla17) {
+ NEXT_OP(sp, a >> 17, x, y, o);
+}
diff --git a/ops/sl/sla18.c b/ops/sl/sla18.c
new file mode 100644
index 0000000..7353b93
--- /dev/null
+++ b/ops/sl/sla18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla18) {
+ NEXT_OP(sp, a >> 18, x, y, o);
+}
diff --git a/ops/sl/sla19.c b/ops/sl/sla19.c
new file mode 100644
index 0000000..7dfde6a
--- /dev/null
+++ b/ops/sl/sla19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla19) {
+ NEXT_OP(sp, a >> 19, x, y, o);
+}
diff --git a/ops/sl/sla2.c b/ops/sl/sla2.c
new file mode 100644
index 0000000..4ceea7a
--- /dev/null
+++ b/ops/sl/sla2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla2) {
+ NEXT_OP(sp, a >> 2, x, y, o);
+}
diff --git a/ops/sl/sla20.c b/ops/sl/sla20.c
new file mode 100644
index 0000000..ef898e8
--- /dev/null
+++ b/ops/sl/sla20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla20) {
+ NEXT_OP(sp, a >> 20, x, y, o);
+}
diff --git a/ops/sl/sla21.c b/ops/sl/sla21.c
new file mode 100644
index 0000000..cbd5571
--- /dev/null
+++ b/ops/sl/sla21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla21) {
+ NEXT_OP(sp, a >> 21, x, y, o);
+}
diff --git a/ops/sl/sla22.c b/ops/sl/sla22.c
new file mode 100644
index 0000000..abad70f
--- /dev/null
+++ b/ops/sl/sla22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla22) {
+ NEXT_OP(sp, a >> 22, x, y, o);
+}
diff --git a/ops/sl/sla23.c b/ops/sl/sla23.c
new file mode 100644
index 0000000..15600e9
--- /dev/null
+++ b/ops/sl/sla23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla23) {
+ NEXT_OP(sp, a >> 23, x, y, o);
+}
diff --git a/ops/sl/sla24.c b/ops/sl/sla24.c
new file mode 100644
index 0000000..7296182
--- /dev/null
+++ b/ops/sl/sla24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla24) {
+ NEXT_OP(sp, a >> 24, x, y, o);
+}
diff --git a/ops/sl/sla25.c b/ops/sl/sla25.c
new file mode 100644
index 0000000..2687b95
--- /dev/null
+++ b/ops/sl/sla25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla25) {
+ NEXT_OP(sp, a >> 25, x, y, o);
+}
diff --git a/ops/sl/sla26.c b/ops/sl/sla26.c
new file mode 100644
index 0000000..dfb46c9
--- /dev/null
+++ b/ops/sl/sla26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla26) {
+ NEXT_OP(sp, a >> 26, x, y, o);
+}
diff --git a/ops/sl/sla27.c b/ops/sl/sla27.c
new file mode 100644
index 0000000..b90c218
--- /dev/null
+++ b/ops/sl/sla27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla27) {
+ NEXT_OP(sp, a >> 27, x, y, o);
+}
diff --git a/ops/sl/sla28.c b/ops/sl/sla28.c
new file mode 100644
index 0000000..5a84a55
--- /dev/null
+++ b/ops/sl/sla28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla28) {
+ NEXT_OP(sp, a >> 28, x, y, o);
+}
diff --git a/ops/sl/sla29.c b/ops/sl/sla29.c
new file mode 100644
index 0000000..c339fe6
--- /dev/null
+++ b/ops/sl/sla29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla29) {
+ NEXT_OP(sp, a >> 29, x, y, o);
+}
diff --git a/ops/sl/sla3.c b/ops/sl/sla3.c
new file mode 100644
index 0000000..14e8dd6
--- /dev/null
+++ b/ops/sl/sla3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla3) {
+ NEXT_OP(sp, a >> 3, x, y, o);
+}
diff --git a/ops/sl/sla30.c b/ops/sl/sla30.c
new file mode 100644
index 0000000..9bbace0
--- /dev/null
+++ b/ops/sl/sla30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla30) {
+ NEXT_OP(sp, a >> 30, x, y, o);
+}
diff --git a/ops/sl/sla31.c b/ops/sl/sla31.c
new file mode 100644
index 0000000..bf3ad7c
--- /dev/null
+++ b/ops/sl/sla31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla31) {
+ NEXT_OP(sp, a >> 31, x, y, o);
+}
diff --git a/ops/sl/sla32.c b/ops/sl/sla32.c
new file mode 100644
index 0000000..a2be59e
--- /dev/null
+++ b/ops/sl/sla32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla32) {
+ NEXT_OP(sp, a >> 32, x, y, o);
+}
diff --git a/ops/sl/sla33.c b/ops/sl/sla33.c
new file mode 100644
index 0000000..97d339d
--- /dev/null
+++ b/ops/sl/sla33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla33) {
+ NEXT_OP(sp, a >> 33, x, y, o);
+}
diff --git a/ops/sl/sla34.c b/ops/sl/sla34.c
new file mode 100644
index 0000000..228ae93
--- /dev/null
+++ b/ops/sl/sla34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla34) {
+ NEXT_OP(sp, a >> 34, x, y, o);
+}
diff --git a/ops/sl/sla35.c b/ops/sl/sla35.c
new file mode 100644
index 0000000..83c1e32
--- /dev/null
+++ b/ops/sl/sla35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla35) {
+ NEXT_OP(sp, a >> 35, x, y, o);
+}
diff --git a/ops/sl/sla36.c b/ops/sl/sla36.c
new file mode 100644
index 0000000..590aca2
--- /dev/null
+++ b/ops/sl/sla36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla36) {
+ NEXT_OP(sp, a >> 36, x, y, o);
+}
diff --git a/ops/sl/sla37.c b/ops/sl/sla37.c
new file mode 100644
index 0000000..b4a4657
--- /dev/null
+++ b/ops/sl/sla37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla37) {
+ NEXT_OP(sp, a >> 37, x, y, o);
+}
diff --git a/ops/sl/sla38.c b/ops/sl/sla38.c
new file mode 100644
index 0000000..9cfbe99
--- /dev/null
+++ b/ops/sl/sla38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla38) {
+ NEXT_OP(sp, a >> 38, x, y, o);
+}
diff --git a/ops/sl/sla39.c b/ops/sl/sla39.c
new file mode 100644
index 0000000..fef8f11
--- /dev/null
+++ b/ops/sl/sla39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla39) {
+ NEXT_OP(sp, a >> 39, x, y, o);
+}
diff --git a/ops/sl/sla4.c b/ops/sl/sla4.c
new file mode 100644
index 0000000..7f24272
--- /dev/null
+++ b/ops/sl/sla4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla4) {
+ NEXT_OP(sp, a >> 4, x, y, o);
+}
diff --git a/ops/sl/sla40.c b/ops/sl/sla40.c
new file mode 100644
index 0000000..191939e
--- /dev/null
+++ b/ops/sl/sla40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla40) {
+ NEXT_OP(sp, a >> 40, x, y, o);
+}
diff --git a/ops/sl/sla41.c b/ops/sl/sla41.c
new file mode 100644
index 0000000..a4dea35
--- /dev/null
+++ b/ops/sl/sla41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla41) {
+ NEXT_OP(sp, a >> 41, x, y, o);
+}
diff --git a/ops/sl/sla42.c b/ops/sl/sla42.c
new file mode 100644
index 0000000..b99929e
--- /dev/null
+++ b/ops/sl/sla42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla42) {
+ NEXT_OP(sp, a >> 42, x, y, o);
+}
diff --git a/ops/sl/sla43.c b/ops/sl/sla43.c
new file mode 100644
index 0000000..c53dad3
--- /dev/null
+++ b/ops/sl/sla43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla43) {
+ NEXT_OP(sp, a >> 43, x, y, o);
+}
diff --git a/ops/sl/sla44.c b/ops/sl/sla44.c
new file mode 100644
index 0000000..0de462b
--- /dev/null
+++ b/ops/sl/sla44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla44) {
+ NEXT_OP(sp, a >> 44, x, y, o);
+}
diff --git a/ops/sl/sla45.c b/ops/sl/sla45.c
new file mode 100644
index 0000000..861f8e0
--- /dev/null
+++ b/ops/sl/sla45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla45) {
+ NEXT_OP(sp, a >> 45, x, y, o);
+}
diff --git a/ops/sl/sla46.c b/ops/sl/sla46.c
new file mode 100644
index 0000000..27fbf26
--- /dev/null
+++ b/ops/sl/sla46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla46) {
+ NEXT_OP(sp, a >> 46, x, y, o);
+}
diff --git a/ops/sl/sla47.c b/ops/sl/sla47.c
new file mode 100644
index 0000000..77c6609
--- /dev/null
+++ b/ops/sl/sla47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla47) {
+ NEXT_OP(sp, a >> 47, x, y, o);
+}
diff --git a/ops/sl/sla48.c b/ops/sl/sla48.c
new file mode 100644
index 0000000..418b5e5
--- /dev/null
+++ b/ops/sl/sla48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla48) {
+ NEXT_OP(sp, a >> 48, x, y, o);
+}
diff --git a/ops/sl/sla49.c b/ops/sl/sla49.c
new file mode 100644
index 0000000..0f41522
--- /dev/null
+++ b/ops/sl/sla49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla49) {
+ NEXT_OP(sp, a >> 49, x, y, o);
+}
diff --git a/ops/sl/sla5.c b/ops/sl/sla5.c
new file mode 100644
index 0000000..736d039
--- /dev/null
+++ b/ops/sl/sla5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla5) {
+ NEXT_OP(sp, a >> 5, x, y, o);
+}
diff --git a/ops/sl/sla50.c b/ops/sl/sla50.c
new file mode 100644
index 0000000..1968999
--- /dev/null
+++ b/ops/sl/sla50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla50) {
+ NEXT_OP(sp, a >> 50, x, y, o);
+}
diff --git a/ops/sl/sla51.c b/ops/sl/sla51.c
new file mode 100644
index 0000000..9767428
--- /dev/null
+++ b/ops/sl/sla51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla51) {
+ NEXT_OP(sp, a >> 51, x, y, o);
+}
diff --git a/ops/sl/sla52.c b/ops/sl/sla52.c
new file mode 100644
index 0000000..f5f5a17
--- /dev/null
+++ b/ops/sl/sla52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla52) {
+ NEXT_OP(sp, a >> 52, x, y, o);
+}
diff --git a/ops/sl/sla53.c b/ops/sl/sla53.c
new file mode 100644
index 0000000..012a408
--- /dev/null
+++ b/ops/sl/sla53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla53) {
+ NEXT_OP(sp, a >> 53, x, y, o);
+}
diff --git a/ops/sl/sla54.c b/ops/sl/sla54.c
new file mode 100644
index 0000000..e0031a1
--- /dev/null
+++ b/ops/sl/sla54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla54) {
+ NEXT_OP(sp, a >> 54, x, y, o);
+}
diff --git a/ops/sl/sla55.c b/ops/sl/sla55.c
new file mode 100644
index 0000000..7bcc07a
--- /dev/null
+++ b/ops/sl/sla55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla55) {
+ NEXT_OP(sp, a >> 55, x, y, o);
+}
diff --git a/ops/sl/sla56.c b/ops/sl/sla56.c
new file mode 100644
index 0000000..8024cf0
--- /dev/null
+++ b/ops/sl/sla56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla56) {
+ NEXT_OP(sp, a >> 56, x, y, o);
+}
diff --git a/ops/sl/sla57.c b/ops/sl/sla57.c
new file mode 100644
index 0000000..dab13d7
--- /dev/null
+++ b/ops/sl/sla57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla57) {
+ NEXT_OP(sp, a >> 57, x, y, o);
+}
diff --git a/ops/sl/sla58.c b/ops/sl/sla58.c
new file mode 100644
index 0000000..1f4e05c
--- /dev/null
+++ b/ops/sl/sla58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla58) {
+ NEXT_OP(sp, a >> 58, x, y, o);
+}
diff --git a/ops/sl/sla59.c b/ops/sl/sla59.c
new file mode 100644
index 0000000..5ad5ca8
--- /dev/null
+++ b/ops/sl/sla59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla59) {
+ NEXT_OP(sp, a >> 59, x, y, o);
+}
diff --git a/ops/sl/sla6.c b/ops/sl/sla6.c
new file mode 100644
index 0000000..5569d44
--- /dev/null
+++ b/ops/sl/sla6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla6) {
+ NEXT_OP(sp, a >> 6, x, y, o);
+}
diff --git a/ops/sl/sla60.c b/ops/sl/sla60.c
new file mode 100644
index 0000000..433125b
--- /dev/null
+++ b/ops/sl/sla60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla60) {
+ NEXT_OP(sp, a >> 60, x, y, o);
+}
diff --git a/ops/sl/sla61.c b/ops/sl/sla61.c
new file mode 100644
index 0000000..743cc4a
--- /dev/null
+++ b/ops/sl/sla61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla61) {
+ NEXT_OP(sp, a >> 61, x, y, o);
+}
diff --git a/ops/sl/sla62.c b/ops/sl/sla62.c
new file mode 100644
index 0000000..6830178
--- /dev/null
+++ b/ops/sl/sla62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla62) {
+ NEXT_OP(sp, a >> 62, x, y, o);
+}
diff --git a/ops/sl/sla63.c b/ops/sl/sla63.c
new file mode 100644
index 0000000..1befe2a
--- /dev/null
+++ b/ops/sl/sla63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla63) {
+ NEXT_OP(sp, a >> 63, x, y, o);
+}
diff --git a/ops/sl/sla7.c b/ops/sl/sla7.c
new file mode 100644
index 0000000..d9742a8
--- /dev/null
+++ b/ops/sl/sla7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla7) {
+ NEXT_OP(sp, a >> 7, x, y, o);
+}
diff --git a/ops/sl/sla8.c b/ops/sl/sla8.c
new file mode 100644
index 0000000..efad283
--- /dev/null
+++ b/ops/sl/sla8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla8) {
+ NEXT_OP(sp, a >> 8, x, y, o);
+}
diff --git a/ops/sl/sla9.c b/ops/sl/sla9.c
new file mode 100644
index 0000000..db97adb
--- /dev/null
+++ b/ops/sl/sla9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sla9) {
+ NEXT_OP(sp, a >> 9, x, y, o);
+}
diff --git a/ops/sl/slo0.c b/ops/sl/slo0.c
new file mode 100644
index 0000000..ed2f5c5
--- /dev/null
+++ b/ops/sl/slo0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo0) {
+ NEXT_OP(sp, a, x, y, o << 0);
+}
diff --git a/ops/sl/slo1.c b/ops/sl/slo1.c
new file mode 100644
index 0000000..1b5606a
--- /dev/null
+++ b/ops/sl/slo1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo1) {
+ NEXT_OP(sp, a, x, y, o << 1);
+}
diff --git a/ops/sl/slo10.c b/ops/sl/slo10.c
new file mode 100644
index 0000000..d54308d
--- /dev/null
+++ b/ops/sl/slo10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo10) {
+ NEXT_OP(sp, a, x, y, o << 10);
+}
diff --git a/ops/sl/slo11.c b/ops/sl/slo11.c
new file mode 100644
index 0000000..639bc28
--- /dev/null
+++ b/ops/sl/slo11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo11) {
+ NEXT_OP(sp, a, x, y, o << 11);
+}
diff --git a/ops/sl/slo12.c b/ops/sl/slo12.c
new file mode 100644
index 0000000..df32230
--- /dev/null
+++ b/ops/sl/slo12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo12) {
+ NEXT_OP(sp, a, x, y, o << 12);
+}
diff --git a/ops/sl/slo13.c b/ops/sl/slo13.c
new file mode 100644
index 0000000..bfc50e4
--- /dev/null
+++ b/ops/sl/slo13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo13) {
+ NEXT_OP(sp, a, x, y, o << 13);
+}
diff --git a/ops/sl/slo14.c b/ops/sl/slo14.c
new file mode 100644
index 0000000..ff5fca9
--- /dev/null
+++ b/ops/sl/slo14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo14) {
+ NEXT_OP(sp, a, x, y, o << 14);
+}
diff --git a/ops/sl/slo15.c b/ops/sl/slo15.c
new file mode 100644
index 0000000..c732bc8
--- /dev/null
+++ b/ops/sl/slo15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo15) {
+ NEXT_OP(sp, a, x, y, o << 15);
+}
diff --git a/ops/sl/slo16.c b/ops/sl/slo16.c
new file mode 100644
index 0000000..8065332
--- /dev/null
+++ b/ops/sl/slo16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo16) {
+ NEXT_OP(sp, a, x, y, o << 16);
+}
diff --git a/ops/sl/slo17.c b/ops/sl/slo17.c
new file mode 100644
index 0000000..3f42a4a
--- /dev/null
+++ b/ops/sl/slo17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo17) {
+ NEXT_OP(sp, a, x, y, o << 17);
+}
diff --git a/ops/sl/slo18.c b/ops/sl/slo18.c
new file mode 100644
index 0000000..993df92
--- /dev/null
+++ b/ops/sl/slo18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo18) {
+ NEXT_OP(sp, a, x, y, o << 18);
+}
diff --git a/ops/sl/slo19.c b/ops/sl/slo19.c
new file mode 100644
index 0000000..c1c8782
--- /dev/null
+++ b/ops/sl/slo19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo19) {
+ NEXT_OP(sp, a, x, y, o << 19);
+}
diff --git a/ops/sl/slo2.c b/ops/sl/slo2.c
new file mode 100644
index 0000000..3301be6
--- /dev/null
+++ b/ops/sl/slo2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo2) {
+ NEXT_OP(sp, a, x, y, o << 2);
+}
diff --git a/ops/sl/slo20.c b/ops/sl/slo20.c
new file mode 100644
index 0000000..bccfe7f
--- /dev/null
+++ b/ops/sl/slo20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo20) {
+ NEXT_OP(sp, a, x, y, o << 20);
+}
diff --git a/ops/sl/slo21.c b/ops/sl/slo21.c
new file mode 100644
index 0000000..c6affd7
--- /dev/null
+++ b/ops/sl/slo21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo21) {
+ NEXT_OP(sp, a, x, y, o << 21);
+}
diff --git a/ops/sl/slo22.c b/ops/sl/slo22.c
new file mode 100644
index 0000000..e8b90f3
--- /dev/null
+++ b/ops/sl/slo22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo22) {
+ NEXT_OP(sp, a, x, y, o << 22);
+}
diff --git a/ops/sl/slo23.c b/ops/sl/slo23.c
new file mode 100644
index 0000000..9933fb8
--- /dev/null
+++ b/ops/sl/slo23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo23) {
+ NEXT_OP(sp, a, x, y, o << 23);
+}
diff --git a/ops/sl/slo24.c b/ops/sl/slo24.c
new file mode 100644
index 0000000..a5f1431
--- /dev/null
+++ b/ops/sl/slo24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo24) {
+ NEXT_OP(sp, a, x, y, o << 24);
+}
diff --git a/ops/sl/slo25.c b/ops/sl/slo25.c
new file mode 100644
index 0000000..41da525
--- /dev/null
+++ b/ops/sl/slo25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo25) {
+ NEXT_OP(sp, a, x, y, o << 25);
+}
diff --git a/ops/sl/slo26.c b/ops/sl/slo26.c
new file mode 100644
index 0000000..9a68556
--- /dev/null
+++ b/ops/sl/slo26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo26) {
+ NEXT_OP(sp, a, x, y, o << 26);
+}
diff --git a/ops/sl/slo27.c b/ops/sl/slo27.c
new file mode 100644
index 0000000..a5fb342
--- /dev/null
+++ b/ops/sl/slo27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo27) {
+ NEXT_OP(sp, a, x, y, o << 27);
+}
diff --git a/ops/sl/slo28.c b/ops/sl/slo28.c
new file mode 100644
index 0000000..70e075a
--- /dev/null
+++ b/ops/sl/slo28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo28) {
+ NEXT_OP(sp, a, x, y, o << 28);
+}
diff --git a/ops/sl/slo29.c b/ops/sl/slo29.c
new file mode 100644
index 0000000..b2c093c
--- /dev/null
+++ b/ops/sl/slo29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo29) {
+ NEXT_OP(sp, a, x, y, o << 29);
+}
diff --git a/ops/sl/slo3.c b/ops/sl/slo3.c
new file mode 100644
index 0000000..774f5a1
--- /dev/null
+++ b/ops/sl/slo3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo3) {
+ NEXT_OP(sp, a, x, y, o << 3);
+}
diff --git a/ops/sl/slo30.c b/ops/sl/slo30.c
new file mode 100644
index 0000000..c93cac2
--- /dev/null
+++ b/ops/sl/slo30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo30) {
+ NEXT_OP(sp, a, x, y, o << 30);
+}
diff --git a/ops/sl/slo31.c b/ops/sl/slo31.c
new file mode 100644
index 0000000..5d41dc7
--- /dev/null
+++ b/ops/sl/slo31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo31) {
+ NEXT_OP(sp, a, x, y, o << 31);
+}
diff --git a/ops/sl/slo32.c b/ops/sl/slo32.c
new file mode 100644
index 0000000..3932e1b
--- /dev/null
+++ b/ops/sl/slo32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo32) {
+ NEXT_OP(sp, a, x, y, o << 32);
+}
diff --git a/ops/sl/slo33.c b/ops/sl/slo33.c
new file mode 100644
index 0000000..328c844
--- /dev/null
+++ b/ops/sl/slo33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo33) {
+ NEXT_OP(sp, a, x, y, o << 33);
+}
diff --git a/ops/sl/slo34.c b/ops/sl/slo34.c
new file mode 100644
index 0000000..a0664c5
--- /dev/null
+++ b/ops/sl/slo34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo34) {
+ NEXT_OP(sp, a, x, y, o << 34);
+}
diff --git a/ops/sl/slo35.c b/ops/sl/slo35.c
new file mode 100644
index 0000000..d0d8706
--- /dev/null
+++ b/ops/sl/slo35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo35) {
+ NEXT_OP(sp, a, x, y, o << 35);
+}
diff --git a/ops/sl/slo36.c b/ops/sl/slo36.c
new file mode 100644
index 0000000..a3ed6a5
--- /dev/null
+++ b/ops/sl/slo36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo36) {
+ NEXT_OP(sp, a, x, y, o << 36);
+}
diff --git a/ops/sl/slo37.c b/ops/sl/slo37.c
new file mode 100644
index 0000000..0771073
--- /dev/null
+++ b/ops/sl/slo37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo37) {
+ NEXT_OP(sp, a, x, y, o << 37);
+}
diff --git a/ops/sl/slo38.c b/ops/sl/slo38.c
new file mode 100644
index 0000000..ad3aed0
--- /dev/null
+++ b/ops/sl/slo38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo38) {
+ NEXT_OP(sp, a, x, y, o << 38);
+}
diff --git a/ops/sl/slo39.c b/ops/sl/slo39.c
new file mode 100644
index 0000000..0339c84
--- /dev/null
+++ b/ops/sl/slo39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo39) {
+ NEXT_OP(sp, a, x, y, o << 39);
+}
diff --git a/ops/sl/slo4.c b/ops/sl/slo4.c
new file mode 100644
index 0000000..bfad51f
--- /dev/null
+++ b/ops/sl/slo4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo4) {
+ NEXT_OP(sp, a, x, y, o << 4);
+}
diff --git a/ops/sl/slo40.c b/ops/sl/slo40.c
new file mode 100644
index 0000000..ee5b254
--- /dev/null
+++ b/ops/sl/slo40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo40) {
+ NEXT_OP(sp, a, x, y, o << 40);
+}
diff --git a/ops/sl/slo41.c b/ops/sl/slo41.c
new file mode 100644
index 0000000..5bd9ec8
--- /dev/null
+++ b/ops/sl/slo41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo41) {
+ NEXT_OP(sp, a, x, y, o << 41);
+}
diff --git a/ops/sl/slo42.c b/ops/sl/slo42.c
new file mode 100644
index 0000000..397cd96
--- /dev/null
+++ b/ops/sl/slo42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo42) {
+ NEXT_OP(sp, a, x, y, o << 42);
+}
diff --git a/ops/sl/slo43.c b/ops/sl/slo43.c
new file mode 100644
index 0000000..25a446a
--- /dev/null
+++ b/ops/sl/slo43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo43) {
+ NEXT_OP(sp, a, x, y, o << 43);
+}
diff --git a/ops/sl/slo44.c b/ops/sl/slo44.c
new file mode 100644
index 0000000..8e2cb09
--- /dev/null
+++ b/ops/sl/slo44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo44) {
+ NEXT_OP(sp, a, x, y, o << 44);
+}
diff --git a/ops/sl/slo45.c b/ops/sl/slo45.c
new file mode 100644
index 0000000..cc8fd70
--- /dev/null
+++ b/ops/sl/slo45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo45) {
+ NEXT_OP(sp, a, x, y, o << 45);
+}
diff --git a/ops/sl/slo46.c b/ops/sl/slo46.c
new file mode 100644
index 0000000..d9e16b5
--- /dev/null
+++ b/ops/sl/slo46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo46) {
+ NEXT_OP(sp, a, x, y, o << 46);
+}
diff --git a/ops/sl/slo47.c b/ops/sl/slo47.c
new file mode 100644
index 0000000..03c83cc
--- /dev/null
+++ b/ops/sl/slo47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo47) {
+ NEXT_OP(sp, a, x, y, o << 47);
+}
diff --git a/ops/sl/slo48.c b/ops/sl/slo48.c
new file mode 100644
index 0000000..eb08f53
--- /dev/null
+++ b/ops/sl/slo48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo48) {
+ NEXT_OP(sp, a, x, y, o << 48);
+}
diff --git a/ops/sl/slo49.c b/ops/sl/slo49.c
new file mode 100644
index 0000000..2c57869
--- /dev/null
+++ b/ops/sl/slo49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo49) {
+ NEXT_OP(sp, a, x, y, o << 49);
+}
diff --git a/ops/sl/slo5.c b/ops/sl/slo5.c
new file mode 100644
index 0000000..64ea158
--- /dev/null
+++ b/ops/sl/slo5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo5) {
+ NEXT_OP(sp, a, x, y, o << 5);
+}
diff --git a/ops/sl/slo50.c b/ops/sl/slo50.c
new file mode 100644
index 0000000..cf0d617
--- /dev/null
+++ b/ops/sl/slo50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo50) {
+ NEXT_OP(sp, a, x, y, o << 50);
+}
diff --git a/ops/sl/slo51.c b/ops/sl/slo51.c
new file mode 100644
index 0000000..ce47f2e
--- /dev/null
+++ b/ops/sl/slo51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo51) {
+ NEXT_OP(sp, a, x, y, o << 51);
+}
diff --git a/ops/sl/slo52.c b/ops/sl/slo52.c
new file mode 100644
index 0000000..37a2905
--- /dev/null
+++ b/ops/sl/slo52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo52) {
+ NEXT_OP(sp, a, x, y, o << 52);
+}
diff --git a/ops/sl/slo53.c b/ops/sl/slo53.c
new file mode 100644
index 0000000..18c07d3
--- /dev/null
+++ b/ops/sl/slo53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo53) {
+ NEXT_OP(sp, a, x, y, o << 53);
+}
diff --git a/ops/sl/slo54.c b/ops/sl/slo54.c
new file mode 100644
index 0000000..22009f4
--- /dev/null
+++ b/ops/sl/slo54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo54) {
+ NEXT_OP(sp, a, x, y, o << 54);
+}
diff --git a/ops/sl/slo55.c b/ops/sl/slo55.c
new file mode 100644
index 0000000..edf9815
--- /dev/null
+++ b/ops/sl/slo55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo55) {
+ NEXT_OP(sp, a, x, y, o << 55);
+}
diff --git a/ops/sl/slo56.c b/ops/sl/slo56.c
new file mode 100644
index 0000000..a1ae722
--- /dev/null
+++ b/ops/sl/slo56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo56) {
+ NEXT_OP(sp, a, x, y, o << 56);
+}
diff --git a/ops/sl/slo57.c b/ops/sl/slo57.c
new file mode 100644
index 0000000..93d17f1
--- /dev/null
+++ b/ops/sl/slo57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo57) {
+ NEXT_OP(sp, a, x, y, o << 57);
+}
diff --git a/ops/sl/slo58.c b/ops/sl/slo58.c
new file mode 100644
index 0000000..67615e5
--- /dev/null
+++ b/ops/sl/slo58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo58) {
+ NEXT_OP(sp, a, x, y, o << 58);
+}
diff --git a/ops/sl/slo59.c b/ops/sl/slo59.c
new file mode 100644
index 0000000..5ee772c
--- /dev/null
+++ b/ops/sl/slo59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo59) {
+ NEXT_OP(sp, a, x, y, o << 59);
+}
diff --git a/ops/sl/slo6.c b/ops/sl/slo6.c
new file mode 100644
index 0000000..a559c54
--- /dev/null
+++ b/ops/sl/slo6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo6) {
+ NEXT_OP(sp, a, x, y, o << 6);
+}
diff --git a/ops/sl/slo60.c b/ops/sl/slo60.c
new file mode 100644
index 0000000..4f910a3
--- /dev/null
+++ b/ops/sl/slo60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo60) {
+ NEXT_OP(sp, a, x, y, o << 60);
+}
diff --git a/ops/sl/slo61.c b/ops/sl/slo61.c
new file mode 100644
index 0000000..b6ff7dd
--- /dev/null
+++ b/ops/sl/slo61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo61) {
+ NEXT_OP(sp, a, x, y, o << 61);
+}
diff --git a/ops/sl/slo62.c b/ops/sl/slo62.c
new file mode 100644
index 0000000..bdb1429
--- /dev/null
+++ b/ops/sl/slo62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo62) {
+ NEXT_OP(sp, a, x, y, o << 62);
+}
diff --git a/ops/sl/slo63.c b/ops/sl/slo63.c
new file mode 100644
index 0000000..eeed117
--- /dev/null
+++ b/ops/sl/slo63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo63) {
+ NEXT_OP(sp, a, x, y, o << 63);
+}
diff --git a/ops/sl/slo7.c b/ops/sl/slo7.c
new file mode 100644
index 0000000..261d357
--- /dev/null
+++ b/ops/sl/slo7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo7) {
+ NEXT_OP(sp, a, x, y, o << 7);
+}
diff --git a/ops/sl/slo8.c b/ops/sl/slo8.c
new file mode 100644
index 0000000..8d2ba3a
--- /dev/null
+++ b/ops/sl/slo8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo8) {
+ NEXT_OP(sp, a, x, y, o << 8);
+}
diff --git a/ops/sl/slo9.c b/ops/sl/slo9.c
new file mode 100644
index 0000000..1d6bdc0
--- /dev/null
+++ b/ops/sl/slo9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slo9) {
+ NEXT_OP(sp, a, x, y, o << 9);
+}
diff --git a/ops/sl/slx0.c b/ops/sl/slx0.c
new file mode 100644
index 0000000..22697d6
--- /dev/null
+++ b/ops/sl/slx0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx0) {
+ NEXT_OP(sp, a, x << 0, y, o);
+}
diff --git a/ops/sl/slx1.c b/ops/sl/slx1.c
new file mode 100644
index 0000000..2c22527
--- /dev/null
+++ b/ops/sl/slx1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx1) {
+ NEXT_OP(sp, a, x << 1, y, o);
+}
diff --git a/ops/sl/slx10.c b/ops/sl/slx10.c
new file mode 100644
index 0000000..321a365
--- /dev/null
+++ b/ops/sl/slx10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx10) {
+ NEXT_OP(sp, a, x << 10, y, o);
+}
diff --git a/ops/sl/slx11.c b/ops/sl/slx11.c
new file mode 100644
index 0000000..e808a51
--- /dev/null
+++ b/ops/sl/slx11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx11) {
+ NEXT_OP(sp, a, x << 11, y, o);
+}
diff --git a/ops/sl/slx12.c b/ops/sl/slx12.c
new file mode 100644
index 0000000..4b7bf32
--- /dev/null
+++ b/ops/sl/slx12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx12) {
+ NEXT_OP(sp, a, x << 12, y, o);
+}
diff --git a/ops/sl/slx13.c b/ops/sl/slx13.c
new file mode 100644
index 0000000..e3a9095
--- /dev/null
+++ b/ops/sl/slx13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx13) {
+ NEXT_OP(sp, a, x << 13, y, o);
+}
diff --git a/ops/sl/slx14.c b/ops/sl/slx14.c
new file mode 100644
index 0000000..f7997f3
--- /dev/null
+++ b/ops/sl/slx14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx14) {
+ NEXT_OP(sp, a, x << 14, y, o);
+}
diff --git a/ops/sl/slx15.c b/ops/sl/slx15.c
new file mode 100644
index 0000000..3dfce20
--- /dev/null
+++ b/ops/sl/slx15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx15) {
+ NEXT_OP(sp, a, x << 15, y, o);
+}
diff --git a/ops/sl/slx16.c b/ops/sl/slx16.c
new file mode 100644
index 0000000..08a77e5
--- /dev/null
+++ b/ops/sl/slx16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx16) {
+ NEXT_OP(sp, a, x << 16, y, o);
+}
diff --git a/ops/sl/slx17.c b/ops/sl/slx17.c
new file mode 100644
index 0000000..c8b16a5
--- /dev/null
+++ b/ops/sl/slx17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx17) {
+ NEXT_OP(sp, a, x << 17, y, o);
+}
diff --git a/ops/sl/slx18.c b/ops/sl/slx18.c
new file mode 100644
index 0000000..dd4707f
--- /dev/null
+++ b/ops/sl/slx18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx18) {
+ NEXT_OP(sp, a, x << 18, y, o);
+}
diff --git a/ops/sl/slx19.c b/ops/sl/slx19.c
new file mode 100644
index 0000000..7d45d5a
--- /dev/null
+++ b/ops/sl/slx19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx19) {
+ NEXT_OP(sp, a, x << 19, y, o);
+}
diff --git a/ops/sl/slx2.c b/ops/sl/slx2.c
new file mode 100644
index 0000000..60cee79
--- /dev/null
+++ b/ops/sl/slx2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx2) {
+ NEXT_OP(sp, a, x << 2, y, o);
+}
diff --git a/ops/sl/slx20.c b/ops/sl/slx20.c
new file mode 100644
index 0000000..75b6a62
--- /dev/null
+++ b/ops/sl/slx20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx20) {
+ NEXT_OP(sp, a, x << 20, y, o);
+}
diff --git a/ops/sl/slx21.c b/ops/sl/slx21.c
new file mode 100644
index 0000000..8b66b67
--- /dev/null
+++ b/ops/sl/slx21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx21) {
+ NEXT_OP(sp, a, x << 21, y, o);
+}
diff --git a/ops/sl/slx22.c b/ops/sl/slx22.c
new file mode 100644
index 0000000..595dbdc
--- /dev/null
+++ b/ops/sl/slx22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx22) {
+ NEXT_OP(sp, a, x << 22, y, o);
+}
diff --git a/ops/sl/slx23.c b/ops/sl/slx23.c
new file mode 100644
index 0000000..aa9eb82
--- /dev/null
+++ b/ops/sl/slx23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx23) {
+ NEXT_OP(sp, a, x << 23, y, o);
+}
diff --git a/ops/sl/slx24.c b/ops/sl/slx24.c
new file mode 100644
index 0000000..99b841f
--- /dev/null
+++ b/ops/sl/slx24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx24) {
+ NEXT_OP(sp, a, x << 24, y, o);
+}
diff --git a/ops/sl/slx25.c b/ops/sl/slx25.c
new file mode 100644
index 0000000..b508fd5
--- /dev/null
+++ b/ops/sl/slx25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx25) {
+ NEXT_OP(sp, a, x << 25, y, o);
+}
diff --git a/ops/sl/slx26.c b/ops/sl/slx26.c
new file mode 100644
index 0000000..09ac05c
--- /dev/null
+++ b/ops/sl/slx26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx26) {
+ NEXT_OP(sp, a, x << 26, y, o);
+}
diff --git a/ops/sl/slx27.c b/ops/sl/slx27.c
new file mode 100644
index 0000000..ec5834a
--- /dev/null
+++ b/ops/sl/slx27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx27) {
+ NEXT_OP(sp, a, x << 27, y, o);
+}
diff --git a/ops/sl/slx28.c b/ops/sl/slx28.c
new file mode 100644
index 0000000..3b1a982
--- /dev/null
+++ b/ops/sl/slx28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx28) {
+ NEXT_OP(sp, a, x << 28, y, o);
+}
diff --git a/ops/sl/slx29.c b/ops/sl/slx29.c
new file mode 100644
index 0000000..d349d0b
--- /dev/null
+++ b/ops/sl/slx29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx29) {
+ NEXT_OP(sp, a, x << 29, y, o);
+}
diff --git a/ops/sl/slx3.c b/ops/sl/slx3.c
new file mode 100644
index 0000000..8015e74
--- /dev/null
+++ b/ops/sl/slx3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx3) {
+ NEXT_OP(sp, a, x << 3, y, o);
+}
diff --git a/ops/sl/slx30.c b/ops/sl/slx30.c
new file mode 100644
index 0000000..2db6a1b
--- /dev/null
+++ b/ops/sl/slx30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx30) {
+ NEXT_OP(sp, a, x << 30, y, o);
+}
diff --git a/ops/sl/slx31.c b/ops/sl/slx31.c
new file mode 100644
index 0000000..84e5064
--- /dev/null
+++ b/ops/sl/slx31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx31) {
+ NEXT_OP(sp, a, x << 31, y, o);
+}
diff --git a/ops/sl/slx32.c b/ops/sl/slx32.c
new file mode 100644
index 0000000..40af447
--- /dev/null
+++ b/ops/sl/slx32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx32) {
+ NEXT_OP(sp, a, x << 32, y, o);
+}
diff --git a/ops/sl/slx33.c b/ops/sl/slx33.c
new file mode 100644
index 0000000..1ea890b
--- /dev/null
+++ b/ops/sl/slx33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx33) {
+ NEXT_OP(sp, a, x << 33, y, o);
+}
diff --git a/ops/sl/slx34.c b/ops/sl/slx34.c
new file mode 100644
index 0000000..42141b9
--- /dev/null
+++ b/ops/sl/slx34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx34) {
+ NEXT_OP(sp, a, x << 34, y, o);
+}
diff --git a/ops/sl/slx35.c b/ops/sl/slx35.c
new file mode 100644
index 0000000..cf02efe
--- /dev/null
+++ b/ops/sl/slx35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx35) {
+ NEXT_OP(sp, a, x << 35, y, o);
+}
diff --git a/ops/sl/slx36.c b/ops/sl/slx36.c
new file mode 100644
index 0000000..be73b6b
--- /dev/null
+++ b/ops/sl/slx36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx36) {
+ NEXT_OP(sp, a, x << 36, y, o);
+}
diff --git a/ops/sl/slx37.c b/ops/sl/slx37.c
new file mode 100644
index 0000000..a48c657
--- /dev/null
+++ b/ops/sl/slx37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx37) {
+ NEXT_OP(sp, a, x << 37, y, o);
+}
diff --git a/ops/sl/slx38.c b/ops/sl/slx38.c
new file mode 100644
index 0000000..0205c30
--- /dev/null
+++ b/ops/sl/slx38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx38) {
+ NEXT_OP(sp, a, x << 38, y, o);
+}
diff --git a/ops/sl/slx39.c b/ops/sl/slx39.c
new file mode 100644
index 0000000..635634d
--- /dev/null
+++ b/ops/sl/slx39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx39) {
+ NEXT_OP(sp, a, x << 39, y, o);
+}
diff --git a/ops/sl/slx4.c b/ops/sl/slx4.c
new file mode 100644
index 0000000..c094a61
--- /dev/null
+++ b/ops/sl/slx4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx4) {
+ NEXT_OP(sp, a, x << 4, y, o);
+}
diff --git a/ops/sl/slx40.c b/ops/sl/slx40.c
new file mode 100644
index 0000000..f2ce2f7
--- /dev/null
+++ b/ops/sl/slx40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx40) {
+ NEXT_OP(sp, a, x << 40, y, o);
+}
diff --git a/ops/sl/slx41.c b/ops/sl/slx41.c
new file mode 100644
index 0000000..a068373
--- /dev/null
+++ b/ops/sl/slx41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx41) {
+ NEXT_OP(sp, a, x << 41, y, o);
+}
diff --git a/ops/sl/slx42.c b/ops/sl/slx42.c
new file mode 100644
index 0000000..f204221
--- /dev/null
+++ b/ops/sl/slx42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx42) {
+ NEXT_OP(sp, a, x << 42, y, o);
+}
diff --git a/ops/sl/slx43.c b/ops/sl/slx43.c
new file mode 100644
index 0000000..483ba24
--- /dev/null
+++ b/ops/sl/slx43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx43) {
+ NEXT_OP(sp, a, x << 43, y, o);
+}
diff --git a/ops/sl/slx44.c b/ops/sl/slx44.c
new file mode 100644
index 0000000..2311d36
--- /dev/null
+++ b/ops/sl/slx44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx44) {
+ NEXT_OP(sp, a, x << 44, y, o);
+}
diff --git a/ops/sl/slx45.c b/ops/sl/slx45.c
new file mode 100644
index 0000000..2648527
--- /dev/null
+++ b/ops/sl/slx45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx45) {
+ NEXT_OP(sp, a, x << 45, y, o);
+}
diff --git a/ops/sl/slx46.c b/ops/sl/slx46.c
new file mode 100644
index 0000000..cbc9db3
--- /dev/null
+++ b/ops/sl/slx46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx46) {
+ NEXT_OP(sp, a, x << 46, y, o);
+}
diff --git a/ops/sl/slx47.c b/ops/sl/slx47.c
new file mode 100644
index 0000000..0f46552
--- /dev/null
+++ b/ops/sl/slx47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx47) {
+ NEXT_OP(sp, a, x << 47, y, o);
+}
diff --git a/ops/sl/slx48.c b/ops/sl/slx48.c
new file mode 100644
index 0000000..9204934
--- /dev/null
+++ b/ops/sl/slx48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx48) {
+ NEXT_OP(sp, a, x << 48, y, o);
+}
diff --git a/ops/sl/slx49.c b/ops/sl/slx49.c
new file mode 100644
index 0000000..0d6ac1b
--- /dev/null
+++ b/ops/sl/slx49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx49) {
+ NEXT_OP(sp, a, x << 49, y, o);
+}
diff --git a/ops/sl/slx5.c b/ops/sl/slx5.c
new file mode 100644
index 0000000..bafe265
--- /dev/null
+++ b/ops/sl/slx5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx5) {
+ NEXT_OP(sp, a, x << 5, y, o);
+}
diff --git a/ops/sl/slx50.c b/ops/sl/slx50.c
new file mode 100644
index 0000000..5d8f3cd
--- /dev/null
+++ b/ops/sl/slx50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx50) {
+ NEXT_OP(sp, a, x << 50, y, o);
+}
diff --git a/ops/sl/slx51.c b/ops/sl/slx51.c
new file mode 100644
index 0000000..ccefe1c
--- /dev/null
+++ b/ops/sl/slx51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx51) {
+ NEXT_OP(sp, a, x << 51, y, o);
+}
diff --git a/ops/sl/slx52.c b/ops/sl/slx52.c
new file mode 100644
index 0000000..094b90d
--- /dev/null
+++ b/ops/sl/slx52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx52) {
+ NEXT_OP(sp, a, x << 52, y, o);
+}
diff --git a/ops/sl/slx53.c b/ops/sl/slx53.c
new file mode 100644
index 0000000..5fbffed
--- /dev/null
+++ b/ops/sl/slx53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx53) {
+ NEXT_OP(sp, a, x << 53, y, o);
+}
diff --git a/ops/sl/slx54.c b/ops/sl/slx54.c
new file mode 100644
index 0000000..1e658cd
--- /dev/null
+++ b/ops/sl/slx54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx54) {
+ NEXT_OP(sp, a, x << 54, y, o);
+}
diff --git a/ops/sl/slx55.c b/ops/sl/slx55.c
new file mode 100644
index 0000000..e975264
--- /dev/null
+++ b/ops/sl/slx55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx55) {
+ NEXT_OP(sp, a, x << 55, y, o);
+}
diff --git a/ops/sl/slx56.c b/ops/sl/slx56.c
new file mode 100644
index 0000000..3bff93b
--- /dev/null
+++ b/ops/sl/slx56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx56) {
+ NEXT_OP(sp, a, x << 56, y, o);
+}
diff --git a/ops/sl/slx57.c b/ops/sl/slx57.c
new file mode 100644
index 0000000..a046ccb
--- /dev/null
+++ b/ops/sl/slx57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx57) {
+ NEXT_OP(sp, a, x << 57, y, o);
+}
diff --git a/ops/sl/slx58.c b/ops/sl/slx58.c
new file mode 100644
index 0000000..b5adda8
--- /dev/null
+++ b/ops/sl/slx58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx58) {
+ NEXT_OP(sp, a, x << 58, y, o);
+}
diff --git a/ops/sl/slx59.c b/ops/sl/slx59.c
new file mode 100644
index 0000000..f58a7bb
--- /dev/null
+++ b/ops/sl/slx59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx59) {
+ NEXT_OP(sp, a, x << 59, y, o);
+}
diff --git a/ops/sl/slx6.c b/ops/sl/slx6.c
new file mode 100644
index 0000000..4dff276
--- /dev/null
+++ b/ops/sl/slx6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx6) {
+ NEXT_OP(sp, a, x << 6, y, o);
+}
diff --git a/ops/sl/slx60.c b/ops/sl/slx60.c
new file mode 100644
index 0000000..707893f
--- /dev/null
+++ b/ops/sl/slx60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx60) {
+ NEXT_OP(sp, a, x << 60, y, o);
+}
diff --git a/ops/sl/slx61.c b/ops/sl/slx61.c
new file mode 100644
index 0000000..40a1770
--- /dev/null
+++ b/ops/sl/slx61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx61) {
+ NEXT_OP(sp, a, x << 61, y, o);
+}
diff --git a/ops/sl/slx62.c b/ops/sl/slx62.c
new file mode 100644
index 0000000..e0ec82a
--- /dev/null
+++ b/ops/sl/slx62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx62) {
+ NEXT_OP(sp, a, x << 62, y, o);
+}
diff --git a/ops/sl/slx63.c b/ops/sl/slx63.c
new file mode 100644
index 0000000..c20cbd8
--- /dev/null
+++ b/ops/sl/slx63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx63) {
+ NEXT_OP(sp, a, x << 63, y, o);
+}
diff --git a/ops/sl/slx7.c b/ops/sl/slx7.c
new file mode 100644
index 0000000..174d5e5
--- /dev/null
+++ b/ops/sl/slx7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx7) {
+ NEXT_OP(sp, a, x << 7, y, o);
+}
diff --git a/ops/sl/slx8.c b/ops/sl/slx8.c
new file mode 100644
index 0000000..d591a0d
--- /dev/null
+++ b/ops/sl/slx8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx8) {
+ NEXT_OP(sp, a, x << 8, y, o);
+}
diff --git a/ops/sl/slx9.c b/ops/sl/slx9.c
new file mode 100644
index 0000000..00a8376
--- /dev/null
+++ b/ops/sl/slx9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(slx9) {
+ NEXT_OP(sp, a, x << 9, y, o);
+}
diff --git a/ops/sl/sly0.c b/ops/sl/sly0.c
new file mode 100644
index 0000000..7317c2d
--- /dev/null
+++ b/ops/sl/sly0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly0) {
+ NEXT_OP(sp, a, x, y << 0, o);
+}
diff --git a/ops/sl/sly1.c b/ops/sl/sly1.c
new file mode 100644
index 0000000..f7a36fd
--- /dev/null
+++ b/ops/sl/sly1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly1) {
+ NEXT_OP(sp, a, x, y << 1, o);
+}
diff --git a/ops/sl/sly10.c b/ops/sl/sly10.c
new file mode 100644
index 0000000..974133c
--- /dev/null
+++ b/ops/sl/sly10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly10) {
+ NEXT_OP(sp, a, x, y << 10, o);
+}
diff --git a/ops/sl/sly11.c b/ops/sl/sly11.c
new file mode 100644
index 0000000..888fc83
--- /dev/null
+++ b/ops/sl/sly11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly11) {
+ NEXT_OP(sp, a, x, y << 11, o);
+}
diff --git a/ops/sl/sly12.c b/ops/sl/sly12.c
new file mode 100644
index 0000000..2d0c82f
--- /dev/null
+++ b/ops/sl/sly12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly12) {
+ NEXT_OP(sp, a, x, y << 12, o);
+}
diff --git a/ops/sl/sly13.c b/ops/sl/sly13.c
new file mode 100644
index 0000000..3deb9ee
--- /dev/null
+++ b/ops/sl/sly13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly13) {
+ NEXT_OP(sp, a, x, y << 13, o);
+}
diff --git a/ops/sl/sly14.c b/ops/sl/sly14.c
new file mode 100644
index 0000000..e3c4778
--- /dev/null
+++ b/ops/sl/sly14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly14) {
+ NEXT_OP(sp, a, x, y << 14, o);
+}
diff --git a/ops/sl/sly15.c b/ops/sl/sly15.c
new file mode 100644
index 0000000..59edaca
--- /dev/null
+++ b/ops/sl/sly15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly15) {
+ NEXT_OP(sp, a, x, y << 15, o);
+}
diff --git a/ops/sl/sly16.c b/ops/sl/sly16.c
new file mode 100644
index 0000000..05419e5
--- /dev/null
+++ b/ops/sl/sly16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly16) {
+ NEXT_OP(sp, a, x, y << 16, o);
+}
diff --git a/ops/sl/sly17.c b/ops/sl/sly17.c
new file mode 100644
index 0000000..db5edff
--- /dev/null
+++ b/ops/sl/sly17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly17) {
+ NEXT_OP(sp, a, x, y << 17, o);
+}
diff --git a/ops/sl/sly18.c b/ops/sl/sly18.c
new file mode 100644
index 0000000..c622ba2
--- /dev/null
+++ b/ops/sl/sly18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly18) {
+ NEXT_OP(sp, a, x, y << 18, o);
+}
diff --git a/ops/sl/sly19.c b/ops/sl/sly19.c
new file mode 100644
index 0000000..a78d0dd
--- /dev/null
+++ b/ops/sl/sly19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly19) {
+ NEXT_OP(sp, a, x, y << 19, o);
+}
diff --git a/ops/sl/sly2.c b/ops/sl/sly2.c
new file mode 100644
index 0000000..3f53275
--- /dev/null
+++ b/ops/sl/sly2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly2) {
+ NEXT_OP(sp, a, x, y << 2, o);
+}
diff --git a/ops/sl/sly20.c b/ops/sl/sly20.c
new file mode 100644
index 0000000..5d0fe13
--- /dev/null
+++ b/ops/sl/sly20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly20) {
+ NEXT_OP(sp, a, x, y << 20, o);
+}
diff --git a/ops/sl/sly21.c b/ops/sl/sly21.c
new file mode 100644
index 0000000..6d40674
--- /dev/null
+++ b/ops/sl/sly21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly21) {
+ NEXT_OP(sp, a, x, y << 21, o);
+}
diff --git a/ops/sl/sly22.c b/ops/sl/sly22.c
new file mode 100644
index 0000000..ccb9db4
--- /dev/null
+++ b/ops/sl/sly22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly22) {
+ NEXT_OP(sp, a, x, y << 22, o);
+}
diff --git a/ops/sl/sly23.c b/ops/sl/sly23.c
new file mode 100644
index 0000000..ef34c7b
--- /dev/null
+++ b/ops/sl/sly23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly23) {
+ NEXT_OP(sp, a, x, y << 23, o);
+}
diff --git a/ops/sl/sly24.c b/ops/sl/sly24.c
new file mode 100644
index 0000000..80d9f44
--- /dev/null
+++ b/ops/sl/sly24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly24) {
+ NEXT_OP(sp, a, x, y << 24, o);
+}
diff --git a/ops/sl/sly25.c b/ops/sl/sly25.c
new file mode 100644
index 0000000..ca8149a
--- /dev/null
+++ b/ops/sl/sly25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly25) {
+ NEXT_OP(sp, a, x, y << 25, o);
+}
diff --git a/ops/sl/sly26.c b/ops/sl/sly26.c
new file mode 100644
index 0000000..3f97097
--- /dev/null
+++ b/ops/sl/sly26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly26) {
+ NEXT_OP(sp, a, x, y << 26, o);
+}
diff --git a/ops/sl/sly27.c b/ops/sl/sly27.c
new file mode 100644
index 0000000..9bbb450
--- /dev/null
+++ b/ops/sl/sly27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly27) {
+ NEXT_OP(sp, a, x, y << 27, o);
+}
diff --git a/ops/sl/sly28.c b/ops/sl/sly28.c
new file mode 100644
index 0000000..aca41c5
--- /dev/null
+++ b/ops/sl/sly28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly28) {
+ NEXT_OP(sp, a, x, y << 28, o);
+}
diff --git a/ops/sl/sly29.c b/ops/sl/sly29.c
new file mode 100644
index 0000000..d2ba6ed
--- /dev/null
+++ b/ops/sl/sly29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly29) {
+ NEXT_OP(sp, a, x, y << 29, o);
+}
diff --git a/ops/sl/sly3.c b/ops/sl/sly3.c
new file mode 100644
index 0000000..9f09e9e
--- /dev/null
+++ b/ops/sl/sly3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly3) {
+ NEXT_OP(sp, a, x, y << 3, o);
+}
diff --git a/ops/sl/sly30.c b/ops/sl/sly30.c
new file mode 100644
index 0000000..c88c345
--- /dev/null
+++ b/ops/sl/sly30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly30) {
+ NEXT_OP(sp, a, x, y << 30, o);
+}
diff --git a/ops/sl/sly31.c b/ops/sl/sly31.c
new file mode 100644
index 0000000..766723d
--- /dev/null
+++ b/ops/sl/sly31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly31) {
+ NEXT_OP(sp, a, x, y << 31, o);
+}
diff --git a/ops/sl/sly32.c b/ops/sl/sly32.c
new file mode 100644
index 0000000..36819ca
--- /dev/null
+++ b/ops/sl/sly32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly32) {
+ NEXT_OP(sp, a, x, y << 32, o);
+}
diff --git a/ops/sl/sly33.c b/ops/sl/sly33.c
new file mode 100644
index 0000000..adf885f
--- /dev/null
+++ b/ops/sl/sly33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly33) {
+ NEXT_OP(sp, a, x, y << 33, o);
+}
diff --git a/ops/sl/sly34.c b/ops/sl/sly34.c
new file mode 100644
index 0000000..3a61747
--- /dev/null
+++ b/ops/sl/sly34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly34) {
+ NEXT_OP(sp, a, x, y << 34, o);
+}
diff --git a/ops/sl/sly35.c b/ops/sl/sly35.c
new file mode 100644
index 0000000..20e868e
--- /dev/null
+++ b/ops/sl/sly35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly35) {
+ NEXT_OP(sp, a, x, y << 35, o);
+}
diff --git a/ops/sl/sly36.c b/ops/sl/sly36.c
new file mode 100644
index 0000000..a4d283f
--- /dev/null
+++ b/ops/sl/sly36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly36) {
+ NEXT_OP(sp, a, x, y << 36, o);
+}
diff --git a/ops/sl/sly37.c b/ops/sl/sly37.c
new file mode 100644
index 0000000..430478b
--- /dev/null
+++ b/ops/sl/sly37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly37) {
+ NEXT_OP(sp, a, x, y << 37, o);
+}
diff --git a/ops/sl/sly38.c b/ops/sl/sly38.c
new file mode 100644
index 0000000..a25cf77
--- /dev/null
+++ b/ops/sl/sly38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly38) {
+ NEXT_OP(sp, a, x, y << 38, o);
+}
diff --git a/ops/sl/sly39.c b/ops/sl/sly39.c
new file mode 100644
index 0000000..e84620c
--- /dev/null
+++ b/ops/sl/sly39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly39) {
+ NEXT_OP(sp, a, x, y << 39, o);
+}
diff --git a/ops/sl/sly4.c b/ops/sl/sly4.c
new file mode 100644
index 0000000..92e61ae
--- /dev/null
+++ b/ops/sl/sly4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly4) {
+ NEXT_OP(sp, a, x, y << 4, o);
+}
diff --git a/ops/sl/sly40.c b/ops/sl/sly40.c
new file mode 100644
index 0000000..c27c5f3
--- /dev/null
+++ b/ops/sl/sly40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly40) {
+ NEXT_OP(sp, a, x, y << 40, o);
+}
diff --git a/ops/sl/sly41.c b/ops/sl/sly41.c
new file mode 100644
index 0000000..0c2804b
--- /dev/null
+++ b/ops/sl/sly41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly41) {
+ NEXT_OP(sp, a, x, y << 41, o);
+}
diff --git a/ops/sl/sly42.c b/ops/sl/sly42.c
new file mode 100644
index 0000000..d5108c5
--- /dev/null
+++ b/ops/sl/sly42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly42) {
+ NEXT_OP(sp, a, x, y << 42, o);
+}
diff --git a/ops/sl/sly43.c b/ops/sl/sly43.c
new file mode 100644
index 0000000..94c8749
--- /dev/null
+++ b/ops/sl/sly43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly43) {
+ NEXT_OP(sp, a, x, y << 43, o);
+}
diff --git a/ops/sl/sly44.c b/ops/sl/sly44.c
new file mode 100644
index 0000000..b3ce515
--- /dev/null
+++ b/ops/sl/sly44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly44) {
+ NEXT_OP(sp, a, x, y << 44, o);
+}
diff --git a/ops/sl/sly45.c b/ops/sl/sly45.c
new file mode 100644
index 0000000..fe8c644
--- /dev/null
+++ b/ops/sl/sly45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly45) {
+ NEXT_OP(sp, a, x, y << 45, o);
+}
diff --git a/ops/sl/sly46.c b/ops/sl/sly46.c
new file mode 100644
index 0000000..80ab3ac
--- /dev/null
+++ b/ops/sl/sly46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly46) {
+ NEXT_OP(sp, a, x, y << 46, o);
+}
diff --git a/ops/sl/sly47.c b/ops/sl/sly47.c
new file mode 100644
index 0000000..fa4d7ae
--- /dev/null
+++ b/ops/sl/sly47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly47) {
+ NEXT_OP(sp, a, x, y << 47, o);
+}
diff --git a/ops/sl/sly48.c b/ops/sl/sly48.c
new file mode 100644
index 0000000..e194d70
--- /dev/null
+++ b/ops/sl/sly48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly48) {
+ NEXT_OP(sp, a, x, y << 48, o);
+}
diff --git a/ops/sl/sly49.c b/ops/sl/sly49.c
new file mode 100644
index 0000000..7069d2b
--- /dev/null
+++ b/ops/sl/sly49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly49) {
+ NEXT_OP(sp, a, x, y << 49, o);
+}
diff --git a/ops/sl/sly5.c b/ops/sl/sly5.c
new file mode 100644
index 0000000..a78d7c7
--- /dev/null
+++ b/ops/sl/sly5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly5) {
+ NEXT_OP(sp, a, x, y << 5, o);
+}
diff --git a/ops/sl/sly50.c b/ops/sl/sly50.c
new file mode 100644
index 0000000..9834eaa
--- /dev/null
+++ b/ops/sl/sly50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly50) {
+ NEXT_OP(sp, a, x, y << 50, o);
+}
diff --git a/ops/sl/sly51.c b/ops/sl/sly51.c
new file mode 100644
index 0000000..c82feaa
--- /dev/null
+++ b/ops/sl/sly51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly51) {
+ NEXT_OP(sp, a, x, y << 51, o);
+}
diff --git a/ops/sl/sly52.c b/ops/sl/sly52.c
new file mode 100644
index 0000000..fb29165
--- /dev/null
+++ b/ops/sl/sly52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly52) {
+ NEXT_OP(sp, a, x, y << 52, o);
+}
diff --git a/ops/sl/sly53.c b/ops/sl/sly53.c
new file mode 100644
index 0000000..4a68be1
--- /dev/null
+++ b/ops/sl/sly53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly53) {
+ NEXT_OP(sp, a, x, y << 53, o);
+}
diff --git a/ops/sl/sly54.c b/ops/sl/sly54.c
new file mode 100644
index 0000000..9eeef56
--- /dev/null
+++ b/ops/sl/sly54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly54) {
+ NEXT_OP(sp, a, x, y << 54, o);
+}
diff --git a/ops/sl/sly55.c b/ops/sl/sly55.c
new file mode 100644
index 0000000..57ea433
--- /dev/null
+++ b/ops/sl/sly55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly55) {
+ NEXT_OP(sp, a, x, y << 55, o);
+}
diff --git a/ops/sl/sly56.c b/ops/sl/sly56.c
new file mode 100644
index 0000000..29b7df2
--- /dev/null
+++ b/ops/sl/sly56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly56) {
+ NEXT_OP(sp, a, x, y << 56, o);
+}
diff --git a/ops/sl/sly57.c b/ops/sl/sly57.c
new file mode 100644
index 0000000..ce24a2c
--- /dev/null
+++ b/ops/sl/sly57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly57) {
+ NEXT_OP(sp, a, x, y << 57, o);
+}
diff --git a/ops/sl/sly58.c b/ops/sl/sly58.c
new file mode 100644
index 0000000..a643401
--- /dev/null
+++ b/ops/sl/sly58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly58) {
+ NEXT_OP(sp, a, x, y << 58, o);
+}
diff --git a/ops/sl/sly59.c b/ops/sl/sly59.c
new file mode 100644
index 0000000..2786b09
--- /dev/null
+++ b/ops/sl/sly59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly59) {
+ NEXT_OP(sp, a, x, y << 59, o);
+}
diff --git a/ops/sl/sly6.c b/ops/sl/sly6.c
new file mode 100644
index 0000000..d81718d
--- /dev/null
+++ b/ops/sl/sly6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly6) {
+ NEXT_OP(sp, a, x, y << 6, o);
+}
diff --git a/ops/sl/sly60.c b/ops/sl/sly60.c
new file mode 100644
index 0000000..4860ccb
--- /dev/null
+++ b/ops/sl/sly60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly60) {
+ NEXT_OP(sp, a, x, y << 60, o);
+}
diff --git a/ops/sl/sly61.c b/ops/sl/sly61.c
new file mode 100644
index 0000000..7fef21d
--- /dev/null
+++ b/ops/sl/sly61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly61) {
+ NEXT_OP(sp, a, x, y << 61, o);
+}
diff --git a/ops/sl/sly62.c b/ops/sl/sly62.c
new file mode 100644
index 0000000..43b92c5
--- /dev/null
+++ b/ops/sl/sly62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly62) {
+ NEXT_OP(sp, a, x, y << 62, o);
+}
diff --git a/ops/sl/sly63.c b/ops/sl/sly63.c
new file mode 100644
index 0000000..0f76208
--- /dev/null
+++ b/ops/sl/sly63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly63) {
+ NEXT_OP(sp, a, x, y << 63, o);
+}
diff --git a/ops/sl/sly7.c b/ops/sl/sly7.c
new file mode 100644
index 0000000..7336564
--- /dev/null
+++ b/ops/sl/sly7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly7) {
+ NEXT_OP(sp, a, x, y << 7, o);
+}
diff --git a/ops/sl/sly8.c b/ops/sl/sly8.c
new file mode 100644
index 0000000..6e6ef64
--- /dev/null
+++ b/ops/sl/sly8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly8) {
+ NEXT_OP(sp, a, x, y << 8, o);
+}
diff --git a/ops/sl/sly9.c b/ops/sl/sly9.c
new file mode 100644
index 0000000..0ac0b20
--- /dev/null
+++ b/ops/sl/sly9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sly9) {
+ NEXT_OP(sp, a, x, y << 9, o);
+}
diff --git a/ops/sl/source.mk b/ops/sl/source.mk
new file mode 100644
index 0000000..e66e732
--- /dev/null
+++ b/ops/sl/source.mk
@@ -0,0 +1,2 @@
+OP_SRC != echo ops/sl/*.c
+OP_SOURCES += $(OP_SRC)
diff --git a/ops/source.mk b/ops/source.mk
new file mode 100644
index 0000000..0a90169
--- /dev/null
+++ b/ops/source.mk
@@ -0,0 +1,8 @@
+OP_SRC != echo ops/*.c
+OP_SOURCES += $(OP_SRC)
+
+include ops/addi/source.mk
+include ops/bs/source.mk
+include ops/li/source.mk
+include ops/sl/source.mk
+include ops/sr/source.mk
diff --git a/ops/sr/gen_sr.sh b/ops/sr/gen_sr.sh
new file mode 100755
index 0000000..0de47a2
--- /dev/null
+++ b/ops/sr/gen_sr.sh
@@ -0,0 +1,39 @@
+# shift right register o
+for i in $(seq 0 63); do
+ opname=sro"$i"
+ filename="$opname".c
+ echo "#include \"../common.h\"\n" \
+ "DEFINE_OP($opname) {" \
+ "NEXT_OP(sp, a, x, y, (sreg_t)o >> $i);" \
+ "}" > "$filename"
+done
+
+# shift right register x
+for i in $(seq 0 63); do
+ opname=srx"$i"
+ filename="$opname".c
+ echo "#include \"../common.h\"\n" \
+ "DEFINE_OP($opname) {" \
+ "NEXT_OP(sp, a, (sreg_t)x >> $i, y, o);" \
+ "}" > "$filename"
+done
+
+# shift right register y
+for i in $(seq 0 63); do
+ opname=sry"$i"
+ filename="$opname".c
+ echo "#include \"../common.h\"\n" \
+ "DEFINE_OP($opname) {" \
+ "NEXT_OP(sp, a, x, (sreg_t)y >> $i, o);" \
+ "}" > "$filename"
+done
+
+# shift right register a
+for i in $(seq 0 63); do
+ opname=sra"$i"
+ filename="$opname".c
+ echo "#include \"../common.h\"\n" \
+ "DEFINE_OP($opname) {" \
+ "NEXT_OP(sp, (sreg_t)a >> $i, x, y, o);" \
+ "}" > "$filename"
+done
diff --git a/ops/sr/source.mk b/ops/sr/source.mk
new file mode 100644
index 0000000..c7790e2
--- /dev/null
+++ b/ops/sr/source.mk
@@ -0,0 +1,2 @@
+OP_SRC != echo ops/sr/*.c
+OP_SOURCES += $(OP_SRC)
diff --git a/ops/sr/sra0.c b/ops/sr/sra0.c
new file mode 100644
index 0000000..02b80a0
--- /dev/null
+++ b/ops/sr/sra0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra0) {
+ NEXT_OP(sp, (sreg_t)a >> 0, x, y, o);
+}
diff --git a/ops/sr/sra1.c b/ops/sr/sra1.c
new file mode 100644
index 0000000..547cb4c
--- /dev/null
+++ b/ops/sr/sra1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra1) {
+ NEXT_OP(sp, (sreg_t)a >> 1, x, y, o);
+}
diff --git a/ops/sr/sra10.c b/ops/sr/sra10.c
new file mode 100644
index 0000000..66e1625
--- /dev/null
+++ b/ops/sr/sra10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra10) {
+ NEXT_OP(sp, (sreg_t)a >> 10, x, y, o);
+}
diff --git a/ops/sr/sra11.c b/ops/sr/sra11.c
new file mode 100644
index 0000000..9e3e5f5
--- /dev/null
+++ b/ops/sr/sra11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra11) {
+ NEXT_OP(sp, (sreg_t)a >> 11, x, y, o);
+}
diff --git a/ops/sr/sra12.c b/ops/sr/sra12.c
new file mode 100644
index 0000000..da55531
--- /dev/null
+++ b/ops/sr/sra12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra12) {
+ NEXT_OP(sp, (sreg_t)a >> 12, x, y, o);
+}
diff --git a/ops/sr/sra13.c b/ops/sr/sra13.c
new file mode 100644
index 0000000..0096d0f
--- /dev/null
+++ b/ops/sr/sra13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra13) {
+ NEXT_OP(sp, (sreg_t)a >> 13, x, y, o);
+}
diff --git a/ops/sr/sra14.c b/ops/sr/sra14.c
new file mode 100644
index 0000000..36cad8a
--- /dev/null
+++ b/ops/sr/sra14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra14) {
+ NEXT_OP(sp, (sreg_t)a >> 14, x, y, o);
+}
diff --git a/ops/sr/sra15.c b/ops/sr/sra15.c
new file mode 100644
index 0000000..e9b4279
--- /dev/null
+++ b/ops/sr/sra15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra15) {
+ NEXT_OP(sp, (sreg_t)a >> 15, x, y, o);
+}
diff --git a/ops/sr/sra16.c b/ops/sr/sra16.c
new file mode 100644
index 0000000..460b7bb
--- /dev/null
+++ b/ops/sr/sra16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra16) {
+ NEXT_OP(sp, (sreg_t)a >> 16, x, y, o);
+}
diff --git a/ops/sr/sra17.c b/ops/sr/sra17.c
new file mode 100644
index 0000000..6f9a21c
--- /dev/null
+++ b/ops/sr/sra17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra17) {
+ NEXT_OP(sp, (sreg_t)a >> 17, x, y, o);
+}
diff --git a/ops/sr/sra18.c b/ops/sr/sra18.c
new file mode 100644
index 0000000..b431bcf
--- /dev/null
+++ b/ops/sr/sra18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra18) {
+ NEXT_OP(sp, (sreg_t)a >> 18, x, y, o);
+}
diff --git a/ops/sr/sra19.c b/ops/sr/sra19.c
new file mode 100644
index 0000000..10ccea5
--- /dev/null
+++ b/ops/sr/sra19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra19) {
+ NEXT_OP(sp, (sreg_t)a >> 19, x, y, o);
+}
diff --git a/ops/sr/sra2.c b/ops/sr/sra2.c
new file mode 100644
index 0000000..34109ab
--- /dev/null
+++ b/ops/sr/sra2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra2) {
+ NEXT_OP(sp, (sreg_t)a >> 2, x, y, o);
+}
diff --git a/ops/sr/sra20.c b/ops/sr/sra20.c
new file mode 100644
index 0000000..12657ca
--- /dev/null
+++ b/ops/sr/sra20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra20) {
+ NEXT_OP(sp, (sreg_t)a >> 20, x, y, o);
+}
diff --git a/ops/sr/sra21.c b/ops/sr/sra21.c
new file mode 100644
index 0000000..8ca171e
--- /dev/null
+++ b/ops/sr/sra21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra21) {
+ NEXT_OP(sp, (sreg_t)a >> 21, x, y, o);
+}
diff --git a/ops/sr/sra22.c b/ops/sr/sra22.c
new file mode 100644
index 0000000..fa556fe
--- /dev/null
+++ b/ops/sr/sra22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra22) {
+ NEXT_OP(sp, (sreg_t)a >> 22, x, y, o);
+}
diff --git a/ops/sr/sra23.c b/ops/sr/sra23.c
new file mode 100644
index 0000000..6f4f298
--- /dev/null
+++ b/ops/sr/sra23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra23) {
+ NEXT_OP(sp, (sreg_t)a >> 23, x, y, o);
+}
diff --git a/ops/sr/sra24.c b/ops/sr/sra24.c
new file mode 100644
index 0000000..9bf0f36
--- /dev/null
+++ b/ops/sr/sra24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra24) {
+ NEXT_OP(sp, (sreg_t)a >> 24, x, y, o);
+}
diff --git a/ops/sr/sra25.c b/ops/sr/sra25.c
new file mode 100644
index 0000000..c7d023f
--- /dev/null
+++ b/ops/sr/sra25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra25) {
+ NEXT_OP(sp, (sreg_t)a >> 25, x, y, o);
+}
diff --git a/ops/sr/sra26.c b/ops/sr/sra26.c
new file mode 100644
index 0000000..e5196f7
--- /dev/null
+++ b/ops/sr/sra26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra26) {
+ NEXT_OP(sp, (sreg_t)a >> 26, x, y, o);
+}
diff --git a/ops/sr/sra27.c b/ops/sr/sra27.c
new file mode 100644
index 0000000..ddd9d52
--- /dev/null
+++ b/ops/sr/sra27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra27) {
+ NEXT_OP(sp, (sreg_t)a >> 27, x, y, o);
+}
diff --git a/ops/sr/sra28.c b/ops/sr/sra28.c
new file mode 100644
index 0000000..103e0a3
--- /dev/null
+++ b/ops/sr/sra28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra28) {
+ NEXT_OP(sp, (sreg_t)a >> 28, x, y, o);
+}
diff --git a/ops/sr/sra29.c b/ops/sr/sra29.c
new file mode 100644
index 0000000..4d2d6ec
--- /dev/null
+++ b/ops/sr/sra29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra29) {
+ NEXT_OP(sp, (sreg_t)a >> 29, x, y, o);
+}
diff --git a/ops/sr/sra3.c b/ops/sr/sra3.c
new file mode 100644
index 0000000..dea03fb
--- /dev/null
+++ b/ops/sr/sra3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra3) {
+ NEXT_OP(sp, (sreg_t)a >> 3, x, y, o);
+}
diff --git a/ops/sr/sra30.c b/ops/sr/sra30.c
new file mode 100644
index 0000000..18474e9
--- /dev/null
+++ b/ops/sr/sra30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra30) {
+ NEXT_OP(sp, (sreg_t)a >> 30, x, y, o);
+}
diff --git a/ops/sr/sra31.c b/ops/sr/sra31.c
new file mode 100644
index 0000000..7de3f92
--- /dev/null
+++ b/ops/sr/sra31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra31) {
+ NEXT_OP(sp, (sreg_t)a >> 31, x, y, o);
+}
diff --git a/ops/sr/sra32.c b/ops/sr/sra32.c
new file mode 100644
index 0000000..457b596
--- /dev/null
+++ b/ops/sr/sra32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra32) {
+ NEXT_OP(sp, (sreg_t)a >> 32, x, y, o);
+}
diff --git a/ops/sr/sra33.c b/ops/sr/sra33.c
new file mode 100644
index 0000000..e8c5b33
--- /dev/null
+++ b/ops/sr/sra33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra33) {
+ NEXT_OP(sp, (sreg_t)a >> 33, x, y, o);
+}
diff --git a/ops/sr/sra34.c b/ops/sr/sra34.c
new file mode 100644
index 0000000..518181a
--- /dev/null
+++ b/ops/sr/sra34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra34) {
+ NEXT_OP(sp, (sreg_t)a >> 34, x, y, o);
+}
diff --git a/ops/sr/sra35.c b/ops/sr/sra35.c
new file mode 100644
index 0000000..08c3e1a
--- /dev/null
+++ b/ops/sr/sra35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra35) {
+ NEXT_OP(sp, (sreg_t)a >> 35, x, y, o);
+}
diff --git a/ops/sr/sra36.c b/ops/sr/sra36.c
new file mode 100644
index 0000000..67cd694
--- /dev/null
+++ b/ops/sr/sra36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra36) {
+ NEXT_OP(sp, (sreg_t)a >> 36, x, y, o);
+}
diff --git a/ops/sr/sra37.c b/ops/sr/sra37.c
new file mode 100644
index 0000000..3a3d9ff
--- /dev/null
+++ b/ops/sr/sra37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra37) {
+ NEXT_OP(sp, (sreg_t)a >> 37, x, y, o);
+}
diff --git a/ops/sr/sra38.c b/ops/sr/sra38.c
new file mode 100644
index 0000000..69fffb0
--- /dev/null
+++ b/ops/sr/sra38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra38) {
+ NEXT_OP(sp, (sreg_t)a >> 38, x, y, o);
+}
diff --git a/ops/sr/sra39.c b/ops/sr/sra39.c
new file mode 100644
index 0000000..8dc52e2
--- /dev/null
+++ b/ops/sr/sra39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra39) {
+ NEXT_OP(sp, (sreg_t)a >> 39, x, y, o);
+}
diff --git a/ops/sr/sra4.c b/ops/sr/sra4.c
new file mode 100644
index 0000000..34b0409
--- /dev/null
+++ b/ops/sr/sra4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra4) {
+ NEXT_OP(sp, (sreg_t)a >> 4, x, y, o);
+}
diff --git a/ops/sr/sra40.c b/ops/sr/sra40.c
new file mode 100644
index 0000000..61bf2db
--- /dev/null
+++ b/ops/sr/sra40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra40) {
+ NEXT_OP(sp, (sreg_t)a >> 40, x, y, o);
+}
diff --git a/ops/sr/sra41.c b/ops/sr/sra41.c
new file mode 100644
index 0000000..0bc472b
--- /dev/null
+++ b/ops/sr/sra41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra41) {
+ NEXT_OP(sp, (sreg_t)a >> 41, x, y, o);
+}
diff --git a/ops/sr/sra42.c b/ops/sr/sra42.c
new file mode 100644
index 0000000..4644992
--- /dev/null
+++ b/ops/sr/sra42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra42) {
+ NEXT_OP(sp, (sreg_t)a >> 42, x, y, o);
+}
diff --git a/ops/sr/sra43.c b/ops/sr/sra43.c
new file mode 100644
index 0000000..31553f3
--- /dev/null
+++ b/ops/sr/sra43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra43) {
+ NEXT_OP(sp, (sreg_t)a >> 43, x, y, o);
+}
diff --git a/ops/sr/sra44.c b/ops/sr/sra44.c
new file mode 100644
index 0000000..15fe642
--- /dev/null
+++ b/ops/sr/sra44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra44) {
+ NEXT_OP(sp, (sreg_t)a >> 44, x, y, o);
+}
diff --git a/ops/sr/sra45.c b/ops/sr/sra45.c
new file mode 100644
index 0000000..95c2f2c
--- /dev/null
+++ b/ops/sr/sra45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra45) {
+ NEXT_OP(sp, (sreg_t)a >> 45, x, y, o);
+}
diff --git a/ops/sr/sra46.c b/ops/sr/sra46.c
new file mode 100644
index 0000000..6242141
--- /dev/null
+++ b/ops/sr/sra46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra46) {
+ NEXT_OP(sp, (sreg_t)a >> 46, x, y, o);
+}
diff --git a/ops/sr/sra47.c b/ops/sr/sra47.c
new file mode 100644
index 0000000..1b5a583
--- /dev/null
+++ b/ops/sr/sra47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra47) {
+ NEXT_OP(sp, (sreg_t)a >> 47, x, y, o);
+}
diff --git a/ops/sr/sra48.c b/ops/sr/sra48.c
new file mode 100644
index 0000000..4708f08
--- /dev/null
+++ b/ops/sr/sra48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra48) {
+ NEXT_OP(sp, (sreg_t)a >> 48, x, y, o);
+}
diff --git a/ops/sr/sra49.c b/ops/sr/sra49.c
new file mode 100644
index 0000000..8c1b8b4
--- /dev/null
+++ b/ops/sr/sra49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra49) {
+ NEXT_OP(sp, (sreg_t)a >> 49, x, y, o);
+}
diff --git a/ops/sr/sra5.c b/ops/sr/sra5.c
new file mode 100644
index 0000000..11329d4
--- /dev/null
+++ b/ops/sr/sra5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra5) {
+ NEXT_OP(sp, (sreg_t)a >> 5, x, y, o);
+}
diff --git a/ops/sr/sra50.c b/ops/sr/sra50.c
new file mode 100644
index 0000000..f3d2b87
--- /dev/null
+++ b/ops/sr/sra50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra50) {
+ NEXT_OP(sp, (sreg_t)a >> 50, x, y, o);
+}
diff --git a/ops/sr/sra51.c b/ops/sr/sra51.c
new file mode 100644
index 0000000..5d2b118
--- /dev/null
+++ b/ops/sr/sra51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra51) {
+ NEXT_OP(sp, (sreg_t)a >> 51, x, y, o);
+}
diff --git a/ops/sr/sra52.c b/ops/sr/sra52.c
new file mode 100644
index 0000000..6f5a428
--- /dev/null
+++ b/ops/sr/sra52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra52) {
+ NEXT_OP(sp, (sreg_t)a >> 52, x, y, o);
+}
diff --git a/ops/sr/sra53.c b/ops/sr/sra53.c
new file mode 100644
index 0000000..b1171e6
--- /dev/null
+++ b/ops/sr/sra53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra53) {
+ NEXT_OP(sp, (sreg_t)a >> 53, x, y, o);
+}
diff --git a/ops/sr/sra54.c b/ops/sr/sra54.c
new file mode 100644
index 0000000..7b52c08
--- /dev/null
+++ b/ops/sr/sra54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra54) {
+ NEXT_OP(sp, (sreg_t)a >> 54, x, y, o);
+}
diff --git a/ops/sr/sra55.c b/ops/sr/sra55.c
new file mode 100644
index 0000000..55a86a8
--- /dev/null
+++ b/ops/sr/sra55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra55) {
+ NEXT_OP(sp, (sreg_t)a >> 55, x, y, o);
+}
diff --git a/ops/sr/sra56.c b/ops/sr/sra56.c
new file mode 100644
index 0000000..6e77dd4
--- /dev/null
+++ b/ops/sr/sra56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra56) {
+ NEXT_OP(sp, (sreg_t)a >> 56, x, y, o);
+}
diff --git a/ops/sr/sra57.c b/ops/sr/sra57.c
new file mode 100644
index 0000000..29cef96
--- /dev/null
+++ b/ops/sr/sra57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra57) {
+ NEXT_OP(sp, (sreg_t)a >> 57, x, y, o);
+}
diff --git a/ops/sr/sra58.c b/ops/sr/sra58.c
new file mode 100644
index 0000000..8c21884
--- /dev/null
+++ b/ops/sr/sra58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra58) {
+ NEXT_OP(sp, (sreg_t)a >> 58, x, y, o);
+}
diff --git a/ops/sr/sra59.c b/ops/sr/sra59.c
new file mode 100644
index 0000000..718e4c1
--- /dev/null
+++ b/ops/sr/sra59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra59) {
+ NEXT_OP(sp, (sreg_t)a >> 59, x, y, o);
+}
diff --git a/ops/sr/sra6.c b/ops/sr/sra6.c
new file mode 100644
index 0000000..c845a12
--- /dev/null
+++ b/ops/sr/sra6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra6) {
+ NEXT_OP(sp, (sreg_t)a >> 6, x, y, o);
+}
diff --git a/ops/sr/sra60.c b/ops/sr/sra60.c
new file mode 100644
index 0000000..a2eab11
--- /dev/null
+++ b/ops/sr/sra60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra60) {
+ NEXT_OP(sp, (sreg_t)a >> 60, x, y, o);
+}
diff --git a/ops/sr/sra61.c b/ops/sr/sra61.c
new file mode 100644
index 0000000..fc4902c
--- /dev/null
+++ b/ops/sr/sra61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra61) {
+ NEXT_OP(sp, (sreg_t)a >> 61, x, y, o);
+}
diff --git a/ops/sr/sra62.c b/ops/sr/sra62.c
new file mode 100644
index 0000000..45443e2
--- /dev/null
+++ b/ops/sr/sra62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra62) {
+ NEXT_OP(sp, (sreg_t)a >> 62, x, y, o);
+}
diff --git a/ops/sr/sra63.c b/ops/sr/sra63.c
new file mode 100644
index 0000000..f7b7662
--- /dev/null
+++ b/ops/sr/sra63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra63) {
+ NEXT_OP(sp, (sreg_t)a >> 63, x, y, o);
+}
diff --git a/ops/sr/sra7.c b/ops/sr/sra7.c
new file mode 100644
index 0000000..204c251
--- /dev/null
+++ b/ops/sr/sra7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra7) {
+ NEXT_OP(sp, (sreg_t)a >> 7, x, y, o);
+}
diff --git a/ops/sr/sra8.c b/ops/sr/sra8.c
new file mode 100644
index 0000000..a59ccd6
--- /dev/null
+++ b/ops/sr/sra8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra8) {
+ NEXT_OP(sp, (sreg_t)a >> 8, x, y, o);
+}
diff --git a/ops/sr/sra9.c b/ops/sr/sra9.c
new file mode 100644
index 0000000..e01433a
--- /dev/null
+++ b/ops/sr/sra9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sra9) {
+ NEXT_OP(sp, (sreg_t)a >> 9, x, y, o);
+}
diff --git a/ops/sr/sro0.c b/ops/sr/sro0.c
new file mode 100644
index 0000000..5d7eb64
--- /dev/null
+++ b/ops/sr/sro0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro0) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 0);
+}
diff --git a/ops/sr/sro1.c b/ops/sr/sro1.c
new file mode 100644
index 0000000..0fa3c68
--- /dev/null
+++ b/ops/sr/sro1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro1) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 1);
+}
diff --git a/ops/sr/sro10.c b/ops/sr/sro10.c
new file mode 100644
index 0000000..4fcb78f
--- /dev/null
+++ b/ops/sr/sro10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro10) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 10);
+}
diff --git a/ops/sr/sro11.c b/ops/sr/sro11.c
new file mode 100644
index 0000000..b7635f4
--- /dev/null
+++ b/ops/sr/sro11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro11) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 11);
+}
diff --git a/ops/sr/sro12.c b/ops/sr/sro12.c
new file mode 100644
index 0000000..80f106f
--- /dev/null
+++ b/ops/sr/sro12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro12) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 12);
+}
diff --git a/ops/sr/sro13.c b/ops/sr/sro13.c
new file mode 100644
index 0000000..1b19655
--- /dev/null
+++ b/ops/sr/sro13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro13) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 13);
+}
diff --git a/ops/sr/sro14.c b/ops/sr/sro14.c
new file mode 100644
index 0000000..4e0725b
--- /dev/null
+++ b/ops/sr/sro14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro14) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 14);
+}
diff --git a/ops/sr/sro15.c b/ops/sr/sro15.c
new file mode 100644
index 0000000..746c556
--- /dev/null
+++ b/ops/sr/sro15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro15) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 15);
+}
diff --git a/ops/sr/sro16.c b/ops/sr/sro16.c
new file mode 100644
index 0000000..efba8a7
--- /dev/null
+++ b/ops/sr/sro16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro16) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 16);
+}
diff --git a/ops/sr/sro17.c b/ops/sr/sro17.c
new file mode 100644
index 0000000..fbf4b03
--- /dev/null
+++ b/ops/sr/sro17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro17) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 17);
+}
diff --git a/ops/sr/sro18.c b/ops/sr/sro18.c
new file mode 100644
index 0000000..17e1a18
--- /dev/null
+++ b/ops/sr/sro18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro18) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 18);
+}
diff --git a/ops/sr/sro19.c b/ops/sr/sro19.c
new file mode 100644
index 0000000..0cad209
--- /dev/null
+++ b/ops/sr/sro19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro19) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 19);
+}
diff --git a/ops/sr/sro2.c b/ops/sr/sro2.c
new file mode 100644
index 0000000..9f7cd3e
--- /dev/null
+++ b/ops/sr/sro2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro2) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 2);
+}
diff --git a/ops/sr/sro20.c b/ops/sr/sro20.c
new file mode 100644
index 0000000..751f966
--- /dev/null
+++ b/ops/sr/sro20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro20) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 20);
+}
diff --git a/ops/sr/sro21.c b/ops/sr/sro21.c
new file mode 100644
index 0000000..0926e34
--- /dev/null
+++ b/ops/sr/sro21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro21) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 21);
+}
diff --git a/ops/sr/sro22.c b/ops/sr/sro22.c
new file mode 100644
index 0000000..2b7edc3
--- /dev/null
+++ b/ops/sr/sro22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro22) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 22);
+}
diff --git a/ops/sr/sro23.c b/ops/sr/sro23.c
new file mode 100644
index 0000000..f625873
--- /dev/null
+++ b/ops/sr/sro23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro23) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 23);
+}
diff --git a/ops/sr/sro24.c b/ops/sr/sro24.c
new file mode 100644
index 0000000..fe52809
--- /dev/null
+++ b/ops/sr/sro24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro24) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 24);
+}
diff --git a/ops/sr/sro25.c b/ops/sr/sro25.c
new file mode 100644
index 0000000..6a8add4
--- /dev/null
+++ b/ops/sr/sro25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro25) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 25);
+}
diff --git a/ops/sr/sro26.c b/ops/sr/sro26.c
new file mode 100644
index 0000000..2ad4030
--- /dev/null
+++ b/ops/sr/sro26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro26) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 26);
+}
diff --git a/ops/sr/sro27.c b/ops/sr/sro27.c
new file mode 100644
index 0000000..f66a18a
--- /dev/null
+++ b/ops/sr/sro27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro27) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 27);
+}
diff --git a/ops/sr/sro28.c b/ops/sr/sro28.c
new file mode 100644
index 0000000..886ee54
--- /dev/null
+++ b/ops/sr/sro28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro28) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 28);
+}
diff --git a/ops/sr/sro29.c b/ops/sr/sro29.c
new file mode 100644
index 0000000..53f94ce
--- /dev/null
+++ b/ops/sr/sro29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro29) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 29);
+}
diff --git a/ops/sr/sro3.c b/ops/sr/sro3.c
new file mode 100644
index 0000000..88f7ff0
--- /dev/null
+++ b/ops/sr/sro3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro3) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 3);
+}
diff --git a/ops/sr/sro30.c b/ops/sr/sro30.c
new file mode 100644
index 0000000..bd4e2b4
--- /dev/null
+++ b/ops/sr/sro30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro30) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 30);
+}
diff --git a/ops/sr/sro31.c b/ops/sr/sro31.c
new file mode 100644
index 0000000..d4fd7d3
--- /dev/null
+++ b/ops/sr/sro31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro31) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 31);
+}
diff --git a/ops/sr/sro32.c b/ops/sr/sro32.c
new file mode 100644
index 0000000..6593a76
--- /dev/null
+++ b/ops/sr/sro32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro32) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 32);
+}
diff --git a/ops/sr/sro33.c b/ops/sr/sro33.c
new file mode 100644
index 0000000..b47fc2e
--- /dev/null
+++ b/ops/sr/sro33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro33) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 33);
+}
diff --git a/ops/sr/sro34.c b/ops/sr/sro34.c
new file mode 100644
index 0000000..e2c13d2
--- /dev/null
+++ b/ops/sr/sro34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro34) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 34);
+}
diff --git a/ops/sr/sro35.c b/ops/sr/sro35.c
new file mode 100644
index 0000000..105b863
--- /dev/null
+++ b/ops/sr/sro35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro35) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 35);
+}
diff --git a/ops/sr/sro36.c b/ops/sr/sro36.c
new file mode 100644
index 0000000..6b6fd62
--- /dev/null
+++ b/ops/sr/sro36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro36) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 36);
+}
diff --git a/ops/sr/sro37.c b/ops/sr/sro37.c
new file mode 100644
index 0000000..f74d2b6
--- /dev/null
+++ b/ops/sr/sro37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro37) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 37);
+}
diff --git a/ops/sr/sro38.c b/ops/sr/sro38.c
new file mode 100644
index 0000000..f658a5c
--- /dev/null
+++ b/ops/sr/sro38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro38) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 38);
+}
diff --git a/ops/sr/sro39.c b/ops/sr/sro39.c
new file mode 100644
index 0000000..81efd4d
--- /dev/null
+++ b/ops/sr/sro39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro39) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 39);
+}
diff --git a/ops/sr/sro4.c b/ops/sr/sro4.c
new file mode 100644
index 0000000..7f6abb8
--- /dev/null
+++ b/ops/sr/sro4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro4) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 4);
+}
diff --git a/ops/sr/sro40.c b/ops/sr/sro40.c
new file mode 100644
index 0000000..e2b8f71
--- /dev/null
+++ b/ops/sr/sro40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro40) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 40);
+}
diff --git a/ops/sr/sro41.c b/ops/sr/sro41.c
new file mode 100644
index 0000000..d6e016f
--- /dev/null
+++ b/ops/sr/sro41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro41) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 41);
+}
diff --git a/ops/sr/sro42.c b/ops/sr/sro42.c
new file mode 100644
index 0000000..7249d27
--- /dev/null
+++ b/ops/sr/sro42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro42) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 42);
+}
diff --git a/ops/sr/sro43.c b/ops/sr/sro43.c
new file mode 100644
index 0000000..d68b95f
--- /dev/null
+++ b/ops/sr/sro43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro43) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 43);
+}
diff --git a/ops/sr/sro44.c b/ops/sr/sro44.c
new file mode 100644
index 0000000..f4b5363
--- /dev/null
+++ b/ops/sr/sro44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro44) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 44);
+}
diff --git a/ops/sr/sro45.c b/ops/sr/sro45.c
new file mode 100644
index 0000000..69d086c
--- /dev/null
+++ b/ops/sr/sro45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro45) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 45);
+}
diff --git a/ops/sr/sro46.c b/ops/sr/sro46.c
new file mode 100644
index 0000000..4dd1983
--- /dev/null
+++ b/ops/sr/sro46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro46) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 46);
+}
diff --git a/ops/sr/sro47.c b/ops/sr/sro47.c
new file mode 100644
index 0000000..cc5b3f0
--- /dev/null
+++ b/ops/sr/sro47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro47) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 47);
+}
diff --git a/ops/sr/sro48.c b/ops/sr/sro48.c
new file mode 100644
index 0000000..b9dedd2
--- /dev/null
+++ b/ops/sr/sro48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro48) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 48);
+}
diff --git a/ops/sr/sro49.c b/ops/sr/sro49.c
new file mode 100644
index 0000000..818f1d1
--- /dev/null
+++ b/ops/sr/sro49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro49) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 49);
+}
diff --git a/ops/sr/sro5.c b/ops/sr/sro5.c
new file mode 100644
index 0000000..6fc73a1
--- /dev/null
+++ b/ops/sr/sro5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro5) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 5);
+}
diff --git a/ops/sr/sro50.c b/ops/sr/sro50.c
new file mode 100644
index 0000000..b1007da
--- /dev/null
+++ b/ops/sr/sro50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro50) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 50);
+}
diff --git a/ops/sr/sro51.c b/ops/sr/sro51.c
new file mode 100644
index 0000000..6e5777e
--- /dev/null
+++ b/ops/sr/sro51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro51) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 51);
+}
diff --git a/ops/sr/sro52.c b/ops/sr/sro52.c
new file mode 100644
index 0000000..10a48cc
--- /dev/null
+++ b/ops/sr/sro52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro52) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 52);
+}
diff --git a/ops/sr/sro53.c b/ops/sr/sro53.c
new file mode 100644
index 0000000..639d181
--- /dev/null
+++ b/ops/sr/sro53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro53) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 53);
+}
diff --git a/ops/sr/sro54.c b/ops/sr/sro54.c
new file mode 100644
index 0000000..1e37395
--- /dev/null
+++ b/ops/sr/sro54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro54) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 54);
+}
diff --git a/ops/sr/sro55.c b/ops/sr/sro55.c
new file mode 100644
index 0000000..d7a05a5
--- /dev/null
+++ b/ops/sr/sro55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro55) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 55);
+}
diff --git a/ops/sr/sro56.c b/ops/sr/sro56.c
new file mode 100644
index 0000000..8ecfc1e
--- /dev/null
+++ b/ops/sr/sro56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro56) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 56);
+}
diff --git a/ops/sr/sro57.c b/ops/sr/sro57.c
new file mode 100644
index 0000000..f7a772e
--- /dev/null
+++ b/ops/sr/sro57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro57) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 57);
+}
diff --git a/ops/sr/sro58.c b/ops/sr/sro58.c
new file mode 100644
index 0000000..37d1ac5
--- /dev/null
+++ b/ops/sr/sro58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro58) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 58);
+}
diff --git a/ops/sr/sro59.c b/ops/sr/sro59.c
new file mode 100644
index 0000000..d009d10
--- /dev/null
+++ b/ops/sr/sro59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro59) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 59);
+}
diff --git a/ops/sr/sro6.c b/ops/sr/sro6.c
new file mode 100644
index 0000000..cdd211d
--- /dev/null
+++ b/ops/sr/sro6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro6) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 6);
+}
diff --git a/ops/sr/sro60.c b/ops/sr/sro60.c
new file mode 100644
index 0000000..e30f394
--- /dev/null
+++ b/ops/sr/sro60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro60) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 60);
+}
diff --git a/ops/sr/sro61.c b/ops/sr/sro61.c
new file mode 100644
index 0000000..b95b549
--- /dev/null
+++ b/ops/sr/sro61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro61) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 61);
+}
diff --git a/ops/sr/sro62.c b/ops/sr/sro62.c
new file mode 100644
index 0000000..79cf2e1
--- /dev/null
+++ b/ops/sr/sro62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro62) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 62);
+}
diff --git a/ops/sr/sro63.c b/ops/sr/sro63.c
new file mode 100644
index 0000000..f37958e
--- /dev/null
+++ b/ops/sr/sro63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro63) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 63);
+}
diff --git a/ops/sr/sro7.c b/ops/sr/sro7.c
new file mode 100644
index 0000000..37ab716
--- /dev/null
+++ b/ops/sr/sro7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro7) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 7);
+}
diff --git a/ops/sr/sro8.c b/ops/sr/sro8.c
new file mode 100644
index 0000000..f9deecf
--- /dev/null
+++ b/ops/sr/sro8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro8) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 8);
+}
diff --git a/ops/sr/sro9.c b/ops/sr/sro9.c
new file mode 100644
index 0000000..bf37b00
--- /dev/null
+++ b/ops/sr/sro9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sro9) {
+ NEXT_OP(sp, a, x, y, (sreg_t)o >> 9);
+}
diff --git a/ops/sr/srx0.c b/ops/sr/srx0.c
new file mode 100644
index 0000000..89a65da
--- /dev/null
+++ b/ops/sr/srx0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx0) {
+ NEXT_OP(sp, a, (sreg_t)x >> 0, y, o);
+}
diff --git a/ops/sr/srx1.c b/ops/sr/srx1.c
new file mode 100644
index 0000000..016f7bc
--- /dev/null
+++ b/ops/sr/srx1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx1) {
+ NEXT_OP(sp, a, (sreg_t)x >> 1, y, o);
+}
diff --git a/ops/sr/srx10.c b/ops/sr/srx10.c
new file mode 100644
index 0000000..4fcaf9d
--- /dev/null
+++ b/ops/sr/srx10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx10) {
+ NEXT_OP(sp, a, (sreg_t)x >> 10, y, o);
+}
diff --git a/ops/sr/srx11.c b/ops/sr/srx11.c
new file mode 100644
index 0000000..b707233
--- /dev/null
+++ b/ops/sr/srx11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx11) {
+ NEXT_OP(sp, a, (sreg_t)x >> 11, y, o);
+}
diff --git a/ops/sr/srx12.c b/ops/sr/srx12.c
new file mode 100644
index 0000000..ba78a93
--- /dev/null
+++ b/ops/sr/srx12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx12) {
+ NEXT_OP(sp, a, (sreg_t)x >> 12, y, o);
+}
diff --git a/ops/sr/srx13.c b/ops/sr/srx13.c
new file mode 100644
index 0000000..90bc39b
--- /dev/null
+++ b/ops/sr/srx13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx13) {
+ NEXT_OP(sp, a, (sreg_t)x >> 13, y, o);
+}
diff --git a/ops/sr/srx14.c b/ops/sr/srx14.c
new file mode 100644
index 0000000..f2dafc1
--- /dev/null
+++ b/ops/sr/srx14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx14) {
+ NEXT_OP(sp, a, (sreg_t)x >> 14, y, o);
+}
diff --git a/ops/sr/srx15.c b/ops/sr/srx15.c
new file mode 100644
index 0000000..d54f667
--- /dev/null
+++ b/ops/sr/srx15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx15) {
+ NEXT_OP(sp, a, (sreg_t)x >> 15, y, o);
+}
diff --git a/ops/sr/srx16.c b/ops/sr/srx16.c
new file mode 100644
index 0000000..33da6c6
--- /dev/null
+++ b/ops/sr/srx16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx16) {
+ NEXT_OP(sp, a, (sreg_t)x >> 16, y, o);
+}
diff --git a/ops/sr/srx17.c b/ops/sr/srx17.c
new file mode 100644
index 0000000..10eb81b
--- /dev/null
+++ b/ops/sr/srx17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx17) {
+ NEXT_OP(sp, a, (sreg_t)x >> 17, y, o);
+}
diff --git a/ops/sr/srx18.c b/ops/sr/srx18.c
new file mode 100644
index 0000000..4f49fba
--- /dev/null
+++ b/ops/sr/srx18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx18) {
+ NEXT_OP(sp, a, (sreg_t)x >> 18, y, o);
+}
diff --git a/ops/sr/srx19.c b/ops/sr/srx19.c
new file mode 100644
index 0000000..fe48085
--- /dev/null
+++ b/ops/sr/srx19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx19) {
+ NEXT_OP(sp, a, (sreg_t)x >> 19, y, o);
+}
diff --git a/ops/sr/srx2.c b/ops/sr/srx2.c
new file mode 100644
index 0000000..2fd039c
--- /dev/null
+++ b/ops/sr/srx2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx2) {
+ NEXT_OP(sp, a, (sreg_t)x >> 2, y, o);
+}
diff --git a/ops/sr/srx20.c b/ops/sr/srx20.c
new file mode 100644
index 0000000..c08ad8d
--- /dev/null
+++ b/ops/sr/srx20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx20) {
+ NEXT_OP(sp, a, (sreg_t)x >> 20, y, o);
+}
diff --git a/ops/sr/srx21.c b/ops/sr/srx21.c
new file mode 100644
index 0000000..3d75eaf
--- /dev/null
+++ b/ops/sr/srx21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx21) {
+ NEXT_OP(sp, a, (sreg_t)x >> 21, y, o);
+}
diff --git a/ops/sr/srx22.c b/ops/sr/srx22.c
new file mode 100644
index 0000000..331a2d5
--- /dev/null
+++ b/ops/sr/srx22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx22) {
+ NEXT_OP(sp, a, (sreg_t)x >> 22, y, o);
+}
diff --git a/ops/sr/srx23.c b/ops/sr/srx23.c
new file mode 100644
index 0000000..9c55ae6
--- /dev/null
+++ b/ops/sr/srx23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx23) {
+ NEXT_OP(sp, a, (sreg_t)x >> 23, y, o);
+}
diff --git a/ops/sr/srx24.c b/ops/sr/srx24.c
new file mode 100644
index 0000000..3ab047a
--- /dev/null
+++ b/ops/sr/srx24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx24) {
+ NEXT_OP(sp, a, (sreg_t)x >> 24, y, o);
+}
diff --git a/ops/sr/srx25.c b/ops/sr/srx25.c
new file mode 100644
index 0000000..9823d6d
--- /dev/null
+++ b/ops/sr/srx25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx25) {
+ NEXT_OP(sp, a, (sreg_t)x >> 25, y, o);
+}
diff --git a/ops/sr/srx26.c b/ops/sr/srx26.c
new file mode 100644
index 0000000..9723cfd
--- /dev/null
+++ b/ops/sr/srx26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx26) {
+ NEXT_OP(sp, a, (sreg_t)x >> 26, y, o);
+}
diff --git a/ops/sr/srx27.c b/ops/sr/srx27.c
new file mode 100644
index 0000000..b00add2
--- /dev/null
+++ b/ops/sr/srx27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx27) {
+ NEXT_OP(sp, a, (sreg_t)x >> 27, y, o);
+}
diff --git a/ops/sr/srx28.c b/ops/sr/srx28.c
new file mode 100644
index 0000000..44f118a
--- /dev/null
+++ b/ops/sr/srx28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx28) {
+ NEXT_OP(sp, a, (sreg_t)x >> 28, y, o);
+}
diff --git a/ops/sr/srx29.c b/ops/sr/srx29.c
new file mode 100644
index 0000000..4a3c481
--- /dev/null
+++ b/ops/sr/srx29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx29) {
+ NEXT_OP(sp, a, (sreg_t)x >> 29, y, o);
+}
diff --git a/ops/sr/srx3.c b/ops/sr/srx3.c
new file mode 100644
index 0000000..0fc4814
--- /dev/null
+++ b/ops/sr/srx3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx3) {
+ NEXT_OP(sp, a, (sreg_t)x >> 3, y, o);
+}
diff --git a/ops/sr/srx30.c b/ops/sr/srx30.c
new file mode 100644
index 0000000..49de8ed
--- /dev/null
+++ b/ops/sr/srx30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx30) {
+ NEXT_OP(sp, a, (sreg_t)x >> 30, y, o);
+}
diff --git a/ops/sr/srx31.c b/ops/sr/srx31.c
new file mode 100644
index 0000000..60666cf
--- /dev/null
+++ b/ops/sr/srx31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx31) {
+ NEXT_OP(sp, a, (sreg_t)x >> 31, y, o);
+}
diff --git a/ops/sr/srx32.c b/ops/sr/srx32.c
new file mode 100644
index 0000000..1e41280
--- /dev/null
+++ b/ops/sr/srx32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx32) {
+ NEXT_OP(sp, a, (sreg_t)x >> 32, y, o);
+}
diff --git a/ops/sr/srx33.c b/ops/sr/srx33.c
new file mode 100644
index 0000000..4bb49b1
--- /dev/null
+++ b/ops/sr/srx33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx33) {
+ NEXT_OP(sp, a, (sreg_t)x >> 33, y, o);
+}
diff --git a/ops/sr/srx34.c b/ops/sr/srx34.c
new file mode 100644
index 0000000..8167373
--- /dev/null
+++ b/ops/sr/srx34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx34) {
+ NEXT_OP(sp, a, (sreg_t)x >> 34, y, o);
+}
diff --git a/ops/sr/srx35.c b/ops/sr/srx35.c
new file mode 100644
index 0000000..b7305d9
--- /dev/null
+++ b/ops/sr/srx35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx35) {
+ NEXT_OP(sp, a, (sreg_t)x >> 35, y, o);
+}
diff --git a/ops/sr/srx36.c b/ops/sr/srx36.c
new file mode 100644
index 0000000..a51d26d
--- /dev/null
+++ b/ops/sr/srx36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx36) {
+ NEXT_OP(sp, a, (sreg_t)x >> 36, y, o);
+}
diff --git a/ops/sr/srx37.c b/ops/sr/srx37.c
new file mode 100644
index 0000000..2dad0ea
--- /dev/null
+++ b/ops/sr/srx37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx37) {
+ NEXT_OP(sp, a, (sreg_t)x >> 37, y, o);
+}
diff --git a/ops/sr/srx38.c b/ops/sr/srx38.c
new file mode 100644
index 0000000..4097de4
--- /dev/null
+++ b/ops/sr/srx38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx38) {
+ NEXT_OP(sp, a, (sreg_t)x >> 38, y, o);
+}
diff --git a/ops/sr/srx39.c b/ops/sr/srx39.c
new file mode 100644
index 0000000..4936025
--- /dev/null
+++ b/ops/sr/srx39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx39) {
+ NEXT_OP(sp, a, (sreg_t)x >> 39, y, o);
+}
diff --git a/ops/sr/srx4.c b/ops/sr/srx4.c
new file mode 100644
index 0000000..5ad583e
--- /dev/null
+++ b/ops/sr/srx4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx4) {
+ NEXT_OP(sp, a, (sreg_t)x >> 4, y, o);
+}
diff --git a/ops/sr/srx40.c b/ops/sr/srx40.c
new file mode 100644
index 0000000..b987514
--- /dev/null
+++ b/ops/sr/srx40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx40) {
+ NEXT_OP(sp, a, (sreg_t)x >> 40, y, o);
+}
diff --git a/ops/sr/srx41.c b/ops/sr/srx41.c
new file mode 100644
index 0000000..3910b6a
--- /dev/null
+++ b/ops/sr/srx41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx41) {
+ NEXT_OP(sp, a, (sreg_t)x >> 41, y, o);
+}
diff --git a/ops/sr/srx42.c b/ops/sr/srx42.c
new file mode 100644
index 0000000..43d6bdd
--- /dev/null
+++ b/ops/sr/srx42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx42) {
+ NEXT_OP(sp, a, (sreg_t)x >> 42, y, o);
+}
diff --git a/ops/sr/srx43.c b/ops/sr/srx43.c
new file mode 100644
index 0000000..d0f4693
--- /dev/null
+++ b/ops/sr/srx43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx43) {
+ NEXT_OP(sp, a, (sreg_t)x >> 43, y, o);
+}
diff --git a/ops/sr/srx44.c b/ops/sr/srx44.c
new file mode 100644
index 0000000..c25f5b0
--- /dev/null
+++ b/ops/sr/srx44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx44) {
+ NEXT_OP(sp, a, (sreg_t)x >> 44, y, o);
+}
diff --git a/ops/sr/srx45.c b/ops/sr/srx45.c
new file mode 100644
index 0000000..6352cfe
--- /dev/null
+++ b/ops/sr/srx45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx45) {
+ NEXT_OP(sp, a, (sreg_t)x >> 45, y, o);
+}
diff --git a/ops/sr/srx46.c b/ops/sr/srx46.c
new file mode 100644
index 0000000..e879f8b
--- /dev/null
+++ b/ops/sr/srx46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx46) {
+ NEXT_OP(sp, a, (sreg_t)x >> 46, y, o);
+}
diff --git a/ops/sr/srx47.c b/ops/sr/srx47.c
new file mode 100644
index 0000000..7126548
--- /dev/null
+++ b/ops/sr/srx47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx47) {
+ NEXT_OP(sp, a, (sreg_t)x >> 47, y, o);
+}
diff --git a/ops/sr/srx48.c b/ops/sr/srx48.c
new file mode 100644
index 0000000..a2c1784
--- /dev/null
+++ b/ops/sr/srx48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx48) {
+ NEXT_OP(sp, a, (sreg_t)x >> 48, y, o);
+}
diff --git a/ops/sr/srx49.c b/ops/sr/srx49.c
new file mode 100644
index 0000000..c891144
--- /dev/null
+++ b/ops/sr/srx49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx49) {
+ NEXT_OP(sp, a, (sreg_t)x >> 49, y, o);
+}
diff --git a/ops/sr/srx5.c b/ops/sr/srx5.c
new file mode 100644
index 0000000..66cd2be
--- /dev/null
+++ b/ops/sr/srx5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx5) {
+ NEXT_OP(sp, a, (sreg_t)x >> 5, y, o);
+}
diff --git a/ops/sr/srx50.c b/ops/sr/srx50.c
new file mode 100644
index 0000000..79d18b4
--- /dev/null
+++ b/ops/sr/srx50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx50) {
+ NEXT_OP(sp, a, (sreg_t)x >> 50, y, o);
+}
diff --git a/ops/sr/srx51.c b/ops/sr/srx51.c
new file mode 100644
index 0000000..15e1010
--- /dev/null
+++ b/ops/sr/srx51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx51) {
+ NEXT_OP(sp, a, (sreg_t)x >> 51, y, o);
+}
diff --git a/ops/sr/srx52.c b/ops/sr/srx52.c
new file mode 100644
index 0000000..f1d98e2
--- /dev/null
+++ b/ops/sr/srx52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx52) {
+ NEXT_OP(sp, a, (sreg_t)x >> 52, y, o);
+}
diff --git a/ops/sr/srx53.c b/ops/sr/srx53.c
new file mode 100644
index 0000000..393f280
--- /dev/null
+++ b/ops/sr/srx53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx53) {
+ NEXT_OP(sp, a, (sreg_t)x >> 53, y, o);
+}
diff --git a/ops/sr/srx54.c b/ops/sr/srx54.c
new file mode 100644
index 0000000..5b93485
--- /dev/null
+++ b/ops/sr/srx54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx54) {
+ NEXT_OP(sp, a, (sreg_t)x >> 54, y, o);
+}
diff --git a/ops/sr/srx55.c b/ops/sr/srx55.c
new file mode 100644
index 0000000..de895c1
--- /dev/null
+++ b/ops/sr/srx55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx55) {
+ NEXT_OP(sp, a, (sreg_t)x >> 55, y, o);
+}
diff --git a/ops/sr/srx56.c b/ops/sr/srx56.c
new file mode 100644
index 0000000..3793f1e
--- /dev/null
+++ b/ops/sr/srx56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx56) {
+ NEXT_OP(sp, a, (sreg_t)x >> 56, y, o);
+}
diff --git a/ops/sr/srx57.c b/ops/sr/srx57.c
new file mode 100644
index 0000000..f450194
--- /dev/null
+++ b/ops/sr/srx57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx57) {
+ NEXT_OP(sp, a, (sreg_t)x >> 57, y, o);
+}
diff --git a/ops/sr/srx58.c b/ops/sr/srx58.c
new file mode 100644
index 0000000..3f8e47b
--- /dev/null
+++ b/ops/sr/srx58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx58) {
+ NEXT_OP(sp, a, (sreg_t)x >> 58, y, o);
+}
diff --git a/ops/sr/srx59.c b/ops/sr/srx59.c
new file mode 100644
index 0000000..5b3040c
--- /dev/null
+++ b/ops/sr/srx59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx59) {
+ NEXT_OP(sp, a, (sreg_t)x >> 59, y, o);
+}
diff --git a/ops/sr/srx6.c b/ops/sr/srx6.c
new file mode 100644
index 0000000..556fa97
--- /dev/null
+++ b/ops/sr/srx6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx6) {
+ NEXT_OP(sp, a, (sreg_t)x >> 6, y, o);
+}
diff --git a/ops/sr/srx60.c b/ops/sr/srx60.c
new file mode 100644
index 0000000..695a74f
--- /dev/null
+++ b/ops/sr/srx60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx60) {
+ NEXT_OP(sp, a, (sreg_t)x >> 60, y, o);
+}
diff --git a/ops/sr/srx61.c b/ops/sr/srx61.c
new file mode 100644
index 0000000..f058691
--- /dev/null
+++ b/ops/sr/srx61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx61) {
+ NEXT_OP(sp, a, (sreg_t)x >> 61, y, o);
+}
diff --git a/ops/sr/srx62.c b/ops/sr/srx62.c
new file mode 100644
index 0000000..19b643a
--- /dev/null
+++ b/ops/sr/srx62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx62) {
+ NEXT_OP(sp, a, (sreg_t)x >> 62, y, o);
+}
diff --git a/ops/sr/srx63.c b/ops/sr/srx63.c
new file mode 100644
index 0000000..49a4e7a
--- /dev/null
+++ b/ops/sr/srx63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx63) {
+ NEXT_OP(sp, a, (sreg_t)x >> 63, y, o);
+}
diff --git a/ops/sr/srx7.c b/ops/sr/srx7.c
new file mode 100644
index 0000000..fb762cb
--- /dev/null
+++ b/ops/sr/srx7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx7) {
+ NEXT_OP(sp, a, (sreg_t)x >> 7, y, o);
+}
diff --git a/ops/sr/srx8.c b/ops/sr/srx8.c
new file mode 100644
index 0000000..8f139a5
--- /dev/null
+++ b/ops/sr/srx8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx8) {
+ NEXT_OP(sp, a, (sreg_t)x >> 8, y, o);
+}
diff --git a/ops/sr/srx9.c b/ops/sr/srx9.c
new file mode 100644
index 0000000..cc9a27f
--- /dev/null
+++ b/ops/sr/srx9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(srx9) {
+ NEXT_OP(sp, a, (sreg_t)x >> 9, y, o);
+}
diff --git a/ops/sr/sry0.c b/ops/sr/sry0.c
new file mode 100644
index 0000000..1be74cf
--- /dev/null
+++ b/ops/sr/sry0.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry0) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 0, o);
+}
diff --git a/ops/sr/sry1.c b/ops/sr/sry1.c
new file mode 100644
index 0000000..6245cdc
--- /dev/null
+++ b/ops/sr/sry1.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry1) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 1, o);
+}
diff --git a/ops/sr/sry10.c b/ops/sr/sry10.c
new file mode 100644
index 0000000..94c6492
--- /dev/null
+++ b/ops/sr/sry10.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry10) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 10, o);
+}
diff --git a/ops/sr/sry11.c b/ops/sr/sry11.c
new file mode 100644
index 0000000..d653d4c
--- /dev/null
+++ b/ops/sr/sry11.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry11) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 11, o);
+}
diff --git a/ops/sr/sry12.c b/ops/sr/sry12.c
new file mode 100644
index 0000000..17d0b08
--- /dev/null
+++ b/ops/sr/sry12.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry12) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 12, o);
+}
diff --git a/ops/sr/sry13.c b/ops/sr/sry13.c
new file mode 100644
index 0000000..7f74aaf
--- /dev/null
+++ b/ops/sr/sry13.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry13) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 13, o);
+}
diff --git a/ops/sr/sry14.c b/ops/sr/sry14.c
new file mode 100644
index 0000000..37cdaac
--- /dev/null
+++ b/ops/sr/sry14.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry14) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 14, o);
+}
diff --git a/ops/sr/sry15.c b/ops/sr/sry15.c
new file mode 100644
index 0000000..573bd2c
--- /dev/null
+++ b/ops/sr/sry15.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry15) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 15, o);
+}
diff --git a/ops/sr/sry16.c b/ops/sr/sry16.c
new file mode 100644
index 0000000..c877801
--- /dev/null
+++ b/ops/sr/sry16.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry16) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 16, o);
+}
diff --git a/ops/sr/sry17.c b/ops/sr/sry17.c
new file mode 100644
index 0000000..ea11e76
--- /dev/null
+++ b/ops/sr/sry17.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry17) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 17, o);
+}
diff --git a/ops/sr/sry18.c b/ops/sr/sry18.c
new file mode 100644
index 0000000..9baaace
--- /dev/null
+++ b/ops/sr/sry18.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry18) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 18, o);
+}
diff --git a/ops/sr/sry19.c b/ops/sr/sry19.c
new file mode 100644
index 0000000..b67c220
--- /dev/null
+++ b/ops/sr/sry19.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry19) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 19, o);
+}
diff --git a/ops/sr/sry2.c b/ops/sr/sry2.c
new file mode 100644
index 0000000..a946974
--- /dev/null
+++ b/ops/sr/sry2.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry2) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 2, o);
+}
diff --git a/ops/sr/sry20.c b/ops/sr/sry20.c
new file mode 100644
index 0000000..257e81c
--- /dev/null
+++ b/ops/sr/sry20.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry20) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 20, o);
+}
diff --git a/ops/sr/sry21.c b/ops/sr/sry21.c
new file mode 100644
index 0000000..a4f7082
--- /dev/null
+++ b/ops/sr/sry21.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry21) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 21, o);
+}
diff --git a/ops/sr/sry22.c b/ops/sr/sry22.c
new file mode 100644
index 0000000..49a3c8a
--- /dev/null
+++ b/ops/sr/sry22.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry22) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 22, o);
+}
diff --git a/ops/sr/sry23.c b/ops/sr/sry23.c
new file mode 100644
index 0000000..53e7980
--- /dev/null
+++ b/ops/sr/sry23.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry23) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 23, o);
+}
diff --git a/ops/sr/sry24.c b/ops/sr/sry24.c
new file mode 100644
index 0000000..6c41f88
--- /dev/null
+++ b/ops/sr/sry24.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry24) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 24, o);
+}
diff --git a/ops/sr/sry25.c b/ops/sr/sry25.c
new file mode 100644
index 0000000..dcc22cb
--- /dev/null
+++ b/ops/sr/sry25.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry25) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 25, o);
+}
diff --git a/ops/sr/sry26.c b/ops/sr/sry26.c
new file mode 100644
index 0000000..e1c6eec
--- /dev/null
+++ b/ops/sr/sry26.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry26) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 26, o);
+}
diff --git a/ops/sr/sry27.c b/ops/sr/sry27.c
new file mode 100644
index 0000000..2096395
--- /dev/null
+++ b/ops/sr/sry27.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry27) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 27, o);
+}
diff --git a/ops/sr/sry28.c b/ops/sr/sry28.c
new file mode 100644
index 0000000..8ce58f9
--- /dev/null
+++ b/ops/sr/sry28.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry28) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 28, o);
+}
diff --git a/ops/sr/sry29.c b/ops/sr/sry29.c
new file mode 100644
index 0000000..be9600b
--- /dev/null
+++ b/ops/sr/sry29.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry29) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 29, o);
+}
diff --git a/ops/sr/sry3.c b/ops/sr/sry3.c
new file mode 100644
index 0000000..2512146
--- /dev/null
+++ b/ops/sr/sry3.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry3) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 3, o);
+}
diff --git a/ops/sr/sry30.c b/ops/sr/sry30.c
new file mode 100644
index 0000000..2538a6a
--- /dev/null
+++ b/ops/sr/sry30.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry30) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 30, o);
+}
diff --git a/ops/sr/sry31.c b/ops/sr/sry31.c
new file mode 100644
index 0000000..cdb1f75
--- /dev/null
+++ b/ops/sr/sry31.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry31) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 31, o);
+}
diff --git a/ops/sr/sry32.c b/ops/sr/sry32.c
new file mode 100644
index 0000000..fabeb1e
--- /dev/null
+++ b/ops/sr/sry32.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry32) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 32, o);
+}
diff --git a/ops/sr/sry33.c b/ops/sr/sry33.c
new file mode 100644
index 0000000..02fb238
--- /dev/null
+++ b/ops/sr/sry33.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry33) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 33, o);
+}
diff --git a/ops/sr/sry34.c b/ops/sr/sry34.c
new file mode 100644
index 0000000..bc7d76f
--- /dev/null
+++ b/ops/sr/sry34.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry34) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 34, o);
+}
diff --git a/ops/sr/sry35.c b/ops/sr/sry35.c
new file mode 100644
index 0000000..b0acf55
--- /dev/null
+++ b/ops/sr/sry35.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry35) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 35, o);
+}
diff --git a/ops/sr/sry36.c b/ops/sr/sry36.c
new file mode 100644
index 0000000..05a189f
--- /dev/null
+++ b/ops/sr/sry36.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry36) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 36, o);
+}
diff --git a/ops/sr/sry37.c b/ops/sr/sry37.c
new file mode 100644
index 0000000..19b2806
--- /dev/null
+++ b/ops/sr/sry37.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry37) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 37, o);
+}
diff --git a/ops/sr/sry38.c b/ops/sr/sry38.c
new file mode 100644
index 0000000..439ddb1
--- /dev/null
+++ b/ops/sr/sry38.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry38) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 38, o);
+}
diff --git a/ops/sr/sry39.c b/ops/sr/sry39.c
new file mode 100644
index 0000000..314d532
--- /dev/null
+++ b/ops/sr/sry39.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry39) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 39, o);
+}
diff --git a/ops/sr/sry4.c b/ops/sr/sry4.c
new file mode 100644
index 0000000..30cf4da
--- /dev/null
+++ b/ops/sr/sry4.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry4) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 4, o);
+}
diff --git a/ops/sr/sry40.c b/ops/sr/sry40.c
new file mode 100644
index 0000000..c242b6e
--- /dev/null
+++ b/ops/sr/sry40.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry40) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 40, o);
+}
diff --git a/ops/sr/sry41.c b/ops/sr/sry41.c
new file mode 100644
index 0000000..8c5b5c9
--- /dev/null
+++ b/ops/sr/sry41.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry41) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 41, o);
+}
diff --git a/ops/sr/sry42.c b/ops/sr/sry42.c
new file mode 100644
index 0000000..d996632
--- /dev/null
+++ b/ops/sr/sry42.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry42) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 42, o);
+}
diff --git a/ops/sr/sry43.c b/ops/sr/sry43.c
new file mode 100644
index 0000000..58bf2ac
--- /dev/null
+++ b/ops/sr/sry43.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry43) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 43, o);
+}
diff --git a/ops/sr/sry44.c b/ops/sr/sry44.c
new file mode 100644
index 0000000..57fe5c3
--- /dev/null
+++ b/ops/sr/sry44.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry44) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 44, o);
+}
diff --git a/ops/sr/sry45.c b/ops/sr/sry45.c
new file mode 100644
index 0000000..e5d5450
--- /dev/null
+++ b/ops/sr/sry45.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry45) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 45, o);
+}
diff --git a/ops/sr/sry46.c b/ops/sr/sry46.c
new file mode 100644
index 0000000..1046429
--- /dev/null
+++ b/ops/sr/sry46.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry46) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 46, o);
+}
diff --git a/ops/sr/sry47.c b/ops/sr/sry47.c
new file mode 100644
index 0000000..6bc4ebb
--- /dev/null
+++ b/ops/sr/sry47.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry47) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 47, o);
+}
diff --git a/ops/sr/sry48.c b/ops/sr/sry48.c
new file mode 100644
index 0000000..25a4dca
--- /dev/null
+++ b/ops/sr/sry48.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry48) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 48, o);
+}
diff --git a/ops/sr/sry49.c b/ops/sr/sry49.c
new file mode 100644
index 0000000..4772a96
--- /dev/null
+++ b/ops/sr/sry49.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry49) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 49, o);
+}
diff --git a/ops/sr/sry5.c b/ops/sr/sry5.c
new file mode 100644
index 0000000..c11c67a
--- /dev/null
+++ b/ops/sr/sry5.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry5) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 5, o);
+}
diff --git a/ops/sr/sry50.c b/ops/sr/sry50.c
new file mode 100644
index 0000000..7c313bc
--- /dev/null
+++ b/ops/sr/sry50.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry50) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 50, o);
+}
diff --git a/ops/sr/sry51.c b/ops/sr/sry51.c
new file mode 100644
index 0000000..13704f9
--- /dev/null
+++ b/ops/sr/sry51.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry51) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 51, o);
+}
diff --git a/ops/sr/sry52.c b/ops/sr/sry52.c
new file mode 100644
index 0000000..63af3f3
--- /dev/null
+++ b/ops/sr/sry52.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry52) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 52, o);
+}
diff --git a/ops/sr/sry53.c b/ops/sr/sry53.c
new file mode 100644
index 0000000..0f751b1
--- /dev/null
+++ b/ops/sr/sry53.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry53) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 53, o);
+}
diff --git a/ops/sr/sry54.c b/ops/sr/sry54.c
new file mode 100644
index 0000000..c34b5eb
--- /dev/null
+++ b/ops/sr/sry54.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry54) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 54, o);
+}
diff --git a/ops/sr/sry55.c b/ops/sr/sry55.c
new file mode 100644
index 0000000..3cc2d49
--- /dev/null
+++ b/ops/sr/sry55.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry55) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 55, o);
+}
diff --git a/ops/sr/sry56.c b/ops/sr/sry56.c
new file mode 100644
index 0000000..2a3926f
--- /dev/null
+++ b/ops/sr/sry56.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry56) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 56, o);
+}
diff --git a/ops/sr/sry57.c b/ops/sr/sry57.c
new file mode 100644
index 0000000..f7435bd
--- /dev/null
+++ b/ops/sr/sry57.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry57) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 57, o);
+}
diff --git a/ops/sr/sry58.c b/ops/sr/sry58.c
new file mode 100644
index 0000000..09c8551
--- /dev/null
+++ b/ops/sr/sry58.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry58) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 58, o);
+}
diff --git a/ops/sr/sry59.c b/ops/sr/sry59.c
new file mode 100644
index 0000000..105529a
--- /dev/null
+++ b/ops/sr/sry59.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry59) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 59, o);
+}
diff --git a/ops/sr/sry6.c b/ops/sr/sry6.c
new file mode 100644
index 0000000..be0f722
--- /dev/null
+++ b/ops/sr/sry6.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry6) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 6, o);
+}
diff --git a/ops/sr/sry60.c b/ops/sr/sry60.c
new file mode 100644
index 0000000..d865d55
--- /dev/null
+++ b/ops/sr/sry60.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry60) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 60, o);
+}
diff --git a/ops/sr/sry61.c b/ops/sr/sry61.c
new file mode 100644
index 0000000..76a53fd
--- /dev/null
+++ b/ops/sr/sry61.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry61) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 61, o);
+}
diff --git a/ops/sr/sry62.c b/ops/sr/sry62.c
new file mode 100644
index 0000000..895ec2f
--- /dev/null
+++ b/ops/sr/sry62.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry62) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 62, o);
+}
diff --git a/ops/sr/sry63.c b/ops/sr/sry63.c
new file mode 100644
index 0000000..db7a38a
--- /dev/null
+++ b/ops/sr/sry63.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry63) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 63, o);
+}
diff --git a/ops/sr/sry7.c b/ops/sr/sry7.c
new file mode 100644
index 0000000..81faa7b
--- /dev/null
+++ b/ops/sr/sry7.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry7) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 7, o);
+}
diff --git a/ops/sr/sry8.c b/ops/sr/sry8.c
new file mode 100644
index 0000000..d17e82a
--- /dev/null
+++ b/ops/sr/sry8.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry8) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 8, o);
+}
diff --git a/ops/sr/sry9.c b/ops/sr/sry9.c
new file mode 100644
index 0000000..2238e86
--- /dev/null
+++ b/ops/sr/sry9.c
@@ -0,0 +1,4 @@
+#include "../common.h"
+DEFINE_OP(sry9) {
+ NEXT_OP(sp, a, x, (sreg_t)y >> 9, o);
+}
diff --git a/ops/sub.c b/ops/sub.c
new file mode 100644
index 0000000..47c2bfe
--- /dev/null
+++ b/ops/sub.c
@@ -0,0 +1,7 @@
+#include "common.h"
+
+DEFINE_OP(sub)
+{
+ UNUSED(a);
+ NEXT_OP(sp, x - y, a, y, o);
+}
diff --git a/ops/subxo.c b/ops/subxo.c
new file mode 100644
index 0000000..db18ce6
--- /dev/null
+++ b/ops/subxo.c
@@ -0,0 +1,7 @@
+#include "common.h"
+
+DEFINE_OP(subxo)
+{
+ UNUSED(a);
+ NEXT_OP(sp, x - o, x, y, o);
+}
diff --git a/ops/subyo.c b/ops/subyo.c
new file mode 100644
index 0000000..cb7ae63
--- /dev/null
+++ b/ops/subyo.c
@@ -0,0 +1,7 @@
+#include "common.h"
+
+DEFINE_OP(subyo)
+{
+ UNUSED(a);
+ NEXT_OP(sp, y - o, x, y, o);
+}
diff --git a/scripts/gen-deps b/scripts/gen-deps
new file mode 100755
index 0000000..e9c7a51
--- /dev/null
+++ b/scripts/gen-deps
@@ -0,0 +1,35 @@
+#!/bin/sh
+
+gencommon () {
+ lint="build/${s%.*}${1}.l"
+ dep="build/${s%.*}${1}.d"
+ obj="build/${s%.*}${1}"
+
+ echo "${dep}:" >> deps.mk
+ echo "include ${dep}" >> deps.mk
+ echo "${obj}: ${s}" >> deps.mk
+}
+
+genobjs () {
+ gencommon ".o"
+ echo "${obj}: ${s}" >> deps.mk
+ echo " \$(COMPILE) -c \$< -o \$@" >> deps.mk
+
+ echo "${lint}: ${s}" >> deps.mk
+ echo " \$(LINT) -c ${s} -o /dev/null" >> deps.mk
+}
+
+case "${1}" in
+ --sources)
+ func=genobjs
+ ;;
+esac
+
+# create all subdirectories
+mkdir -p $(echo "${2}" | xargs dirname | uniq | sed 's|^|build/|g')
+
+for s in ${2}
+do
+ ${func} ${suffix}
+ echo ${obj}
+done
diff --git a/scripts/gen-ops b/scripts/gen-ops
new file mode 100755
index 0000000..d7a981a
--- /dev/null
+++ b/scripts/gen-ops
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+genobjs () {
+ obj="build/${s%.*}.o"
+ bin="build/${s%.*}.bin"
+ echo "${obj}: ${s}" >> deps.mk
+ echo " \$(OP_COMPILE) -c \$< -o \$@" >> deps.mk
+ echo "${bin}: lib/prune" >> deps.mk
+ echo "${bin}: ${obj}" >> deps.mk
+ echo " \$(OBJCOPY) -j .text -Obinary \$< \$@" >> deps.mk
+ echo " ./lib/prune lib/empty.bin ${bin}" >> deps.mk
+ echo "${bin}"
+}
+
+mkdir -p $(echo "${1}" | xargs dirname | uniq | sed 's|^|build/|g')
+
+for s in ${1}
+do
+ genobjs
+done
diff --git a/scripts/license b/scripts/license
new file mode 100755
index 0000000..2a2de9b
--- /dev/null
+++ b/scripts/license
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+SPDX="/* SPDX-License-Identifier: GPL-3.0-or-later */"
+
+for f in "$@"
+do
+ if [ "$(head -1 "$f")" != "${SPDX}" ]
+ then
+ sed -i "1i${SPDX}\n" "$f"
+ fi
+done
diff --git a/scripts/warn-undocumented b/scripts/warn-undocumented
new file mode 100755
index 0000000..f1367bd
--- /dev/null
+++ b/scripts/warn-undocumented
@@ -0,0 +1,6 @@
+#!/bin/sh
+# look through all files for either @file or \file, grep -c will report
+# ./example.file:0 if it is not found.
+find src -iname '*.[ch]' -exec \
+ grep -c '[@\]file' {} \+ \
+ | awk -F':' '$2 == 0 {print "Undocumented file:", $1}'
diff --git a/src/copyjit.c b/src/copyjit.c
new file mode 100644
index 0000000..e76bb99
--- /dev/null
+++ b/src/copyjit.c
@@ -0,0 +1,358 @@
+#include <string.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <sys/mman.h>
+
+#include "copyjit.h"
+
+#include "../lib/ops.h"
+#include "../lib/defns.h"
+#include "../ops/common.h"
+
+#define SELECT(i, ctx, name) \
+case i: name##i (ctx); break;
+
+#define SELECT64(ctx, name) \
+ SELECT(0, ctx, name) \
+ SELECT(1, ctx, name) \
+ SELECT(2, ctx, name) \
+ SELECT(3, ctx, name) \
+ SELECT(4, ctx, name) \
+ SELECT(5, ctx, name) \
+ SELECT(6, ctx, name) \
+ SELECT(7, ctx, name) \
+ SELECT(8, ctx, name) \
+ SELECT(9, ctx, name) \
+ SELECT(10, ctx, name) \
+ SELECT(11, ctx, name) \
+ SELECT(12, ctx, name) \
+ SELECT(13, ctx, name) \
+ SELECT(14, ctx, name) \
+ SELECT(15, ctx, name) \
+ SELECT(16, ctx, name) \
+ SELECT(17, ctx, name) \
+ SELECT(18, ctx, name) \
+ SELECT(19, ctx, name) \
+ SELECT(20, ctx, name) \
+ SELECT(21, ctx, name) \
+ SELECT(22, ctx, name) \
+ SELECT(23, ctx, name) \
+ SELECT(24, ctx, name) \
+ SELECT(25, ctx, name) \
+ SELECT(26, ctx, name) \
+ SELECT(27, ctx, name) \
+ SELECT(28, ctx, name) \
+ SELECT(29, ctx, name) \
+ SELECT(30, ctx, name) \
+ SELECT(31, ctx, name) \
+ SELECT(32, ctx, name) \
+ SELECT(33, ctx, name) \
+ SELECT(34, ctx, name) \
+ SELECT(35, ctx, name) \
+ SELECT(36, ctx, name) \
+ SELECT(37, ctx, name) \
+ SELECT(38, ctx, name) \
+ SELECT(39, ctx, name) \
+ SELECT(40, ctx, name) \
+ SELECT(41, ctx, name) \
+ SELECT(42, ctx, name) \
+ SELECT(43, ctx, name) \
+ SELECT(44, ctx, name) \
+ SELECT(45, ctx, name) \
+ SELECT(46, ctx, name) \
+ SELECT(47, ctx, name) \
+ SELECT(48, ctx, name) \
+ SELECT(49, ctx, name) \
+ SELECT(50, ctx, name) \
+ SELECT(51, ctx, name) \
+ SELECT(52, ctx, name) \
+ SELECT(53, ctx, name) \
+ SELECT(54, ctx, name) \
+ SELECT(55, ctx, name) \
+ SELECT(56, ctx, name) \
+ SELECT(57, ctx, name) \
+ SELECT(58, ctx, name) \
+ SELECT(59, ctx, name) \
+ SELECT(60, ctx, name) \
+ SELECT(61, ctx, name) \
+ SELECT(62, ctx, name) \
+ SELECT(63, ctx, name) \
+
+#define SELECT256(ctx, name) \
+ SELECT64(ctx, name) \
+ SELECT(64, ctx, name) \
+ SELECT(65, ctx, name) \
+ SELECT(66, ctx, name) \
+ SELECT(67, ctx, name) \
+ SELECT(68, ctx, name) \
+ SELECT(69, ctx, name) \
+ SELECT(70, ctx, name) \
+ SELECT(71, ctx, name) \
+ SELECT(72, ctx, name) \
+ SELECT(73, ctx, name) \
+ SELECT(74, ctx, name) \
+ SELECT(75, ctx, name) \
+ SELECT(76, ctx, name) \
+ SELECT(77, ctx, name) \
+ SELECT(78, ctx, name) \
+ SELECT(79, ctx, name) \
+ SELECT(80, ctx, name) \
+ SELECT(81, ctx, name) \
+ SELECT(82, ctx, name) \
+ SELECT(83, ctx, name) \
+ SELECT(84, ctx, name) \
+ SELECT(85, ctx, name) \
+ SELECT(86, ctx, name) \
+ SELECT(87, ctx, name) \
+ SELECT(88, ctx, name) \
+ SELECT(89, ctx, name) \
+ SELECT(90, ctx, name) \
+ SELECT(91, ctx, name) \
+ SELECT(92, ctx, name) \
+ SELECT(93, ctx, name) \
+ SELECT(94, ctx, name) \
+ SELECT(95, ctx, name) \
+ SELECT(96, ctx, name) \
+ SELECT(97, ctx, name) \
+ SELECT(98, ctx, name) \
+ SELECT(99, ctx, name) \
+ SELECT(100, ctx, name) \
+ SELECT(101, ctx, name) \
+ SELECT(102, ctx, name) \
+ SELECT(103, ctx, name) \
+ SELECT(104, ctx, name) \
+ SELECT(105, ctx, name) \
+ SELECT(106, ctx, name) \
+ SELECT(107, ctx, name) \
+ SELECT(108, ctx, name) \
+ SELECT(109, ctx, name) \
+ SELECT(110, ctx, name) \
+ SELECT(111, ctx, name) \
+ SELECT(112, ctx, name) \
+ SELECT(113, ctx, name) \
+ SELECT(114, ctx, name) \
+ SELECT(115, ctx, name) \
+ SELECT(116, ctx, name) \
+ SELECT(117, ctx, name) \
+ SELECT(118, ctx, name) \
+ SELECT(119, ctx, name) \
+ SELECT(120, ctx, name) \
+ SELECT(121, ctx, name) \
+ SELECT(122, ctx, name) \
+ SELECT(123, ctx, name) \
+ SELECT(124, ctx, name) \
+ SELECT(125, ctx, name) \
+ SELECT(126, ctx, name) \
+ SELECT(127, ctx, name) \
+ SELECT(128, ctx, name) \
+ SELECT(129, ctx, name) \
+ SELECT(130, ctx, name) \
+ SELECT(131, ctx, name) \
+ SELECT(132, ctx, name) \
+ SELECT(133, ctx, name) \
+ SELECT(134, ctx, name) \
+ SELECT(135, ctx, name) \
+ SELECT(136, ctx, name) \
+ SELECT(137, ctx, name) \
+ SELECT(138, ctx, name) \
+ SELECT(139, ctx, name) \
+ SELECT(140, ctx, name) \
+ SELECT(141, ctx, name) \
+ SELECT(142, ctx, name) \
+ SELECT(143, ctx, name) \
+ SELECT(144, ctx, name) \
+ SELECT(145, ctx, name) \
+ SELECT(146, ctx, name) \
+ SELECT(147, ctx, name) \
+ SELECT(148, ctx, name) \
+ SELECT(149, ctx, name) \
+ SELECT(150, ctx, name) \
+ SELECT(151, ctx, name) \
+ SELECT(152, ctx, name) \
+ SELECT(153, ctx, name) \
+ SELECT(154, ctx, name) \
+ SELECT(155, ctx, name) \
+ SELECT(156, ctx, name) \
+ SELECT(157, ctx, name) \
+ SELECT(158, ctx, name) \
+ SELECT(159, ctx, name) \
+ SELECT(160, ctx, name) \
+ SELECT(161, ctx, name) \
+ SELECT(162, ctx, name) \
+ SELECT(163, ctx, name) \
+ SELECT(164, ctx, name) \
+ SELECT(165, ctx, name) \
+ SELECT(166, ctx, name) \
+ SELECT(167, ctx, name) \
+ SELECT(168, ctx, name) \
+ SELECT(169, ctx, name) \
+ SELECT(170, ctx, name) \
+ SELECT(171, ctx, name) \
+ SELECT(172, ctx, name) \
+ SELECT(173, ctx, name) \
+ SELECT(174, ctx, name) \
+ SELECT(175, ctx, name) \
+ SELECT(176, ctx, name) \
+ SELECT(177, ctx, name) \
+ SELECT(178, ctx, name) \
+ SELECT(179, ctx, name) \
+ SELECT(180, ctx, name) \
+ SELECT(181, ctx, name) \
+ SELECT(182, ctx, name) \
+ SELECT(183, ctx, name) \
+ SELECT(184, ctx, name) \
+ SELECT(185, ctx, name) \
+ SELECT(186, ctx, name) \
+ SELECT(187, ctx, name) \
+ SELECT(188, ctx, name) \
+ SELECT(189, ctx, name) \
+ SELECT(190, ctx, name) \
+ SELECT(191, ctx, name) \
+ SELECT(192, ctx, name) \
+ SELECT(193, ctx, name) \
+ SELECT(194, ctx, name) \
+ SELECT(195, ctx, name) \
+ SELECT(196, ctx, name) \
+ SELECT(197, ctx, name) \
+ SELECT(198, ctx, name) \
+ SELECT(199, ctx, name) \
+ SELECT(200, ctx, name) \
+ SELECT(201, ctx, name) \
+ SELECT(202, ctx, name) \
+ SELECT(203, ctx, name) \
+ SELECT(204, ctx, name) \
+ SELECT(205, ctx, name) \
+ SELECT(206, ctx, name) \
+ SELECT(207, ctx, name) \
+ SELECT(208, ctx, name) \
+ SELECT(209, ctx, name) \
+ SELECT(210, ctx, name) \
+ SELECT(211, ctx, name) \
+ SELECT(212, ctx, name) \
+ SELECT(213, ctx, name) \
+ SELECT(214, ctx, name) \
+ SELECT(215, ctx, name) \
+ SELECT(216, ctx, name) \
+ SELECT(217, ctx, name) \
+ SELECT(218, ctx, name) \
+ SELECT(219, ctx, name) \
+ SELECT(220, ctx, name) \
+ SELECT(221, ctx, name) \
+ SELECT(222, ctx, name) \
+ SELECT(223, ctx, name) \
+ SELECT(224, ctx, name) \
+ SELECT(225, ctx, name) \
+ SELECT(226, ctx, name) \
+ SELECT(227, ctx, name) \
+ SELECT(228, ctx, name) \
+ SELECT(229, ctx, name) \
+ SELECT(230, ctx, name) \
+ SELECT(231, ctx, name) \
+ SELECT(232, ctx, name) \
+ SELECT(233, ctx, name) \
+ SELECT(234, ctx, name) \
+ SELECT(235, ctx, name) \
+ SELECT(236, ctx, name) \
+ SELECT(237, ctx, name) \
+ SELECT(238, ctx, name) \
+ SELECT(239, ctx, name) \
+ SELECT(240, ctx, name) \
+ SELECT(241, ctx, name) \
+ SELECT(242, ctx, name) \
+ SELECT(243, ctx, name) \
+ SELECT(244, ctx, name) \
+ SELECT(245, ctx, name) \
+ SELECT(246, ctx, name) \
+ SELECT(247, ctx, name) \
+ SELECT(248, ctx, name) \
+ SELECT(249, ctx, name) \
+ SELECT(250, ctx, name) \
+ SELECT(251, ctx, name) \
+ SELECT(252, ctx, name) \
+ SELECT(253, ctx, name) \
+ SELECT(254, ctx, name) \
+ SELECT(255, ctx, name)
+
+static void select_uli(ctx_t *ctx, uint8_t i)
+{
+ /* should maybe be uli? */
+ switch (i) {
+ SELECT256(ctx, compile_li);
+ }
+}
+
+static void select_uaddi(ctx_t *ctx, uint8_t i)
+{
+ switch (i) {
+ SELECT256(ctx, compile_addi);
+ }
+}
+
+static void select_slo(ctx_t *ctx, uint8_t i)
+{
+ switch (i) {
+ SELECT64(ctx, compile_slo);
+ }
+}
+
+#define NTH_BYTE(i, n) ((i) >> ((n) * 8) & 0xff)
+void *compile_uli(ctx_t *ctx, unsigned long i)
+{
+ void *pc = ctx->pc;
+
+ if (i < 256) {
+ select_uli(ctx, i);
+ return pc;
+ }
+
+ /* find first non-zero byte */
+ int nz = sizeof(unsigned long) - 1;
+ for (; nz >= 0; --nz)
+ if (NTH_BYTE(i, nz) != 0)
+ break;
+
+ /* start populating */
+ select_uli(ctx, i >> (nz * 8));
+
+ size_t shifts = 1;
+ for (nz--; nz >= 0; --nz) {
+ if (NTH_BYTE(i, nz) == 0) {
+ shifts++;
+ continue;
+ }
+
+ select_slo(ctx, shifts * 8);
+ select_uaddi(ctx, NTH_BYTE(i, nz));
+ shifts = 1;
+ }
+
+ /* last octet is zero, meaning it fell through the for loop */
+ if (shifts != 1)
+ select_slo(ctx, (shifts - 1) * 8);
+
+ return pc;
+}
+
+void compile_start(ctx_t *ctx)
+{
+ /* random number for now */
+ /* oh yeah, have to ask for executable space */
+ ctx->size = 4096;
+ ctx->buf = mmap(NULL, ctx->size,
+ PROT_WRITE | PROT_READ | PROT_EXEC,
+ MAP_PRIVATE | MAP_ANONYMOUS,
+ -1, 0);
+ ctx->pc = ctx->buf;
+}
+
+void compile_finish(ctx_t *ctx)
+{
+ __builtin___clear_cache(ctx->buf, ctx->buf + ctx->size);
+}
+
+void run(ctx_t *ctx)
+{
+ void *sp = malloc(4096);
+ JUMP(ctx->buf, sp, 0, 0, 0, 0);
+ free(sp);
+}
diff --git a/src/copyjit.h b/src/copyjit.h
new file mode 100644
index 0000000..8582217
--- /dev/null
+++ b/src/copyjit.h
@@ -0,0 +1,17 @@
+#ifndef HMMJIT_H
+#define HMMJIT_H
+
+typedef struct {
+ char *pc;
+ char *buf;
+ size_t size;
+} ctx_t;
+
+#include "../lib/decls.h"
+
+void *compile_uli(ctx_t *ctx, unsigned long i);
+void compile_start(ctx_t *ctx);
+void compile_finish(ctx_t *ctx);
+void run(ctx_t *ctx);
+
+#endif /* HMMJIT_H */
diff --git a/src/main.c b/src/main.c
new file mode 100644
index 0000000..be93061
--- /dev/null
+++ b/src/main.c
@@ -0,0 +1,32 @@
+#include <stdint.h>
+#include <stddef.h>
+
+#include "copyjit.h"
+
+int main()
+{
+ ctx_t ctx;
+ compile_start(&ctx);
+
+ compile_uli(&ctx, 0); // total in a
+ compile_movao(&ctx);
+
+ compile_uli(&ctx, 0);
+ compile_movyo(&ctx); // iter in y
+
+ void *top = compile_movxa(&ctx); // iter + total in a
+ compile_add(&ctx);
+
+ compile_incy(&ctx); // increment iter
+ compile_uli(&ctx, 1000000000); // limit in o
+ compile_subyo(&ctx);
+
+ compile_uli(&ctx, (uintptr_t)top); // branch target in o
+ compile_ban(&ctx);
+
+ compile_end(&ctx);
+
+ compile_finish(&ctx);
+
+ run(&ctx);
+}
diff --git a/src/source.mk b/src/source.mk
new file mode 100644
index 0000000..de98d32
--- /dev/null
+++ b/src/source.mk
@@ -0,0 +1,2 @@
+SRC_LOCAL != echo src/*.c
+SOURCES += $(SRC_LOCAL)
diff --git a/uncrustify.conf b/uncrustify.conf
new file mode 100644
index 0000000..b72a76a
--- /dev/null
+++ b/uncrustify.conf
@@ -0,0 +1,3133 @@
+# Uncrustify-0.72.0_f
+
+# TODO: add slightly more strict rules, there are a few too many 'ignore'
+# directives for my liking.
+# TODO: macros that are longer than the line width are broken up in some pretty
+# ugly ways, I should look into that.
+
+#
+# General options
+#
+
+# The type of line endings.
+#
+# Default: auto
+newlines = auto # lf/crlf/cr/auto
+
+# The original size of tabs in the input.
+#
+# Default: 8
+input_tab_size = 8 # unsigned number
+
+# The size of tabs in the output (only used if align_with_tabs=true).
+#
+# Default: 8
+output_tab_size = 8 # unsigned number
+
+# The ASCII value of the string escape char, usually 92 (\) or (Pawn) 94 (^).
+#
+# Default: 92
+string_escape_char = 92 # unsigned number
+
+# Alternate string escape char (usually only used for Pawn).
+# Only works right before the quote char.
+string_escape_char2 = 0 # unsigned number
+
+# Replace tab characters found in string literals with the escape sequence \t
+# instead.
+string_replace_tab_chars = false # true/false
+
+# Allow interpreting '>=' and '>>=' as part of a template in code like
+# 'void f(list<list<B>>=val);'. If true, 'assert(x<0 && y>=3)' will be broken.
+# Improvements to template detection may make this option obsolete.
+tok_split_gte = false # true/false
+
+# Disable formatting of NL_CONT ('\\n') ended lines (e.g. multiline macros)
+disable_processing_nl_cont = false # true/false
+
+# Specify the marker used in comments to disable processing of part of the
+# file.
+# The comment should be used alone in one line.
+#
+# Default: *INDENT-OFF*
+disable_processing_cmt = " *INDENT-OFF*" # string
+
+# Specify the marker used in comments to (re)enable processing in a file.
+# The comment should be used alone in one line.
+#
+# Default: *INDENT-ON*
+enable_processing_cmt = " *INDENT-ON*" # string
+
+# Enable parsing of digraphs.
+enable_digraphs = false # true/false
+
+# Add or remove the UTF-8 BOM (recommend 'remove').
+utf8_bom = ignore # ignore/add/remove/force
+
+# If the file contains bytes with values between 128 and 255, but is not
+# UTF-8, then output as UTF-8.
+utf8_byte = false # true/false
+
+# Force the output encoding to UTF-8.
+utf8_force = false # true/false
+
+# Add or remove space between 'do' and '{'.
+sp_do_brace_open = ignore # ignore/add/remove/force
+
+# Add or remove space between '}' and 'while'.
+sp_brace_close_while = ignore # ignore/add/remove/force
+
+# Add or remove space between 'while' and '('.
+sp_while_paren_open = ignore # ignore/add/remove/force
+
+#
+# Spacing options
+#
+
+# Add or remove space around non-assignment symbolic operators ('+', '/', '%',
+# '<<', and so forth).
+sp_arith = ignore # ignore/add/remove/force
+
+# Add or remove space around arithmetic operators '+' and '-'.
+#
+# Overrides sp_arith.
+sp_arith_additive = ignore # ignore/add/remove/force
+
+# Add or remove space around assignment operator '=', '+=', etc.
+sp_assign = ignore # ignore/add/remove/force
+
+# Add or remove space around '=' in C++11 lambda capture specifications.
+#
+# Overrides sp_assign.
+sp_cpp_lambda_assign = ignore # ignore/add/remove/force
+
+# Add or remove space after the capture specification of a C++11 lambda when
+# an argument list is present, as in '[] <here> (int x){ ... }'.
+sp_cpp_lambda_square_paren = ignore # ignore/add/remove/force
+
+# Add or remove space after the capture specification of a C++11 lambda with
+# no argument list is present, as in '[] <here> { ... }'.
+sp_cpp_lambda_square_brace = ignore # ignore/add/remove/force
+
+# Add or remove space after the argument list of a C++11 lambda, as in
+# '[](int x) <here> { ... }'.
+sp_cpp_lambda_paren_brace = ignore # ignore/add/remove/force
+
+# Add or remove space between a lambda body and its call operator of an
+# immediately invoked lambda, as in '[]( ... ){ ... } <here> ( ... )'.
+sp_cpp_lambda_fparen = ignore # ignore/add/remove/force
+
+# Add or remove space around assignment operator '=' in a prototype.
+#
+# If set to ignore, use sp_assign.
+sp_assign_default = ignore # ignore/add/remove/force
+
+# Add or remove space before assignment operator '=', '+=', etc.
+#
+# Overrides sp_assign.
+sp_before_assign = ignore # ignore/add/remove/force
+
+# Add or remove space after assignment operator '=', '+=', etc.
+#
+# Overrides sp_assign.
+sp_after_assign = ignore # ignore/add/remove/force
+
+# Add or remove space in 'NS_ENUM ('.
+sp_enum_paren = ignore # ignore/add/remove/force
+
+# Add or remove space around assignment '=' in enum.
+sp_enum_assign = ignore # ignore/add/remove/force
+
+# Add or remove space before assignment '=' in enum.
+#
+# Overrides sp_enum_assign.
+sp_enum_before_assign = ignore # ignore/add/remove/force
+
+# Add or remove space after assignment '=' in enum.
+#
+# Overrides sp_enum_assign.
+sp_enum_after_assign = ignore # ignore/add/remove/force
+
+# Add or remove space around assignment ':' in enum.
+sp_enum_colon = ignore # ignore/add/remove/force
+
+# Add or remove space around preprocessor '##' concatenation operator.
+#
+# Default: add
+sp_pp_concat = remove # ignore/add/remove/force
+
+# Add or remove space after preprocessor '#' stringify operator.
+# Also affects the '#@' charizing operator.
+sp_pp_stringify = ignore # ignore/add/remove/force
+
+# Add or remove space before preprocessor '#' stringify operator
+# as in '#define x(y) L#y'.
+sp_before_pp_stringify = ignore # ignore/add/remove/force
+
+# Add or remove space around boolean operators '&&' and '||'.
+sp_bool = ignore # ignore/add/remove/force
+
+# Add or remove space around compare operator '<', '>', '==', etc.
+sp_compare = ignore # ignore/add/remove/force
+
+# Add or remove space inside '(' and ')'.
+sp_inside_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between nested parentheses, i.e. '((' vs. ') )'.
+sp_paren_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between back-to-back parentheses, i.e. ')(' vs. ') ('.
+sp_cparen_oparen = ignore # ignore/add/remove/force
+
+# Whether to balance spaces inside nested parentheses.
+sp_balance_nested_parens = false # true/false
+
+# Add or remove space between ')' and '{'.
+sp_paren_brace = ignore # ignore/add/remove/force
+
+# Add or remove space between nested braces, i.e. '{{' vs '{ {'.
+sp_brace_brace = ignore # ignore/add/remove/force
+
+# Add or remove space before pointer star '*'.
+sp_before_ptr_star = ignore # ignore/add/remove/force
+
+# Add or remove space before pointer star '*' that isn't followed by a
+# variable name. If set to ignore, sp_before_ptr_star is used instead.
+sp_before_unnamed_ptr_star = ignore # ignore/add/remove/force
+
+# Add or remove space between pointer stars '*'.
+sp_between_ptr_star = ignore # ignore/add/remove/force
+
+# Add or remove space after pointer star '*', if followed by a word.
+#
+# Overrides sp_type_func.
+sp_after_ptr_star = ignore # ignore/add/remove/force
+
+# Add or remove space after pointer caret '^', if followed by a word.
+sp_after_ptr_block_caret = ignore # ignore/add/remove/force
+
+# Add or remove space after pointer star '*', if followed by a qualifier.
+sp_after_ptr_star_qualifier = ignore # ignore/add/remove/force
+
+# Add or remove space after a pointer star '*', if followed by a function
+# prototype or function definition.
+#
+# Overrides sp_after_ptr_star and sp_type_func.
+sp_after_ptr_star_func = ignore # ignore/add/remove/force
+
+# Add or remove space after a pointer star '*', if followed by an open
+# parenthesis, as in 'void* (*)().
+sp_ptr_star_paren = ignore # ignore/add/remove/force
+
+# Add or remove space before a pointer star '*', if followed by a function
+# prototype or function definition.
+sp_before_ptr_star_func = ignore # ignore/add/remove/force
+
+# Add or remove space before a reference sign '&'.
+sp_before_byref = ignore # ignore/add/remove/force
+
+# Add or remove space before a reference sign '&' that isn't followed by a
+# variable name. If set to ignore, sp_before_byref is used instead.
+sp_before_unnamed_byref = ignore # ignore/add/remove/force
+
+# Add or remove space after reference sign '&', if followed by a word.
+#
+# Overrides sp_type_func.
+sp_after_byref = ignore # ignore/add/remove/force
+
+# Add or remove space after a reference sign '&', if followed by a function
+# prototype or function definition.
+#
+# Overrides sp_after_byref and sp_type_func.
+sp_after_byref_func = ignore # ignore/add/remove/force
+
+# Add or remove space before a reference sign '&', if followed by a function
+# prototype or function definition.
+sp_before_byref_func = ignore # ignore/add/remove/force
+
+# Add or remove space between type and word. In cases where total removal of
+# whitespace would be a syntax error, a value of 'remove' is treated the same
+# as 'force'.
+#
+# This also affects some other instances of space following a type that are
+# not covered by other options; for example, between the return type and
+# parenthesis of a function type template argument, between the type and
+# parenthesis of an array parameter, or between 'decltype(...)' and the
+# following word.
+#
+# Default: force
+sp_after_type = force # ignore/add/remove/force
+
+# Add or remove space between 'decltype(...)' and word.
+#
+# Overrides sp_after_type.
+sp_after_decltype = ignore # ignore/add/remove/force
+
+# (D) Add or remove space before the parenthesis in the D constructs
+# 'template Foo(' and 'class Foo('.
+sp_before_template_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between 'template' and '<'.
+# If set to ignore, sp_before_angle is used.
+sp_template_angle = ignore # ignore/add/remove/force
+
+# Add or remove space before '<'.
+sp_before_angle = ignore # ignore/add/remove/force
+
+# Add or remove space inside '<' and '>'.
+sp_inside_angle = ignore # ignore/add/remove/force
+
+# Add or remove space inside '<>'.
+sp_inside_angle_empty = ignore # ignore/add/remove/force
+
+# Add or remove space between '>' and ':'.
+sp_angle_colon = ignore # ignore/add/remove/force
+
+# Add or remove space after '>'.
+sp_after_angle = ignore # ignore/add/remove/force
+
+# Add or remove space between '>' and '(' as found in 'new List<byte>(foo);'.
+sp_angle_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between '>' and '()' as found in 'new List<byte>();'.
+sp_angle_paren_empty = ignore # ignore/add/remove/force
+
+# Add or remove space between '>' and a word as in 'List<byte> m;' or
+# 'template <typename T> static ...'.
+sp_angle_word = ignore # ignore/add/remove/force
+
+# Add or remove space between '>' and '>' in '>>' (template stuff).
+#
+# Default: add
+sp_angle_shift = add # ignore/add/remove/force
+
+# (C++11) Permit removal of the space between '>>' in 'foo<bar<int> >'. Note
+# that sp_angle_shift cannot remove the space without this option.
+sp_permit_cpp11_shift = false # true/false
+
+# Add or remove space before '(' of control statements ('if', 'for', 'switch',
+# 'while', etc.).
+sp_before_sparen = ignore # ignore/add/remove/force
+
+# Add or remove space inside '(' and ')' of control statements.
+sp_inside_sparen = ignore # ignore/add/remove/force
+
+# Add or remove space after '(' of control statements.
+#
+# Overrides sp_inside_sparen.
+sp_inside_sparen_open = ignore # ignore/add/remove/force
+
+# Add or remove space before ')' of control statements.
+#
+# Overrides sp_inside_sparen.
+sp_inside_sparen_close = ignore # ignore/add/remove/force
+
+# Add or remove space after ')' of control statements.
+sp_after_sparen = ignore # ignore/add/remove/force
+
+# Add or remove space between ')' and '{' of of control statements.
+sp_sparen_brace = ignore # ignore/add/remove/force
+
+# (D) Add or remove space between 'invariant' and '('.
+sp_invariant_paren = ignore # ignore/add/remove/force
+
+# (D) Add or remove space after the ')' in 'invariant (C) c'.
+sp_after_invariant_paren = ignore # ignore/add/remove/force
+
+# Add or remove space before empty statement ';' on 'if', 'for' and 'while'.
+sp_special_semi = ignore # ignore/add/remove/force
+
+# Add or remove space before ';'.
+#
+# Default: remove
+sp_before_semi = remove # ignore/add/remove/force
+
+# Add or remove space before ';' in non-empty 'for' statements.
+sp_before_semi_for = ignore # ignore/add/remove/force
+
+# Add or remove space before a semicolon of an empty part of a for statement.
+sp_before_semi_for_empty = ignore # ignore/add/remove/force
+
+# Add or remove space after ';', except when followed by a comment.
+#
+# Default: add
+sp_after_semi = add # ignore/add/remove/force
+
+# Add or remove space after ';' in non-empty 'for' statements.
+#
+# Default: force
+sp_after_semi_for = force # ignore/add/remove/force
+
+# Add or remove space after the final semicolon of an empty part of a for
+# statement, as in 'for ( ; ; <here> )'.
+sp_after_semi_for_empty = ignore # ignore/add/remove/force
+
+# Add or remove space before '[' (except '[]').
+sp_before_square = ignore # ignore/add/remove/force
+
+# Add or remove space before '[' for a variable definition.
+#
+# Default: remove
+sp_before_vardef_square = remove # ignore/add/remove/force
+
+# Add or remove space before '[' for asm block.
+sp_before_square_asm_block = ignore # ignore/add/remove/force
+
+# Add or remove space before '[]'.
+sp_before_squares = ignore # ignore/add/remove/force
+
+# Add or remove space before C++17 structured bindings.
+sp_cpp_before_struct_binding = ignore # ignore/add/remove/force
+
+# Add or remove space inside a non-empty '[' and ']'.
+sp_inside_square = ignore # ignore/add/remove/force
+
+# Add or remove space inside '[]'.
+sp_inside_square_empty = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space inside a non-empty Objective-C boxed array '@[' and
+# ']'. If set to ignore, sp_inside_square is used.
+sp_inside_square_oc_array = ignore # ignore/add/remove/force
+
+# Add or remove space after ',', i.e. 'a,b' vs. 'a, b'.
+sp_after_comma = ignore # ignore/add/remove/force
+
+# Add or remove space before ','.
+#
+# Default: remove
+sp_before_comma = remove # ignore/add/remove/force
+
+# (C#) Add or remove space between ',' and ']' in multidimensional array type
+# like 'int[,,]'.
+sp_after_mdatype_commas = ignore # ignore/add/remove/force
+
+# (C#) Add or remove space between '[' and ',' in multidimensional array type
+# like 'int[,,]'.
+sp_before_mdatype_commas = ignore # ignore/add/remove/force
+
+# (C#) Add or remove space between ',' in multidimensional array type
+# like 'int[,,]'.
+sp_between_mdatype_commas = ignore # ignore/add/remove/force
+
+# Add or remove space between an open parenthesis and comma,
+# i.e. '(,' vs. '( ,'.
+#
+# Default: force
+sp_paren_comma = force # ignore/add/remove/force
+
+# Add or remove space before the variadic '...' when preceded by a
+# non-punctuator.
+sp_before_ellipsis = ignore # ignore/add/remove/force
+
+# Add or remove space between a type and '...'.
+sp_type_ellipsis = ignore # ignore/add/remove/force
+
+# (D) Add or remove space between a type and '?'.
+sp_type_question = ignore # ignore/add/remove/force
+
+# Add or remove space between ')' and '...'.
+sp_paren_ellipsis = ignore # ignore/add/remove/force
+
+# Add or remove space between ')' and a qualifier such as 'const'.
+sp_paren_qualifier = ignore # ignore/add/remove/force
+
+# Add or remove space between ')' and 'noexcept'.
+sp_paren_noexcept = ignore # ignore/add/remove/force
+
+# Add or remove space after class ':'.
+sp_after_class_colon = ignore # ignore/add/remove/force
+
+# Add or remove space before class ':'.
+sp_before_class_colon = ignore # ignore/add/remove/force
+
+# Add or remove space after class constructor ':'.
+sp_after_constr_colon = ignore # ignore/add/remove/force
+
+# Add or remove space before class constructor ':'.
+sp_before_constr_colon = ignore # ignore/add/remove/force
+
+# Add or remove space before case ':'.
+#
+# Default: remove
+sp_before_case_colon = remove # ignore/add/remove/force
+
+# Add or remove space between 'operator' and operator sign.
+sp_after_operator = ignore # ignore/add/remove/force
+
+# Add or remove space between the operator symbol and the open parenthesis, as
+# in 'operator ++('.
+sp_after_operator_sym = ignore # ignore/add/remove/force
+
+# Overrides sp_after_operator_sym when the operator has no arguments, as in
+# 'operator *()'.
+sp_after_operator_sym_empty = ignore # ignore/add/remove/force
+
+# Add or remove space after C/D cast, i.e. 'cast(int)a' vs. 'cast(int) a' or
+# '(int)a' vs. '(int) a'.
+sp_after_cast = ignore # ignore/add/remove/force
+
+# Add or remove spaces inside cast parentheses.
+sp_inside_paren_cast = ignore # ignore/add/remove/force
+
+# Add or remove space between the type and open parenthesis in a C++ cast,
+# i.e. 'int(exp)' vs. 'int (exp)'.
+sp_cpp_cast_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between 'sizeof' and '('.
+sp_sizeof_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between 'sizeof' and '...'.
+sp_sizeof_ellipsis = ignore # ignore/add/remove/force
+
+# Add or remove space between 'sizeof...' and '('.
+sp_sizeof_ellipsis_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between 'decltype' and '('.
+sp_decltype_paren = ignore # ignore/add/remove/force
+
+# (Pawn) Add or remove space after the tag keyword.
+sp_after_tag = ignore # ignore/add/remove/force
+
+# Add or remove space inside enum '{' and '}'.
+sp_inside_braces_enum = ignore # ignore/add/remove/force
+
+# Add or remove space inside struct/union '{' and '}'.
+sp_inside_braces_struct = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space inside Objective-C boxed dictionary '{' and '}'
+sp_inside_braces_oc_dict = ignore # ignore/add/remove/force
+
+# Add or remove space after open brace in an unnamed temporary
+# direct-list-initialization.
+sp_after_type_brace_init_lst_open = ignore # ignore/add/remove/force
+
+# Add or remove space before close brace in an unnamed temporary
+# direct-list-initialization.
+sp_before_type_brace_init_lst_close = ignore # ignore/add/remove/force
+
+# Add or remove space inside an unnamed temporary direct-list-initialization.
+sp_inside_type_brace_init_lst = ignore # ignore/add/remove/force
+
+# Add or remove space inside '{' and '}'.
+sp_inside_braces = ignore # ignore/add/remove/force
+
+# Add or remove space inside '{}'.
+sp_inside_braces_empty = ignore # ignore/add/remove/force
+
+# Add or remove space around trailing return operator '->'.
+sp_trailing_return = ignore # ignore/add/remove/force
+
+# Add or remove space between return type and function name. A minimum of 1
+# is forced except for pointer return types.
+sp_type_func = ignore # ignore/add/remove/force
+
+# Add or remove space between type and open brace of an unnamed temporary
+# direct-list-initialization.
+sp_type_brace_init_lst = ignore # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function declaration.
+sp_func_proto_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between function name and '()' on function declaration
+# without parameters.
+sp_func_proto_paren_empty = ignore # ignore/add/remove/force
+
+# Add or remove space between function name and '(' with a typedef specifier.
+sp_func_type_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between alias name and '(' of a non-pointer function type typedef.
+sp_func_def_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between function name and '()' on function definition
+# without parameters.
+sp_func_def_paren_empty = ignore # ignore/add/remove/force
+
+# Add or remove space inside empty function '()'.
+# Overrides sp_after_angle unless use_sp_after_angle_always is set to true.
+sp_inside_fparens = ignore # ignore/add/remove/force
+
+# Add or remove space inside function '(' and ')'.
+sp_inside_fparen = ignore # ignore/add/remove/force
+
+# Add or remove space inside the first parentheses in a function type, as in
+# 'void (*x)(...)'.
+sp_inside_tparen = ignore # ignore/add/remove/force
+
+# Add or remove space between the ')' and '(' in a function type, as in
+# 'void (*x)(...)'.
+sp_after_tparen_close = ignore # ignore/add/remove/force
+
+# Add or remove space between ']' and '(' when part of a function call.
+sp_square_fparen = ignore # ignore/add/remove/force
+
+# Add or remove space between ')' and '{' of function.
+sp_fparen_brace = ignore # ignore/add/remove/force
+
+# Add or remove space between ')' and '{' of a function call in object
+# initialization.
+#
+# Overrides sp_fparen_brace.
+sp_fparen_brace_initializer = ignore # ignore/add/remove/force
+
+# (Java) Add or remove space between ')' and '{{' of double brace initializer.
+sp_fparen_dbrace = ignore # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function calls.
+sp_func_call_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between function name and '()' on function calls without
+# parameters. If set to ignore (the default), sp_func_call_paren is used.
+sp_func_call_paren_empty = ignore # ignore/add/remove/force
+
+# Add or remove space between the user function name and '(' on function
+# calls. You need to set a keyword to be a user function in the config file,
+# like:
+# set func_call_user tr _ i18n
+sp_func_call_user_paren = ignore # ignore/add/remove/force
+
+# Add or remove space inside user function '(' and ')'.
+sp_func_call_user_inside_fparen = ignore # ignore/add/remove/force
+
+# Add or remove space between nested parentheses with user functions,
+# i.e. '((' vs. '( ('.
+sp_func_call_user_paren_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between a constructor/destructor and the open
+# parenthesis.
+sp_func_class_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between a constructor without parameters or destructor
+# and '()'.
+sp_func_class_paren_empty = ignore # ignore/add/remove/force
+
+# Add or remove space between 'return' and '('.
+sp_return_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between 'return' and '{'.
+sp_return_brace = ignore # ignore/add/remove/force
+
+# Add or remove space between '__attribute__' and '('.
+sp_attribute_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between 'defined' and '(' in '#if defined (FOO)'.
+sp_defined_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between 'throw' and '(' in 'throw (something)'.
+sp_throw_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between 'throw' and anything other than '(' as in
+# '@throw [...];'.
+sp_after_throw = ignore # ignore/add/remove/force
+
+# Add or remove space between 'catch' and '(' in 'catch (something) { }'.
+# If set to ignore, sp_before_sparen is used.
+sp_catch_paren = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space between '@catch' and '('
+# in '@catch (something) { }'. If set to ignore, sp_catch_paren is used.
+sp_oc_catch_paren = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space before Objective-C protocol list
+# as in '@protocol Protocol<here><Protocol_A>' or '@interface MyClass : NSObject<here><MyProtocol>'.
+sp_before_oc_proto_list = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space between class name and '('
+# in '@interface className(categoryName)<ProtocolName>:BaseClass'
+sp_oc_classname_paren = ignore # ignore/add/remove/force
+
+# (D) Add or remove space between 'version' and '('
+# in 'version (something) { }'. If set to ignore, sp_before_sparen is used.
+sp_version_paren = ignore # ignore/add/remove/force
+
+# (D) Add or remove space between 'scope' and '('
+# in 'scope (something) { }'. If set to ignore, sp_before_sparen is used.
+sp_scope_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between 'super' and '(' in 'super (something)'.
+#
+# Default: remove
+sp_super_paren = remove # ignore/add/remove/force
+
+# Add or remove space between 'this' and '(' in 'this (something)'.
+#
+# Default: remove
+sp_this_paren = remove # ignore/add/remove/force
+
+# Add or remove space between a macro name and its definition.
+sp_macro = remove # ignore/add/remove/force
+
+# Add or remove space between a macro function ')' and its definition.
+sp_macro_func = remove # ignore/add/remove/force
+
+# Add or remove space between 'else' and '{' if on the same line.
+sp_else_brace = ignore # ignore/add/remove/force
+
+# Add or remove space between '}' and 'else' if on the same line.
+sp_brace_else = ignore # ignore/add/remove/force
+
+# Add or remove space between '}' and the name of a typedef on the same line.
+sp_brace_typedef = ignore # ignore/add/remove/force
+
+# Add or remove space before the '{' of a 'catch' statement, if the '{' and
+# 'catch' are on the same line, as in 'catch (decl) <here> {'.
+sp_catch_brace = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space before the '{' of a '@catch' statement, if the '{'
+# and '@catch' are on the same line, as in '@catch (decl) <here> {'.
+# If set to ignore, sp_catch_brace is used.
+sp_oc_catch_brace = ignore # ignore/add/remove/force
+
+# Add or remove space between '}' and 'catch' if on the same line.
+sp_brace_catch = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space between '}' and '@catch' if on the same line.
+# If set to ignore, sp_brace_catch is used.
+sp_oc_brace_catch = ignore # ignore/add/remove/force
+
+# Add or remove space between 'finally' and '{' if on the same line.
+sp_finally_brace = ignore # ignore/add/remove/force
+
+# Add or remove space between '}' and 'finally' if on the same line.
+sp_brace_finally = ignore # ignore/add/remove/force
+
+# Add or remove space between 'try' and '{' if on the same line.
+sp_try_brace = ignore # ignore/add/remove/force
+
+# Add or remove space between get/set and '{' if on the same line.
+sp_getset_brace = ignore # ignore/add/remove/force
+
+# Add or remove space between a variable and '{' for C++ uniform
+# initialization.
+sp_word_brace_init_lst = ignore # ignore/add/remove/force
+
+# Add or remove space between a variable and '{' for a namespace.
+#
+# Default: add
+sp_word_brace_ns = add # ignore/add/remove/force
+
+# Add or remove space before the '::' operator.
+sp_before_dc = ignore # ignore/add/remove/force
+
+# Add or remove space after the '::' operator.
+sp_after_dc = ignore # ignore/add/remove/force
+
+# (D) Add or remove around the D named array initializer ':' operator.
+sp_d_array_colon = ignore # ignore/add/remove/force
+
+# Add or remove space after the '!' (not) unary operator.
+#
+# Default: remove
+sp_not = remove # ignore/add/remove/force
+
+# Add or remove space after the '~' (invert) unary operator.
+#
+# Default: remove
+sp_inv = remove # ignore/add/remove/force
+
+# Add or remove space after the '&' (address-of) unary operator. This does not
+# affect the spacing after a '&' that is part of a type.
+#
+# Default: remove
+sp_addr = remove # ignore/add/remove/force
+
+# Add or remove space around the '.' or '->' operators.
+#
+# Default: remove
+sp_member = remove # ignore/add/remove/force
+
+# Add or remove space after the '*' (dereference) unary operator. This does
+# not affect the spacing after a '*' that is part of a type.
+#
+# Default: remove
+sp_deref = remove # ignore/add/remove/force
+
+# Add or remove space after '+' or '-', as in 'x = -5' or 'y = +7'.
+#
+# Default: remove
+sp_sign = remove # ignore/add/remove/force
+
+# Add or remove space between '++' and '--' the word to which it is being
+# applied, as in '(--x)' or 'y++;'.
+#
+# Default: remove
+sp_incdec = remove # ignore/add/remove/force
+
+# Add or remove space before a backslash-newline at the end of a line.
+#
+# Default: add
+sp_before_nl_cont = add # ignore/add/remove/force
+
+# (OC) Add or remove space after the scope '+' or '-', as in '-(void) foo;'
+# or '+(int) bar;'.
+sp_after_oc_scope = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space after the colon in message specs,
+# i.e. '-(int) f:(int) x;' vs. '-(int) f: (int) x;'.
+sp_after_oc_colon = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space before the colon in message specs,
+# i.e. '-(int) f: (int) x;' vs. '-(int) f : (int) x;'.
+sp_before_oc_colon = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space after the colon in immutable dictionary expression
+# 'NSDictionary *test = @{@"foo" :@"bar"};'.
+sp_after_oc_dict_colon = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space before the colon in immutable dictionary expression
+# 'NSDictionary *test = @{@"foo" :@"bar"};'.
+sp_before_oc_dict_colon = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space after the colon in message specs,
+# i.e. '[object setValue:1];' vs. '[object setValue: 1];'.
+sp_after_send_oc_colon = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space before the colon in message specs,
+# i.e. '[object setValue:1];' vs. '[object setValue :1];'.
+sp_before_send_oc_colon = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space after the (type) in message specs,
+# i.e. '-(int)f: (int) x;' vs. '-(int)f: (int)x;'.
+sp_after_oc_type = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space after the first (type) in message specs,
+# i.e. '-(int) f:(int)x;' vs. '-(int)f:(int)x;'.
+sp_after_oc_return_type = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space between '@selector' and '(',
+# i.e. '@selector(msgName)' vs. '@selector (msgName)'.
+# Also applies to '@protocol()' constructs.
+sp_after_oc_at_sel = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space between '@selector(x)' and the following word,
+# i.e. '@selector(foo) a:' vs. '@selector(foo)a:'.
+sp_after_oc_at_sel_parens = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space inside '@selector' parentheses,
+# i.e. '@selector(foo)' vs. '@selector( foo )'.
+# Also applies to '@protocol()' constructs.
+sp_inside_oc_at_sel_parens = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space before a block pointer caret,
+# i.e. '^int (int arg){...}' vs. ' ^int (int arg){...}'.
+sp_before_oc_block_caret = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space after a block pointer caret,
+# i.e. '^int (int arg){...}' vs. '^ int (int arg){...}'.
+sp_after_oc_block_caret = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space between the receiver and selector in a message,
+# as in '[receiver selector ...]'.
+sp_after_oc_msg_receiver = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space after '@property'.
+sp_after_oc_property = ignore # ignore/add/remove/force
+
+# (OC) Add or remove space between '@synchronized' and the open parenthesis,
+# i.e. '@synchronized(foo)' vs. '@synchronized (foo)'.
+sp_after_oc_synchronized = ignore # ignore/add/remove/force
+
+# Add or remove space around the ':' in 'b ? t : f'.
+sp_cond_colon = ignore # ignore/add/remove/force
+
+# Add or remove space before the ':' in 'b ? t : f'.
+#
+# Overrides sp_cond_colon.
+sp_cond_colon_before = ignore # ignore/add/remove/force
+
+# Add or remove space after the ':' in 'b ? t : f'.
+#
+# Overrides sp_cond_colon.
+sp_cond_colon_after = ignore # ignore/add/remove/force
+
+# Add or remove space around the '?' in 'b ? t : f'.
+sp_cond_question = ignore # ignore/add/remove/force
+
+# Add or remove space before the '?' in 'b ? t : f'.
+#
+# Overrides sp_cond_question.
+sp_cond_question_before = ignore # ignore/add/remove/force
+
+# Add or remove space after the '?' in 'b ? t : f'.
+#
+# Overrides sp_cond_question.
+sp_cond_question_after = ignore # ignore/add/remove/force
+
+# In the abbreviated ternary form '(a ?: b)', add or remove space between '?'
+# and ':'.
+#
+# Overrides all other sp_cond_* options.
+sp_cond_ternary_short = ignore # ignore/add/remove/force
+
+# Fix the spacing between 'case' and the label. Only 'ignore' and 'force' make
+# sense here.
+sp_case_label = ignore # ignore/add/remove/force
+
+# (D) Add or remove space around the D '..' operator.
+sp_range = ignore # ignore/add/remove/force
+
+# Add or remove space after ':' in a Java/C++11 range-based 'for',
+# as in 'for (Type var : expr)'.
+sp_after_for_colon = ignore # ignore/add/remove/force
+
+# Add or remove space before ':' in a Java/C++11 range-based 'for',
+# as in 'for (Type var : expr)'.
+sp_before_for_colon = ignore # ignore/add/remove/force
+
+# (D) Add or remove space between 'extern' and '(' as in 'extern (C)'.
+sp_extern_paren = ignore # ignore/add/remove/force
+
+# Add or remove space after the opening of a C++ comment,
+# i.e. '// A' vs. '//A'.
+sp_cmt_cpp_start = ignore # ignore/add/remove/force
+
+# If true, space is added with sp_cmt_cpp_start will be added after doxygen
+# sequences like '///', '///<', '//!' and '//!<'.
+sp_cmt_cpp_doxygen = false # true/false
+
+# If true, space is added with sp_cmt_cpp_start will be added after Qt
+# translator or meta-data comments like '//:', '//=', and '//~'.
+sp_cmt_cpp_qttr = false # true/false
+
+# Add or remove space between #else or #endif and a trailing comment.
+sp_endif_cmt = ignore # ignore/add/remove/force
+
+# Add or remove space after 'new', 'delete' and 'delete[]'.
+sp_after_new = ignore # ignore/add/remove/force
+
+# Add or remove space between 'new' and '(' in 'new()'.
+sp_between_new_paren = ignore # ignore/add/remove/force
+
+# Add or remove space between ')' and type in 'new(foo) BAR'.
+sp_after_newop_paren = ignore # ignore/add/remove/force
+
+# Add or remove space inside parenthesis of the new operator
+# as in 'new(foo) BAR'.
+sp_inside_newop_paren = ignore # ignore/add/remove/force
+
+# Add or remove space after the open parenthesis of the new operator,
+# as in 'new(foo) BAR'.
+#
+# Overrides sp_inside_newop_paren.
+sp_inside_newop_paren_open = ignore # ignore/add/remove/force
+
+# Add or remove space before the close parenthesis of the new operator,
+# as in 'new(foo) BAR'.
+#
+# Overrides sp_inside_newop_paren.
+sp_inside_newop_paren_close = ignore # ignore/add/remove/force
+
+# Add or remove space before a trailing or embedded comment.
+sp_before_tr_emb_cmt = ignore # ignore/add/remove/force
+
+# Number of spaces before a trailing or embedded comment.
+sp_num_before_tr_emb_cmt = 0 # unsigned number
+
+# (Java) Add or remove space between an annotation and the open parenthesis.
+sp_annotation_paren = ignore # ignore/add/remove/force
+
+# If true, vbrace tokens are dropped to the previous token and skipped.
+sp_skip_vbrace_tokens = false # true/false
+
+# Add or remove space after 'noexcept'.
+sp_after_noexcept = ignore # ignore/add/remove/force
+
+# Add or remove space after '_'.
+sp_vala_after_translation = ignore # ignore/add/remove/force
+
+# If true, a <TAB> is inserted after #define.
+force_tab_after_define = false # true/false
+
+#
+# Indenting options
+#
+
+# The number of columns to indent per level. Usually 2, 3, 4, or 8.
+#
+# Default: 8
+indent_columns = 8 # unsigned number
+
+# The continuation indent. If non-zero, this overrides the indent of '(', '['
+# and '=' continuation indents. Negative values are OK; negative value is
+# absolute and not increased for each '(' or '[' level.
+#
+# For FreeBSD, this is set to 4.
+indent_continue = 0 # number
+
+# The continuation indent, only for class header line(s). If non-zero, this
+# overrides the indent of 'class' continuation indents.
+indent_continue_class_head = 0 # unsigned number
+
+# Whether to indent empty lines (i.e. lines which contain only spaces before
+# the newline character).
+indent_single_newlines = false # true/false
+
+# The continuation indent for func_*_param if they are true. If non-zero, this
+# overrides the indent.
+indent_param = 0 # unsigned number
+
+# How to use tabs when indenting code.
+#
+# 0: Spaces only
+# 1: Indent with tabs to brace level, align with spaces (default)
+# 2: Indent and align with tabs, using spaces when not on a tabstop
+#
+# Default: 1
+indent_with_tabs = 1 # unsigned number
+
+# Whether to indent comments that are not at a brace level with tabs on a
+# tabstop. Requires indent_with_tabs=2. If false, will use spaces.
+indent_cmt_with_tabs = false # true/false
+
+# Whether to indent strings broken by '\' so that they line up.
+indent_align_string = false # true/false
+
+# The number of spaces to indent multi-line XML strings.
+# Requires indent_align_string=true.
+indent_xml_string = 0 # unsigned number
+
+# Spaces to indent '{' from level.
+indent_brace = 0 # unsigned number
+
+# Whether braces are indented to the body level.
+indent_braces = false # true/false
+
+# Whether to disable indenting function braces if indent_braces=true.
+indent_braces_no_func = false # true/false
+
+# Whether to disable indenting class braces if indent_braces=true.
+indent_braces_no_class = false # true/false
+
+# Whether to disable indenting struct braces if indent_braces=true.
+indent_braces_no_struct = false # true/false
+
+# Whether to indent based on the size of the brace parent,
+# i.e. 'if' => 3 spaces, 'for' => 4 spaces, etc.
+indent_brace_parent = false # true/false
+
+# Whether to indent based on the open parenthesis instead of the open brace
+# in '({\n'.
+indent_paren_open_brace = false # true/false
+
+# (C#) Whether to indent the brace of a C# delegate by another level.
+indent_cs_delegate_brace = false # true/false
+
+# (C#) Whether to indent a C# delegate (to handle delegates with no brace) by
+# another level.
+indent_cs_delegate_body = false # true/false
+
+# Whether to indent the body of a 'namespace'.
+indent_namespace = false # true/false
+
+# Whether to indent only the first namespace, and not any nested namespaces.
+# Requires indent_namespace=true.
+indent_namespace_single_indent = false # true/false
+
+# The number of spaces to indent a namespace block.
+# If set to zero, use the value indent_columns
+indent_namespace_level = 0 # unsigned number
+
+# If the body of the namespace is longer than this number, it won't be
+# indented. Requires indent_namespace=true. 0 means no limit.
+indent_namespace_limit = 0 # unsigned number
+
+# Whether the 'extern "C"' body is indented.
+indent_extern = false # true/false
+
+# Whether the 'class' body is indented.
+indent_class = false # true/false
+
+# Whether to indent the stuff after a leading base class colon.
+indent_class_colon = false # true/false
+
+# Whether to indent based on a class colon instead of the stuff after the
+# colon. Requires indent_class_colon=true.
+indent_class_on_colon = false # true/false
+
+# Whether to indent the stuff after a leading class initializer colon.
+indent_constr_colon = false # true/false
+
+# Virtual indent from the ':' for member initializers.
+#
+# Default: 2
+indent_ctor_init_leading = 2 # unsigned number
+
+# Additional indent for constructor initializer list.
+# Negative values decrease indent down to the first column.
+indent_ctor_init = 0 # number
+
+# Whether to indent 'if' following 'else' as a new block under the 'else'.
+# If false, 'else\nif' is treated as 'else if' for indenting purposes.
+indent_else_if = false # true/false
+
+# Amount to indent variable declarations after a open brace.
+#
+# <0: Relative
+# >=0: Absolute
+indent_var_def_blk = 0 # number
+
+# Whether to indent continued variable declarations instead of aligning.
+indent_var_def_cont = true # true/false
+
+# Whether to indent continued shift expressions ('<<' and '>>') instead of
+# aligning. Set align_left_shift=false when enabling this.
+indent_shift = false # true/false
+
+# Whether to force indentation of function definitions to start in column 1.
+indent_func_def_force_col1 = false # true/false
+
+# Whether to indent continued function call parameters one indent level,
+# rather than aligning parameters under the open parenthesis.
+indent_func_call_param = false # true/false
+
+# Whether to indent continued function definition parameters one indent level,
+# rather than aligning parameters under the open parenthesis.
+indent_func_def_param = false # true/false
+
+# for function definitions, only if indent_func_def_param is false
+# Allows to align params when appropriate and indent them when not
+# behave as if it was true if paren position is more than this value
+# if paren position is more than the option value
+indent_func_def_param_paren_pos_threshold = 0 # unsigned number
+
+# Whether to indent continued function call prototype one indent level,
+# rather than aligning parameters under the open parenthesis.
+indent_func_proto_param = false # true/false
+
+# Whether to indent continued function call declaration one indent level,
+# rather than aligning parameters under the open parenthesis.
+indent_func_class_param = false # true/false
+
+# Whether to indent continued class variable constructors one indent level,
+# rather than aligning parameters under the open parenthesis.
+indent_func_ctor_var_param = false # true/false
+
+# Whether to indent continued template parameter list one indent level,
+# rather than aligning parameters under the open parenthesis.
+indent_template_param = false # true/false
+
+# Double the indent for indent_func_xxx_param options.
+# Use both values of the options indent_columns and indent_param.
+indent_func_param_double = false # true/false
+
+# Indentation column for standalone 'const' qualifier on a function
+# prototype.
+indent_func_const = 0 # unsigned number
+
+# Indentation column for standalone 'throw' qualifier on a function
+# prototype.
+indent_func_throw = 0 # unsigned number
+
+# How to indent within a macro followed by a brace on the same line
+# This allows reducing the indent in macros that have (for example)
+# `do { ... } while (0)` blocks bracketing them.
+#
+# true: add an indent for the brace on the same line as the macro
+# false: do not add an indent for the brace on the same line as the macro
+#
+# Default: true
+indent_macro_brace = true # true/false
+
+# The number of spaces to indent a continued '->' or '.'.
+# Usually set to 0, 1, or indent_columns.
+indent_member = 0 # unsigned number
+
+# Whether lines broken at '.' or '->' should be indented by a single indent.
+# The indent_member option will not be effective if this is set to true.
+indent_member_single = false # true/false
+
+# Spaces to indent single line ('//') comments on lines before code.
+indent_sing_line_comments = 0 # unsigned number
+
+# When opening a paren for a control statement (if, for, while, etc), increase
+# the indent level by this value. Negative values decrease the indent level.
+indent_sparen_extra = 0 # number
+
+# Whether to indent trailing single line ('//') comments relative to the code
+# instead of trying to keep the same absolute column.
+indent_relative_single_line_comments = false # true/false
+
+# Spaces to indent 'case' from 'switch'. Usually 0 or indent_columns.
+indent_switch_case = 0 # unsigned number
+
+# indent 'break' with 'case' from 'switch'.
+indent_switch_break_with_case = false # true/false
+
+# Whether to indent preprocessor statements inside of switch statements.
+#
+# Default: true
+indent_switch_pp = true # true/false
+
+# Spaces to shift the 'case' line, without affecting any other lines.
+# Usually 0.
+indent_case_shift = 0 # unsigned number
+
+# Spaces to indent '{' from 'case'. By default, the brace will appear under
+# the 'c' in case. Usually set to 0 or indent_columns. Negative values are OK.
+indent_case_brace = 0 # number
+
+# Whether to indent comments found in first column.
+indent_col1_comment = false # true/false
+
+# Whether to indent multi string literal in first column.
+indent_col1_multi_string_literal = false # true/false
+
+# How to indent goto labels.
+#
+# >0: Absolute column where 1 is the leftmost column
+# <=0: Subtract from brace indent
+#
+# Default: 1
+indent_label = 1 # number
+
+# How to indent access specifiers that are followed by a
+# colon.
+#
+# >0: Absolute column where 1 is the leftmost column
+# <=0: Subtract from brace indent
+#
+# Default: 1
+indent_access_spec = 1 # number
+
+# Whether to indent the code after an access specifier by one level.
+# If true, this option forces 'indent_access_spec=0'.
+indent_access_spec_body = false # true/false
+
+# If an open parenthesis is followed by a newline, whether to indent the next
+# line so that it lines up after the open parenthesis (not recommended).
+indent_paren_nl = false # true/false
+
+# How to indent a close parenthesis after a newline.
+#
+# 0: Indent to body level (default)
+# 1: Align under the open parenthesis
+# 2: Indent to the brace level
+indent_paren_close = 0 # unsigned number
+
+# Whether to indent the open parenthesis of a function definition,
+# if the parenthesis is on its own line.
+indent_paren_after_func_def = false # true/false
+
+# Whether to indent the open parenthesis of a function declaration,
+# if the parenthesis is on its own line.
+indent_paren_after_func_decl = false # true/false
+
+# Whether to indent the open parenthesis of a function call,
+# if the parenthesis is on its own line.
+indent_paren_after_func_call = false # true/false
+
+# Whether to indent a comma when inside a parenthesis.
+# If true, aligns under the open parenthesis.
+indent_comma_paren = false # true/false
+
+# Whether to indent a Boolean operator when inside a parenthesis.
+# If true, aligns under the open parenthesis.
+indent_bool_paren = false # true/false
+
+# Whether to indent a semicolon when inside a for parenthesis.
+# If true, aligns under the open for parenthesis.
+indent_semicolon_for_paren = false # true/false
+
+# Whether to align the first expression to following ones
+# if indent_bool_paren=true.
+indent_first_bool_expr = false # true/false
+
+# Whether to align the first expression to following ones
+# if indent_semicolon_for_paren=true.
+indent_first_for_expr = false # true/false
+
+# If an open square is followed by a newline, whether to indent the next line
+# so that it lines up after the open square (not recommended).
+indent_square_nl = false # true/false
+
+# (ESQL/C) Whether to preserve the relative indent of 'EXEC SQL' bodies.
+indent_preserve_sql = false # true/false
+
+# Whether to align continued statements at the '='. If false or if the '=' is
+# followed by a newline, the next line is indent one tab.
+#
+# Default: true
+indent_align_assign = true # true/false
+
+# If true, the indentation of the chunks after a '=' sequence will be set at
+# LHS token indentation column before '='.
+indent_off_after_assign = false # true/false
+
+# Whether to align continued statements at the '('. If false or the '(' is
+# followed by a newline, the next line indent is one tab.
+#
+# Default: true
+indent_align_paren = true # true/false
+
+# (OC) Whether to indent Objective-C code inside message selectors.
+indent_oc_inside_msg_sel = false # true/false
+
+# (OC) Whether to indent Objective-C blocks at brace level instead of usual
+# rules.
+indent_oc_block = false # true/false
+
+# (OC) Indent for Objective-C blocks in a message relative to the parameter
+# name.
+#
+# =0: Use indent_oc_block rules
+# >0: Use specified number of spaces to indent
+indent_oc_block_msg = 0 # unsigned number
+
+# (OC) Minimum indent for subsequent parameters
+indent_oc_msg_colon = 0 # unsigned number
+
+# (OC) Whether to prioritize aligning with initial colon (and stripping spaces
+# from lines, if necessary).
+#
+# Default: true
+indent_oc_msg_prioritize_first_colon = true # true/false
+
+# (OC) Whether to indent blocks the way that Xcode does by default
+# (from the keyword if the parameter is on its own line; otherwise, from the
+# previous indentation level). Requires indent_oc_block_msg=true.
+indent_oc_block_msg_xcode_style = false # true/false
+
+# (OC) Whether to indent blocks from where the brace is, relative to a
+# message keyword. Requires indent_oc_block_msg=true.
+indent_oc_block_msg_from_keyword = false # true/false
+
+# (OC) Whether to indent blocks from where the brace is, relative to a message
+# colon. Requires indent_oc_block_msg=true.
+indent_oc_block_msg_from_colon = false # true/false
+
+# (OC) Whether to indent blocks from where the block caret is.
+# Requires indent_oc_block_msg=true.
+indent_oc_block_msg_from_caret = false # true/false
+
+# (OC) Whether to indent blocks from where the brace caret is.
+# Requires indent_oc_block_msg=true.
+indent_oc_block_msg_from_brace = false # true/false
+
+# When indenting after virtual brace open and newline add further spaces to
+# reach this minimum indent.
+indent_min_vbrace_open = 0 # unsigned number
+
+# Whether to add further spaces after regular indent to reach next tabstop
+# when indenting after virtual brace open and newline.
+indent_vbrace_open_on_tabstop = false # true/false
+
+# How to indent after a brace followed by another token (not a newline).
+# true: indent all contained lines to match the token
+# false: indent all contained lines to match the brace
+#
+# Default: true
+indent_token_after_brace = true # true/false
+
+# Whether to indent the body of a C++11 lambda.
+indent_cpp_lambda_body = false # true/false
+
+# How to indent compound literals that are being returned.
+# true: add both the indent from return & the compound literal open brace (ie:
+# 2 indent levels)
+# false: only indent 1 level, don't add the indent for the open brace, only add
+# the indent for the return.
+#
+# Default: true
+indent_compound_literal_return = true # true/false
+
+# (C#) Whether to indent a 'using' block if no braces are used.
+#
+# Default: true
+indent_using_block = true # true/false
+
+# How to indent the continuation of ternary operator.
+#
+# 0: Off (default)
+# 1: When the `if_false` is a continuation, indent it under `if_false`
+# 2: When the `:` is a continuation, indent it under `?`
+indent_ternary_operator = 0 # unsigned number
+
+# Whether to indent the statments inside ternary operator.
+indent_inside_ternary_operator = false # true/false
+
+# If true, the indentation of the chunks after a `return` sequence will be set at return indentation column.
+indent_off_after_return = false # true/false
+
+# If true, the indentation of the chunks after a `return new` sequence will be set at return indentation column.
+indent_off_after_return_new = false # true/false
+
+# If true, the tokens after return are indented with regular single indentation. By default (false) the indentation is after the return token.
+indent_single_after_return = false # true/false
+
+# Whether to ignore indent and alignment for 'asm' blocks (i.e. assume they
+# have their own indentation).
+indent_ignore_asm_block = false # true/false
+
+# Don't indent the close parenthesis of a function definition,
+# if the parenthesis is on its own line.
+donot_indent_func_def_close_paren = false # true/false
+
+#
+# Newline adding and removing options
+#
+
+# Whether to collapse empty blocks between '{' and '}'.
+# If true, overrides nl_inside_empty_func
+nl_collapse_empty_body = false # true/false
+
+# Don't split one-line braced assignments, as in 'foo_t f = { 1, 2 };'.
+nl_assign_leave_one_liners = false # true/false
+
+# Don't split one-line braced statements inside a 'class xx { }' body.
+nl_class_leave_one_liners = false # true/false
+
+# Don't split one-line enums, as in 'enum foo { BAR = 15 };'
+nl_enum_leave_one_liners = false # true/false
+
+# Don't split one-line get or set functions.
+nl_getset_leave_one_liners = false # true/false
+
+# (C#) Don't split one-line property get or set functions.
+nl_cs_property_leave_one_liners = false # true/false
+
+# Don't split one-line function definitions, as in 'int foo() { return 0; }'.
+# might modify nl_func_type_name
+nl_func_leave_one_liners = false # true/false
+
+# Don't split one-line C++11 lambdas, as in '[]() { return 0; }'.
+nl_cpp_lambda_leave_one_liners = false # true/false
+
+# Don't split one-line if/else statements, as in 'if(...) b++;'.
+nl_if_leave_one_liners = false # true/false
+
+# Don't split one-line while statements, as in 'while(...) b++;'.
+nl_while_leave_one_liners = false # true/false
+
+# Don't split one-line for statements, as in 'for(...) b++;'.
+nl_for_leave_one_liners = false # true/false
+
+# (OC) Don't split one-line Objective-C messages.
+nl_oc_msg_leave_one_liner = false # true/false
+
+# (OC) Add or remove newline between method declaration and '{'.
+nl_oc_mdef_brace = ignore # ignore/add/remove/force
+
+# (OC) Add or remove newline between Objective-C block signature and '{'.
+nl_oc_block_brace = ignore # ignore/add/remove/force
+
+# (OC) Add or remove blank line before '@interface' statement.
+nl_oc_before_interface = ignore # ignore/add/remove/force
+
+# (OC) Add or remove blank line before '@implementation' statement.
+nl_oc_before_implementation = ignore # ignore/add/remove/force
+
+# (OC) Add or remove blank line before '@end' statement.
+nl_oc_before_end = ignore # ignore/add/remove/force
+
+# (OC) Add or remove newline between '@interface' and '{'.
+nl_oc_interface_brace = ignore # ignore/add/remove/force
+
+# (OC) Add or remove newline between '@implementation' and '{'.
+nl_oc_implementation_brace = ignore # ignore/add/remove/force
+
+# Add or remove newlines at the start of the file.
+nl_start_of_file = ignore # ignore/add/remove/force
+
+# The minimum number of newlines at the start of the file (only used if
+# nl_start_of_file is 'add' or 'force').
+nl_start_of_file_min = 0 # unsigned number
+
+# Add or remove newline at the end of the file.
+nl_end_of_file = ignore # ignore/add/remove/force
+
+# The minimum number of newlines at the end of the file (only used if
+# nl_end_of_file is 'add' or 'force').
+nl_end_of_file_min = 0 # unsigned number
+
+# Add or remove newline between '=' and '{'.
+nl_assign_brace = ignore # ignore/add/remove/force
+
+# (D) Add or remove newline between '=' and '['.
+nl_assign_square = ignore # ignore/add/remove/force
+
+# Add or remove newline between '[]' and '{'.
+nl_tsquare_brace = ignore # ignore/add/remove/force
+
+# (D) Add or remove newline after '= ['. Will also affect the newline before
+# the ']'.
+nl_after_square_assign = ignore # ignore/add/remove/force
+
+# Add or remove newline between a function call's ')' and '{', as in
+# 'list_for_each(item, &list) { }'.
+nl_fcall_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'enum' and '{'.
+nl_enum_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'enum' and 'class'.
+nl_enum_class = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'enum class' and the identifier.
+nl_enum_class_identifier = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'enum class' type and ':'.
+nl_enum_identifier_colon = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'enum class identifier :' and type.
+nl_enum_colon_type = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'struct and '{'.
+nl_struct_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'union' and '{'.
+nl_union_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'if' and '{'.
+nl_if_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'else'.
+nl_brace_else = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'else if' and '{'. If set to ignore,
+# nl_if_brace is used instead.
+nl_elseif_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'else' and '{'.
+nl_else_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'else' and 'if'.
+nl_else_if = ignore # ignore/add/remove/force
+
+# Add or remove newline before '{' opening brace
+nl_before_opening_brace_func_class_def = ignore # ignore/add/remove/force
+
+# Add or remove newline before 'if'/'else if' closing parenthesis.
+nl_before_if_closing_paren = ignore # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'finally'.
+nl_brace_finally = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'finally' and '{'.
+nl_finally_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'try' and '{'.
+nl_try_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between get/set and '{'.
+nl_getset_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'for' and '{'.
+nl_for_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline before the '{' of a 'catch' statement, as in
+# 'catch (decl) <here> {'.
+nl_catch_brace = ignore # ignore/add/remove/force
+
+# (OC) Add or remove newline before the '{' of a '@catch' statement, as in
+# '@catch (decl) <here> {'. If set to ignore, nl_catch_brace is used.
+nl_oc_catch_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'catch'.
+nl_brace_catch = ignore # ignore/add/remove/force
+
+# (OC) Add or remove newline between '}' and '@catch'. If set to ignore,
+# nl_brace_catch is used.
+nl_oc_brace_catch = ignore # ignore/add/remove/force
+
+# Add or remove newline between '}' and ']'.
+nl_brace_square = ignore # ignore/add/remove/force
+
+# Add or remove newline between '}' and ')' in a function invocation.
+nl_brace_fparen = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'while' and '{'.
+nl_while_brace = ignore # ignore/add/remove/force
+
+# (D) Add or remove newline between 'scope (x)' and '{'.
+nl_scope_brace = ignore # ignore/add/remove/force
+
+# (D) Add or remove newline between 'unittest' and '{'.
+nl_unittest_brace = ignore # ignore/add/remove/force
+
+# (D) Add or remove newline between 'version (x)' and '{'.
+nl_version_brace = ignore # ignore/add/remove/force
+
+# (C#) Add or remove newline between 'using' and '{'.
+nl_using_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between two open or close braces. Due to general
+# newline/brace handling, REMOVE may not work.
+nl_brace_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'do' and '{'.
+nl_do_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'while' of 'do' statement.
+nl_brace_while = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'switch' and '{'.
+nl_switch_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'synchronized' and '{'.
+nl_synchronized_brace = ignore # ignore/add/remove/force
+
+# Add a newline between ')' and '{' if the ')' is on a different line than the
+# if/for/etc.
+#
+# Overrides nl_for_brace, nl_if_brace, nl_switch_brace, nl_while_switch and
+# nl_catch_brace.
+nl_multi_line_cond = false # true/false
+
+# Add a newline after '(' if an if/for/while/switch condition spans multiple
+# lines
+nl_multi_line_sparen_open = ignore # ignore/add/remove/force
+
+# Add a newline before ')' if an if/for/while/switch condition spans multiple
+# lines. Overrides nl_before_if_closing_paren if both are specified.
+nl_multi_line_sparen_close = ignore # ignore/add/remove/force
+
+# Force a newline in a define after the macro name for multi-line defines.
+nl_multi_line_define = false # true/false
+
+# Whether to add a newline before 'case', and a blank line before a 'case'
+# statement that follows a ';' or '}'.
+nl_before_case = false # true/false
+
+# Whether to add a newline after a 'case' statement.
+nl_after_case = false # true/false
+
+# Add or remove newline between a case ':' and '{'.
+#
+# Overrides nl_after_case.
+nl_case_colon_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between ')' and 'throw'.
+nl_before_throw = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'namespace' and '{'.
+nl_namespace_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline after 'template<...>' of a template class.
+nl_template_class = ignore # ignore/add/remove/force
+
+# Add or remove newline after 'template<...>' of a template class declaration.
+#
+# Overrides nl_template_class.
+nl_template_class_decl = ignore # ignore/add/remove/force
+
+# Add or remove newline after 'template<>' of a specialized class declaration.
+#
+# Overrides nl_template_class_decl.
+nl_template_class_decl_special = ignore # ignore/add/remove/force
+
+# Add or remove newline after 'template<...>' of a template class definition.
+#
+# Overrides nl_template_class.
+nl_template_class_def = ignore # ignore/add/remove/force
+
+# Add or remove newline after 'template<>' of a specialized class definition.
+#
+# Overrides nl_template_class_def.
+nl_template_class_def_special = ignore # ignore/add/remove/force
+
+# Add or remove newline after 'template<...>' of a template function.
+nl_template_func = ignore # ignore/add/remove/force
+
+# Add or remove newline after 'template<...>' of a template function
+# declaration.
+#
+# Overrides nl_template_func.
+nl_template_func_decl = ignore # ignore/add/remove/force
+
+# Add or remove newline after 'template<>' of a specialized function
+# declaration.
+#
+# Overrides nl_template_func_decl.
+nl_template_func_decl_special = ignore # ignore/add/remove/force
+
+# Add or remove newline after 'template<...>' of a template function
+# definition.
+#
+# Overrides nl_template_func.
+nl_template_func_def = ignore # ignore/add/remove/force
+
+# Add or remove newline after 'template<>' of a specialized function
+# definition.
+#
+# Overrides nl_template_func_def.
+nl_template_func_def_special = ignore # ignore/add/remove/force
+
+# Add or remove newline after 'template<...>' of a template variable.
+nl_template_var = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'template<...>' and 'using' of a templated
+# type alias.
+nl_template_using = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'class' and '{'.
+nl_class_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline before or after (depending on pos_class_comma,
+# may not be IGNORE) each',' in the base class list.
+nl_class_init_args = ignore # ignore/add/remove/force
+
+# Add or remove newline after each ',' in the constructor member
+# initialization. Related to nl_constr_colon, pos_constr_colon and
+# pos_constr_comma.
+nl_constr_init_args = ignore # ignore/add/remove/force
+
+# Add or remove newline before first element, after comma, and after last
+# element, in 'enum'.
+nl_enum_own_lines = ignore # ignore/add/remove/force
+
+# Add or remove newline between return type and function name in a function
+# definition.
+# might be modified by nl_func_leave_one_liners
+nl_func_type_name = ignore # ignore/add/remove/force
+
+# Add or remove newline between return type and function name inside a class
+# definition. If set to ignore, nl_func_type_name or nl_func_proto_type_name
+# is used instead.
+nl_func_type_name_class = ignore # ignore/add/remove/force
+
+# Add or remove newline between class specification and '::'
+# in 'void A::f() { }'. Only appears in separate member implementation (does
+# not appear with in-line implementation).
+nl_func_class_scope = ignore # ignore/add/remove/force
+
+# Add or remove newline between function scope and name, as in
+# 'void A :: <here> f() { }'.
+nl_func_scope_name = ignore # ignore/add/remove/force
+
+# Add or remove newline between return type and function name in a prototype.
+nl_func_proto_type_name = ignore # ignore/add/remove/force
+
+# Add or remove newline between a function name and the opening '(' in the
+# declaration.
+nl_func_paren = ignore # ignore/add/remove/force
+
+# Overrides nl_func_paren for functions with no parameters.
+nl_func_paren_empty = ignore # ignore/add/remove/force
+
+# Add or remove newline between a function name and the opening '(' in the
+# definition.
+nl_func_def_paren = ignore # ignore/add/remove/force
+
+# Overrides nl_func_def_paren for functions with no parameters.
+nl_func_def_paren_empty = ignore # ignore/add/remove/force
+
+# Add or remove newline between a function name and the opening '(' in the
+# call.
+nl_func_call_paren = ignore # ignore/add/remove/force
+
+# Overrides nl_func_call_paren for functions with no parameters.
+nl_func_call_paren_empty = ignore # ignore/add/remove/force
+
+# Add or remove newline after '(' in a function declaration.
+nl_func_decl_start = ignore # ignore/add/remove/force
+
+# Add or remove newline after '(' in a function definition.
+nl_func_def_start = ignore # ignore/add/remove/force
+
+# Overrides nl_func_decl_start when there is only one parameter.
+nl_func_decl_start_single = ignore # ignore/add/remove/force
+
+# Overrides nl_func_def_start when there is only one parameter.
+nl_func_def_start_single = ignore # ignore/add/remove/force
+
+# Whether to add a newline after '(' in a function declaration if '(' and ')'
+# are in different lines. If false, nl_func_decl_start is used instead.
+nl_func_decl_start_multi_line = false # true/false
+
+# Whether to add a newline after '(' in a function definition if '(' and ')'
+# are in different lines. If false, nl_func_def_start is used instead.
+nl_func_def_start_multi_line = false # true/false
+
+# Add or remove newline after each ',' in a function declaration.
+nl_func_decl_args = ignore # ignore/add/remove/force
+
+# Add or remove newline after each ',' in a function definition.
+nl_func_def_args = ignore # ignore/add/remove/force
+
+# Add or remove newline after each ',' in a function call.
+nl_func_call_args = ignore # ignore/add/remove/force
+
+# Whether to add a newline after each ',' in a function declaration if '('
+# and ')' are in different lines. If false, nl_func_decl_args is used instead.
+nl_func_decl_args_multi_line = false # true/false
+
+# Whether to add a newline after each ',' in a function definition if '('
+# and ')' are in different lines. If false, nl_func_def_args is used instead.
+nl_func_def_args_multi_line = false # true/false
+
+# Add or remove newline before the ')' in a function declaration.
+nl_func_decl_end = ignore # ignore/add/remove/force
+
+# Add or remove newline before the ')' in a function definition.
+nl_func_def_end = ignore # ignore/add/remove/force
+
+# Overrides nl_func_decl_end when there is only one parameter.
+nl_func_decl_end_single = ignore # ignore/add/remove/force
+
+# Overrides nl_func_def_end when there is only one parameter.
+nl_func_def_end_single = ignore # ignore/add/remove/force
+
+# Whether to add a newline before ')' in a function declaration if '(' and ')'
+# are in different lines. If false, nl_func_decl_end is used instead.
+nl_func_decl_end_multi_line = false # true/false
+
+# Whether to add a newline before ')' in a function definition if '(' and ')'
+# are in different lines. If false, nl_func_def_end is used instead.
+nl_func_def_end_multi_line = false # true/false
+
+# Add or remove newline between '()' in a function declaration.
+nl_func_decl_empty = ignore # ignore/add/remove/force
+
+# Add or remove newline between '()' in a function definition.
+nl_func_def_empty = ignore # ignore/add/remove/force
+
+# Add or remove newline between '()' in a function call.
+nl_func_call_empty = ignore # ignore/add/remove/force
+
+# Whether to add a newline after '(' in a function call,
+# has preference over nl_func_call_start_multi_line.
+nl_func_call_start = ignore # ignore/add/remove/force
+
+# Whether to add a newline before ')' in a function call.
+nl_func_call_end = ignore # ignore/add/remove/force
+
+# Whether to add a newline after '(' in a function call if '(' and ')' are in
+# different lines.
+nl_func_call_start_multi_line = false # true/false
+
+# Whether to add a newline after each ',' in a function call if '(' and ')'
+# are in different lines.
+nl_func_call_args_multi_line = false # true/false
+
+# Whether to add a newline before ')' in a function call if '(' and ')' are in
+# different lines.
+nl_func_call_end_multi_line = false # true/false
+
+# Whether to respect nl_func_call_XXX option incase of closure args.
+nl_func_call_args_multi_line_ignore_closures = false # true/false
+
+# Whether to add a newline after '<' of a template parameter list.
+nl_template_start = false # true/false
+
+# Whether to add a newline after each ',' in a template parameter list.
+nl_template_args = false # true/false
+
+# Whether to add a newline before '>' of a template parameter list.
+nl_template_end = false # true/false
+
+# (OC) Whether to put each Objective-C message parameter on a separate line.
+# See nl_oc_msg_leave_one_liner.
+nl_oc_msg_args = false # true/false
+
+# Add or remove newline between function signature and '{'.
+nl_fdef_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between function signature and '{',
+# if signature ends with ')'. Overrides nl_fdef_brace.
+nl_fdef_brace_cond = ignore # ignore/add/remove/force
+
+# Add or remove newline between C++11 lambda signature and '{'.
+nl_cpp_ldef_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'return' and the return expression.
+nl_return_expr = ignore # ignore/add/remove/force
+
+# Whether to add a newline after semicolons, except in 'for' statements.
+nl_after_semicolon = false # true/false
+
+# (Java) Add or remove newline between the ')' and '{{' of the double brace
+# initializer.
+nl_paren_dbrace_open = ignore # ignore/add/remove/force
+
+# Whether to add a newline after the type in an unnamed temporary
+# direct-list-initialization.
+nl_type_brace_init_lst = ignore # ignore/add/remove/force
+
+# Whether to add a newline after the open brace in an unnamed temporary
+# direct-list-initialization.
+nl_type_brace_init_lst_open = ignore # ignore/add/remove/force
+
+# Whether to add a newline before the close brace in an unnamed temporary
+# direct-list-initialization.
+nl_type_brace_init_lst_close = ignore # ignore/add/remove/force
+
+# Whether to add a newline after '{'. This also adds a newline before the
+# matching '}'.
+nl_after_brace_open = false # true/false
+
+# Whether to add a newline between the open brace and a trailing single-line
+# comment. Requires nl_after_brace_open=true.
+nl_after_brace_open_cmt = false # true/false
+
+# Whether to add a newline after a virtual brace open with a non-empty body.
+# These occur in un-braced if/while/do/for statement bodies.
+nl_after_vbrace_open = false # true/false
+
+# Whether to add a newline after a virtual brace open with an empty body.
+# These occur in un-braced if/while/do/for statement bodies.
+nl_after_vbrace_open_empty = false # true/false
+
+# Whether to add a newline after '}'. Does not apply if followed by a
+# necessary ';'.
+nl_after_brace_close = false # true/false
+
+# Whether to add a newline after a virtual brace close,
+# as in 'if (foo) a++; <here> return;'.
+nl_after_vbrace_close = false # true/false
+
+# Add or remove newline between the close brace and identifier,
+# as in 'struct { int a; } <here> b;'. Affects enumerations, unions and
+# structures. If set to ignore, uses nl_after_brace_close.
+nl_brace_struct_var = ignore # ignore/add/remove/force
+
+# Whether to alter newlines in '#define' macros.
+nl_define_macro = false # true/false
+
+# Whether to alter newlines between consecutive parenthesis closes. The number
+# of closing parentheses in a line will depend on respective open parenthesis
+# lines.
+nl_squeeze_paren_close = false # true/false
+
+# Whether to remove blanks after '#ifxx' and '#elxx', or before '#elxx' and
+# '#endif'. Does not affect top-level #ifdefs.
+nl_squeeze_ifdef = false # true/false
+
+# Makes the nl_squeeze_ifdef option affect the top-level #ifdefs as well.
+nl_squeeze_ifdef_top_level = false # true/false
+
+# Add or remove blank line before 'if'.
+nl_before_if = ignore # ignore/add/remove/force
+
+# Add or remove blank line after 'if' statement. Add/Force work only if the
+# next token is not a closing brace.
+nl_after_if = ignore # ignore/add/remove/force
+
+# Add or remove blank line before 'for'.
+nl_before_for = ignore # ignore/add/remove/force
+
+# Add or remove blank line after 'for' statement.
+nl_after_for = ignore # ignore/add/remove/force
+
+# Add or remove blank line before 'while'.
+nl_before_while = ignore # ignore/add/remove/force
+
+# Add or remove blank line after 'while' statement.
+nl_after_while = ignore # ignore/add/remove/force
+
+# Add or remove blank line before 'switch'.
+nl_before_switch = ignore # ignore/add/remove/force
+
+# Add or remove blank line after 'switch' statement.
+nl_after_switch = ignore # ignore/add/remove/force
+
+# Add or remove blank line before 'synchronized'.
+nl_before_synchronized = ignore # ignore/add/remove/force
+
+# Add or remove blank line after 'synchronized' statement.
+nl_after_synchronized = ignore # ignore/add/remove/force
+
+# Add or remove blank line before 'do'.
+nl_before_do = ignore # ignore/add/remove/force
+
+# Add or remove blank line after 'do/while' statement.
+nl_after_do = ignore # ignore/add/remove/force
+
+# Whether to put a blank line before 'return' statements, unless after an open
+# brace.
+nl_before_return = false # true/false
+
+# Whether to put a blank line after 'return' statements, unless followed by a
+# close brace.
+nl_after_return = false # true/false
+
+# Whether to put a blank line before a member '.' or '->' operators.
+nl_before_member = ignore # ignore/add/remove/force
+
+# (Java) Whether to put a blank line after a member '.' or '->' operators.
+nl_after_member = ignore # ignore/add/remove/force
+
+# Whether to double-space commented-entries in 'struct'/'union'/'enum'.
+nl_ds_struct_enum_cmt = false # true/false
+
+# Whether to force a newline before '}' of a 'struct'/'union'/'enum'.
+# (Lower priority than eat_blanks_before_close_brace.)
+nl_ds_struct_enum_close_brace = false # true/false
+
+# Add or remove newline before or after (depending on pos_class_colon) a class
+# colon, as in 'class Foo <here> : <or here> public Bar'.
+nl_class_colon = ignore # ignore/add/remove/force
+
+# Add or remove newline around a class constructor colon. The exact position
+# depends on nl_constr_init_args, pos_constr_colon and pos_constr_comma.
+nl_constr_colon = ignore # ignore/add/remove/force
+
+# Whether to collapse a two-line namespace, like 'namespace foo\n{ decl; }'
+# into a single line. If true, prevents other brace newline rules from turning
+# such code into four lines.
+nl_namespace_two_to_one_liner = false # true/false
+
+# Whether to remove a newline in simple unbraced if statements, turning them
+# into one-liners, as in 'if(b)\n i++;' => 'if(b) i++;'.
+nl_create_if_one_liner = false # true/false
+
+# Whether to remove a newline in simple unbraced for statements, turning them
+# into one-liners, as in 'for (...)\n stmt;' => 'for (...) stmt;'.
+nl_create_for_one_liner = false # true/false
+
+# Whether to remove a newline in simple unbraced while statements, turning
+# them into one-liners, as in 'while (expr)\n stmt;' => 'while (expr) stmt;'.
+nl_create_while_one_liner = false # true/false
+
+# Whether to collapse a function definition whose body (not counting braces)
+# is only one line so that the entire definition (prototype, braces, body) is
+# a single line.
+nl_create_func_def_one_liner = false # true/false
+
+# Whether to collapse a function definition whose body (not counting braces)
+# is only one line so that the entire definition (prototype, braces, body) is
+# a single line.
+nl_create_list_one_liner = false # true/false
+
+# Whether to split one-line simple unbraced if statements into two lines by
+# adding a newline, as in 'if(b) <here> i++;'.
+nl_split_if_one_liner = false # true/false
+
+# Whether to split one-line simple unbraced for statements into two lines by
+# adding a newline, as in 'for (...) <here> stmt;'.
+nl_split_for_one_liner = false # true/false
+
+# Whether to split one-line simple unbraced while statements into two lines by
+# adding a newline, as in 'while (expr) <here> stmt;'.
+nl_split_while_one_liner = false # true/false
+
+# Don't add a newline before a cpp-comment in a parameter list of a function
+# call.
+donot_add_nl_before_cpp_comment = false # true/false
+
+#
+# Blank line options
+#
+
+# The maximum number of consecutive newlines (3 = 2 blank lines).
+nl_max = 0 # unsigned number
+
+# The maximum number of consecutive newlines in a function.
+nl_max_blank_in_func = 0 # unsigned number
+
+# The number of newlines inside an empty function body.
+# This option is overridden by nl_collapse_empty_body=true
+nl_inside_empty_func = 0 # unsigned number
+
+# The number of newlines before a function prototype.
+nl_before_func_body_proto = 0 # unsigned number
+
+# The number of newlines before a multi-line function definition.
+nl_before_func_body_def = 0 # unsigned number
+
+# The number of newlines before a class constructor/destructor prototype.
+nl_before_func_class_proto = 0 # unsigned number
+
+# The number of newlines before a class constructor/destructor definition.
+nl_before_func_class_def = 0 # unsigned number
+
+# The number of newlines after a function prototype.
+nl_after_func_proto = 0 # unsigned number
+
+# The number of newlines after a function prototype, if not followed by
+# another function prototype.
+nl_after_func_proto_group = 0 # unsigned number
+
+# The number of newlines after a class constructor/destructor prototype.
+nl_after_func_class_proto = 0 # unsigned number
+
+# The number of newlines after a class constructor/destructor prototype,
+# if not followed by another constructor/destructor prototype.
+nl_after_func_class_proto_group = 0 # unsigned number
+
+# Whether one-line method definitions inside a class body should be treated
+# as if they were prototypes for the purposes of adding newlines.
+#
+# Requires nl_class_leave_one_liners=true. Overrides nl_before_func_body_def
+# and nl_before_func_class_def for one-liners.
+nl_class_leave_one_liner_groups = false # true/false
+
+# The number of newlines after '}' of a multi-line function body.
+nl_after_func_body = 0 # unsigned number
+
+# The number of newlines after '}' of a multi-line function body in a class
+# declaration. Also affects class constructors/destructors.
+#
+# Overrides nl_after_func_body.
+nl_after_func_body_class = 0 # unsigned number
+
+# The number of newlines after '}' of a single line function body. Also
+# affects class constructors/destructors.
+#
+# Overrides nl_after_func_body and nl_after_func_body_class.
+nl_after_func_body_one_liner = 0 # unsigned number
+
+# The number of blank lines after a block of variable definitions at the top
+# of a function body.
+#
+# 0: No change (default).
+nl_func_var_def_blk = 0 # unsigned number
+
+# The number of newlines before a block of typedefs. If nl_after_access_spec
+# is non-zero, that option takes precedence.
+#
+# 0: No change (default).
+nl_typedef_blk_start = 0 # unsigned number
+
+# The number of newlines after a block of typedefs.
+#
+# 0: No change (default).
+nl_typedef_blk_end = 0 # unsigned number
+
+# The maximum number of consecutive newlines within a block of typedefs.
+#
+# 0: No change (default).
+nl_typedef_blk_in = 0 # unsigned number
+
+# The number of newlines before a block of variable definitions not at the top
+# of a function body. If nl_after_access_spec is non-zero, that option takes
+# precedence.
+#
+# 0: No change (default).
+nl_var_def_blk_start = 0 # unsigned number
+
+# The number of newlines after a block of variable definitions not at the top
+# of a function body.
+#
+# 0: No change (default).
+nl_var_def_blk_end = 0 # unsigned number
+
+# The maximum number of consecutive newlines within a block of variable
+# definitions.
+#
+# 0: No change (default).
+nl_var_def_blk_in = 0 # unsigned number
+
+# The minimum number of newlines before a multi-line comment.
+# Doesn't apply if after a brace open or another multi-line comment.
+nl_before_block_comment = 0 # unsigned number
+
+# The minimum number of newlines before a single-line C comment.
+# Doesn't apply if after a brace open or other single-line C comments.
+nl_before_c_comment = 0 # unsigned number
+
+# The minimum number of newlines before a CPP comment.
+# Doesn't apply if after a brace open or other CPP comments.
+nl_before_cpp_comment = 0 # unsigned number
+
+# Whether to force a newline after a multi-line comment.
+nl_after_multiline_comment = false # true/false
+
+# Whether to force a newline after a label's colon.
+nl_after_label_colon = false # true/false
+
+# The number of newlines after '}' or ';' of a struct/enum/union definition.
+nl_after_struct = 0 # unsigned number
+
+# The number of newlines before a class definition.
+nl_before_class = 0 # unsigned number
+
+# The number of newlines after '}' or ';' of a class definition.
+nl_after_class = 0 # unsigned number
+
+# The number of newlines before a namespace.
+nl_before_namespace = 0 # unsigned number
+
+# The number of newlines after '{' of a namespace. This also adds newlines
+# before the matching '}'.
+#
+# 0: Apply eat_blanks_after_open_brace or eat_blanks_before_close_brace if
+# applicable, otherwise no change.
+#
+# Overrides eat_blanks_after_open_brace and eat_blanks_before_close_brace.
+nl_inside_namespace = 0 # unsigned number
+
+# The number of newlines after '}' of a namespace.
+nl_after_namespace = 0 # unsigned number
+
+# The number of newlines before an access specifier label. This also includes
+# the Qt-specific 'signals:' and 'slots:'. Will not change the newline count
+# if after a brace open.
+#
+# 0: No change (default).
+nl_before_access_spec = 0 # unsigned number
+
+# The number of newlines after an access specifier label. This also includes
+# the Qt-specific 'signals:' and 'slots:'. Will not change the newline count
+# if after a brace open.
+#
+# 0: No change (default).
+#
+# Overrides nl_typedef_blk_start and nl_var_def_blk_start.
+nl_after_access_spec = 0 # unsigned number
+
+# The number of newlines between a function definition and the function
+# comment, as in '// comment\n <here> void foo() {...}'.
+#
+# 0: No change (default).
+nl_comment_func_def = 0 # unsigned number
+
+# The number of newlines after a try-catch-finally block that isn't followed
+# by a brace close.
+#
+# 0: No change (default).
+nl_after_try_catch_finally = 0 # unsigned number
+
+# (C#) The number of newlines before and after a property, indexer or event
+# declaration.
+#
+# 0: No change (default).
+nl_around_cs_property = 0 # unsigned number
+
+# (C#) The number of newlines between the get/set/add/remove handlers.
+#
+# 0: No change (default).
+nl_between_get_set = 0 # unsigned number
+
+# (C#) Add or remove newline between property and the '{'.
+nl_property_brace = ignore # ignore/add/remove/force
+
+# Whether to remove blank lines after '{'.
+eat_blanks_after_open_brace = false # true/false
+
+# Whether to remove blank lines before '}'.
+eat_blanks_before_close_brace = false # true/false
+
+# How aggressively to remove extra newlines not in preprocessor.
+#
+# 0: No change (default)
+# 1: Remove most newlines not handled by other config
+# 2: Remove all newlines and reformat completely by config
+nl_remove_extra_newlines = 0 # unsigned number
+
+# (Java) Add or remove newline after an annotation statement. Only affects
+# annotations that are after a newline.
+nl_after_annotation = ignore # ignore/add/remove/force
+
+# (Java) Add or remove newline between two annotations.
+nl_between_annotation = ignore # ignore/add/remove/force
+
+# The number of newlines before a whole-file #ifdef.
+#
+# 0: No change (default).
+nl_before_whole_file_ifdef = 0 # unsigned number
+
+# The number of newlines after a whole-file #ifdef.
+#
+# 0: No change (default).
+nl_after_whole_file_ifdef = 0 # unsigned number
+
+# The number of newlines before a whole-file #endif.
+#
+# 0: No change (default).
+nl_before_whole_file_endif = 0 # unsigned number
+
+# The number of newlines after a whole-file #endif.
+#
+# 0: No change (default).
+nl_after_whole_file_endif = 0 # unsigned number
+
+#
+# Positioning options
+#
+
+# The position of arithmetic operators in wrapped expressions.
+pos_arith = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of assignment in wrapped expressions. Do not affect '='
+# followed by '{'.
+pos_assign = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of Boolean operators in wrapped expressions.
+pos_bool = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of comparison operators in wrapped expressions.
+pos_compare = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of conditional operators, as in the '?' and ':' of
+# 'expr ? stmt : stmt', in wrapped expressions.
+pos_conditional = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of the comma in wrapped expressions.
+pos_comma = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of the comma in enum entries.
+pos_enum_comma = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of the comma in the base class list if there is more than one
+# line. Affects nl_class_init_args.
+pos_class_comma = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of the comma in the constructor initialization list.
+# Related to nl_constr_colon, nl_constr_init_args and pos_constr_colon.
+pos_constr_comma = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of trailing/leading class colon, between class and base class
+# list. Affects nl_class_colon.
+pos_class_colon = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of colons between constructor and member initialization.
+# Related to nl_constr_colon, nl_constr_init_args and pos_constr_comma.
+pos_constr_colon = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of shift operators in wrapped expressions.
+pos_shift = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+#
+# Line splitting options
+#
+
+# Try to limit code width to N columns.
+code_width = 80 # unsigned number
+
+# Whether to fully split long 'for' statements at semi-colons.
+ls_for_split_full = false # true/false
+
+# Whether to fully split long function prototypes/calls at commas.
+# The option ls_code_width has priority over the option ls_func_split_full.
+ls_func_split_full = false # true/false
+
+# Whether to split lines as close to code_width as possible and ignore some
+# groupings.
+# The option ls_code_width has priority over the option ls_func_split_full.
+ls_code_width = false # true/false
+
+#
+# Code alignment options (not left column spaces/tabs)
+#
+
+# Whether to keep non-indenting tabs.
+align_keep_tabs = false # true/false
+
+# Whether to use tabs for aligning.
+align_with_tabs = false # true/false
+
+# Whether to bump out to the next tab when aligning.
+align_on_tabstop = false # true/false
+
+# Whether to right-align numbers.
+align_number_right = false # true/false
+
+# Whether to keep whitespace not required for alignment.
+align_keep_extra_space = false # true/false
+
+# Whether to align variable definitions in prototypes and functions.
+align_func_params = false # true/false
+
+# The span for aligning parameter definitions in function on parameter name.
+#
+# 0: Don't align (default).
+align_func_params_span = 0 # unsigned number
+
+# The threshold for aligning function parameter definitions.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_func_params_thresh = 0 # number
+
+# The gap for aligning function parameter definitions.
+align_func_params_gap = 0 # unsigned number
+
+# The span for aligning constructor value.
+#
+# 0: Don't align (default).
+align_constr_value_span = 0 # unsigned number
+
+# The threshold for aligning constructor value.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_constr_value_thresh = 0 # number
+
+# The gap for aligning constructor value.
+align_constr_value_gap = 0 # unsigned number
+
+# Whether to align parameters in single-line functions that have the same
+# name. The function names must already be aligned with each other.
+align_same_func_call_params = false # true/false
+
+# The span for aligning function-call parameters for single line functions.
+#
+# 0: Don't align (default).
+align_same_func_call_params_span = 0 # unsigned number
+
+# The threshold for aligning function-call parameters for single line
+# functions.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_same_func_call_params_thresh = 0 # number
+
+# The span for aligning variable definitions.
+#
+# 0: Don't align (default).
+align_var_def_span = 0 # unsigned number
+
+# How to consider (or treat) the '*' in the alignment of variable definitions.
+#
+# 0: Part of the type 'void * foo;' (default)
+# 1: Part of the variable 'void *foo;'
+# 2: Dangling 'void *foo;'
+# Dangling: the '*' will not be taken into account when aligning.
+align_var_def_star_style = 0 # unsigned number
+
+# How to consider (or treat) the '&' in the alignment of variable definitions.
+#
+# 0: Part of the type 'long & foo;' (default)
+# 1: Part of the variable 'long &foo;'
+# 2: Dangling 'long &foo;'
+# Dangling: the '&' will not be taken into account when aligning.
+align_var_def_amp_style = 0 # unsigned number
+
+# The threshold for aligning variable definitions.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_var_def_thresh = 0 # number
+
+# The gap for aligning variable definitions.
+align_var_def_gap = 0 # unsigned number
+
+# Whether to align the colon in struct bit fields.
+align_var_def_colon = false # true/false
+
+# The gap for aligning the colon in struct bit fields.
+align_var_def_colon_gap = 0 # unsigned number
+
+# Whether to align any attribute after the variable name.
+align_var_def_attribute = false # true/false
+
+# Whether to align inline struct/enum/union variable definitions.
+align_var_def_inline = false # true/false
+
+# The span for aligning on '=' in assignments.
+#
+# 0: Don't align (default).
+align_assign_span = 0 # unsigned number
+
+# The span for aligning on '=' in function prototype modifier.
+#
+# 0: Don't align (default).
+align_assign_func_proto_span = 0 # unsigned number
+
+# The threshold for aligning on '=' in assignments.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_assign_thresh = 0 # number
+
+# How to apply align_assign_span to function declaration "assignments", i.e.
+# 'virtual void foo() = 0' or '~foo() = {default|delete}'.
+#
+# 0: Align with other assignments (default)
+# 1: Align with each other, ignoring regular assignments
+# 2: Don't align
+align_assign_decl_func = 0 # unsigned number
+
+# The span for aligning on '=' in enums.
+#
+# 0: Don't align (default).
+align_enum_equ_span = 0 # unsigned number
+
+# The threshold for aligning on '=' in enums.
+# Use a negative number for absolute thresholds.
+#
+# 0: no limit (default).
+align_enum_equ_thresh = 0 # number
+
+# The span for aligning class member definitions.
+#
+# 0: Don't align (default).
+align_var_class_span = 0 # unsigned number
+
+# The threshold for aligning class member definitions.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_var_class_thresh = 0 # number
+
+# The gap for aligning class member definitions.
+align_var_class_gap = 0 # unsigned number
+
+# The span for aligning struct/union member definitions.
+#
+# 0: Don't align (default).
+align_var_struct_span = 0 # unsigned number
+
+# The threshold for aligning struct/union member definitions.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_var_struct_thresh = 0 # number
+
+# The gap for aligning struct/union member definitions.
+align_var_struct_gap = 0 # unsigned number
+
+# The span for aligning struct initializer values.
+#
+# 0: Don't align (default).
+align_struct_init_span = 0 # unsigned number
+
+# The span for aligning single-line typedefs.
+#
+# 0: Don't align (default).
+align_typedef_span = 0 # unsigned number
+
+# The minimum space between the type and the synonym of a typedef.
+align_typedef_gap = 0 # unsigned number
+
+# How to align typedef'd functions with other typedefs.
+#
+# 0: Don't mix them at all (default)
+# 1: Align the open parenthesis with the types
+# 2: Align the function type name with the other type names
+align_typedef_func = 0 # unsigned number
+
+# How to consider (or treat) the '*' in the alignment of typedefs.
+#
+# 0: Part of the typedef type, 'typedef int * pint;' (default)
+# 1: Part of type name: 'typedef int *pint;'
+# 2: Dangling: 'typedef int *pint;'
+# Dangling: the '*' will not be taken into account when aligning.
+align_typedef_star_style = 0 # unsigned number
+
+# How to consider (or treat) the '&' in the alignment of typedefs.
+#
+# 0: Part of the typedef type, 'typedef int & intref;' (default)
+# 1: Part of type name: 'typedef int &intref;'
+# 2: Dangling: 'typedef int &intref;'
+# Dangling: the '&' will not be taken into account when aligning.
+align_typedef_amp_style = 0 # unsigned number
+
+# The span for aligning comments that end lines.
+#
+# 0: Don't align (default).
+align_right_cmt_span = 0 # unsigned number
+
+# Minimum number of columns between preceding text and a trailing comment in
+# order for the comment to qualify for being aligned. Must be non-zero to have
+# an effect.
+align_right_cmt_gap = 0 # unsigned number
+
+# If aligning comments, whether to mix with comments after '}' and #endif with
+# less than three spaces before the comment.
+align_right_cmt_mix = false # true/false
+
+# Whether to only align trailing comments that are at the same brace level.
+align_right_cmt_same_level = false # true/false
+
+# Minimum column at which to align trailing comments. Comments which are
+# aligned beyond this column, but which can be aligned in a lesser column,
+# may be "pulled in".
+#
+# 0: Ignore (default).
+align_right_cmt_at_col = 0 # unsigned number
+
+# The span for aligning function prototypes.
+#
+# 0: Don't align (default).
+align_func_proto_span = 0 # unsigned number
+
+# The threshold for aligning function prototypes.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_func_proto_thresh = 0 # number
+
+# Minimum gap between the return type and the function name.
+align_func_proto_gap = 0 # unsigned number
+
+# Whether to align function prototypes on the 'operator' keyword instead of
+# what follows.
+align_on_operator = false # true/false
+
+# Whether to mix aligning prototype and variable declarations. If true,
+# align_var_def_XXX options are used instead of align_func_proto_XXX options.
+align_mix_var_proto = false # true/false
+
+# Whether to align single-line functions with function prototypes.
+# Uses align_func_proto_span.
+align_single_line_func = false # true/false
+
+# Whether to align the open brace of single-line functions.
+# Requires align_single_line_func=true. Uses align_func_proto_span.
+align_single_line_brace = false # true/false
+
+# Gap for align_single_line_brace.
+align_single_line_brace_gap = 0 # unsigned number
+
+# (OC) The span for aligning Objective-C message specifications.
+#
+# 0: Don't align (default).
+align_oc_msg_spec_span = 0 # unsigned number
+
+# Whether to align macros wrapped with a backslash and a newline. This will
+# not work right if the macro contains a multi-line comment.
+align_nl_cont = true # true/false
+
+# Whether to align macro functions and variables together.
+align_pp_define_together = false # true/false
+
+# The span for aligning on '#define' bodies.
+#
+# =0: Don't align (default)
+# >0: Number of lines (including comments) between blocks
+align_pp_define_span = 0 # unsigned number
+
+# The minimum space between label and value of a preprocessor define.
+align_pp_define_gap = 0 # unsigned number
+
+# Whether to align lines that start with '<<' with previous '<<'.
+#
+# Default: true
+align_left_shift = true # true/false
+
+# Whether to align comma-separated statements following '<<' (as used to
+# initialize Eigen matrices).
+align_eigen_comma_init = false # true/false
+
+# Whether to align text after 'asm volatile ()' colons.
+align_asm_colon = false # true/false
+
+# (OC) Span for aligning parameters in an Objective-C message call
+# on the ':'.
+#
+# 0: Don't align.
+align_oc_msg_colon_span = 0 # unsigned number
+
+# (OC) Whether to always align with the first parameter, even if it is too
+# short.
+align_oc_msg_colon_first = false # true/false
+
+# (OC) Whether to align parameters in an Objective-C '+' or '-' declaration
+# on the ':'.
+align_oc_decl_colon = false # true/false
+
+# (OC) Whether to not align parameters in an Objectve-C message call if first
+# colon is not on next line of the message call (the same way Xcode does
+# aligment)
+align_oc_msg_colon_xcode_like = false # true/false
+
+#
+# Comment modification options
+#
+
+# Try to wrap comments at N columns.
+cmt_width = 0 # unsigned number
+
+# How to reflow comments.
+#
+# 0: No reflowing (apart from the line wrapping due to cmt_width) (default)
+# 1: No touching at all
+# 2: Full reflow
+cmt_reflow_mode = 0 # unsigned number
+
+# Whether to convert all tabs to spaces in comments. If false, tabs in
+# comments are left alone, unless used for indenting.
+cmt_convert_tab_to_spaces = false # true/false
+
+# Whether to apply changes to multi-line comments, including cmt_width,
+# keyword substitution and leading chars.
+#
+# Default: true
+cmt_indent_multi = true # true/false
+
+# Whether to group c-comments that look like they are in a block.
+cmt_c_group = false # true/false
+
+# Whether to put an empty '/*' on the first line of the combined c-comment.
+cmt_c_nl_start = false # true/false
+
+# Whether to add a newline before the closing '*/' of the combined c-comment.
+cmt_c_nl_end = false # true/false
+
+# Whether to change cpp-comments into c-comments.
+cmt_cpp_to_c = false # true/false
+
+# Whether to group cpp-comments that look like they are in a block. Only
+# meaningful if cmt_cpp_to_c=true.
+cmt_cpp_group = false # true/false
+
+# Whether to put an empty '/*' on the first line of the combined cpp-comment
+# when converting to a c-comment.
+#
+# Requires cmt_cpp_to_c=true and cmt_cpp_group=true.
+cmt_cpp_nl_start = false # true/false
+
+# Whether to add a newline before the closing '*/' of the combined cpp-comment
+# when converting to a c-comment.
+#
+# Requires cmt_cpp_to_c=true and cmt_cpp_group=true.
+cmt_cpp_nl_end = false # true/false
+
+# Whether to put a star on subsequent comment lines.
+cmt_star_cont = false # true/false
+
+# The number of spaces to insert at the start of subsequent comment lines.
+cmt_sp_before_star_cont = 0 # unsigned number
+
+# The number of spaces to insert after the star on subsequent comment lines.
+cmt_sp_after_star_cont = 0 # unsigned number
+
+# For multi-line comments with a '*' lead, remove leading spaces if the first
+# and last lines of the comment are the same length.
+#
+# Default: true
+cmt_multi_check_last = true # true/false
+
+# For multi-line comments with a '*' lead, remove leading spaces if the first
+# and last lines of the comment are the same length AND if the length is
+# bigger as the first_len minimum.
+#
+# Default: 4
+cmt_multi_first_len_minimum = 4 # unsigned number
+
+# Path to a file that contains text to insert at the beginning of a file if
+# the file doesn't start with a C/C++ comment. If the inserted text contains
+# '$(filename)', that will be replaced with the current file's name.
+cmt_insert_file_header = "" # string
+
+# Path to a file that contains text to insert at the end of a file if the
+# file doesn't end with a C/C++ comment. If the inserted text contains
+# '$(filename)', that will be replaced with the current file's name.
+cmt_insert_file_footer = "" # string
+
+# Path to a file that contains text to insert before a function definition if
+# the function isn't preceded by a C/C++ comment. If the inserted text
+# contains '$(function)', '$(javaparam)' or '$(fclass)', these will be
+# replaced with, respectively, the name of the function, the javadoc '@param'
+# and '@return' stuff, or the name of the class to which the member function
+# belongs.
+cmt_insert_func_header = "" # string
+
+# Path to a file that contains text to insert before a class if the class
+# isn't preceded by a C/C++ comment. If the inserted text contains '$(class)',
+# that will be replaced with the class name.
+cmt_insert_class_header = "" # string
+
+# Path to a file that contains text to insert before an Objective-C message
+# specification, if the method isn't preceded by a C/C++ comment. If the
+# inserted text contains '$(message)' or '$(javaparam)', these will be
+# replaced with, respectively, the name of the function, or the javadoc
+# '@param' and '@return' stuff.
+cmt_insert_oc_msg_header = "" # string
+
+# Whether a comment should be inserted if a preprocessor is encountered when
+# stepping backwards from a function name.
+#
+# Applies to cmt_insert_oc_msg_header, cmt_insert_func_header and
+# cmt_insert_class_header.
+cmt_insert_before_preproc = false # true/false
+
+# Whether a comment should be inserted if a function is declared inline to a
+# class definition.
+#
+# Applies to cmt_insert_func_header.
+#
+# Default: true
+cmt_insert_before_inlines = true # true/false
+
+# Whether a comment should be inserted if the function is a class constructor
+# or destructor.
+#
+# Applies to cmt_insert_func_header.
+cmt_insert_before_ctor_dtor = false # true/false
+
+#
+# Code modifying options (non-whitespace)
+#
+
+# Add or remove braces on a single-line 'do' statement.
+mod_full_brace_do = ignore # ignore/add/remove/force
+
+# Add or remove braces on a single-line 'for' statement.
+mod_full_brace_for = ignore # ignore/add/remove/force
+
+# (Pawn) Add or remove braces on a single-line function definition.
+mod_full_brace_function = ignore # ignore/add/remove/force
+
+# Add or remove braces on a single-line 'if' statement. Braces will not be
+# removed if the braced statement contains an 'else'.
+mod_full_brace_if = ignore # ignore/add/remove/force
+
+# Whether to enforce that all blocks of an 'if'/'else if'/'else' chain either
+# have, or do not have, braces. If true, braces will be added if any block
+# needs braces, and will only be removed if they can be removed from all
+# blocks.
+#
+# Overrides mod_full_brace_if.
+mod_full_brace_if_chain = false # true/false
+
+# Whether to add braces to all blocks of an 'if'/'else if'/'else' chain.
+# If true, mod_full_brace_if_chain will only remove braces from an 'if' that
+# does not have an 'else if' or 'else'.
+mod_full_brace_if_chain_only = false # true/false
+
+# Add or remove braces on single-line 'while' statement.
+mod_full_brace_while = ignore # ignore/add/remove/force
+
+# Add or remove braces on single-line 'using ()' statement.
+mod_full_brace_using = ignore # ignore/add/remove/force
+
+# Don't remove braces around statements that span N newlines
+mod_full_brace_nl = 0 # unsigned number
+
+# Whether to prevent removal of braces from 'if'/'for'/'while'/etc. blocks
+# which span multiple lines.
+#
+# Affects:
+# mod_full_brace_for
+# mod_full_brace_if
+# mod_full_brace_if_chain
+# mod_full_brace_if_chain_only
+# mod_full_brace_while
+# mod_full_brace_using
+#
+# Does not affect:
+# mod_full_brace_do
+# mod_full_brace_function
+mod_full_brace_nl_block_rem_mlcond = false # true/false
+
+# Add or remove unnecessary parenthesis on 'return' statement.
+mod_paren_on_return = ignore # ignore/add/remove/force
+
+# (Pawn) Whether to change optional semicolons to real semicolons.
+mod_pawn_semicolon = false # true/false
+
+# Whether to fully parenthesize Boolean expressions in 'while' and 'if'
+# statement, as in 'if (a && b > c)' => 'if (a && (b > c))'.
+mod_full_paren_if_bool = false # true/false
+
+# Whether to remove superfluous semicolons.
+mod_remove_extra_semicolon = false # true/false
+
+# If a function body exceeds the specified number of newlines and doesn't have
+# a comment after the close brace, a comment will be added.
+mod_add_long_function_closebrace_comment = 0 # unsigned number
+
+# If a namespace body exceeds the specified number of newlines and doesn't
+# have a comment after the close brace, a comment will be added.
+mod_add_long_namespace_closebrace_comment = 0 # unsigned number
+
+# If a class body exceeds the specified number of newlines and doesn't have a
+# comment after the close brace, a comment will be added.
+mod_add_long_class_closebrace_comment = 0 # unsigned number
+
+# If a switch body exceeds the specified number of newlines and doesn't have a
+# comment after the close brace, a comment will be added.
+mod_add_long_switch_closebrace_comment = 0 # unsigned number
+
+# If an #ifdef body exceeds the specified number of newlines and doesn't have
+# a comment after the #endif, a comment will be added.
+mod_add_long_ifdef_endif_comment = 0 # unsigned number
+
+# If an #ifdef or #else body exceeds the specified number of newlines and
+# doesn't have a comment after the #else, a comment will be added.
+mod_add_long_ifdef_else_comment = 0 # unsigned number
+
+# Whether to take care of the case by the mod_sort_xx options.
+mod_sort_case_sensitive = false # true/false
+
+# Whether to sort consecutive single-line 'import' statements.
+mod_sort_import = false # true/false
+
+# (C#) Whether to sort consecutive single-line 'using' statements.
+mod_sort_using = false # true/false
+
+# Whether to sort consecutive single-line '#include' statements (C/C++) and
+# '#import' statements (Objective-C). Be aware that this has the potential to
+# break your code if your includes/imports have ordering dependencies.
+mod_sort_include = false # true/false
+
+# Whether to prioritize '#include' and '#import' statements that contain
+# filename without extension when sorting is enabled.
+mod_sort_incl_import_prioritize_filename = false # true/false
+
+# Whether to prioritize '#include' and '#import' statements that does not
+# contain extensions when sorting is enabled.
+mod_sort_incl_import_prioritize_extensionless = false # true/false
+
+# Whether to prioritize '#include' and '#import' statements that contain
+# angle over quotes when sorting is enabled.
+mod_sort_incl_import_prioritize_angle_over_quotes = false # true/false
+
+# Whether to ignore file extension in '#include' and '#import' statements
+# for sorting comparison.
+mod_sort_incl_import_ignore_extension = false # true/false
+
+# Whether to group '#include' and '#import' statements when sorting is enabled.
+mod_sort_incl_import_grouping_enabled = false # true/false
+
+# Whether to move a 'break' that appears after a fully braced 'case' before
+# the close brace, as in 'case X: { ... } break;' => 'case X: { ... break; }'.
+mod_move_case_break = false # true/false
+
+# Add or remove braces around a fully braced case statement. Will only remove
+# braces if there are no variable declarations in the block.
+mod_case_brace = ignore # ignore/add/remove/force
+
+# Whether to remove a void 'return;' that appears as the last statement in a
+# function.
+mod_remove_empty_return = false # true/false
+
+# Add or remove the comma after the last value of an enumeration.
+mod_enum_last_comma = ignore # ignore/add/remove/force
+
+# (OC) Whether to organize the properties. If true, properties will be
+# rearranged according to the mod_sort_oc_property_*_weight factors.
+mod_sort_oc_properties = false # true/false
+
+# (OC) Weight of a class property modifier.
+mod_sort_oc_property_class_weight = 0 # number
+
+# (OC) Weight of 'atomic' and 'nonatomic'.
+mod_sort_oc_property_thread_safe_weight = 0 # number
+
+# (OC) Weight of 'readwrite' when organizing properties.
+mod_sort_oc_property_readwrite_weight = 0 # number
+
+# (OC) Weight of a reference type specifier ('retain', 'copy', 'assign',
+# 'weak', 'strong') when organizing properties.
+mod_sort_oc_property_reference_weight = 0 # number
+
+# (OC) Weight of getter type ('getter=') when organizing properties.
+mod_sort_oc_property_getter_weight = 0 # number
+
+# (OC) Weight of setter type ('setter=') when organizing properties.
+mod_sort_oc_property_setter_weight = 0 # number
+
+# (OC) Weight of nullability type ('nullable', 'nonnull', 'null_unspecified',
+# 'null_resettable') when organizing properties.
+mod_sort_oc_property_nullability_weight = 0 # number
+
+#
+# Preprocessor options
+#
+
+# Add or remove indentation of preprocessor directives inside #if blocks
+# at brace level 0 (file-level).
+pp_indent = ignore # ignore/add/remove/force
+
+# Whether to indent #if/#else/#endif at the brace level. If false, these are
+# indented from column 1.
+pp_indent_at_level = false # true/false
+
+# Specifies the number of columns to indent preprocessors per level
+# at brace level 0 (file-level). If pp_indent_at_level=false, also specifies
+# the number of columns to indent preprocessors per level
+# at brace level > 0 (function-level).
+#
+# Default: 1
+pp_indent_count = 1 # unsigned number
+
+# Add or remove space after # based on pp_level of #if blocks.
+pp_space = ignore # ignore/add/remove/force
+
+# Sets the number of spaces per level added with pp_space.
+pp_space_count = 0 # unsigned number
+
+# The indent for '#region' and '#endregion' in C# and '#pragma region' in
+# C/C++. Negative values decrease indent down to the first column.
+pp_indent_region = 0 # number
+
+# Whether to indent the code between #region and #endregion.
+pp_region_indent_code = false # true/false
+
+# If pp_indent_at_level=true, sets the indent for #if, #else and #endif when
+# not at file-level. Negative values decrease indent down to the first column.
+#
+# =0: Indent preprocessors using output_tab_size
+# >0: Column at which all preprocessors will be indented
+pp_indent_if = 0 # number
+
+# Whether to indent the code between #if, #else and #endif.
+pp_if_indent_code = false # true/false
+
+# Whether to indent '#define' at the brace level. If false, these are
+# indented from column 1.
+pp_define_at_level = false # true/false
+
+# Whether to ignore the '#define' body while formatting.
+pp_ignore_define_body = false # true/false
+
+# Whether to indent case statements between #if, #else, and #endif.
+# Only applies to the indent of the preprocesser that the case statements
+# directly inside of.
+#
+# Default: true
+pp_indent_case = true # true/false
+
+# Whether to indent whole function definitions between #if, #else, and #endif.
+# Only applies to the indent of the preprocesser that the function definition
+# is directly inside of.
+#
+# Default: true
+pp_indent_func_def = true # true/false
+
+# Whether to indent extern C blocks between #if, #else, and #endif.
+# Only applies to the indent of the preprocesser that the extern block is
+# directly inside of.
+#
+# Default: true
+pp_indent_extern = true # true/false
+
+# Whether to indent braces directly inside #if, #else, and #endif.
+# Only applies to the indent of the preprocesser that the braces are directly
+# inside of.
+#
+# Default: true
+pp_indent_brace = true # true/false
+
+#
+# Sort includes options
+#
+
+# The regex for include category with priority 0.
+include_category_0 = "" # string
+
+# The regex for include category with priority 1.
+include_category_1 = "" # string
+
+# The regex for include category with priority 2.
+include_category_2 = "" # string
+
+#
+# Use or Do not Use options
+#
+
+# true: indent_func_call_param will be used (default)
+# false: indent_func_call_param will NOT be used
+#
+# Default: true
+use_indent_func_call_param = true # true/false
+
+# The value of the indentation for a continuation line is calculated
+# differently if the statement is:
+# - a declaration: your case with QString fileName ...
+# - an assignment: your case with pSettings = new QSettings( ...
+#
+# At the second case the indentation value might be used twice:
+# - at the assignment
+# - at the function call (if present)
+#
+# To prevent the double use of the indentation value, use this option with the
+# value 'true'.
+#
+# true: indent_continue will be used only once
+# false: indent_continue will be used every time (default)
+use_indent_continue_only_once = false # true/false
+
+# The value might be used twice:
+# - at the assignment
+# - at the opening brace
+#
+# To prevent the double use of the indentation value, use this option with the
+# value 'true'.
+#
+# true: indentation will be used only once
+# false: indentation will be used every time (default)
+indent_cpp_lambda_only_once = false # true/false
+
+# Whether sp_after_angle takes precedence over sp_inside_fparen. This was the
+# historic behavior, but is probably not the desired behavior, so this is off
+# by default.
+use_sp_after_angle_always = false # true/false
+
+# Whether to apply special formatting for Qt SIGNAL/SLOT macros. Essentially,
+# this tries to format these so that they match Qt's normalized form (i.e. the
+# result of QMetaObject::normalizedSignature), which can slightly improve the
+# performance of the QObject::connect call, rather than how they would
+# otherwise be formatted.
+#
+# See options_for_QT.cpp for details.
+#
+# Default: true
+use_options_overriding_for_qt_macros = true # true/false
+
+# If true: the form feed character is removed from the list
+# of whitespace characters.
+# See https://en.cppreference.com/w/cpp/string/byte/isspace
+use_form_feed_no_more_as_whitespace_character = false # true/false
+
+#
+# Warn levels - 1: error, 2: warning (default), 3: note
+#
+
+# (C#) Warning is given if doing tab-to-\t replacement and we have found one
+# in a C# verbatim string literal.
+#
+# Default: 2
+warn_level_tabs_found_in_verbatim_string_literals = 2 # unsigned number
+
+# Limit the number of loops.
+# Used by uncrustify.cpp to exit from infinite loop.
+# 0: no limit.
+debug_max_number_of_loops = 0 # number
+
+# Set the number of the line to protocol;
+# Used in the function prot_the_line if the 2. parameter is zero.
+# 0: nothing protocol.
+debug_line_number_to_protocol = 0 # number
+
+# Set the number of second(s) before terminating formatting the current file,
+# 0: no timeout.
+# only for linux
+debug_timeout = 0 # number
+
+# Meaning of the settings:
+# Ignore - do not do any changes
+# Add - makes sure there is 1 or more space/brace/newline/etc
+# Force - makes sure there is exactly 1 space/brace/newline/etc,
+# behaves like Add in some contexts
+# Remove - removes space/brace/newline/etc
+#
+#
+# - Token(s) can be treated as specific type(s) with the 'set' option:
+# `set tokenType tokenString [tokenString...]`
+#
+# Example:
+# `set BOOL __AND__ __OR__`
+#
+# tokenTypes are defined in src/token_enum.h, use them without the
+# 'CT_' prefix: 'CT_BOOL' => 'BOOL'
+#
+#
+# - Token(s) can be treated as type(s) with the 'type' option.
+# `type tokenString [tokenString...]`
+#
+# Example:
+# `type int c_uint_8 Rectangle`
+#
+# This can also be achieved with `set TYPE int c_uint_8 Rectangle`
+#
+#
+# To embed whitespace in tokenStrings use the '\' escape character, or quote
+# the tokenStrings. These quotes are supported: "'`
+#
+#
+# - Support for the auto detection of languages through the file ending can be
+# added using the 'file_ext' command.
+# `file_ext langType langString [langString..]`
+#
+# Example:
+# `file_ext CPP .ch .cxx .cpp.in`
+#
+# langTypes are defined in uncrusify_types.h in the lang_flag_e enum, use
+# them without the 'LANG_' prefix: 'LANG_CPP' => 'CPP'
+#
+#
+# - Custom macro-based indentation can be set up using 'macro-open',
+# 'macro-else' and 'macro-close'.
+# `(macro-open | macro-else | macro-close) tokenString`
+#
+# Example:
+# `macro-open BEGIN_TEMPLATE_MESSAGE_MAP`
+# `macro-open BEGIN_MESSAGE_MAP`
+# `macro-close END_MESSAGE_MAP`
+#
+#
+# option(s) with 'not default' value: 0
+#