#!/bin/sh export XSHAR_REPO=oilshell/oil export XSHAR_GIT_COMMIT=4c46f253968b9fb498b388e6d86251b792c3966f name=$(basename $0) # e.g. hello-xshar.xshar default_dir=/tmp/$name.$$ # User can override this, and then _build/oils.sh can use SKIP_REBUILD to make # it faster. Multiple runs without compiling. export XSHAR_DIR=${XSHAR_DIR:-$default_dir} change_dir() { mkdir -p "$XSHAR_DIR" cd "$XSHAR_DIR" } extract_data() { base64 -d <<'XSHAR_DATA' | tar -x -z H4sIAA+DrmYAA+08/XPbNrL3s/4KnN0MqVSi/JUmo6uSc52P+p7jeGL3+jo+lUOTkMWYInkEZVt3 0/7tb3cBkARFSfa1ybuZEjONJXKxWOwu9gurLrwbMbjmseunqZMu/vQ5xg6Mbw4O8O/u82e79H33 +XP6C+Pgm2cHf9qFf/ef7ezu7wHc7g6CsZ3PQk1tzEXuZYx9iaX+G8fW1lanFD/rs3yexWwBWuF4 IohYxtOMCx7nXh4mMQvjPGFHX3/dwXmTLJkx153MYQ53XRbO0iTLWZoBFDyNfZzSUWABv72ah1Hg wGoO4ncJv5pjn2XJdebNemyWBAA7KT64vMdu8kXKex32kEGwxSQ377FTb8YvEAET+SyX/7oPRUfA MOk4hn9u+H2aEW76IB935QZnC2Ch3s5sEYVXlecOPdBvc+9a3IW5P+2xKLlWDAJqw/hag/ieyDsd l40kRAcYwd7xGLdhA2SPTbpD2sA2TuRDZhfbpaWcH7Mw51mX9V+y0yTmHQL+4cwFKEAK/9IDoGJa koOYu8wTuDofFvwJJ/RArcAd3PPQ4N7EucPlbAsEb3U7xTse1eee59mqud+F1/D26fr5J6GoLy53 hAyTUATTU3vtNq+FIN9a5ssKe50LZHDz1Jc1CqucwpF5oeDsUAieofq/ybIkI8aWUjzzQNPtJiGW qrpGiprQ1FGa0DEIZE8E/MdSJwZklVXfgMraqLdNyqP1eb3yIBTwGv80qQ8+X6c/8vQ06I/CSzKk g6bWWiGCJwFuEAGcsPtYUVQ4cg5Gjc/AttmoMEtM0Ud/PU9EDpTDYW3gB6jqam5IK+R85Ghwa/wg nMQNhFIwPbmayZNtdvHh9Ych2OUA9tHMLmAEIWDLCk86IXKHr9b3v/wjtio8e6vMuo32vYFpymo7 b+n1GtZto2WzLY0PtRbQwTett1VVp+civHbkTlzyB02aj/9UsdD7JGNhj4FxjhmP5zOegdhLlCme RtE1JBSyP4/YzgpD1asy0jzOJj1d9m/JPE0FyBVokCtr3RPDKq66SpoIfzFlcZSmdgp+s0EMpTtd J4E3tzxbsFTCsoCnPA4EA2Hk01CYS2+HsR/NA862yKENsnmchzPuTLfMLYL85xHHbSJaR36FPXaW 2IgCEqnncxAbMQokJ8ErstNoA8So3sLuhSkaOBgBnJjAeFg7jEHDWaxInM5kEXKQ+naXAXEE+mya qo40dBsnVE9NQEJdZsYvjA0GrMqSBoZ8jvgPI7FBnnmxADbPPk8GsD7+3z3Ye7Zfi/939w+etfH/ lxgYx1fFrzOAaTJLIFLnyVywOIxe1LKBIheYcjAsGrKzKm/4jekCEmCkC/GtF83BA8i/bvkpf1i2 8Z6OVY+tzjryx6QblWSjkmLkZZ7wMFwU+lwkNxx8/Xl4HXvIqDJ/6XZWZhQROoHC1q3MKHoMA996 XvEejsB3/Hwxu0oiG/lYdyaat+Q/RC5jP7CZ+NyBVe0uukstC0diKo1nYxhmQejB/ZwHTIL32HWS q9CVaKDpKnAhcyvxOxqcgBxh7AF3t3kHCHWpn4w3bAaBH7wVmXk8cCMSWG4DfMBMb+VCn0YKzjbu RqlYEY/iSyY30BSTEr7VUWmx7+UgXSGubkHH6uU+9YgSH2BJl20r9fIpRk3+dB7fwIedHtvv6tjV jNglmwAvLeGEmCH7j8+3unVeUhS5mZfyFP+HvFzNTKmzm/mpdbtgaWOsfywgPuMZZ39PwoD28Yqx i6mXW/SCCbAXSBVGehg2nS3yaRK/quFC9kzsIiQcMsdxzPX0oRBsNGLWd0kSWcsRkZKYzLwRxkzs IhMJCHYTjuNaGrNdx/E2Srw6lu0lNAS1lpbzPNtEy7mydSWKpuixUQPlQo21DMO2bFaKopzRoBKT MKNcccmES4tyuTPu1kWqpgADEPEmDpBFXT5FCv3uuNtd5nG5wuvQ37gCwqxd4SHOc+X8vWUKHyxC 2sfvYHtUfoj/unHd/pjOSB5H5e8JEAMn/HvpZde37BLB0TyOx8Vb7cAiMLV6EXRhexvcltoZphZ1 DVJoCvWRJTaTyRpmd2x4OE28jXh7rFL4MvkhJALxII7QI415bPCF8ng2YZdqs5f3xB52uVB//7XE tDEbvWSlmbEV5fbX7J4tlLoo5vyIBh+I9+ZRzkACgnlxABErn4T37Kky+SoVpghzODziUfQUcr4c P9iqqMkkN0xI4SfobdjdNPSnLn0TWEuix3w4PJ8mad79i1zEnnGw4oFGXO6X5Gc/lQt1x/qxgbR5 XXOhCm/sp8tb0qfI9j1YnWJ2tjUNtwx2HXmxlbO5QIUiD3XFfQ+/2mrNkVqzy+6SeRTAewZqIDh+ AtWQKm/XONB5+J5G9T1JKXIWJEjZ1LsFzxhjyYP7POAxZNoZ1iccQ6cgcUF5j9jluNTLBh3EwgRV lbQqlydOnY7iYJEdrVSjt6n4dXYqy1762JYHlihwvBQrMvYKS2KcOzmjftSKLGJz7FOASp6J8LpO fhnlKWtDMGRr9jfYGsNqWsVSTExJDUgu+4xM9hA1UHFU764oMDW5O6KiMFWF/wGqrNFLa1PsvkQL lgNyGenBdLWwFrDJELkyGsCqJEqer7R4vZotlYjIV9UEiIUjMnEPspPVipTiGE1tMPHyRWG9k3nu YtIqmrReZrPjQjGqvqDcrcK4pzCSXR4ZJNkFNT1E0ytXVRzUFChU+8PynMnSKQGUIiXC6kKpumyt qATXxZhk5wEefKuowiqlQNsBporP0nyxVS3fNeojLUYKWaWjjIpuvXrgmXpC1CLFElzwfHkG5AIY 6UNuH3GKKpmvDOpSXHwPBB7s1R5/N89VEuHBfxVzGAox52IJidc72AM80vpPAN/SNcQ0FExwOMBA Q57zbDlAt+VOJK4Kpu7DeYGTHsM7ZT4ab5vMPFtJbbcWMBcaqm1x5UJG3nfVQ/xy8auMezePodZP wKXFc75hzoOiUEi1wDSEZM9yUuUnGd2NVIJaZbAmZC1MuyMLZFTifojhkeBGKCqnsm83xqGWnGz4 Ai8HHJADsT3pFFRRBe/91mcD5cpqj/Slwf7Rc8P84bVCk/UrKoJjjRCpHbEqi8ikaSRqZYVPLrQ3 HJd3JHSZYd5ibDP7OkquIPmDNLyrolr50Y9A/vS5gEZyamYvWLZ6BPVwo2eI4VEWjxZaY/Dkzh5z EnD7NXjN3aWgiDyL3Ovqs0hMrNvQlSiPELrAuY7qx51FpTt40laexpk6SuZ53By/qVK2EcjKetFb vP+kIjCcIy8I5HJ99tPh/5y7Z4cX36vvAWTiLJkoCrCWBMcQrHqapPMIHGLwykBOir0qQixOSbNF kUEVUAwQinDbmiQJxMKXcqqZVSLoZ7n++sMPuv9z3TAOc9f9TA2AG/r/cNTv/3ae7bX3f19ikPxP j0//duiK+RUcxHT6u2vBBvk/29mv3//u7Xyz08r/Swy05s068Og7W7pwLW5ow/iT5xZdkPIytnho 3FsefXh/dnzy5uO5+/fDj8eHpxfnlRtKfelRjQ5lowqkKyF4KcrUxdS9CmMvW3Q+/nDyBrzaTwwD cFx0QIv2qczTTxeOmFrKuZ7ii3e4WzubK9+KDi2bO7Gu7Dl+MqN2HOsdj6lxCHKshbrecynwc91u AY3FKNxfBqTYFvG1uBK3SjDfV+RWYFxd0Mq5yAHCaqh7w8bF6NIaDIweHGvcADrz8iy8Hy3ztqub f3BRyBpnaRhxec0x88JYB8tEmItPLHpHbE5SvM5zJV9JYeT2nqgWEowSnPw+p84VjYxuyCZlmISb wDg7CmPuCKAytbsUFuMD6o9SobIqswIt7jWPaaXBE+HQ3o0VdAifzmX9Qk38mlnER1b5PrVkFB87 tAlbzTIZaMFy/SSMRB/I6s/j8L4mDNyC+QQT8dAPc5AOinYgpnegWFJOkos9plWzJi5IiUPvCrRz dGlbGJJKcgu6uz1mW8Ve4XHJ2ZVXI7YFc70ZYMV7V+KcfgAs6I6bVLHA1cBu5GOV4+XC2+w0ySEY LXU9XWDQeOUFJFR5+VjGnyKBjM7CK9Mo4kEFTaFvaHrMxyy55Vnkpeqw4x1nEGbcz5NswYjd/v19 P0lzSTS/97AsUhYxtgHExUvoUUWryy2k2KuS+ByC9mB0kc0ru1OnqLBbzvJ5ArUqX787cs/efHxb vOwZWj+6NNVsMPCTjA+A8NuQ34GkiivejM9gz9SGhzMbp+kOPLItvUYQeYG4AgAMSODlQLcXXze/ Bssd52BpgWG5P12GKaYPig6hZSCNBCiKRS6WAUxbtvS6ZkTL91qJt7e32RF4cfAypCzaEqFjwvex E/M7tC3FjZeDzkCaXnM9NPZeHIysZaUq1VM2+uN/X4Gxesm+gjNrogm48MGsIQVS4+rQ3WbCMu/O 9X3T4GllHkx5FCUugFA7Ex5ImqPeb5hXzjGsX0H0pVy6Ypnq3Lm0VqGtup+6GVzHQj1vBTM0jZfl DmuG00IT2ycLv0y/Sc1DTK+yrhbtzCKrq22mqztYtrasdUZXq16SabNLtrZZ2I22t9zs5zNCq+IH vHzYZrfhDKKtu9FBm2//EUbtZH62/t/nz56t6v/d2Tl4vtT/u9P2/36Rsf3nwVxkAzTWPL5lKYVr ex2dFmqtYH2mEyD8+R+jpO4ndG3HH51O5wcBmVjhpB1snIgiGb5ccYhmsMsdggDMBEqs+OnVY7JM 9VgsRFOXsJ5VdPtKmGrfL9YhvZzykZnqFMY4Sb/mWK2Vj4vQRr/79GL9z/zIzevf9+ma5/Ir9VPL xg5d6s1FdmBy+oHCB2HXa75U6wWXSm0TjoQ6w88yhduSV1PYp4JQ2KZNkBkkVqDosc8d1TGEHT2N eGxVnXW8IHAlDtvq9+OkD+4wzxd9Ektf9qPU4znlZkQ+siS0K4W4BtrzZaAEERwIf+JFoh4FKqTU hVML0IsBXjsdWT9OOd5qsjxBTkt1lXRIZUJua1KKRPgIAtQsiXSqQnFqNsfsQmgQzGSmcRLIYLqR P+mij0XU/ukajixknTXezAYgYC0X3iKbVrKhOKpqS7q+K0v6Gf/nHNInwTj9/GcS8igouYH3ymqV nmxNYhT+Azz+7ndp62XE2JcM+BfPEoMLcvNEAb4ztr92180ir21xB/uyqC3rlD5Vxdcr218JAjZg mbctKR04WQ9Co2Rjm13jhScglXedoEaKVwkcoeKcqkcpXbJgrx4cL4dOl4uNYxKxbnMIwNRgiUv+ OuucvisUebYY1tgDgDj7cnesQn6fp9jQFvB7umCqX7B+lHGdunw6lDiU1AtJh5MCO96PQTxevY38 QXjXvPqgz85T7oeTBfNYliRgS8OIw1PugYLQZ7y9Bg6C6dF3WOVsvF4ib6DuhWbeguGPxeBPDLjU VCmBrrEqHGew7NiQAw7lzotuKldZIFEfInRQAo9dhdcswj6/8gJrGU+QgBYDspl3g3POj0/fnbyp JoxsDlpKpx27ExSeVwYiXJWQAfHg2woz48m5WL2TxwyC/RvZkF1fwGAM7QJWQ75pV/eqxrpjJuZp moBo73SjB5xAxS40diSFmfpRSxTecPJrA0KeiOmgvLLETEbr0964XKes7yFEvWZH/dU+JfKyQccB vgd25b5VVy4kddSXQl0HSsOjeZa+BS2pSBeToRXtRllJ2KQ4JSVxxUswT6BMaB7MW1iqJGoqVdJV fa8uyPFN0/04DmreWEJaXBXT1MruK7yx7Ep3pFWAVCEs51MSyvWrLeLokj+9cE7D6IVyxXpSjzZZ ATWsBA7VOJ46NBNRVPasLAbFN85r7oMjQwHzeo+OJJw758k88/kJMY69qv8K4XWCaggOCP56AP/r r7+yn+lfFCIewCmgEfUfHHzI2CcItgEUtfLnX3FCDaY24xhtRnwjC36qCTeURwqjK56tnf0aQjil jinPplg+xFZUWPbn+o4mHroLaaGSOdkQOj/zsFqMrPJonoeRc5L4dKgPhR+Gh1luc+eKX4cQ4eGP OLiDpTP42MBCQOyeIaIjEMUbkE6W5na9pepIHnTk8xUVxmV8WtdkeTrOfrr4/sPpsh4TuUDYey7Q pNvdHlnrEQTRjvRD5rLKL+5WdFuiSK4+Gcf99XyWssPz1yf1n/qVID8Wxgr3IBt72OnxyQtJVUV+ KlbEww6ROahozn3gTSySiH+gEr2tnGblZ8EASDy8yLjq+T8jNPS92yuQllMUDv2j2/KXy5IGakco fwxZa77orFiZfuf8m1bWthMcAL9TGQY2mnBZ+ZZ6uZLL6CDQiQpsYgV9uOMW+K6Y84BanWeY4Bx/ LL2h/r+9GD8gLwIRUH9b99FQD001SJhy/8YIEz7E0QK8qjz49Boi7FcrvU1Z0oKHRZ7mqNYQaxpi KW9syOS36sXsPxeN2d3TFFrpvh7FI9nTI7+YYeYOhJjAS31hSNx0KQt2XcVQw6KTZ8cjKqNGokba 8CoBNRsuz6n1RAzZ28OLw5OhuqYsEF3ujMEsrbMA+Izfh7m9221rgX+IEfDbPEkiVdDv34uplzli +ruusb7+h+W/b+r9Hwf7z9v635cYtfrflSemnW3susA8Bu0EfVPpIDqbFQrDvtXJC/3W6WWnI3jO +gm4pnkMH/XXNEwhkgsj/R3MDxqcTkclM/8GW8T9acK2MGsesq/+ulU8uQ5zuqILc3j+v+ffH350 3x1fuEcf3r8/vqCyFsFZJmVDygux8oPbEZYCQ/BJCJEoVcBZn1zYRCNZiStIYm51ful0tpCy/2/p taMd7WhHO9rRjna0ox3taEc72tGOdrSjHe1oRzva0Y52tKMd7WhHO9rRjna0ox3taEc72tGOP+L4 P9tliSEAeAAA XSHAR_DATA } change_dir extract_data devtools/hello-xshar.sh "$@"