#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=446477940da4a173b71d186d8a3778c10dee4924

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
H4sIAG94uWcAA+08/XPbtpL9WX8Fnt0MyVSibMeJO3pVcq7zUd8ljid2X6/j53JoErIYUySPoGzr
vWn/9ttdACRBUZJzTfJu7oiZWBK4WOwXFotdMAv/RgyL3E/EJM1nbrb45vO3HWjP9vfxc/fg6S79
3tvZoU/o2t97+uSb3f2Dp8/2DvZ39uD57u6TJ0+/YTtfgJalNheFnzP2Nab639i2trZ6dfWzASvm
ecKm6Sy95glP54IlUfy964swZjnPci54UkRpwqKkSNmUFzzXkL0FWFMD0kfYHk4zydMZ87zJHCbg
nseiWZbmBctyQAS9SUCQCizkt1fzKA5dQO0iAR6hVWOSWz+e87769KpvRdtwpMoYbr9Lw3kMo06B
9Nyf9dksDWHMpPziFf0ee0i7KRYZIKIPGMREMVN/8dcNv8/yB+M6TmDIeXrDkz47i64THwXVZyf+
jJ8DekfJZrYIssydLeLoSjMUp9d9VvjX4i4qgqmCA5Ki5FqDBL4A7G8jUfR6HhvjkF6vB6yyd7AE
fuRni9lVGtsoR2dE9G4jBj5itpatwwbPgbWcnkYTkrkLs9oO+8u41IUrMY1KnnM/EpwdCsFz1PCr
PE9z23p1n/Gg4CGT4H12nRbskbDYI8Lk0PCckzEi7YoKV4MTkCsMHpC7zRwg1IXuudzADAI/mBUE
fjAjEliyERV8plk516sR0OabuVEm1iOQn089fMgkA9QFFjGtTEPiY75AUnjFGAgAO+ySb7BFZ2SY
rUJcZ4EMVs3pGMBxGgAs2bJtZX4xtfrMCqbz5Aa+7PTZEwf5OX//8r0xTIkJ8NIUbtRHTE6vBOJx
neqVKnGassT18wBZylX8P5TlamFKm90sT23bpUiNAVJeI3YsWDHlOWd/S6OQ+HjB2PnULyx6wAT4
C6TqJE04OGl2uiimafKigQvFM7GJbQQcMdd1zfn0ohBsPGbWj2kaW6MlR6Y0RpJzEcaA4LGJBBS7
CQeAmJQ2cbyOU7+JZXsJDUGtpeWsyDfRcqZ8XYWiaX00pM0C5USG5S6ZBXqAzUYh/US7SUyiXBQA
v+TCpUe52Ll0mipVQ0AAiHiTBMijLq8ihX730nGWZVzN8DIKNs6AMGtneMjmuXL83jKFD1Yh8fEZ
fM+pDyGGneFfL2n6H3MzkstR7fcEiIETfl74+fUtu0BwdI+Xl+VTvYHF4Gr1JLiF7W3YthRnCXqL
hgUpNKX5AK3ozQ0ha5jdS2OH08TbiLePI9vlISQC8SCJUJfGfGnIxcbAkU3YhWL24p7Ewy4W6vMf
S0K7ZOPnrHIztqLc/o7ds4UyFyWcX9DhA/H+PC4YaEAwPwkhYuWT6J49Vi4/n0M8POMUYY5GRzyO
H7M3vMAv9o/RNTiRx0xKw4QUQYq7DbubRsHUo1/gmZjs5qPR2TTNCuevchJ7xsGLhxpxxS/pz34s
J3IudbeBtH1ec6KabOzHyyzpVWQHPsxOMTvbmkZbhriO/MQq2FygQdEOdcUDH3/aas6xmtNhd+k8
DuE5AzMQHL+BaUiTtxsS6D2cp3GTJ6lFzsIUKZv6t7AzJgvUYMBDngQc8MRcuIZNwcEF9T1mF5eV
XbbYIFDMMtxhtSlXK06tjnJhkR/NKle0DeG3bZ2eYKDY19DVY0mB62cZT0J7hScx1p0c0Vxq5Sli
c+xTgkqZiei6SX4V5SlvQzDka55s8DWG17TKqZiYkhmQXp4wctkjtEAlUc2dpWygdbsjKkpXVe4/
QJU1fm5tit2XaMF0QCEjPRiuJtYKNgUiZ0YHWNdEJfOVHq/f8KUSEe1VDQW+Bu9GLu5BflIdXl0c
pSRGQ1tcvHxQeu90Xnh4aBVtVi9Ps5elYdT3gopbhXFPYSS/PDZIsktq+oimX82qJKgpUKiejKp1
BhqFhUYAlUqJsKZS6lu2NlSCczAm2XnADr51VvhgihxcnDQK9B3gqvgsKxZbNfTt9kiTkUHW6aii
olu/GXhmvhCNSLECF7xYHgFnAYz04Wwfc4oqWaAc6lJcfA8E7u81un+cF+oQ4cO/mjuMhJhzsYTE
7+/vAR7p/SeAz1kiJxJMcFjAQENR8Hw5QLclJxJXDZPzcFngoE+RnXIf5gg8MNdNmM7ZSmu7jYC5
tFDti/GH+4HQ2ojIaYb41eRXOfdvPoXaIIUtLZnzDWMeFIXCUQtcQ0T+rCBTfpRjSqIe1CqHNSFv
YfodmSCzcfU+xPFIcCMUlUPZDxvjUEsONvYCvwAccAZie3JTUEmVEDhYfxqoZlY80o8W/0f9hvsD
/lu9X5kRvNQIkdoxq4uIXJpGomZW+OREeyPlPtGXhejK8HElmW1mX8fpFRz+4BjuqKhWfg1i0D99
L6GRnIbbC5e9HkE93OkZavgkj0cTrXF4krNPWQnIfgNeS3cpKKKdRfK6ei2SEJs+dCXKI4Quca6j
+tPWorIdXGkrV+NMLSVzPW6O31Qq2whkZb7oNZicTALDOvLDUE43YL8e/seZd3p4/pP6HcJJnKUT
RQHmkmAZglfP0mwew4YYvjCQk2GvihDLVdLuUWRQBRQDhCLctiZpCrHwhRxqnioRtPevLpX8n2xY
Gxl6XpREhed9mfLfhvoftWb9b2d/r6v/fY1G+r/miYc1pS+j/k3633+2f9DQ/87B/pNO/1+joTev
1K+rv6vquLLme/Tdd3+yoLtckV1didXV1U8pyHr1kqxO2hjF2Yei05VcKnXJWhsv67pOrSCrOaG6
7MpCbVk86ssC7IpCbbNE+4YnlCgAyD6bNOOAklOayv0lh5g5Lys7ZTVLZnHhL3U0almYqF1dFlRC
bakKTtw7nM62QOdWa7lDj8X05IqxKku6fnxLtURyRMWSqlzRV7w67XMhyA+W+bAmXvccBdw+9HmD
wgcFf7UMOEyjMngtSqysdI0WNaGZqyyhZxCoys6ZiweS2qx0wkWTbTMedUVhg/GoQzN+tJkPHYXX
2I9cOC32o/CSDnU5mZC1q4COgDTIjZxPVUVNImWGx0aDWRKKXvXrZUInIVG0yQNMdbU0pANSWYSG
PAgnSaOWaejL2ZZyLhTeR0nIGzXTyiB0AL1s8Crr4fLV9v7Xv1PmVcvstfLodDhtEVo91bdWdNuM
st8an8yBI1Jtt3VTp34RXbuSE0/et2mxfJsOVBUWeo5Hn75M0vNkPuM5qL1CKROyjqGhCDPHOysc
Vb8uSHM5m/Q47J9/r9LWZf5Szqxtr3b+bzFJE+Hvpi6OsszGQ1GLGqqddJ0GXt3yfEHnKoCFEyke
gAUDZRTTSJhTb0dJEM9DzrZoQxuqyos73TJZVGe+SB7XXHWMrN2LKDGigkTmBxzURoICzUnwmu40
WsqWqKdm0gQbLIwQVkxodDYWY9iyFmsapzVZRhtkvs4yILZQr03T1JEGp3VAfdWEpNRlYfzO2HDI
6iJpEcgXi/8o/j85Pvn3Q0/Mr8AYsulnPwZsiP+f7h08a8T/ezvPdrv4/2s0jOPbbeCTQ3wK78sb
mlHy0ffKUFiG/mWncW/x6P270+O3rz6ceX87/HB8eHJ+Vgt/9S5Xzw5Lb8WTIOJCrnUx9a6ixM8X
vQ8/v3115p3+yjABj5MOadIBlXkH2cIVU0u50RN88Aa5tfO5WvGY0MrnbqIr+26QzsgnW7CUafcI
2dVCxVkeJX49zymh8UiD/OVAim2RXMujlFWBBYEitwbj6YJ2wWFXDgKr5YACjIvxhTUcGo7YumwB
nflFHt2Pl2Xr6B0AJ2XAXhbFXMZ0Mz9KdLKcCPOwx6rimzTD63yelCsZjGTvkbpCjllCt7gvyH1p
ZOR8J5VDRSYwzx5HCYe9MI8y2yFHjx20SapUubpmAbR4cGakmYaPhEu8GzPoFH42l/VLNfA7ZpEc
We331JJZfDG9A8V7eDORJgB1DGWflG2N88Qlfm01gSlrCygbpFEsBsDBYJ5E9w29IbdmD9bsoiAq
xhc1IvpMG25Dmbd+HvlXYLvjC9vChLVkpuTK6TPbKiUB3ZXcV55wbas2Mwyp/Vo3CCb0Z0AKRkGk
DN0BUnUu26y7xNWiQVRNXYnVxNsQqBQQyVTLJ1tgHvrKD8lO5H3GKqUtUhbh3UcsDvKwhqY0YfRm
ZjdLIf6J/Uz5D7w2GUY5D4oUoiKyhuD+fpBmhSSa3/tYaa3qotsAQgIb1xZKxUKGaZM04HD+CMfn
+bzGnVqYpSt0l5coWGr1+M2Rd/rqw+vyYd9YSOML0xyHwyDN+RAIv434HWiqPCbkfAY8U3iHI1uH
6ciO3FW/FUTeSVwBAD4p9Aug20+u2x/DZpAU4LxBYBCZLcOUw4flSwfLQBoJUJSIQqwBEIuk8O8V
mlZZ9FnFUZtcTE+7NFPDxVfP9XrY3t5mRxBjwB5Idqf9JG6b+DxxE36Hnq+8j+fiViU3BnM+3Ir8
JBxby/ZZWbrMReG/b8GVPmffgs8w0YRcBOB0kQJpvE1op52w3L/zgsB0x3pdDKc8jlMPQCi1h2ub
xqjnG8ZVYwyHWxJ9IaeuecamdC6sVWjrm2PleTeLUI9bIQxN40XFYcNxW+hTB7T/LNNvUvMQ16+8
u0WcWeT1tfvVbtza2rLW+W9temmuPbh0W87lKo23+vKK4y/n1FaFOHgC3ma30QwCwrvxflcS/NOt
Yftf7P2/g6dPV53/Dg52mue/3Sc73ft/X6Vt/2U4F/kQ3SFPbllGsdVeTx8LtVWwAdMHICz/MDrU
/Yqbx/EHt9f7WcBJrNwGXbw4Hccy1rjisN1iqgM2ZDwJVFjx24tPOWWqbrEQbUUlPaqsLUmYepUJ
7yH4BZ1HZupNQQxq9GOOWWLZXcYh+tnH79fXemgj1UUefedh+ZEqtbUWfujdPBQHHk7f0wYt7GZ2
jxJ5sGnRtWlXQp3id3mE25IJY7ynjlCYXSXIHA5WYOhJwF31xgBWTlrx2Op2huuHoSdx2NZgkKQD
2HCKYjEgtQzkffRm8KV8uCjGloT2pBLXQPuBDEUgRgLlT/xYNOMshZRu4Tei6bLBvpiNrV+mHG81
siJFSUtzlXRIY0Jpa1LKg/ARBIt5GutzBQWV+RyPAkKD4LFjmqShjBNb5ZMtBniJYnCyRiILec8i
2SwGIGCtFF6jmFaKoVyqiiV9v0Ne6cn5f83hrCMYpxzwJOJxWEkD75WqWfry1QRGsTrAY913ifUq
JhtIAfyD56khBck8UYDPDPbXct2u8gaLO/heBr2WcULf6urrV6+/EQQwYJm3rTJacDIfhE7Jxtds
Wi88AlJ51xHMSMkqhSVUrlPVldElK3xXB5aXS6vLwxdHJGJ9zTkEV4MpLpmiP6PfCkWRL0YN8QAg
jr7YvVRBdcAzfKEl5PdU2GpesPwggyZ1+exQ4lBaLzUdTUrseD8OIt76bcSfhX/N6x0DdpbxIJos
mM/yNAVfGsUcerkPBkLf8fYqSBBcj77DVo3G62W0G6gawcxfMKwYwEcCuNRQqQHHmBWWM3h2vJAP
G8qdH9/UrrKBRgOIgcEIfHYVXbMY3/OpLrAt4wlTsGJANvNvcMzZ8cmbt6/qRzI2Byul1Y63kxWe
FwYinJWQAfGwt5VuxpdjMXsnlxlE0jfyhczmBIZgiAuYDeWmt7oXDdEdMzHPshRUe6cvesMKVOJC
Z0damKmX2uPohtO+NiTkqZgOq7KDyniRPe1dVvNU+T1KAzVydvR+ZUCHanlB3wW5h3atnKGP1pI6
updOt46VhcfzPHsNVlLTLp40VrxukFeETcpVUhFXPgT3BMaE7sGs11AmUVOpTjT15+qCLD5pux+L
jS5vLyEtr4rS0Br3NdlYdu3tKKsEqUNY7sc0kvPXXxHFLfnj9+5JFH+vtmI9qE9M1kANL4FNvTia
uTQSUdR4Vh6D4hv3JQ9gI0MFN6S2rV7r4u5ZOs8D/pYEx14030J+maIZwgYEnz7A//HHH+w3+otK
xAU4BTSi+cLx+5x9hGAbQNEqf/sDBzRgGiOO0WckNzI7p17Ci+SSwuiK52tHv4QQTpljxvMp5vrw
VTSY9rcmRxMftwvpodI5+RBaP/Oonjmsy2heRLH7Ng1oUR+KIIoO88Lm7hW/jiDCw5e4uYt5Lvja
IkJA7J0ioiNQxSvQTp4VdrO8fyQXOsr5ihLjMj5tWrJcHae/nv/0/mTZjolcIOwdF+jSbadP3noM
QbQr9yFzWrUv7tZsW6JIrz4ay/3lfJaxw7OXb5v/1UcF8kvprJAHebGfnRy//V5SVdMfhOPuTycg
i1MK1kg08jVe2XGec25TzOP09fZZ2ydUj66oVmVpKQG6Zlz9JyeNS9W99VRQLXsdFUsuEPw4v1MH
BbwvzmW2WZrXSmGhn8e9UOC7aKDWO27BFpRwHtIbizM8pxx/qDY1fWnPuAxQxhNgxba+Dk9Xqep7
/ZQHN8Zu/z6JF7A5yvVLjyFQfrFy06jSPtBZHrdcdcPbmkaY87rcJNjZn9SteemnLfLR1+4V7/LK
vfxhRoE7EAGCjHQ9j6Tk0SHV85SgDIdLGy+uIBnUETXSxdYJaLhYuYysR2LEXh+eH74dqSpiiehi
5xK8xroFin38PirsXedz5cHgBF2kaaxSpoN7MfVzV0w/X4Lhm435n5395fr//t5Bl//5Gq2R/7ny
xbS3jVV3jGPREOmXOg6gl1phMOwHHbzSVZbnvZ7gBRuk4NPmCXzVP7Mog508ivVvsG+06F5PBbP/
BGPnwTRlW3hqGrFv/22r7LmOCiqCRAX0/+fZT4cfvDfH597R+3fvjs8prUFwlknZiM4FePJHdoSl
wBB8EkEkQhlQNiDfN9FIVuIK04Rbvd97vS2k7F+tva51rWtd61rXuta1rnWta13rWte61rWuda1r
Xeta17rWta51rWtd61rXuta1rnWta13rWte61rWu/X9r/w3Zxk7CAHgAAA==
XSHAR_DATA
}

change_dir
extract_data
devtools/hello-xshar.sh "$@"