{"remainingRequest":"/home/camus/work/lotus/node_modules/thread-loader/dist/cjs.js!/home/camus/work/lotus/node_modules/babel-loader/lib/index.js!/home/camus/work/lotus/node_modules/ts-loader/index.js??ref--15-3!/home/camus/work/lotus/node_modules/eslint-loader/index.js??ref--14-0!/home/camus/work/lotus/inc/staffSvg/svgSymbols.ts","dependencies":[{"path":"/home/camus/work/lotus/inc/staffSvg/svgSymbols.ts","mtime":1732184473679},{"path":"/home/camus/work/lotus/node_modules/cache-loader/dist/cjs.js","mtime":1719800821084},{"path":"/home/camus/work/lotus/node_modules/thread-loader/dist/cjs.js","mtime":1719800821095},{"path":"/home/camus/work/lotus/node_modules/babel-loader/lib/index.js","mtime":1727163989637},{"path":"/home/camus/work/lotus/node_modules/ts-loader/index.js","mtime":1726221607070},{"path":"/home/camus/work/lotus/node_modules/eslint-loader/index.js","mtime":1719800837044}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IHNoYTEgZnJvbSAic2hhMSI7CmltcG9ydCB7IEdMWVBIX0JBU0VfU0NBTEUsIFBPU19QUkVDSVNJT04sIHJvdW5kTnVtYmVyIH0gZnJvbSAiLi91dGlscyI7CmltcG9ydCBwYXRoU3ltYm9scyBmcm9tICIuL3BhdGgtc3ltYm9scy5qc29uIjsKaW1wb3J0IGdseXBoSGFzaCBmcm9tICIuL2dseXBoLWhhc2guanNvbiI7CjsKY29uc3QgaWRlbnRpdHlIYXNoID0gb2JqID0+IHsKICBjb25zdCBpZGVudGl0eUFycmF5ID0gT2JqZWN0LmVudHJpZXMob2JqKS5zb3J0KChbazFdLCBbazJdKSA9PiBrMSA+IGsyID8gMSA6IC0xKTsKICByZXR1cm4gc2hhMShKU09OLnN0cmluZ2lmeShpZGVudGl0eUFycmF5KSk7Cn07CmNvbnN0IGlkZW50aXR5U3ltYm9sID0gKHN5bWJvbCwgb2JqKSA9PiB7CiAgY29uc3QgaGFzaCA9IGlkZW50aXR5SGFzaChvYmopOwogIHJldHVybiBlbGVtID0+IHsKICAgIGlmIChlbGVtLmhhc2ggPT09IGhhc2gpIHJldHVybiB7CiAgICAgIHN5bWJvbAogICAgfTsKICB9Owp9Owpjb25zdCBzaW1wbGlmeVBhdGggPSBkID0+IGQucmVwbGFjZSgvXHMrL2csICIgIikucmVwbGFjZSgvXGQvZywgIiIpOwpjb25zdCBza2VsZXRvbml6ZVBhdGggPSBkID0+IGQucmVwbGFjZSgvXHMrL2csICIgIikucmVwbGFjZSgvLT9bLlxkXSsvZywgIi4iKTsKY29uc3QgcG9pbnRzU2l6ZSA9IHBvaW50cyA9PiBwb2ludHMuc3BsaXQoIiAiKS5sZW5ndGg7CmNvbnN0IHBhdGhGcmFtZVN5bWJvbCA9IChzeW1ib2wsIGZyYW1lKSA9PiBlbGVtID0+IHsKICBpZiAoZWxlbS5pZGVudGl0eS50eXBlID09PSAicGF0aCIgJiYgc2ltcGxpZnlQYXRoKGVsZW0uaWRlbnRpdHkuZCkgPT09IGZyYW1lKSByZXR1cm4gewogICAgc3ltYm9sCiAgfTsKfTsKY29uc3QgcGF0aEZyYW1lc1N5bWJvbCA9IChzeW1ib2wsIGZyYW1lcykgPT4gZWxlbSA9PiB7CiAgaWYgKGVsZW0uaWRlbnRpdHkudHlwZSA9PT0gInBhdGgiICYmIGZyYW1lcy5pbmNsdWRlcyhzaW1wbGlmeVBhdGgoZWxlbS5pZGVudGl0eS5kKSkpIHJldHVybiB7CiAgICBzeW1ib2wKICB9Owp9Owpjb25zdCBwYXRoU2tlbGV0b25zU3ltYm9sID0gKHN5bWJvbCwgc2tlbGV0b25zKSA9PiBlbGVtID0+IHsKICBpZiAoZWxlbS5pZGVudGl0eS50eXBlID09PSAicGF0aCIgJiYgc2tlbGV0b25zLmluY2x1ZGVzKHNrZWxldG9uaXplUGF0aChlbGVtLmlkZW50aXR5LmQpKSkgcmV0dXJuIHsKICAgIHN5bWJvbAogIH07Cn07CmNvbnN0IGVsZW1TY2FsZSA9IChlbGVtLCBzY2FsZSkgPT4gZWxlbS5pZGVudGl0eS5zY2FsZSAmJiBNYXRoLmFicyhlbGVtLmlkZW50aXR5LnNjYWxlLngpID09PSBzY2FsZSAmJiBNYXRoLmFicyhlbGVtLmlkZW50aXR5LnNjYWxlLnkpID09PSBzY2FsZTsKY29uc3QgY29uZGl0aW9uU3ltYm9sID0gKHN5bWJvbCwgY29uZGl0aW9uLCBmaWVsZHMgPSAoKSA9PiAoe30pKSA9PiBlbGVtID0+IHsKICBpZiAoY29uZGl0aW9uKGVsZW0pKSByZXR1cm4gewogICAgc3ltYm9sLAogICAgLi4uZmllbGRzKGVsZW0pCiAgfTsKfTsKY29uc3QgZ2x5cGhTeW1ib2wgPSAoc3ltYm9sLCBnbHlwaCkgPT4gZWxlbSA9PiB7CiAgaWYgKGVsZW0uZ2x5cGggPT09IGdseXBoKSByZXR1cm4gewogICAgc3ltYm9sCiAgfTsKfTsKY29uc3Qgc3ltYm9sUnVsZXMgPSBbcGF0aEZyYW1lc1N5bWJvbCgiTk9URSBOT1RFSEVBRCBDUk9TUyIsIFsiTTE2MyAzMWwxMjUgMTAxYzIgMiA1IDMgOCAzczYgLTEgOCAtM2wxOCAtMTRjMyAtMiA0IC02IDQgLTEwcy0xIC04IC00IC0xMGwtMTIxIC05OGwxMjEgLTk4YzMgLTIgNCAtNiA0IC0xMHMtMSAtOCAtNCAtMTBsLTE4IC0xNGMtMiAtMiAtNSAtMyAtOCAtM3MtNiAxIC04IDNsLTEyNSAxMDFsLTEyNSAtMTAxYy0yIC0yIC01IC0zIC04IC0zcy02IDEgLTggM2wtMTcgMTRjLTMgMiAtNSA2IC01IDEwczIgOCA1IDEwbDEyMCA5OGwtMTIwIDk4CQljLTMgMiAtNSA2IC01IDEwczIgOCA1IDEwbDE3IDE0YzIgMiA1IDMgOCAzczYgLTEgOCAtM3oiXS5tYXAoc2ltcGxpZnlQYXRoKSksIHBhdGhGcmFtZXNTeW1ib2woIk5PVEUgTk9URUhFQUQgRElBTU9ORCBXSE9MRSIsIFsiTTIwNiA3NWMtMjkgMCAtMjcgLTQ1IC0yNyAtNzRjMCAtNDcgMjUgLTU2IDYxIC02N2MxMyAtNCAyOCAtOSA0MCAtOWMyOSAwIDI2IDQ1IDI2IDc0YzAgNDcgLTI1IDU2IC02MSA2N2MtMTMgNCAtMjcgOSAtMzkgOXpNNDg1IDBjMCAtNTcgLTc4IC00MiAtMTIyIC02N2MtNDEgLTIzIC03MiAtNjggLTEyMCAtNjhzLTgwIDQ1IC0xMjEgNjhjLTQ0IDI1IC0xMjIgMTAgLTEyMiA2N3M3OCA0MiAxMjIgNjdjNDEgMjMgNzMgNjggMTIxIDY4CQlzNzkgLTQ1IDEyMCAtNjhjNDQgLTI1IDEyMiAtMTAgMTIyIC02N3oiXS5tYXAoc2ltcGxpZnlQYXRoKSksIHBhdGhGcmFtZXNTeW1ib2woIk5PVEUgTk9URUhFQUQgRElBTU9ORCBIQUxGIiwgWyJNMjkwIDU1YzAgMTcgLTE1IDI3IC0zMCAyN2MtNCAwIC04IC0xIC0xMiAtMmMtMjUgLTggLTYwIC0zMCAtODkgLTQ5cy02NSAtNDIgLTgyIC02MmMtNiAtNyAtMTAgLTE2IC0xMCAtMjRjMCAtMTcgMTQgLTI3IDI5IC0yN2M0IDAgOSAxIDEzIDJjMjUgOCA2MCAzMCA4OSA0OXM2NSA0MiA4MiA2MmM2IDcgMTAgMTYgMTAgMjR6TTMxNiAxMzVjMTggMCA0MSAtMTcgNDEgLTQwYzAgLTI4IC0zMyAtNTQgLTQyIC04NAkJYy0xMSAtMzYgMyAtODQgLTMwIC0xMDZjLTE1IC0xMCAtMzMgLTEzIC01MSAtMTNjLTI1IDAgLTUwIDYgLTc2IDZjLTQzIDAgLTgzIC0zMyAtMTE4IC0zM2MtMTggMCAtNDAgMTcgLTQwIDQwYzAgMjggMzMgNTQgNDIgODRjMTEgMzYgLTMgODQgMzAgMTA2YzE1IDEwIDMyIDEzIDUwIDEzYzI1IDAgNTEgLTYgNzcgLTZjNDMgMCA4MiAzMyAxMTcgMzN6Il0ubWFwKHNpbXBsaWZ5UGF0aCkpLCBwYXRoRnJhbWVzU3ltYm9sKCJOT1RFIE5PVEVIRUFEIERJQU1PTkQgU09MSUQiLCBbIk0zMjUgMTM1YzE5IDAgMzYgLTE4IDM2IC0zOGMwIC0zNiAtNjEgLTYyIC04NCAtMTAwYy0yNSAtNDEgLTMyIC05NSAtNzIgLTEyM2MtOSAtNiAtMTggLTggLTI4IC04Yy0yMyAwIC00OCAxMiAtNzIgMTJjLTIzIDAgLTQ3IC0xMyAtNjggLTEzYy0xOSAwIC0zNyAxOCAtMzcgMzhjMCAzNiA2MSA2MiA4NCAxMDBjMjUgNDEgMzMgOTUgNzMgMTIzYzkgNiAxNyA4IDI3IDhjMjMgMCA0OCAtMTIgNzIgLTEyYzIzIDAgNDggMTMgNjkgMTN6Il0ubWFwKHNpbXBsaWZ5UGF0aCkpLCBwYXRoRnJhbWVzU3ltYm9sKCJOT1RFIFJFU1QiLCBbIk01MTAgLTIyaC02NDVjLTEyIDAgLTIxIDEwIC0yMSAyMnM5IDIyIDIxIDIyaDEzNXYxMjZjMCA0IDQgOCA4IDhoMzU5YzQgMCA4IC00IDggLTh2LTEyNmgxMzVjMTIgMCAyMSAtMTAgMjEgLTIycy05IC0yMiAtMjEgLTIyeiJdLm1hcChzaW1wbGlmeVBhdGgpKSwgcGF0aEZyYW1lc1N5bWJvbCgiVFIiLCBbIk0tMzAwIDIyN2MwIC0yMyAxOCAtMzIgNDEgLTMyYzQwIDAgNzIgMTQgMTA0IDI4bDUgMjhjLTIzIDE3IC01MCAyOSAtODIgMjljLTMzIDAgLTY4IC0xNyAtNjggLTUzek0tMjYgMTAzYzAgLTYxIC00NyAtMTEzIC05OCAtMTEzYy0zOSAwIC01NiA0MyAtNTYgOTBjMCAxNCAxIDI4IDQgNDFsMTYgNzhjLTMyIC0xMyAtNjMgLTI1IC0xMDMgLTI1Yy0zNCAwIC01OSAxNyAtNTkgNDljMCA1MCA0NyA3OCA5NCA3OGMzMSAwIDU5IC0xMCA4MyAtMjUJCWw0NyAyMzRjNiAtMyAxMyAtNSAyMCAtNWMyMiAwIDQ4IDE2IDY4IDM1bC01NCAtMjY4bDY2IDM2YzI2IDE0IDUxIDIxIDc0IDIxYzI5IDAgNTMgLTExIDY0IC0zMGMxNyAyMSA0NCAzMiA3MCAzMmMzNSAwIDY3IC0yMCA2NyAtNjZjMCAtNDQgLTI3IC04OSAtNjQgLTg5Yy0yNSAwIC0zNyAyMiAtMzcgNDhjMCA0MSAyOCA2MyA1OSA2M2g0Yy04IDE0IC0yMyAyMSAtMzggMjFjLTI1IDAgLTUxIC0xNiAtNTcgLTQ1bC01MyAtMjY5CQljLTExIDcgLTI1IDEwIC0zOSAxMHMtMjkgLTMgLTQzIC0xMGw1NCAyNjl2NmMwIDE2IC0xMyAyNyAtMzAgMjdjLTcgMCAtMTUgLTIgLTIzIC02bC03OSAtNDRsLTcgLTM1YzI3IC0zMSA1MCAtNjYgNTAgLTEwOHpNLTg0IDM5YzIzIDAgMzYgMzMgMzYgNjFjMCAzMSAtMTUgNTcgLTM0IDgxbC02IC0zMGMtNCAtMTggLTEyIC01NCAtMTIgLTgxYzAgLTE4IDQgLTMxIDE2IC0zMXoiLCAiTS0yOTkgMjI3YzAgLTIyIDE4IC0zMSA0MSAtMzFjNDAgMCA3MSAxNCAxMDMgMjhsNSAyNmMtMjMgMTcgLTUxIDI5IC04MiAyOWMtMzIgMCAtNjcgLTE2IC02NyAtNTJ6TS0yNiAxMDRjMCAtNjEgLTQ3IC0xMTQgLTk4IC0xMTRjLTM5IDAgLTU2IDQzIC01NiA5MGMwIDE0IDEgMjggNCA0MWwxNiA3N2MtMzEgLTEzIC02MyAtMjUgLTEwMyAtMjVjLTM1IDAgLTU5IDE3IC01OSA1MGMwIDUxIDQ4IDc5IDk1IDc5YzMxIDAgNTggLTEwIDgyIC0yNQkJbDQ3IDIzM2M2IC0zIDEzIC01IDIwIC01YzIyIDAgNDggMTYgNjggMzVsLTU0IC0yNjdsNjYgMzZjMjYgMTQgNTEgMjEgNzQgMjFjMjkgMCA1MiAtMTEgNjMgLTMwYzE4IDIwIDQ1IDMxIDcwIDMxYzM1IDAgNjggLTIxIDY4IC02N2MwIC00NSAtMjggLTg5IC02NSAtODljLTI1IDAgLTM3IDIxIC0zNyA0N2MwIDQxIDI5IDY0IDYwIDY0aDNjLTggMTQgLTIyIDIxIC0zNyAyMWMtMjQgMCAtNTEgLTE3IC01NyAtNDVsLTUzIC0yNjkJCWMtMTEgNyAtMjUgMTEgLTM5IDExcy0yOSAtNCAtNDMgLTExbDUzIDI2OWMwIDIgMSA1IDEgN2MwIDE2IC0xMyAyNyAtMzAgMjdjLTcgMCAtMTUgLTMgLTIzIC03bC03OSAtNDRsLTcgLTMzYzI3IC0zMSA1MCAtNjYgNTAgLTEwOHpNLTg1IDM5YzIzIDAgMzUgMzMgMzUgNjFjMCAzMCAtMTQgNTYgLTMyIDc5bC02IC0yOGMtNCAtMTggLTEyIC01NSAtMTIgLTgyYzAgLTE3IDQgLTMwIDE1IC0zMHoiLCAiTS0yOTUgMjI4YzAgLTIxIDE3IC0zMCAzOCAtMzBjMzkgMCA3MSAxNCAxMDIgMjhsNSAyMmMtMjMgMTcgLTUwIDI5IC04MSAyOXMtNjQgLTE1IC02NCAtNDl6TS0yNiAxMDRjMCAtNjIgLTQ3IC0xMTQgLTk4IC0xMTRjLTM5IDAgLTU2IDQzIC01NiA5MGMwIDE0IDEgMjggNCA0MWwxNSA3NWMtMzEgLTEzIC02MiAtMjQgLTEwMSAtMjRjLTM1IDAgLTYwIDE3IC02MCA1MGMwIDUyIDQ5IDgyIDk3IDgyYzMwIDAgNTcgLTkgODEgLTI0bDQ2IDIzMAkJYzYgLTMgMTMgLTUgMjAgLTVjMjIgMCA0OCAxNiA2OCAzNWwtNTMgLTI2NWw2NCAzNWMyNiAxNCA1MSAyMSA3NCAyMWMyOCAwIDUyIC0xMCA2MyAtMjhjMTggMTkgNDMgMjkgNjggMjljMzYgMCA3MCAtMjIgNzAgLTcwYzAgLTQ2IC0yNyAtOTEgLTY1IC05MWMtMjUgMCAtMzkgMjIgLTM5IDQ4YzAgNDIgMzAgNjQgNjEgNjRoM2MtOCAxNCAtMjMgMjEgLTM4IDIxYy0yMyAwIC00OSAtMTYgLTU0IC00MmwtNTQgLTI3MAkJYy0xMSA3IC0yNCAxMSAtMzggMTFzLTMwIC00IC00NCAtMTFsNTQgMjcwYzAgMiAxIDUgMSA3YzAgMTUgLTEzIDI1IC0yOSAyNWMtNyAwIC0xNSAtMyAtMjMgLTdsLTgxIC00NGwtNSAtMjljMjcgLTMxIDQ5IC02OCA0OSAtMTEwek0tODcgMzljMjIgMCAzNCAzNCAzNCA2MWMwIDI5IC0xMyA1NCAtMzAgNzZsLTUgLTI1Yy00IC0xOSAtMTQgLTU3IC0xNCAtODRjMCAtMTYgNCAtMjggMTUgLTI4eiJdLm1hcChzaW1wbGlmeVBhdGgpKSwgY29uZGl0aW9uU3ltYm9sKCJNRUFTVVJFX1NFUEFSQVRPUiIsIGVsZW0gPT4gZWxlbS5pZGVudGl0eS50eXBlID09PSAicmVjdCIgJiYgZWxlbS5zdyA9PT0gMC4xOSAmJiBlbGVtLmlkZW50aXR5LnJoID49IDQgJiYgZWxlbS5pZGVudGl0eS5yaCA8PSA0LjM1KSwgY29uZGl0aW9uU3ltYm9sKCJNRUFTVVJFX1NFUEFSQVRPUiBCT0xEIiwgZWxlbSA9PiBlbGVtLmlkZW50aXR5LnR5cGUgPT09ICJyZWN0IiAmJiBlbGVtLnN3ID09PSAwLjYgJiYgZWxlbS5pZGVudGl0eS5yaCA+PSA0ICYmIGVsZW0uaWRlbnRpdHkucmggPD0gNC4zNSksIHBhdGhGcmFtZXNTeW1ib2woIkJSQUNFIiwgWyJNLSAtYyAtIC0gLSAtIC1jIC0gIC0gIC1jIC0gLSAtIC0gLWMtICAtICAtIGMgICAgIGMgIC0gIC0gYy0gIC0gIC0gcyAgIGMgICAgIGMgIC0gIC0gYyAgICAgIGMgICAtICAtYy0gLSAtIC0gLSAtYyAtICAtICAtYyAtIC0gLSAtIC1jIC0gIC0gIC16IiwgIk0tIC1jIC0gLSAtIC0gLWMgLSAgLSAgLWMgLSAtIC0gLSAtYy0gIC0gIC0gYyAgICAgYyAgLSAgLSB2dmMgICAgIGMgIC0gIC0gYyAgICAgYyAgIC0gIC0gYy0gLSAtIC0gLSAtYyAtICAtICAtYyAtIC0gLSAtIC1jIC0gIC0gIC16IiwgIk0tIC1jIC0gLSAtIC0gLWMgLSAgLSAgLWMgLSAtIC0gLSAtYy0gIC0gIC0gYyAgICAgYyAgLSAgLSBjICAtICAtIHMgICBjICAgICBjICAtICAtIGMgICAgICBjICAgLSAgLWMtIC0gLSAtIC0gLWMgLSAgLSAgLWMgLSAtIC0gLSAtYyAtICAtICAteiIsICJNLSAtYyAtIC0gLSAtIC1jIC0gIC0gIC1jIC0gLSAtIC0gLWMtICAtICAtIGMgICAgIGMgIC0gIC0gYy0gIC0gIC0gcyAgIGMgICAgIGMgIC0gIC0gYyAgICAgYyAgIC0gIC1jLSAtIC0gLSAtIC1jIC0gIC0gIC1jIC0gLSAtIC0gLWMgLSAgLSAgLXoiXSksIHBhdGhTa2VsZXRvbnNTeW1ib2woIkJSQUNFIiwgWyJNLTE1IC00OTVjMCAtMjYxIC0xMDIgLTUxNiAtMTAyIC03NjJjMCAtMTM1IDMwIC0yNTggMTI5IC0zNTdjMyAtMyAzIC05IDMgLTEyYzAgLTkgLTYgLTE1IC0xNSAtMTVjLTMgMCAtOSAwIC0xMiAzYy0xMzIgMTMyIC0xNzcgMzEyIC0xNzcgNDk4YzAgMjY3IDEwOCA1MjUgMTA4IDc3N2MwIDEzNSAtMzMgMjU4IC0xMjkgMzU3Yy0zIDMgLTMgMyAtMyA2czAgMyAzIDZjOTYgOTkgMTI5IDIyMiAxMjkgMzU3CQljMCAyNTIgLTEwOCA1MTAgLTEwOCA3NzdjMCAxODYgNDUgMzY2IDE3NyA0OThjMyAzIDkgMyAxMiAzYzkgMCAxNSAtNiAxNSAtMTVjMCAtMyAwIC05IC0zIC0xMmMtOTkgLTk5IC0xMjkgLTIyMiAtMTI5IC0zNTdjMCAtMjQ2IDEwMiAtNTAxIDEwMiAtNzYyYzAgLTE4NiAtNDggLTM2MyAtMTc0IC00OTVjMTI2IC0xMzIgMTc0IC0zMDkgMTc0IC00OTV6IiwgIk0tMTUgLTUzN2MwIC0yODUgLTExMSAtNTYxIC0xMTEgLTgzMWMwIC0xNDcgMzYgLTI4MiAxMzggLTM5MGMzIC0zIDYgLTkgNiAtMTJjMCAtOSAtOSAtMTggLTE4IC0xOGMtMyAwIC05IDMgLTEyIDZjLTEzOCAxNDcgLTE4NiAzMzkgLTE4NiA1NDBjMCAyOTEgMTE0IDU3MCAxMTQgODQ2YzAgMTQ0IC0zMyAyNzkgLTEzNSAzODdjLTMgMyAtMyA2IC0zIDlzMCA2IDMgOWMxMDIgMTA4IDEzNSAyNDMgMTM1IDM4NwkJYzAgMjc2IC0xMTQgNTU1IC0xMTQgODQ2YzAgMjAxIDQ4IDM5MyAxODYgNTQwYzMgMyA5IDYgMTIgNmM5IDAgMTggLTkgMTggLTE4YzAgLTMgLTMgLTkgLTYgLTEyYy0xMDIgLTEwOCAtMTM4IC0yNDMgLTEzOCAtMzkwYzAgLTI3MCAxMTEgLTU0NiAxMTEgLTgzMWMwIC0xOTggLTQ1IC0zOTAgLTE4MCAtNTM3YzEzNSAtMTQ3IDE4MCAtMzM5IDE4MCAtNTM3eiIsICJNLTE4IC00NzFjMCAtMjQ2IC05NiAtNDg5IC05NiAtNzIzYzAgLTEyOSAzMyAtMjQ2IDEyNiAtMzM5YzMgLTMgMyAtOSAzIC0xMmMwIC05IC02IC0xNSAtMTUgLTE1Yy0zIDAgLTkgMCAtMTIgM2MtMTI2IDEyNiAtMTcxIDI5NCAtMTcxIDQ3NGMwIDI1MiAxMDIgNTAxIDEwMiA3MzhjMCAxMjkgLTMwIDI0NiAtMTIzIDMzOWMtMyAzIC0zIDMgLTMgNnMwIDMgMyA2YzkzIDkzIDEyMyAyMTAgMTIzIDMzOWMwIDIzNyAtMTAyIDQ4NiAtMTAyIDczOAkJYzAgMTgwIDQ1IDM0OCAxNzEgNDc0YzMgMyA5IDMgMTIgM2M5IDAgMTUgLTYgMTUgLTE1YzAgLTMgMCAtOSAtMyAtMTJjLTkzIC05MyAtMTI2IC0yMTAgLTEyNiAtMzM5YzAgLTIzNCA5NiAtNDc3IDk2IC03MjNjMCAtMTc3IC00MiAtMzQ1IC0xNjUgLTQ3MWMxMjMgLTEyNiAxNjUgLTI5NCAxNjUgLTQ3MXoiLCAiTS0xMiAtNjM2YzAgLTM0MCAtMTI4IC02NzIgLTEyOCAtOTk2YzAgLTE3MiAzNiAtMzM2IDE1MiAtNDY4YzQgLTQgOCAtOCA4IC0xMmMwIC04IC0xMiAtMjAgLTIwIC0yMGMtNCAwIC04IDQgLTEyIDhjLTE1NiAxNzYgLTIxMiA0MDAgLTIxMiA2MzZjMCAzNDggMTM2IDY4NCAxMzYgMTAxNmMwIDE3MiAtMzYgMzMyIC0xNTIgNDY0YzAgNCAtNCA0IC00IDhzNCA0IDQgOGMxMTYgMTMyIDE1MiAyOTIgMTUyIDQ2NAkJYzAgMzMyIC0xMzYgNjY4IC0xMzYgMTAxNmMwIDIzNiA1NiA0NjAgMjEyIDYzNmM0IDQgOCA4IDEyIDhjOCAwIDIwIC0xMiAyMCAtMjBjMCAtNCAtNCAtOCAtOCAtMTJjLTExNiAtMTMyIC0xNTIgLTI5NiAtMTUyIC00NjhjMCAtMzI0IDEyOCAtNjU2IDEyOCAtOTk2YzAgLTIzMiAtNTIgLTQ2MCAtMjA0IC02MzZjMTUyIC0xNzYgMjA0IC00MDQgMjA0IC02MzZ6IiwgIk0tMTIgLTY1NmMwIC0zNTIgLTEzMiAtNjk2IC0xMzIgLTEwMzJjMCAtMTgwIDM2IC0zNDQgMTU2IC00ODRjNCAtNCA4IC04IDggLTEyYzAgLTggLTEyIC0xNiAtMjAgLTE2Yy00IDAgLTggMCAtMTIgNGMtMTYwIDE4NCAtMjE2IDQxNiAtMjE2IDY1NmMwIDM2MCAxNDAgNzEyIDE0MCAxMDUyYzAgMTc2IC00MCAzNDQgLTE2MCA0ODB2OHY4YzEyMCAxMzYgMTYwIDMwNCAxNjAgNDgwYzAgMzQwIC0xNDAgNjkyIC0xNDAgMTA1MgkJYzAgMjQwIDU2IDQ3MiAyMTYgNjU2YzQgNCA4IDQgMTIgNGM4IDAgMjAgLTggMjAgLTE2YzAgLTQgLTQgLTggLTggLTEyYy0xMjAgLTE0MCAtMTU2IC0zMDQgLTE1NiAtNDg0YzAgLTMzNiAxMzIgLTY4MCAxMzIgLTEwMzJjMCAtMjQwIC01MiAtNDcyIC0yMDggLTY1NmMxNTYgLTE4NCAyMDggLTQxNiAyMDggLTY1NnoiLCAiTS0yMDggLTEzNTJjMCAzMTYgMTI0IDYyNCAxMjQgOTI0YzAgMTU2IC0zNiAzMDAgLTE0NCA0MjBjMCA0IC00IDQgLTQgOHM0IDQgNCA4YzEwOCAxMjAgMTQ0IDI2NCAxNDQgNDIwYzAgMzAwIC0xMjQgNjA4IC0xMjQgOTI0YzAgMjE2IDUyIDQyMCAxOTYgNTgwYzE2IDE2IDQwIC04IDI0IC0yNGMtMTA4IC0xMjAgLTE0NCAtMjY4IC0xNDQgLTQyNGMwIC0yOTIgMTE2IC01OTYgMTE2IC05MDRjMCAtMjE2IC00OCAtNDIwIC0xODggLTU4MAkJYzE0MCAtMTYwIDE4OCAtMzY0IDE4OCAtNTgwYzAgLTMwOCAtMTE2IC02MTIgLTExNiAtOTA0YzAgLTE1NiAzNiAtMzA0IDE0NCAtNDI0YzE2IC0xNiAtOCAtNDAgLTI0IC0yNGMtMTQ0IDE2MCAtMTk2IDM2NCAtMTk2IDU4MHoiLCAiTS0yNTUgLTE4NjBjMCA0MzUgMTYwIDg1NSAxNjAgMTI3MGMwIDIxMCAtNDUgNDEwIC0xODAgNTgwYzAgMCAtNSA1IC01IDEwczUgMTAgNSAxMGMxMzUgMTcwIDE4MCAzNzAgMTgwIDU4MGMwIDQxNSAtMTYwIDgzNSAtMTYwIDEyNzBjMCAyODUgNjAgNTYwIDI0MCA3ODVjMTUgMjAgNDUgLTUgMzAgLTI1Yy0xMzUgLTE3MCAtMTgwIC0zNzAgLTE4MCAtNTg1YzAgLTQxMCAxNTUgLTgyMCAxNTUgLTEyNTAJCWMwIC0yODUgLTY1IC01NjAgLTI0MCAtNzg1YzE3NSAtMjI1IDI0MCAtNTAwIDI0MCAtNzg1YzAgLTQzMCAtMTU1IC04NDAgLTE1NSAtMTI1MGMwIC0yMTUgNDUgLTQxNSAxODAgLTU4NWMxNSAtMjAgLTE1IC00NSAtMzAgLTI1Yy0xODAgMjI1IC0yNDAgNTAwIC0yNDAgNzg1eiIsICJNLTI0MCAtMTY2OGMwIDM5MiAxNDggNzY4IDE0OCAxMTQwYzAgMTkyIC00MCAzNjggLTE2OCA1MjB2OHY4YzEyOCAxNTIgMTY4IDMyOCAxNjggNTIwYzAgMzcyIC0xNDggNzQ4IC0xNDggMTE0MGMwIDI2MCA1NiA1MDggMjI0IDcwOGMxNiAyMCA0OCAtNCAzMiAtMjRjLTEyOCAtMTUyIC0xNjggLTMzMiAtMTY4IC01MjRjMCAtMzY0IDE0MCAtNzM2IDE0MCAtMTEyMGMwIC0yNjAgLTU2IC01MDggLTIyMCAtNzA4CQljMTY0IC0yMDAgMjIwIC00NDggMjIwIC03MDhjMCAtMzg0IC0xNDAgLTc1NiAtMTQwIC0xMTIwYzAgLTE5MiA0MCAtMzcyIDE2OCAtNTI0YzE2IC0yMCAtMTYgLTQ0IC0zMiAtMjRjLTE2OCAyMDAgLTIyNCA0NDggLTIyNCA3MDh6Il0ubWFwKHNrZWxldG9uaXplUGF0aCkpLCBwYXRoRnJhbWVzU3ltYm9sKCJTTFVSIERPV04iLCBbIk0xLjUwMjggLTAuODA3NEMyLjQzMDcgMC4wMzkxIDUuOTQxMyAwLjAzOTEgNi44NjkyIC0wLjgwNzRMNi44NjkyIC0wLjgwNzRDNS45NDEzIC0wLjA4OTYgMi40MzA3IC0wLjA4OTYgMS41MDI4IC0wLjgwNzR6IiwgIk0xLjU4MDYgLTAuMDAwMEMyLjY2MTcgMC45MDEyIDcuNzkzNyAwLjkwMTIgOC44NzQ4IC0wLjAwMDBMOC44NzQ4IC0wLjAwMDBDNy43OTM3IDAuNzcyNCAyLjY2MTcgMC43NzI0IDEuNTgwNiAtMC4wMDAweiIsICJNMC4xMzU4IDQuMTkxOEMzLjEzODQgNS41MDA2IDIzLjkyNjEgMS44MDUyIDI2LjI5MzcgLTAuNDU4MkwyNi4yOTM3IC0wLjQ1ODJDMjMuOTA2OCAxLjY5NjQgMy4xMTkwIDUuMzkxOCAwLjEzNTggNC4xOTE4eiIsICJNNS40MDAwIC0xLjQ1ODJDNy4yMDg0IDAuNDI0OCAxNi4yNzI4IDEuODAyNSAxOC41NTkwIDAuNTQxOEwxOC41NTkwIDAuNTQxOEMxNi4yODk0IDEuNjkzMiA3LjIyNTAgMC4zMTU2IDUuNDAwMCAtMS40NTgyeiIsICJNMC42ODQwIC0wLjk1ODJDMy4zMDk3IDAuNjA2MSAxOS4wNTg2IC0wLjUzMjUgMjEuNDMyMCAtMi40NTgyTDIxLjQzMjAgLTIuNDU4MkMxOS4wNTA2IC0wLjY0MjggMy4zMDE4IDAuNDk1OCAwLjY4NDAgLTAuOTU4MnoiLCAiTTAuNzM1OSAtMC44MDgyQzIuMTA0NiAwLjAxNjQgNC45MDQxIC0wLjUyOTcgNS44NjI2IC0xLjgwODJMNS44NjI2IC0xLjgwODJDNC44ODMwIC0wLjYzODIgMi4wODM1IC0wLjA5MjEgMC43MzU5IC0wLjgwODJ6IiwgIk0tMC4wMDM4IDIuNzQ4OUMxLjAzNTYgNC4wMDU4IDMuOTcwMyA0LjQzOTYgNS4zMjg5IDMuNTM3Mkw1LjMyODkgMy41MzcyQzMuOTg2NSA0LjMzMDMgMS4wNTE4IDMuODk2NCAtMC4wMDM4IDIuNzQ4OXoiLCAiTTAuNDE1OCAtMC44MTg2QzAuOTYzNSAtMC4xNDYzIDIuMDQ0MSAwLjAxNDMgMi43NzEyIC0wLjQ2ODZMMi43NzEyIC0wLjQ2ODZDMi4wNTk4IC0wLjA5MTQgMC45NzkyIC0wLjI1MjAgMC40MTU4IC0wLjgxODZ6IiwgIk0wLjQzNjcgLTUuNDYxMUMtMS4xMzczIDMuNjI0MSAzMy4wNTM0IDIzLjE4ODcgNDAuMDg4NyAxNy4yMjg1TDQwLjA4ODcgMTcuMjI4NUMzMy4xMDY1IDIzLjA5NjAgLTEuMDg0MiAzLjUzMTQgMC40MzY3IC01LjQ2MTF6IiwgIk0wLjI0NjIgLTEuMTEyMUMwLjI1NjMgLTAuMjQ5MyAwLjk4NjggMC41MDMzIDEuODQ4OSAwLjUzODlMMS44NDg5IDAuNTM4OUMxLjA2MzUgMC40Mjg4IDAuMzMyOSAtMC4zMjM3IDAuMjQ2MiAtMS4xMTIxeiIsICJNMC42NTg2IC0xLjQ2MTFDMy40MTg1IDAuMzE3OSAyNC44MDExIDAuMDM5MiAyNy41MTM4IC0xLjgxMTFMMjcuNTEzOCAtMS44MTExQzI0Ljc5OTcgLTAuMDY3NiAzLjQxNzEgMC4yMTExIDAuNjU4NiAtMS40NjExeiIsICJNMC41ODE0IDQuMDM4OUMyLjAyNjYgNS42OTE0IDcuNjkwNSA2LjYzNDEgOS41OTMwIDUuNTM4OUw5LjU5MzAgNS41Mzg5QzcuNzAzNyA2LjU1NDcgMi4wMzk4IDUuNjExOSAwLjU4MTQgNC4wMzg5eiIsICJNMC40NDYzIC0xLjgwNTFDMS4yMTQ3IC0wLjUyODYgMy42MzQzIDAuMTkxMSA0Ljk4NTAgLTAuNDU1MUw0Ljk4NTAgLTAuNDU1MUMzLjY3MjggMC4wNjE3IDEuMjUzMiAtMC42NTgwIDAuNDQ2MyAtMS44MDUxeiJdLm1hcChzaW1wbGlmeVBhdGgpKSwgcGF0aEZyYW1lc1N5bWJvbCgiU0xVUiBVUCIsIFsiTTEuNjMzMSAwLjc3NTBDMi43MDQ4IC0wLjEyMzIgNy43MTk4IC0wLjEyMzIgOC43OTE1IDAuNzc1MEw4Ljc5MTUgMC43NzUwQzcuNzE5OCAwLjAwNTUgMi43MDQ4IDAuMDA1NSAxLjYzMzEgMC43NzUweiIsICJNMS4yMTcyIC0zLjI0OTdDMy44OTE1IC01LjM3NTYgMjkuODU1OCAtOC4wNzAzIDMyLjkwOTYgLTYuNTM4OUwzMi45MDk2IC02LjUzODlDMjkuODY0MSAtNy45OTAyIDMuODk5OCAtNS4yOTU0IDEuMjE3MiAtMy4yNDk3eiIsICJNMC44ODYwIDAuMjUwMEMxLjk0ODMgLTAuNjIxMSA2Ljg0NzEgLTAuNjIxMSA3LjkwOTMgMC4yNTAwTDcuOTA5MyAwLjI1MDBDNi44NDcxIC0wLjU0MDUgMS45NDgzIC0wLjU0MDUgMC44ODYwIDAuMjUwMHoiLCAiTTguODU3MSAtMi4xOTE4QzEyLjIwNTMgLTcuNzYyMyAzNy42NTAzIC01LjU5NzggNDAuMDA5NiAwLjQ1ODJMNDAuMDA5NiAwLjQ1ODJDMzcuNjQwNyAtNS40ODU0IDEyLjE5NTggLTcuNjQ5OCA4Ljg1NzEgLTIuMTkxOHoiLCAiTTUuNDAwMCAwLjgwODJDOC44NzA2IC0xLjI1MjcgOTEuODA2MiAtMy4wOTY0IDk1LjM2NTAgLTEuMTkxOEw5NS4zNjUwIC0xLjE5MThDOTEuODA4NiAtMi45ODU5IDguODczMSAtMS4xNDIyIDUuNDAwMCAwLjgwODJ6IiwgIk0wLjM1ODEgMi45NTE0QzAuNTkzNiAwLjk1MzEgMy45NzA5IC0yLjEzOTUgNS45ODIxIC0yLjE5ODZMNS45ODIxIC0yLjE5ODZDNC4wNTc5IC0yLjA0NDUgMC42ODA2IDEuMDQ4MSAwLjM1ODEgMi45NTE0eiIsICJNMC41OTM5IDEuNzY4MkMyLjI1NzkgLTAuMDk0NiA5LjQ3NzAgLTEuMDgzMCAxMS41NDkxIDAuMjY4MkwxMS41NDkxIDAuMjY4MkM5LjQ5MTQgLTAuOTc3MiAyLjI3MjQgMC4wMTEzIDAuNTkzOSAxLjc2ODJ6Il0ubWFwKHNpbXBsaWZ5UGF0aCkpLCBwYXRoRnJhbWVzU3ltYm9sKCJTTFVSIiwgWyJNLiAtLkMuIC0uIC4gLS4gLiAtLkMuIC0uIC4gLS4gLiAtLnoiLCAiTS4gLkMuIC4gLiAuIC4gLkMuIC4gLiAuIC4gLnoiXSksCi8qcGF0aEZyYW1lc1N5bWJvbCgiQVRUQUNIRUQgRkVSTUFUQSIsIFsKICAgICJNLTY5IC00OGMwIDM4IDMxIDY4IDY5IDY4czY5IC0zMCA2OSAtNjhzLTMxIC02OSAtNjkgLTY5cy02OSAzMSAtNjkgNjl6TTAgLTM2NGMtMTU3IDAgLTMzMyAxNzYgLTMzMyAzNjdjMCAxMCAxMCAxNyAyMCAxN2M5IDAgMTkgLTYgMjEgLTIwYzI2IC0xNDcgMTQ1IC0yNjEgMjkyIC0yNjFzMjY2IDExNCAyOTIgMjYxYzIgMTQgMTIgMjAgMjEgMjBjMTAgMCAyMCAtNyAyMCAtMTdjMCAtMTkxIC0xNzUgLTM2NyAtMzMzIC0zNjd6IiwKXS5tYXAoc2ltcGxpZnlQYXRoKSksKi8KY29uZGl0aW9uU3ltYm9sKCJTVEFWRVNfQ09OTkVDVElPTiIsIGVsZW0gPT4gZWxlbS5pZGVudGl0eS50eXBlID09PSAicmVjdCIgJiYgZWxlbS5zdyA9PT0gMC4xNiAmJiBlbGVtLmlkZW50aXR5LmhlaWdodCA+PSAxMCwgZWxlbSA9PiAoewogIGhlaWdodDogZWxlbS5pZGVudGl0eS5oZWlnaHQKfSkpLCBjb25kaXRpb25TeW1ib2woIkJSQUNFIEJSQUNFX0JBUiIsIGVsZW0gPT4gZWxlbS5pZGVudGl0eS50eXBlID09PSAicmVjdCIgJiYgZWxlbS5pZGVudGl0eS53aWR0aCA9PT0gMC40NSAmJiBlbGVtLmlkZW50aXR5LmhlaWdodCA+PSA0KSwKLypwYXRoRnJhbWVzU3ltYm9sKCJCUkFDRSBCUkFDRV9XSU5HIiwgWwogICAgIk0wIC01NnY5MWMwIDEyIDEwIDIxIDIyIDIxaDQzYzE2NCAwIDI4MSAxMzYgMzc3IDI3MmMxMCAxNCAzMiAtMSAyMiAtMTVjLTEwMyAtMTQ1IC0yMjIgLTM2OSAtMzk5IC0zNjloLTY1eiIsCiAgICAiTTAgNTZoNjVjMTc3IDAgMjk2IC0yMjQgMzk5IC0zNjljMTAgLTE0IC0xMiAtMjkgLTIyIC0xNWMtOTYgMTM2IC0yMTMgMjcyIC0zNzcgMjcyaC00M2MtMTIgMCAtMjIgOSAtMjIgMjF2OTF6IiwKICAgICJNNDM3IDMyOGMxNCAwIDI0IC0xMiAyNCAtMjRjMCAtNCAtMSAtOCAtMyAtMTJjLTgyIC0xNDEgLTE4NCAtMzQ4IC0zNDQgLTM0OGgtMTE0djc0YzAgMjEgMTcgMzggMzggMzhoNzZjMTQyIDAgMjMwIDEzNCAzMDMgMjYwYzQgOCAxMiAxMiAyMCAxMnoiLAogICAgIk00NjEgLTMwNGMwIC0xMiAtMTAgLTI0IC0yNCAtMjRjLTggMCAtMTYgNCAtMjAgMTJjLTczIDEyNiAtMTYxIDI2MCAtMzAzIDI2MGgtNzZjLTIxIDAgLTM4IDE3IC0zOCAzOHY3NGgxMTRjMTYwIDAgMjYyIC0yMDcgMzQ0IC0zNDhjMiAtNCAzIC04IDMgLTEyeiIsCiAgICAiTTAgLTU2djgzYzAgMTYgMTMgMjkgMjkgMjloNTljMTU0IDAgMjU3IDEzNiAzNDIgMjY3YzEzIDIwIDQ0IDAgMzEgLTIwYy05MyAtMTQzIC0yMDQgLTM1OSAtMzczIC0zNTloLTg4eiIsCiAgICAiTTQ1MiAzMzNjOCAwIDE0IC03IDE0IC0xNGMwIC0zIDAgLTYgLTIgLTljLTEwMSAtMTQ1IC0yMTkgLTM2NiAtMzk0IC0zNjZoLTcwdjg5YzAgMTMgMTAgMjMgMjMgMjNoNDdjMTYyIDAgMjc2IDEzNiAzNzAgMjcxYzMgNCA3IDYgMTIgNnoiLApdLm1hcChzaW1wbGlmeVBhdGgpKSwqLwpjb25kaXRpb25TeW1ib2woIlZFUlRJQ0FMX0xJTkUiLCBlbGVtID0+IGVsZW0uaWRlbnRpdHkudHlwZSA9PT0gInJlY3QiICYmIChlbGVtLnN3ID09PSAwLjE5IHx8IGVsZW0uc3cgPT09IDAuNikgJiYgZWxlbS5pZGVudGl0eS5oZWlnaHQgPj0gMSksIGNvbmRpdGlvblN5bWJvbCgiTk9URV9TVEVNIiwgZWxlbSA9PiBlbGVtLmlkZW50aXR5LnR5cGUgPT09ICJyZWN0IiAmJiBlbGVtLnN3ID09PSAwLjEzICYmIGVsZW0uaWRlbnRpdHkuaGVpZ2h0ID49IDEpLCBjb25kaXRpb25TeW1ib2woIlRFTVBPX05PVEVfU1RFTSIsIGVsZW0gPT4gZWxlbS5pZGVudGl0eS50eXBlID09PSAicmVjdCIgJiYgZWxlbS5zdyA9PT0gMC4xMiAmJiBlbGVtLmlkZW50aXR5LmhlaWdodCA+PSAxKSwgY29uZGl0aW9uU3ltYm9sKCJOT1RFVEFJTCBKT0lOVCBCRUFNIiwgZWxlbSA9PiBlbGVtLmlkZW50aXR5LnR5cGUgPT09ICJwb2x5Z29uIiAmJiBwb2ludHNTaXplKGVsZW0uaWRlbnRpdHkucG9pbnRzKSA9PT0gOCksIGNvbmRpdGlvblN5bWJvbCgiU1RBRkZfTElORSIsIGVsZW0gPT4gZWxlbS5pZGVudGl0eS50eXBlID09PSAibGluZSIgJiYgZWxlbS5pZGVudGl0eS5oZWlnaHQgPT09IDAgJiYgZWxlbS5pZGVudGl0eS53aWR0aCA+IDIgJiYgZWxlbS5zdyA9PT0gMC4xICYmICFlbGVtLmlkZW50aXR5WyJzdHJva2UtZGFzaGFycmF5Il0pLCBjb25kaXRpb25TeW1ib2woIkFERElUSU9OQUxfTElORSIsIGVsZW0gPT4gZWxlbS5pZGVudGl0eS50eXBlID09PSAicmVjdCIgJiYgZWxlbS5zdzIgPT09IDAuMiAmJiBlbGVtLmlkZW50aXR5LnJ3ID49IDEuMjUgJiYgZWxlbS5pZGVudGl0eS5ydyA8IDUpLCBjb25kaXRpb25TeW1ib2woIk9DVEFWRSBBIF84IiwgZWxlbSA9PiBlbGVtLmlkZW50aXR5LnR5cGUgPT09ICJ0ZXh0IiAmJiAvOHZhLy50ZXN0KGVsZW0uaWRlbnRpdHkudGV4dCkpLCBjb25kaXRpb25TeW1ib2woIk9DVEFWRSBCIF84IiwgZWxlbSA9PiBlbGVtLmlkZW50aXR5LnR5cGUgPT09ICJ0ZXh0IiAmJiAvOHZiLy50ZXN0KGVsZW0uaWRlbnRpdHkudGV4dCkpLCBjb25kaXRpb25TeW1ib2woIk9DVEFWRSBfOCIsIGVsZW0gPT4gZWxlbS5pZGVudGl0eS50eXBlID09PSAidGV4dCIgJiYgZWxlbS5pZGVudGl0eS50ZXh0ID09PSAiOCIgJiYgZWxlbS5pZGVudGl0eVsiZm9udC1zdHlsZSJdID09PSAiaXRhbGljIiAmJiBlbGVtLmlkZW50aXR5WyJmb250LXdlaWdodCJdID09PSAiYm9sZCIpLCBjb25kaXRpb25TeW1ib2woIk9DVEFWRSBBIF8xNSIsIGVsZW0gPT4gZWxlbS5pZGVudGl0eS50eXBlID09PSAidGV4dCIgJiYgLzE1bWEvLnRlc3QoZWxlbS5pZGVudGl0eS50ZXh0KSksIGNvbmRpdGlvblN5bWJvbCgiT0NUQVZFIEIgXzE1IiwgZWxlbSA9PiBlbGVtLmlkZW50aXR5LnR5cGUgPT09ICJ0ZXh0IiAmJiAvMTVtYi8udGVzdChlbGVtLmlkZW50aXR5LnRleHQpKSwgY29uZGl0aW9uU3ltYm9sKCJPQ1RBVkUgXzE1IiwgZWxlbSA9PiBlbGVtLmlkZW50aXR5LnR5cGUgPT09ICJ0ZXh0IiAmJiBlbGVtLmlkZW50aXR5LnRleHQgPT09ICIxNSIgJiYgZWxlbS5pZGVudGl0eVsiZm9udC1zdHlsZSJdID09PSAiaXRhbGljIiAmJiBlbGVtLmlkZW50aXR5WyJmb250LXdlaWdodCJdID09PSAiYm9sZCIpLCBpZGVudGl0eVN5bWJvbCgiT0NUQVZFIENMT1NFIExJTkUiLCB7CiAgdHlwZTogImxpbmUiLAogIHdpZHRoOiAwLAogIGhlaWdodDogMS4yNSwKICAic3Ryb2tlLXdpZHRoIjogMC4wOTI0LAogICJzdHJva2UtZGFzaGFycmF5IjogIjAuMzYyMzUxNDMyOTk1MDY3LDAuNTM3NjQ4NTY3MDA0OTMzIgp9KSwgY29uZGl0aW9uU3ltYm9sKCJPQ1RBVkUgQ0xPU0UgTElORSIsIGVsZW0gPT4gZWxlbS5pZGVudGl0eS50eXBlID09PSAibGluZSIgJiYgTWF0aC5hYnMoZWxlbS5pZGVudGl0eS5oZWlnaHQpID09PSAwLjggJiYgZWxlbS5pZGVudGl0eS53aWR0aCA9PT0gMCAvKiYmIGVsZW0uaWRlbnRpdHlbInN0cm9rZS1kYXNoYXJyYXkiXSA9PT0gIjEuMCwwLjAiKi8gJiYgZWxlbS5pZGVudGl0eVsic3Ryb2tlLXdpZHRoIl0gPCAwLjIpLCBwYXRoRnJhbWVTeW1ib2woIkRPVCIsICJNIGMgICAgIHMgLSAgLXMtIC0gLSAtcy0gIC0geiIpLCBjb25kaXRpb25TeW1ib2woIkxJTkUiLCBlbGVtID0+IGVsZW0uaWRlbnRpdHkudHlwZSA9PT0gImxpbmUiKSwgY29uZGl0aW9uU3ltYm9sKCJOVUxMIExBUkdFX1JFQ1QiLCBlbGVtID0+IGVsZW0uaWRlbnRpdHkudHlwZSA9PT0gInJlY3QiICYmIGVsZW0uaWRlbnRpdHkuaGVpZ2h0ID4gMSAmJiBlbGVtLmlkZW50aXR5LndpZHRoID49IDIgJiYgZWxlbS5yeCA8PSAwICYmIGVsZW0ucnkgPD0gMCksIGNvbmRpdGlvblN5bWJvbCgiTlVMTCBHRU5FUkFMX1JFQ1QiLCBlbGVtID0+IGVsZW0uaWRlbnRpdHkudHlwZSA9PT0gInJlY3QiICYmIGVsZW0uaWRlbnRpdHkuaGVpZ2h0ICogZWxlbS5pZGVudGl0eS53aWR0aCA+PSAwLjMpLCBjb25kaXRpb25TeW1ib2woIk5VTEwgRU5HUkFWRVJfU0lHIiwgZWxlbSA9PiBlbGVtLmlkZW50aXR5LnR5cGUgPT09ICJ0ZXh0IiAmJiAvd3d3XC5saWx5cG9uZFwub3JnLy50ZXN0KGVsZW0uaWRlbnRpdHkudGV4dCkpLCBjb25kaXRpb25TeW1ib2woIlRFWFQiLCBlbGVtID0+IGVsZW0uaWRlbnRpdHkudHlwZSA9PT0gInRleHQiKSwgZ2x5cGhTeW1ib2woIkFMVEVSIEZMQVQiLCAiYWNjaWRlbnRhbHMuZmxhdCIpLCBnbHlwaFN5bWJvbCgiQUxURVIgRkxBVEZMQVQiLCAiYWNjaWRlbnRhbHMuZmxhdGZsYXQiKSwgZ2x5cGhTeW1ib2woIkFMVEVSIFNIQVJQIiwgImFjY2lkZW50YWxzLnNoYXJwIiksIGdseXBoU3ltYm9sKCJBTFRFUiBTSEFSUFNIQVJQIiwgImFjY2lkZW50YWxzLmRvdWJsZXNoYXJwIiksIGdseXBoU3ltYm9sKCJDTEVGIFRSRUJMRSIsICJjbGVmcy5HIiksIGdseXBoU3ltYm9sKCJDTEVGIFRSRUJMRSIsICJjbGVmcy5HX2NoYW5nZSIpLCBnbHlwaFN5bWJvbCgiQ0xFRiBCQVNTIiwgImNsZWZzLkYiKSwgZ2x5cGhTeW1ib2woIkNMRUYgQkFTUyIsICJjbGVmcy5GX2NoYW5nZSIpLCBnbHlwaFN5bWJvbCgiTk9URVRBSUwgRkxBRyBVUCBFSUdIVEgiLCAiZmxhZ3MudTMiKSwgZ2x5cGhTeW1ib2woIk5PVEVUQUlMIEZMQUcgVVAgU0lYVEVFTlRIIiwgImZsYWdzLnU0IiksIGdseXBoU3ltYm9sKCJOT1RFVEFJTCBGTEFHIFVQIFRISVJUWVNFQ09ORCIsICJmbGFncy51NSIpLCBnbHlwaFN5bWJvbCgiTk9URVRBSUwgRkxBRyBVUCBTSVhUWUZPVVJUSCIsICJmbGFncy51NiIpLCBnbHlwaFN5bWJvbCgiTk9URVRBSUwgRkxBRyBVUCBIVU5EUkVEVFdFTlRZRUlHSFRIIiwgImZsYWdzLnU3IiksIGdseXBoU3ltYm9sKCJOT1RFVEFJTCBGTEFHIFVQIFRXT0hVTkRSRURTRklGVFlTSVhUSCIsICJmbGFncy51OCIpLCBnbHlwaFN5bWJvbCgiTk9URVRBSUwgRkxBRyBET1dOIEVJR0hUSCIsICJmbGFncy5kMyIpLCBnbHlwaFN5bWJvbCgiTk9URVRBSUwgRkxBRyBET1dOIFNJWFRFRU5USCIsICJmbGFncy5kNCIpLCBnbHlwaFN5bWJvbCgiTk9URVRBSUwgRkxBRyBET1dOIFRISVJUWVNFQ09ORCIsICJmbGFncy5kNSIpLCBnbHlwaFN5bWJvbCgiTk9URVRBSUwgRkxBRyBET1dOIFNJWFRZRk9VUlRIIiwgImZsYWdzLmQ2IiksIGdseXBoU3ltYm9sKCJOT1RFVEFJTCBGTEFHIERPV04gSFVORFJFRFRXRU5UWUVJR0hUSCIsICJmbGFncy5kNyIpLCBnbHlwaFN5bWJvbCgiTk9URVRBSUwgRkxBRyBET1dOIFRXT0hVTkRSRURTRklGVFlTSVhUSCIsICJmbGFncy5kOCIpLCBnbHlwaFN5bWJvbCgiTk9URSBSRVNUIiwgInJlc3RzLjAiKSwgZ2x5cGhTeW1ib2woIk5PVEUgUkVTVCIsICJyZXN0cy4xIiksIGdseXBoU3ltYm9sKCJOT1RFIFJFU1QiLCAicmVzdHMuMiIpLCBnbHlwaFN5bWJvbCgiTk9URSBSRVNUIiwgInJlc3RzLjMiKSwgZ2x5cGhTeW1ib2woIk5PVEUgUkVTVCIsICJyZXN0cy40IiksIGdseXBoU3ltYm9sKCJOT1RFIFJFU1QiLCAicmVzdHMuNSIpLCBnbHlwaFN5bWJvbCgiTk9URSBSRVNUIiwgInJlc3RzLjYiKSwgZ2x5cGhTeW1ib2woIk5PVEUgUkVTVCIsICJyZXN0cy43IiksIGdseXBoU3ltYm9sKCJOT1RFIFJFU1QiLCAicmVzdHMuOCIpLCBnbHlwaFN5bWJvbCgiVElNRV9TSUcgQ19CQVIiLCAidGltZXNpZy5DMjIiKSwgZ2x5cGhTeW1ib2woIlNVU1RBSU4gT04iLCAicGVkYWwuUGVkIiksIGdseXBoU3ltYm9sKCJTVVNUQUlOIE9GRiIsICJwZWRhbC4qIiksIGdseXBoU3ltYm9sKCJBVFRBQ0hFRCBQT1JUQVRPIFVQIiwgInNjcmlwdHMuZHBvcnRhdG8iKSwgZ2x5cGhTeW1ib2woIkFUVEFDSEVEIFBPUlRBVE8gRE9XTiIsICJzY3JpcHRzLnVwb3J0YXRvIiksIGdseXBoU3ltYm9sKCJBVFRBQ0hFRCBETUFSQ0FUTyBET1dOIiwgInNjcmlwdHMuZG1hcmNhdG8iKSwgZ2x5cGhTeW1ib2woIkFUVEFDSEVEIERNQVJDQVRPIFVQIiwgInNjcmlwdHMudW1hcmNhdG8iKSwgZ2x5cGhTeW1ib2woIkFUVEFDSEVEIFRFTlVUTyIsICJzY3JpcHRzLnRlbnV0byIpLCBnbHlwaFN5bWJvbCgiQVRUQUNIRUQgUFJBTEwiLCAic2NyaXB0cy5wcmFsbCIpLCBnbHlwaFN5bWJvbCgiQVRUQUNIRUQgTU9SREVOVCIsICJzY3JpcHRzLm1vcmRlbnQiKSwgZ2x5cGhTeW1ib2woIkFUVEFDSEVEIEZFUk1BVEEgVVAiLCAic2NyaXB0cy51ZmVybWF0YSIpLCBnbHlwaFN5bWJvbCgiQVRUQUNIRUQgRkVSTUFUQSBET1dOIiwgInNjcmlwdHMuZGZlcm1hdGEiKSwgZ2x5cGhTeW1ib2woIkFUVEFDSEVEIFNIT1JURkVSTUFUQSBVUCIsICJzY3JpcHRzLnVzaG9ydGZlcm1hdGEiKSwgZ2x5cGhTeW1ib2woIkFUVEFDSEVEIFNIT1JURkVSTUFUQSBET1dOIiwgInNjcmlwdHMuZHNob3J0ZmVybWF0YSIpLCBnbHlwaFN5bWJvbCgiQVRUQUNIRUQgU0ZPUlpBVE8iLCAic2NyaXB0cy5zZm9yemF0byIpLCBnbHlwaFN5bWJvbCgiQlJBQ0UgQlJBQ0VfV0lORyIsICJicmFja2V0dGlwcy51cCIpLCBnbHlwaFN5bWJvbCgiQlJBQ0UgQlJBQ0VfV0lORyIsICJicmFja2V0dGlwcy5kb3duIildOwpwYXRoU3ltYm9scy5mb3JFYWNoKCh7CiAgc3ltYm9sLAogIGRzCn0pID0+IHN5bWJvbFJ1bGVzLnB1c2gocGF0aEZyYW1lc1N5bWJvbChzeW1ib2wsIGRzKSkpOwpjb25zdCBwb3N0U3ltYm9sUHJvY2VzcyA9IChzeW1ib2wsIHByb2Nlc3MpID0+IChlbGVtLCByZXN1bHQpID0+IHsKICBjb25zdCBzeW1ib2xzID0gcmVzdWx0LnN5bWJvbCAmJiByZXN1bHQuc3ltYm9sLnNwbGl0KCIgIik7CiAgaWYgKHN5bWJvbHMgJiYgc3ltYm9scy5pbmNsdWRlcyhzeW1ib2wpKSBwcm9jZXNzKGVsZW0sIHJlc3VsdCk7Cn07CmNvbnN0IHBvc3RDb25kaXRpb25TeW1ib2wgPSAoc3ltYm9sLCBjb25kaXRpb24sIGFkZFN5bWJvbCkgPT4gKGVsZW0sIHJlc3VsdCkgPT4gewogIGNvbnN0IHN5bWJvbHMgPSByZXN1bHQuc3ltYm9sICYmIHJlc3VsdC5zeW1ib2wuc3BsaXQoIiAiKTsKICBpZiAoc3ltYm9scyAmJiBzeW1ib2xzLmluY2x1ZGVzKHN5bWJvbCkgJiYgY29uZGl0aW9uKGVsZW0pKSByZXN1bHQuc3ltYm9sID0gWy4uLnN5bWJvbHMsIGFkZFN5bWJvbF0uam9pbigiICIpOwp9Owpjb25zdCBwb3N0U3ltYm9sUnVsZXMgPSBbcG9zdENvbmRpdGlvblN5bWJvbCgiTlVNQkVSIiwgZWxlbSA9PiBlbGVtU2NhbGUoZWxlbSwgMC4wMDQpLCAiVElNRV9TSUciKSwgcG9zdENvbmRpdGlvblN5bWJvbCgiTlVNQkVSIiwgZWxlbSA9PiBlbGVtU2NhbGUoZWxlbSwgMC4wMDI1KSwgIkFMVEVSTkFUSVZFIiksIHBvc3RDb25kaXRpb25TeW1ib2woIkNMT1NFIiwgZWxlbSA9PiBlbGVtLmlkZW50aXR5LmhlaWdodCA+IDAsICJVUCIpLCBwb3N0Q29uZGl0aW9uU3ltYm9sKCJDTE9TRSIsIGVsZW0gPT4gZWxlbS5pZGVudGl0eS5oZWlnaHQgPCAwLCAiRE9XTiIpLCBwb3N0U3ltYm9sUHJvY2VzcygiQkVBTSIsIChlbGVtLCByZXN1bHQpID0+IHsKICBjb25zdCBmbG9hdHMgPSBlbGVtLmlkZW50aXR5LnBvaW50cy5zcGxpdCgiICIpLm1hcChOdW1iZXIpOwogIGNvbnN0IHgxID0gZmxvYXRzWzRdOwogIGNvbnN0IHgyID0gZmxvYXRzWzBdOwogIGNvbnN0IHkxID0gKGZsb2F0c1s1XSArIGZsb2F0c1s3XSkgLyAyOwogIGNvbnN0IHkyID0gKGZsb2F0c1sxXSArIGZsb2F0c1szXSkgLyAyOwogIHJlc3VsdC5zdGFydCA9IHsKICAgIHg6IHgxLAogICAgeTogeTEKICB9OwogIHJlc3VsdC50YXJnZXQgPSB7CiAgICB4OiB4MiwKICAgIHk6IHkyCiAgfTsKfSksIHBvc3RTeW1ib2xQcm9jZXNzKCJTTFVSIiwgKGVsZW0sIHJlc3VsdCkgPT4gewogIGNvbnN0IGNhcHR1cmVzID0gZWxlbS5pZGVudGl0eS5kLm1hdGNoKC9NW1xkLi1dKyAoW1xkLi1dKykuKkwoW1xkLi1dKykgKFtcZC4tXSspLyk7CiAgaWYgKGNhcHR1cmVzKSB7CiAgICBjb25zdCBbXywgc3ksIGV4LCBleV0gPSBjYXB0dXJlczsKICAgIHJlc3VsdC5zdGFydCA9IHsKICAgICAgeDogMCwKICAgICAgeTogTnVtYmVyKHN5KQogICAgfTsKICAgIHJlc3VsdC50YXJnZXQgPSB7CiAgICAgIHg6IE51bWJlcihleCksCiAgICAgIHk6IE51bWJlcihleSkKICAgIH07CiAgICAvL2NvbnNvbGUubG9nKCJzbHVyOiIsIHJlc3VsdCk7CiAgfQp9KSwgcG9zdFN5bWJvbFByb2Nlc3MoIkxJTkUiLCAoZWxlbSwgcmVzdWx0KSA9PiB7CiAgcmVzdWx0LnN0YXJ0ID0gewogICAgeDogMCwKICAgIHk6IDAKICB9OwogIHJlc3VsdC50YXJnZXQgPSB7CiAgICB4OiBlbGVtLmlkZW50aXR5LndpZHRoLAogICAgeTogZWxlbS5pZGVudGl0eS5oZWlnaHQKICB9Owp9KSwKLypwb3N0U3ltYm9sUHJvY2VzcygiTk9URUhFQUQiLCAoZWxlbSwgcmVzdWx0KSA9PiB7CiAgICByZXN1bHQuc2NhbGUgPSBlbGVtLmlkZW50aXR5LnNjYWxlLnggLyBHTFlQSF9CQVNFX1NDQUxFOwp9KSwqLwpwb3N0U3ltYm9sUHJvY2VzcygiVEVYVCIsIChlbGVtLCByZXN1bHQpID0+IHsKICByZXN1bHQudGV4dCA9IGVsZW0uaWRlbnRpdHkudGV4dDsKfSksIHBvc3RTeW1ib2xQcm9jZXNzKCJOT1RFX1NURU0iLCAoZWxlbSwgcmVzdWx0KSA9PiB7CiAgcmVzdWx0LndpZHRoID0gZWxlbS5pZGVudGl0eS53aWR0aDsKICByZXN1bHQuaGVpZ2h0ID0gZWxlbS5pZGVudGl0eS5oZWlnaHQ7Cn0pLCBwb3N0U3ltYm9sUHJvY2VzcygiQURESVRJT05BTF9MSU5FIiwgKGVsZW0sIHJlc3VsdCkgPT4gewogIHJlc3VsdC53aWR0aCA9IGVsZW0uaWRlbnRpdHkud2lkdGg7CiAgcmVzdWx0LmhlaWdodCA9IGVsZW0uaWRlbnRpdHkuaGVpZ2h0OwogIC8vIGNvcnJlY3QgcnkgYnkgc3Ryb2tlIHdpZHRoCiAgY29uc3QgY3kgPSBlbGVtLnkgKyBlbGVtLmlkZW50aXR5LmhlaWdodCAvIDI7CiAgcmVzdWx0LnJ5ID0gcm91bmROdW1iZXIoY3ksIFBPU19QUkVDSVNJT04pOwp9KV07CmNvbnN0IGdseXBoVG9TeW1ib2xzID0gewogIHplcm86ICJOVU1CRVIgMCIsCiAgb25lOiAiTlVNQkVSIDEiLAogIHR3bzogIk5VTUJFUiAyIiwKICB0aHJlZTogIk5VTUJFUiAzIiwKICBmb3VyOiAiTlVNQkVSIDQiLAogIGZpdmU6ICJOVU1CRVIgNSIsCiAgc2l4OiAiTlVNQkVSIDYiLAogIHNldmVuOiAiTlVNQkVSIDciLAogIGVpZ2h0OiAiTlVNQkVSIDgiLAogIG5pbmU6ICJOVU1CRVIgOSIKfTsKY29uc3QgcG9zdFN5bWJvbGl6ZSA9IChlbGVtLCByZXN1bHQpID0+IHsKICByZXN1bHQuZ2x5cGggPSByZXN1bHQuZ2x5cGggfHwgZWxlbS5nbHlwaDsKICBpZiAocmVzdWx0LmdseXBoICYmIGVsZW0uaWRlbnRpdHkuc2NhbGUpIHsKICAgIGNvbnN0IHNjYWxlID0gZWxlbS5pZGVudGl0eS5zY2FsZS54IC8gR0xZUEhfQkFTRV9TQ0FMRTsKICAgIGlmIChzY2FsZSAhPT0gMSkgcmVzdWx0LnNjYWxlID0gc2NhbGU7CiAgfQogIGlmIChyZXN1bHQuZ2x5cGgpIHsKICAgIGNvbnN0IGdseXBoU3ltYm9scyA9IGdseXBoVG9TeW1ib2xzW3Jlc3VsdC5nbHlwaF07CiAgICBpZiAoZ2x5cGhTeW1ib2xzKSByZXN1bHQuc3ltYm9sID0gW3Jlc3VsdC5zeW1ib2wsIGdseXBoU3ltYm9sc10uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiAiKTsKICB9CiAgZm9yIChjb25zdCBydWxlIG9mIHBvc3RTeW1ib2xSdWxlcykgcnVsZShlbGVtLCByZXN1bHQpOwogIHJldHVybiByZXN1bHQ7Cn07CmNvbnN0IHN5bWJvbGl6ZSA9IGVsZW0gPT4gewogIGVsZW0uZ2x5cGggPSBnbHlwaEhhc2hbZWxlbS5oYXNoXTsKICBsZXQgcmVzdWx0ID0ge307CiAgZm9yIChjb25zdCBydWxlIG9mIHN5bWJvbFJ1bGVzKSB7CiAgICBjb25zdCByID0gcnVsZShlbGVtKTsKICAgIGlmIChyKSB7CiAgICAgIHJlc3VsdCA9IHI7CiAgICAgIGJyZWFrOwogICAgfQogIH0KICByZXR1cm4gcG9zdFN5bWJvbGl6ZShlbGVtLCByZXN1bHQpOwp9OwpleHBvcnQgeyBzaW1wbGlmeVBhdGgsIGlkZW50aXR5SGFzaCwgc3ltYm9saXplIH07"},{"version":3,"names":["sha1","GLYPH_BASE_SCALE","POS_PRECISION","roundNumber","pathSymbols","glyphHash","identityHash","obj","identityArray","Object","entries","sort","k1","k2","JSON","stringify","identitySymbol","symbol","hash","elem","simplifyPath","d","replace","skeletonizePath","pointsSize","points","split","length","pathFrameSymbol","frame","identity","type","pathFramesSymbol","frames","includes","pathSkeletonsSymbol","skeletons","elemScale","scale","Math","abs","x","y","conditionSymbol","condition","fields","glyphSymbol","glyph","symbolRules","map","sw","rh","height","width","sw2","rw","test","text","rx","ry","forEach","ds","push","postSymbolProcess","process","result","symbols","postConditionSymbol","addSymbol","join","postSymbolRules","floats","Number","x1","x2","y1","y2","start","target","captures","match","_","sy","ex","ey","cy","glyphToSymbols","zero","one","two","three","four","five","six","seven","eight","nine","postSymbolize","glyphSymbols","filter","Boolean","rule","symbolize","r"],"sources":["/home/camus/work/lotus/node_modules/eslint-loader/index.js??ref--14-0!/home/camus/work/lotus/inc/staffSvg/svgSymbols.ts"],"sourcesContent":["\nimport sha1 from \"sha1\";\n\nimport {GLYPH_BASE_SCALE, POS_PRECISION, roundNumber} from \"./utils\";\nimport pathSymbols from \"./path-symbols.json\";\nimport glyphHash from \"./glyph-hash.json\";\n\n\n\ntype Element = {[key: string]: any};\n\ninterface SymbolizeResult {\n\tsymbol?: string;\n\tglyph?: string;\n\n\t[key: string]: any;\n};\n\n\ntype SymbolizeRule = (elem: Element) => SymbolizeResult;\ntype PostSymbolizeRule = (elem: Element, result: SymbolizeResult) => void;\n\n\nconst identityHash = obj => {\n\tconst identityArray = Object.entries(obj).sort(([k1], [k2]) => k1 > k2 ? 1 : -1);\n\treturn sha1(JSON.stringify(identityArray));\n};\n\n\nconst identitySymbol = (symbol, obj) => {\n\tconst hash = identityHash(obj);\n\n\treturn elem => {\n\t\tif (elem.hash === hash)\n\t\t\treturn {symbol};\n\t};\n};\n\n\nconst simplifyPath = (d: string): string => d.replace(/\\s+/g, \" \").replace(/\\d/g, \"\");\nconst skeletonizePath = (d: string): string => d.replace(/\\s+/g, \" \").replace(/-?[.\\d]+/g, \".\");\n\n\nconst pointsSize = (points: string): number => points.split(\" \").length;\n\n\nconst pathFrameSymbol = (symbol: string, frame: string): SymbolizeRule => elem => {\n\tif (elem.identity.type === \"path\" && simplifyPath(elem.identity.d) === frame)\n\t\treturn {symbol};\n};\n\n\nconst pathFramesSymbol = (symbol: string, frames: string[]): SymbolizeRule => elem => {\n\tif (elem.identity.type === \"path\" && frames.includes(simplifyPath(elem.identity.d)))\n\t\treturn {symbol};\n};\n\n\nconst pathSkeletonsSymbol = (symbol: string, skeletons: string[]): SymbolizeRule => elem => {\n\tif (elem.identity.type === \"path\" && skeletons.includes(skeletonizePath(elem.identity.d)))\n\t\treturn {symbol};\n};\n\n\nconst elemScale = (elem: Element, scale: number): boolean => elem.identity.scale\n\t&& (Math.abs(elem.identity.scale.x) === scale)\n\t&& (Math.abs(elem.identity.scale.y) === scale);\n\n\nconst conditionSymbol = (symbol: string, condition: (elem: Element) => boolean, fields: (x: any) => object = () => ({})) => elem => {\n\tif (condition(elem))\n\t\treturn {symbol, ...fields(elem)};\n};\n\n\nconst glyphSymbol = (symbol: string, glyph: string) => elem => {\n\tif (elem.glyph === glyph)\n\t\treturn {symbol};\n};\n\n\nconst symbolRules: SymbolizeRule[] = [\n\tpathFramesSymbol(\"NOTE NOTEHEAD CROSS\", [\n\t\t\"M163 31l125 101c2 2 5 3 8 3s6 -1 8 -3l18 -14c3 -2 4 -6 4 -10s-1 -8 -4 -10l-121 -98l121 -98c3 -2 4 -6 4 -10s-1 -8 -4 -10l-18 -14c-2 -2 -5 -3 -8 -3s-6 1 -8 3l-125 101l-125 -101c-2 -2 -5 -3 -8 -3s-6 1 -8 3l-17 14c-3 2 -5 6 -5 10s2 8 5 10l120 98l-120 98\t\tc-3 2 -5 6 -5 10s2 8 5 10l17 14c2 2 5 3 8 3s6 -1 8 -3z\",\n\t].map(simplifyPath)),\n\n\tpathFramesSymbol(\"NOTE NOTEHEAD DIAMOND WHOLE\", [\n\t\t\"M206 75c-29 0 -27 -45 -27 -74c0 -47 25 -56 61 -67c13 -4 28 -9 40 -9c29 0 26 45 26 74c0 47 -25 56 -61 67c-13 4 -27 9 -39 9zM485 0c0 -57 -78 -42 -122 -67c-41 -23 -72 -68 -120 -68s-80 45 -121 68c-44 25 -122 10 -122 67s78 42 122 67c41 23 73 68 121 68\t\ts79 -45 120 -68c44 -25 122 -10 122 -67z\",\n\t].map(simplifyPath)),\n\tpathFramesSymbol(\"NOTE NOTEHEAD DIAMOND HALF\", [\n\t\t\"M290 55c0 17 -15 27 -30 27c-4 0 -8 -1 -12 -2c-25 -8 -60 -30 -89 -49s-65 -42 -82 -62c-6 -7 -10 -16 -10 -24c0 -17 14 -27 29 -27c4 0 9 1 13 2c25 8 60 30 89 49s65 42 82 62c6 7 10 16 10 24zM316 135c18 0 41 -17 41 -40c0 -28 -33 -54 -42 -84\t\tc-11 -36 3 -84 -30 -106c-15 -10 -33 -13 -51 -13c-25 0 -50 6 -76 6c-43 0 -83 -33 -118 -33c-18 0 -40 17 -40 40c0 28 33 54 42 84c11 36 -3 84 30 106c15 10 32 13 50 13c25 0 51 -6 77 -6c43 0 82 33 117 33z\",\n\t].map(simplifyPath)),\n\tpathFramesSymbol(\"NOTE NOTEHEAD DIAMOND SOLID\", [\n\t\t\"M325 135c19 0 36 -18 36 -38c0 -36 -61 -62 -84 -100c-25 -41 -32 -95 -72 -123c-9 -6 -18 -8 -28 -8c-23 0 -48 12 -72 12c-23 0 -47 -13 -68 -13c-19 0 -37 18 -37 38c0 36 61 62 84 100c25 41 33 95 73 123c9 6 17 8 27 8c23 0 48 -12 72 -12c23 0 48 13 69 13z\",\n\t].map(simplifyPath)),\n\n\tpathFramesSymbol(\"NOTE REST\", [\n\t\t\"M510 -22h-645c-12 0 -21 10 -21 22s9 22 21 22h135v126c0 4 4 8 8 8h359c4 0 8 -4 8 -8v-126h135c12 0 21 -10 21 -22s-9 -22 -21 -22z\",\n\t].map(simplifyPath)),\n\n\tpathFramesSymbol(\"TR\", [\n\t\t\"M-300 227c0 -23 18 -32 41 -32c40 0 72 14 104 28l5 28c-23 17 -50 29 -82 29c-33 0 -68 -17 -68 -53zM-26 103c0 -61 -47 -113 -98 -113c-39 0 -56 43 -56 90c0 14 1 28 4 41l16 78c-32 -13 -63 -25 -103 -25c-34 0 -59 17 -59 49c0 50 47 78 94 78c31 0 59 -10 83 -25\t\tl47 234c6 -3 13 -5 20 -5c22 0 48 16 68 35l-54 -268l66 36c26 14 51 21 74 21c29 0 53 -11 64 -30c17 21 44 32 70 32c35 0 67 -20 67 -66c0 -44 -27 -89 -64 -89c-25 0 -37 22 -37 48c0 41 28 63 59 63h4c-8 14 -23 21 -38 21c-25 0 -51 -16 -57 -45l-53 -269\t\tc-11 7 -25 10 -39 10s-29 -3 -43 -10l54 269v6c0 16 -13 27 -30 27c-7 0 -15 -2 -23 -6l-79 -44l-7 -35c27 -31 50 -66 50 -108zM-84 39c23 0 36 33 36 61c0 31 -15 57 -34 81l-6 -30c-4 -18 -12 -54 -12 -81c0 -18 4 -31 16 -31z\",\n\t\t\"M-299 227c0 -22 18 -31 41 -31c40 0 71 14 103 28l5 26c-23 17 -51 29 -82 29c-32 0 -67 -16 -67 -52zM-26 104c0 -61 -47 -114 -98 -114c-39 0 -56 43 -56 90c0 14 1 28 4 41l16 77c-31 -13 -63 -25 -103 -25c-35 0 -59 17 -59 50c0 51 48 79 95 79c31 0 58 -10 82 -25\t\tl47 233c6 -3 13 -5 20 -5c22 0 48 16 68 35l-54 -267l66 36c26 14 51 21 74 21c29 0 52 -11 63 -30c18 20 45 31 70 31c35 0 68 -21 68 -67c0 -45 -28 -89 -65 -89c-25 0 -37 21 -37 47c0 41 29 64 60 64h3c-8 14 -22 21 -37 21c-24 0 -51 -17 -57 -45l-53 -269\t\tc-11 7 -25 11 -39 11s-29 -4 -43 -11l53 269c0 2 1 5 1 7c0 16 -13 27 -30 27c-7 0 -15 -3 -23 -7l-79 -44l-7 -33c27 -31 50 -66 50 -108zM-85 39c23 0 35 33 35 61c0 30 -14 56 -32 79l-6 -28c-4 -18 -12 -55 -12 -82c0 -17 4 -30 15 -30z\",\n\t\t\"M-295 228c0 -21 17 -30 38 -30c39 0 71 14 102 28l5 22c-23 17 -50 29 -81 29s-64 -15 -64 -49zM-26 104c0 -62 -47 -114 -98 -114c-39 0 -56 43 -56 90c0 14 1 28 4 41l15 75c-31 -13 -62 -24 -101 -24c-35 0 -60 17 -60 50c0 52 49 82 97 82c30 0 57 -9 81 -24l46 230\t\tc6 -3 13 -5 20 -5c22 0 48 16 68 35l-53 -265l64 35c26 14 51 21 74 21c28 0 52 -10 63 -28c18 19 43 29 68 29c36 0 70 -22 70 -70c0 -46 -27 -91 -65 -91c-25 0 -39 22 -39 48c0 42 30 64 61 64h3c-8 14 -23 21 -38 21c-23 0 -49 -16 -54 -42l-54 -270\t\tc-11 7 -24 11 -38 11s-30 -4 -44 -11l54 270c0 2 1 5 1 7c0 15 -13 25 -29 25c-7 0 -15 -3 -23 -7l-81 -44l-5 -29c27 -31 49 -68 49 -110zM-87 39c22 0 34 34 34 61c0 29 -13 54 -30 76l-5 -25c-4 -19 -14 -57 -14 -84c0 -16 4 -28 15 -28z\",\n\t].map(simplifyPath)),\n\n\tconditionSymbol(\"MEASURE_SEPARATOR\", elem => elem.identity.type === \"rect\"\n\t\t&& elem.sw === 0.19 && elem.identity.rh >= 4 && elem.identity.rh <= 4.35),\n\tconditionSymbol(\"MEASURE_SEPARATOR BOLD\", elem => elem.identity.type === \"rect\"\n\t\t&& elem.sw === 0.6 && elem.identity.rh >= 4 && elem.identity.rh <= 4.35),\n\n\tpathFramesSymbol(\"BRACE\", [\n\t\t\"M- -c - - - - -c - - -c - - - - -c- - - c c - - c- - - s c c - - c c - -c- - - - - -c - - -c - - - - -c - - -z\",\n\t\t\"M- -c - - - - -c - - -c - - - - -c- - - c c - - vvc c - - c c - - c- - - - - -c - - -c - - - - -c - - -z\",\n\t\t\"M- -c - - - - -c - - -c - - - - -c- - - c c - - c - - s c c - - c c - -c- - - - - -c - - -c - - - - -c - - -z\",\n\t\t\"M- -c - - - - -c - - -c - - - - -c- - - c c - - c- - - s c c - - c c - -c- - - - - -c - - -c - - - - -c - - -z\",\n\t]),\n\tpathSkeletonsSymbol(\"BRACE\", [\n\t\t\"M-15 -495c0 -261 -102 -516 -102 -762c0 -135 30 -258 129 -357c3 -3 3 -9 3 -12c0 -9 -6 -15 -15 -15c-3 0 -9 0 -12 3c-132 132 -177 312 -177 498c0 267 108 525 108 777c0 135 -33 258 -129 357c-3 3 -3 3 -3 6s0 3 3 6c96 99 129 222 129 357\t\tc0 252 -108 510 -108 777c0 186 45 366 177 498c3 3 9 3 12 3c9 0 15 -6 15 -15c0 -3 0 -9 -3 -12c-99 -99 -129 -222 -129 -357c0 -246 102 -501 102 -762c0 -186 -48 -363 -174 -495c126 -132 174 -309 174 -495z\",\n\t\t\"M-15 -537c0 -285 -111 -561 -111 -831c0 -147 36 -282 138 -390c3 -3 6 -9 6 -12c0 -9 -9 -18 -18 -18c-3 0 -9 3 -12 6c-138 147 -186 339 -186 540c0 291 114 570 114 846c0 144 -33 279 -135 387c-3 3 -3 6 -3 9s0 6 3 9c102 108 135 243 135 387\t\tc0 276 -114 555 -114 846c0 201 48 393 186 540c3 3 9 6 12 6c9 0 18 -9 18 -18c0 -3 -3 -9 -6 -12c-102 -108 -138 -243 -138 -390c0 -270 111 -546 111 -831c0 -198 -45 -390 -180 -537c135 -147 180 -339 180 -537z\",\n\t\t\"M-18 -471c0 -246 -96 -489 -96 -723c0 -129 33 -246 126 -339c3 -3 3 -9 3 -12c0 -9 -6 -15 -15 -15c-3 0 -9 0 -12 3c-126 126 -171 294 -171 474c0 252 102 501 102 738c0 129 -30 246 -123 339c-3 3 -3 3 -3 6s0 3 3 6c93 93 123 210 123 339c0 237 -102 486 -102 738\t\tc0 180 45 348 171 474c3 3 9 3 12 3c9 0 15 -6 15 -15c0 -3 0 -9 -3 -12c-93 -93 -126 -210 -126 -339c0 -234 96 -477 96 -723c0 -177 -42 -345 -165 -471c123 -126 165 -294 165 -471z\",\n\t\t\"M-12 -636c0 -340 -128 -672 -128 -996c0 -172 36 -336 152 -468c4 -4 8 -8 8 -12c0 -8 -12 -20 -20 -20c-4 0 -8 4 -12 8c-156 176 -212 400 -212 636c0 348 136 684 136 1016c0 172 -36 332 -152 464c0 4 -4 4 -4 8s4 4 4 8c116 132 152 292 152 464\t\tc0 332 -136 668 -136 1016c0 236 56 460 212 636c4 4 8 8 12 8c8 0 20 -12 20 -20c0 -4 -4 -8 -8 -12c-116 -132 -152 -296 -152 -468c0 -324 128 -656 128 -996c0 -232 -52 -460 -204 -636c152 -176 204 -404 204 -636z\",\n\t\t\"M-12 -656c0 -352 -132 -696 -132 -1032c0 -180 36 -344 156 -484c4 -4 8 -8 8 -12c0 -8 -12 -16 -20 -16c-4 0 -8 0 -12 4c-160 184 -216 416 -216 656c0 360 140 712 140 1052c0 176 -40 344 -160 480v8v8c120 136 160 304 160 480c0 340 -140 692 -140 1052\t\tc0 240 56 472 216 656c4 4 8 4 12 4c8 0 20 -8 20 -16c0 -4 -4 -8 -8 -12c-120 -140 -156 -304 -156 -484c0 -336 132 -680 132 -1032c0 -240 -52 -472 -208 -656c156 -184 208 -416 208 -656z\",\n\t\t\"M-208 -1352c0 316 124 624 124 924c0 156 -36 300 -144 420c0 4 -4 4 -4 8s4 4 4 8c108 120 144 264 144 420c0 300 -124 608 -124 924c0 216 52 420 196 580c16 16 40 -8 24 -24c-108 -120 -144 -268 -144 -424c0 -292 116 -596 116 -904c0 -216 -48 -420 -188 -580\t\tc140 -160 188 -364 188 -580c0 -308 -116 -612 -116 -904c0 -156 36 -304 144 -424c16 -16 -8 -40 -24 -24c-144 160 -196 364 -196 580z\",\n\t\t\"M-255 -1860c0 435 160 855 160 1270c0 210 -45 410 -180 580c0 0 -5 5 -5 10s5 10 5 10c135 170 180 370 180 580c0 415 -160 835 -160 1270c0 285 60 560 240 785c15 20 45 -5 30 -25c-135 -170 -180 -370 -180 -585c0 -410 155 -820 155 -1250\t\tc0 -285 -65 -560 -240 -785c175 -225 240 -500 240 -785c0 -430 -155 -840 -155 -1250c0 -215 45 -415 180 -585c15 -20 -15 -45 -30 -25c-180 225 -240 500 -240 785z\",\n\t\t\"M-240 -1668c0 392 148 768 148 1140c0 192 -40 368 -168 520v8v8c128 152 168 328 168 520c0 372 -148 748 -148 1140c0 260 56 508 224 708c16 20 48 -4 32 -24c-128 -152 -168 -332 -168 -524c0 -364 140 -736 140 -1120c0 -260 -56 -508 -220 -708\t\tc164 -200 220 -448 220 -708c0 -384 -140 -756 -140 -1120c0 -192 40 -372 168 -524c16 -20 -16 -44 -32 -24c-168 200 -224 448 -224 708z\",\n\t].map(skeletonizePath)),\n\n\tpathFramesSymbol(\"SLUR DOWN\", [\n\t\t\"M1.5028 -0.8074C2.4307 0.0391 5.9413 0.0391 6.8692 -0.8074L6.8692 -0.8074C5.9413 -0.0896 2.4307 -0.0896 1.5028 -0.8074z\",\n\t\t\"M1.5806 -0.0000C2.6617 0.9012 7.7937 0.9012 8.8748 -0.0000L8.8748 -0.0000C7.7937 0.7724 2.6617 0.7724 1.5806 -0.0000z\",\n\t\t\"M0.1358 4.1918C3.1384 5.5006 23.9261 1.8052 26.2937 -0.4582L26.2937 -0.4582C23.9068 1.6964 3.1190 5.3918 0.1358 4.1918z\",\n\t\t\"M5.4000 -1.4582C7.2084 0.4248 16.2728 1.8025 18.5590 0.5418L18.5590 0.5418C16.2894 1.6932 7.2250 0.3156 5.4000 -1.4582z\",\n\t\t\"M0.6840 -0.9582C3.3097 0.6061 19.0586 -0.5325 21.4320 -2.4582L21.4320 -2.4582C19.0506 -0.6428 3.3018 0.4958 0.6840 -0.9582z\",\n\t\t\"M0.7359 -0.8082C2.1046 0.0164 4.9041 -0.5297 5.8626 -1.8082L5.8626 -1.8082C4.8830 -0.6382 2.0835 -0.0921 0.7359 -0.8082z\",\n\t\t\"M-0.0038 2.7489C1.0356 4.0058 3.9703 4.4396 5.3289 3.5372L5.3289 3.5372C3.9865 4.3303 1.0518 3.8964 -0.0038 2.7489z\",\n\t\t\"M0.4158 -0.8186C0.9635 -0.1463 2.0441 0.0143 2.7712 -0.4686L2.7712 -0.4686C2.0598 -0.0914 0.9792 -0.2520 0.4158 -0.8186z\",\n\t\t\"M0.4367 -5.4611C-1.1373 3.6241 33.0534 23.1887 40.0887 17.2285L40.0887 17.2285C33.1065 23.0960 -1.0842 3.5314 0.4367 -5.4611z\",\n\t\t\"M0.2462 -1.1121C0.2563 -0.2493 0.9868 0.5033 1.8489 0.5389L1.8489 0.5389C1.0635 0.4288 0.3329 -0.3237 0.2462 -1.1121z\",\n\t\t\"M0.6586 -1.4611C3.4185 0.3179 24.8011 0.0392 27.5138 -1.8111L27.5138 -1.8111C24.7997 -0.0676 3.4171 0.2111 0.6586 -1.4611z\",\n\t\t\"M0.5814 4.0389C2.0266 5.6914 7.6905 6.6341 9.5930 5.5389L9.5930 5.5389C7.7037 6.5547 2.0398 5.6119 0.5814 4.0389z\",\n\t\t\"M0.4463 -1.8051C1.2147 -0.5286 3.6343 0.1911 4.9850 -0.4551L4.9850 -0.4551C3.6728 0.0617 1.2532 -0.6580 0.4463 -1.8051z\",\n\t].map(simplifyPath)),\n\tpathFramesSymbol(\"SLUR UP\", [\n\t\t\"M1.6331 0.7750C2.7048 -0.1232 7.7198 -0.1232 8.7915 0.7750L8.7915 0.7750C7.7198 0.0055 2.7048 0.0055 1.6331 0.7750z\",\n\t\t\"M1.2172 -3.2497C3.8915 -5.3756 29.8558 -8.0703 32.9096 -6.5389L32.9096 -6.5389C29.8641 -7.9902 3.8998 -5.2954 1.2172 -3.2497z\",\n\t\t\"M0.8860 0.2500C1.9483 -0.6211 6.8471 -0.6211 7.9093 0.2500L7.9093 0.2500C6.8471 -0.5405 1.9483 -0.5405 0.8860 0.2500z\",\n\t\t\"M8.8571 -2.1918C12.2053 -7.7623 37.6503 -5.5978 40.0096 0.4582L40.0096 0.4582C37.6407 -5.4854 12.1958 -7.6498 8.8571 -2.1918z\",\n\t\t\"M5.4000 0.8082C8.8706 -1.2527 91.8062 -3.0964 95.3650 -1.1918L95.3650 -1.1918C91.8086 -2.9859 8.8731 -1.1422 5.4000 0.8082z\",\n\t\t\"M0.3581 2.9514C0.5936 0.9531 3.9709 -2.1395 5.9821 -2.1986L5.9821 -2.1986C4.0579 -2.0445 0.6806 1.0481 0.3581 2.9514z\",\n\t\t\"M0.5939 1.7682C2.2579 -0.0946 9.4770 -1.0830 11.5491 0.2682L11.5491 0.2682C9.4914 -0.9772 2.2724 0.0113 0.5939 1.7682z\",\n\t].map(simplifyPath)),\n\tpathFramesSymbol(\"SLUR\",[\n\t\t\"M. -.C. -. . -. . -.C. -. . -. . -.z\",\n\t\t\"M. .C. . . . . .C. . . . . .z\",\n\t]),\n\n\t/*pathFramesSymbol(\"ATTACHED FERMATA\", [\n\t\t\"M-69 -48c0 38 31 68 69 68s69 -30 69 -68s-31 -69 -69 -69s-69 31 -69 69zM0 -364c-157 0 -333 176 -333 367c0 10 10 17 20 17c9 0 19 -6 21 -20c26 -147 145 -261 292 -261s266 114 292 261c2 14 12 20 21 20c10 0 20 -7 20 -17c0 -191 -175 -367 -333 -367z\",\n\t].map(simplifyPath)),*/\n\n\tconditionSymbol(\"STAVES_CONNECTION\",\n\t\telem => elem.identity.type === \"rect\" && elem.sw === 0.16 && elem.identity.height >= 10,\n\t\telem => ({height: elem.identity.height})),\n\n\tconditionSymbol(\"BRACE BRACE_BAR\", elem => elem.identity.type === \"rect\" && elem.identity.width === 0.45 && elem.identity.height >= 4),\n\t/*pathFramesSymbol(\"BRACE BRACE_WING\", [\n\t\t\"M0 -56v91c0 12 10 21 22 21h43c164 0 281 136 377 272c10 14 32 -1 22 -15c-103 -145 -222 -369 -399 -369h-65z\",\n\t\t\"M0 56h65c177 0 296 -224 399 -369c10 -14 -12 -29 -22 -15c-96 136 -213 272 -377 272h-43c-12 0 -22 9 -22 21v91z\",\n\t\t\"M437 328c14 0 24 -12 24 -24c0 -4 -1 -8 -3 -12c-82 -141 -184 -348 -344 -348h-114v74c0 21 17 38 38 38h76c142 0 230 134 303 260c4 8 12 12 20 12z\",\n\t\t\"M461 -304c0 -12 -10 -24 -24 -24c-8 0 -16 4 -20 12c-73 126 -161 260 -303 260h-76c-21 0 -38 17 -38 38v74h114c160 0 262 -207 344 -348c2 -4 3 -8 3 -12z\",\n\t\t\"M0 -56v83c0 16 13 29 29 29h59c154 0 257 136 342 267c13 20 44 0 31 -20c-93 -143 -204 -359 -373 -359h-88z\",\n\t\t\"M452 333c8 0 14 -7 14 -14c0 -3 0 -6 -2 -9c-101 -145 -219 -366 -394 -366h-70v89c0 13 10 23 23 23h47c162 0 276 136 370 271c3 4 7 6 12 6z\",\n\t].map(simplifyPath)),*/\n\n\tconditionSymbol(\"VERTICAL_LINE\", elem => elem.identity.type === \"rect\"\n\t\t&& (elem.sw === 0.19 || elem.sw === 0.6) && elem.identity.height >= 1),\n\n\tconditionSymbol(\"NOTE_STEM\", elem => elem.identity.type === \"rect\"\n\t\t&& elem.sw === 0.13 && elem.identity.height >= 1),\n\n\tconditionSymbol(\"TEMPO_NOTE_STEM\", elem => elem.identity.type === \"rect\"\n\t\t&& elem.sw === 0.12 && elem.identity.height >= 1),\n\n\tconditionSymbol(\"NOTETAIL JOINT BEAM\", elem => elem.identity.type === \"polygon\" && pointsSize(elem.identity.points) === 8),\n\n\tconditionSymbol(\"STAFF_LINE\", elem => elem.identity.type === \"line\" && elem.identity.height === 0 && elem.identity.width > 2 && elem.sw === 0.1 && !elem.identity[\"stroke-dasharray\"]),\n\n\tconditionSymbol(\"ADDITIONAL_LINE\", elem => elem.identity.type === \"rect\" && elem.sw2 === 0.2 && elem.identity.rw >= 1.25 && elem.identity.rw < 5),\n\n\tconditionSymbol(\"OCTAVE A _8\", elem => elem.identity.type === \"text\" && /8va/.test(elem.identity.text)),\n\tconditionSymbol(\"OCTAVE B _8\", elem => elem.identity.type === \"text\" && /8vb/.test(elem.identity.text)),\n\tconditionSymbol(\"OCTAVE _8\", elem => elem.identity.type === \"text\" && elem.identity.text === \"8\" && elem.identity[\"font-style\"] === \"italic\" && elem.identity[\"font-weight\"] === \"bold\"),\n\tconditionSymbol(\"OCTAVE A _15\", elem => elem.identity.type === \"text\" && /15ma/.test(elem.identity.text)),\n\tconditionSymbol(\"OCTAVE B _15\", elem => elem.identity.type === \"text\" && /15mb/.test(elem.identity.text)),\n\tconditionSymbol(\"OCTAVE _15\", elem => elem.identity.type === \"text\" && elem.identity.text === \"15\" && elem.identity[\"font-style\"] === \"italic\" && elem.identity[\"font-weight\"] === \"bold\"),\n\tidentitySymbol(\"OCTAVE CLOSE LINE\", {\n\t\ttype: \"line\",\n\t\twidth: 0,\n\t\theight: 1.25,\n\t\t\"stroke-width\": 0.0924,\n\t\t\"stroke-dasharray\": \"0.362351432995067,0.537648567004933\",\n\t}),\n\tconditionSymbol(\"OCTAVE CLOSE LINE\", elem => elem.identity.type === \"line\" && Math.abs(elem.identity.height) === 0.8\n\t\t&& elem.identity.width === 0 /*&& elem.identity[\"stroke-dasharray\"] === \"1.0,0.0\"*/ && elem.identity[\"stroke-width\"] < 0.2),\n\n\tpathFrameSymbol(\"DOT\", \"M c s - -s- - - -s- - z\"),\n\n\tconditionSymbol(\"LINE\", elem => elem.identity.type === \"line\"),\n\n\tconditionSymbol(\"NULL LARGE_RECT\", elem => elem.identity.type === \"rect\" && elem.identity.height > 1 && elem.identity.width >= 2 && elem.rx <= 0 && elem.ry <= 0),\n\tconditionSymbol(\"NULL GENERAL_RECT\", elem => elem.identity.type === \"rect\" && (elem.identity.height * elem.identity.width >= 0.3)),\n\tconditionSymbol(\"NULL ENGRAVER_SIG\", elem => elem.identity.type === \"text\" && /www\\.lilypond\\.org/.test(elem.identity.text)),\n\n\tconditionSymbol(\"TEXT\", elem => elem.identity.type === \"text\"),\n\n\tglyphSymbol(\"ALTER FLAT\", \"accidentals.flat\"),\n\tglyphSymbol(\"ALTER FLATFLAT\", \"accidentals.flatflat\"),\n\tglyphSymbol(\"ALTER SHARP\", \"accidentals.sharp\"),\n\tglyphSymbol(\"ALTER SHARPSHARP\", \"accidentals.doublesharp\"),\n\tglyphSymbol(\"CLEF TREBLE\", \"clefs.G\"),\n\tglyphSymbol(\"CLEF TREBLE\", \"clefs.G_change\"),\n\tglyphSymbol(\"CLEF BASS\", \"clefs.F\"),\n\tglyphSymbol(\"CLEF BASS\", \"clefs.F_change\"),\n\tglyphSymbol(\"NOTETAIL FLAG UP EIGHTH\", \"flags.u3\"),\n\tglyphSymbol(\"NOTETAIL FLAG UP SIXTEENTH\", \"flags.u4\"),\n\tglyphSymbol(\"NOTETAIL FLAG UP THIRTYSECOND\", \"flags.u5\"),\n\tglyphSymbol(\"NOTETAIL FLAG UP SIXTYFOURTH\", \"flags.u6\"),\n\tglyphSymbol(\"NOTETAIL FLAG UP HUNDREDTWENTYEIGHTH\", \"flags.u7\"),\n\tglyphSymbol(\"NOTETAIL FLAG UP TWOHUNDREDSFIFTYSIXTH\", \"flags.u8\"),\n\tglyphSymbol(\"NOTETAIL FLAG DOWN EIGHTH\", \"flags.d3\"),\n\tglyphSymbol(\"NOTETAIL FLAG DOWN SIXTEENTH\", \"flags.d4\"),\n\tglyphSymbol(\"NOTETAIL FLAG DOWN THIRTYSECOND\", \"flags.d5\"),\n\tglyphSymbol(\"NOTETAIL FLAG DOWN SIXTYFOURTH\", \"flags.d6\"),\n\tglyphSymbol(\"NOTETAIL FLAG DOWN HUNDREDTWENTYEIGHTH\", \"flags.d7\"),\n\tglyphSymbol(\"NOTETAIL FLAG DOWN TWOHUNDREDSFIFTYSIXTH\", \"flags.d8\"),\n\tglyphSymbol(\"NOTE REST\", \"rests.0\"),\n\tglyphSymbol(\"NOTE REST\", \"rests.1\"),\n\tglyphSymbol(\"NOTE REST\", \"rests.2\"),\n\tglyphSymbol(\"NOTE REST\", \"rests.3\"),\n\tglyphSymbol(\"NOTE REST\", \"rests.4\"),\n\tglyphSymbol(\"NOTE REST\", \"rests.5\"),\n\tglyphSymbol(\"NOTE REST\", \"rests.6\"),\n\tglyphSymbol(\"NOTE REST\", \"rests.7\"),\n\tglyphSymbol(\"NOTE REST\", \"rests.8\"),\n\tglyphSymbol(\"TIME_SIG C_BAR\", \"timesig.C22\"),\n\tglyphSymbol(\"SUSTAIN ON\", \"pedal.Ped\"),\n\tglyphSymbol(\"SUSTAIN OFF\", \"pedal.*\"),\n\tglyphSymbol(\"ATTACHED PORTATO UP\", \"scripts.dportato\"),\t// 'portato' glyph direction seems inversed in emmentaler v2017\n\tglyphSymbol(\"ATTACHED PORTATO DOWN\", \"scripts.uportato\"),\n\tglyphSymbol(\"ATTACHED DMARCATO DOWN\", \"scripts.dmarcato\"),\n\tglyphSymbol(\"ATTACHED DMARCATO UP\", \"scripts.umarcato\"),\n\tglyphSymbol(\"ATTACHED TENUTO\", \"scripts.tenuto\"),\n\tglyphSymbol(\"ATTACHED PRALL\", \"scripts.prall\"),\n\tglyphSymbol(\"ATTACHED MORDENT\", \"scripts.mordent\"),\n\tglyphSymbol(\"ATTACHED FERMATA UP\", \"scripts.ufermata\"),\n\tglyphSymbol(\"ATTACHED FERMATA DOWN\", \"scripts.dfermata\"),\n\tglyphSymbol(\"ATTACHED SHORTFERMATA UP\", \"scripts.ushortfermata\"),\n\tglyphSymbol(\"ATTACHED SHORTFERMATA DOWN\", \"scripts.dshortfermata\"),\n\tglyphSymbol(\"ATTACHED SFORZATO\", \"scripts.sforzato\"),\n\tglyphSymbol(\"BRACE BRACE_WING\", \"brackettips.up\"),\n\tglyphSymbol(\"BRACE BRACE_WING\", \"brackettips.down\"),\n];\n\n\npathSymbols.forEach(({symbol, ds}) => symbolRules.push(pathFramesSymbol(symbol, ds)));\n\n\nconst postSymbolProcess = (symbol: string, process: PostSymbolizeRule): PostSymbolizeRule => (elem, result) => {\n\tconst symbols = result.symbol && result.symbol.split(\" \");\n\tif (symbols && symbols.includes(symbol))\n\t\tprocess(elem, result);\n};\n\n\nconst postConditionSymbol = (symbol: string, condition: (elem: Element) => boolean, addSymbol: string): PostSymbolizeRule => (elem, result) => {\n\tconst symbols = result.symbol && result.symbol.split(\" \");\n\tif (symbols && symbols.includes(symbol) && condition(elem))\n\t\tresult.symbol = [...symbols, addSymbol].join(\" \");\n};\n\n\nconst postSymbolRules: PostSymbolizeRule[] = [\n\tpostConditionSymbol(\"NUMBER\", elem => elemScale(elem, 0.004), \"TIME_SIG\"),\n\tpostConditionSymbol(\"NUMBER\", elem => elemScale(elem, 0.0025), \"ALTERNATIVE\"),\n\n\tpostConditionSymbol(\"CLOSE\", elem => elem.identity.height > 0, \"UP\"),\n\tpostConditionSymbol(\"CLOSE\", elem => elem.identity.height < 0, \"DOWN\"),\n\n\tpostSymbolProcess(\"BEAM\", (elem, result) => {\n\t\tconst floats = elem.identity.points.split(\" \").map(Number);\n\t\tconst x1 = floats[4];\n\t\tconst x2 = floats[0];\n\t\tconst y1 = (floats[5] + floats[7]) / 2;\n\t\tconst y2 = (floats[1] + floats[3]) / 2;\n\t\tresult.start = {x: x1, y: y1};\n\t\tresult.target = {x: x2, y: y2};\n\t}),\n\n\tpostSymbolProcess(\"SLUR\", (elem, result) => {\n\t\tconst captures = elem.identity.d.match(/M[\\d.-]+ ([\\d.-]+).*L([\\d.-]+) ([\\d.-]+)/);\n\t\tif (captures) {\n\t\t\tconst [_, sy, ex, ey] = captures;\n\t\t\tresult.start = {x: 0, y: Number(sy)};\n\t\t\tresult.target = {x: Number(ex), y: Number(ey)};\n\n\t\t\t//console.log(\"slur:\", result);\n\t\t}\n\t}),\n\n\tpostSymbolProcess(\"LINE\", (elem, result) => {\n\t\tresult.start = {x: 0, y: 0};\n\t\tresult.target = {x: elem.identity.width, y: elem.identity.height};\n\t}),\n\n\t/*postSymbolProcess(\"NOTEHEAD\", (elem, result) => {\n\t\tresult.scale = elem.identity.scale.x / GLYPH_BASE_SCALE;\n\t}),*/\n\n\tpostSymbolProcess(\"TEXT\", (elem, result) => {\n\t\tresult.text = elem.identity.text;\n\t}),\n\n\tpostSymbolProcess(\"NOTE_STEM\", (elem, result) => {\n\t\tresult.width = elem.identity.width;\n\t\tresult.height = elem.identity.height;\n\t}),\n\n\tpostSymbolProcess(\"ADDITIONAL_LINE\", (elem, result) => {\n\t\tresult.width = elem.identity.width;\n\t\tresult.height = elem.identity.height;\n\n\t\t// correct ry by stroke width\n\t\tconst cy = (elem.y + elem.identity.height / 2);\n\t\tresult.ry = roundNumber(cy, POS_PRECISION);\n\t}),\n];\n\n\nconst glyphToSymbols: {[key: string]: string} = {\n\tzero: \"NUMBER 0\",\n\tone: \"NUMBER 1\",\n\ttwo: \"NUMBER 2\",\n\tthree: \"NUMBER 3\",\n\tfour: \"NUMBER 4\",\n\tfive: \"NUMBER 5\",\n\tsix: \"NUMBER 6\",\n\tseven: \"NUMBER 7\",\n\teight: \"NUMBER 8\",\n\tnine: \"NUMBER 9\",\n};\n\n\nconst postSymbolize = (elem: Element, result: SymbolizeResult): SymbolizeResult => {\n\tresult.glyph = result.glyph || elem.glyph;\n\n\tif (result.glyph && elem.identity.scale) {\n\t\tconst scale = elem.identity.scale.x / GLYPH_BASE_SCALE;\n\t\tif (scale !== 1)\n\t\t\tresult.scale = scale;\n\t}\n\n\tif (result.glyph) {\n\t\tconst glyphSymbols = glyphToSymbols[result.glyph];\n\t\tif (glyphSymbols)\n\t\t\tresult.symbol = [result.symbol, glyphSymbols].filter(Boolean).join(\" \");\n\t}\n\n\tfor (const rule of postSymbolRules) \n\t\trule(elem, result);\n\n\treturn result;\n};\n\n\nconst symbolize = (elem: Element): SymbolizeResult => {\n\telem.glyph = glyphHash[elem.hash];\n\n\tlet result = {};\n\tfor (const rule of symbolRules) {\n\t\tconst r = rule(elem);\n\t\tif (r) {\n\t\t\tresult = r;\n\t\t\tbreak;\n\t\t}\n\t}\n\n\treturn postSymbolize(elem, result);\n};\n\n\n\nexport {\n\tsimplifyPath,\n\tidentityHash,\n\tsymbolize,\n};\n"],"mappings":"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","ignoreList":[]}]}