Mercurial > repos > tduigou > cloning_simulation
changeset 14:16ccb36aa8e3 draft
planemo upload for repository https://github.com/Edinburgh-Genome-Foundry/DnaCauldron/tree/master commit 6ae809b563b40bcdb6be2e74fe2a84ddad5484ae
author | tduigou |
---|---|
date | Mon, 26 May 2025 11:29:13 +0000 |
parents | 7d1778f5e164 |
children | 074a76e84b80 |
files | cloning_similation.xml cloning_simulation.py output.html output.json |
diffstat | 4 files changed, 376 insertions(+), 370 deletions(-) [+] |
line wrap: on
line diff
--- a/cloning_similation.xml Mon May 26 10:10:46 2025 +0000 +++ b/cloning_similation.xml Mon May 26 11:29:13 2025 +0000 @@ -40,7 +40,7 @@ --output_simulation 'output_zip.zip' --enzyme '$adv.enzyme' --topology '$topology' && - cp 'output_zip.zip' '$output_zip' && echo DEBUG && ls 'outdir_gb' + cp 'output_zip.zip' '$output_zip' ]]></command> <inputs> <param name="genbank_files" type="data_collection" collection_type="list" format="genbank,fasta" label="GenBank and/or Fasta File(s)" optional="True"/>
--- a/cloning_simulation.py Mon May 26 10:10:46 2025 +0000 +++ b/cloning_simulation.py Mon May 26 11:29:13 2025 +0000 @@ -81,7 +81,6 @@ new_csvname = "assambly.csv" os.rename(csv_file, new_csvname) - print (df) assembly_plan = dnacauldron.AssemblyPlan.from_spreadsheet( name="auto_from_filename",
--- a/output.html Mon May 26 10:10:46 2025 +0000 +++ b/output.html Mon May 26 11:29:13 2025 +0000 @@ -285,7 +285,7 @@ var md = window.markdownit({ html: true, }); - target.innerHTML = md.render(atob('IyMgVGVzdCBTdW1tYXJ5Cgo8ZGl2IGNsYXNzPSJwcm9ncmVzcyI+CiAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtYmFyIHByb2dyZXNzLWJhci1zdWNjZXNzIiBzdHlsZT0id2lkdGg6IDg1LjcxNDI4NTcxNDI4NTcxJSIgYXJpYS12YWx1ZW5vdz0iNiIgYXJpYS12YWx1ZW1pbj0iMCIgYXJpYS12YWx1ZW1heD0iNyIgZGF0YS10b2dnbGU9InRvb2x0aXAiIHRpdGxlPSI2IFBhc3NlZCI+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtYmFyIHByb2dyZXNzLWJhci13YXJuaW5nIiBzdHlsZT0id2lkdGg6IDAuMCUiIGFyaWEtdmFsdWVub3c9IjAiIGFyaWEtdmFsdWVtaW49IjAiIGFyaWEtdmFsdWVtYXg9IjciIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiB0aXRsZT0iMCBTa2lwcGVkIj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy1iYXIgcHJvZ3Jlc3MtYmFyLWRhbmdlciIgc3R5bGU9IndpZHRoOiAxNC4yODU3MTQyODU3MTQyODUlIiBhcmlhLXZhbHVlbm93PSIxIiBhcmlhLXZhbHVlbWluPSIwIiBhcmlhLXZhbHVlbWF4PSI3IiB0aXRsZT0iMSBGYWlsZWQgb3IgRXJyb3JlZCI+CiAgPC9kaXY+CjwvZGl2PgoKfCBUZXN0IFN0YXRlIHwgQ291bnQgfAp8IC0tLS0tLS0tLS0gfCAtLS0tLSB8CnwgVG90YWwgICAgICB8IDcgfAp8IFBhc3NlZCAgICAgfCA2IHwKfCBFcnJvciAgICAgIHwgMCB8CnwgRmFpbHVyZSAgICB8IDEgfAp8IFNraXBwZWQgICAgfCAwIHwKCgo8ZGV0YWlscyBvcGVuPjxzdW1tYXJ5PkZhaWxlZCBUZXN0czwvc3VtbWFyeT4KCiogPGRldGFpbHMgY2xhc3M9InJjb3JuZXJzIGxpZ2h0LXJlZCI+PHN1bW1hcnkgY2xhc3M9ImxpZ2h0LXJlZCI+JiMxMDA2MDsgY2xvbmluZ19zaW11bGF0aW9uIChUZXN0ICMgMSk8L3N1bW1hcnk+PGRpdiBjbGFzcz0icGFkZGVkIj4KCiAgICAqKlByb2JsZW1zKio6CiAgICAqIGBgYAogICAgICBKb2IgaW4gZXJyb3Igc3RhdGUuLiB0b29sX2lkOiBjbG9uaW5nX3NpbXVsYXRpb24sIGV4aXRfY29kZTogMSwgc3RkZXJyOiAKICAgICAgYXNzZW1ibHk6ICAgMCV8ICAgICAgICAgIHwgMC81IFswMDowMDw/LCA/aXQvcywgbm93PU5vbmVdVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgogICAgICAgIEZpbGUgIi9ob21lL3JraGFsZWQvZ2FsYXh5dG9vbHMvdG9vbHMvY2xvbmluZ19zaW11bGF0aW9uL2Nsb25pbmdfc2ltdWxhdGlvbi5weSIsIGxpbmUgMTcxLCBpbiA8bW9kdWxlPgogICAgICAgICAgY2xvbmluZ19zaW11bGF0aW9uKAogICAgICAgICAgfn5+fn5+fn5+fn5+fn5+fn5+XgogICAgICAgICAgICAgIGFyZ3MucGFydHNfZmlsZXMsIGFyZ3MuZG9tZXN0aWNhdGVkX3NlcSwKICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCiAgICAgICAgICAuLi48MyBsaW5lcz4uLi4KICAgICAgICAgICAgICBhcmdzLm91dHB1dF9zaW11bGF0aW9uLCBhcmdzLmVuenltZSwgYXJncy5vdXRkaXJfZ2IKICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl4KICAgICAgICAgICkKICAgICAgICAgIF4KICAgICAgICBGaWxlICIvaG9tZS9ya2hhbGVkL2dhbGF4eXRvb2xzL3Rvb2xzL2Nsb25pbmdfc2ltdWxhdGlvbi9jbG9uaW5nX3NpbXVsYXRpb24ucHkiLCBsaW5lIDk3LCBpbiBjbG9uaW5nX3NpbXVsYXRpb24KICAgICAgICAgIHNpbXVsYXRpb24gPSBhc3NlbWJseV9wbGFuLnNpbXVsYXRlKHNlcXVlbmNlX3JlcG9zaXRvcnk9cmVwb3NpdG9yeSkKICAgICAgICBGaWxlICIvaG9tZS9ya2hhbGVkL21pbmljb25kYTMvZW52cy9tdWxsZWQtdjEtNmMyYjllYmI0NzVhMzdiZDBkOWNhNzg1NzQ3NGU4NTc0NzE5ZTU0NmRlODgyODEwZjc4MjhmZTU5OTNhOGFkZi9saWIvcHl0aG9uMy4xMy9zaXRlLXBhY2thZ2VzL2RuYWNhdWxkcm9uL0Fzc2VtYmx5UGxhbi9Bc3NlbWJseVBsYW4ucHkiLCBsaW5lIDI1MSwgaW4gc2ltdWxhdGUKICAgICAgICAgIHNpbXVsYXRpb25fcmVzdWx0ID0gYXNzZW1ibHkuc2ltdWxhdGUoc2VxdWVuY2VfcmVwb3NpdG9yeSkKICAgICAgICBGaWxlICIvaG9tZS9ya2hhbGVkL21pbmljb25kYTMvZW52cy9tdWxsZWQtdjEtNmMyYjllYmI0NzVhMzdiZDBkOWNhNzg1NzQ3NGU4NTc0NzE5ZTU0NmRlODgyODEwZjc4MjhmZTU5OTNhOGFkZi9saWIvcHl0aG9uMy4xMy9zaXRlLXBhY2thZ2VzL2RuYWNhdWxkcm9uL0Fzc2VtYmx5L2J1aWx0aW5fYXNzZW1ibHlfY2xhc3Nlcy9UeXBlMnNSZXN0cmljdGlvbkFzc2VtYmx5LnB5IiwgbGluZSAxODEsIGluIHNpbXVsYXRlCiAgICAgICAgICByZWNvcmRzID0gc2VxdWVuY2VfcmVwb3NpdG9yeS5nZXRfcmVjb3JkcyhzZWxmLnBhcnRzKQogICAgICAgIEZpbGUgIi9ob21lL3JraGFsZWQvbWluaWNvbmRhMy9lbnZzL211bGxlZC12MS02YzJiOWViYjQ3NWEzN2JkMGQ5Y2E3ODU3NDc0ZTg1NzQ3MTllNTQ2ZGU4ODI4MTBmNzgyOGZlNTk5M2E4YWRmL2xpYi9weXRob24zLjEzL3NpdGUtcGFja2FnZXMvZG5hY2F1bGRyb24vU2VxdWVuY2VSZXBvc2l0b3J5LnB5IiwgbGluZSAxMjAsIGluIGdldF9yZWNvcmRzCiAgICAgICAgICByYWlzZSBOb3RJblJlcG9zaXRvcnlFcnJvcihub3RfaW5fcmVwb3NpdG9yeSwgcmVwb3NpdG9yeT1zZWxmKQogICAgICBkbmFjYXVsZHJvbi5TZXF1ZW5jZVJlcG9zaXRvcnkuTm90SW5SZXBvc2l0b3J5RXJyb3I6IFBhcnRzIG5vdCBmb3VuZCBpbiByZXBvOiBwYXJ0MSwgcGFydDIsIHBhcnQzLCBwYXJ0NCwgcGFydDUsIHBhcnQ2CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgLgogICAgICBgYGAKICAgICogYGBgCiAgICAgIEpvYiBpbiBlcnJvciBzdGF0ZS4uIHRvb2xfaWQ6IGNsb25pbmdfc2ltdWxhdGlvbiwgZXhpdF9jb2RlOiAxLCBzdGRlcnI6IAogICAgICBhc3NlbWJseTogICAwJXwgICAgICAgICAgfCAwLzUgWzAwOjAwPD8sID9pdC9zLCBub3c9Tm9uZV1UcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CiAgICAgICAgRmlsZSAiL2hvbWUvcmtoYWxlZC9nYWxheHl0b29scy90b29scy9jbG9uaW5nX3NpbXVsYXRpb24vY2xvbmluZ19zaW11bGF0aW9uLnB5IiwgbGluZSAxNzEsIGluIDxtb2R1bGU+CiAgICAgICAgICBjbG9uaW5nX3NpbXVsYXRpb24oCiAgICAgICAgICB+fn5+fn5+fn5+fn5+fn5+fn5eCiAgICAgICAgICAgICAgYXJncy5wYXJ0c19maWxlcywgYXJncy5kb21lc3RpY2F0ZWRfc2VxLAogICAgICAgICAgICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl4KICAgICAgICAgIC4uLjwzIGxpbmVzPi4uLgogICAgICAgICAgICAgIGFyZ3Mub3V0cHV0X3NpbXVsYXRpb24sIGFyZ3MuZW56eW1lLCBhcmdzLm91dGRpcl9nYgogICAgICAgICAgICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgogICAgICAgICAgKQogICAgICAgICAgXgogICAgICAgIEZpbGUgIi9ob21lL3JraGFsZWQvZ2FsYXh5dG9vbHMvdG9vbHMvY2xvbmluZ19zaW11bGF0aW9uL2Nsb25pbmdfc2ltdWxhdGlvbi5weSIsIGxpbmUgOTcsIGluIGNsb25pbmdfc2ltdWxhdGlvbgogICAgICAgICAgc2ltdWxhdGlvbiA9IGFzc2VtYmx5X3BsYW4uc2ltdWxhdGUoc2VxdWVuY2VfcmVwb3NpdG9yeT1yZXBvc2l0b3J5KQogICAgICAgIEZpbGUgIi9ob21lL3JraGFsZWQvbWluaWNvbmRhMy9lbnZzL211bGxlZC12MS02YzJiOWViYjQ3NWEzN2JkMGQ5Y2E3ODU3NDc0ZTg1NzQ3MTllNTQ2ZGU4ODI4MTBmNzgyOGZlNTk5M2E4YWRmL2xpYi9weXRob24zLjEzL3NpdGUtcGFja2FnZXMvZG5hY2F1bGRyb24vQXNzZW1ibHlQbGFuL0Fzc2VtYmx5UGxhbi5weSIsIGxpbmUgMjUxLCBpbiBzaW11bGF0ZQogICAgICAgICAgc2ltdWxhdGlvbl9yZXN1bHQgPSBhc3NlbWJseS5zaW11bGF0ZShzZXF1ZW5jZV9yZXBvc2l0b3J5KQogICAgICAgIEZpbGUgIi9ob21lL3JraGFsZWQvbWluaWNvbmRhMy9lbnZzL211bGxlZC12MS02YzJiOWViYjQ3NWEzN2JkMGQ5Y2E3ODU3NDc0ZTg1NzQ3MTllNTQ2ZGU4ODI4MTBmNzgyOGZlNTk5M2E4YWRmL2xpYi9weXRob24zLjEzL3NpdGUtcGFja2FnZXMvZG5hY2F1bGRyb24vQXNzZW1ibHkvYnVpbHRpbl9hc3NlbWJseV9jbGFzc2VzL1R5cGUyc1Jlc3RyaWN0aW9uQXNzZW1ibHkucHkiLCBsaW5lIDE4MSwgaW4gc2ltdWxhdGUKICAgICAgICAgIHJlY29yZHMgPSBzZXF1ZW5jZV9yZXBvc2l0b3J5LmdldF9yZWNvcmRzKHNlbGYucGFydHMpCiAgICAgICAgRmlsZSAiL2hvbWUvcmtoYWxlZC9taW5pY29uZGEzL2VudnMvbXVsbGVkLXYxLTZjMmI5ZWJiNDc1YTM3YmQwZDljYTc4NTc0NzRlODU3NDcxOWU1NDZkZTg4MjgxMGY3ODI4ZmU1OTkzYThhZGYvbGliL3B5dGhvbjMuMTMvc2l0ZS1wYWNrYWdlcy9kbmFjYXVsZHJvbi9TZXF1ZW5jZVJlcG9zaXRvcnkucHkiLCBsaW5lIDEyMCwgaW4gZ2V0X3JlY29yZHMKICAgICAgICAgIHJhaXNlIE5vdEluUmVwb3NpdG9yeUVycm9yKG5vdF9pbl9yZXBvc2l0b3J5LCByZXBvc2l0b3J5PXNlbGYpCiAgICAgIGRuYWNhdWxkcm9uLlNlcXVlbmNlUmVwb3NpdG9yeS5Ob3RJblJlcG9zaXRvcnlFcnJvcjogUGFydHMgbm90IGZvdW5kIGluIHJlcG86IHBhcnQxLCBwYXJ0MiwgcGFydDMsIHBhcnQ0LCBwYXJ0NSwgcGFydDYKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAuCiAgICAgIGBgYAogICAgKiBgYGAKICAgICAgT3V0cHV0IGNvbGxlY3Rpb24gJ2NvbnN0cnVjdF9nYic6IGV4cGVjdGVkIHRvIGhhdmUgNCBlbGVtZW50cywgYnV0IGl0IGhhZCAwLgogICAgICBgYGAKICAgICoqQ29tbWFuZCBMaW5lOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIG1rZGlyICdvdXRkaXJfemlwJyAmJiBta2RpciAnb3V0ZGlyX2diJyAmJiBjcCAnL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8xL2EvMS9kYXRhc2V0XzFhMWVlMzJkLWVlZDctNDdmZC1iNDkxLTRmMDc5OWI0NGE4NS5kYXQnICdhc3NlbWJseV9jc3YuY3N2JyAmJiBweXRob24gJy9ob21lL3JraGFsZWQvZ2FsYXh5dG9vbHMvdG9vbHMvY2xvbmluZ19zaW11bGF0aW9uL2Nsb25pbmdfc2ltdWxhdGlvbi5weScgLS1wYXJ0c19maWxlcyAnL3RtcC90bXB5MnlzdjZ0bi9maWxlcy80LzQvMS9kYXRhc2V0XzQ0MTI5MTkxLTU1MzEtNGNjOS1iMzdiLWZlYzRlM2M2NzdkNS5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy82LzEvZi9kYXRhc2V0XzYxZjVmMTlmLTE0N2ItNDZmZC04OTAwLWE4NTMwZjMxMTgzNS5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy80LzQvMC9kYXRhc2V0XzQ0MGIzNGU3LTQ5MGUtNDliZC05YjI5LTZhZmNhYmU1ZjZmNi5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9hLzMvZi9kYXRhc2V0X2EzZmNhMjEyLWI4ZGMtNDU3OS05MDFjLTYxMmI4MDYyNDFhZi5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy81LzMvOS9kYXRhc2V0XzUzOThmMmNiLTFhMjUtNDVlNS05YmEwLWNkNzlhODhiNmU4OC5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9mLzUvMC9kYXRhc2V0X2Y1MDUyOTNhLTgyMjMtNGRhMi1hMjJjLWFhMjYxZDQ5NTVlYy5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9jLzUvMC9kYXRhc2V0X2M1MGU0YjFmLWM3MmEtNDI3Mi1iMzI0LWUxYzJjN2Q1MDI5My5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8wLzAvZC9kYXRhc2V0XzAwZDc5NTYwLWY5NDQtNGQ4ZS05OGU3LWY1MTY2ODRhNjEwMC5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8zL2QvNS9kYXRhc2V0XzNkNWJiMGZiLWQ2MTAtNDkzOS04ZmM1LTk5OTE3NGZlZTVjYS5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9jLzcvYy9kYXRhc2V0X2M3Y2Y5NmFmLWFiMWMtNDE5OS04MjFmLTViYjViOTQ3NzUyZi5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8wL2EvNS9kYXRhc2V0XzBhNTEzOWU3LTdkODMtNDhmMS1hMWM5LTQ1OGExZTcyNjg1Yy5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9mL2IvMy9kYXRhc2V0X2ZiMzYxZjIyLTAyMGMtNDk3Mi04NjYxLWYxZjU3ZDFhN2FmYS5kYXQnIC0tZG9tZXN0aWNhdGVkX3NlcSAnJyAtLWFzc2VtYmx5X2NzdiAnYXNzZW1ibHlfY3N2LmNzdicgLS1hc3NlbWJseV9wbGFuX25hbWUgJ1R5cGUyc1Jlc3RyaWN0aW9uQXNzZW1ibHknIC0tZmlsZV9uYW1lX21hcHBpbmcgJy90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvNC80LzEvZGF0YXNldF80NDEyOTE5MS01NTMxLTRjYzktYjM3Yi1mZWM0ZTNjNjc3ZDUuZGF0OnBhcnRfQS5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzYvMS9mL2RhdGFzZXRfNjFmNWYxOWYtMTQ3Yi00NmZkLTg5MDAtYTg1MzBmMzExODM1LmRhdDpwYXJ0X0IuZ2IsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy80LzQvMC9kYXRhc2V0XzQ0MGIzNGU3LTQ5MGUtNDliZC05YjI5LTZhZmNhYmU1ZjZmNi5kYXQ6cGFydF9DLmdiLC90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvYS8zL2YvZGF0YXNldF9hM2ZjYTIxMi1iOGRjLTQ1NzktOTAxYy02MTJiODA2MjQxYWYuZGF0OnBhcnRfRC5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzUvMy85L2RhdGFzZXRfNTM5OGYyY2ItMWEyNS00NWU1LTliYTAtY2Q3OWE4OGI2ZTg4LmRhdDpwYXJ0X0UuZ2IsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9mLzUvMC9kYXRhc2V0X2Y1MDUyOTNhLTgyMjMtNGRhMi1hMjJjLWFhMjYxZDQ5NTVlYy5kYXQ6cGFydF9GLmdiLC90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvYy81LzAvZGF0YXNldF9jNTBlNGIxZi1jNzJhLTQyNzItYjMyNC1lMWMyYzdkNTAyOTMuZGF0OnBhcnRfRy5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzAvMC9kL2RhdGFzZXRfMDBkNzk1NjAtZjk0NC00ZDhlLTk4ZTctZjUxNjY4NGE2MTAwLmRhdDpwYXJ0X0guZ2IsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8zL2QvNS9kYXRhc2V0XzNkNWJiMGZiLWQ2MTAtNDkzOS04ZmM1LTk5OTE3NGZlZTVjYS5kYXQ6cGFydF9JLmdiLC90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvYy83L2MvZGF0YXNldF9jN2NmOTZhZi1hYjFjLTQxOTktODIxZi01YmI1Yjk0Nzc1MmYuZGF0OnBhcnRfSi5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzAvYS81L2RhdGFzZXRfMGE1MTM5ZTctN2Q4My00OGYxLWExYzktNDU4YTFlNzI2ODVjLmRhdDpwYXJ0X0suZ2IsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9mL2IvMy9kYXRhc2V0X2ZiMzYxZjIyLTAyMGMtNDk3Mi04NjYxLWYxZjU3ZDFhN2FmYS5kYXQ6cGFydF9MLmdiJyAtLWZpbGVfbmFtZV9tYXBwaW5nX2RvbSAnJyAtLXVzZV9maWxlX25hbWVzX2FzX2lkICd0cnVlJyAtLW91dGRpcl9zaW11bGF0aW9uICdvdXRkaXJfemlwJyAtLW91dGRpcl9nYiAnb3V0ZGlyX2diJyAtLW91dHB1dF9zaW11bGF0aW9uICdvdXRwdXRfemlwLnppcCcgLS1lbnp5bWUgJ2F1dG8nIC0tdG9wb2xvZ3kgJ2NpcmN1bGFyJyAmJiBjcCAnb3V0cHV0X3ppcC56aXAnICcvdG1wL3RtcHkyeXN2NnRuL2pvYl93b3JraW5nX2RpcmVjdG9yeS8wMDAvMTQvb3V0cHV0cy9kYXRhc2V0X2FjYjA2NGQ3LTI3ODEtNDZmZS05OGRmLTcxNmZlZTAyNGM4ZC5kYXQnCiAgICAgIGBgYAogICAgKipFeGl0IENvZGU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgMQogICAgICBgYGAKICAgICoqU3RhbmRhcmQgRXJyb3I6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGFzc2VtYmx5OiAgIDAlfCAgICAgICAgICB8IDAvNSBbMDA6MDA8PywgP2l0L3MsIG5vdz1Ob25lXVRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKICAgICAgICBGaWxlICIvaG9tZS9ya2hhbGVkL2dhbGF4eXRvb2xzL3Rvb2xzL2Nsb25pbmdfc2ltdWxhdGlvbi9jbG9uaW5nX3NpbXVsYXRpb24ucHkiLCBsaW5lIDE3MSwgaW4gPG1vZHVsZT4KICAgICAgICAgIGNsb25pbmdfc2ltdWxhdGlvbigKICAgICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fl4KICAgICAgICAgICAgICBhcmdzLnBhcnRzX2ZpbGVzLCBhcmdzLmRvbWVzdGljYXRlZF9zZXEsCiAgICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgogICAgICAgICAgLi4uPDMgbGluZXM+Li4uCiAgICAgICAgICAgICAgYXJncy5vdXRwdXRfc2ltdWxhdGlvbiwgYXJncy5lbnp5bWUsIGFyZ3Mub3V0ZGlyX2diCiAgICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCiAgICAgICAgICApCiAgICAgICAgICBeCiAgICAgICAgRmlsZSAiL2hvbWUvcmtoYWxlZC9nYWxheHl0b29scy90b29scy9jbG9uaW5nX3NpbXVsYXRpb24vY2xvbmluZ19zaW11bGF0aW9uLnB5IiwgbGluZSA5NywgaW4gY2xvbmluZ19zaW11bGF0aW9uCiAgICAgICAgICBzaW11bGF0aW9uID0gYXNzZW1ibHlfcGxhbi5zaW11bGF0ZShzZXF1ZW5jZV9yZXBvc2l0b3J5PXJlcG9zaXRvcnkpCiAgICAgICAgRmlsZSAiL2hvbWUvcmtoYWxlZC9taW5pY29uZGEzL2VudnMvbXVsbGVkLXYxLTZjMmI5ZWJiNDc1YTM3YmQwZDljYTc4NTc0NzRlODU3NDcxOWU1NDZkZTg4MjgxMGY3ODI4ZmU1OTkzYThhZGYvbGliL3B5dGhvbjMuMTMvc2l0ZS1wYWNrYWdlcy9kbmFjYXVsZHJvbi9Bc3NlbWJseVBsYW4vQXNzZW1ibHlQbGFuLnB5IiwgbGluZSAyNTEsIGluIHNpbXVsYXRlCiAgICAgICAgICBzaW11bGF0aW9uX3Jlc3VsdCA9IGFzc2VtYmx5LnNpbXVsYXRlKHNlcXVlbmNlX3JlcG9zaXRvcnkpCiAgICAgICAgRmlsZSAiL2hvbWUvcmtoYWxlZC9taW5pY29uZGEzL2VudnMvbXVsbGVkLXYxLTZjMmI5ZWJiNDc1YTM3YmQwZDljYTc4NTc0NzRlODU3NDcxOWU1NDZkZTg4MjgxMGY3ODI4ZmU1OTkzYThhZGYvbGliL3B5dGhvbjMuMTMvc2l0ZS1wYWNrYWdlcy9kbmFjYXVsZHJvbi9Bc3NlbWJseS9idWlsdGluX2Fzc2VtYmx5X2NsYXNzZXMvVHlwZTJzUmVzdHJpY3Rpb25Bc3NlbWJseS5weSIsIGxpbmUgMTgxLCBpbiBzaW11bGF0ZQogICAgICAgICAgcmVjb3JkcyA9IHNlcXVlbmNlX3JlcG9zaXRvcnkuZ2V0X3JlY29yZHMoc2VsZi5wYXJ0cykKICAgICAgICBGaWxlICIvaG9tZS9ya2hhbGVkL21pbmljb25kYTMvZW52cy9tdWxsZWQtdjEtNmMyYjllYmI0NzVhMzdiZDBkOWNhNzg1NzQ3NGU4NTc0NzE5ZTU0NmRlODgyODEwZjc4MjhmZTU5OTNhOGFkZi9saWIvcHl0aG9uMy4xMy9zaXRlLXBhY2thZ2VzL2RuYWNhdWxkcm9uL1NlcXVlbmNlUmVwb3NpdG9yeS5weSIsIGxpbmUgMTIwLCBpbiBnZXRfcmVjb3JkcwogICAgICAgICAgcmFpc2UgTm90SW5SZXBvc2l0b3J5RXJyb3Iobm90X2luX3JlcG9zaXRvcnksIHJlcG9zaXRvcnk9c2VsZikKICAgICAgZG5hY2F1bGRyb24uU2VxdWVuY2VSZXBvc2l0b3J5Lk5vdEluUmVwb3NpdG9yeUVycm9yOiBQYXJ0cyBub3QgZm91bmQgaW4gcmVwbzogcGFydDEsIHBhcnQyLCBwYXJ0MywgcGFydDQsIHBhcnQ1LCBwYXJ0NgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBPdXRwdXQ6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxICAgICAgIDIgICAgICAgMyAgICAgICA0ICAgICAgIDUgICAgICAgNgogICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgIElEICAgICAgICAgICAgICAgICBwYXJ0MSAgIHBhcnQyICAgcGFydDMgICBwYXJ0NCAgIHBhcnQ1ICAgcGFydDYKICAgICAgY29uc3RydWN0XzMgIGNvbnN0cnVjdF8xICBwYXJ0X0wgIHBhcnRfSiAgcGFydF9LICAgICBOYU4gICAgIE5hTgogICAgICBjb25zdHJ1Y3RfNCAgY29uc3RydWN0XzIgIHBhcnRfTCAgcGFydF9KICBwYXJ0X0sgICAgIE5hTiAgICAgTmFOCiAgICAgIGNvbnN0cnVjdF8xICAgICAgIHBhcnRfQSAgcGFydF9CICBwYXJ0X0MgIHBhcnRfRCAgcGFydF9FICBwYXJ0X0YKICAgICAgY29uc3RydWN0XzIgICAgICAgcGFydF9BICBwYXJ0X0cgIHBhcnRfSCAgcGFydF9JICBwYXJ0X0YgICAgIE5hTgogICAgICBTaW11bGF0aW5nIGFzc2VtYmx5IHBsYW4gYXNzYW1ibHkuLi4KCiAgICAgIGBgYAogICAgKipUcmFjZWJhY2s6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGBgYAogICAqKkpvYiBQYXJhbWV0ZXJzOioqCgogICAqICAgfCBKb2IgcGFyYW1ldGVyIHwgUGFyYW1ldGVyIHZhbHVlIHwKICAgICAgIHwgLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLSB8CiAgICAgICB8IGdlbmJhbmtcX2ZpbGVzIHwgYCB7InZhbHVlcyI6IFt7ImlkIjogMSwgInNyYyI6ICJoZGNhIn1dfSBgIHwKICAgICAgIHwgZG9tZXN0aWNhdGVkXF9pbnB1dCB8IGAgTm9uZSBgIHwKICAgICAgIHwgYXNzZW1ibHlcX3BsYW5cX25hbWUgfCBgICJUeXBlMnNSZXN0cmljdGlvbkFzc2VtYmx5IiBgIHwKICAgICAgIHwgdG9wb2xvZ3kgfCBgICJjaXJjdWxhciIgYCB8CiAgICAgICB8IGFkdiB8IGAgeyJlbnp5bWUiOiAiYXV0byIsICJ1c2VfZmlsZV9uYW1lc19hc19pZHMiOiB0cnVlfSBgIHwKICAgICAgIHwgY2hyb21JbmZvIHwgYCAiL3RtcC90bXB5MnlzdjZ0bi9nYWxheHktZGV2L3Rvb2wtZGF0YS9zaGFyZWQvdWNzYy9jaHJvbS8/LmxlbiIgYCB8CiAgICAgICB8IGRia2V5IHwgYCAiPyIgYCB8CiAgICAgICB8IFxfXF9pbnB1dFxfZXh0IHwgYCAiaW5wdXQiIGAgfAoKCgogICAgPC9kaXY+PC9kZXRhaWxzPgoKCjwvZGV0YWlscz4KPGRldGFpbHMgPjxzdW1tYXJ5PlBhc3NlZCBUZXN0czwvc3VtbWFyeT4KCiogPGRldGFpbHMgY2xhc3M9InJjb3JuZXJzIGxpZ2h0LWdyZWVuIj48c3VtbWFyeSBjbGFzcz0ibGlnaHQtZ3JlZW4iPiYjOTk4OTsgY2xvbmluZ19zaW11bGF0aW9uIChUZXN0ICMgMik8L3N1bW1hcnk+PGRpdiBjbGFzcz0icGFkZGVkIj4KCiAgICAqKkNvbW1hbmQgTGluZToqKgoKICAgICogYGBgY29uc29sZQogICAgICBta2RpciAnb3V0ZGlyX3ppcCcgJiYgbWtkaXIgJ291dGRpcl9nYicgJiYgY3AgJy90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvNi9lL2IvZGF0YXNldF82ZWIyMGRlMy02NjJjLTQ0MjgtOTA3Zi0yOWNiZTBhNWNjMjAuZGF0JyAnYXNzZW1ibHlfY3N2LmNzdicgJiYgcHl0aG9uICcvaG9tZS9ya2hhbGVkL2dhbGF4eXRvb2xzL3Rvb2xzL2Nsb25pbmdfc2ltdWxhdGlvbi9jbG9uaW5nX3NpbXVsYXRpb24ucHknIC0tcGFydHNfZmlsZXMgJy90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvYi82L2YvZGF0YXNldF9iNmZlMTQxZC1mMjdkLTQ3NWQtOTVmZC01MDFlMDMyZjBjM2IuZGF0JyAtLWRvbWVzdGljYXRlZF9zZXEgJycgLS1hc3NlbWJseV9jc3YgJ2Fzc2VtYmx5X2Nzdi5jc3YnIC0tYXNzZW1ibHlfcGxhbl9uYW1lICdHaWJzb25Bc3NlbWJseScgLS1maWxlX25hbWVfbWFwcGluZyAnL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9iLzYvZi9kYXRhc2V0X2I2ZmUxNDFkLWYyN2QtNDc1ZC05NWZkLTUwMWUwMzJmMGMzYi5kYXQ6Z2lic29uX3NlcXVlbmNlcy5mYScgLS1maWxlX25hbWVfbWFwcGluZ19kb20gJycgLS11c2VfZmlsZV9uYW1lc19hc19pZCAndHJ1ZScgLS1vdXRkaXJfc2ltdWxhdGlvbiAnb3V0ZGlyX3ppcCcgLS1vdXRkaXJfZ2IgJ291dGRpcl9nYicgLS1vdXRwdXRfc2ltdWxhdGlvbiAnb3V0cHV0X3ppcC56aXAnIC0tZW56eW1lICdhdXRvJyAtLXRvcG9sb2d5ICdjaXJjdWxhcicgJiYgY3AgJ291dHB1dF96aXAuemlwJyAnL3RtcC90bXB5MnlzdjZ0bi9qb2Jfd29ya2luZ19kaXJlY3RvcnkvMDAwLzE3L291dHB1dHMvZGF0YXNldF80MWQ4NTNiNC1hZGI2LTQ2MDUtYmJhZi1kNzE3OGI5NjJkOTIuZGF0JwogICAgICBgYGAKICAgICoqRXhpdCBDb2RlOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIDAKICAgICAgYGBgCiAgICAqKlN0YW5kYXJkIEVycm9yOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIAogICAgICBhc3NlbWJseTogICAwJXwgICAgICAgICAgfCAwLzUgWzAwOjAwPD8sID9pdC9zLCBub3c9Tm9uZV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogICAgICBhc3NlbWJseTogICAwJXwgICAgICAgICAgfCAwLzUgWzAwOjAwPD8sID9pdC9zLCBub3c9Tm9uZV0KICAgICAgYXNzZW1ibHk6ICA0MCV84paI4paI4paI4paIICAgICAgfCAyLzUgWzAwOjAwPDAwOjAwLCAgNC4zMml0L3MsIG5vdz1Ob25lXQogICAgICBhc3NlbWJseTogIDYwJXzilojilojilojilojilojiloggICAgfCAzLzUgWzAwOjAwPDAwOjAwLCAgNC4yNGl0L3MsIG5vdz1Ob25lXQogICAgICBhc3NlbWJseTogIDgwJXzilojilojilojilojilojilojilojiloggIHwgNC81IFswMDowMDwwMDowMCwgIDQuMzVpdC9zLCBub3c9Tm9uZV0KICAgICAgYXNzZW1ibHk6IDEwMCV84paI4paI4paI4paI4paI4paI4paI4paI4paI4paIfCA1LzUgWzAwOjAxPDAwOjAwLCAgMy42M2l0L3MsIG5vdz1Ob25lXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICBgYGAKICAgICoqU3RhbmRhcmQgT3V0cHV0OioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgICAgICAgICAgICAgICAgICAgIDEgICAgICAgMiAgICAgICAzICAgICAgICA0ICAgICAgICA1CiAgICAgIDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgIGNvbnN0cnVjdCAgICAgcGFydHMgICAgIE5hTiAgICAgTmFOICAgICAgTmFOICAgICAgTmFOCiAgICAgIGNvbnN0cnVjdF8xICBGcmFnXzEgIEZyYWdfMiAgRnJhZ18zICAgRnJhZ180ICAgRnJhZ181CiAgICAgIGNvbnN0cnVjdF8yICBGcmFnXzEgIEZyYWdfMiAgRnJhZ18zICBGcmFnXzRiICAgRnJhZ181CiAgICAgIGNvbnN0cnVjdF8zICBGcmFnXzEgIEZyYWdfMiAgRnJhZ18zICBGcmFnXzRjICBGcmFnXzViCiAgICAgIGNvbnN0cnVjdF80ICBGcmFnXzEgIEZyYWdfMiAgRnJhZ18zICAgRnJhZ180ICAgICAgTmFOCiAgICAgIGNvbnN0cnVjdF81ICBGcmFnXzEgIEZyYWdfMiAgRnJhZ18zICAgRnJhZ180ICBGcmFnXzRiCiAgICAgIFNpbXVsYXRpbmcgYXNzZW1ibHkgcGxhbiBhc3NhbWJseS4uLgogICAgICB7J2NhbmNlbGxlZF9hc3NlbWJsaWVzJzogMCwgJ2Vycm9yZWRfYXNzZW1ibGllcyc6IDIsICd2YWxpZF9hc3NlbWJsaWVzJzogM30KICAgICAgR2VuZXJhdGluZyBhc3NlbWJsaWVzIHJlcG9ydHMuLi4KCiAgICAgIGBgYAogICAgKipUcmFjZWJhY2s6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGBgYAogICAqKkpvYiBQYXJhbWV0ZXJzOioqCgogICAqICAgfCBKb2IgcGFyYW1ldGVyIHwgUGFyYW1ldGVyIHZhbHVlIHwKICAgICAgIHwgLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLSB8CiAgICAgICB8IGdlbmJhbmtcX2ZpbGVzIHwgYCB7InZhbHVlcyI6IFt7ImlkIjogMywgInNyYyI6ICJoZGNhIn1dfSBgIHwKICAgICAgIHwgZG9tZXN0aWNhdGVkXF9pbnB1dCB8IGAgTm9uZSBgIHwKICAgICAgIHwgYXNzZW1ibHlcX3BsYW5cX25hbWUgfCBgICJHaWJzb25Bc3NlbWJseSIgYCB8CiAgICAgICB8IHRvcG9sb2d5IHwgYCAiY2lyY3VsYXIiIGAgfAogICAgICAgfCBhZHYgfCBgIHsiZW56eW1lIjogImF1dG8iLCAidXNlX2ZpbGVfbmFtZXNfYXNfaWRzIjogdHJ1ZX0gYCB8CiAgICAgICB8IGNocm9tSW5mbyB8IGAgIi90bXAvdG1weTJ5c3Y2dG4vZ2FsYXh5LWRldi90b29sLWRhdGEvc2hhcmVkL3Vjc2MvY2hyb20vPy5sZW4iIGAgfAogICAgICAgfCBkYmtleSB8IGAgIj8iIGAgfAogICAgICAgfCBcX1xfaW5wdXRcX2V4dCB8IGAgImlucHV0IiBgIHwKCgoKICAgIDwvZGl2PjwvZGV0YWlscz4KCgoqIDxkZXRhaWxzIGNsYXNzPSJyY29ybmVycyBsaWdodC1ncmVlbiI+PHN1bW1hcnkgY2xhc3M9ImxpZ2h0LWdyZWVuIj4mIzk5ODk7IGNsb25pbmdfc2ltdWxhdGlvbiAoVGVzdCAjIDMpPC9zdW1tYXJ5PjxkaXYgY2xhc3M9InBhZGRlZCI+CgogICAgKipDb21tYW5kIExpbmU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgbWtkaXIgJ291dGRpcl96aXAnICYmIG1rZGlyICdvdXRkaXJfZ2InICYmIGNwICcvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzQvNi85L2RhdGFzZXRfNDY5ZGYwNDgtMTYwOC00ZTI4LWE4YzMtNTc2NDMzYzcyYzdmLmRhdCcgJ2Fzc2VtYmx5X2Nzdi5jc3YnICYmIHB5dGhvbiAnL2hvbWUvcmtoYWxlZC9nYWxheHl0b29scy90b29scy9jbG9uaW5nX3NpbXVsYXRpb24vY2xvbmluZ19zaW11bGF0aW9uLnB5JyAtLXBhcnRzX2ZpbGVzICcvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzEvOC85L2RhdGFzZXRfMTg5NTJjZWYtYzcxNS00Nzc2LTlmNTMtNjkxNTZkYTg5ZDAxLmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzgvMS8zL2RhdGFzZXRfODEzMjIwNTYtNjllYi00ZGNkLTg4ZWUtNmNiNzhmZjYxN2RiLmRhdCcgLS1kb21lc3RpY2F0ZWRfc2VxICcnIC0tYXNzZW1ibHlfY3N2ICdhc3NlbWJseV9jc3YuY3N2JyAtLWFzc2VtYmx5X3BsYW5fbmFtZSAnTGlnYXNlQ3ljbGluZ1JlYWN0aW9uQXNzZW1ibHknIC0tZmlsZV9uYW1lX21hcHBpbmcgJy90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvMS84LzkvZGF0YXNldF8xODk1MmNlZi1jNzE1LTQ3NzYtOWY1My02OTE1NmRhODlkMDEuZGF0OlJGUF9HRlBfcGxhc21pZF9CT3MuZmEsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy84LzEvMy9kYXRhc2V0XzgxMzIyMDU2LTY5ZWItNGRjZC04OGVlLTZjYjc4ZmY2MTdkYi5kYXQ6UkZQX0dGUF9wbGFzbWlkX3BhcnRzLmZhJyAtLWZpbGVfbmFtZV9tYXBwaW5nX2RvbSAnJyAtLXVzZV9maWxlX25hbWVzX2FzX2lkICd0cnVlJyAtLW91dGRpcl9zaW11bGF0aW9uICdvdXRkaXJfemlwJyAtLW91dGRpcl9nYiAnb3V0ZGlyX2diJyAtLW91dHB1dF9zaW11bGF0aW9uICdvdXRwdXRfemlwLnppcCcgLS1lbnp5bWUgJ2F1dG8nIC0tdG9wb2xvZ3kgJ2NpcmN1bGFyJyAmJiBjcCAnb3V0cHV0X3ppcC56aXAnICcvdG1wL3RtcHkyeXN2NnRuL2pvYl93b3JraW5nX2RpcmVjdG9yeS8wMDAvMjEvb3V0cHV0cy9kYXRhc2V0X2QyZGY2MTkwLTk0NjItNDFhYS05MmQyLWQ0YTVjMWE2MDVkMy5kYXQnCiAgICAgIGBgYAogICAgKipFeGl0IENvZGU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgMAogICAgICBgYGAKICAgICoqU3RhbmRhcmQgRXJyb3I6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGFzc2VtYmx5OiAgIDAlfCAgICAgICAgICB8IDAvMiBbMDA6MDA8PywgP2l0L3MsIG5vdz1Ob25lXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiAgICAgIGFzc2VtYmx5OiAgIDAlfCAgICAgICAgICB8IDAvMiBbMDA6MDA8PywgP2l0L3MsIG5vdz1Ob25lXQogICAgICBhc3NlbWJseTogMTAwJXzilojilojilojilojilojilojilojilojilojiloh8IDIvMiBbMDA6MDA8MDA6MDAsICAyLjI3aXQvcywgbm93PU5vbmVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBPdXRwdXQ6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSAgIC4uLiAgICAgICAgICAgMTQKICAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLiAgICAgICAgICAgICAKICAgICAgQ29uc3RydWN0MSAgICAgICAgIFJGUF9HRlBfQk9fMTAyMzIgIC4uLiAgcDdfYmFja2JvbmUKICAgICAgQ29uc3RydWN0Ml9mbGF3ZWQgIFJGUF9HRlBfQk9fMTAyMzIgIC4uLiAgICAgICAgICBOYU4KCiAgICAgIFsyIHJvd3MgeCAxNCBjb2x1bW5zXQogICAgICBTaW11bGF0aW5nIGFzc2VtYmx5IHBsYW4gYXNzYW1ibHkuLi4KICAgICAgeydjYW5jZWxsZWRfYXNzZW1ibGllcyc6IDAsICdlcnJvcmVkX2Fzc2VtYmxpZXMnOiAyLCAndmFsaWRfYXNzZW1ibGllcyc6IDB9CiAgICAgIEdlbmVyYXRpbmcgYXNzZW1ibGllcyByZXBvcnRzLi4uCgogICAgICBgYGAKICAgICoqVHJhY2ViYWNrOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIAogICAgICBgYGAKICAgKipKb2IgUGFyYW1ldGVyczoqKgoKICAgKiAgIHwgSm9iIHBhcmFtZXRlciB8IFBhcmFtZXRlciB2YWx1ZSB8CiAgICAgICB8IC0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0gfAogICAgICAgfCBnZW5iYW5rXF9maWxlcyB8IGAgeyJ2YWx1ZXMiOiBbeyJpZCI6IDUsICJzcmMiOiAiaGRjYSJ9XX0gYCB8CiAgICAgICB8IGRvbWVzdGljYXRlZFxfaW5wdXQgfCBgIE5vbmUgYCB8CiAgICAgICB8IGFzc2VtYmx5XF9wbGFuXF9uYW1lIHwgYCAiTGlnYXNlQ3ljbGluZ1JlYWN0aW9uQXNzZW1ibHkiIGAgfAogICAgICAgfCB0b3BvbG9neSB8IGAgImNpcmN1bGFyIiBgIHwKICAgICAgIHwgYWR2IHwgYCB7ImVuenltZSI6ICJhdXRvIiwgInVzZV9maWxlX25hbWVzX2FzX2lkcyI6IHRydWV9IGAgfAogICAgICAgfCBjaHJvbUluZm8gfCBgICIvdG1wL3RtcHkyeXN2NnRuL2dhbGF4eS1kZXYvdG9vbC1kYXRhL3NoYXJlZC91Y3NjL2Nocm9tLz8ubGVuIiBgIHwKICAgICAgIHwgZGJrZXkgfCBgICI/IiBgIHwKICAgICAgIHwgXF9cX2lucHV0XF9leHQgfCBgICJpbnB1dCIgYCB8CgoKCiAgICA8L2Rpdj48L2RldGFpbHM+CgoKKiA8ZGV0YWlscyBjbGFzcz0icmNvcm5lcnMgbGlnaHQtZ3JlZW4iPjxzdW1tYXJ5IGNsYXNzPSJsaWdodC1ncmVlbiI+JiM5OTg5OyBjbG9uaW5nX3NpbXVsYXRpb24gKFRlc3QgIyA0KTwvc3VtbWFyeT48ZGl2IGNsYXNzPSJwYWRkZWQiPgoKICAgICoqQ29tbWFuZCBMaW5lOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIG1rZGlyICdvdXRkaXJfemlwJyAmJiBta2RpciAnb3V0ZGlyX2diJyAmJiBjcCAnL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8xLzEvYi9kYXRhc2V0XzExYjE5MDgwLWQyMWYtNGEzZS1hNTE2LTc3YmI3ZjFlYjhmZi5kYXQnICdhc3NlbWJseV9jc3YuY3N2JyAmJiBweXRob24gJy9ob21lL3JraGFsZWQvZ2FsYXh5dG9vbHMvdG9vbHMvY2xvbmluZ19zaW11bGF0aW9uL2Nsb25pbmdfc2ltdWxhdGlvbi5weScgLS1wYXJ0c19maWxlcyAnL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9jLzEvMy9kYXRhc2V0X2MxM2MzYmI1LTc0ZjMtNDliNC05NzllLTA4MDY0Y2JjZDk2ZS5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8yLzIvMC9kYXRhc2V0XzIyMGQ4Y2UzLTY1YTItNDg4MC05OTI0LWU0MWY2ODVlMTM4Ni5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8yLzYvNC9kYXRhc2V0XzI2NGQ3ZTk1LTgwN2QtNDVhYS1hZGE3LTI0NGU3ODk2ZGQ5NS5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy83L2UvZS9kYXRhc2V0XzdlZWRlODFjLWE3OTYtNDE4OS05NGRmLTgyMjQ1NzYzZTE5Zi5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9jLzkvNS9kYXRhc2V0X2M5NTM3OTM4LWRiMGQtNGQwNy05ZWVlLTJjZmVlYzUwYTkwZC5kYXQnIC0tZG9tZXN0aWNhdGVkX3NlcSAnJyAtLWFzc2VtYmx5X2NzdiAnYXNzZW1ibHlfY3N2LmNzdicgLS1hc3NlbWJseV9wbGFuX25hbWUgJ0JBU0lDQXNzZW1ibHknIC0tZmlsZV9uYW1lX21hcHBpbmcgJy90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvYy8xLzMvZGF0YXNldF9jMTNjM2JiNS03NGYzLTQ5YjQtOTc5ZS0wODA2NGNiY2Q5NmUuZGF0OkdGUC5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzIvMi8wL2RhdGFzZXRfMjIwZDhjZTMtNjVhMi00ODgwLTk5MjQtZTQxZjY4NWUxMzg2LmRhdDpwMTVBX2thbi5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzIvNi80L2RhdGFzZXRfMjY0ZDdlOTUtODA3ZC00NWFhLWFkYTctMjQ0ZTc4OTZkZDk1LmRhdDpwcm9tb3Rlci5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzcvZS9lL2RhdGFzZXRfN2VlZGU4MWMtYTc5Ni00MTg5LTk0ZGYtODIyNDU3NjNlMTlmLmRhdDpSRlAuZ2IsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9jLzkvNS9kYXRhc2V0X2M5NTM3OTM4LWRiMGQtNGQwNy05ZWVlLTJjZmVlYzUwYTkwZC5kYXQ6b2xpZ29zLmZhJyAtLWZpbGVfbmFtZV9tYXBwaW5nX2RvbSAnJyAtLXVzZV9maWxlX25hbWVzX2FzX2lkICd0cnVlJyAtLW91dGRpcl9zaW11bGF0aW9uICdvdXRkaXJfemlwJyAtLW91dGRpcl9nYiAnb3V0ZGlyX2diJyAtLW91dHB1dF9zaW11bGF0aW9uICdvdXRwdXRfemlwLnppcCcgLS1lbnp5bWUgJ2F1dG8nIC0tdG9wb2xvZ3kgJ2NpcmN1bGFyJyAmJiBjcCAnb3V0cHV0X3ppcC56aXAnICcvdG1wL3RtcHkyeXN2NnRuL2pvYl93b3JraW5nX2RpcmVjdG9yeS8wMDAvMjgvb3V0cHV0cy9kYXRhc2V0X2IwNTVlZGM5LWVhNzItNDZjYS04OTcxLTM1MmM0NmRiMzg3ZS5kYXQnCiAgICAgIGBgYAogICAgKipFeGl0IENvZGU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgMAogICAgICBgYGAKICAgICoqU3RhbmRhcmQgRXJyb3I6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGFzc2VtYmx5OiAgIDAlfCAgICAgICAgICB8IDAvMTAgWzAwOjAwPD8sID9pdC9zLCBub3c9Tm9uZV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKICAgICAgYXNzZW1ibHk6ICAgMCV8ICAgICAgICAgIHwgMC84IFswMDowMDw/LCA/aXQvcywgbm93PU5vbmVdCiAgICAgIGFzc2VtYmx5OiAgNjIlfOKWiOKWiOKWiOKWiOKWiOKWiOKWjiAgIHwgNS84IFswMDowMDwwMDowMCwgNDcuNTRpdC9zLCBub3c9Tm9uZV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgYGBgCiAgICAqKlN0YW5kYXJkIE91dHB1dDoqKgoKICAgICogYGBgY29uc29sZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgIDIgICAgICAgICAzICAgLi4uICAgICAxMCAgICAgICAgMTEgICAgIDEyCiAgICAgIDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgTDJSQlMtMVAgICAgIEwyUkJTLTFQX2Z3ZCAgTDJSQlMtMVBfYWRhcHRlciAgICAgICBOYU4gIC4uLiAgICBOYU4gICAgICAgTmFOICAgIE5hTgogICAgICBMTUEtUyAgICAgICAgICAgTE1BLVNfZndkICAgICBMTUEtU19hZGFwdGVyICAgICAgIE5hTiAgLi4uICAgIE5hTiAgICAgICBOYU4gICAgTmFOCiAgICAgIEwxUkJTLXhTICAgICBMMVJCUy14U19md2QgIEwxUkJTLXhTX2FkYXB0ZXIgICAgICAgTmFOICAuLi4gICAgTmFOICAgICAgIE5hTiAgICBOYU4KICAgICAgTDFSQlMtMVAgICAgIEwxUkJTLTFQX2Z3ZCAgTDFSQlMtMVBfYWRhcHRlciAgICAgICBOYU4gIC4uLiAgICBOYU4gICAgICAgTmFOICAgIE5hTgogICAgICBMMlJCUy14UyAgICAgTDJSQlMteFNfZndkICBMMlJCUy14U19hZGFwdGVyICAgICAgIE5hTiAgLi4uICAgIE5hTiAgICAgICBOYU4gICAgTmFOCiAgICAgIExNQS1QICAgICAgICAgICBMTUEtUF9md2QgICAgIExNQS1QX2FkYXB0ZXIgICAgICAgTmFOICAuLi4gICAgTmFOICAgICAgIE5hTiAgICBOYU4KICAgICAgTE1CLVMgICAgICAgICAgIExNQi1TX2Z3ZCAgICAgTE1CLVNfYWRhcHRlciAgICAgICBOYU4gIC4uLiAgICBOYU4gICAgICAgTmFOICAgIE5hTgogICAgICBMTUItUCAgICAgICAgICAgTE1CLVBfZndkICAgICBMTUItUF9hZGFwdGVyICAgICAgIE5hTiAgLi4uICAgIE5hTiAgICAgICBOYU4gICAgTmFOCiAgICAgIGFzbV9HRlBfUkZQICAgICAgICAgTE1BLVAgICAgICAgICAgcHJvbW90ZXIgIEwxUkJTLXhTICAuLi4gIExNQi1QICBwMTVBX2thbiAgTE1BLVMKICAgICAgYXNtX1JGUF9HRlAgICAgICAgICBMTUEtUCAgICAgICAgICBwcm9tb3RlciAgTDFSQlMteFMgIC4uLiAgTE1CLVAgIHAxNUFfa2FuICBMTUEtUwoKICAgICAgWzEwIHJvd3MgeCAxMiBjb2x1bW5zXQogICAgICBTaW11bGF0aW5nIGFzc2VtYmx5IHBsYW4gYXNzYW1ibHkuLi4KICAgICAgeydjYW5jZWxsZWRfYXNzZW1ibGllcyc6IDIsICdlcnJvcmVkX2Fzc2VtYmxpZXMnOiA4LCAndmFsaWRfYXNzZW1ibGllcyc6IDB9CiAgICAgIEdlbmVyYXRpbmcgYXNzZW1ibGllcyByZXBvcnRzLi4uCgogICAgICBgYGAKICAgICoqVHJhY2ViYWNrOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIAogICAgICBgYGAKICAgKipKb2IgUGFyYW1ldGVyczoqKgoKICAgKiAgIHwgSm9iIHBhcmFtZXRlciB8IFBhcmFtZXRlciB2YWx1ZSB8CiAgICAgICB8IC0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0gfAogICAgICAgfCBnZW5iYW5rXF9maWxlcyB8IGAgeyJ2YWx1ZXMiOiBbeyJpZCI6IDcsICJzcmMiOiAiaGRjYSJ9XX0gYCB8CiAgICAgICB8IGRvbWVzdGljYXRlZFxfaW5wdXQgfCBgIE5vbmUgYCB8CiAgICAgICB8IGFzc2VtYmx5XF9wbGFuXF9uYW1lIHwgYCAiQkFTSUNBc3NlbWJseSIgYCB8CiAgICAgICB8IHRvcG9sb2d5IHwgYCAiY2lyY3VsYXIiIGAgfAogICAgICAgfCBhZHYgfCBgIHsiZW56eW1lIjogImF1dG8iLCAidXNlX2ZpbGVfbmFtZXNfYXNfaWRzIjogdHJ1ZX0gYCB8CiAgICAgICB8IGNocm9tSW5mbyB8IGAgIi90bXAvdG1weTJ5c3Y2dG4vZ2FsYXh5LWRldi90b29sLWRhdGEvc2hhcmVkL3Vjc2MvY2hyb20vPy5sZW4iIGAgfAogICAgICAgfCBkYmtleSB8IGAgIj8iIGAgfAogICAgICAgfCBcX1xfaW5wdXRcX2V4dCB8IGAgImlucHV0IiBgIHwKCgoKICAgIDwvZGl2PjwvZGV0YWlscz4KCgoqIDxkZXRhaWxzIGNsYXNzPSJyY29ybmVycyBsaWdodC1ncmVlbiI+PHN1bW1hcnkgY2xhc3M9ImxpZ2h0LWdyZWVuIj4mIzk5ODk7IGNsb25pbmdfc2ltdWxhdGlvbiAoVGVzdCAjIDUpPC9zdW1tYXJ5PjxkaXYgY2xhc3M9InBhZGRlZCI+CgogICAgKipDb21tYW5kIExpbmU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgbWtkaXIgJ291dGRpcl96aXAnICYmIG1rZGlyICdvdXRkaXJfZ2InICYmIGNwICcvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzUvNi9lL2RhdGFzZXRfNTZlODgwYmMtMWY5My00OTVmLWJmYTgtMDg3M2NiODE4MmE5LmRhdCcgJ2Fzc2VtYmx5X2Nzdi5jc3YnICYmIHB5dGhvbiAnL2hvbWUvcmtoYWxlZC9nYWxheHl0b29scy90b29scy9jbG9uaW5nX3NpbXVsYXRpb24vY2xvbmluZ19zaW11bGF0aW9uLnB5JyAtLXBhcnRzX2ZpbGVzICcvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzL2QvZC9lL2RhdGFzZXRfZGRlZDc4ZTYtNWQzYS00NjZkLWEzNzgtNTc5M2M4MDFmMzJjLmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzIvYS8wL2RhdGFzZXRfMmEwN2E5OTItNjUyNy00YWM3LTljNDktN2ZkOWFjYmRlYTU3LmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzEvMi9mL2RhdGFzZXRfMTJmYWEzZDktYzk1ZC00YzM0LTlkZjctNmM1MzE3NGQ0Mjc2LmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzUvOC8xL2RhdGFzZXRfNTgxYTRjNTUtMGNlMi00YzNiLWEzODAtNzU2NDQ4ODcxZjMyLmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzL2EvYi9mL2RhdGFzZXRfYWJmMjU1ZjctOTg0MS00OTkxLTliNjUtNTk4ZGYzNjhmZjg1LmRhdCcgLS1kb21lc3RpY2F0ZWRfc2VxICcnIC0tYXNzZW1ibHlfY3N2ICdhc3NlbWJseV9jc3YuY3N2JyAtLWFzc2VtYmx5X3BsYW5fbmFtZSAnQmlvQnJpY2tTdGFuZGFyZEFzc2VtYmx5JyAtLWZpbGVfbmFtZV9tYXBwaW5nICcvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzL2QvZC9lL2RhdGFzZXRfZGRlZDc4ZTYtNWQzYS00NjZkLWEzNzgtNTc5M2M4MDFmMzJjLmRhdDpCQmFfRTAwNDBfR0ZQLmdiLC90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvMi9hLzAvZGF0YXNldF8yYTA3YTk5Mi02NTI3LTRhYzctOWM0OS03ZmQ5YWNiZGVhNTcuZGF0OkJCYV9KMjMxMTlfcHJvbS5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzEvMi9mL2RhdGFzZXRfMTJmYWEzZDktYzk1ZC00YzM0LTlkZjctNmM1MzE3NGQ0Mjc2LmRhdDpCQmFfSjIzMTE5X3Byb21fZmxhd2VkLmdiLC90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvNS84LzEvZGF0YXNldF81ODFhNGM1NS0wY2UyLTRjM2ItYTM4MC03NTY0NDg4NzFmMzIuZGF0OkJCYV9KNjEwNDhfdGVybS5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzL2EvYi9mL2RhdGFzZXRfYWJmMjU1ZjctOTg0MS00OTkxLTliNjUtNTk4ZGYzNjhmZjg1LmRhdDpCQmFfSzYxMTA5NF9iYXIuZ2InIC0tZmlsZV9uYW1lX21hcHBpbmdfZG9tICcnIC0tdXNlX2ZpbGVfbmFtZXNfYXNfaWQgJ3RydWUnIC0tb3V0ZGlyX3NpbXVsYXRpb24gJ291dGRpcl96aXAnIC0tb3V0ZGlyX2diICdvdXRkaXJfZ2InIC0tb3V0cHV0X3NpbXVsYXRpb24gJ291dHB1dF96aXAuemlwJyAtLWVuenltZSAnYXV0bycgLS10b3BvbG9neSAnY2lyY3VsYXInICYmIGNwICdvdXRwdXRfemlwLnppcCcgJy90bXAvdG1weTJ5c3Y2dG4vam9iX3dvcmtpbmdfZGlyZWN0b3J5LzAwMC8zNS9vdXRwdXRzL2RhdGFzZXRfZDVlMmFmZmQtOTIyOC00YjIxLThlODktMzZhNDNjNTlhYjM3LmRhdCcgJiYgZWNobyBERUJVRyAmJiBscyAnb3V0ZGlyX2diJwogICAgICBgYGAKICAgICoqRXhpdCBDb2RlOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIDAKICAgICAgYGBgCiAgICAqKlN0YW5kYXJkIEVycm9yOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIAogICAgICBhc3NlbWJseTogICAwJXwgICAgICAgICAgfCAwLzMgWzAwOjAwPD8sID9pdC9zLCBub3c9Tm9uZV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogICAgICBhc3NlbWJseTogICAwJXwgICAgICAgICAgfCAwLzMgWzAwOjAwPD8sID9pdC9zLCBub3c9Tm9uZV0KICAgICAgYXNzZW1ibHk6ICA2NyV84paI4paI4paI4paI4paI4paI4paLICAgfCAyLzMgWzAwOjAxPDAwOjAwLCAgMS45OGl0L3MsIG5vdz1Ob25lXQogICAgICBhc3NlbWJseTogMTAwJXzilojilojilojilojilojilojilojilojilojiloh8IDMvMyBbMDA6MDE8MDA6MDAsICAxLjYwaXQvcywgbm93PU5vbmVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBPdXRwdXQ6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgMgogICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgIGNvbnN0cnVjdCAgICAgICAgICAgICAgICAgIHBhcnRzICAgICAgICAgICAgICBOYU4KICAgICAgQzFfcHJvbV9iYXJjb2RlICBCQmFfSzYxMTA5NF9iYXIgIEJCYV9KMjMxMTlfcHJvbQogICAgICBDMl9nZnBfdGVybSAgICAgICAgQkJhX0UwMDQwX0dGUCAgQkJhX0o2MTA0OF90ZXJtCiAgICAgIEMzX2ZpbmFsICAgICAgICAgQzFfcHJvbV9iYXJjb2RlICAgICAgQzJfZ2ZwX3Rlcm0KICAgICAgU2ltdWxhdGluZyBhc3NlbWJseSBwbGFuIGFzc2FtYmx5Li4uCiAgICAgIHsnY2FuY2VsbGVkX2Fzc2VtYmxpZXMnOiAwLCAnZXJyb3JlZF9hc3NlbWJsaWVzJzogMCwgJ3ZhbGlkX2Fzc2VtYmxpZXMnOiAzfQogICAgICBHZW5lcmF0aW5nIGFzc2VtYmxpZXMgcmVwb3J0cy4uLgogICAgICBERUJVRwogICAgICBDMV9wcm9tX2JhcmNvZGUuZ2IKICAgICAgQzJfZ2ZwX3Rlcm0uZ2IKICAgICAgQzNfZmluYWwuZ2IKCiAgICAgIGBgYAogICAgKipUcmFjZWJhY2s6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGBgYAogICAqKkpvYiBQYXJhbWV0ZXJzOioqCgogICAqICAgfCBKb2IgcGFyYW1ldGVyIHwgUGFyYW1ldGVyIHZhbHVlIHwKICAgICAgIHwgLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLSB8CiAgICAgICB8IGdlbmJhbmtcX2ZpbGVzIHwgYCB7InZhbHVlcyI6IFt7ImlkIjogOSwgInNyYyI6ICJoZGNhIn1dfSBgIHwKICAgICAgIHwgZG9tZXN0aWNhdGVkXF9pbnB1dCB8IGAgTm9uZSBgIHwKICAgICAgIHwgYXNzZW1ibHlcX3BsYW5cX25hbWUgfCBgICJCaW9Ccmlja1N0YW5kYXJkQXNzZW1ibHkiIGAgfAogICAgICAgfCB0b3BvbG9neSB8IGAgImNpcmN1bGFyIiBgIHwKICAgICAgIHwgYWR2IHwgYCB7ImVuenltZSI6ICJhdXRvIiwgInVzZV9maWxlX25hbWVzX2FzX2lkcyI6IHRydWV9IGAgfAogICAgICAgfCBjaHJvbUluZm8gfCBgICIvdG1wL3RtcHkyeXN2NnRuL2dhbGF4eS1kZXYvdG9vbC1kYXRhL3NoYXJlZC91Y3NjL2Nocm9tLz8ubGVuIiBgIHwKICAgICAgIHwgZGJrZXkgfCBgICI/IiBgIHwKICAgICAgIHwgXF9cX2lucHV0XF9leHQgfCBgICJpbnB1dCIgYCB8CgoKCiAgICA8L2Rpdj48L2RldGFpbHM+CgoKKiA8ZGV0YWlscyBjbGFzcz0icmNvcm5lcnMgbGlnaHQtZ3JlZW4iPjxzdW1tYXJ5IGNsYXNzPSJsaWdodC1ncmVlbiI+JiM5OTg5OyBjbG9uaW5nX3NpbXVsYXRpb24gKFRlc3QgIyA2KTwvc3VtbWFyeT48ZGl2IGNsYXNzPSJwYWRkZWQiPgoKICAgICoqQ29tbWFuZCBMaW5lOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIG1rZGlyICdvdXRkaXJfemlwJyAmJiBta2RpciAnb3V0ZGlyX2diJyAmJiBjcCAnL3RtcC90bXB5MnlzdjZ0bi9maWxlcy82L2MvMi9kYXRhc2V0XzZjMjA4OWRlLTUyODUtNGFlNi04ZTA4LWFmYTM4ODEwYzBlZS5kYXQnICdhc3NlbWJseV9jc3YuY3N2JyAmJiBweXRob24gJy9ob21lL3JraGFsZWQvZ2FsYXh5dG9vbHMvdG9vbHMvY2xvbmluZ19zaW11bGF0aW9uL2Nsb25pbmdfc2ltdWxhdGlvbi5weScgLS1wYXJ0c19maWxlcyAnL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9iLzYvOC9kYXRhc2V0X2I2OGQ4ZGJhLWYwOTgtNGYxNC1hYzlmLWI2OTU0MWE4MzRjOC5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9hLzkvNC9kYXRhc2V0X2E5NDA0MmQ3LTJkNzAtNDI1Ny1iYmM1LWFjM2YyYmU5M2FmZi5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8xL2QvZS9kYXRhc2V0XzFkZTcyMzQxLWY0YzEtNDhkZi05NDY2LWExYzgwZTIzZmRmYi5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9jLzEvMS9kYXRhc2V0X2MxMTI4YWJkLTg2YTEtNDhiOS1iNjZjLTAxNTJkNzZjODVjOS5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8yL2YvMi9kYXRhc2V0XzJmMmFiN2I3LWQ2ZWYtNGEyZS05MGI4LWYxNWNkZGY1NmVlYS5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy85LzAvNC9kYXRhc2V0XzkwNDg1ODI3LWQ4MzktNGUzMi1iNTQ2LTljMzJmNzdmZDI2NC5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy83L2MvNS9kYXRhc2V0XzdjNTZhMDcxLWU5ZmUtNDEzMy04YTk5LThhN2Q1OGU3YjFmZC5kYXQnIC0tZG9tZXN0aWNhdGVkX3NlcSAnL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8wL2YvMy9kYXRhc2V0XzBmMzhkNDIwLWFmMmEtNDJiYS1hNmQzLWYxNjgwNzY1MzQwMi5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8wL2IvNi9kYXRhc2V0XzBiNjUzZWQ0LWY0NTgtNDU2Ny1iOWI3LTA3NDI1NzkzNDQzMy5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy83LzAvZC9kYXRhc2V0XzcwZDdjODU5LTgzZjEtNGFhNy1iMWRiLWZlZTFiNGQzODRjMC5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9jL2UvMi9kYXRhc2V0X2NlMjUwNWU2LTM1YzctNDg1OC1hMjdlLTZjNTc2MWEzNWJlMy5kYXQsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy82LzgvYi9kYXRhc2V0XzY4YjhkMzBlLTZjMGMtNDY2Zi1hNzBjLTBlNThiY2MyN2UwZC5kYXQnIC0tYXNzZW1ibHlfY3N2ICdhc3NlbWJseV9jc3YuY3N2JyAtLWFzc2VtYmx5X3BsYW5fbmFtZSAnVHlwZTJzUmVzdHJpY3Rpb25Bc3NlbWJseScgLS1maWxlX25hbWVfbWFwcGluZyAnL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9iLzYvOC9kYXRhc2V0X2I2OGQ4ZGJhLWYwOTgtNGYxNC1hYzlmLWI2OTU0MWE4MzRjOC5kYXQ6cGFydF9BLmdiLC90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvYS85LzQvZGF0YXNldF9hOTQwNDJkNy0yZDcwLTQyNTctYmJjNS1hYzNmMmJlOTNhZmYuZGF0OnBhcnRfQi5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzEvZC9lL2RhdGFzZXRfMWRlNzIzNDEtZjRjMS00OGRmLTk0NjYtYTFjODBlMjNmZGZiLmRhdDpwYXJ0X0MuZ2IsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9jLzEvMS9kYXRhc2V0X2MxMTI4YWJkLTg2YTEtNDhiOS1iNjZjLTAxNTJkNzZjODVjOS5kYXQ6cGFydF9ELmdiLC90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvMi9mLzIvZGF0YXNldF8yZjJhYjdiNy1kNmVmLTRhMmUtOTBiOC1mMTVjZGRmNTZlZWEuZGF0OnBhcnRfRS5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzkvMC80L2RhdGFzZXRfOTA0ODU4MjctZDgzOS00ZTMyLWI1NDYtOWMzMmY3N2ZkMjY0LmRhdDpwYXJ0X0YuZ2IsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy83L2MvNS9kYXRhc2V0XzdjNTZhMDcxLWU5ZmUtNDEzMy04YTk5LThhN2Q1OGU3YjFmZC5kYXQ6cGFydF9HLmdiJyAtLWZpbGVfbmFtZV9tYXBwaW5nX2RvbSAnL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8wL2YvMy9kYXRhc2V0XzBmMzhkNDIwLWFmMmEtNDJiYS1hNmQzLWYxNjgwNzY1MzQwMi5kYXQ6cGFydF9ILmdiLC90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvMC9iLzYvZGF0YXNldF8wYjY1M2VkNC1mNDU4LTQ1NjctYjliNy0wNzQyNTc5MzQ0MzMuZGF0OnBhcnRfSS5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzcvMC9kL2RhdGFzZXRfNzBkN2M4NTktODNmMS00YWE3LWIxZGItZmVlMWI0ZDM4NGMwLmRhdDpwYXJ0X0ouZ2IsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9jL2UvMi9kYXRhc2V0X2NlMjUwNWU2LTM1YzctNDg1OC1hMjdlLTZjNTc2MWEzNWJlMy5kYXQ6cGFydF9LLmdiLC90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvNi84L2IvZGF0YXNldF82OGI4ZDMwZS02YzBjLTQ2NmYtYTcwYy0wZTU4YmNjMjdlMGQuZGF0OnBhcnRfTC5nYicgLS11c2VfZmlsZV9uYW1lc19hc19pZCAndHJ1ZScgLS1vdXRkaXJfc2ltdWxhdGlvbiAnb3V0ZGlyX3ppcCcgLS1vdXRkaXJfZ2IgJ291dGRpcl9nYicgLS1vdXRwdXRfc2ltdWxhdGlvbiAnb3V0cHV0X3ppcC56aXAnIC0tZW56eW1lICdhdXRvJyAtLXRvcG9sb2d5ICdjaXJjdWxhcicgJiYgY3AgJ291dHB1dF96aXAuemlwJyAnL3RtcC90bXB5MnlzdjZ0bi9qb2Jfd29ya2luZ19kaXJlY3RvcnkvMDAwLzQ5L291dHB1dHMvZGF0YXNldF80NDViYWI0MS1iYWE0LTRkZTEtYWRmYy1kNGZkNTY4OTJjNWYuZGF0JyAmJiBlY2hvIERFQlVHICYmIGxzICdvdXRkaXJfZ2InCiAgICAgIGBgYAogICAgKipFeGl0IENvZGU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgMAogICAgICBgYGAKICAgICoqU3RhbmRhcmQgRXJyb3I6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGFzc2VtYmx5OiAgIDAlfCAgICAgICAgICB8IDAvNCBbMDA6MDA8PywgP2l0L3MsIG5vdz1Ob25lXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiAgICAgIGFzc2VtYmx5OiAgIDAlfCAgICAgICAgICB8IDAvNCBbMDA6MDA8PywgP2l0L3MsIG5vdz1Ob25lXQogICAgICBhc3NlbWJseTogIDUwJXzilojilojilojilojiloggICAgIHwgMi80IFswMDowMDwwMDowMCwgIDIuMzlpdC9zLCBub3c9Tm9uZV0KICAgICAgYXNzZW1ibHk6ICA3NSV84paI4paI4paI4paI4paI4paI4paI4paMICB8IDMvNCBbMDA6MDE8MDA6MDAsICAyLjIwaXQvcywgbm93PU5vbmVdCiAgICAgIGFzc2VtYmx5OiAxMDAlfOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiHwgNC80IFswMDowMjwwMDowMCwgIDEuNzlpdC9zLCBub3c9Tm9uZV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgYGBgCiAgICAqKlN0YW5kYXJkIE91dHB1dDoqKgoKICAgICogYGBgY29uc29sZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEgICAgICAgMiAgICAgICAzICAgICAgIDQgICAgICAgNSAgICAgICA2CiAgICAgIDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgY29uc3RydWN0XzMgIGNvbnN0cnVjdF8xICBwYXJ0X0wgIHBhcnRfSiAgcGFydF9LICAgICBOYU4gICAgIE5hTgogICAgICBjb25zdHJ1Y3RfNCAgY29uc3RydWN0XzIgIHBhcnRfTCAgcGFydF9KICBwYXJ0X0sgICAgIE5hTiAgICAgTmFOCiAgICAgIGNvbnN0cnVjdF8xICAgICAgIHBhcnRfQSAgcGFydF9CICBwYXJ0X0MgIHBhcnRfRCAgcGFydF9FICBwYXJ0X0YKICAgICAgY29uc3RydWN0XzIgICAgICAgcGFydF9BICBwYXJ0X0cgIHBhcnRfSCAgcGFydF9JICBwYXJ0X0YgICAgIE5hTgogICAgICBTaW11bGF0aW5nIGFzc2VtYmx5IHBsYW4gYXNzYW1ibHkuLi4KICAgICAgeydjYW5jZWxsZWRfYXNzZW1ibGllcyc6IDAsICdlcnJvcmVkX2Fzc2VtYmxpZXMnOiAwLCAndmFsaWRfYXNzZW1ibGllcyc6IDR9CiAgICAgIEdlbmVyYXRpbmcgYXNzZW1ibGllcyByZXBvcnRzLi4uCiAgICAgIERFQlVHCiAgICAgIGNvbnN0cnVjdF8xLmdiCiAgICAgIGNvbnN0cnVjdF8yLmdiCiAgICAgIGNvbnN0cnVjdF8zLmdiCiAgICAgIGNvbnN0cnVjdF80LmdiCgogICAgICBgYGAKICAgICoqVHJhY2ViYWNrOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIAogICAgICBgYGAKICAgKipKb2IgUGFyYW1ldGVyczoqKgoKICAgKiAgIHwgSm9iIHBhcmFtZXRlciB8IFBhcmFtZXRlciB2YWx1ZSB8CiAgICAgICB8IC0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0gfAogICAgICAgfCBnZW5iYW5rXF9maWxlcyB8IGAgeyJ2YWx1ZXMiOiBbeyJpZCI6IDEyLCAic3JjIjogImhkY2EifV19IGAgfAogICAgICAgfCBkb21lc3RpY2F0ZWRcX2lucHV0IHwgYCB7InZhbHVlcyI6IFt7ImlkIjogMTEsICJzcmMiOiAiaGRjYSJ9XX0gYCB8CiAgICAgICB8IGFzc2VtYmx5XF9wbGFuXF9uYW1lIHwgYCAiVHlwZTJzUmVzdHJpY3Rpb25Bc3NlbWJseSIgYCB8CiAgICAgICB8IHRvcG9sb2d5IHwgYCAiY2lyY3VsYXIiIGAgfAogICAgICAgfCBhZHYgfCBgIHsiZW56eW1lIjogImF1dG8iLCAidXNlX2ZpbGVfbmFtZXNfYXNfaWRzIjogdHJ1ZX0gYCB8CiAgICAgICB8IGNocm9tSW5mbyB8IGAgIi90bXAvdG1weTJ5c3Y2dG4vZ2FsYXh5LWRldi90b29sLWRhdGEvc2hhcmVkL3Vjc2MvY2hyb20vPy5sZW4iIGAgfAogICAgICAgfCBkYmtleSB8IGAgIj8iIGAgfAogICAgICAgfCBcX1xfaW5wdXRcX2V4dCB8IGAgImlucHV0IiBgIHwKCgoKICAgIDwvZGl2PjwvZGV0YWlscz4KCgoqIDxkZXRhaWxzIGNsYXNzPSJyY29ybmVycyBsaWdodC1ncmVlbiI+PHN1bW1hcnkgY2xhc3M9ImxpZ2h0LWdyZWVuIj4mIzk5ODk7IGNsb25pbmdfc2ltdWxhdGlvbiAoVGVzdCAjIDcpPC9zdW1tYXJ5PjxkaXYgY2xhc3M9InBhZGRlZCI+CgogICAgKipDb21tYW5kIExpbmU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgbWtkaXIgJ291dGRpcl96aXAnICYmIG1rZGlyICdvdXRkaXJfZ2InICYmIGNwICcvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzL2EvYS9kL2RhdGFzZXRfYWFkYzJhYzUtYjkyZC00NDg5LWJhOWMtOWUzMGM3OWRhMjA3LmRhdCcgJ2Fzc2VtYmx5X2Nzdi5jc3YnICYmIHB5dGhvbiAnL2hvbWUvcmtoYWxlZC9nYWxheHl0b29scy90b29scy9jbG9uaW5nX3NpbXVsYXRpb24vY2xvbmluZ19zaW11bGF0aW9uLnB5JyAtLXBhcnRzX2ZpbGVzICcvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzMvOC84L2RhdGFzZXRfMzg4Njc0ZDItMjRmZS00ZTc2LWIwYjgtMmRiNjQ2M2U3ODhmLmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzcvNS9jL2RhdGFzZXRfNzVjMjdlZTUtZmQ5Yi00NmExLWJlMDctZjBjZGM0ZTE2YmMxLmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzL2IvYi9iL2RhdGFzZXRfYmJiYTVmZjktNjllNy00ZDQxLWFmODItOTkyZGY1ZjA2NWZiLmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzL2QvYy85L2RhdGFzZXRfZGM5ODJlOWQtNmQ5My00NjM4LWI0ZmMtNjdmYzgyMzhiMjk1LmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzL2UvZC8yL2RhdGFzZXRfZWQyZDdiMzUtNjI1Zi00MjllLWFlNTAtY2UxMDk4YTIwYjg1LmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzUvYS8yL2RhdGFzZXRfNWEyMDEwY2ItNjRjZi00ZmY5LTg4NTItZjg4M2Y3YWIwMjY5LmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzAvZi9hL2RhdGFzZXRfMGZhOGVkNmEtYjg0OC00YjBkLTk0NzQtMTNjZDIyZDRhNDdlLmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzL2EvYi9lL2RhdGFzZXRfYWJlYWQ0MTMtYzNkNC00MmQzLWJkOTctYzAyYTZiZDY5Nzc5LmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzYvYS9iL2RhdGFzZXRfNmFiNmM0NzItYzY3Mi00YmRmLTk4MTQtOGUwNjlhOGEwN2UxLmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzL2IvMC9lL2RhdGFzZXRfYjBlMmNlMDctY2NmMC00ODA1LTk1OGMtOGRlMTc0YzNkNGMxLmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzMvMy9hL2RhdGFzZXRfMzNhZDIwNzItZmI3Ni00N2M0LWIzZjctNjBhMmEwOTdhYjg3LmRhdCwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzkvZC8xL2RhdGFzZXRfOWQxM2M0MTgtYmJiMS00NTdlLWJkYWYtMGYyYmY1MjMyZjc4LmRhdCcgLS1kb21lc3RpY2F0ZWRfc2VxICcnIC0tYXNzZW1ibHlfY3N2ICdhc3NlbWJseV9jc3YuY3N2JyAtLWFzc2VtYmx5X3BsYW5fbmFtZSAnVHlwZTJzUmVzdHJpY3Rpb25Bc3NlbWJseScgLS1maWxlX25hbWVfbWFwcGluZyAnL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8zLzgvOC9kYXRhc2V0XzM4ODY3NGQyLTI0ZmUtNGU3Ni1iMGI4LTJkYjY0NjNlNzg4Zi5kYXQ6cGFydF9BLmdiLC90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvNy81L2MvZGF0YXNldF83NWMyN2VlNS1mZDliLTQ2YTEtYmUwNy1mMGNkYzRlMTZiYzEuZGF0OnBhcnRfQi5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzL2IvYi9iL2RhdGFzZXRfYmJiYTVmZjktNjllNy00ZDQxLWFmODItOTkyZGY1ZjA2NWZiLmRhdDpwYXJ0X0MuZ2IsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9kL2MvOS9kYXRhc2V0X2RjOTgyZTlkLTZkOTMtNDYzOC1iNGZjLTY3ZmM4MjM4YjI5NS5kYXQ6cGFydF9ELmdiLC90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvZS9kLzIvZGF0YXNldF9lZDJkN2IzNS02MjVmLTQyOWUtYWU1MC1jZTEwOThhMjBiODUuZGF0OnBhcnRfRS5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzUvYS8yL2RhdGFzZXRfNWEyMDEwY2ItNjRjZi00ZmY5LTg4NTItZjg4M2Y3YWIwMjY5LmRhdDpwYXJ0X0YuZ2IsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy8wL2YvYS9kYXRhc2V0XzBmYThlZDZhLWI4NDgtNGIwZC05NDc0LTEzY2QyMmQ0YTQ3ZS5kYXQ6cGFydF9HLmdiLC90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvYS9iL2UvZGF0YXNldF9hYmVhZDQxMy1jM2Q0LTQyZDMtYmQ5Ny1jMDJhNmJkNjk3NzkuZGF0OnBhcnRfSC5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzYvYS9iL2RhdGFzZXRfNmFiNmM0NzItYzY3Mi00YmRmLTk4MTQtOGUwNjlhOGEwN2UxLmRhdDpwYXJ0X0kuZ2IsL3RtcC90bXB5MnlzdjZ0bi9maWxlcy9iLzAvZS9kYXRhc2V0X2IwZTJjZTA3LWNjZjAtNDgwNS05NThjLThkZTE3NGMzZDRjMS5kYXQ6cGFydF9KLmdiLC90bXAvdG1weTJ5c3Y2dG4vZmlsZXMvMy8zL2EvZGF0YXNldF8zM2FkMjA3Mi1mYjc2LTQ3YzQtYjNmNy02MGEyYTA5N2FiODcuZGF0OnBhcnRfSy5nYiwvdG1wL3RtcHkyeXN2NnRuL2ZpbGVzLzkvZC8xL2RhdGFzZXRfOWQxM2M0MTgtYmJiMS00NTdlLWJkYWYtMGYyYmY1MjMyZjc4LmRhdDpwYXJ0X0wuZ2InIC0tZmlsZV9uYW1lX21hcHBpbmdfZG9tICcnIC0tdXNlX2ZpbGVfbmFtZXNfYXNfaWQgJ3RydWUnIC0tb3V0ZGlyX3NpbXVsYXRpb24gJ291dGRpcl96aXAnIC0tb3V0ZGlyX2diICdvdXRkaXJfZ2InIC0tb3V0cHV0X3NpbXVsYXRpb24gJ291dHB1dF96aXAuemlwJyAtLWVuenltZSAnYXV0bycgLS10b3BvbG9neSAnY2lyY3VsYXInICYmIGNwICdvdXRwdXRfemlwLnppcCcgJy90bXAvdG1weTJ5c3Y2dG4vam9iX3dvcmtpbmdfZGlyZWN0b3J5LzAwMC82My9vdXRwdXRzL2RhdGFzZXRfZmJlYjU3ZWQtMTcxOC00ZDJiLWEyMmItNWM0YTU3NzlkOWFiLmRhdCcgJiYgZWNobyBERUJVRyAmJiBscyAnb3V0ZGlyX2diJwogICAgICBgYGAKICAgICoqRXhpdCBDb2RlOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIDAKICAgICAgYGBgCiAgICAqKlN0YW5kYXJkIEVycm9yOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIAogICAgICBhc3NlbWJseTogICAwJXwgICAgICAgICAgfCAwLzQgWzAwOjAwPD8sID9pdC9zLCBub3c9Tm9uZV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogICAgICBhc3NlbWJseTogICAwJXwgICAgICAgICAgfCAwLzQgWzAwOjAwPD8sID9pdC9zLCBub3c9Tm9uZV0KICAgICAgYXNzZW1ibHk6ICA1MCV84paI4paI4paI4paI4paIICAgICB8IDIvNCBbMDA6MDA8MDA6MDAsICAyLjMxaXQvcywgbm93PU5vbmVdCiAgICAgIGFzc2VtYmx5OiAgNzUlfOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWjCAgfCAzLzQgWzAwOjAxPDAwOjAwLCAgMi4xMWl0L3MsIG5vdz1Ob25lXQogICAgICBhc3NlbWJseTogMTAwJXzilojilojilojilojilojilojilojilojilojiloh8IDQvNCBbMDA6MDI8MDA6MDAsICAxLjc1aXQvcywgbm93PU5vbmVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBPdXRwdXQ6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxICAgICAgIDIgICAgICAgMyAgICAgICA0ICAgICAgIDUgICAgICAgNgogICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgIGNvbnN0cnVjdF8zICBjb25zdHJ1Y3RfMSAgcGFydF9MICBwYXJ0X0ogIHBhcnRfSyAgICAgTmFOICAgICBOYU4KICAgICAgY29uc3RydWN0XzQgIGNvbnN0cnVjdF8yICBwYXJ0X0wgIHBhcnRfSiAgcGFydF9LICAgICBOYU4gICAgIE5hTgogICAgICBjb25zdHJ1Y3RfMSAgICAgICBwYXJ0X0EgIHBhcnRfQiAgcGFydF9DICBwYXJ0X0QgIHBhcnRfRSAgcGFydF9GCiAgICAgIGNvbnN0cnVjdF8yICAgICAgIHBhcnRfQSAgcGFydF9HICBwYXJ0X0ggIHBhcnRfSSAgcGFydF9GICAgICBOYU4KICAgICAgU2ltdWxhdGluZyBhc3NlbWJseSBwbGFuIGFzc2FtYmx5Li4uCiAgICAgIHsnY2FuY2VsbGVkX2Fzc2VtYmxpZXMnOiAwLCAnZXJyb3JlZF9hc3NlbWJsaWVzJzogMCwgJ3ZhbGlkX2Fzc2VtYmxpZXMnOiA0fQogICAgICBHZW5lcmF0aW5nIGFzc2VtYmxpZXMgcmVwb3J0cy4uLgogICAgICBERUJVRwogICAgICBjb25zdHJ1Y3RfMS5nYgogICAgICBjb25zdHJ1Y3RfMi5nYgogICAgICBjb25zdHJ1Y3RfMy5nYgogICAgICBjb25zdHJ1Y3RfNC5nYgoKICAgICAgYGBgCiAgICAqKlRyYWNlYmFjazoqKgoKICAgICogYGBgY29uc29sZQogICAgICAKICAgICAgYGBgCiAgICoqSm9iIFBhcmFtZXRlcnM6KioKCiAgICogICB8IEpvYiBwYXJhbWV0ZXIgfCBQYXJhbWV0ZXIgdmFsdWUgfAogICAgICAgfCAtLS0tLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0tIHwKICAgICAgIHwgZ2VuYmFua1xfZmlsZXMgfCBgIE5vbmUgYCB8CiAgICAgICB8IGRvbWVzdGljYXRlZFxfaW5wdXQgfCBgIHsidmFsdWVzIjogW3siaWQiOiAxNCwgInNyYyI6ICJoZGNhIn1dfSBgIHwKICAgICAgIHwgYXNzZW1ibHlcX3BsYW5cX25hbWUgfCBgICJUeXBlMnNSZXN0cmljdGlvbkFzc2VtYmx5IiBgIHwKICAgICAgIHwgdG9wb2xvZ3kgfCBgICJjaXJjdWxhciIgYCB8CiAgICAgICB8IGFkdiB8IGAgeyJlbnp5bWUiOiAiYXV0byIsICJ1c2VfZmlsZV9uYW1lc19hc19pZHMiOiB0cnVlfSBgIHwKICAgICAgIHwgY2hyb21JbmZvIHwgYCAiL3RtcC90bXB5MnlzdjZ0bi9nYWxheHktZGV2L3Rvb2wtZGF0YS9zaGFyZWQvdWNzYy9jaHJvbS8/LmxlbiIgYCB8CiAgICAgICB8IGRia2V5IHwgYCAiPyIgYCB8CiAgICAgICB8IFxfXF9pbnB1dFxfZXh0IHwgYCAiaW5wdXQiIGAgfAoKCgogICAgPC9kaXY+PC9kZXRhaWxzPgoKCjwvZGV0YWlscz4K')); + target.innerHTML = md.render(atob('IyMgVGVzdCBTdW1tYXJ5Cgo8ZGl2IGNsYXNzPSJwcm9ncmVzcyI+CiAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtYmFyIHByb2dyZXNzLWJhci1zdWNjZXNzIiBzdHlsZT0id2lkdGg6IDEwMC4wJSIgYXJpYS12YWx1ZW5vdz0iNyIgYXJpYS12YWx1ZW1pbj0iMCIgYXJpYS12YWx1ZW1heD0iNyIgZGF0YS10b2dnbGU9InRvb2x0aXAiIHRpdGxlPSI3IFBhc3NlZCI+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtYmFyIHByb2dyZXNzLWJhci13YXJuaW5nIiBzdHlsZT0id2lkdGg6IDAuMCUiIGFyaWEtdmFsdWVub3c9IjAiIGFyaWEtdmFsdWVtaW49IjAiIGFyaWEtdmFsdWVtYXg9IjciIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiB0aXRsZT0iMCBTa2lwcGVkIj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy1iYXIgcHJvZ3Jlc3MtYmFyLWRhbmdlciIgc3R5bGU9IndpZHRoOiAwLjAlIiBhcmlhLXZhbHVlbm93PSIwIiBhcmlhLXZhbHVlbWluPSIwIiBhcmlhLXZhbHVlbWF4PSI3IiB0aXRsZT0iMCBGYWlsZWQgb3IgRXJyb3JlZCI+CiAgPC9kaXY+CjwvZGl2PgoKfCBUZXN0IFN0YXRlIHwgQ291bnQgfAp8IC0tLS0tLS0tLS0gfCAtLS0tLSB8CnwgVG90YWwgICAgICB8IDcgfAp8IFBhc3NlZCAgICAgfCA3IHwKfCBFcnJvciAgICAgIHwgMCB8CnwgRmFpbHVyZSAgICB8IDAgfAp8IFNraXBwZWQgICAgfCAwIHwKCgo8ZGV0YWlscyA+PHN1bW1hcnk+UGFzc2VkIFRlc3RzPC9zdW1tYXJ5PgoKKiA8ZGV0YWlscyBjbGFzcz0icmNvcm5lcnMgbGlnaHQtZ3JlZW4iPjxzdW1tYXJ5IGNsYXNzPSJsaWdodC1ncmVlbiI+JiM5OTg5OyBjbG9uaW5nX3NpbXVsYXRpb24gKFRlc3QgIyAxKTwvc3VtbWFyeT48ZGl2IGNsYXNzPSJwYWRkZWQiPgoKICAgICoqQ29tbWFuZCBMaW5lOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIG1rZGlyICdvdXRkaXJfemlwJyAmJiBta2RpciAnb3V0ZGlyX2diJyAmJiBjcCAnL3RtcC90bXBjNmxpYzRwOS9maWxlcy8yL2IvZC9kYXRhc2V0XzJiZGY0MzZmLTUyY2MtNGM2ZS1hZmRiLTNmMDUxNjI5OTAwZi5kYXQnICdhc3NlbWJseV9jc3YuY3N2JyAmJiBweXRob24gJy9ob21lL3JraGFsZWQvZ2FsYXh5dG9vbHMvdG9vbHMvY2xvbmluZ19zaW11bGF0aW9uL2Nsb25pbmdfc2ltdWxhdGlvbi5weScgLS1wYXJ0c19maWxlcyAnL3RtcC90bXBjNmxpYzRwOS9maWxlcy80LzYvNS9kYXRhc2V0XzQ2NWE1M2FiLTg3NzAtNDUxNC1hOWIzLTIyN2Y3OTY0NmViNy5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy9hL2UvMi9kYXRhc2V0X2FlMjJkNWQyLWNkZTAtNDViNS05ZThlLTY3YjVjYmQ1ODZmYS5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy9lLzYvNC9kYXRhc2V0X2U2NDA1N2IxLTQzYjMtNDc4OC04ODkxLTc3YmNkMjk3MjIzYy5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy8xL2QvMS9kYXRhc2V0XzFkMWY5ODMyLWI1OGUtNDhjMi1iMWIzLTZjM2ZiMThlOTg5MC5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy82LzcvMy9kYXRhc2V0XzY3MzJmYzc5LTA4MWUtNGVkZi1iY2NjLWEwMDg3NTIwMTcyYS5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy9iLzEvNy9kYXRhc2V0X2IxN2M3YTQ5LTMxMjEtNDI5Mi05NWZmLTUxODkxYWEwNjZkMS5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy8yLzgvMS9kYXRhc2V0XzI4MTFmODE2LTg1MzItNGRkZC04ZTI5LTlhNmVkN2RhZDU0ZS5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy9lLzcvNC9kYXRhc2V0X2U3NGQwMTgyLTgwN2UtNDBhOC1iNjdhLWFjMDg4ZmMyZTAyYy5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy85L2QvYy9kYXRhc2V0XzlkYzU1Yzk4LTRhYjktNDI3Mi1hNjgwLTliMzEyOTk1NDM2Ny5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy85LzUvNi9kYXRhc2V0Xzk1Njk5ZGI5LTc3Y2YtNGFlMS04NDU0LTRmMjU1ZjNjYjYyYS5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy8xLzEvOS9kYXRhc2V0XzExOTc5YzI4LTgyZWUtNDNjNC05ZTQzLWYzNGNiNTQxZjk2Yi5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy8zL2YvNS9kYXRhc2V0XzNmNTNjYjg2LTJkMmItNDI5YS1iZjUxLWUyNzZiYmUzOTNmYS5kYXQnIC0tZG9tZXN0aWNhdGVkX3NlcSAnJyAtLWFzc2VtYmx5X2NzdiAnYXNzZW1ibHlfY3N2LmNzdicgLS1hc3NlbWJseV9wbGFuX25hbWUgJ1R5cGUyc1Jlc3RyaWN0aW9uQXNzZW1ibHknIC0tZmlsZV9uYW1lX21hcHBpbmcgJy90bXAvdG1wYzZsaWM0cDkvZmlsZXMvNC82LzUvZGF0YXNldF80NjVhNTNhYi04NzcwLTQ1MTQtYTliMy0yMjdmNzk2NDZlYjcuZGF0OnBhcnRfQS5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzL2EvZS8yL2RhdGFzZXRfYWUyMmQ1ZDItY2RlMC00NWI1LTllOGUtNjdiNWNiZDU4NmZhLmRhdDpwYXJ0X0IuZ2IsL3RtcC90bXBjNmxpYzRwOS9maWxlcy9lLzYvNC9kYXRhc2V0X2U2NDA1N2IxLTQzYjMtNDc4OC04ODkxLTc3YmNkMjk3MjIzYy5kYXQ6cGFydF9DLmdiLC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMS9kLzEvZGF0YXNldF8xZDFmOTgzMi1iNThlLTQ4YzItYjFiMy02YzNmYjE4ZTk4OTAuZGF0OnBhcnRfRC5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzLzYvNy8zL2RhdGFzZXRfNjczMmZjNzktMDgxZS00ZWRmLWJjY2MtYTAwODc1MjAxNzJhLmRhdDpwYXJ0X0UuZ2IsL3RtcC90bXBjNmxpYzRwOS9maWxlcy9iLzEvNy9kYXRhc2V0X2IxN2M3YTQ5LTMxMjEtNDI5Mi05NWZmLTUxODkxYWEwNjZkMS5kYXQ6cGFydF9GLmdiLC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMi84LzEvZGF0YXNldF8yODExZjgxNi04NTMyLTRkZGQtOGUyOS05YTZlZDdkYWQ1NGUuZGF0OnBhcnRfRy5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzL2UvNy80L2RhdGFzZXRfZTc0ZDAxODItODA3ZS00MGE4LWI2N2EtYWMwODhmYzJlMDJjLmRhdDpwYXJ0X0guZ2IsL3RtcC90bXBjNmxpYzRwOS9maWxlcy85L2QvYy9kYXRhc2V0XzlkYzU1Yzk4LTRhYjktNDI3Mi1hNjgwLTliMzEyOTk1NDM2Ny5kYXQ6cGFydF9JLmdiLC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvOS81LzYvZGF0YXNldF85NTY5OWRiOS03N2NmLTRhZTEtODQ1NC00ZjI1NWYzY2I2MmEuZGF0OnBhcnRfSi5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzLzEvMS85L2RhdGFzZXRfMTE5NzljMjgtODJlZS00M2M0LTllNDMtZjM0Y2I1NDFmOTZiLmRhdDpwYXJ0X0suZ2IsL3RtcC90bXBjNmxpYzRwOS9maWxlcy8zL2YvNS9kYXRhc2V0XzNmNTNjYjg2LTJkMmItNDI5YS1iZjUxLWUyNzZiYmUzOTNmYS5kYXQ6cGFydF9MLmdiJyAtLWZpbGVfbmFtZV9tYXBwaW5nX2RvbSAnJyAtLXVzZV9maWxlX25hbWVzX2FzX2lkICd0cnVlJyAtLW91dGRpcl9zaW11bGF0aW9uICdvdXRkaXJfemlwJyAtLW91dGRpcl9nYiAnb3V0ZGlyX2diJyAtLW91dHB1dF9zaW11bGF0aW9uICdvdXRwdXRfemlwLnppcCcgLS1lbnp5bWUgJ2F1dG8nIC0tdG9wb2xvZ3kgJ2NpcmN1bGFyJyAmJiBjcCAnb3V0cHV0X3ppcC56aXAnICcvdG1wL3RtcGM2bGljNHA5L2pvYl93b3JraW5nX2RpcmVjdG9yeS8wMDAvMTQvb3V0cHV0cy9kYXRhc2V0X2FjMmQ5OGU3LWZmNTUtNGE5NC05ZTc5LTg2MWIwN2Q2MzUyOC5kYXQnICYmIGVjaG8gREVCVUcgJiYgbHMgJ291dGRpcl9nYicKICAgICAgYGBgCiAgICAqKkV4aXQgQ29kZToqKgoKICAgICogYGBgY29uc29sZQogICAgICAwCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBFcnJvcjoqKgoKICAgICogYGBgY29uc29sZQogICAgICAKICAgICAgYXNzZW1ibHk6ICAgMCV8ICAgICAgICAgIHwgMC80IFswMDowMDw/LCA/aXQvcywgbm93PU5vbmVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKICAgICAgYXNzZW1ibHk6ICAgMCV8ICAgICAgICAgIHwgMC80IFswMDowMDw/LCA/aXQvcywgbm93PU5vbmVdCiAgICAgIGFzc2VtYmx5OiAgNTAlfOKWiOKWiOKWiOKWiOKWiCAgICAgfCAyLzQgWzAwOjAwPDAwOjAwLCAgMi4zOGl0L3MsIG5vdz1Ob25lXQogICAgICBhc3NlbWJseTogIDc1JXzilojilojilojilojilojilojilojilowgIHwgMy80IFswMDowMTwwMDowMCwgIDIuMThpdC9zLCBub3c9Tm9uZV0KICAgICAgYXNzZW1ibHk6IDEwMCV84paI4paI4paI4paI4paI4paI4paI4paI4paI4paIfCA0LzQgWzAwOjAyPDAwOjAwLCAgMS43N2l0L3MsIG5vdz1Ob25lXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICBgYGAKICAgICoqU3RhbmRhcmQgT3V0cHV0OioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSAgICAgICAyICAgICAgIDMgICAgICAgNCAgICAgICA1ICAgICAgIDYKICAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICBjb25zdHJ1Y3RfMyAgY29uc3RydWN0XzEgIHBhcnRfTCAgcGFydF9KICBwYXJ0X0sgICAgIE5hTiAgICAgTmFOCiAgICAgIGNvbnN0cnVjdF80ICBjb25zdHJ1Y3RfMiAgcGFydF9MICBwYXJ0X0ogIHBhcnRfSyAgICAgTmFOICAgICBOYU4KICAgICAgY29uc3RydWN0XzEgICAgICAgcGFydF9BICBwYXJ0X0IgIHBhcnRfQyAgcGFydF9EICBwYXJ0X0UgIHBhcnRfRgogICAgICBjb25zdHJ1Y3RfMiAgICAgICBwYXJ0X0EgIHBhcnRfRyAgcGFydF9IICBwYXJ0X0kgIHBhcnRfRiAgICAgTmFOCiAgICAgIFNpbXVsYXRpbmcgYXNzZW1ibHkgcGxhbiBhc3NhbWJseS4uLgogICAgICB7J2NhbmNlbGxlZF9hc3NlbWJsaWVzJzogMCwgJ2Vycm9yZWRfYXNzZW1ibGllcyc6IDAsICd2YWxpZF9hc3NlbWJsaWVzJzogNH0KICAgICAgR2VuZXJhdGluZyBhc3NlbWJsaWVzIHJlcG9ydHMuLi4KICAgICAgREVCVUcKICAgICAgY29uc3RydWN0XzEuZ2IKICAgICAgY29uc3RydWN0XzIuZ2IKICAgICAgY29uc3RydWN0XzMuZ2IKICAgICAgY29uc3RydWN0XzQuZ2IKCiAgICAgIGBgYAogICAgKipUcmFjZWJhY2s6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGBgYAogICAqKkpvYiBQYXJhbWV0ZXJzOioqCgogICAqICAgfCBKb2IgcGFyYW1ldGVyIHwgUGFyYW1ldGVyIHZhbHVlIHwKICAgICAgIHwgLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLSB8CiAgICAgICB8IGdlbmJhbmtcX2ZpbGVzIHwgYCB7InZhbHVlcyI6IFt7ImlkIjogMSwgInNyYyI6ICJoZGNhIn1dfSBgIHwKICAgICAgIHwgZG9tZXN0aWNhdGVkXF9pbnB1dCB8IGAgTm9uZSBgIHwKICAgICAgIHwgYXNzZW1ibHlcX3BsYW5cX25hbWUgfCBgICJUeXBlMnNSZXN0cmljdGlvbkFzc2VtYmx5IiBgIHwKICAgICAgIHwgdG9wb2xvZ3kgfCBgICJjaXJjdWxhciIgYCB8CiAgICAgICB8IGFkdiB8IGAgeyJlbnp5bWUiOiAiYXV0byIsICJ1c2VfZmlsZV9uYW1lc19hc19pZHMiOiB0cnVlfSBgIHwKICAgICAgIHwgY2hyb21JbmZvIHwgYCAiL3RtcC90bXBjNmxpYzRwOS9nYWxheHktZGV2L3Rvb2wtZGF0YS9zaGFyZWQvdWNzYy9jaHJvbS8/LmxlbiIgYCB8CiAgICAgICB8IGRia2V5IHwgYCAiPyIgYCB8CiAgICAgICB8IFxfXF9pbnB1dFxfZXh0IHwgYCAiaW5wdXQiIGAgfAoKCgogICAgPC9kaXY+PC9kZXRhaWxzPgoKCiogPGRldGFpbHMgY2xhc3M9InJjb3JuZXJzIGxpZ2h0LWdyZWVuIj48c3VtbWFyeSBjbGFzcz0ibGlnaHQtZ3JlZW4iPiYjOTk4OTsgY2xvbmluZ19zaW11bGF0aW9uIChUZXN0ICMgMik8L3N1bW1hcnk+PGRpdiBjbGFzcz0icGFkZGVkIj4KCiAgICAqKkNvbW1hbmQgTGluZToqKgoKICAgICogYGBgY29uc29sZQogICAgICBta2RpciAnb3V0ZGlyX3ppcCcgJiYgbWtkaXIgJ291dGRpcl9nYicgJiYgY3AgJy90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMS9kLzYvZGF0YXNldF8xZDYyNGMyNC1lODY0LTQ2M2EtOWZkMy0wYzYzZmQ0NmNiZDIuZGF0JyAnYXNzZW1ibHlfY3N2LmNzdicgJiYgcHl0aG9uICcvaG9tZS9ya2hhbGVkL2dhbGF4eXRvb2xzL3Rvb2xzL2Nsb25pbmdfc2ltdWxhdGlvbi9jbG9uaW5nX3NpbXVsYXRpb24ucHknIC0tcGFydHNfZmlsZXMgJy90bXAvdG1wYzZsaWM0cDkvZmlsZXMvNS8wLzUvZGF0YXNldF81MDVhYWZhMi01ZTljLTQ0YmItOWQyNi0zZjNlNjI0OGZjOWIuZGF0JyAtLWRvbWVzdGljYXRlZF9zZXEgJycgLS1hc3NlbWJseV9jc3YgJ2Fzc2VtYmx5X2Nzdi5jc3YnIC0tYXNzZW1ibHlfcGxhbl9uYW1lICdHaWJzb25Bc3NlbWJseScgLS1maWxlX25hbWVfbWFwcGluZyAnL3RtcC90bXBjNmxpYzRwOS9maWxlcy81LzAvNS9kYXRhc2V0XzUwNWFhZmEyLTVlOWMtNDRiYi05ZDI2LTNmM2U2MjQ4ZmM5Yi5kYXQ6Z2lic29uX3NlcXVlbmNlcy5mYScgLS1maWxlX25hbWVfbWFwcGluZ19kb20gJycgLS11c2VfZmlsZV9uYW1lc19hc19pZCAndHJ1ZScgLS1vdXRkaXJfc2ltdWxhdGlvbiAnb3V0ZGlyX3ppcCcgLS1vdXRkaXJfZ2IgJ291dGRpcl9nYicgLS1vdXRwdXRfc2ltdWxhdGlvbiAnb3V0cHV0X3ppcC56aXAnIC0tZW56eW1lICdhdXRvJyAtLXRvcG9sb2d5ICdjaXJjdWxhcicgJiYgY3AgJ291dHB1dF96aXAuemlwJyAnL3RtcC90bXBjNmxpYzRwOS9qb2Jfd29ya2luZ19kaXJlY3RvcnkvMDAwLzE3L291dHB1dHMvZGF0YXNldF8wZjYxNzE5Mi1lNjI1LTRkOWUtODM1OC0wYjliMWIwYWEwMjQuZGF0JyAmJiBlY2hvIERFQlVHICYmIGxzICdvdXRkaXJfZ2InCiAgICAgIGBgYAogICAgKipFeGl0IENvZGU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgMAogICAgICBgYGAKICAgICoqU3RhbmRhcmQgRXJyb3I6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGFzc2VtYmx5OiAgIDAlfCAgICAgICAgICB8IDAvNSBbMDA6MDA8PywgP2l0L3MsIG5vdz1Ob25lXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiAgICAgIGFzc2VtYmx5OiAgIDAlfCAgICAgICAgICB8IDAvNSBbMDA6MDA8PywgP2l0L3MsIG5vdz1Ob25lXQogICAgICBhc3NlbWJseTogIDQwJXzilojilojilojiloggICAgICB8IDIvNSBbMDA6MDA8MDA6MDAsICA0LjI0aXQvcywgbm93PU5vbmVdCiAgICAgIGFzc2VtYmx5OiAgNjAlfOKWiOKWiOKWiOKWiOKWiOKWiCAgICB8IDMvNSBbMDA6MDA8MDA6MDAsICA0LjI3aXQvcywgbm93PU5vbmVdCiAgICAgIGFzc2VtYmx5OiAgODAlfOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiCAgfCA0LzUgWzAwOjAwPDAwOjAwLCAgNC4yOGl0L3MsIG5vdz1Ob25lXQogICAgICBhc3NlbWJseTogMTAwJXzilojilojilojilojilojilojilojilojilojiloh8IDUvNSBbMDA6MDE8MDA6MDAsICAzLjQ4aXQvcywgbm93PU5vbmVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBPdXRwdXQ6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgICAgICAgICAgICAgICAgICAgMSAgICAgICAyICAgICAgIDMgICAgICAgIDQgICAgICAgIDUKICAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgY29uc3RydWN0ICAgICBwYXJ0cyAgICAgTmFOICAgICBOYU4gICAgICBOYU4gICAgICBOYU4KICAgICAgY29uc3RydWN0XzEgIEZyYWdfMSAgRnJhZ18yICBGcmFnXzMgICBGcmFnXzQgICBGcmFnXzUKICAgICAgY29uc3RydWN0XzIgIEZyYWdfMSAgRnJhZ18yICBGcmFnXzMgIEZyYWdfNGIgICBGcmFnXzUKICAgICAgY29uc3RydWN0XzMgIEZyYWdfMSAgRnJhZ18yICBGcmFnXzMgIEZyYWdfNGMgIEZyYWdfNWIKICAgICAgY29uc3RydWN0XzQgIEZyYWdfMSAgRnJhZ18yICBGcmFnXzMgICBGcmFnXzQgICAgICBOYU4KICAgICAgY29uc3RydWN0XzUgIEZyYWdfMSAgRnJhZ18yICBGcmFnXzMgICBGcmFnXzQgIEZyYWdfNGIKICAgICAgU2ltdWxhdGluZyBhc3NlbWJseSBwbGFuIGFzc2FtYmx5Li4uCiAgICAgIHsnY2FuY2VsbGVkX2Fzc2VtYmxpZXMnOiAwLCAnZXJyb3JlZF9hc3NlbWJsaWVzJzogMiwgJ3ZhbGlkX2Fzc2VtYmxpZXMnOiAzfQogICAgICBHZW5lcmF0aW5nIGFzc2VtYmxpZXMgcmVwb3J0cy4uLgogICAgICBERUJVRwogICAgICBjb25zdHJ1Y3RfMS5nYgogICAgICBjb25zdHJ1Y3RfMi5nYgogICAgICBjb25zdHJ1Y3RfMy5nYgoKICAgICAgYGBgCiAgICAqKlRyYWNlYmFjazoqKgoKICAgICogYGBgY29uc29sZQogICAgICAKICAgICAgYGBgCiAgICoqSm9iIFBhcmFtZXRlcnM6KioKCiAgICogICB8IEpvYiBwYXJhbWV0ZXIgfCBQYXJhbWV0ZXIgdmFsdWUgfAogICAgICAgfCAtLS0tLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0tIHwKICAgICAgIHwgZ2VuYmFua1xfZmlsZXMgfCBgIHsidmFsdWVzIjogW3siaWQiOiAzLCAic3JjIjogImhkY2EifV19IGAgfAogICAgICAgfCBkb21lc3RpY2F0ZWRcX2lucHV0IHwgYCBOb25lIGAgfAogICAgICAgfCBhc3NlbWJseVxfcGxhblxfbmFtZSB8IGAgIkdpYnNvbkFzc2VtYmx5IiBgIHwKICAgICAgIHwgdG9wb2xvZ3kgfCBgICJjaXJjdWxhciIgYCB8CiAgICAgICB8IGFkdiB8IGAgeyJlbnp5bWUiOiAiYXV0byIsICJ1c2VfZmlsZV9uYW1lc19hc19pZHMiOiB0cnVlfSBgIHwKICAgICAgIHwgY2hyb21JbmZvIHwgYCAiL3RtcC90bXBjNmxpYzRwOS9nYWxheHktZGV2L3Rvb2wtZGF0YS9zaGFyZWQvdWNzYy9jaHJvbS8/LmxlbiIgYCB8CiAgICAgICB8IGRia2V5IHwgYCAiPyIgYCB8CiAgICAgICB8IFxfXF9pbnB1dFxfZXh0IHwgYCAiaW5wdXQiIGAgfAoKCgogICAgPC9kaXY+PC9kZXRhaWxzPgoKCiogPGRldGFpbHMgY2xhc3M9InJjb3JuZXJzIGxpZ2h0LWdyZWVuIj48c3VtbWFyeSBjbGFzcz0ibGlnaHQtZ3JlZW4iPiYjOTk4OTsgY2xvbmluZ19zaW11bGF0aW9uIChUZXN0ICMgMyk8L3N1bW1hcnk+PGRpdiBjbGFzcz0icGFkZGVkIj4KCiAgICAqKkNvbW1hbmQgTGluZToqKgoKICAgICogYGBgY29uc29sZQogICAgICBta2RpciAnb3V0ZGlyX3ppcCcgJiYgbWtkaXIgJ291dGRpcl9nYicgJiYgY3AgJy90bXAvdG1wYzZsaWM0cDkvZmlsZXMvYS8xL2YvZGF0YXNldF9hMWY5ODliOS1lNzlmLTRiZDctOWNmMy02NjY3NWMxZDFlOTQuZGF0JyAnYXNzZW1ibHlfY3N2LmNzdicgJiYgcHl0aG9uICcvaG9tZS9ya2hhbGVkL2dhbGF4eXRvb2xzL3Rvb2xzL2Nsb25pbmdfc2ltdWxhdGlvbi9jbG9uaW5nX3NpbXVsYXRpb24ucHknIC0tcGFydHNfZmlsZXMgJy90bXAvdG1wYzZsaWM0cDkvZmlsZXMvYS82LzEvZGF0YXNldF9hNjE3YWUxZi03MGUzLTQ4NzMtYmRjYy1mMjI2OGZmZWFhZDQuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvOS80LzEvZGF0YXNldF85NDFiNGU5NS02MDBhLTQ4NWMtYTNmYS0xZGNmMGRlZmRkNzYuZGF0JyAtLWRvbWVzdGljYXRlZF9zZXEgJycgLS1hc3NlbWJseV9jc3YgJ2Fzc2VtYmx5X2Nzdi5jc3YnIC0tYXNzZW1ibHlfcGxhbl9uYW1lICdMaWdhc2VDeWNsaW5nUmVhY3Rpb25Bc3NlbWJseScgLS1maWxlX25hbWVfbWFwcGluZyAnL3RtcC90bXBjNmxpYzRwOS9maWxlcy9hLzYvMS9kYXRhc2V0X2E2MTdhZTFmLTcwZTMtNDg3My1iZGNjLWYyMjY4ZmZlYWFkNC5kYXQ6UkZQX0dGUF9wbGFzbWlkX0JPcy5mYSwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzLzkvNC8xL2RhdGFzZXRfOTQxYjRlOTUtNjAwYS00ODVjLWEzZmEtMWRjZjBkZWZkZDc2LmRhdDpSRlBfR0ZQX3BsYXNtaWRfcGFydHMuZmEnIC0tZmlsZV9uYW1lX21hcHBpbmdfZG9tICcnIC0tdXNlX2ZpbGVfbmFtZXNfYXNfaWQgJ3RydWUnIC0tb3V0ZGlyX3NpbXVsYXRpb24gJ291dGRpcl96aXAnIC0tb3V0ZGlyX2diICdvdXRkaXJfZ2InIC0tb3V0cHV0X3NpbXVsYXRpb24gJ291dHB1dF96aXAuemlwJyAtLWVuenltZSAnYXV0bycgLS10b3BvbG9neSAnY2lyY3VsYXInICYmIGNwICdvdXRwdXRfemlwLnppcCcgJy90bXAvdG1wYzZsaWM0cDkvam9iX3dvcmtpbmdfZGlyZWN0b3J5LzAwMC8yMS9vdXRwdXRzL2RhdGFzZXRfODI3ZTY0YTEtN2Y4NC00ZjllLTg0NjgtZWFiYjM2ODRlZmEzLmRhdCcKICAgICAgYGBgCiAgICAqKkV4aXQgQ29kZToqKgoKICAgICogYGBgY29uc29sZQogICAgICAwCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBFcnJvcjoqKgoKICAgICogYGBgY29uc29sZQogICAgICAKICAgICAgYXNzZW1ibHk6ICAgMCV8ICAgICAgICAgIHwgMC8yIFswMDowMDw/LCA/aXQvcywgbm93PU5vbmVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKICAgICAgYXNzZW1ibHk6ICAgMCV8ICAgICAgICAgIHwgMC8yIFswMDowMDw/LCA/aXQvcywgbm93PU5vbmVdCiAgICAgIGFzc2VtYmx5OiAxMDAlfOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiHwgMi8yIFswMDowMDwwMDowMCwgIDIuMTZpdC9zLCBub3c9Tm9uZV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgYGBgCiAgICAqKlN0YW5kYXJkIE91dHB1dDoqKgoKICAgICogYGBgY29uc29sZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxICAgLi4uICAgICAgICAgICAxNAogICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uICAgICAgICAgICAgIAogICAgICBDb25zdHJ1Y3QxICAgICAgICAgUkZQX0dGUF9CT18xMDIzMiAgLi4uICBwN19iYWNrYm9uZQogICAgICBDb25zdHJ1Y3QyX2ZsYXdlZCAgUkZQX0dGUF9CT18xMDIzMiAgLi4uICAgICAgICAgIE5hTgoKICAgICAgWzIgcm93cyB4IDE0IGNvbHVtbnNdCiAgICAgIFNpbXVsYXRpbmcgYXNzZW1ibHkgcGxhbiBhc3NhbWJseS4uLgogICAgICB7J2NhbmNlbGxlZF9hc3NlbWJsaWVzJzogMCwgJ2Vycm9yZWRfYXNzZW1ibGllcyc6IDIsICd2YWxpZF9hc3NlbWJsaWVzJzogMH0KICAgICAgR2VuZXJhdGluZyBhc3NlbWJsaWVzIHJlcG9ydHMuLi4KCiAgICAgIGBgYAogICAgKipUcmFjZWJhY2s6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGBgYAogICAqKkpvYiBQYXJhbWV0ZXJzOioqCgogICAqICAgfCBKb2IgcGFyYW1ldGVyIHwgUGFyYW1ldGVyIHZhbHVlIHwKICAgICAgIHwgLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLSB8CiAgICAgICB8IGdlbmJhbmtcX2ZpbGVzIHwgYCB7InZhbHVlcyI6IFt7ImlkIjogNSwgInNyYyI6ICJoZGNhIn1dfSBgIHwKICAgICAgIHwgZG9tZXN0aWNhdGVkXF9pbnB1dCB8IGAgTm9uZSBgIHwKICAgICAgIHwgYXNzZW1ibHlcX3BsYW5cX25hbWUgfCBgICJMaWdhc2VDeWNsaW5nUmVhY3Rpb25Bc3NlbWJseSIgYCB8CiAgICAgICB8IHRvcG9sb2d5IHwgYCAiY2lyY3VsYXIiIGAgfAogICAgICAgfCBhZHYgfCBgIHsiZW56eW1lIjogImF1dG8iLCAidXNlX2ZpbGVfbmFtZXNfYXNfaWRzIjogdHJ1ZX0gYCB8CiAgICAgICB8IGNocm9tSW5mbyB8IGAgIi90bXAvdG1wYzZsaWM0cDkvZ2FsYXh5LWRldi90b29sLWRhdGEvc2hhcmVkL3Vjc2MvY2hyb20vPy5sZW4iIGAgfAogICAgICAgfCBkYmtleSB8IGAgIj8iIGAgfAogICAgICAgfCBcX1xfaW5wdXRcX2V4dCB8IGAgImlucHV0IiBgIHwKCgoKICAgIDwvZGl2PjwvZGV0YWlscz4KCgoqIDxkZXRhaWxzIGNsYXNzPSJyY29ybmVycyBsaWdodC1ncmVlbiI+PHN1bW1hcnkgY2xhc3M9ImxpZ2h0LWdyZWVuIj4mIzk5ODk7IGNsb25pbmdfc2ltdWxhdGlvbiAoVGVzdCAjIDQpPC9zdW1tYXJ5PjxkaXYgY2xhc3M9InBhZGRlZCI+CgogICAgKipDb21tYW5kIExpbmU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgbWtkaXIgJ291dGRpcl96aXAnICYmIG1rZGlyICdvdXRkaXJfZ2InICYmIGNwICcvdG1wL3RtcGM2bGljNHA5L2ZpbGVzLzYvYi9lL2RhdGFzZXRfNmJlMzhmN2QtYjVjNC00MzA4LTg1ZDEtM2JkNmI0ZGFlNGZjLmRhdCcgJ2Fzc2VtYmx5X2Nzdi5jc3YnICYmIHB5dGhvbiAnL2hvbWUvcmtoYWxlZC9nYWxheHl0b29scy90b29scy9jbG9uaW5nX3NpbXVsYXRpb24vY2xvbmluZ19zaW11bGF0aW9uLnB5JyAtLXBhcnRzX2ZpbGVzICcvdG1wL3RtcGM2bGljNHA5L2ZpbGVzL2MvYi9hL2RhdGFzZXRfY2JhOWIyOTctNGRmZS00MDYzLTg1MTAtNmM0OGExYjZiN2ExLmRhdCwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzLzMvZS84L2RhdGFzZXRfM2U4ZGZjZTEtN2EwNS00NjY1LTkyNzctMzg4ZTNhYTQyNTgxLmRhdCwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzL2EvNS9kL2RhdGFzZXRfYTVkMDkzYzItMDA4Ny00NTNlLWI3ZDEtZDk0YTdjYjY2NGUwLmRhdCwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzLzAvZS9jL2RhdGFzZXRfMGVjNzJjYzAtMmE5NS00NzRiLWFhNzctN2E0MzZkYWQ2YTliLmRhdCwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzL2QvMi83L2RhdGFzZXRfZDI3MjE5OWYtMmUxYi00OWUxLWE1OTctNWZmYTExNTA3ZTgzLmRhdCcgLS1kb21lc3RpY2F0ZWRfc2VxICcnIC0tYXNzZW1ibHlfY3N2ICdhc3NlbWJseV9jc3YuY3N2JyAtLWFzc2VtYmx5X3BsYW5fbmFtZSAnQkFTSUNBc3NlbWJseScgLS1maWxlX25hbWVfbWFwcGluZyAnL3RtcC90bXBjNmxpYzRwOS9maWxlcy9jL2IvYS9kYXRhc2V0X2NiYTliMjk3LTRkZmUtNDA2My04NTEwLTZjNDhhMWI2YjdhMS5kYXQ6R0ZQLmdiLC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMy9lLzgvZGF0YXNldF8zZThkZmNlMS03YTA1LTQ2NjUtOTI3Ny0zODhlM2FhNDI1ODEuZGF0OnAxNUFfa2FuLmdiLC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvYS81L2QvZGF0YXNldF9hNWQwOTNjMi0wMDg3LTQ1M2UtYjdkMS1kOTRhN2NiNjY0ZTAuZGF0OnByb21vdGVyLmdiLC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMC9lL2MvZGF0YXNldF8wZWM3MmNjMC0yYTk1LTQ3NGItYWE3Ny03YTQzNmRhZDZhOWIuZGF0OlJGUC5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzL2QvMi83L2RhdGFzZXRfZDI3MjE5OWYtMmUxYi00OWUxLWE1OTctNWZmYTExNTA3ZTgzLmRhdDpvbGlnb3MuZmEnIC0tZmlsZV9uYW1lX21hcHBpbmdfZG9tICcnIC0tdXNlX2ZpbGVfbmFtZXNfYXNfaWQgJ3RydWUnIC0tb3V0ZGlyX3NpbXVsYXRpb24gJ291dGRpcl96aXAnIC0tb3V0ZGlyX2diICdvdXRkaXJfZ2InIC0tb3V0cHV0X3NpbXVsYXRpb24gJ291dHB1dF96aXAuemlwJyAtLWVuenltZSAnYXV0bycgLS10b3BvbG9neSAnY2lyY3VsYXInICYmIGNwICdvdXRwdXRfemlwLnppcCcgJy90bXAvdG1wYzZsaWM0cDkvam9iX3dvcmtpbmdfZGlyZWN0b3J5LzAwMC8yOC9vdXRwdXRzL2RhdGFzZXRfNzQzNTMzNWUtODk2ZS00N2Y0LTg5YzctM2E2YzJjMjVmMjQ3LmRhdCcKICAgICAgYGBgCiAgICAqKkV4aXQgQ29kZToqKgoKICAgICogYGBgY29uc29sZQogICAgICAwCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBFcnJvcjoqKgoKICAgICogYGBgY29uc29sZQogICAgICAKICAgICAgYXNzZW1ibHk6ICAgMCV8ICAgICAgICAgIHwgMC8xMCBbMDA6MDA8PywgP2l0L3MsIG5vdz1Ob25lXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogICAgICBhc3NlbWJseTogICAwJXwgICAgICAgICAgfCAwLzggWzAwOjAwPD8sID9pdC9zLCBub3c9Tm9uZV0KICAgICAgYXNzZW1ibHk6ICA3NSV84paI4paI4paI4paI4paI4paI4paI4paMICB8IDYvOCBbMDA6MDA8MDA6MDAsIDUwLjA0aXQvcywgbm93PU5vbmVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBPdXRwdXQ6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgU2ltdWxhdGluZyBhc3NlbWJseSBwbGFuIGFzc2FtYmx5Li4uCiAgICAgIHsnY2FuY2VsbGVkX2Fzc2VtYmxpZXMnOiAyLCAnZXJyb3JlZF9hc3NlbWJsaWVzJzogOCwgJ3ZhbGlkX2Fzc2VtYmxpZXMnOiAwfQogICAgICBHZW5lcmF0aW5nIGFzc2VtYmxpZXMgcmVwb3J0cy4uLgoKICAgICAgYGBgCiAgICAqKlRyYWNlYmFjazoqKgoKICAgICogYGBgY29uc29sZQogICAgICAKICAgICAgYGBgCiAgICoqSm9iIFBhcmFtZXRlcnM6KioKCiAgICogICB8IEpvYiBwYXJhbWV0ZXIgfCBQYXJhbWV0ZXIgdmFsdWUgfAogICAgICAgfCAtLS0tLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0tIHwKICAgICAgIHwgZ2VuYmFua1xfZmlsZXMgfCBgIHsidmFsdWVzIjogW3siaWQiOiA3LCAic3JjIjogImhkY2EifV19IGAgfAogICAgICAgfCBkb21lc3RpY2F0ZWRcX2lucHV0IHwgYCBOb25lIGAgfAogICAgICAgfCBhc3NlbWJseVxfcGxhblxfbmFtZSB8IGAgIkJBU0lDQXNzZW1ibHkiIGAgfAogICAgICAgfCB0b3BvbG9neSB8IGAgImNpcmN1bGFyIiBgIHwKICAgICAgIHwgYWR2IHwgYCB7ImVuenltZSI6ICJhdXRvIiwgInVzZV9maWxlX25hbWVzX2FzX2lkcyI6IHRydWV9IGAgfAogICAgICAgfCBjaHJvbUluZm8gfCBgICIvdG1wL3RtcGM2bGljNHA5L2dhbGF4eS1kZXYvdG9vbC1kYXRhL3NoYXJlZC91Y3NjL2Nocm9tLz8ubGVuIiBgIHwKICAgICAgIHwgZGJrZXkgfCBgICI/IiBgIHwKICAgICAgIHwgXF9cX2lucHV0XF9leHQgfCBgICJpbnB1dCIgYCB8CgoKCiAgICA8L2Rpdj48L2RldGFpbHM+CgoKKiA8ZGV0YWlscyBjbGFzcz0icmNvcm5lcnMgbGlnaHQtZ3JlZW4iPjxzdW1tYXJ5IGNsYXNzPSJsaWdodC1ncmVlbiI+JiM5OTg5OyBjbG9uaW5nX3NpbXVsYXRpb24gKFRlc3QgIyA1KTwvc3VtbWFyeT48ZGl2IGNsYXNzPSJwYWRkZWQiPgoKICAgICoqQ29tbWFuZCBMaW5lOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIG1rZGlyICdvdXRkaXJfemlwJyAmJiBta2RpciAnb3V0ZGlyX2diJyAmJiBjcCAnL3RtcC90bXBjNmxpYzRwOS9maWxlcy84L2UvMi9kYXRhc2V0XzhlMmRjYWFiLTNkZDctNDhjNC05MjBlLWJkZmZhYWQzOTc5My5kYXQnICdhc3NlbWJseV9jc3YuY3N2JyAmJiBweXRob24gJy9ob21lL3JraGFsZWQvZ2FsYXh5dG9vbHMvdG9vbHMvY2xvbmluZ19zaW11bGF0aW9uL2Nsb25pbmdfc2ltdWxhdGlvbi5weScgLS1wYXJ0c19maWxlcyAnL3RtcC90bXBjNmxpYzRwOS9maWxlcy9kLzQvMi9kYXRhc2V0X2Q0MjcxYTQzLTg3MjItNDM0NC05NTYyLTAwZTlhMzZkMDdlNS5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy8yLzQvOC9kYXRhc2V0XzI0ODRiYmZiLWQ0YjAtNGM4Yi1hNTdmLTY3NTYyNWY5ODc1My5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy84LzMvZi9kYXRhc2V0XzgzZjAzNWY3LTI1ZmMtNGE1OS04M2IyLWQzNzdlM2NkNTlhZC5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy81L2EvYS9kYXRhc2V0XzVhYTdiMTllLTBhZDEtNDNiMS05MDgzLTk1NDA2N2ZmMjAxMC5kYXQsL3RtcC90bXBjNmxpYzRwOS9maWxlcy9kLzYvNC9kYXRhc2V0X2Q2NDZiNzFjLTUzOTMtNDI5MS1iY2M1LTdkNmNiZTIyZjA1NS5kYXQnIC0tZG9tZXN0aWNhdGVkX3NlcSAnJyAtLWFzc2VtYmx5X2NzdiAnYXNzZW1ibHlfY3N2LmNzdicgLS1hc3NlbWJseV9wbGFuX25hbWUgJ0Jpb0JyaWNrU3RhbmRhcmRBc3NlbWJseScgLS1maWxlX25hbWVfbWFwcGluZyAnL3RtcC90bXBjNmxpYzRwOS9maWxlcy9kLzQvMi9kYXRhc2V0X2Q0MjcxYTQzLTg3MjItNDM0NC05NTYyLTAwZTlhMzZkMDdlNS5kYXQ6QkJhX0UwMDQwX0dGUC5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzLzIvNC84L2RhdGFzZXRfMjQ4NGJiZmItZDRiMC00YzhiLWE1N2YtNjc1NjI1Zjk4NzUzLmRhdDpCQmFfSjIzMTE5X3Byb20uZ2IsL3RtcC90bXBjNmxpYzRwOS9maWxlcy84LzMvZi9kYXRhc2V0XzgzZjAzNWY3LTI1ZmMtNGE1OS04M2IyLWQzNzdlM2NkNTlhZC5kYXQ6QkJhX0oyMzExOV9wcm9tX2ZsYXdlZC5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzLzUvYS9hL2RhdGFzZXRfNWFhN2IxOWUtMGFkMS00M2IxLTkwODMtOTU0MDY3ZmYyMDEwLmRhdDpCQmFfSjYxMDQ4X3Rlcm0uZ2IsL3RtcC90bXBjNmxpYzRwOS9maWxlcy9kLzYvNC9kYXRhc2V0X2Q2NDZiNzFjLTUzOTMtNDI5MS1iY2M1LTdkNmNiZTIyZjA1NS5kYXQ6QkJhX0s2MTEwOTRfYmFyLmdiJyAtLWZpbGVfbmFtZV9tYXBwaW5nX2RvbSAnJyAtLXVzZV9maWxlX25hbWVzX2FzX2lkICd0cnVlJyAtLW91dGRpcl9zaW11bGF0aW9uICdvdXRkaXJfemlwJyAtLW91dGRpcl9nYiAnb3V0ZGlyX2diJyAtLW91dHB1dF9zaW11bGF0aW9uICdvdXRwdXRfemlwLnppcCcgLS1lbnp5bWUgJ2F1dG8nIC0tdG9wb2xvZ3kgJ2NpcmN1bGFyJyAmJiBjcCAnb3V0cHV0X3ppcC56aXAnICcvdG1wL3RtcGM2bGljNHA5L2pvYl93b3JraW5nX2RpcmVjdG9yeS8wMDAvMzUvb3V0cHV0cy9kYXRhc2V0XzgwODZjOGMwLTI0YjgtNGE1MS04NGRiLTZiNGM5YjBlNzZkMC5kYXQnCiAgICAgIGBgYAogICAgKipFeGl0IENvZGU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgMAogICAgICBgYGAKICAgICoqU3RhbmRhcmQgRXJyb3I6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGFzc2VtYmx5OiAgIDAlfCAgICAgICAgICB8IDAvMyBbMDA6MDA8PywgP2l0L3MsIG5vdz1Ob25lXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCiAgICAgIGFzc2VtYmx5OiAgIDAlfCAgICAgICAgICB8IDAvMyBbMDA6MDA8PywgP2l0L3MsIG5vdz1Ob25lXQogICAgICBhc3NlbWJseTogIDY3JXzilojilojilojilojilojilojilosgICB8IDIvMyBbMDA6MDA8MDA6MDAsICAyLjEwaXQvcywgbm93PU5vbmVdCiAgICAgIGFzc2VtYmx5OiAxMDAlfOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiHwgMy8zIFswMDowMTwwMDowMCwgIDEuNzJpdC9zLCBub3c9Tm9uZV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgYGBgCiAgICAqKlN0YW5kYXJkIE91dHB1dDoqKgoKICAgICogYGBgY29uc29sZQogICAgICBTaW11bGF0aW5nIGFzc2VtYmx5IHBsYW4gYXNzYW1ibHkuLi4KICAgICAgeydjYW5jZWxsZWRfYXNzZW1ibGllcyc6IDAsICdlcnJvcmVkX2Fzc2VtYmxpZXMnOiAwLCAndmFsaWRfYXNzZW1ibGllcyc6IDN9CiAgICAgIEdlbmVyYXRpbmcgYXNzZW1ibGllcyByZXBvcnRzLi4uCgogICAgICBgYGAKICAgICoqVHJhY2ViYWNrOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIAogICAgICBgYGAKICAgKipKb2IgUGFyYW1ldGVyczoqKgoKICAgKiAgIHwgSm9iIHBhcmFtZXRlciB8IFBhcmFtZXRlciB2YWx1ZSB8CiAgICAgICB8IC0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0gfAogICAgICAgfCBnZW5iYW5rXF9maWxlcyB8IGAgeyJ2YWx1ZXMiOiBbeyJpZCI6IDksICJzcmMiOiAiaGRjYSJ9XX0gYCB8CiAgICAgICB8IGRvbWVzdGljYXRlZFxfaW5wdXQgfCBgIE5vbmUgYCB8CiAgICAgICB8IGFzc2VtYmx5XF9wbGFuXF9uYW1lIHwgYCAiQmlvQnJpY2tTdGFuZGFyZEFzc2VtYmx5IiBgIHwKICAgICAgIHwgdG9wb2xvZ3kgfCBgICJjaXJjdWxhciIgYCB8CiAgICAgICB8IGFkdiB8IGAgeyJlbnp5bWUiOiAiYXV0byIsICJ1c2VfZmlsZV9uYW1lc19hc19pZHMiOiB0cnVlfSBgIHwKICAgICAgIHwgY2hyb21JbmZvIHwgYCAiL3RtcC90bXBjNmxpYzRwOS9nYWxheHktZGV2L3Rvb2wtZGF0YS9zaGFyZWQvdWNzYy9jaHJvbS8/LmxlbiIgYCB8CiAgICAgICB8IGRia2V5IHwgYCAiPyIgYCB8CiAgICAgICB8IFxfXF9pbnB1dFxfZXh0IHwgYCAiaW5wdXQiIGAgfAoKCgogICAgPC9kaXY+PC9kZXRhaWxzPgoKCiogPGRldGFpbHMgY2xhc3M9InJjb3JuZXJzIGxpZ2h0LWdyZWVuIj48c3VtbWFyeSBjbGFzcz0ibGlnaHQtZ3JlZW4iPiYjOTk4OTsgY2xvbmluZ19zaW11bGF0aW9uIChUZXN0ICMgNik8L3N1bW1hcnk+PGRpdiBjbGFzcz0icGFkZGVkIj4KCiAgICAqKkNvbW1hbmQgTGluZToqKgoKICAgICogYGBgY29uc29sZQogICAgICBta2RpciAnb3V0ZGlyX3ppcCcgJiYgbWtkaXIgJ291dGRpcl9nYicgJiYgY3AgJy90bXAvdG1wYzZsaWM0cDkvZmlsZXMvOS84L2UvZGF0YXNldF85OGUxYjg2Mi0yZDNlLTQxNjQtYWVjZi01NmJkNDY0ZDBmMTEuZGF0JyAnYXNzZW1ibHlfY3N2LmNzdicgJiYgcHl0aG9uICcvaG9tZS9ya2hhbGVkL2dhbGF4eXRvb2xzL3Rvb2xzL2Nsb25pbmdfc2ltdWxhdGlvbi9jbG9uaW5nX3NpbXVsYXRpb24ucHknIC0tcGFydHNfZmlsZXMgJy90bXAvdG1wYzZsaWM0cDkvZmlsZXMvYi82LzYvZGF0YXNldF9iNjZhZmE1Yi02ODJkLTQ5ZjgtOTc1My1jNzhjMzU2ZmYyMjguZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvNC82L2UvZGF0YXNldF80NmVhM2ZiOS04ZTYwLTQyZjMtYjdkMy1jMWE2ZWRjMTgzN2MuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvOC8zLzUvZGF0YXNldF84MzU4ZTY1Ny0wZTYxLTQ4NmItYWRiNC1lODg2ZjBmMzU0YmEuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvNC9jL2YvZGF0YXNldF80Y2ZiYjJkZC1jNWE1LTQyZmUtODg5Yi1kYTY1MTA0MjJiNzIuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMi84L2MvZGF0YXNldF8yOGM5NjQ0NC1hYmZiLTQxNzMtOTcwZS1lODk1MTQ2YWVmOTcuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvZi81LzQvZGF0YXNldF9mNTRjN2ExNi1hYzZmLTQyYzItOWI2Yy0zNDVhZjMwNTBkODMuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMi9hLzMvZGF0YXNldF8yYTMzMGViNy1kMDMzLTRlNzUtYmU3YS00NDczNzQ4YTZmMmQuZGF0JyAtLWRvbWVzdGljYXRlZF9zZXEgJy90bXAvdG1wYzZsaWM0cDkvZmlsZXMvNi84LzcvZGF0YXNldF82ODc3YzIyNy0yYzcwLTQwODAtOTYyZS1lZTE4NTVkZDc5N2YuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvZS8yLzEvZGF0YXNldF9lMjEyMjYyYy1hMzM2LTQyNjMtYTA3Ni0yY2QzMDA1OTBiYTQuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvNC8xLzEvZGF0YXNldF80MTEyZDU0NS03ZTM3LTRhNmUtOGNhOC03YzFiOGY5MGE3MWUuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvYi8zLzEvZGF0YXNldF9iMzE5NTVjZS1lYTQ0LTRlM2EtODZhMS02YWViYzQ3YmU4NDEuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvZC80L2QvZGF0YXNldF9kNGQxNDM4OC01NWQzLTRhZWMtODEwZC1hYTkwMjAyOGYyOWYuZGF0JyAtLWFzc2VtYmx5X2NzdiAnYXNzZW1ibHlfY3N2LmNzdicgLS1hc3NlbWJseV9wbGFuX25hbWUgJ1R5cGUyc1Jlc3RyaWN0aW9uQXNzZW1ibHknIC0tZmlsZV9uYW1lX21hcHBpbmcgJy90bXAvdG1wYzZsaWM0cDkvZmlsZXMvYi82LzYvZGF0YXNldF9iNjZhZmE1Yi02ODJkLTQ5ZjgtOTc1My1jNzhjMzU2ZmYyMjguZGF0OnBhcnRfQS5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzLzQvNi9lL2RhdGFzZXRfNDZlYTNmYjktOGU2MC00MmYzLWI3ZDMtYzFhNmVkYzE4MzdjLmRhdDpwYXJ0X0IuZ2IsL3RtcC90bXBjNmxpYzRwOS9maWxlcy84LzMvNS9kYXRhc2V0XzgzNThlNjU3LTBlNjEtNDg2Yi1hZGI0LWU4ODZmMGYzNTRiYS5kYXQ6cGFydF9DLmdiLC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvNC9jL2YvZGF0YXNldF80Y2ZiYjJkZC1jNWE1LTQyZmUtODg5Yi1kYTY1MTA0MjJiNzIuZGF0OnBhcnRfRC5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzLzIvOC9jL2RhdGFzZXRfMjhjOTY0NDQtYWJmYi00MTczLTk3MGUtZTg5NTE0NmFlZjk3LmRhdDpwYXJ0X0UuZ2IsL3RtcC90bXBjNmxpYzRwOS9maWxlcy9mLzUvNC9kYXRhc2V0X2Y1NGM3YTE2LWFjNmYtNDJjMi05YjZjLTM0NWFmMzA1MGQ4My5kYXQ6cGFydF9GLmdiLC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMi9hLzMvZGF0YXNldF8yYTMzMGViNy1kMDMzLTRlNzUtYmU3YS00NDczNzQ4YTZmMmQuZGF0OnBhcnRfRy5nYicgLS1maWxlX25hbWVfbWFwcGluZ19kb20gJy90bXAvdG1wYzZsaWM0cDkvZmlsZXMvNi84LzcvZGF0YXNldF82ODc3YzIyNy0yYzcwLTQwODAtOTYyZS1lZTE4NTVkZDc5N2YuZGF0OnBhcnRfSC5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzL2UvMi8xL2RhdGFzZXRfZTIxMjI2MmMtYTMzNi00MjYzLWEwNzYtMmNkMzAwNTkwYmE0LmRhdDpwYXJ0X0kuZ2IsL3RtcC90bXBjNmxpYzRwOS9maWxlcy80LzEvMS9kYXRhc2V0XzQxMTJkNTQ1LTdlMzctNGE2ZS04Y2E4LTdjMWI4ZjkwYTcxZS5kYXQ6cGFydF9KLmdiLC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvYi8zLzEvZGF0YXNldF9iMzE5NTVjZS1lYTQ0LTRlM2EtODZhMS02YWViYzQ3YmU4NDEuZGF0OnBhcnRfSy5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzL2QvNC9kL2RhdGFzZXRfZDRkMTQzODgtNTVkMy00YWVjLTgxMGQtYWE5MDIwMjhmMjlmLmRhdDpwYXJ0X0wuZ2InIC0tdXNlX2ZpbGVfbmFtZXNfYXNfaWQgJ3RydWUnIC0tb3V0ZGlyX3NpbXVsYXRpb24gJ291dGRpcl96aXAnIC0tb3V0ZGlyX2diICdvdXRkaXJfZ2InIC0tb3V0cHV0X3NpbXVsYXRpb24gJ291dHB1dF96aXAuemlwJyAtLWVuenltZSAnYXV0bycgLS10b3BvbG9neSAnY2lyY3VsYXInICYmIGNwICdvdXRwdXRfemlwLnppcCcgJy90bXAvdG1wYzZsaWM0cDkvam9iX3dvcmtpbmdfZGlyZWN0b3J5LzAwMC80OS9vdXRwdXRzL2RhdGFzZXRfNzdmMzlkMTItNTMyYy00NjhiLWJjZjctZmNjMWZkZWRkMzRjLmRhdCcKICAgICAgYGBgCiAgICAqKkV4aXQgQ29kZToqKgoKICAgICogYGBgY29uc29sZQogICAgICAwCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBFcnJvcjoqKgoKICAgICogYGBgY29uc29sZQogICAgICAKICAgICAgYXNzZW1ibHk6ICAgMCV8ICAgICAgICAgIHwgMC80IFswMDowMDw/LCA/aXQvcywgbm93PU5vbmVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKICAgICAgYXNzZW1ibHk6ICAgMCV8ICAgICAgICAgIHwgMC80IFswMDowMDw/LCA/aXQvcywgbm93PU5vbmVdCiAgICAgIGFzc2VtYmx5OiAgNTAlfOKWiOKWiOKWiOKWiOKWiCAgICAgfCAyLzQgWzAwOjAwPDAwOjAwLCAgMi4zMWl0L3MsIG5vdz1Ob25lXQogICAgICBhc3NlbWJseTogIDc1JXzilojilojilojilojilojilojilojilowgIHwgMy80IFswMDowMTwwMDowMCwgIDIuMTRpdC9zLCBub3c9Tm9uZV0KICAgICAgYXNzZW1ibHk6IDEwMCV84paI4paI4paI4paI4paI4paI4paI4paI4paI4paIfCA0LzQgWzAwOjAyPDAwOjAwLCAgMS43NGl0L3MsIG5vdz1Ob25lXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICBgYGAKICAgICoqU3RhbmRhcmQgT3V0cHV0OioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIFNpbXVsYXRpbmcgYXNzZW1ibHkgcGxhbiBhc3NhbWJseS4uLgogICAgICB7J2NhbmNlbGxlZF9hc3NlbWJsaWVzJzogMCwgJ2Vycm9yZWRfYXNzZW1ibGllcyc6IDAsICd2YWxpZF9hc3NlbWJsaWVzJzogNH0KICAgICAgR2VuZXJhdGluZyBhc3NlbWJsaWVzIHJlcG9ydHMuLi4KCiAgICAgIGBgYAogICAgKipUcmFjZWJhY2s6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGBgYAogICAqKkpvYiBQYXJhbWV0ZXJzOioqCgogICAqICAgfCBKb2IgcGFyYW1ldGVyIHwgUGFyYW1ldGVyIHZhbHVlIHwKICAgICAgIHwgLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLSB8CiAgICAgICB8IGdlbmJhbmtcX2ZpbGVzIHwgYCB7InZhbHVlcyI6IFt7ImlkIjogMTIsICJzcmMiOiAiaGRjYSJ9XX0gYCB8CiAgICAgICB8IGRvbWVzdGljYXRlZFxfaW5wdXQgfCBgIHsidmFsdWVzIjogW3siaWQiOiAxMSwgInNyYyI6ICJoZGNhIn1dfSBgIHwKICAgICAgIHwgYXNzZW1ibHlcX3BsYW5cX25hbWUgfCBgICJUeXBlMnNSZXN0cmljdGlvbkFzc2VtYmx5IiBgIHwKICAgICAgIHwgdG9wb2xvZ3kgfCBgICJjaXJjdWxhciIgYCB8CiAgICAgICB8IGFkdiB8IGAgeyJlbnp5bWUiOiAiYXV0byIsICJ1c2VfZmlsZV9uYW1lc19hc19pZHMiOiB0cnVlfSBgIHwKICAgICAgIHwgY2hyb21JbmZvIHwgYCAiL3RtcC90bXBjNmxpYzRwOS9nYWxheHktZGV2L3Rvb2wtZGF0YS9zaGFyZWQvdWNzYy9jaHJvbS8/LmxlbiIgYCB8CiAgICAgICB8IGRia2V5IHwgYCAiPyIgYCB8CiAgICAgICB8IFxfXF9pbnB1dFxfZXh0IHwgYCAiaW5wdXQiIGAgfAoKCgogICAgPC9kaXY+PC9kZXRhaWxzPgoKCiogPGRldGFpbHMgY2xhc3M9InJjb3JuZXJzIGxpZ2h0LWdyZWVuIj48c3VtbWFyeSBjbGFzcz0ibGlnaHQtZ3JlZW4iPiYjOTk4OTsgY2xvbmluZ19zaW11bGF0aW9uIChUZXN0ICMgNyk8L3N1bW1hcnk+PGRpdiBjbGFzcz0icGFkZGVkIj4KCiAgICAqKkNvbW1hbmQgTGluZToqKgoKICAgICogYGBgY29uc29sZQogICAgICBta2RpciAnb3V0ZGlyX3ppcCcgJiYgbWtkaXIgJ291dGRpcl9nYicgJiYgY3AgJy90bXAvdG1wYzZsaWM0cDkvZmlsZXMvOS81LzAvZGF0YXNldF85NTA0ODk3ZC0wZDk5LTQ0YTQtOTAzMy03ZDE0ZTM5NDNlYzkuZGF0JyAnYXNzZW1ibHlfY3N2LmNzdicgJiYgcHl0aG9uICcvaG9tZS9ya2hhbGVkL2dhbGF4eXRvb2xzL3Rvb2xzL2Nsb25pbmdfc2ltdWxhdGlvbi9jbG9uaW5nX3NpbXVsYXRpb24ucHknIC0tcGFydHNfZmlsZXMgJy90bXAvdG1wYzZsaWM0cDkvZmlsZXMvYS9jL2QvZGF0YXNldF9hY2Q5ZTU0Ni1iYjMxLTQzOTEtYjg2Ny0xZDgxY2FiMTA5MjAuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvYy9mL2UvZGF0YXNldF9jZmU4NTJmNi01YjMyLTQ2ZmQtYTlkOC0yYjc3NzAxNmQ0MDMuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMi81L2IvZGF0YXNldF8yNWJlMjc3MC1mNzY4LTRiMGUtYmU5Ni00NTllNDdlNmFlOGQuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvZS81LzgvZGF0YXNldF9lNTgwZjgwNi1lOGJhLTRkYWMtYjhkNS02Yjc2YjRhNzQyMWIuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMC9kLzYvZGF0YXNldF8wZDZkZTMxYS1hYWIxLTQyN2YtYTJhMS03YzhiYzk4ODIwOGUuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMS8yLzcvZGF0YXNldF8xMjcyYjIzZi03Y2VmLTRkZWItYmY5Mi1mYmFkOTczYmYyYzYuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvNy80LzcvZGF0YXNldF83NDc2YjEwZC1jMTQzLTRiZTctYWRiNS0xMThkY2YzNzIyODcuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvZS8yL2UvZGF0YXNldF9lMmVkMGU0Ni1iMTU5LTRiY2EtYWVhYS05YmVmOWE1YjljOWEuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvYy9hLzEvZGF0YXNldF9jYTE4YjUwYy0zYjRjLTQyMDEtODhiMC1kZmZkMDQ5NzE4ZjguZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMS9iLzQvZGF0YXNldF8xYjQ4MGU4NC0wM2NmLTQ0ODMtOWU5ZS1jY2Y3OWJmNjU0YTEuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvYi9lLzgvZGF0YXNldF9iZTgzYjhmNC03M2RlLTQ3NzUtYWJiOC03NTQ4M2Q0ZThhYjIuZGF0LC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvNS9kL2QvZGF0YXNldF81ZGRkZTU0OC00ODI4LTQwNjctOTNiNy0xMzc3YTcxMjIxZDcuZGF0JyAtLWRvbWVzdGljYXRlZF9zZXEgJycgLS1hc3NlbWJseV9jc3YgJ2Fzc2VtYmx5X2Nzdi5jc3YnIC0tYXNzZW1ibHlfcGxhbl9uYW1lICdUeXBlMnNSZXN0cmljdGlvbkFzc2VtYmx5JyAtLWZpbGVfbmFtZV9tYXBwaW5nICcvdG1wL3RtcGM2bGljNHA5L2ZpbGVzL2EvYy9kL2RhdGFzZXRfYWNkOWU1NDYtYmIzMS00MzkxLWI4NjctMWQ4MWNhYjEwOTIwLmRhdDpwYXJ0X0EuZ2IsL3RtcC90bXBjNmxpYzRwOS9maWxlcy9jL2YvZS9kYXRhc2V0X2NmZTg1MmY2LTViMzItNDZmZC1hOWQ4LTJiNzc3MDE2ZDQwMy5kYXQ6cGFydF9CLmdiLC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMi81L2IvZGF0YXNldF8yNWJlMjc3MC1mNzY4LTRiMGUtYmU5Ni00NTllNDdlNmFlOGQuZGF0OnBhcnRfQy5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzL2UvNS84L2RhdGFzZXRfZTU4MGY4MDYtZThiYS00ZGFjLWI4ZDUtNmI3NmI0YTc0MjFiLmRhdDpwYXJ0X0QuZ2IsL3RtcC90bXBjNmxpYzRwOS9maWxlcy8wL2QvNi9kYXRhc2V0XzBkNmRlMzFhLWFhYjEtNDI3Zi1hMmExLTdjOGJjOTg4MjA4ZS5kYXQ6cGFydF9FLmdiLC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvMS8yLzcvZGF0YXNldF8xMjcyYjIzZi03Y2VmLTRkZWItYmY5Mi1mYmFkOTczYmYyYzYuZGF0OnBhcnRfRi5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzLzcvNC83L2RhdGFzZXRfNzQ3NmIxMGQtYzE0My00YmU3LWFkYjUtMTE4ZGNmMzcyMjg3LmRhdDpwYXJ0X0cuZ2IsL3RtcC90bXBjNmxpYzRwOS9maWxlcy9lLzIvZS9kYXRhc2V0X2UyZWQwZTQ2LWIxNTktNGJjYS1hZWFhLTliZWY5YTViOWM5YS5kYXQ6cGFydF9ILmdiLC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvYy9hLzEvZGF0YXNldF9jYTE4YjUwYy0zYjRjLTQyMDEtODhiMC1kZmZkMDQ5NzE4ZjguZGF0OnBhcnRfSS5nYiwvdG1wL3RtcGM2bGljNHA5L2ZpbGVzLzEvYi80L2RhdGFzZXRfMWI0ODBlODQtMDNjZi00NDgzLTllOWUtY2NmNzliZjY1NGExLmRhdDpwYXJ0X0ouZ2IsL3RtcC90bXBjNmxpYzRwOS9maWxlcy9iL2UvOC9kYXRhc2V0X2JlODNiOGY0LTczZGUtNDc3NS1hYmI4LTc1NDgzZDRlOGFiMi5kYXQ6cGFydF9LLmdiLC90bXAvdG1wYzZsaWM0cDkvZmlsZXMvNS9kL2QvZGF0YXNldF81ZGRkZTU0OC00ODI4LTQwNjctOTNiNy0xMzc3YTcxMjIxZDcuZGF0OnBhcnRfTC5nYicgLS1maWxlX25hbWVfbWFwcGluZ19kb20gJycgLS11c2VfZmlsZV9uYW1lc19hc19pZCAndHJ1ZScgLS1vdXRkaXJfc2ltdWxhdGlvbiAnb3V0ZGlyX3ppcCcgLS1vdXRkaXJfZ2IgJ291dGRpcl9nYicgLS1vdXRwdXRfc2ltdWxhdGlvbiAnb3V0cHV0X3ppcC56aXAnIC0tZW56eW1lICdhdXRvJyAtLXRvcG9sb2d5ICdjaXJjdWxhcicgJiYgY3AgJ291dHB1dF96aXAuemlwJyAnL3RtcC90bXBjNmxpYzRwOS9qb2Jfd29ya2luZ19kaXJlY3RvcnkvMDAwLzYzL291dHB1dHMvZGF0YXNldF9lMTA3ODRhNi0zMDUwLTQxMzEtYTY4NC0zODQ3Mzk3YzRjNGQuZGF0JwogICAgICBgYGAKICAgICoqRXhpdCBDb2RlOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIDAKICAgICAgYGBgCiAgICAqKlN0YW5kYXJkIEVycm9yOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIAogICAgICBhc3NlbWJseTogICAwJXwgICAgICAgICAgfCAwLzQgWzAwOjAwPD8sID9pdC9zLCBub3c9Tm9uZV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgogICAgICBhc3NlbWJseTogICAwJXwgICAgICAgICAgfCAwLzQgWzAwOjAwPD8sID9pdC9zLCBub3c9Tm9uZV0KICAgICAgYXNzZW1ibHk6ICA1MCV84paI4paI4paI4paI4paIICAgICB8IDIvNCBbMDA6MDA8MDA6MDAsICAyLjQ1aXQvcywgbm93PU5vbmVdCiAgICAgIGFzc2VtYmx5OiAgNzUlfOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWjCAgfCAzLzQgWzAwOjAxPDAwOjAwLCAgMi4yNGl0L3MsIG5vdz1Ob25lXQogICAgICBhc3NlbWJseTogMTAwJXzilojilojilojilojilojilojilojilojilojiloh8IDQvNCBbMDA6MDI8MDA6MDAsICAxLjg0aXQvcywgbm93PU5vbmVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBPdXRwdXQ6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgU2ltdWxhdGluZyBhc3NlbWJseSBwbGFuIGFzc2FtYmx5Li4uCiAgICAgIHsnY2FuY2VsbGVkX2Fzc2VtYmxpZXMnOiAwLCAnZXJyb3JlZF9hc3NlbWJsaWVzJzogMCwgJ3ZhbGlkX2Fzc2VtYmxpZXMnOiA0fQogICAgICBHZW5lcmF0aW5nIGFzc2VtYmxpZXMgcmVwb3J0cy4uLgoKICAgICAgYGBgCiAgICAqKlRyYWNlYmFjazoqKgoKICAgICogYGBgY29uc29sZQogICAgICAKICAgICAgYGBgCiAgICoqSm9iIFBhcmFtZXRlcnM6KioKCiAgICogICB8IEpvYiBwYXJhbWV0ZXIgfCBQYXJhbWV0ZXIgdmFsdWUgfAogICAgICAgfCAtLS0tLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0tIHwKICAgICAgIHwgZ2VuYmFua1xfZmlsZXMgfCBgIE5vbmUgYCB8CiAgICAgICB8IGRvbWVzdGljYXRlZFxfaW5wdXQgfCBgIHsidmFsdWVzIjogW3siaWQiOiAxNCwgInNyYyI6ICJoZGNhIn1dfSBgIHwKICAgICAgIHwgYXNzZW1ibHlcX3BsYW5cX25hbWUgfCBgICJUeXBlMnNSZXN0cmljdGlvbkFzc2VtYmx5IiBgIHwKICAgICAgIHwgdG9wb2xvZ3kgfCBgICJjaXJjdWxhciIgYCB8CiAgICAgICB8IGFkdiB8IGAgeyJlbnp5bWUiOiAiYXV0byIsICJ1c2VfZmlsZV9uYW1lc19hc19pZHMiOiB0cnVlfSBgIHwKICAgICAgIHwgY2hyb21JbmZvIHwgYCAiL3RtcC90bXBjNmxpYzRwOS9nYWxheHktZGV2L3Rvb2wtZGF0YS9zaGFyZWQvdWNzYy9jaHJvbS8/LmxlbiIgYCB8CiAgICAgICB8IGRia2V5IHwgYCAiPyIgYCB8CiAgICAgICB8IFxfXF9pbnB1dFxfZXh0IHwgYCAiaW5wdXQiIGAgfAoKCgogICAgPC9kaXY+PC9kZXRhaWxzPgoKCjwvZGV0YWlscz4K')); </script> </body> </html> \ No newline at end of file
--- a/output.json Mon May 26 10:10:46 2025 +0000 +++ b/output.json Mon May 26 11:29:13 2025 +0000 @@ -1,7 +1,7 @@ { "summary": { "num_errors": 0, - "num_failures": 1, + "num_failures": 0, "num_skips": 0, "num_tests": 7 }, @@ -11,104 +11,96 @@ "inputs": { "adv|use_file_names_as_ids": true, "assembly_csv": { - "id": "41ca6db0600d7999", + "id": "c173cff58a987f8f", "src": "hda" }, "assembly_plan_name": "Type2sRestrictionAssembly", "genbank_files": { - "id": "66f8380583c086e1", + "id": "fcc5b7d13a1328f6", "src": "hdca" }, "topology": "circular" }, "job": { - "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpy2ysv6tn/files/1/a/1/dataset_1a1ee32d-eed7-47fd-b491-4f0799b44a85.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpy2ysv6tn/files/4/4/1/dataset_44129191-5531-4cc9-b37b-fec4e3c677d5.dat,/tmp/tmpy2ysv6tn/files/6/1/f/dataset_61f5f19f-147b-46fd-8900-a8530f311835.dat,/tmp/tmpy2ysv6tn/files/4/4/0/dataset_440b34e7-490e-49bd-9b29-6afcabe5f6f6.dat,/tmp/tmpy2ysv6tn/files/a/3/f/dataset_a3fca212-b8dc-4579-901c-612b806241af.dat,/tmp/tmpy2ysv6tn/files/5/3/9/dataset_5398f2cb-1a25-45e5-9ba0-cd79a88b6e88.dat,/tmp/tmpy2ysv6tn/files/f/5/0/dataset_f505293a-8223-4da2-a22c-aa261d4955ec.dat,/tmp/tmpy2ysv6tn/files/c/5/0/dataset_c50e4b1f-c72a-4272-b324-e1c2c7d50293.dat,/tmp/tmpy2ysv6tn/files/0/0/d/dataset_00d79560-f944-4d8e-98e7-f516684a6100.dat,/tmp/tmpy2ysv6tn/files/3/d/5/dataset_3d5bb0fb-d610-4939-8fc5-999174fee5ca.dat,/tmp/tmpy2ysv6tn/files/c/7/c/dataset_c7cf96af-ab1c-4199-821f-5bb5b947752f.dat,/tmp/tmpy2ysv6tn/files/0/a/5/dataset_0a5139e7-7d83-48f1-a1c9-458a1e72685c.dat,/tmp/tmpy2ysv6tn/files/f/b/3/dataset_fb361f22-020c-4972-8661-f1f57d1a7afa.dat' --domesticated_seq '' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'Type2sRestrictionAssembly' --file_name_mapping '/tmp/tmpy2ysv6tn/files/4/4/1/dataset_44129191-5531-4cc9-b37b-fec4e3c677d5.dat:part_A.gb,/tmp/tmpy2ysv6tn/files/6/1/f/dataset_61f5f19f-147b-46fd-8900-a8530f311835.dat:part_B.gb,/tmp/tmpy2ysv6tn/files/4/4/0/dataset_440b34e7-490e-49bd-9b29-6afcabe5f6f6.dat:part_C.gb,/tmp/tmpy2ysv6tn/files/a/3/f/dataset_a3fca212-b8dc-4579-901c-612b806241af.dat:part_D.gb,/tmp/tmpy2ysv6tn/files/5/3/9/dataset_5398f2cb-1a25-45e5-9ba0-cd79a88b6e88.dat:part_E.gb,/tmp/tmpy2ysv6tn/files/f/5/0/dataset_f505293a-8223-4da2-a22c-aa261d4955ec.dat:part_F.gb,/tmp/tmpy2ysv6tn/files/c/5/0/dataset_c50e4b1f-c72a-4272-b324-e1c2c7d50293.dat:part_G.gb,/tmp/tmpy2ysv6tn/files/0/0/d/dataset_00d79560-f944-4d8e-98e7-f516684a6100.dat:part_H.gb,/tmp/tmpy2ysv6tn/files/3/d/5/dataset_3d5bb0fb-d610-4939-8fc5-999174fee5ca.dat:part_I.gb,/tmp/tmpy2ysv6tn/files/c/7/c/dataset_c7cf96af-ab1c-4199-821f-5bb5b947752f.dat:part_J.gb,/tmp/tmpy2ysv6tn/files/0/a/5/dataset_0a5139e7-7d83-48f1-a1c9-458a1e72685c.dat:part_K.gb,/tmp/tmpy2ysv6tn/files/f/b/3/dataset_fb361f22-020c-4972-8661-f1f57d1a7afa.dat:part_L.gb' --file_name_mapping_dom '' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpy2ysv6tn/job_working_directory/000/14/outputs/dataset_acb064d7-2781-46fe-98df-716fee024c8d.dat'", + "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpc6lic4p9/files/2/b/d/dataset_2bdf436f-52cc-4c6e-afdb-3f051629900f.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpc6lic4p9/files/4/6/5/dataset_465a53ab-8770-4514-a9b3-227f79646eb7.dat,/tmp/tmpc6lic4p9/files/a/e/2/dataset_ae22d5d2-cde0-45b5-9e8e-67b5cbd586fa.dat,/tmp/tmpc6lic4p9/files/e/6/4/dataset_e64057b1-43b3-4788-8891-77bcd297223c.dat,/tmp/tmpc6lic4p9/files/1/d/1/dataset_1d1f9832-b58e-48c2-b1b3-6c3fb18e9890.dat,/tmp/tmpc6lic4p9/files/6/7/3/dataset_6732fc79-081e-4edf-bccc-a0087520172a.dat,/tmp/tmpc6lic4p9/files/b/1/7/dataset_b17c7a49-3121-4292-95ff-51891aa066d1.dat,/tmp/tmpc6lic4p9/files/2/8/1/dataset_2811f816-8532-4ddd-8e29-9a6ed7dad54e.dat,/tmp/tmpc6lic4p9/files/e/7/4/dataset_e74d0182-807e-40a8-b67a-ac088fc2e02c.dat,/tmp/tmpc6lic4p9/files/9/d/c/dataset_9dc55c98-4ab9-4272-a680-9b3129954367.dat,/tmp/tmpc6lic4p9/files/9/5/6/dataset_95699db9-77cf-4ae1-8454-4f255f3cb62a.dat,/tmp/tmpc6lic4p9/files/1/1/9/dataset_11979c28-82ee-43c4-9e43-f34cb541f96b.dat,/tmp/tmpc6lic4p9/files/3/f/5/dataset_3f53cb86-2d2b-429a-bf51-e276bbe393fa.dat' --domesticated_seq '' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'Type2sRestrictionAssembly' --file_name_mapping '/tmp/tmpc6lic4p9/files/4/6/5/dataset_465a53ab-8770-4514-a9b3-227f79646eb7.dat:part_A.gb,/tmp/tmpc6lic4p9/files/a/e/2/dataset_ae22d5d2-cde0-45b5-9e8e-67b5cbd586fa.dat:part_B.gb,/tmp/tmpc6lic4p9/files/e/6/4/dataset_e64057b1-43b3-4788-8891-77bcd297223c.dat:part_C.gb,/tmp/tmpc6lic4p9/files/1/d/1/dataset_1d1f9832-b58e-48c2-b1b3-6c3fb18e9890.dat:part_D.gb,/tmp/tmpc6lic4p9/files/6/7/3/dataset_6732fc79-081e-4edf-bccc-a0087520172a.dat:part_E.gb,/tmp/tmpc6lic4p9/files/b/1/7/dataset_b17c7a49-3121-4292-95ff-51891aa066d1.dat:part_F.gb,/tmp/tmpc6lic4p9/files/2/8/1/dataset_2811f816-8532-4ddd-8e29-9a6ed7dad54e.dat:part_G.gb,/tmp/tmpc6lic4p9/files/e/7/4/dataset_e74d0182-807e-40a8-b67a-ac088fc2e02c.dat:part_H.gb,/tmp/tmpc6lic4p9/files/9/d/c/dataset_9dc55c98-4ab9-4272-a680-9b3129954367.dat:part_I.gb,/tmp/tmpc6lic4p9/files/9/5/6/dataset_95699db9-77cf-4ae1-8454-4f255f3cb62a.dat:part_J.gb,/tmp/tmpc6lic4p9/files/1/1/9/dataset_11979c28-82ee-43c4-9e43-f34cb541f96b.dat:part_K.gb,/tmp/tmpc6lic4p9/files/3/f/5/dataset_3f53cb86-2d2b-429a-bf51-e276bbe393fa.dat:part_L.gb' --file_name_mapping_dom '' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpc6lic4p9/job_working_directory/000/14/outputs/dataset_ac2d98e7-ff55-4a94-9e79-861b07d63528.dat' && echo DEBUG && ls 'outdir_gb'", "command_version": "", "copied_from_job_id": null, - "create_time": "2025-05-26T10:00:43.823779", + "create_time": "2025-05-26T11:24:01.275241", "dependencies": [], - "exit_code": 1, - "external_id": "114506", + "exit_code": 0, + "external_id": "151844", "galaxy_version": "24.2", "handler": null, - "history_id": "66f8380583c086e1", - "id": "7f406d9538852eeb", + "history_id": "fcc5b7d13a1328f6", + "id": "c9445e550eef23d0", "inputs": { "assembly_csv": { - "id": "41ca6db0600d7999", + "id": "c173cff58a987f8f", "src": "hda", - "uuid": "1a1ee32d-eed7-47fd-b491-4f0799b44a85" + "uuid": "2bdf436f-52cc-4c6e-afdb-3f051629900f" }, "genbank_files1": { - "id": "66f8380583c086e1", + "id": "fcc5b7d13a1328f6", "src": "hda", - "uuid": "44129191-5531-4cc9-b37b-fec4e3c677d5" + "uuid": "465a53ab-8770-4514-a9b3-227f79646eb7" }, "genbank_files10": { - "id": "d3a48cfe9e5a1f02", + "id": "cf75f655bb15877b", "src": "hda", - "uuid": "c7cf96af-ab1c-4199-821f-5bb5b947752f" + "uuid": "95699db9-77cf-4ae1-8454-4f255f3cb62a" }, "genbank_files11": { - "id": "4fffd7776804f395", + "id": "744832bdd7ccd728", "src": "hda", - "uuid": "0a5139e7-7d83-48f1-a1c9-458a1e72685c" + "uuid": "11979c28-82ee-43c4-9e43-f34cb541f96b" }, "genbank_files12": { - "id": "193b12b5837c3789", + "id": "855b83dd0dec8eab", "src": "hda", - "uuid": "fb361f22-020c-4972-8661-f1f57d1a7afa" + "uuid": "3f53cb86-2d2b-429a-bf51-e276bbe393fa" }, "genbank_files2": { - "id": "afa012b5b55ac394", + "id": "df00a2d9def0cc87", "src": "hda", - "uuid": "61f5f19f-147b-46fd-8900-a8530f311835" + "uuid": "ae22d5d2-cde0-45b5-9e8e-67b5cbd586fa" }, "genbank_files3": { - "id": "c1bc3f2cd94aab77", + "id": "d9e72a80becfe6e7", "src": "hda", - "uuid": "440b34e7-490e-49bd-9b29-6afcabe5f6f6" + "uuid": "e64057b1-43b3-4788-8891-77bcd297223c" }, "genbank_files4": { - "id": "f1661b71781d8acc", + "id": "038c626e299361e9", "src": "hda", - "uuid": "a3fca212-b8dc-4579-901c-612b806241af" + "uuid": "1d1f9832-b58e-48c2-b1b3-6c3fb18e9890" }, "genbank_files5": { - "id": "e1129f30c30438be", + "id": "c7c3cd49f3337c1a", "src": "hda", - "uuid": "5398f2cb-1a25-45e5-9ba0-cd79a88b6e88" + "uuid": "6732fc79-081e-4edf-bccc-a0087520172a" }, "genbank_files6": { - "id": "abbaf1e2c3c282ad", + "id": "51c35891e43131e2", "src": "hda", - "uuid": "f505293a-8223-4da2-a22c-aa261d4955ec" + "uuid": "b17c7a49-3121-4292-95ff-51891aa066d1" }, "genbank_files7": { - "id": "18bb6cd07b986e37", + "id": "84db48b219855f4d", "src": "hda", - "uuid": "c50e4b1f-c72a-4272-b324-e1c2c7d50293" + "uuid": "2811f816-8532-4ddd-8e29-9a6ed7dad54e" }, "genbank_files8": { - "id": "82689942017f4326", + "id": "cf00b67a5455eb5a", "src": "hda", - "uuid": "00d79560-f944-4d8e-98e7-f516684a6100" + "uuid": "e74d0182-807e-40a8-b67a-ac088fc2e02c" }, "genbank_files9": { - "id": "ecc2b8a59c690090", + "id": "a3780ecc1a00a0d8", "src": "hda", - "uuid": "3d5bb0fb-d610-4939-8fc5-999174fee5ca" + "uuid": "9dc55c98-4ab9-4272-a680-9b3129954367" } }, - "job_messages": [ - { - "code_desc": "", - "desc": "Fatal error: Exit code 1 ()", - "error_level": 3, - "exit_code": 1, - "type": "exit_code" - } - ], + "job_messages": [], "job_metrics": [], "job_runner_name": null, "job_stderr": "", @@ -116,45 +108,60 @@ "model_class": "Job", "output_collections": { "construct_gb": { - "id": "afa012b5b55ac394", + "id": "df00a2d9def0cc87", "src": "hdca" } }, "outputs": { + "__new_primary_file_construct_gb|construct_1__": { + "id": "fedb85639c7c80b9", + "src": "hda", + "uuid": "4bf90377-e4de-4d13-8ebc-39a53494ea2a" + }, + "__new_primary_file_construct_gb|construct_2__": { + "id": "bd75ec7b3d9705ea", + "src": "hda", + "uuid": "ac9bac0c-348b-46b7-a882-60f56867cc30" + }, + "__new_primary_file_construct_gb|construct_3__": { + "id": "7eb30039064fccdd", + "src": "hda", + "uuid": "48e39545-a44e-410b-859b-01fcf6189002" + }, + "__new_primary_file_construct_gb|construct_4__": { + "id": "61cc0a7b70456dfd", + "src": "hda", + "uuid": "df8aca7f-8413-430f-b35f-7dac694ee0b6" + }, "output_zip": { - "id": "7f406d9538852eeb", + "id": "c9445e550eef23d0", "src": "hda", - "uuid": "acb064d7-2781-46fe-98df-716fee024c8d" + "uuid": "ac2d98e7-ff55-4a94-9e79-861b07d63528" } }, "params": { "__input_ext": "\"input\"", "adv": "{\"enzyme\": \"auto\", \"use_file_names_as_ids\": true}", "assembly_plan_name": "\"Type2sRestrictionAssembly\"", - "chromInfo": "\"/tmp/tmpy2ysv6tn/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", + "chromInfo": "\"/tmp/tmpc6lic4p9/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", "dbkey": "\"?\"", "domesticated_input": null, "genbank_files": "{\"values\": [{\"id\": 1, \"src\": \"hdca\"}]}", "topology": "\"circular\"" }, - "state": "error", - "stderr": "\rassembly: 0%| | 0/5 [00:00<?, ?it/s, now=None]Traceback (most recent call last):\n File \"/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py\", line 171, in <module>\n cloning_simulation(\n ~~~~~~~~~~~~~~~~~~^\n args.parts_files, args.domesticated_seq,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n ...<3 lines>...\n args.output_simulation, args.enzyme, args.outdir_gb\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n )\n ^\n File \"/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py\", line 97, in cloning_simulation\n simulation = assembly_plan.simulate(sequence_repository=repository)\n File \"/home/rkhaled/miniconda3/envs/mulled-v1-6c2b9ebb475a37bd0d9ca7857474e8574719e546de882810f7828fe5993a8adf/lib/python3.13/site-packages/dnacauldron/AssemblyPlan/AssemblyPlan.py\", line 251, in simulate\n simulation_result = assembly.simulate(sequence_repository)\n File \"/home/rkhaled/miniconda3/envs/mulled-v1-6c2b9ebb475a37bd0d9ca7857474e8574719e546de882810f7828fe5993a8adf/lib/python3.13/site-packages/dnacauldron/Assembly/builtin_assembly_classes/Type2sRestrictionAssembly.py\", line 181, in simulate\n records = sequence_repository.get_records(self.parts)\n File \"/home/rkhaled/miniconda3/envs/mulled-v1-6c2b9ebb475a37bd0d9ca7857474e8574719e546de882810f7828fe5993a8adf/lib/python3.13/site-packages/dnacauldron/SequenceRepository.py\", line 120, in get_records\n raise NotInRepositoryError(not_in_repository, repository=self)\ndnacauldron.SequenceRepository.NotInRepositoryError: Parts not found in repo: part1, part2, part3, part4, part5, part6\n\r \r", - "stdout": " 1 2 3 4 5 6\n0 \nID part1 part2 part3 part4 part5 part6\nconstruct_3 construct_1 part_L part_J part_K NaN NaN\nconstruct_4 construct_2 part_L part_J part_K NaN NaN\nconstruct_1 part_A part_B part_C part_D part_E part_F\nconstruct_2 part_A part_G part_H part_I part_F NaN\nSimulating assembly plan assambly...\n", + "state": "ok", + "stderr": "\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\rassembly: 50%|\u2588\u2588\u2588\u2588\u2588 | 2/4 [00:00<00:00, 2.38it/s, now=None]\rassembly: 75%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c | 3/4 [00:01<00:00, 2.18it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 4/4 [00:02<00:00, 1.77it/s, now=None]\r \r", + "stdout": " 1 2 3 4 5 6\n0 \nconstruct_3 construct_1 part_L part_J part_K NaN NaN\nconstruct_4 construct_2 part_L part_J part_K NaN NaN\nconstruct_1 part_A part_B part_C part_D part_E part_F\nconstruct_2 part_A part_G part_H part_I part_F NaN\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 4}\nGenerating assemblies reports...\nDEBUG\nconstruct_1.gb\nconstruct_2.gb\nconstruct_3.gb\nconstruct_4.gb\n", "tool_id": "cloning_simulation", - "tool_stderr": "\rassembly: 0%| | 0/5 [00:00<?, ?it/s, now=None]Traceback (most recent call last):\n File \"/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py\", line 171, in <module>\n cloning_simulation(\n ~~~~~~~~~~~~~~~~~~^\n args.parts_files, args.domesticated_seq,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n ...<3 lines>...\n args.output_simulation, args.enzyme, args.outdir_gb\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n )\n ^\n File \"/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py\", line 97, in cloning_simulation\n simulation = assembly_plan.simulate(sequence_repository=repository)\n File \"/home/rkhaled/miniconda3/envs/mulled-v1-6c2b9ebb475a37bd0d9ca7857474e8574719e546de882810f7828fe5993a8adf/lib/python3.13/site-packages/dnacauldron/AssemblyPlan/AssemblyPlan.py\", line 251, in simulate\n simulation_result = assembly.simulate(sequence_repository)\n File \"/home/rkhaled/miniconda3/envs/mulled-v1-6c2b9ebb475a37bd0d9ca7857474e8574719e546de882810f7828fe5993a8adf/lib/python3.13/site-packages/dnacauldron/Assembly/builtin_assembly_classes/Type2sRestrictionAssembly.py\", line 181, in simulate\n records = sequence_repository.get_records(self.parts)\n File \"/home/rkhaled/miniconda3/envs/mulled-v1-6c2b9ebb475a37bd0d9ca7857474e8574719e546de882810f7828fe5993a8adf/lib/python3.13/site-packages/dnacauldron/SequenceRepository.py\", line 120, in get_records\n raise NotInRepositoryError(not_in_repository, repository=self)\ndnacauldron.SequenceRepository.NotInRepositoryError: Parts not found in repo: part1, part2, part3, part4, part5, part6\n\r \r", - "tool_stdout": " 1 2 3 4 5 6\n0 \nID part1 part2 part3 part4 part5 part6\nconstruct_3 construct_1 part_L part_J part_K NaN NaN\nconstruct_4 construct_2 part_L part_J part_K NaN NaN\nconstruct_1 part_A part_B part_C part_D part_E part_F\nconstruct_2 part_A part_G part_H part_I part_F NaN\nSimulating assembly plan assambly...\n", - "update_time": "2025-05-26T10:00:52.817543", + "tool_stderr": "\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\rassembly: 50%|\u2588\u2588\u2588\u2588\u2588 | 2/4 [00:00<00:00, 2.38it/s, now=None]\rassembly: 75%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c | 3/4 [00:01<00:00, 2.18it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 4/4 [00:02<00:00, 1.77it/s, now=None]\r \r", + "tool_stdout": " 1 2 3 4 5 6\n0 \nconstruct_3 construct_1 part_L part_J part_K NaN NaN\nconstruct_4 construct_2 part_L part_J part_K NaN NaN\nconstruct_1 part_A part_B part_C part_D part_E part_F\nconstruct_2 part_A part_G part_H part_I part_F NaN\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 4}\nGenerating assemblies reports...\nDEBUG\nconstruct_1.gb\nconstruct_2.gb\nconstruct_3.gb\nconstruct_4.gb\n", + "update_time": "2025-05-26T11:24:14.526803", "user_email": "planemo@galaxyproject.org", - "user_id": "66f8380583c086e1" + "user_id": "fcc5b7d13a1328f6" }, - "output_problems": [ - "Job in error state.. tool_id: cloning_simulation, exit_code: 1, stderr: \rassembly: 0%| | 0/5 [00:00<?, ?it/s, now=None]Traceback (most recent call last):\n File \"/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py\", line 171, in <module>\n cloning_simulation(\n ~~~~~~~~~~~~~~~~~~^\n args.parts_files, args.domesticated_seq,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n ...<3 lines>...\n args.output_simulation, args.enzyme, args.outdir_gb\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n )\n ^\n File \"/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py\", line 97, in cloning_simulation\n simulation = assembly_plan.simulate(sequence_repository=repository)\n File \"/home/rkhaled/miniconda3/envs/mulled-v1-6c2b9ebb475a37bd0d9ca7857474e8574719e546de882810f7828fe5993a8adf/lib/python3.13/site-packages/dnacauldron/AssemblyPlan/AssemblyPlan.py\", line 251, in simulate\n simulation_result = assembly.simulate(sequence_repository)\n File \"/home/rkhaled/miniconda3/envs/mulled-v1-6c2b9ebb475a37bd0d9ca7857474e8574719e546de882810f7828fe5993a8adf/lib/python3.13/site-packages/dnacauldron/Assembly/builtin_assembly_classes/Type2sRestrictionAssembly.py\", line 181, in simulate\n records = sequence_repository.get_records(self.parts)\n File \"/home/rkhaled/miniconda3/envs/mulled-v1-6c2b9ebb475a37bd0d9ca7857474e8574719e546de882810f7828fe5993a8adf/lib/python3.13/site-packages/dnacauldron/SequenceRepository.py\", line 120, in get_records\n raise NotInRepositoryError(not_in_repository, repository=self)\ndnacauldron.SequenceRepository.NotInRepositoryError: Parts not found in repo: part1, part2, part3, part4, part5, part6\n\r \r.", - "Job in error state.. tool_id: cloning_simulation, exit_code: 1, stderr: \rassembly: 0%| | 0/5 [00:00<?, ?it/s, now=None]Traceback (most recent call last):\n File \"/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py\", line 171, in <module>\n cloning_simulation(\n ~~~~~~~~~~~~~~~~~~^\n args.parts_files, args.domesticated_seq,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n ...<3 lines>...\n args.output_simulation, args.enzyme, args.outdir_gb\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n )\n ^\n File \"/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py\", line 97, in cloning_simulation\n simulation = assembly_plan.simulate(sequence_repository=repository)\n File \"/home/rkhaled/miniconda3/envs/mulled-v1-6c2b9ebb475a37bd0d9ca7857474e8574719e546de882810f7828fe5993a8adf/lib/python3.13/site-packages/dnacauldron/AssemblyPlan/AssemblyPlan.py\", line 251, in simulate\n simulation_result = assembly.simulate(sequence_repository)\n File \"/home/rkhaled/miniconda3/envs/mulled-v1-6c2b9ebb475a37bd0d9ca7857474e8574719e546de882810f7828fe5993a8adf/lib/python3.13/site-packages/dnacauldron/Assembly/builtin_assembly_classes/Type2sRestrictionAssembly.py\", line 181, in simulate\n records = sequence_repository.get_records(self.parts)\n File \"/home/rkhaled/miniconda3/envs/mulled-v1-6c2b9ebb475a37bd0d9ca7857474e8574719e546de882810f7828fe5993a8adf/lib/python3.13/site-packages/dnacauldron/SequenceRepository.py\", line 120, in get_records\n raise NotInRepositoryError(not_in_repository, repository=self)\ndnacauldron.SequenceRepository.NotInRepositoryError: Parts not found in repo: part1, part2, part3, part4, part5, part6\n\r \r.", - "Output collection 'construct_gb': expected to have 4 elements, but it had 0." - ], - "status": "failure", + "status": "success", "test_index": 0, - "time_seconds": 51.33188271522522, + "time_seconds": 53.70547914505005, "tool_id": "cloning_simulation", "tool_version": "0.1.0+galaxy0" }, @@ -166,21 +173,21 @@ "inputs": { "adv|use_file_names_as_ids": true, "assembly_csv": { - "id": "3abc48ca4f3e8d37", + "id": "3af58a5242e85ea6", "src": "hda" }, "assembly_plan_name": "GibsonAssembly", "genbank_files": { - "id": "c1bc3f2cd94aab77", + "id": "d9e72a80becfe6e7", "src": "hdca" }, "topology": "circular" }, "job": { - "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpy2ysv6tn/files/6/e/b/dataset_6eb20de3-662c-4428-907f-29cbe0a5cc20.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpy2ysv6tn/files/b/6/f/dataset_b6fe141d-f27d-475d-95fd-501e032f0c3b.dat' --domesticated_seq '' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'GibsonAssembly' --file_name_mapping '/tmp/tmpy2ysv6tn/files/b/6/f/dataset_b6fe141d-f27d-475d-95fd-501e032f0c3b.dat:gibson_sequences.fa' --file_name_mapping_dom '' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpy2ysv6tn/job_working_directory/000/17/outputs/dataset_41d853b4-adb6-4605-bbaf-d7178b962d92.dat'", + "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpc6lic4p9/files/1/d/6/dataset_1d624c24-e864-463a-9fd3-0c63fd46cbd2.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpc6lic4p9/files/5/0/5/dataset_505aafa2-5e9c-44bb-9d26-3f3e6248fc9b.dat' --domesticated_seq '' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'GibsonAssembly' --file_name_mapping '/tmp/tmpc6lic4p9/files/5/0/5/dataset_505aafa2-5e9c-44bb-9d26-3f3e6248fc9b.dat:gibson_sequences.fa' --file_name_mapping_dom '' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpc6lic4p9/job_working_directory/000/17/outputs/dataset_0f617192-e625-4d9e-8358-0b9b1b0aa024.dat' && echo DEBUG && ls 'outdir_gb'", "command_version": "", "copied_from_job_id": null, - "create_time": "2025-05-26T10:01:03.681089", + "create_time": "2025-05-26T11:24:25.394299", "dependencies": [ { "cacheable": false, @@ -360,21 +367,21 @@ } ], "exit_code": 0, - "external_id": "114833", + "external_id": "152204", "galaxy_version": "24.2", "handler": null, - "history_id": "afa012b5b55ac394", - "id": "991084752433b654", + "history_id": "df00a2d9def0cc87", + "id": "7eb30039064fccdd", "inputs": { "assembly_csv": { - "id": "3abc48ca4f3e8d37", + "id": "3af58a5242e85ea6", "src": "hda", - "uuid": "6eb20de3-662c-4428-907f-29cbe0a5cc20" + "uuid": "1d624c24-e864-463a-9fd3-0c63fd46cbd2" }, "genbank_files1": { - "id": "9677ca5db33658a1", + "id": "3b85967b9c87a1cc", "src": "hda", - "uuid": "b6fe141d-f27d-475d-95fd-501e032f0c3b" + "uuid": "505aafa2-5e9c-44bb-9d26-3f3e6248fc9b" } }, "job_messages": [], @@ -385,55 +392,55 @@ "model_class": "Job", "output_collections": { "construct_gb": { - "id": "f1661b71781d8acc", + "id": "038c626e299361e9", "src": "hdca" } }, "outputs": { "__new_primary_file_construct_gb|construct_1__": { - "id": "400090ecd3303f56", + "id": "9773f41fb184880d", "src": "hda", - "uuid": "e24f4e4b-a2c0-4ebc-ac8a-e80cb0ce1266" + "uuid": "0d66c887-a6a3-4fd6-978a-9c0e2ce4b317" }, "__new_primary_file_construct_gb|construct_2__": { - "id": "974cc872eaa7d6a0", + "id": "41b44b0c750630a6", "src": "hda", - "uuid": "baec54da-c9df-4fb2-a156-7aaaabc3ee2d" + "uuid": "be7e7183-3b0d-40dd-9908-3e8dcd7f80bf" }, "__new_primary_file_construct_gb|construct_3__": { - "id": "8586d482e8f05e33", + "id": "bfc60c3d9bac68ee", "src": "hda", - "uuid": "8649dd5f-afe7-44fa-b07c-aba6fdb3c6fc" + "uuid": "2c7f645c-33d1-4a91-9608-221494b22be4" }, "output_zip": { - "id": "991084752433b654", + "id": "5c8c8c874b5b07c6", "src": "hda", - "uuid": "41d853b4-adb6-4605-bbaf-d7178b962d92" + "uuid": "0f617192-e625-4d9e-8358-0b9b1b0aa024" } }, "params": { "__input_ext": "\"input\"", "adv": "{\"enzyme\": \"auto\", \"use_file_names_as_ids\": true}", "assembly_plan_name": "\"GibsonAssembly\"", - "chromInfo": "\"/tmp/tmpy2ysv6tn/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", + "chromInfo": "\"/tmp/tmpc6lic4p9/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", "dbkey": "\"?\"", "domesticated_input": null, "genbank_files": "{\"values\": [{\"id\": 3, \"src\": \"hdca\"}]}", "topology": "\"circular\"" }, "state": "ok", - "stderr": "\rassembly: 0%| | 0/5 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/5 [00:00<?, ?it/s, now=None]\rassembly: 40%|\u2588\u2588\u2588\u2588 | 2/5 [00:00<00:00, 4.32it/s, now=None]\rassembly: 60%|\u2588\u2588\u2588\u2588\u2588\u2588 | 3/5 [00:00<00:00, 4.24it/s, now=None]\rassembly: 80%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 | 4/5 [00:00<00:00, 4.35it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 5/5 [00:01<00:00, 3.63it/s, now=None]\r \r", - "stdout": " 1 2 3 4 5\n0 \nconstruct parts NaN NaN NaN NaN\nconstruct_1 Frag_1 Frag_2 Frag_3 Frag_4 Frag_5\nconstruct_2 Frag_1 Frag_2 Frag_3 Frag_4b Frag_5\nconstruct_3 Frag_1 Frag_2 Frag_3 Frag_4c Frag_5b\nconstruct_4 Frag_1 Frag_2 Frag_3 Frag_4 NaN\nconstruct_5 Frag_1 Frag_2 Frag_3 Frag_4 Frag_4b\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 2, 'valid_assemblies': 3}\nGenerating assemblies reports...\n", + "stderr": "\rassembly: 0%| | 0/5 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/5 [00:00<?, ?it/s, now=None]\rassembly: 40%|\u2588\u2588\u2588\u2588 | 2/5 [00:00<00:00, 4.24it/s, now=None]\rassembly: 60%|\u2588\u2588\u2588\u2588\u2588\u2588 | 3/5 [00:00<00:00, 4.27it/s, now=None]\rassembly: 80%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 | 4/5 [00:00<00:00, 4.28it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 5/5 [00:01<00:00, 3.48it/s, now=None]\r \r", + "stdout": " 1 2 3 4 5\n0 \nconstruct parts NaN NaN NaN NaN\nconstruct_1 Frag_1 Frag_2 Frag_3 Frag_4 Frag_5\nconstruct_2 Frag_1 Frag_2 Frag_3 Frag_4b Frag_5\nconstruct_3 Frag_1 Frag_2 Frag_3 Frag_4c Frag_5b\nconstruct_4 Frag_1 Frag_2 Frag_3 Frag_4 NaN\nconstruct_5 Frag_1 Frag_2 Frag_3 Frag_4 Frag_4b\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 2, 'valid_assemblies': 3}\nGenerating assemblies reports...\nDEBUG\nconstruct_1.gb\nconstruct_2.gb\nconstruct_3.gb\n", "tool_id": "cloning_simulation", - "tool_stderr": "\rassembly: 0%| | 0/5 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/5 [00:00<?, ?it/s, now=None]\rassembly: 40%|\u2588\u2588\u2588\u2588 | 2/5 [00:00<00:00, 4.32it/s, now=None]\rassembly: 60%|\u2588\u2588\u2588\u2588\u2588\u2588 | 3/5 [00:00<00:00, 4.24it/s, now=None]\rassembly: 80%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 | 4/5 [00:00<00:00, 4.35it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 5/5 [00:01<00:00, 3.63it/s, now=None]\r \r", - "tool_stdout": " 1 2 3 4 5\n0 \nconstruct parts NaN NaN NaN NaN\nconstruct_1 Frag_1 Frag_2 Frag_3 Frag_4 Frag_5\nconstruct_2 Frag_1 Frag_2 Frag_3 Frag_4b Frag_5\nconstruct_3 Frag_1 Frag_2 Frag_3 Frag_4c Frag_5b\nconstruct_4 Frag_1 Frag_2 Frag_3 Frag_4 NaN\nconstruct_5 Frag_1 Frag_2 Frag_3 Frag_4 Frag_4b\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 2, 'valid_assemblies': 3}\nGenerating assemblies reports...\n", - "update_time": "2025-05-26T10:01:15.563285", + "tool_stderr": "\rassembly: 0%| | 0/5 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/5 [00:00<?, ?it/s, now=None]\rassembly: 40%|\u2588\u2588\u2588\u2588 | 2/5 [00:00<00:00, 4.24it/s, now=None]\rassembly: 60%|\u2588\u2588\u2588\u2588\u2588\u2588 | 3/5 [00:00<00:00, 4.27it/s, now=None]\rassembly: 80%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 | 4/5 [00:00<00:00, 4.28it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 5/5 [00:01<00:00, 3.48it/s, now=None]\r \r", + "tool_stdout": " 1 2 3 4 5\n0 \nconstruct parts NaN NaN NaN NaN\nconstruct_1 Frag_1 Frag_2 Frag_3 Frag_4 Frag_5\nconstruct_2 Frag_1 Frag_2 Frag_3 Frag_4b Frag_5\nconstruct_3 Frag_1 Frag_2 Frag_3 Frag_4c Frag_5b\nconstruct_4 Frag_1 Frag_2 Frag_3 Frag_4 NaN\nconstruct_5 Frag_1 Frag_2 Frag_3 Frag_4 Frag_4b\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 2, 'valid_assemblies': 3}\nGenerating assemblies reports...\nDEBUG\nconstruct_1.gb\nconstruct_2.gb\nconstruct_3.gb\n", + "update_time": "2025-05-26T11:24:37.446583", "user_email": "planemo@galaxyproject.org", - "user_id": "66f8380583c086e1" + "user_id": "fcc5b7d13a1328f6" }, "status": "success", "test_index": 1, - "time_seconds": 22.980356216430664, + "time_seconds": 22.626197814941406, "tool_id": "cloning_simulation", "tool_version": "0.1.0+galaxy0" }, @@ -445,21 +452,113 @@ "inputs": { "adv|use_file_names_as_ids": true, "assembly_csv": { - "id": "94fb43fdf96ceebf", + "id": "48d1542b43af9171", "src": "hda" }, "assembly_plan_name": "LigaseCyclingReactionAssembly", "genbank_files": { - "id": "e1129f30c30438be", + "id": "c7c3cd49f3337c1a", "src": "hdca" }, "topology": "circular" }, "job": { - "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpy2ysv6tn/files/4/6/9/dataset_469df048-1608-4e28-a8c3-576433c72c7f.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpy2ysv6tn/files/1/8/9/dataset_18952cef-c715-4776-9f53-69156da89d01.dat,/tmp/tmpy2ysv6tn/files/8/1/3/dataset_81322056-69eb-4dcd-88ee-6cb78ff617db.dat' --domesticated_seq '' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'LigaseCyclingReactionAssembly' --file_name_mapping '/tmp/tmpy2ysv6tn/files/1/8/9/dataset_18952cef-c715-4776-9f53-69156da89d01.dat:RFP_GFP_plasmid_BOs.fa,/tmp/tmpy2ysv6tn/files/8/1/3/dataset_81322056-69eb-4dcd-88ee-6cb78ff617db.dat:RFP_GFP_plasmid_parts.fa' --file_name_mapping_dom '' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpy2ysv6tn/job_working_directory/000/21/outputs/dataset_d2df6190-9462-41aa-92d2-d4a5c1a605d3.dat'", + "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpc6lic4p9/files/a/1/f/dataset_a1f989b9-e79f-4bd7-9cf3-66675c1d1e94.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpc6lic4p9/files/a/6/1/dataset_a617ae1f-70e3-4873-bdcc-f2268ffeaad4.dat,/tmp/tmpc6lic4p9/files/9/4/1/dataset_941b4e95-600a-485c-a3fa-1dcf0defdd76.dat' --domesticated_seq '' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'LigaseCyclingReactionAssembly' --file_name_mapping '/tmp/tmpc6lic4p9/files/a/6/1/dataset_a617ae1f-70e3-4873-bdcc-f2268ffeaad4.dat:RFP_GFP_plasmid_BOs.fa,/tmp/tmpc6lic4p9/files/9/4/1/dataset_941b4e95-600a-485c-a3fa-1dcf0defdd76.dat:RFP_GFP_plasmid_parts.fa' --file_name_mapping_dom '' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpc6lic4p9/job_working_directory/000/21/outputs/dataset_827e64a1-7f84-4f9e-8468-eabb3684efa3.dat'", "command_version": "", "copied_from_job_id": null, - "create_time": "2025-05-26T10:01:27.721793", + "create_time": "2025-05-26T11:24:49.729783", + "dependencies": [], + "exit_code": 0, + "external_id": "152654", + "galaxy_version": "24.2", + "handler": null, + "history_id": "d9e72a80becfe6e7", + "id": "5c8c8c874b5b07c6", + "inputs": { + "assembly_csv": { + "id": "48d1542b43af9171", + "src": "hda", + "uuid": "a1f989b9-e79f-4bd7-9cf3-66675c1d1e94" + }, + "genbank_files1": { + "id": "b8df5ed9fe071f18", + "src": "hda", + "uuid": "a617ae1f-70e3-4873-bdcc-f2268ffeaad4" + }, + "genbank_files2": { + "id": "6de9142d4b5ca725", + "src": "hda", + "uuid": "941b4e95-600a-485c-a3fa-1dcf0defdd76" + } + }, + "job_messages": [], + "job_metrics": [], + "job_runner_name": null, + "job_stderr": "", + "job_stdout": "", + "model_class": "Job", + "output_collections": { + "construct_gb": { + "id": "51c35891e43131e2", + "src": "hdca" + } + }, + "outputs": { + "output_zip": { + "id": "56521fbfdcb4ef20", + "src": "hda", + "uuid": "827e64a1-7f84-4f9e-8468-eabb3684efa3" + } + }, + "params": { + "__input_ext": "\"input\"", + "adv": "{\"enzyme\": \"auto\", \"use_file_names_as_ids\": true}", + "assembly_plan_name": "\"LigaseCyclingReactionAssembly\"", + "chromInfo": "\"/tmp/tmpc6lic4p9/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", + "dbkey": "\"?\"", + "domesticated_input": null, + "genbank_files": "{\"values\": [{\"id\": 5, \"src\": \"hdca\"}]}", + "topology": "\"circular\"" + }, + "state": "ok", + "stderr": "\rassembly: 0%| | 0/2 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/2 [00:00<?, ?it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 2/2 [00:00<00:00, 2.16it/s, now=None]\r \r", + "stdout": " 1 ... 14\n0 ... \nConstruct1 RFP_GFP_BO_10232 ... p7_backbone\nConstruct2_flawed RFP_GFP_BO_10232 ... NaN\n\n[2 rows x 14 columns]\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 2, 'valid_assemblies': 0}\nGenerating assemblies reports...\n", + "tool_id": "cloning_simulation", + "tool_stderr": "\rassembly: 0%| | 0/2 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/2 [00:00<?, ?it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 2/2 [00:00<00:00, 2.16it/s, now=None]\r \r", + "tool_stdout": " 1 ... 14\n0 ... \nConstruct1 RFP_GFP_BO_10232 ... p7_backbone\nConstruct2_flawed RFP_GFP_BO_10232 ... NaN\n\n[2 rows x 14 columns]\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 2, 'valid_assemblies': 0}\nGenerating assemblies reports...\n", + "update_time": "2025-05-26T11:25:02.028309", + "user_email": "planemo@galaxyproject.org", + "user_id": "fcc5b7d13a1328f6" + }, + "status": "success", + "test_index": 2, + "time_seconds": 24.395533084869385, + "tool_id": "cloning_simulation", + "tool_version": "0.1.0+galaxy0" + }, + "has_data": true, + "id": "cloning_simulation-2" + }, + { + "data": { + "inputs": { + "adv|use_file_names_as_ids": true, + "assembly_csv": { + "id": "2b17a3fa18c23b8a", + "src": "hda" + }, + "assembly_plan_name": "BASICAssembly", + "genbank_files": { + "id": "84db48b219855f4d", + "src": "hdca" + }, + "topology": "circular" + }, + "job": { + "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpc6lic4p9/files/6/b/e/dataset_6be38f7d-b5c4-4308-85d1-3bd6b4dae4fc.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpc6lic4p9/files/c/b/a/dataset_cba9b297-4dfe-4063-8510-6c48a1b6b7a1.dat,/tmp/tmpc6lic4p9/files/3/e/8/dataset_3e8dfce1-7a05-4665-9277-388e3aa42581.dat,/tmp/tmpc6lic4p9/files/a/5/d/dataset_a5d093c2-0087-453e-b7d1-d94a7cb664e0.dat,/tmp/tmpc6lic4p9/files/0/e/c/dataset_0ec72cc0-2a95-474b-aa77-7a436dad6a9b.dat,/tmp/tmpc6lic4p9/files/d/2/7/dataset_d272199f-2e1b-49e1-a597-5ffa11507e83.dat' --domesticated_seq '' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'BASICAssembly' --file_name_mapping '/tmp/tmpc6lic4p9/files/c/b/a/dataset_cba9b297-4dfe-4063-8510-6c48a1b6b7a1.dat:GFP.gb,/tmp/tmpc6lic4p9/files/3/e/8/dataset_3e8dfce1-7a05-4665-9277-388e3aa42581.dat:p15A_kan.gb,/tmp/tmpc6lic4p9/files/a/5/d/dataset_a5d093c2-0087-453e-b7d1-d94a7cb664e0.dat:promoter.gb,/tmp/tmpc6lic4p9/files/0/e/c/dataset_0ec72cc0-2a95-474b-aa77-7a436dad6a9b.dat:RFP.gb,/tmp/tmpc6lic4p9/files/d/2/7/dataset_d272199f-2e1b-49e1-a597-5ffa11507e83.dat:oligos.fa' --file_name_mapping_dom '' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpc6lic4p9/job_working_directory/000/28/outputs/dataset_7435335e-896e-47f4-89c7-3a6c2c25f247.dat'", + "command_version": "", + "copied_from_job_id": null, + "create_time": "2025-05-26T11:25:23.055332", "dependencies": [ { "cacheable": false, @@ -639,26 +738,41 @@ } ], "exit_code": 0, - "external_id": "115234", + "external_id": "153248", "galaxy_version": "24.2", "handler": null, - "history_id": "c1bc3f2cd94aab77", - "id": "de23ac49d5c4a7c8", + "history_id": "038c626e299361e9", + "id": "56521fbfdcb4ef20", "inputs": { "assembly_csv": { - "id": "94fb43fdf96ceebf", + "id": "2b17a3fa18c23b8a", "src": "hda", - "uuid": "469df048-1608-4e28-a8c3-576433c72c7f" + "uuid": "6be38f7d-b5c4-4308-85d1-3bd6b4dae4fc" }, "genbank_files1": { - "id": "de23ac49d5c4a7c8", + "id": "aed8b1a22d89d8c9", "src": "hda", - "uuid": "18952cef-c715-4776-9f53-69156da89d01" + "uuid": "cba9b297-4dfe-4063-8510-6c48a1b6b7a1" }, "genbank_files2": { - "id": "de6580a03a572321", + "id": "eba7a310b55aafdd", + "src": "hda", + "uuid": "3e8dfce1-7a05-4665-9277-388e3aa42581" + }, + "genbank_files3": { + "id": "eca1089322e0a5fc", "src": "hda", - "uuid": "81322056-69eb-4dcd-88ee-6cb78ff617db" + "uuid": "a5d093c2-0087-453e-b7d1-d94a7cb664e0" + }, + "genbank_files4": { + "id": "0b586e83183b9891", + "src": "hda", + "uuid": "0ec72cc0-2a95-474b-aa77-7a436dad6a9b" + }, + "genbank_files5": { + "id": "18d15f79e0c5cee5", + "src": "hda", + "uuid": "d272199f-2e1b-49e1-a597-5ffa11507e83" } }, "job_messages": [], @@ -669,66 +783,66 @@ "model_class": "Job", "output_collections": { "construct_gb": { - "id": "abbaf1e2c3c282ad", + "id": "cf00b67a5455eb5a", "src": "hdca" } }, "outputs": { "output_zip": { - "id": "fdc5ed0a88852c9a", + "id": "684e8d7e5eb8731e", "src": "hda", - "uuid": "d2df6190-9462-41aa-92d2-d4a5c1a605d3" + "uuid": "7435335e-896e-47f4-89c7-3a6c2c25f247" } }, "params": { "__input_ext": "\"input\"", "adv": "{\"enzyme\": \"auto\", \"use_file_names_as_ids\": true}", - "assembly_plan_name": "\"LigaseCyclingReactionAssembly\"", - "chromInfo": "\"/tmp/tmpy2ysv6tn/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", + "assembly_plan_name": "\"BASICAssembly\"", + "chromInfo": "\"/tmp/tmpc6lic4p9/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", "dbkey": "\"?\"", "domesticated_input": null, - "genbank_files": "{\"values\": [{\"id\": 5, \"src\": \"hdca\"}]}", + "genbank_files": "{\"values\": [{\"id\": 7, \"src\": \"hdca\"}]}", "topology": "\"circular\"" }, "state": "ok", - "stderr": "\rassembly: 0%| | 0/2 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/2 [00:00<?, ?it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 2/2 [00:00<00:00, 2.27it/s, now=None]\r \r", - "stdout": " 1 ... 14\n0 ... \nConstruct1 RFP_GFP_BO_10232 ... p7_backbone\nConstruct2_flawed RFP_GFP_BO_10232 ... NaN\n\n[2 rows x 14 columns]\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 2, 'valid_assemblies': 0}\nGenerating assemblies reports...\n", + "stderr": "\rassembly: 0%| | 0/10 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/8 [00:00<?, ?it/s, now=None]\rassembly: 75%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c | 6/8 [00:00<00:00, 50.04it/s, now=None]\r \r", + "stdout": "Simulating assembly plan assambly...\n{'cancelled_assemblies': 2, 'errored_assemblies': 8, 'valid_assemblies': 0}\nGenerating assemblies reports...\n", "tool_id": "cloning_simulation", - "tool_stderr": "\rassembly: 0%| | 0/2 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/2 [00:00<?, ?it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 2/2 [00:00<00:00, 2.27it/s, now=None]\r \r", - "tool_stdout": " 1 ... 14\n0 ... \nConstruct1 RFP_GFP_BO_10232 ... p7_backbone\nConstruct2_flawed RFP_GFP_BO_10232 ... NaN\n\n[2 rows x 14 columns]\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 2, 'valid_assemblies': 0}\nGenerating assemblies reports...\n", - "update_time": "2025-05-26T10:01:40.416074", + "tool_stderr": "\rassembly: 0%| | 0/10 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/8 [00:00<?, ?it/s, now=None]\rassembly: 75%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c | 6/8 [00:00<00:00, 50.04it/s, now=None]\r \r", + "tool_stdout": "Simulating assembly plan assambly...\n{'cancelled_assemblies': 2, 'errored_assemblies': 8, 'valid_assemblies': 0}\nGenerating assemblies reports...\n", + "update_time": "2025-05-26T11:25:33.071688", "user_email": "planemo@galaxyproject.org", - "user_id": "66f8380583c086e1" + "user_id": "fcc5b7d13a1328f6" }, "status": "success", - "test_index": 2, - "time_seconds": 24.68060541152954, + "test_index": 3, + "time_seconds": 30.88078260421753, "tool_id": "cloning_simulation", "tool_version": "0.1.0+galaxy0" }, "has_data": true, - "id": "cloning_simulation-2" + "id": "cloning_simulation-3" }, { "data": { "inputs": { "adv|use_file_names_as_ids": true, "assembly_csv": { - "id": "b07ae8db70ca0b69", + "id": "8484dc7b019fd65a", "src": "hda" }, - "assembly_plan_name": "BASICAssembly", + "assembly_plan_name": "BioBrickStandardAssembly", "genbank_files": { - "id": "18bb6cd07b986e37", + "id": "a3780ecc1a00a0d8", "src": "hdca" }, "topology": "circular" }, "job": { - "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpy2ysv6tn/files/1/1/b/dataset_11b19080-d21f-4a3e-a516-77bb7f1eb8ff.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpy2ysv6tn/files/c/1/3/dataset_c13c3bb5-74f3-49b4-979e-08064cbcd96e.dat,/tmp/tmpy2ysv6tn/files/2/2/0/dataset_220d8ce3-65a2-4880-9924-e41f685e1386.dat,/tmp/tmpy2ysv6tn/files/2/6/4/dataset_264d7e95-807d-45aa-ada7-244e7896dd95.dat,/tmp/tmpy2ysv6tn/files/7/e/e/dataset_7eede81c-a796-4189-94df-82245763e19f.dat,/tmp/tmpy2ysv6tn/files/c/9/5/dataset_c9537938-db0d-4d07-9eee-2cfeec50a90d.dat' --domesticated_seq '' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'BASICAssembly' --file_name_mapping '/tmp/tmpy2ysv6tn/files/c/1/3/dataset_c13c3bb5-74f3-49b4-979e-08064cbcd96e.dat:GFP.gb,/tmp/tmpy2ysv6tn/files/2/2/0/dataset_220d8ce3-65a2-4880-9924-e41f685e1386.dat:p15A_kan.gb,/tmp/tmpy2ysv6tn/files/2/6/4/dataset_264d7e95-807d-45aa-ada7-244e7896dd95.dat:promoter.gb,/tmp/tmpy2ysv6tn/files/7/e/e/dataset_7eede81c-a796-4189-94df-82245763e19f.dat:RFP.gb,/tmp/tmpy2ysv6tn/files/c/9/5/dataset_c9537938-db0d-4d07-9eee-2cfeec50a90d.dat:oligos.fa' --file_name_mapping_dom '' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpy2ysv6tn/job_working_directory/000/28/outputs/dataset_b055edc9-ea72-46ca-8971-352c46db387e.dat'", + "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpc6lic4p9/files/8/e/2/dataset_8e2dcaab-3dd7-48c4-920e-bdffaad39793.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpc6lic4p9/files/d/4/2/dataset_d4271a43-8722-4344-9562-00e9a36d07e5.dat,/tmp/tmpc6lic4p9/files/2/4/8/dataset_2484bbfb-d4b0-4c8b-a57f-675625f98753.dat,/tmp/tmpc6lic4p9/files/8/3/f/dataset_83f035f7-25fc-4a59-83b2-d377e3cd59ad.dat,/tmp/tmpc6lic4p9/files/5/a/a/dataset_5aa7b19e-0ad1-43b1-9083-954067ff2010.dat,/tmp/tmpc6lic4p9/files/d/6/4/dataset_d646b71c-5393-4291-bcc5-7d6cbe22f055.dat' --domesticated_seq '' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'BioBrickStandardAssembly' --file_name_mapping '/tmp/tmpc6lic4p9/files/d/4/2/dataset_d4271a43-8722-4344-9562-00e9a36d07e5.dat:BBa_E0040_GFP.gb,/tmp/tmpc6lic4p9/files/2/4/8/dataset_2484bbfb-d4b0-4c8b-a57f-675625f98753.dat:BBa_J23119_prom.gb,/tmp/tmpc6lic4p9/files/8/3/f/dataset_83f035f7-25fc-4a59-83b2-d377e3cd59ad.dat:BBa_J23119_prom_flawed.gb,/tmp/tmpc6lic4p9/files/5/a/a/dataset_5aa7b19e-0ad1-43b1-9083-954067ff2010.dat:BBa_J61048_term.gb,/tmp/tmpc6lic4p9/files/d/6/4/dataset_d646b71c-5393-4291-bcc5-7d6cbe22f055.dat:BBa_K611094_bar.gb' --file_name_mapping_dom '' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpc6lic4p9/job_working_directory/000/35/outputs/dataset_8086c8c0-24b8-4a51-84db-6b4c9b0e76d0.dat'", "command_version": "", "copied_from_job_id": null, - "create_time": "2025-05-26T10:02:02.222212", + "create_time": "2025-05-26T11:25:53.885012", "dependencies": [ { "cacheable": false, @@ -908,41 +1022,41 @@ } ], "exit_code": 0, - "external_id": "115859", + "external_id": "153816", "galaxy_version": "24.2", "handler": null, - "history_id": "f1661b71781d8acc", - "id": "80951ee9dc2649e8", + "history_id": "c7c3cd49f3337c1a", + "id": "684e8d7e5eb8731e", "inputs": { "assembly_csv": { - "id": "b07ae8db70ca0b69", + "id": "8484dc7b019fd65a", "src": "hda", - "uuid": "11b19080-d21f-4a3e-a516-77bb7f1eb8ff" + "uuid": "8e2dcaab-3dd7-48c4-920e-bdffaad39793" }, "genbank_files1": { - "id": "cd28fb0d133db699", + "id": "f007b0e97c7852a9", "src": "hda", - "uuid": "c13c3bb5-74f3-49b4-979e-08064cbcd96e" + "uuid": "d4271a43-8722-4344-9562-00e9a36d07e5" }, "genbank_files2": { - "id": "204f425176d83e80", + "id": "0776247cf19fcdeb", "src": "hda", - "uuid": "220d8ce3-65a2-4880-9924-e41f685e1386" + "uuid": "2484bbfb-d4b0-4c8b-a57f-675625f98753" }, "genbank_files3": { - "id": "a412e91f962611fc", + "id": "428c69cf899eb78e", "src": "hda", - "uuid": "264d7e95-807d-45aa-ada7-244e7896dd95" + "uuid": "83f035f7-25fc-4a59-83b2-d377e3cd59ad" }, "genbank_files4": { - "id": "80951ee9dc2649e8", + "id": "6576e427b69a444e", "src": "hda", - "uuid": "7eede81c-a796-4189-94df-82245763e19f" + "uuid": "5aa7b19e-0ad1-43b1-9083-954067ff2010" }, "genbank_files5": { - "id": "02cc6fb051fdc602", + "id": "bd5ff021b11f5160", "src": "hda", - "uuid": "c9537938-db0d-4d07-9eee-2cfeec50a90d" + "uuid": "d646b71c-5393-4291-bcc5-7d6cbe22f055" } }, "job_messages": [], @@ -953,162 +1067,55 @@ "model_class": "Job", "output_collections": { "construct_gb": { - "id": "82689942017f4326", - "src": "hdca" - } - }, - "outputs": { - "output_zip": { - "id": "68883cc453ec32a5", - "src": "hda", - "uuid": "b055edc9-ea72-46ca-8971-352c46db387e" - } - }, - "params": { - "__input_ext": "\"input\"", - "adv": "{\"enzyme\": \"auto\", \"use_file_names_as_ids\": true}", - "assembly_plan_name": "\"BASICAssembly\"", - "chromInfo": "\"/tmp/tmpy2ysv6tn/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", - "dbkey": "\"?\"", - "domesticated_input": null, - "genbank_files": "{\"values\": [{\"id\": 7, \"src\": \"hdca\"}]}", - "topology": "\"circular\"" - }, - "state": "ok", - "stderr": "\rassembly: 0%| | 0/10 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/8 [00:00<?, ?it/s, now=None]\rassembly: 62%|\u2588\u2588\u2588\u2588\u2588\u2588\u258e | 5/8 [00:00<00:00, 47.54it/s, now=None]\r \r", - "stdout": " 1 2 3 ... 10 11 12\n0 ... \nL2RBS-1P L2RBS-1P_fwd L2RBS-1P_adapter NaN ... NaN NaN NaN\nLMA-S LMA-S_fwd LMA-S_adapter NaN ... NaN NaN NaN\nL1RBS-xS L1RBS-xS_fwd L1RBS-xS_adapter NaN ... NaN NaN NaN\nL1RBS-1P L1RBS-1P_fwd L1RBS-1P_adapter NaN ... NaN NaN NaN\nL2RBS-xS L2RBS-xS_fwd L2RBS-xS_adapter NaN ... NaN NaN NaN\nLMA-P LMA-P_fwd LMA-P_adapter NaN ... NaN NaN NaN\nLMB-S LMB-S_fwd LMB-S_adapter NaN ... NaN NaN NaN\nLMB-P LMB-P_fwd LMB-P_adapter NaN ... NaN NaN NaN\nasm_GFP_RFP LMA-P promoter L1RBS-xS ... LMB-P p15A_kan LMA-S\nasm_RFP_GFP LMA-P promoter L1RBS-xS ... LMB-P p15A_kan LMA-S\n\n[10 rows x 12 columns]\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 2, 'errored_assemblies': 8, 'valid_assemblies': 0}\nGenerating assemblies reports...\n", - "tool_id": "cloning_simulation", - "tool_stderr": "\rassembly: 0%| | 0/10 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/8 [00:00<?, ?it/s, now=None]\rassembly: 62%|\u2588\u2588\u2588\u2588\u2588\u2588\u258e | 5/8 [00:00<00:00, 47.54it/s, now=None]\r \r", - "tool_stdout": " 1 2 3 ... 10 11 12\n0 ... \nL2RBS-1P L2RBS-1P_fwd L2RBS-1P_adapter NaN ... NaN NaN NaN\nLMA-S LMA-S_fwd LMA-S_adapter NaN ... NaN NaN NaN\nL1RBS-xS L1RBS-xS_fwd L1RBS-xS_adapter NaN ... NaN NaN NaN\nL1RBS-1P L1RBS-1P_fwd L1RBS-1P_adapter NaN ... NaN NaN NaN\nL2RBS-xS L2RBS-xS_fwd L2RBS-xS_adapter NaN ... NaN NaN NaN\nLMA-P LMA-P_fwd LMA-P_adapter NaN ... NaN NaN NaN\nLMB-S LMB-S_fwd LMB-S_adapter NaN ... NaN NaN NaN\nLMB-P LMB-P_fwd LMB-P_adapter NaN ... NaN NaN NaN\nasm_GFP_RFP LMA-P promoter L1RBS-xS ... LMB-P p15A_kan LMA-S\nasm_RFP_GFP LMA-P promoter L1RBS-xS ... LMB-P p15A_kan LMA-S\n\n[10 rows x 12 columns]\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 2, 'errored_assemblies': 8, 'valid_assemblies': 0}\nGenerating assemblies reports...\n", - "update_time": "2025-05-26T10:02:12.965513", - "user_email": "planemo@galaxyproject.org", - "user_id": "66f8380583c086e1" - }, - "status": "success", - "test_index": 3, - "time_seconds": 32.275617599487305, - "tool_id": "cloning_simulation", - "tool_version": "0.1.0+galaxy0" - }, - "has_data": true, - "id": "cloning_simulation-3" - }, - { - "data": { - "inputs": { - "adv|use_file_names_as_ids": true, - "assembly_csv": { - "id": "ab2d796f030478a4", - "src": "hda" - }, - "assembly_plan_name": "BioBrickStandardAssembly", - "genbank_files": { - "id": "ecc2b8a59c690090", - "src": "hdca" - }, - "topology": "circular" - }, - "job": { - "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpy2ysv6tn/files/5/6/e/dataset_56e880bc-1f93-495f-bfa8-0873cb8182a9.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpy2ysv6tn/files/d/d/e/dataset_dded78e6-5d3a-466d-a378-5793c801f32c.dat,/tmp/tmpy2ysv6tn/files/2/a/0/dataset_2a07a992-6527-4ac7-9c49-7fd9acbdea57.dat,/tmp/tmpy2ysv6tn/files/1/2/f/dataset_12faa3d9-c95d-4c34-9df7-6c53174d4276.dat,/tmp/tmpy2ysv6tn/files/5/8/1/dataset_581a4c55-0ce2-4c3b-a380-756448871f32.dat,/tmp/tmpy2ysv6tn/files/a/b/f/dataset_abf255f7-9841-4991-9b65-598df368ff85.dat' --domesticated_seq '' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'BioBrickStandardAssembly' --file_name_mapping '/tmp/tmpy2ysv6tn/files/d/d/e/dataset_dded78e6-5d3a-466d-a378-5793c801f32c.dat:BBa_E0040_GFP.gb,/tmp/tmpy2ysv6tn/files/2/a/0/dataset_2a07a992-6527-4ac7-9c49-7fd9acbdea57.dat:BBa_J23119_prom.gb,/tmp/tmpy2ysv6tn/files/1/2/f/dataset_12faa3d9-c95d-4c34-9df7-6c53174d4276.dat:BBa_J23119_prom_flawed.gb,/tmp/tmpy2ysv6tn/files/5/8/1/dataset_581a4c55-0ce2-4c3b-a380-756448871f32.dat:BBa_J61048_term.gb,/tmp/tmpy2ysv6tn/files/a/b/f/dataset_abf255f7-9841-4991-9b65-598df368ff85.dat:BBa_K611094_bar.gb' --file_name_mapping_dom '' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpy2ysv6tn/job_working_directory/000/35/outputs/dataset_d5e2affd-9228-4b21-8e89-36a43c59ab37.dat' && echo DEBUG && ls 'outdir_gb'", - "command_version": "", - "copied_from_job_id": null, - "create_time": "2025-05-26T10:02:34.725504", - "dependencies": [], - "exit_code": 0, - "external_id": "116476", - "galaxy_version": "24.2", - "handler": null, - "history_id": "e1129f30c30438be", - "id": "2edb1d8c4fcdfa57", - "inputs": { - "assembly_csv": { - "id": "ab2d796f030478a4", - "src": "hda", - "uuid": "56e880bc-1f93-495f-bfa8-0873cb8182a9" - }, - "genbank_files1": { - "id": "70033f808724210d", - "src": "hda", - "uuid": "dded78e6-5d3a-466d-a378-5793c801f32c" - }, - "genbank_files2": { - "id": "e4c403c1aada23ec", - "src": "hda", - "uuid": "2a07a992-6527-4ac7-9c49-7fd9acbdea57" - }, - "genbank_files3": { - "id": "afa1993aa783dac3", - "src": "hda", - "uuid": "12faa3d9-c95d-4c34-9df7-6c53174d4276" - }, - "genbank_files4": { - "id": "2edb1d8c4fcdfa57", - "src": "hda", - "uuid": "581a4c55-0ce2-4c3b-a380-756448871f32" - }, - "genbank_files5": { - "id": "cc59f77d482719ba", - "src": "hda", - "uuid": "abf255f7-9841-4991-9b65-598df368ff85" - } - }, - "job_messages": [], - "job_metrics": [], - "job_runner_name": null, - "job_stderr": "", - "job_stdout": "", - "model_class": "Job", - "output_collections": { - "construct_gb": { - "id": "d3a48cfe9e5a1f02", + "id": "cf75f655bb15877b", "src": "hdca" } }, "outputs": { "__new_primary_file_construct_gb|C1_prom_barcode__": { - "id": "b5e4bb927c5912de", + "id": "db302e29238adc09", "src": "hda", - "uuid": "1689e287-c7c5-488c-b397-a0d14018a93a" + "uuid": "d9b71247-a39f-49ea-b279-18a95173730d" }, "__new_primary_file_construct_gb|C2_gfp_term__": { - "id": "924199a1dc6199a2", + "id": "a0c89ee18eccf84a", "src": "hda", - "uuid": "82e60c5f-9305-4962-984c-4e667dc08972" + "uuid": "cf4710c7-cf67-4f0e-a486-606e525f5689" }, "__new_primary_file_construct_gb|C3_final__": { - "id": "f95eef361447e9a0", + "id": "b326684e3f9ff9a4", "src": "hda", - "uuid": "50703365-ca24-444a-8cc2-ac9467884479" + "uuid": "a4ed1a6f-9385-45da-9eda-3fae86d46b5b" }, "output_zip": { - "id": "5165064d73efc2e3", + "id": "e3a5c74dec901fc5", "src": "hda", - "uuid": "d5e2affd-9228-4b21-8e89-36a43c59ab37" + "uuid": "8086c8c0-24b8-4a51-84db-6b4c9b0e76d0" } }, "params": { "__input_ext": "\"input\"", "adv": "{\"enzyme\": \"auto\", \"use_file_names_as_ids\": true}", "assembly_plan_name": "\"BioBrickStandardAssembly\"", - "chromInfo": "\"/tmp/tmpy2ysv6tn/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", + "chromInfo": "\"/tmp/tmpc6lic4p9/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", "dbkey": "\"?\"", "domesticated_input": null, "genbank_files": "{\"values\": [{\"id\": 9, \"src\": \"hdca\"}]}", "topology": "\"circular\"" }, "state": "ok", - "stderr": "\rassembly: 0%| | 0/3 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/3 [00:00<?, ?it/s, now=None]\rassembly: 67%|\u2588\u2588\u2588\u2588\u2588\u2588\u258b | 2/3 [00:01<00:00, 1.98it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 3/3 [00:01<00:00, 1.60it/s, now=None]\r \r", - "stdout": " 1 2\n0 \nconstruct parts NaN\nC1_prom_barcode BBa_K611094_bar BBa_J23119_prom\nC2_gfp_term BBa_E0040_GFP BBa_J61048_term\nC3_final C1_prom_barcode C2_gfp_term\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 3}\nGenerating assemblies reports...\nDEBUG\nC1_prom_barcode.gb\nC2_gfp_term.gb\nC3_final.gb\n", + "stderr": "\rassembly: 0%| | 0/3 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/3 [00:00<?, ?it/s, now=None]\rassembly: 67%|\u2588\u2588\u2588\u2588\u2588\u2588\u258b | 2/3 [00:00<00:00, 2.10it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 3/3 [00:01<00:00, 1.72it/s, now=None]\r \r", + "stdout": "Simulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 3}\nGenerating assemblies reports...\n", "tool_id": "cloning_simulation", - "tool_stderr": "\rassembly: 0%| | 0/3 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/3 [00:00<?, ?it/s, now=None]\rassembly: 67%|\u2588\u2588\u2588\u2588\u2588\u2588\u258b | 2/3 [00:01<00:00, 1.98it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 3/3 [00:01<00:00, 1.60it/s, now=None]\r \r", - "tool_stdout": " 1 2\n0 \nconstruct parts NaN\nC1_prom_barcode BBa_K611094_bar BBa_J23119_prom\nC2_gfp_term BBa_E0040_GFP BBa_J61048_term\nC3_final C1_prom_barcode C2_gfp_term\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 3}\nGenerating assemblies reports...\nDEBUG\nC1_prom_barcode.gb\nC2_gfp_term.gb\nC3_final.gb\n", - "update_time": "2025-05-26T10:02:47.655383", + "tool_stderr": "\rassembly: 0%| | 0/3 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/3 [00:00<?, ?it/s, now=None]\rassembly: 67%|\u2588\u2588\u2588\u2588\u2588\u2588\u258b | 2/3 [00:00<00:00, 2.10it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 3/3 [00:01<00:00, 1.72it/s, now=None]\r \r", + "tool_stdout": "Simulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 3}\nGenerating assemblies reports...\n", + "update_time": "2025-05-26T11:26:06.650033", "user_email": "planemo@galaxyproject.org", - "user_id": "66f8380583c086e1" + "user_id": "fcc5b7d13a1328f6" }, "status": "success", "test_index": 4, - "time_seconds": 34.81275129318237, + "time_seconds": 33.60218787193298, "tool_id": "cloning_simulation", "tool_version": "0.1.0+galaxy0" }, @@ -1120,25 +1127,25 @@ "inputs": { "adv|use_file_names_as_ids": true, "assembly_csv": { - "id": "3494efe97c2aacb8", + "id": "ffdd8176dffd877d", "src": "hda" }, "assembly_plan_name": "Type2sRestrictionAssembly", "domesticated_input": { - "id": "4fffd7776804f395", + "id": "744832bdd7ccd728", "src": "hdca" }, "genbank_files": { - "id": "193b12b5837c3789", + "id": "855b83dd0dec8eab", "src": "hdca" }, "topology": "circular" }, "job": { - "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpy2ysv6tn/files/6/c/2/dataset_6c2089de-5285-4ae6-8e08-afa38810c0ee.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpy2ysv6tn/files/b/6/8/dataset_b68d8dba-f098-4f14-ac9f-b69541a834c8.dat,/tmp/tmpy2ysv6tn/files/a/9/4/dataset_a94042d7-2d70-4257-bbc5-ac3f2be93aff.dat,/tmp/tmpy2ysv6tn/files/1/d/e/dataset_1de72341-f4c1-48df-9466-a1c80e23fdfb.dat,/tmp/tmpy2ysv6tn/files/c/1/1/dataset_c1128abd-86a1-48b9-b66c-0152d76c85c9.dat,/tmp/tmpy2ysv6tn/files/2/f/2/dataset_2f2ab7b7-d6ef-4a2e-90b8-f15cddf56eea.dat,/tmp/tmpy2ysv6tn/files/9/0/4/dataset_90485827-d839-4e32-b546-9c32f77fd264.dat,/tmp/tmpy2ysv6tn/files/7/c/5/dataset_7c56a071-e9fe-4133-8a99-8a7d58e7b1fd.dat' --domesticated_seq '/tmp/tmpy2ysv6tn/files/0/f/3/dataset_0f38d420-af2a-42ba-a6d3-f16807653402.dat,/tmp/tmpy2ysv6tn/files/0/b/6/dataset_0b653ed4-f458-4567-b9b7-074257934433.dat,/tmp/tmpy2ysv6tn/files/7/0/d/dataset_70d7c859-83f1-4aa7-b1db-fee1b4d384c0.dat,/tmp/tmpy2ysv6tn/files/c/e/2/dataset_ce2505e6-35c7-4858-a27e-6c5761a35be3.dat,/tmp/tmpy2ysv6tn/files/6/8/b/dataset_68b8d30e-6c0c-466f-a70c-0e58bcc27e0d.dat' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'Type2sRestrictionAssembly' --file_name_mapping '/tmp/tmpy2ysv6tn/files/b/6/8/dataset_b68d8dba-f098-4f14-ac9f-b69541a834c8.dat:part_A.gb,/tmp/tmpy2ysv6tn/files/a/9/4/dataset_a94042d7-2d70-4257-bbc5-ac3f2be93aff.dat:part_B.gb,/tmp/tmpy2ysv6tn/files/1/d/e/dataset_1de72341-f4c1-48df-9466-a1c80e23fdfb.dat:part_C.gb,/tmp/tmpy2ysv6tn/files/c/1/1/dataset_c1128abd-86a1-48b9-b66c-0152d76c85c9.dat:part_D.gb,/tmp/tmpy2ysv6tn/files/2/f/2/dataset_2f2ab7b7-d6ef-4a2e-90b8-f15cddf56eea.dat:part_E.gb,/tmp/tmpy2ysv6tn/files/9/0/4/dataset_90485827-d839-4e32-b546-9c32f77fd264.dat:part_F.gb,/tmp/tmpy2ysv6tn/files/7/c/5/dataset_7c56a071-e9fe-4133-8a99-8a7d58e7b1fd.dat:part_G.gb' --file_name_mapping_dom '/tmp/tmpy2ysv6tn/files/0/f/3/dataset_0f38d420-af2a-42ba-a6d3-f16807653402.dat:part_H.gb,/tmp/tmpy2ysv6tn/files/0/b/6/dataset_0b653ed4-f458-4567-b9b7-074257934433.dat:part_I.gb,/tmp/tmpy2ysv6tn/files/7/0/d/dataset_70d7c859-83f1-4aa7-b1db-fee1b4d384c0.dat:part_J.gb,/tmp/tmpy2ysv6tn/files/c/e/2/dataset_ce2505e6-35c7-4858-a27e-6c5761a35be3.dat:part_K.gb,/tmp/tmpy2ysv6tn/files/6/8/b/dataset_68b8d30e-6c0c-466f-a70c-0e58bcc27e0d.dat:part_L.gb' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpy2ysv6tn/job_working_directory/000/49/outputs/dataset_445bab41-baa4-4de1-adfc-d4fd56892c5f.dat' && echo DEBUG && ls 'outdir_gb'", + "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpc6lic4p9/files/9/8/e/dataset_98e1b862-2d3e-4164-aecf-56bd464d0f11.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpc6lic4p9/files/b/6/6/dataset_b66afa5b-682d-49f8-9753-c78c356ff228.dat,/tmp/tmpc6lic4p9/files/4/6/e/dataset_46ea3fb9-8e60-42f3-b7d3-c1a6edc1837c.dat,/tmp/tmpc6lic4p9/files/8/3/5/dataset_8358e657-0e61-486b-adb4-e886f0f354ba.dat,/tmp/tmpc6lic4p9/files/4/c/f/dataset_4cfbb2dd-c5a5-42fe-889b-da6510422b72.dat,/tmp/tmpc6lic4p9/files/2/8/c/dataset_28c96444-abfb-4173-970e-e895146aef97.dat,/tmp/tmpc6lic4p9/files/f/5/4/dataset_f54c7a16-ac6f-42c2-9b6c-345af3050d83.dat,/tmp/tmpc6lic4p9/files/2/a/3/dataset_2a330eb7-d033-4e75-be7a-4473748a6f2d.dat' --domesticated_seq '/tmp/tmpc6lic4p9/files/6/8/7/dataset_6877c227-2c70-4080-962e-ee1855dd797f.dat,/tmp/tmpc6lic4p9/files/e/2/1/dataset_e212262c-a336-4263-a076-2cd300590ba4.dat,/tmp/tmpc6lic4p9/files/4/1/1/dataset_4112d545-7e37-4a6e-8ca8-7c1b8f90a71e.dat,/tmp/tmpc6lic4p9/files/b/3/1/dataset_b31955ce-ea44-4e3a-86a1-6aebc47be841.dat,/tmp/tmpc6lic4p9/files/d/4/d/dataset_d4d14388-55d3-4aec-810d-aa902028f29f.dat' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'Type2sRestrictionAssembly' --file_name_mapping '/tmp/tmpc6lic4p9/files/b/6/6/dataset_b66afa5b-682d-49f8-9753-c78c356ff228.dat:part_A.gb,/tmp/tmpc6lic4p9/files/4/6/e/dataset_46ea3fb9-8e60-42f3-b7d3-c1a6edc1837c.dat:part_B.gb,/tmp/tmpc6lic4p9/files/8/3/5/dataset_8358e657-0e61-486b-adb4-e886f0f354ba.dat:part_C.gb,/tmp/tmpc6lic4p9/files/4/c/f/dataset_4cfbb2dd-c5a5-42fe-889b-da6510422b72.dat:part_D.gb,/tmp/tmpc6lic4p9/files/2/8/c/dataset_28c96444-abfb-4173-970e-e895146aef97.dat:part_E.gb,/tmp/tmpc6lic4p9/files/f/5/4/dataset_f54c7a16-ac6f-42c2-9b6c-345af3050d83.dat:part_F.gb,/tmp/tmpc6lic4p9/files/2/a/3/dataset_2a330eb7-d033-4e75-be7a-4473748a6f2d.dat:part_G.gb' --file_name_mapping_dom '/tmp/tmpc6lic4p9/files/6/8/7/dataset_6877c227-2c70-4080-962e-ee1855dd797f.dat:part_H.gb,/tmp/tmpc6lic4p9/files/e/2/1/dataset_e212262c-a336-4263-a076-2cd300590ba4.dat:part_I.gb,/tmp/tmpc6lic4p9/files/4/1/1/dataset_4112d545-7e37-4a6e-8ca8-7c1b8f90a71e.dat:part_J.gb,/tmp/tmpc6lic4p9/files/b/3/1/dataset_b31955ce-ea44-4e3a-86a1-6aebc47be841.dat:part_K.gb,/tmp/tmpc6lic4p9/files/d/4/d/dataset_d4d14388-55d3-4aec-810d-aa902028f29f.dat:part_L.gb' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpc6lic4p9/job_working_directory/000/49/outputs/dataset_77f39d12-532c-468b-bcf7-fcc1fdedd34c.dat'", "command_version": "", "copied_from_job_id": null, - "create_time": "2025-05-26T10:03:29.120983", + "create_time": "2025-05-26T11:26:47.030790", "dependencies": [ { "cacheable": false, @@ -1318,76 +1325,76 @@ } ], "exit_code": 0, - "external_id": "117561", + "external_id": "154908", "galaxy_version": "24.2", "handler": null, - "history_id": "abbaf1e2c3c282ad", - "id": "3494efe97c2aacb8", + "history_id": "51c35891e43131e2", + "id": "0b19a103e85bbfbf", "inputs": { "assembly_csv": { - "id": "3494efe97c2aacb8", + "id": "ffdd8176dffd877d", "src": "hda", - "uuid": "6c2089de-5285-4ae6-8e08-afa38810c0ee" + "uuid": "98e1b862-2d3e-4164-aecf-56bd464d0f11" }, "domesticated_input1": { - "id": "a4800f28d8ead13a", + "id": "96e47893a0f61173", "src": "hda", - "uuid": "0f38d420-af2a-42ba-a6d3-f16807653402" + "uuid": "6877c227-2c70-4080-962e-ee1855dd797f" }, "domesticated_input2": { - "id": "73a220014461252c", + "id": "07b1a06cea2f6611", "src": "hda", - "uuid": "0b653ed4-f458-4567-b9b7-074257934433" + "uuid": "e212262c-a336-4263-a076-2cd300590ba4" }, "domesticated_input3": { - "id": "7d1b502fc1fb844a", + "id": "7c42ebb9622f8a60", "src": "hda", - "uuid": "70d7c859-83f1-4aa7-b1db-fee1b4d384c0" + "uuid": "4112d545-7e37-4a6e-8ca8-7c1b8f90a71e" }, "domesticated_input4": { - "id": "6a344bf502116f62", + "id": "33456f383510d381", "src": "hda", - "uuid": "ce2505e6-35c7-4858-a27e-6c5761a35be3" + "uuid": "b31955ce-ea44-4e3a-86a1-6aebc47be841" }, "domesticated_input5": { - "id": "a28d730bd7e6d71e", + "id": "3c2a17e7ec6c065d", "src": "hda", - "uuid": "68b8d30e-6c0c-466f-a70c-0e58bcc27e0d" + "uuid": "d4d14388-55d3-4aec-810d-aa902028f29f" }, "genbank_files1": { - "id": "b4c6f22fd42e2fbc", + "id": "c2ddc784389f17d2", "src": "hda", - "uuid": "b68d8dba-f098-4f14-ac9f-b69541a834c8" + "uuid": "b66afa5b-682d-49f8-9753-c78c356ff228" }, "genbank_files2": { - "id": "60c65d41f8ff0e9b", + "id": "79b5ff6df7bc6716", "src": "hda", - "uuid": "a94042d7-2d70-4257-bbc5-ac3f2be93aff" + "uuid": "46ea3fb9-8e60-42f3-b7d3-c1a6edc1837c" }, "genbank_files3": { - "id": "554995f2d7672bb2", + "id": "6f172ec7c3220722", "src": "hda", - "uuid": "1de72341-f4c1-48df-9466-a1c80e23fdfb" + "uuid": "8358e657-0e61-486b-adb4-e886f0f354ba" }, "genbank_files4": { - "id": "9450471e42664058", + "id": "0b19a103e85bbfbf", "src": "hda", - "uuid": "c1128abd-86a1-48b9-b66c-0152d76c85c9" + "uuid": "4cfbb2dd-c5a5-42fe-889b-da6510422b72" }, "genbank_files5": { - "id": "9a370553f77d6a31", + "id": "00fa99289b8a441d", "src": "hda", - "uuid": "2f2ab7b7-d6ef-4a2e-90b8-f15cddf56eea" + "uuid": "28c96444-abfb-4173-970e-e895146aef97" }, "genbank_files6": { - "id": "cecfeefdcb127887", + "id": "95a08e54dcf8e4b4", "src": "hda", - "uuid": "90485827-d839-4e32-b546-9c32f77fd264" + "uuid": "f54c7a16-ac6f-42c2-9b6c-345af3050d83" }, "genbank_files7": { - "id": "88bfe38878128ef9", + "id": "46fceb9ab6cb9139", "src": "hda", - "uuid": "7c56a071-e9fe-4133-8a99-8a7d58e7b1fd" + "uuid": "2a330eb7-d033-4e75-be7a-4473748a6f2d" } }, "job_messages": [], @@ -1398,60 +1405,60 @@ "model_class": "Job", "output_collections": { "construct_gb": { - "id": "41ca6db0600d7999", + "id": "c173cff58a987f8f", "src": "hdca" } }, "outputs": { "__new_primary_file_construct_gb|construct_1__": { - "id": "1750f123cc89cd74", + "id": "887639ccacb877d4", "src": "hda", - "uuid": "2402ee1c-8048-48aa-9180-d84ffbac4c0d" + "uuid": "ac0f5082-55fc-4fb6-b3ef-f2587cdd2662" }, "__new_primary_file_construct_gb|construct_2__": { - "id": "0a1a12a9af9d8d2a", + "id": "97c509c62c06ea77", "src": "hda", - "uuid": "4f5260cc-c112-4966-83c6-f3cd6f9cdd09" + "uuid": "9e439105-9563-450d-96a3-bec58242389e" }, "__new_primary_file_construct_gb|construct_3__": { - "id": "a7850a538357f009", + "id": "05372c5ab71bbd4d", "src": "hda", - "uuid": "d2eb027d-9f28-4cf0-bd60-f8856220a681" + "uuid": "13079e9f-8185-4b43-898a-83348a3fe55b" }, "__new_primary_file_construct_gb|construct_4__": { - "id": "eeb0994ae957c814", + "id": "14e667eccbf3c9ac", "src": "hda", - "uuid": "df9e0b45-10c1-46a2-a1bf-fccc2817a77e" + "uuid": "4aec2395-19a8-49b5-a927-39b5b06dabe7" }, "output_zip": { - "id": "4d7f94dc70c8b750", + "id": "edb47c5501e52d48", "src": "hda", - "uuid": "445bab41-baa4-4de1-adfc-d4fd56892c5f" + "uuid": "77f39d12-532c-468b-bcf7-fcc1fdedd34c" } }, "params": { "__input_ext": "\"input\"", "adv": "{\"enzyme\": \"auto\", \"use_file_names_as_ids\": true}", "assembly_plan_name": "\"Type2sRestrictionAssembly\"", - "chromInfo": "\"/tmp/tmpy2ysv6tn/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", + "chromInfo": "\"/tmp/tmpc6lic4p9/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", "dbkey": "\"?\"", "domesticated_input": "{\"values\": [{\"id\": 11, \"src\": \"hdca\"}]}", "genbank_files": "{\"values\": [{\"id\": 12, \"src\": \"hdca\"}]}", "topology": "\"circular\"" }, "state": "ok", - "stderr": "\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\rassembly: 50%|\u2588\u2588\u2588\u2588\u2588 | 2/4 [00:00<00:00, 2.39it/s, now=None]\rassembly: 75%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c | 3/4 [00:01<00:00, 2.20it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 4/4 [00:02<00:00, 1.79it/s, now=None]\r \r", - "stdout": " 1 2 3 4 5 6\n0 \nconstruct_3 construct_1 part_L part_J part_K NaN NaN\nconstruct_4 construct_2 part_L part_J part_K NaN NaN\nconstruct_1 part_A part_B part_C part_D part_E part_F\nconstruct_2 part_A part_G part_H part_I part_F NaN\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 4}\nGenerating assemblies reports...\nDEBUG\nconstruct_1.gb\nconstruct_2.gb\nconstruct_3.gb\nconstruct_4.gb\n", + "stderr": "\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\rassembly: 50%|\u2588\u2588\u2588\u2588\u2588 | 2/4 [00:00<00:00, 2.31it/s, now=None]\rassembly: 75%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c | 3/4 [00:01<00:00, 2.14it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 4/4 [00:02<00:00, 1.74it/s, now=None]\r \r", + "stdout": "Simulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 4}\nGenerating assemblies reports...\n", "tool_id": "cloning_simulation", - "tool_stderr": "\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\rassembly: 50%|\u2588\u2588\u2588\u2588\u2588 | 2/4 [00:00<00:00, 2.39it/s, now=None]\rassembly: 75%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c | 3/4 [00:01<00:00, 2.20it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 4/4 [00:02<00:00, 1.79it/s, now=None]\r \r", - "tool_stdout": " 1 2 3 4 5 6\n0 \nconstruct_3 construct_1 part_L part_J part_K NaN NaN\nconstruct_4 construct_2 part_L part_J part_K NaN NaN\nconstruct_1 part_A part_B part_C part_D part_E part_F\nconstruct_2 part_A part_G part_H part_I part_F NaN\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 4}\nGenerating assemblies reports...\nDEBUG\nconstruct_1.gb\nconstruct_2.gb\nconstruct_3.gb\nconstruct_4.gb\n", - "update_time": "2025-05-26T10:03:41.864270", + "tool_stderr": "\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\rassembly: 50%|\u2588\u2588\u2588\u2588\u2588 | 2/4 [00:00<00:00, 2.31it/s, now=None]\rassembly: 75%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c | 3/4 [00:01<00:00, 2.14it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 4/4 [00:02<00:00, 1.74it/s, now=None]\r \r", + "tool_stdout": "Simulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 4}\nGenerating assemblies reports...\n", + "update_time": "2025-05-26T11:27:00.365017", "user_email": "planemo@galaxyproject.org", - "user_id": "66f8380583c086e1" + "user_id": "fcc5b7d13a1328f6" }, "status": "success", "test_index": 5, - "time_seconds": 53.94194722175598, + "time_seconds": 53.75153422355652, "tool_id": "cloning_simulation", "tool_version": "0.1.0+galaxy0" }, @@ -1463,21 +1470,21 @@ "inputs": { "adv|use_file_names_as_ids": true, "assembly_csv": { - "id": "6fb8fb3f063f475d", + "id": "59a0a00f5fa501d5", "src": "hda" }, "assembly_plan_name": "Type2sRestrictionAssembly", "domesticated_input": { - "id": "7f406d9538852eeb", + "id": "c9445e550eef23d0", "src": "hdca" }, "topology": "circular" }, "job": { - "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpy2ysv6tn/files/a/a/d/dataset_aadc2ac5-b92d-4489-ba9c-9e30c79da207.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpy2ysv6tn/files/3/8/8/dataset_388674d2-24fe-4e76-b0b8-2db6463e788f.dat,/tmp/tmpy2ysv6tn/files/7/5/c/dataset_75c27ee5-fd9b-46a1-be07-f0cdc4e16bc1.dat,/tmp/tmpy2ysv6tn/files/b/b/b/dataset_bbba5ff9-69e7-4d41-af82-992df5f065fb.dat,/tmp/tmpy2ysv6tn/files/d/c/9/dataset_dc982e9d-6d93-4638-b4fc-67fc8238b295.dat,/tmp/tmpy2ysv6tn/files/e/d/2/dataset_ed2d7b35-625f-429e-ae50-ce1098a20b85.dat,/tmp/tmpy2ysv6tn/files/5/a/2/dataset_5a2010cb-64cf-4ff9-8852-f883f7ab0269.dat,/tmp/tmpy2ysv6tn/files/0/f/a/dataset_0fa8ed6a-b848-4b0d-9474-13cd22d4a47e.dat,/tmp/tmpy2ysv6tn/files/a/b/e/dataset_abead413-c3d4-42d3-bd97-c02a6bd69779.dat,/tmp/tmpy2ysv6tn/files/6/a/b/dataset_6ab6c472-c672-4bdf-9814-8e069a8a07e1.dat,/tmp/tmpy2ysv6tn/files/b/0/e/dataset_b0e2ce07-ccf0-4805-958c-8de174c3d4c1.dat,/tmp/tmpy2ysv6tn/files/3/3/a/dataset_33ad2072-fb76-47c4-b3f7-60a2a097ab87.dat,/tmp/tmpy2ysv6tn/files/9/d/1/dataset_9d13c418-bbb1-457e-bdaf-0f2bf5232f78.dat' --domesticated_seq '' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'Type2sRestrictionAssembly' --file_name_mapping '/tmp/tmpy2ysv6tn/files/3/8/8/dataset_388674d2-24fe-4e76-b0b8-2db6463e788f.dat:part_A.gb,/tmp/tmpy2ysv6tn/files/7/5/c/dataset_75c27ee5-fd9b-46a1-be07-f0cdc4e16bc1.dat:part_B.gb,/tmp/tmpy2ysv6tn/files/b/b/b/dataset_bbba5ff9-69e7-4d41-af82-992df5f065fb.dat:part_C.gb,/tmp/tmpy2ysv6tn/files/d/c/9/dataset_dc982e9d-6d93-4638-b4fc-67fc8238b295.dat:part_D.gb,/tmp/tmpy2ysv6tn/files/e/d/2/dataset_ed2d7b35-625f-429e-ae50-ce1098a20b85.dat:part_E.gb,/tmp/tmpy2ysv6tn/files/5/a/2/dataset_5a2010cb-64cf-4ff9-8852-f883f7ab0269.dat:part_F.gb,/tmp/tmpy2ysv6tn/files/0/f/a/dataset_0fa8ed6a-b848-4b0d-9474-13cd22d4a47e.dat:part_G.gb,/tmp/tmpy2ysv6tn/files/a/b/e/dataset_abead413-c3d4-42d3-bd97-c02a6bd69779.dat:part_H.gb,/tmp/tmpy2ysv6tn/files/6/a/b/dataset_6ab6c472-c672-4bdf-9814-8e069a8a07e1.dat:part_I.gb,/tmp/tmpy2ysv6tn/files/b/0/e/dataset_b0e2ce07-ccf0-4805-958c-8de174c3d4c1.dat:part_J.gb,/tmp/tmpy2ysv6tn/files/3/3/a/dataset_33ad2072-fb76-47c4-b3f7-60a2a097ab87.dat:part_K.gb,/tmp/tmpy2ysv6tn/files/9/d/1/dataset_9d13c418-bbb1-457e-bdaf-0f2bf5232f78.dat:part_L.gb' --file_name_mapping_dom '' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpy2ysv6tn/job_working_directory/000/63/outputs/dataset_fbeb57ed-1718-4d2b-a22b-5c4a5779d9ab.dat' && echo DEBUG && ls 'outdir_gb'", + "command_line": "mkdir 'outdir_zip' && mkdir 'outdir_gb' && cp '/tmp/tmpc6lic4p9/files/9/5/0/dataset_9504897d-0d99-44a4-9033-7d14e3943ec9.dat' 'assembly_csv.csv' && python '/home/rkhaled/galaxytools/tools/cloning_simulation/cloning_simulation.py' --parts_files '/tmp/tmpc6lic4p9/files/a/c/d/dataset_acd9e546-bb31-4391-b867-1d81cab10920.dat,/tmp/tmpc6lic4p9/files/c/f/e/dataset_cfe852f6-5b32-46fd-a9d8-2b777016d403.dat,/tmp/tmpc6lic4p9/files/2/5/b/dataset_25be2770-f768-4b0e-be96-459e47e6ae8d.dat,/tmp/tmpc6lic4p9/files/e/5/8/dataset_e580f806-e8ba-4dac-b8d5-6b76b4a7421b.dat,/tmp/tmpc6lic4p9/files/0/d/6/dataset_0d6de31a-aab1-427f-a2a1-7c8bc988208e.dat,/tmp/tmpc6lic4p9/files/1/2/7/dataset_1272b23f-7cef-4deb-bf92-fbad973bf2c6.dat,/tmp/tmpc6lic4p9/files/7/4/7/dataset_7476b10d-c143-4be7-adb5-118dcf372287.dat,/tmp/tmpc6lic4p9/files/e/2/e/dataset_e2ed0e46-b159-4bca-aeaa-9bef9a5b9c9a.dat,/tmp/tmpc6lic4p9/files/c/a/1/dataset_ca18b50c-3b4c-4201-88b0-dffd049718f8.dat,/tmp/tmpc6lic4p9/files/1/b/4/dataset_1b480e84-03cf-4483-9e9e-ccf79bf654a1.dat,/tmp/tmpc6lic4p9/files/b/e/8/dataset_be83b8f4-73de-4775-abb8-75483d4e8ab2.dat,/tmp/tmpc6lic4p9/files/5/d/d/dataset_5ddde548-4828-4067-93b7-1377a71221d7.dat' --domesticated_seq '' --assembly_csv 'assembly_csv.csv' --assembly_plan_name 'Type2sRestrictionAssembly' --file_name_mapping '/tmp/tmpc6lic4p9/files/a/c/d/dataset_acd9e546-bb31-4391-b867-1d81cab10920.dat:part_A.gb,/tmp/tmpc6lic4p9/files/c/f/e/dataset_cfe852f6-5b32-46fd-a9d8-2b777016d403.dat:part_B.gb,/tmp/tmpc6lic4p9/files/2/5/b/dataset_25be2770-f768-4b0e-be96-459e47e6ae8d.dat:part_C.gb,/tmp/tmpc6lic4p9/files/e/5/8/dataset_e580f806-e8ba-4dac-b8d5-6b76b4a7421b.dat:part_D.gb,/tmp/tmpc6lic4p9/files/0/d/6/dataset_0d6de31a-aab1-427f-a2a1-7c8bc988208e.dat:part_E.gb,/tmp/tmpc6lic4p9/files/1/2/7/dataset_1272b23f-7cef-4deb-bf92-fbad973bf2c6.dat:part_F.gb,/tmp/tmpc6lic4p9/files/7/4/7/dataset_7476b10d-c143-4be7-adb5-118dcf372287.dat:part_G.gb,/tmp/tmpc6lic4p9/files/e/2/e/dataset_e2ed0e46-b159-4bca-aeaa-9bef9a5b9c9a.dat:part_H.gb,/tmp/tmpc6lic4p9/files/c/a/1/dataset_ca18b50c-3b4c-4201-88b0-dffd049718f8.dat:part_I.gb,/tmp/tmpc6lic4p9/files/1/b/4/dataset_1b480e84-03cf-4483-9e9e-ccf79bf654a1.dat:part_J.gb,/tmp/tmpc6lic4p9/files/b/e/8/dataset_be83b8f4-73de-4775-abb8-75483d4e8ab2.dat:part_K.gb,/tmp/tmpc6lic4p9/files/5/d/d/dataset_5ddde548-4828-4067-93b7-1377a71221d7.dat:part_L.gb' --file_name_mapping_dom '' --use_file_names_as_id 'true' --outdir_simulation 'outdir_zip' --outdir_gb 'outdir_gb' --output_simulation 'output_zip.zip' --enzyme 'auto' --topology 'circular' && cp 'output_zip.zip' '/tmp/tmpc6lic4p9/job_working_directory/000/63/outputs/dataset_e10784a6-3050-4131-a684-3847397c4c4d.dat'", "command_version": "", "copied_from_job_id": null, - "create_time": "2025-05-26T10:04:22.340769", + "create_time": "2025-05-26T11:27:41.184534", "dependencies": [ { "cacheable": false, @@ -1657,76 +1664,76 @@ } ], "exit_code": 0, - "external_id": "118646", + "external_id": "155964", "galaxy_version": "24.2", "handler": null, - "history_id": "18bb6cd07b986e37", - "id": "3b86e96397860676", + "history_id": "84db48b219855f4d", + "id": "14e667eccbf3c9ac", "inputs": { "assembly_csv": { - "id": "6fb8fb3f063f475d", + "id": "59a0a00f5fa501d5", "src": "hda", - "uuid": "aadc2ac5-b92d-4489-ba9c-9e30c79da207" + "uuid": "9504897d-0d99-44a4-9033-7d14e3943ec9" }, "domesticated_input1": { - "id": "3eddddb1a3bb1719", + "id": "2252f6534dc04be9", "src": "hda", - "uuid": "388674d2-24fe-4e76-b0b8-2db6463e788f" + "uuid": "acd9e546-bb31-4391-b867-1d81cab10920" }, "domesticated_input10": { - "id": "6baf136e951fa3e9", + "id": "b26f1eae65161bae", "src": "hda", - "uuid": "b0e2ce07-ccf0-4805-958c-8de174c3d4c1" + "uuid": "1b480e84-03cf-4483-9e9e-ccf79bf654a1" }, "domesticated_input11": { - "id": "11a588ee1ee4e36e", + "id": "748ef145f2d110fe", "src": "hda", - "uuid": "33ad2072-fb76-47c4-b3f7-60a2a097ab87" + "uuid": "be83b8f4-73de-4775-abb8-75483d4e8ab2" }, "domesticated_input12": { - "id": "8f43de78738fc703", + "id": "37a05bd56b325e88", "src": "hda", - "uuid": "9d13c418-bbb1-457e-bdaf-0f2bf5232f78" + "uuid": "5ddde548-4828-4067-93b7-1377a71221d7" }, "domesticated_input2": { - "id": "df551757dda63084", + "id": "2441550d408330ea", "src": "hda", - "uuid": "75c27ee5-fd9b-46a1-be07-f0cdc4e16bc1" + "uuid": "cfe852f6-5b32-46fd-a9d8-2b777016d403" }, "domesticated_input3": { - "id": "3b86e96397860676", + "id": "7982f5ab86225272", "src": "hda", - "uuid": "bbba5ff9-69e7-4d41-af82-992df5f065fb" + "uuid": "25be2770-f768-4b0e-be96-459e47e6ae8d" }, "domesticated_input4": { - "id": "125f9d0e88ccc764", + "id": "1d0be35bf9fc6600", "src": "hda", - "uuid": "dc982e9d-6d93-4638-b4fc-67fc8238b295" + "uuid": "e580f806-e8ba-4dac-b8d5-6b76b4a7421b" }, "domesticated_input5": { - "id": "68e8d3b1610203e4", + "id": "40fe86a604adcf6d", "src": "hda", - "uuid": "ed2d7b35-625f-429e-ae50-ce1098a20b85" + "uuid": "0d6de31a-aab1-427f-a2a1-7c8bc988208e" }, "domesticated_input6": { - "id": "f9ce2b01423639ed", + "id": "7355915c318fd136", "src": "hda", - "uuid": "5a2010cb-64cf-4ff9-8852-f883f7ab0269" + "uuid": "1272b23f-7cef-4deb-bf92-fbad973bf2c6" }, "domesticated_input7": { - "id": "af7dc246cf57ca17", + "id": "bacbde4487432826", "src": "hda", - "uuid": "0fa8ed6a-b848-4b0d-9474-13cd22d4a47e" + "uuid": "7476b10d-c143-4be7-adb5-118dcf372287" }, "domesticated_input8": { - "id": "73904d43e96b8397", + "id": "3b9b440d32d1c6f3", "src": "hda", - "uuid": "abead413-c3d4-42d3-bd97-c02a6bd69779" + "uuid": "e2ed0e46-b159-4bca-aeaa-9bef9a5b9c9a" }, "domesticated_input9": { - "id": "5dd99ba27cc0c63e", + "id": "a19ae27f3bb8e8c1", "src": "hda", - "uuid": "6ab6c472-c672-4bdf-9814-8e069a8a07e1" + "uuid": "ca18b50c-3b4c-4201-88b0-dffd049718f8" } }, "job_messages": [], @@ -1737,60 +1744,60 @@ "model_class": "Job", "output_collections": { "construct_gb": { - "id": "9677ca5db33658a1", + "id": "fedb85639c7c80b9", "src": "hdca" } }, "outputs": { "__new_primary_file_construct_gb|construct_1__": { - "id": "df1d56fe5378c54b", + "id": "94b6b8378debd859", "src": "hda", - "uuid": "c3d590de-2171-4d9a-a1c0-01110787a4ea" + "uuid": "5145585f-443e-4934-af0b-60e1552a08a9" }, "__new_primary_file_construct_gb|construct_2__": { - "id": "a443c6a3159c515a", + "id": "dfa4bbdeadf76cd3", "src": "hda", - "uuid": "14cde463-8656-4342-be37-c28798003a81" + "uuid": "6f0dcaec-2131-4c0c-820b-bb5c895103e2" }, "__new_primary_file_construct_gb|construct_3__": { - "id": "4048e6cd68dc21c7", + "id": "e48032fd92b02fbb", "src": "hda", - "uuid": "87c175e5-05d6-48e7-b617-e15d49a7027d" + "uuid": "8c4da7fd-9c6b-4430-9444-c6e89b41c5df" }, "__new_primary_file_construct_gb|construct_4__": { - "id": "f601f1baaea8c27e", + "id": "68bf450f38f03a28", "src": "hda", - "uuid": "8e8367d5-caae-467d-a9d7-c681fd5497c7" + "uuid": "a878e0a8-6f34-4cdf-8990-e178d0f15d52" }, "output_zip": { - "id": "8c0bd3fd394dbc64", + "id": "1062de4bcda0d565", "src": "hda", - "uuid": "fbeb57ed-1718-4d2b-a22b-5c4a5779d9ab" + "uuid": "e10784a6-3050-4131-a684-3847397c4c4d" } }, "params": { "__input_ext": "\"input\"", "adv": "{\"enzyme\": \"auto\", \"use_file_names_as_ids\": true}", "assembly_plan_name": "\"Type2sRestrictionAssembly\"", - "chromInfo": "\"/tmp/tmpy2ysv6tn/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", + "chromInfo": "\"/tmp/tmpc6lic4p9/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"", "dbkey": "\"?\"", "domesticated_input": "{\"values\": [{\"id\": 14, \"src\": \"hdca\"}]}", "genbank_files": null, "topology": "\"circular\"" }, "state": "ok", - "stderr": "\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\rassembly: 50%|\u2588\u2588\u2588\u2588\u2588 | 2/4 [00:00<00:00, 2.31it/s, now=None]\rassembly: 75%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c | 3/4 [00:01<00:00, 2.11it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 4/4 [00:02<00:00, 1.75it/s, now=None]\r \r", - "stdout": " 1 2 3 4 5 6\n0 \nconstruct_3 construct_1 part_L part_J part_K NaN NaN\nconstruct_4 construct_2 part_L part_J part_K NaN NaN\nconstruct_1 part_A part_B part_C part_D part_E part_F\nconstruct_2 part_A part_G part_H part_I part_F NaN\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 4}\nGenerating assemblies reports...\nDEBUG\nconstruct_1.gb\nconstruct_2.gb\nconstruct_3.gb\nconstruct_4.gb\n", + "stderr": "\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\rassembly: 50%|\u2588\u2588\u2588\u2588\u2588 | 2/4 [00:00<00:00, 2.45it/s, now=None]\rassembly: 75%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c | 3/4 [00:01<00:00, 2.24it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 4/4 [00:02<00:00, 1.84it/s, now=None]\r \r", + "stdout": "Simulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 4}\nGenerating assemblies reports...\n", "tool_id": "cloning_simulation", - "tool_stderr": "\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\rassembly: 50%|\u2588\u2588\u2588\u2588\u2588 | 2/4 [00:00<00:00, 2.31it/s, now=None]\rassembly: 75%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c | 3/4 [00:01<00:00, 2.11it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 4/4 [00:02<00:00, 1.75it/s, now=None]\r \r", - "tool_stdout": " 1 2 3 4 5 6\n0 \nconstruct_3 construct_1 part_L part_J part_K NaN NaN\nconstruct_4 construct_2 part_L part_J part_K NaN NaN\nconstruct_1 part_A part_B part_C part_D part_E part_F\nconstruct_2 part_A part_G part_H part_I part_F NaN\nSimulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 4}\nGenerating assemblies reports...\nDEBUG\nconstruct_1.gb\nconstruct_2.gb\nconstruct_3.gb\nconstruct_4.gb\n", - "update_time": "2025-05-26T10:04:35.116441", + "tool_stderr": "\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\r \r\rassembly: 0%| | 0/4 [00:00<?, ?it/s, now=None]\rassembly: 50%|\u2588\u2588\u2588\u2588\u2588 | 2/4 [00:00<00:00, 2.45it/s, now=None]\rassembly: 75%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c | 3/4 [00:01<00:00, 2.24it/s, now=None]\rassembly: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 4/4 [00:02<00:00, 1.84it/s, now=None]\r \r", + "tool_stdout": "Simulating assembly plan assambly...\n{'cancelled_assemblies': 0, 'errored_assemblies': 0, 'valid_assemblies': 4}\nGenerating assemblies reports...\n", + "update_time": "2025-05-26T11:27:53.929264", "user_email": "planemo@galaxyproject.org", - "user_id": "66f8380583c086e1" + "user_id": "fcc5b7d13a1328f6" }, "status": "success", "test_index": 6, - "time_seconds": 53.07335948944092, + "time_seconds": 53.42731332778931, "tool_id": "cloning_simulation", "tool_version": "0.1.0+galaxy0" },