galath 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/AGENTS.md +1 -0
  2. package/README.md +206 -0
  3. package/TODO.md +140 -0
  4. package/index.html +188 -0
  5. package/logo.jpg +0 -0
  6. package/logo.svg +96 -0
  7. package/package.json +32 -0
  8. package/packages/galath/package.json +28 -0
  9. package/packages/galath/src/behavior.js +193 -0
  10. package/packages/galath/src/binding.js +247 -0
  11. package/packages/galath/src/boot.js +52 -0
  12. package/packages/galath/src/command.js +117 -0
  13. package/packages/galath/src/component.js +505 -0
  14. package/packages/galath/src/controller.js +181 -0
  15. package/packages/galath/src/core.js +190 -0
  16. package/packages/galath/src/imports.js +132 -0
  17. package/packages/galath/src/index.js +38 -0
  18. package/packages/galath/src/instance-model.js +343 -0
  19. package/packages/galath/src/morph.js +237 -0
  20. package/packages/galath/src/rendering.js +556 -0
  21. package/packages/galath/src/signals.js +215 -0
  22. package/packages/galath/src/templates.js +24 -0
  23. package/packages/galath/src/xml-events.js +53 -0
  24. package/packages/galath-css/css/bootstrap-icons.min.css +5 -0
  25. package/packages/galath-css/css/bootstrap.min.css +6 -0
  26. package/packages/galath-css/css/fonts/bootstrap-icons.json +2077 -0
  27. package/packages/galath-css/css/fonts/bootstrap-icons.woff +0 -0
  28. package/packages/galath-css/css/fonts/bootstrap-icons.woff2 +0 -0
  29. package/packages/galath-css/js/bootstrap.bundle.min.js +7 -0
  30. package/packages/galath-css/package.json +13 -0
  31. package/playground/app.xml +214 -0
  32. package/playground/chapters/01-welcome.xml +94 -0
  33. package/playground/chapters/02-signals.xml +166 -0
  34. package/playground/chapters/03-instance.xml +130 -0
  35. package/playground/chapters/04-bindings.xml +156 -0
  36. package/playground/chapters/05-lists.xml +138 -0
  37. package/playground/chapters/06-commands.xml +144 -0
  38. package/playground/chapters/07-controller.xml +115 -0
  39. package/playground/chapters/08-events.xml +126 -0
  40. package/playground/chapters/09-behaviors.xml +210 -0
  41. package/playground/chapters/10-components.xml +152 -0
  42. package/playground/chapters/11-imports.xml +108 -0
  43. package/playground/chapters/12-expressions.xml +161 -0
  44. package/playground/chapters/13-paths.xml +197 -0
  45. package/playground/components/chapter-shell.xml +29 -0
  46. package/playground/components/highlighter.js +111 -0
  47. package/playground/components/run-snippet.js +120 -0
  48. package/public/basic/bootstrap-icons.min.css +5 -0
  49. package/public/basic/bootstrap.bundle.min.js +7 -0
  50. package/public/basic/bootstrap.min.css +6 -0
  51. package/public/basic/fonts/bootstrap-icons.json +2077 -0
  52. package/public/basic/fonts/bootstrap-icons.woff +0 -0
  53. package/public/basic/fonts/bootstrap-icons.woff2 +0 -0
  54. package/public/basic/theme.css +209 -0
  55. package/seed.html +321 -0
package/logo.svg ADDED
@@ -0,0 +1,96 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="226" height="297">
2
+ <path fill="#e5d6bc" d="M94 245c4.571 4.618 9.359 7.385 12.25 7.079L107 252l5.187 5.305 5.406-3.653L123 250a565 565 0 0 1 25.5-1.549c25.481-.982 39.5-5.313 51-15.753 4.267-3.874 6.794-7.216 8.75-11.572L211 215l1-1c1.401-8.913 1.626-17.913 1.404-25.75L213 174v-48c.58-2.911.355-7.861-.126-12.878L212 104V92l-.5-53.641-24.5.324c-13.475.178-26.863.548-29.75.821L152 40h-27c0-2.61-4.273-3.56-9-2-2.384.787-4.89.956-6.661.45-2.717-.776-2.739-.828-.501-1.211 1.893-.324 2.226-.848 1.749-2.748-.346-1.379-.024-2.911.78-3.715.753-.753 1.683-2.361 2.068-3.573C114.126 25.026 118 24.006 118 26c0 .55 1.318 1 2.93 1 2.278 0 3.002.501 3.25 2.25.234 1.648.989 2.25 2.82 2.25 1.375 0 2.485-.45 2.467-1s.282-1.229.669-1.509.852-1.18 1.034-2 1.148-2.1 2.147-2.844c1.579-1.176 1.881-1.11 2.317.5.276 1.019 2.064 2.641 3.974 3.603l3.473 1.749.209-2.997c.167-2.392-.194-3.004-1.79-3.03-1.854-.03-1.87-.108-.229-1.064 3.27-1.904.964-2.435-7.933-1.828-4.861.332-10.139.237-11.73-.21s-3.297-.562-3.792-.256-4.593.495-9.108.421-9.783-.136-11.708-.138c-3.09-.003-3.236-.111-1.25-.918C97.014 19.465 98 18.2 98 17.091c0-1.085.486-2.273 1.081-2.641.657-.406.961.061.775 1.191-.444 2.693.925 4.359 3.581 4.359 3.379 0 5.198-2.507 3.435-4.731-1.201-1.514-1.101-1.852.799-2.703 1.936-.867 2.234-.625 2.75 2.231L111 18c5.417.417 6.417.083 6.25-.75L117 16c-2.067-1.613-2.006-2.358-.926-3.983.974-1.466 1.989-1.931 3.202-1.465 1.483.57 1.566.95.5 2.315-1.069 1.368-1.01 1.613.366 1.512.988-.073 1.921-1.39 2.343-3.31C123.264 7.52 125.979 6 131.534 6c2.464 0 3.259.377 2.88 1.364-.38.99.804 1.54 4.318 2.006 2.663.353 5.575 1.427 6.471 2.386 1.532 1.64 1.634 1.574 1.713-1.123.074-2.521.392-2.807 2.642-2.377 1.912.365 2.421.133 2.017-.921-.298-.776.148-1.675.99-1.998 2.002-.768 4.362 2.402 4.403 5.913.053 4.576 2.9 3.428 3.686-1.485.504-3.152.954-3.924 1.761-3.022.597.667 2.003 1.013 3.124.769s3.31.216 4.864 1.022S173.863 10 174.639 10c.777 0 1.689 1.39 2.03 3.096.568 2.842.874 3.047 3.725 2.497C184.25 14.849 187 11.67 187 7.957c0-3.315 2.831-4.704 5.805-2.847 2.589 1.617 4.793.616 5.563-2.528L199 0h1c0 7.687-.196 7.988-2.25 7.474-2.901-.727-6.286 1.686-5.444 3.881.837 2.182 5.323 2.111 6.614-.105.566-.971 1.033-1.194 1.05-.5.037 1.527 3.655 1.667 4.576.176.365-.591-.263-2.06-1.395-3.265-1.24-1.319-1.748-2.695-1.278-3.456C203.011 2.363 208 6.53 208 9.323c0 1.813.544 2.158 3.25 2.063 3.002-.105 3.117-.227 1.5-1.61-.962-.823-1.75-2.452-1.75-3.619 0-1.942.579-2.134 6.833-2.263l6.834-.14v3.123c0 1.718.299 3.123.666 3.123H226v44c-4.798-.751-5.934-1.639-6.33-3.155-.325-1.242-.859-1.989-1.187-1.661s-.195 2.108.297 3.956c.67 2.517 1.374 3.285 2.807 3.06 1.052-.165 2.475-.278 3.163-.25L226 56v11c-4.75.432-5.5 1.045-5.5 2.5s.75 2.068 2.75 2.25L226 72v22c-2.542 0-3 1.048-3 3.433 0 2.474-.522 3.598-1.868 4.025-1.027.326-2.664 1.473-3.636 2.547-1.693 1.871-1.689 1.984.11 2.674 1.033.396 3.344.631 5.136.521L226 107v14c-4.064-3.425-4.216-3.414-5.632-1.5-1.031 1.394-1.267 3.061-.78 5.5.913 4.571.617 9.048-.704 10.64-1.775 2.139.06 3.589 3.731 2.95L226 138v15c-4.338 2.09-5.203 3.32-5.23 5-.039 2.39.028 2.419 1.528.65.863-1.018 2.048-1.58 2.635-1.25l1.067.6v7l-2.455 2.055 1.227 1.473L226 170v3c-3.97-2.047-4.609-1.981-5.346-.813-.673 1.067-.07 2.332 2.21 4.64L226 180v25c-3.784 0-5.172.47-5.527 1.044-.904 1.462 1.397 3.956 3.649 3.956H226v37l-3.124 6.5 1.562.75L226 255v42h-57c.01-1.938 1.397-3.288 3.089-4.251 5.16-2.937 3.23-4.269-5.916-4.082-8.354.171-9.788-.265-7.805-2.367.857-.908.693-1.212-.67-1.25-1.112-.031-2.188 1.057-2.81 2.841-.758 2.176-1.488 2.765-2.948 2.383-2.406-.629-2.677 2.456-.44 5.012L153 297H83c-2.288-.882-2.949-1.894-2.945-2.819.013-2.869-1.006-2.823-1.544.069L78 297H67c-5.425-.869-7-1.543-7-2.06s.62-.94 1.378-.94 1.888-.615 2.512-1.367c1.441-1.736-1.133-4.225-3.096-2.994-.712.446-2.041.688-2.955.538s-1.953.199-2.309.775-1.859 1.063-3.339 1.082-4.491.897-6.691 1.952-4.562 2.164-5.25 2.466L39 297H0V148c5.122 0 7.181-1.895 5.307-4.886-.556-.888-1.978-1.727-3.159-1.864L0 141v-2c.913-5.863 2.109-8.085 3.57-9.234 3.004-2.363 3.143-6.154.299-8.146-2.437-1.707-1.912-4.957.643-3.977 1.399.537 1.552-.626 1.288-9.767L5.5 97.5l-2.75-.25L0 97V0h62c3.141.888 5.278 1.786 6.776 2.567 2.423 1.264 2.489 1.422.596 1.427-2.619.008-4.656 2.3-4.185 4.708.505 2.582-3.667 4.639-6.201 3.057-2.615-1.633-3.684-.188-1.581 2.136 1.209 1.335 1.386 2.116.592 2.607-.623.385-.89 1.334-.593 2.108s.095 2.577-.449 4.007c-.789 2.076-1.269 2.367-2.383 1.443-1.014-.841-1.581-.855-2.079-.048-.412.667.448 1.426 2.16 1.902l2.847.792-3.75 1.066C48.507 29.263 43 27.698 43 24.716c0-1.935-.262-2.06-2.25-1.076-1.237.613-3.15 1.179-4.25 1.259-3.085.224-6.33 3.306-6.682 6.346-.314 2.713-.352 2.727-3.298 1.19-1.968-1.027-3.102-1.188-3.34-.475-.198.594-1.253-.054-2.343-1.44-2.935-3.731-4.933-3.203-6.226 1.644L13.5 36.327l6.872-.704c5.957-.61 6.794-.498 6.282.837-.325.847-.16 1.54.366 1.54 1.73 0 4.98-3.408 4.98-5.222 0-1.3.789-1.778 2.937-1.778 2.582 0 2.974.392 3.25 3.25l.313 3.25 9.681-.002c9.638-.002 9.685-.014 10.725-2.75C59.75 32.527 60.575 32 63.207 32c3.156 0 3.211.071 1.775 2.279-1.943 2.988-5.418 4.42-11.789 4.861-2.857.198-5.194.698-5.194 1.11L48 41l-37 1c-1.402 1.162-1.851 4.312-1.904 7.75L9 56v1l-1.5 94.5.75 3.75L9 159c1.119 51.034 1.296 52.661 6.65 61.208 2.207 3.524 8.645 8.846 16.384 13.543 6.064 3.681 18.889 7.106 30.716 8.204L74 243l10 1zm-68.152 13.406c-.633-.391-1.65-.03-2.259.803-.825 1.128-1.733 1.282-3.563.605-1.351-.5-3.799-.775-5.44-.611-2.902.289-2.986.447-3.035 5.725-.049 5.2.075 5.462 2.949 6.242 3.748 1.017 7.855-1.661 8.307-5.417.183-1.519 1.092-2.755 2.25-3.058 2.133-.558 2.613-3.163.791-4.289M128.245 13.23c-1.99-4-3.195-3.739-4.854 1.054-1.304 3.767-.496 5.527 1.859 4.05.688-.431 2.037-.654 3-.496 2.113.348 2.112-.353-.005-4.608m1.188 21.106c-.862-.331-2.077-.092-2.7.531L125.6 36l1.133 1.133c1.28 1.28 4.267.487 4.267-1.133 0-.585-.705-1.333-1.567-1.664M68.032 266.5c-.568-2.373-.872-2.65-1.454-1.323-.711 1.621-.073 6.323.859 6.323 1.016 0 1.274-2.165.595-5m12.721-1.347c-.548-.548-1.655-.745-2.459-.436-1.201.461-1.224.728-.128 1.498 1.043.733 1.062 1.047.084 1.444-2.2.893-1.376 3.341 1.125 3.341 1.847 0 2.375-.539 2.375-2.425 0-1.334-.449-2.874-.997-3.422m11.25.349c-.551-.341-1.003-.157-1.003.408s-.754.738-1.674.385c-1.29-.495-1.519-.24-1 1.113.37.965.674 1.944.674 2.174s.434.418.965.418c1.515 0 3.221-3.767 2.038-4.498m9.474-.692c-.288-.288-1.638-.31-3-.05-1.81.346-2.477 1.115-2.477 2.857 0 1.311.45 2.383 1 2.383s1-.937 1-2.083c0-1.233.51-1.906 1.25-1.647.688.24 1.118 1.179.956 2.084s.176 1.646.75 1.646c1.058 0 1.483-4.228.521-5.19M111 267c0-2.299-3.614-3.223-5.518-1.411L104 267c.835 3.984 1.638 4.5 3.972 4.5 1.666 0 3.028-.337 3.028-.75V270c2.383-.963 3.895-.5 4.897.407 1.194 1.081 3.164 1.548 5.713 1.356 3.542-.267 3.917-.571 4.193-3.389.282-2.877.038-3.138-3.454-3.705-2.609-.423-4.254-.16-5.382.861-.894.809-2.602 1.47-3.796 1.47zm38.279 2.613c-.415-.415-.759-1.51-.766-2.434-.008-1.008-.812-1.679-2.013-1.679-2.769 0-2.901 5.799-.144 6.33 2.107.406 4.062-1.078 2.923-2.217m-112.366-5.167c-.598-.37-1.555-.204-2.128.369-.722.722-1.608.687-2.888-.112-2.243-1.401-3.721-.21-4.118 3.318-.253 2.254.107 2.507 3.974 2.787 3.799.275 4.359.028 5.25-2.315 1.234-3.247 1.235-3.228-.09-4.047M56.975 286c-.564 0-1.443-1.1-1.955-2.446-.864-2.272-1.364-2.427-7.035-2.178-5.054.222-6.273-.046-7.08-1.554-1.831-3.42-3.015-1.927-2.707 3.412l.302 5.234 9.75.343c8.357.294 9.75.118 9.75-1.234 0-.867-.461-1.577-1.025-1.577m-9.725-21.647-6.75.147-.173 5.307c-.153 4.71.096 5.429 2.22 6.397 4.255 1.939 6.893-1.926 4.228-6.193l-1.225-1.961 1.225-1.225c.967-.967 1.225-.899 1.225.32 0 2.159 3.612 5.212 5.088 4.3.891-.551.734-1.102-.59-2.07-1.645-1.203-1.658-1.376-.151-1.954.909-.349 1.653-1.216 1.653-1.925 0-.94-1.83-1.25-6.75-1.143m92.5-253.133c-.688-.564-2.6-1.182-4.25-1.373-2.869-.332-2.988-.194-2.735 3.153.39 5.151.908 6 3.668 6 3.767 0 6.108-5.491 3.317-7.78m.583 254.447c-1.386-1.386-2.337-.572-2.433 2.083l-.099 2.75-.696-2.5c-.57-2.05-1.317-2.5-4.15-2.5-3.172 0-3.455.246-3.455 3 0 2.966.065 3.002 5.75 3.169 5.648.166 5.75.119 5.75-2.584 0-1.514-.3-3.051-.667-3.418m32 0c-1.214-1.214-4.068-.693-5.461.998-1.222 1.483-1.427 1.237-1.872-2.25-.331-2.591-1.007-3.915-2-3.915-.825 0-1.508.683-1.518 1.518s-1.023 2.523-2.25 3.75c-4.512 4.512-2.183 7.192 6.167 7.092 5.092-.061 5.723-.287 5.301-1.9-.265-1.013.142-2.069.911-2.364 1.49-.572 1.804-1.847.722-2.929M215.055 264c-.58 0-1.055 1.773-1.055 3.941 0 4.296-1.459 6.236-2.293 3.048-.643-2.457-2.402-2.596-3.018-.239-.34 1.303-.487 1.169-.573-.525-.185-3.637-9.478-6.051-10.73-2.788-.303.79-1.144 1.21-1.868.932s-1.613-.024-1.976.563c-1.019 1.649-2.256 1.268-2.814-.866-.332-1.271-1.741-2.166-4.11-2.61-5.922-1.111-6.76-.29-6.418 6.282.279 5.361.48 5.783 2.886 6.063 2.929.34 5.43-2.013 4.557-4.288-.319-.832-1.555-1.513-2.746-1.513-2.096 0-2.084-.065.376-2 3.186-2.507 3.727-2.503 3.727.025 0 2.828 4.973 4.733 6.589 2.523 1.022-1.398 1.285-1.404 2.402-.059 1.419 1.71 4.582 2.01 5.502.522.374-.605 1.573-.359 3.091.636 1.895 1.242 3.237 1.408 5.697.706 2.973-.848 3.242-1.278 3.524-5.635.183-2.834-.116-4.718-.75-4.718m-140.56 21c-1.363 0-2.872-.836-3.447-1.91-.676-1.263-1.704-1.731-3.035-1.383-1.639.429-2.013.04-2.013-2.09 0-2.577-.958-3.326-2.404-1.88-.405.405-1.493.743-2.417.75-1.168.009-1.717.926-1.804 3.013-.176 4.216 1.369 6.958 3.106 5.516.98-.813 1.525-.815 2.025-.006.402.65 1.864.848 3.54.48 2.162-.475 3.286-.125 4.627 1.441 2.469 2.884 3.791 2.579 4.037-.933.179-2.564-.141-2.998-2.215-2.998m43.551-253.739c-1.146-.716-2.191-.836-2.528-.291-.502.813 2.363 3.03 3.916 3.03 1.255 0 .448-1.593-1.388-2.739m54.067 219.309c-.488-.301-1.409.082-2.048.852-1.294 1.559.193 3.155 1.935 2.078 1.238-.765 1.293-2.201.113-2.93m2.453 7.817c-1.064-.408-2.116-.123-2.641.717-1.081 1.728 1.771 2.6 3.348 1.023.748-.748.54-1.262-.707-1.74m10.744 1.611c-1.546-.549-3.651-1.486-4.678-2.081-2.025-1.173-4.72.292-2.763 1.502.574.355.79 1.306.48 2.113-.444 1.158.397 1.468 3.985 1.468 5.372 0 6.949-1.59 2.976-3.002M213.229 16.25c-.413-2.526-.936-2.615-7.09-1.196-3.065.707-4.754.68-5.681-.089-.998-.828-1.578-.609-2.385.898-.586 1.096-.812 2.654-.501 3.463s.083 1.769-.504 2.132c-.611.378-1.068-.135-1.068-1.199 0-2.357-1.875-4.259-4.2-4.259-1.184 0-1.8.747-1.8 2.184 0 1.201-.956 4.16-2.125 6.575-1.304 2.693-1.768 4.748-1.2 5.316s3.968.541 8.795-.071c4.328-.549 8.057-.81 8.286-.581s2.503-.809 5.053-2.307c4.772-2.804 5.461-4.498 4.42-10.866m.955 226.032c-3.199-2.136-5.637-4.424-5.417-5.083s-.088-1.199-.684-1.199-1.083-.825-1.083-1.833c0-2.976-1.16-3.284-3.4-.901-1.155 1.229-3.849 3.662-5.986 5.408-4.846 3.958-4.386 6.053 1.328 6.053 4.609 0 6.208-1.413 3.687-3.256-1.536-1.123-1.505-1.27.361-1.758q2.036-.532 3.058 1.377c.649 1.213 2.092 1.91 3.956 1.91 2.124 0 2.783.392 2.388 1.42-.358.934.252 1.533 1.782 1.75 1.28.181 2.326.855 2.326 1.497 0 2.028 1.571 2.834 2.539 1.304 1.473-2.329 1.283-2.59-4.855-6.689m-.271 7.164c-.598-.37-1.588-.171-2.2.441L210.6 251l1.113 1.113c1.154 1.154 3.287.432 3.287-1.113 0-.485-.489-1.184-1.087-1.554m2-17c-.598-.37-1.588-.171-2.2.441L212.6 234l1.113 1.113c1.154 1.154 3.287.432 3.287-1.113 0-.485-.489-1.184-1.087-1.554M90.829 275c-.644 0-1.957-.711-2.917-1.58-1.373-1.243-2.19-1.342-3.829-.465-2.635 1.41-2.672 3.078-.083 3.755 1.1.288 2 .882 2 1.32s1.35.287 3-.336c2.99-1.129 4.053-2.694 1.829-2.694m-3.329 4c-.275 0-.5.225-.5.5s.225.5.5.5.5-.225.5-.5-.225-.5-.5-.5m40.187 8.433c-2.395-.919-6.663.341-7.367 2.174-.327.851.146 2.288 1.051 3.193 1.527 1.527 1.875 1.416 4.827-1.536 2.727-2.727 2.939-3.275 1.489-3.831m15.717 1.002c-1.428.358-3.168.176-3.867-.404-.92-.764-1.643-.608-2.617.565-1.147 1.382-1.065 1.825.559 3.012 2.438 1.783 3.443 1.757 4.159-.108.317-.825 1.428-1.5 2.469-1.5s1.893-.498 1.893-1.108c0-.694-.971-.865-2.596-.457m31.389-13.063c-1.139-.704-2.793.519-2.793 2.065 0 2.061-3.038 4.07-5.639 3.729-1.949-.255-2.361.139-2.361 2.262 0 1.414.116 2.572.257 2.572s1.793-.441 3.672-.98c2.386-.684 3.823-.641 4.767.143.744.617 1.615.859 1.937.537.911-.911 1.049-9.779.16-10.328"/>
3
+ <path fill="#da3518" d="M71 110h3l1.249-1.049c.894-.75 1.318-6.084 1.494-18.75.135-9.736.522-22.843.861-29.127l.615-11.426 2.806.926c1.583.523 2.957 1.793 3.152 2.915.585 3.361 3.399 2.895 5.66-.937l2.092-3.546 5.285.877c3.924.651 4.932 1.136 3.909 1.884-.758.554-3.233.823-5.5.596-3.574-.358-3.924-.227-2.623.99.825.772 3.239 2.232 5.364 3.244 3.786 1.804 3.896 1.801 5.5-.128 1.342-1.615 2.894-1.969 8.636-1.969 6.625 0 6.984.117 6.698 2.187-.375 2.712 3.267 5.152 4.171 2.795.313-.815 1.188-1.482 1.945-1.482s2.171-.879 3.143-1.953c1.707-1.886 1.677-1.976-.914-2.626-1.952-.49-2.736-1.369-2.879-3.229-.147-1.913-.941-2.756-3.156-3.348-1.724-.461-3.367-.385-3.934.182-.536.536-2.179.974-3.652.974s-3.237.675-3.922 1.5c-1.587 1.912-4 1.943-4 .05 0-.798-.787-1.925-1.75-2.505-2.038-1.229-3.158-1.125 32.75-3.045h6l1 1v37l1 26 2 1 3.75.519c2.062.286 12.75.755 23.75 1.043s22.7.842 26 1.231l6 .707.5 11.5v48l-1.245 1.5c-.685.825-1.861 1.5-2.615 1.5-1.074 0-1.001-.564.338-2.607 2.053-3.133.643-5.53-2.253-3.831-1.166.684-2.454.681-3.975-.012-1.686-.767-2.25-.707-2.25.238 0 .694 1.222 1.726 2.716 2.294 2.014.766 2.369 1.248 1.372 1.864-.739.457-1.062 1.331-.088 3.054h-30l-.001-.75c0-.413 2.23-.904 4.956-1.093s5.458-.95 6.073-1.691 1.715-1.118 2.444-.838c2.024.777 2.688-1.182 1.376-4.062-1.583-3.475-6.409-5.872-9.015-4.477-1.073.574-3.162.81-4.642.524s-3.591.021-4.691.683c-1.889 1.137-1.883 1.066.126-1.296 1.17-1.375 2.439-4.248 2.821-6.385.637-3.566.527-3.841-1.34-3.353-2.664.697-4.488-1.606-3.715-4.688.643-2.562-.763-4.402-1.926-2.52-.412.667-2.133.84-4.459.447-3.339-.564-4.216-.247-7.398 2.673-2.472 2.269-3.609 4.181-3.609 6.069 0 1.516.397 2.757.883 2.757.996 0 2.339 3.483 2.506 6.5.075 1.357.754 1.947 2.111 1.836 1.682-.138 1.792.064.691 1.271-1.127 1.236-1.684 1.241-4 .036-1.48-.77-3.871-1.95-5.313-2.622s-2.567-1.953-2.5-2.846c.074-.99-.658-1.634-1.874-1.65-1.289-.016-1.997-.703-2-1.939-.002-1.053-.63-2.123-1.395-2.38-1.042-.349-1.233.164-.76 2.049.413 1.647.117 2.943-.859 3.753-.82.68-1.545 1.969-1.613 2.864-.092 1.214-.403 1.063-1.226-.596-.913-1.841-.762-2.476.873-3.683 3.091-2.281.85-3.343-8.274-3.92-8.28-.524-10.687.45-5.75 2.327 2.051.78 2.5 1.621 2.5 4.688 0 3.121.33 3.713 2 3.587 2.352-.177 2.631-2.506.511-4.266-1.787-1.483-1.078-3.009 1.398-3.009 1.602 0 1.741.777 1.318 7.365-.53 8.253.306 9.643 4.245 7.062 2.221-1.455 2.528-1.47 2.528-.121 0 .894-1.257 1.811-3.008 2.196-1.655.363-3.527 1.63-4.161 2.815-1.124 2.101-.983 2.159 5.758 2.369 6.216.194 6.77.057 5.51-1.355-1.614-1.809-.493-6.371 1.748-7.115 1.068-.355 1.116-.017.237 1.626-.926 1.73-.763 2.26.981 3.193 1.15.615 1.862 1.713 1.583 2.439-.306.797.457 1.559 4.352 2.526l-.481 12.75c-.265 7.012-.715 18.262-1.519 37.25l-1.492-.604c-.919-.372-1.745.107-2.152 1.25-.363 1.02-1.311 2.613-2.106 3.541s-1.15 2.165-.789 2.75c.383.619-.203 1.063-3.461 1.063l-7.75 2.089c-4.262 1.149-9.19 3.181-10.951 4.514l-3.202 2.424-4.298-2.998c-4.102-2.861-10.417-4.812-23.049-7.12L78 238.858l-.015-5.179c-.008-2.849-.452-5.854-.985-6.679-.784-1.213-.972-1.069-1 3h-.591c-.325 0-.55-4.275-.409-19l.777 4.25c.67 3.667.88 2.742 1.526-6.75.473-6.956.371-12.011-1.303-16.5l-2-14h.724c.398 0 .902 1.873 1.12 4.161.518 5.435 1.943 2.903 1.778-3.161l-.122-4.5-31.201-.5c-19.989-.32-31.581-.881-32.26-1.56-.689-.689-1.138-11.639-1.284-31.296-.191-25.816-.006-30.374 1.261-31.175.816-.516 10.596-.945 41.984-.969zm-54.97 5.25c-.498 1.238-.708 2.85-.467 3.582s.437 1.97.437 2.75c0 .944 1.129 1.418 3.378 1.418 1.858 0 3.842.562 4.411 1.25s1.256 5.387 1.528 10.443.748 9.603 1.057 10.103-.084 1.763-.874 2.807c-1.851 2.446-1.859 3.397-.026 3.397 1.816 0 4.714-5.344 3.962-7.305-.34-.885.238-1.638 1.512-1.971 1.385-.362 1.86-1.06 1.449-2.131-.796-2.073 1.237-1.953 5.103.304 4.083 2.383 4.651 6.598 1.012 7.511-1.429.359-2.857 1.326-3.173 2.151-.49 1.276-.776 1.234-1.925-.28-1.22-1.608-1.353-1.457-1.382 1.561-.031 3.294-.091 3.337-4.282 3.116-8.381-.442-10.638-.034-11.8 2.137-1.521 2.842-.61 5.767 3.034 9.741 2.748 2.997 3.442 3.269 6.865 2.691 2.82-.477 4.144-.239 5.102.916C32.383 171.167 40 171.638 40 170c0-.55-.505-1-1.122-1-.776 0-.738-.464.122-1.5q2.725-3.285 7.873 1.047c2.698 2.27 3.766 2.515 9.827 2.25 6.508-.284 6.8-.405 6.8-2.797 0-2.423-.182-2.49-5.958-2.174-4.74.259-6.216-.028-7.219-1.399-1.02-1.396-1.544-1.488-2.748-.489-.818.679-2.018.906-2.667.505-.815-.503-.456-1.275 1.157-2.492 1.959-1.478 2.129-2.013 1.053-3.309-.716-.862-.995-2.452-.633-3.594.992-3.124-3.258-2.775-4.452.366-1.086 2.857-4.281 4.122-6.763 2.677-1.645-.958-1.628-1.041.23-1.176 1.1-.08 2.675-.206 3.5-.28 1.136-.102 1.418-1.167 1.164-4.385l-.336-4.25h3.503c1.926 0 3.68.531 3.896 1.18.617 1.85 3.966.061 3.585-1.915-.184-.958-1.229-1.913-2.323-2.122s-3.063-1.452-4.375-2.762S41.355 140 40.899 140s-1.345-.966-1.977-2.147c-.928-1.734-.849-2.314.41-3.019.858-.48 2.513-2.212 3.679-3.85 1.884-2.646 1.983-3.357.887-6.389-1.345-3.72-3.519-4.595-11.429-4.595-3.719 0-4.216-.251-3.783-1.906.71-2.715 7.283-3.901 8.598-1.551.777 1.388 1.108 1.448 1.818.327.477-.753.875-2.114.883-3.024.023-2.478-9.459-2.428-11.218.059-.697.985-2.9 2.094-4.895 2.465-3.106.578-3.703.384-4.156-1.348-.702-2.684-2.561-2.569-3.686.228m2.012 18.288c-1.933-1.75-1.956-1.644-1.75 8.344.201 9.763.287 10.116 2.458 10.117 2.602.001 3.001-1.497.64-2.403-1.384-.531-1.237-1.108 1.055-4.113 1.466-1.922 2.408-3.911 2.094-4.42s-.107-1.212.461-1.563.732-1.126.364-1.721c-.432-.699-1.147-.428-2.017.761-1.26 1.723-1.347 1.678-1.347-.694 0-1.395-.881-3.333-1.958-4.308m.594-8.229c-1.998.767-2.141 3.3-.247 4.391.764.44 1.557 1.7 1.763 2.8s1.045 2 1.862 2c1.06 0 1.486-1.115 1.486-3.891 0-4.196-2.016-6.393-4.864-5.3M84 109.5c-1.1.995-2 2.175-2 2.62 0 1.491 4.059 3.003 7.219 2.69 3.559-.353 4.861-2.483 2.114-3.461-1.008-.359-2.62-1.329-3.583-2.156-1.567-1.346-1.96-1.313-3.75.307m1.675 82.158c-.362.362-.204 1.205.351 1.873s.727 1.947.384 2.842c-.834 2.174-.276 2.07 5.134-.95 2.538-1.417 6.549-2.706 8.911-2.864s4.827-.615 5.477-1.017c2.084-1.288 6.068.338 6.068 2.477 0 1.42.674 1.981 2.383 1.981 2.442 0 4.003-2.667 3.659-6.25-.201-2.09 1.688-2.278 3.879-.387.868.75 3.042 1.638 4.829 1.975 3.152.594 3.25.509 3.25-2.804 0-3.579-1.415-5.503-2.317-3.151-.381.994-1.857 1.245-5.355.914-2.656-.252-5.503-.429-6.328-.395-7.446.31-12.774.871-14.149 1.491-.907.409-1.9.338-2.206-.158-.923-1.494-6.698-.122-7.954 1.889-.645 1.032-2.114 1.876-3.265 1.876s-2.389.296-2.751.658m15.495-82.749c-1.194.639-2.17 1.517-2.17 1.952 0 1.855 4.899 5.193 7.594 5.174 13.309-.096 18.39-1.718 13.031-4.16-2.049-.934-2.955-.945-3.852-.048-.645.645-2.846 1.173-4.89 1.173-2.86 0-4.157-.605-5.629-2.626-1.658-2.275-2.204-2.471-4.084-1.465m5.512 62.743c-.775.775 3.891 3.348 6.072 3.348.839 0 2.059.731 2.712 1.623 1.384 1.893 5.534 1.055 5.534-1.117 0-2.923-12.015-6.157-14.318-3.854m2.701-50.117c-2.677 3.347-2.618 4.832.211 5.254 1.645.245 1.954-.354 2.049-3.965l.112-4.254zm-.376 23.961c-1.273.787-1.327 4.504-.066 4.504.518 0 1.233-.472 1.589-1.048.907-1.468-.302-4.211-1.523-3.456m2.524 6.504c-1.724 0-1.969 1.759-.557 3.992.722 1.142 1.218 1.216 2.117.317 1.486-1.486.464-4.309-1.56-4.309m12.4-26.457c-1.312.811-1.157 3.831.269 5.257 1.99 1.99 2.877 1.361 2.181-1.55-.881-3.686-1.346-4.389-2.45-3.707m.763 27.096c-1.043 1.043.278 2.361 2.365 2.361 1.068 0 1.941-.675 1.941-1.5 0-1.483-3.07-2.097-4.306-.861m2.968-58.389c-.905 2.244-.691 2.571 1.338 2.04 1.1-.288 2-1.146 2-1.907 0-1.724-2.653-1.83-3.338-.133M131.2 225.8c-.736-.736-1.2-.796-1.2-.155 0 1.838 3.721 4.615 4.498 3.358.383-.62 1.81-1.55 3.172-2.068 3.262-1.24 2.769-4.435-.684-4.435-1.817 0-2.572.606-2.806 2.25-.358 2.522-1.208 2.822-2.98 1.05m4.496-135.477-.56 2.868c-.326 1.653 1.943 1.761 2.546.122.367-.997 1.264-2.173 1.993-2.613 1.583-.955 1.741-3.325.281-4.227-1.43-.884-3.746 1.209-4.26 3.85m2.855 107.277c-1.49 2.038-2.019 10.807-.599 9.929 2.497-1.543 4.029-13.804 1.89-15.126-.79-.488-.981-.045-.605 1.394.303 1.16-.005 2.872-.686 3.803m45.901-78.22c-2.328.893-1.675 2.37 1.048 2.37 1.375 0 2.5-.367 2.5-.816 0-1.3-1.966-2.161-3.548-1.554m4.556 40.115c-2.019 1.248-.589 3.993 2.251 4.321 1.508.174 2.741-.094 2.741-.595 0-1.59-3.827-4.446-4.992-3.726M196.891 132c-1.055 3.813-1.018 4.015.859 4.719 2.951 1.107 4.176 3.428 2.893 5.482-.856 1.371-.792 2.331.27 4.031.767 1.228 1.321 4.153 1.232 6.5s.241 4.268.732 4.268c1.112 0 2.509-10.568 1.592-12.051-.369-.597-.744-4.622-.832-8.945s-.492-8.193-.898-8.599-.739-.244-.739.359-.994 1.24-2.209 1.416c-1.356.196-2.475 1.285-2.9 2.82"/>
4
+ <path fill="#dacbb1" d="M74 50v41l-1 16c-42.016.012-55.242.274-56.498.589s-2.533.169-2.838-.324-.579-9.53-.609-20.081L13 68l-1-11v-3l.217-7.721 30.891-.639L74 45zM16.772 67.641c-1.696 1.048.632 2.172 5.22 2.519 2.473.187 4.496-.097 4.5-.632.009-1.133-8.322-2.751-9.72-1.887m.556 4.787c-.914.351-1.343 1.59-1.145 3.308.388 3.36 3.586 4.3 5.54 1.628 1.166-1.594 1.485-1.645 2.275-.367 1.21 1.957 3.334-.021 2.837-2.641-.257-1.353-1.394-1.942-4.198-2.173-2.116-.174-4.505-.064-5.309.245M53.25 87.554c-1.519.466-1.553 1.012-.215 3.512 1.196 2.235 7.956 2.814 7.979.684.008-.688.279-2.242.604-3.454.551-2.053.328-2.167-3.263-1.665-2.12.297-4.417.712-5.105.923M148 44c45.217-1.542 58.547-1.786 58.796-1.537 1.037 1.037.328 64.994-.723 65.263L205 108h-11c-33.451-.643-43.431-1.097-43.757-1.423-1.158-1.158-2.212-24.9-1.483-33.422.407-4.76.403-13.267-.01-18.905zm8.031 26.25c-.497 1.238-.933 2.561-.968 2.941-.114 1.239 1.782 1.869 2.437.809.351-.568 1.069-.766 1.595-.441s1.439-.792 2.028-2.483 1.447-2.841 1.905-2.558 1.097.088 1.419-.433c.889-1.438-1.463-2.469-2.734-1.198-.612.612-1.937 1.113-2.945 1.113s-2.24 1.012-2.737 2.25m1.46 16.21c-1.462-1.865-1.512-1.816-1.038 1.04.524 3.154 1.069 3.686 2.008 1.96.311-.572-.125-1.922-.97-3m4.259 11.195c-1.676 1.036-.195 3.85 2.204 4.19 2.18.309 5.046-1.897 5.046-3.884 0-.797-6.043-1.052-7.25-.306m4.922-12.721c-3.876 1.474-3.44 3.387.578 2.54 1.788-.377 3.663-1.073 4.167-1.547 1.5-1.409-1.822-2.104-4.745-.993m25.132-37.313c-.503.311-.773 1.311-.601 2.222.391 2.067 6.801 2.982 6.789.97-.009-1.53-4.843-4.023-6.188-3.192M76 40h-2l-26 1-.001-.75c0-.412 2.337-.912 5.194-1.11 6.371-.441 9.846-1.873 11.789-4.861C66.418 32.071 66.363 32 63.207 32c-2.632 0-3.457.527-4.301 2.748-1.04 2.736-1.087 2.748-10.725 2.75L38.5 37.5l-.313-3.25c-.276-2.858-.668-3.25-3.25-3.25-2.148 0-2.937.478-2.937 1.778C32 34.592 28.75 38 27.02 38c-.526 0-.691-.693-.366-1.54.512-1.335-.325-1.447-6.282-.837l-6.872.704 1.111-4.163c1.293-4.847 3.291-5.375 6.226-1.644 1.09 1.386 2.145 2.034 2.343 1.44.238-.713 1.372-.552 3.34.475 2.946 1.537 2.984 1.523 3.298-1.19.352-3.04 3.597-6.122 6.682-6.346 1.1-.08 3.013-.646 4.25-1.259 1.988-.984 2.25-.859 2.25 1.076 0 2.982 5.507 4.547 10.75 3.056l3.75-1.066-2.847-.792c-1.712-.476-2.572-1.235-2.16-1.902.498-.807 1.065-.793 2.079.048 1.114.924 1.594.633 2.383-1.443.544-1.43.746-3.233.449-4.007s-.03-1.723.593-2.108c.794-.491.617-1.272-.592-2.607-2.103-2.324-1.034-3.769 1.581-2.136 2.534 1.582 6.706-.475 6.201-3.057-.471-2.408 1.566-4.7 4.185-4.708 1.893-.005 1.827-.163-.596-1.427C67.278 1.786 65.141.888 62 0h137l-.632 2.582c-.77 3.144-2.974 4.145-5.563 2.528C189.831 3.253 187 4.642 187 7.957c0 3.713-2.75 6.892-6.606 7.636-2.851.55-3.157.345-3.725-2.497-.341-1.706-1.253-3.096-2.03-3.096s-2.682-.66-4.236-1.466-3.743-1.266-4.864-1.022-2.527-.102-3.124-.769c-.807-.902-1.257-.13-1.761 3.022-.786 4.913-3.633 6.061-3.686 1.485-.041-3.511-2.401-6.681-4.403-5.913-.842.323-1.288 1.222-.99 1.998.404 1.054-.105 1.286-2.017.921-2.25-.43-2.568-.144-2.642 2.377-.079 2.697-.181 2.763-1.713 1.123-.896-.959-3.808-2.033-6.471-2.386-3.514-.466-4.698-1.016-4.318-2.006.379-.987-.416-1.364-2.88-1.364-5.555 0-8.27 1.52-9.049 5.069-.422 1.92-1.355 3.237-2.343 3.31-1.376.101-1.435-.144-.366-1.512 1.066-1.365.983-1.745-.5-2.315-1.213-.466-2.228-.001-3.202 1.465-1.08 1.625-1.141 2.37.926 3.983-2.222 0-3.111-1.238-3.409-2.75-.662-3.359-1.41-2.822-2.084 1.5L111 18l-.579-3.203c-.516-2.856-.814-3.098-2.75-2.231-1.9.851-2 1.189-.799 2.703 1.763 2.224-.056 4.731-3.435 4.731-2.656 0-4.025-1.666-3.581-4.359.186-1.13-.118-1.597-.775-1.191-.595.368-1.081 1.556-1.081 2.641 0 1.109-.986 2.374-2.25 2.888-1.986.807-1.84.915 1.25.918 1.925.002 7.193.064 11.708.138s8.613-.115 9.108-.421 2.201-.191 3.792.256 6.869.542 11.73.21c8.897-.607 11.203-.076 7.933 1.828-1.641.956-1.625 1.034.229 1.064 1.596.026 1.957.638 1.79 3.03l-.209 2.997-3.473-1.749c-1.91-.962-3.698-2.584-3.974-3.603-.436-1.61-.738-1.676-2.317-.5-.999.744-1.965 2.024-2.147 2.844s-.647 1.72-1.034 2-.687.959-.669 1.509-1.092 1-2.467 1c-1.831 0-2.586-.602-2.82-2.25-.248-1.749-.972-2.25-3.25-2.25-1.612 0-2.93-.45-2.93-1 0-1.994-3.874-.974-4.565 1.203-.385 1.212-1.315 2.82-2.068 3.573-.804.804-1.126 2.336-.78 3.715.477 1.9.144 2.424-1.749 2.748-2.238.383-2.216.435.501 1.211 1.771.506 4.277.337 6.661-.45 4.727-1.56 9-.61 9 2-13.562.004-19.3-.416-21.5-.932s-7.421-1.47-11.601-2.119c-7.071-1.099-7.89-1.033-11.75.935zm9.055-26.466c-.582-.36-1.497.498-2.032 1.906S81.679 18 81.225 18C79.669 18 78 15.599 78 13.359c0-2.527 1.551-3.859 4.495-3.859 2.917 0 2.45-1.949-.55-2.298C78.257 6.772 74 10.44 74 14.047c0 3.716 4.27 6.24 8.607 5.087 2.974-.791 4.518-4.321 2.448-5.6M105.066 16c-.513 0-1.177-1.238-1.475-2.75-.729-3.698-1.547-3.465-2.199.627-.608 3.814.479 5.494 2.941 4.549 1.773-.68 2.3-2.426.733-2.426m-9.691-1.254c-1.696-3.238-2.919-3.467-4.34-.812C89.174 17.411 89.772 19 92.941 19c3.741 0 4.222-.841 2.434-4.254M149 179c57.572 2.1 59 2.245 59 4.076V204c-2.449 10.028-4.635 16.125-6.587 18.373L200 224c-9.163 7.796-14.243 10.844-18.25 12.392L175 239h-5c-2.687 1.454-16.372 2.908-20 2.125-2.45-.529-3.457-1.272-3.355-2.478.08-.947.439-14.384.799-29.86s.857-28.508 1.105-28.962z"/>
5
+ <path fill="#e5d6bc" d="M75 211c-.141 14.725.084 19 .409 19H76l-.5 8.5-10.376-.216c-11.852-.247-22.418-3.091-32.624-8.783-14.223-7.932-19.992-20.549-19.304-42.213l.304-9.578 9.25.145L32 178h42l2 14zm-39.378-31c-.758 0-1.937.675-2.622 1.5-1.053 1.268-.84 1.5 1.378 1.5 1.664 0 2.622-.548 2.622-1.5 0-.825-.62-1.5-1.378-1.5"/>
6
+ <path fill="#362716" d="M74 110h-3l-15-1c-31.388.024-41.168.453-41.984.969-1.267.801-1.452 5.359-1.261 31.175.146 19.657.595 30.607 1.284 31.296.679.679 12.271 1.24 32.26 1.56l31.201.5.122 4.5c.165 6.064-1.26 8.596-1.778 3.161-.218-2.288-.722-4.161-1.12-4.161H32l-9.25-.145-9.25-.145-.304 9.578c-.688 21.664 5.081 34.281 19.304 42.213 10.206 5.692 20.772 8.536 32.624 8.783l10.376.216.5-8.5c.028-4.069.216-4.213 1-3 .533.825.977 3.83.985 6.679l.015 5.179 5.75 1.051c12.632 2.308 18.947 4.259 23.049 7.12l4.298 2.998 3.202-2.424c1.761-1.333 6.689-3.365 10.951-4.514L133 241l4.75.25 4.75.25.5-8.5c.804-18.988 1.254-30.238 1.519-37.25L145 183v-4h4l-.451.825c-.248.454-.745 13.486-1.105 28.962s-.719 28.913-.799 29.86c-.102 1.206.905 1.949 3.355 2.478 3.628.783 17.313-.671 20-2.125 0 2.99-2.051 3.274-14.75 3.65-22.073.653-24.463.856-28.002 2.385-1.789.773-3.476 2.206-3.75 3.185L123 250l-5.407 3.652-5.406 3.653L107 252c-4.01-3.328-6.935-4.903-9.087-5.647L94 245l-10-1-10-1-11.25-1.045c-11.827-1.098-24.652-4.523-30.716-8.204-7.739-4.697-14.177-10.019-16.384-13.543C10.296 211.661 10.119 210.034 9 159l1-96 .75-.005c.413-.003 1.087 1.122 2.25 5.005l.055 19.184c.03 10.551.304 19.588.609 20.081s1.582.639 2.838.324S30.984 107.012 73 107l.75.002c.412.001.637.676.25 2.998"/>
7
+ <path fill="#f34c2b" d="M145 183c-3.895-.967-4.658-1.729-4.352-2.526.279-.726-.433-1.824-1.583-2.439-1.744-.933-1.907-1.463-.981-3.193.879-1.643.831-1.981-.237-1.626-2.241.744-3.362 5.306-1.748 7.115 1.26 1.412.706 1.549-5.51 1.355-6.741-.21-6.882-.268-5.758-2.369.634-1.185 2.506-2.452 4.161-2.815 1.751-.385 3.008-1.302 3.008-2.196 0-1.349-.307-1.334-2.528.121-3.939 2.581-4.775 1.191-4.245-7.062.423-6.588.284-7.365-1.318-7.365-2.476 0-3.185 1.526-1.398 3.009 2.12 1.76 1.841 4.089-.511 4.266-1.67.126-2-.466-2-3.587 0-3.067-.449-3.908-2.5-4.688-4.937-1.877-2.53-2.851 5.75-2.327 9.124.577 11.365 1.639 8.274 3.92-1.635 1.207-1.786 1.842-.873 3.683.823 1.659 1.134 1.81 1.226.596.068-.895.793-2.184 1.613-2.864.976-.81 1.272-2.106.859-3.753-.473-1.885-.282-2.398.76-2.049.765.257 1.393 1.327 1.395 2.38.003 1.236.711 1.923 2 1.939 1.216.016 1.948.66 1.874 1.65-.067.893 1.058 2.174 2.5 2.846s3.833 1.852 5.313 2.622c2.316 1.205 2.873 1.2 4-.036 1.101-1.207.991-1.409-.691-1.271-1.357.111-2.036-.479-2.111-1.836-.167-3.017-1.51-6.5-2.506-6.5-.486 0-.883-1.241-.883-2.757 0-1.888 1.137-3.8 3.609-6.069 3.182-2.92 4.059-3.237 7.398-2.673 2.326.393 4.047.22 4.459-.447 1.163-1.882 2.569-.042 1.926 2.52-.773 3.082 1.051 5.385 3.715 4.688 1.867-.488 1.977-.213 1.34 3.353-.382 2.137-1.651 5.01-2.821 6.385-2.009 2.362-2.015 2.433-.126 1.296 1.1-.662 3.211-.969 4.691-.683s3.569.05 4.642-.524c2.606-1.395 7.432 1.002 9.015 4.477 1.312 2.88.648 4.839-1.376 4.062-.729-.28-1.829.097-2.444.838s-3.347 1.502-6.073 1.691-4.956.68-4.956 1.093l.001.75c-23.385-.877-24-.8-24 1.05z"/>
8
+ <path fill="#de4821" d="M16.03 115.25c1.125-2.797 2.984-2.912 3.686-.228.453 1.732 1.05 1.926 4.156 1.348 1.995-.371 4.198-1.48 4.895-2.465 1.759-2.487 11.241-2.537 11.218-.059-.008.91-.406 2.271-.883 3.024-.71 1.121-1.041 1.061-1.818-.327-1.315-2.35-7.888-1.164-8.598 1.551-.433 1.655.064 1.906 3.783 1.906 7.91 0 10.084.875 11.429 4.595 1.096 3.032.997 3.743-.887 6.389-1.166 1.638-2.821 3.37-3.679 3.85-1.259.705-1.338 1.285-.41 3.019.632 1.181 1.521 2.147 1.977 2.147s1.903 1.071 3.215 2.381 3.281 2.553 4.375 2.762 2.139 1.164 2.323 2.122c.381 1.976-2.968 3.765-3.585 1.915-.216-.649-1.97-1.18-3.896-1.18h-3.503l.336 4.25c.254 3.218-.028 4.283-1.164 4.385-.825.074-2.4.2-3.5.28-1.858.135-1.875.218-.23 1.176 2.482 1.445 5.677.18 6.763-2.677 1.194-3.141 5.444-3.49 4.452-.366-.362 1.142-.083 2.732.633 3.594 1.076 1.296.906 1.831-1.053 3.309-1.613 1.217-1.972 1.989-1.157 2.492.649.401 1.849.174 2.667-.505 1.204-.999 1.728-.907 2.748.489 1.003 1.371 2.479 1.658 7.219 1.399 5.776-.316 5.958-.249 5.958 2.174 0 2.392-.292 2.513-6.8 2.797-6.061.265-7.129.02-9.827-2.25Q41.725 164.215 39 167.5c-.86 1.036-.898 1.5-.122 1.5.617 0 1.122.45 1.122 1 0 1.638-7.617 1.167-9.049-.559-.958-1.155-2.282-1.393-5.102-.916-3.423.578-4.117.306-6.865-2.691-3.644-3.974-4.555-6.899-3.034-9.741 1.162-2.171 3.419-2.579 11.8-2.137 4.191.221 4.251.178 4.282-3.116.029-3.018.162-3.169 1.382-1.561 1.149 1.514 1.435 1.556 1.925.28.316-.825 1.744-1.792 3.173-2.151 3.639-.913 3.071-5.128-1.012-7.511-3.866-2.257-5.899-2.377-5.103-.304.411 1.071-.064 1.769-1.449 2.131-1.274.333-1.852 1.086-1.512 1.971.752 1.961-2.146 7.305-3.962 7.305-1.833 0-1.825-.951.026-3.397.79-1.044 1.183-2.307.874-2.807s-.785-5.047-1.057-10.103-.959-9.755-1.528-10.443-2.553-1.25-4.411-1.25c-2.249 0-3.378-.474-3.378-1.418 0-.78-.196-2.018-.437-2.75s-.031-2.344.467-3.582"/>
9
+ <path fill="#bd1d12" d="M137 44c-35.908 1.92-34.788 1.816-32.75 3.045.963.58 1.75 1.707 1.75 2.505 0 1.893 2.413 1.862 4-.05.685-.825 2.449-1.5 3.922-1.5s3.116-.438 3.652-.974c.567-.567 2.21-.643 3.934-.182 2.215.592 3.009 1.435 3.156 3.348.143 1.86.927 2.739 2.879 3.229 2.591.65 2.621.74.914 2.626-.972 1.074-2.386 1.953-3.143 1.953s-1.632.667-1.945 1.482c-.904 2.357-4.546-.083-4.171-2.795.286-2.07-.073-2.187-6.698-2.187-5.742 0-7.294.354-8.636 1.969-1.604 1.929-1.714 1.932-5.5.128-2.125-1.012-4.539-2.472-5.364-3.244-1.301-1.217-.951-1.348 2.623-.99 2.267.227 4.742-.042 5.5-.596 1.023-.748.015-1.233-3.909-1.884l-5.285-.877-2.092 3.546c-2.261 3.832-5.075 4.298-5.66.937-.195-1.122-1.569-2.392-3.152-2.915l-2.806-.926-.615 11.426c-.339 6.284-.726 19.391-.861 29.127-.176 12.666-.6 18-1.494 18.75L74 110c.387-2.322.162-2.997-.25-2.998L73 107l1-16c2.097-.545 3.199-40.169 1.132-40.706L74 50v-5c1.618.908 2.631.732 3.294.194s2.1-1.144 3.192-1.347c1.691-.314 1.505-.627-1.25-2.108L76 40l4.149-2.116c3.86-1.968 4.679-2.034 11.75-.935 4.18.649 9.401 1.603 11.601 2.119s7.938.936 21.5.932h12z"/>
10
+ <path fill="#20140d" d="m144 45-1-1-4-4h13l5.25-.496c2.887-.273 16.275-.643 29.75-.821l24.5-.324L212 92v12l.874 9.122c.481 5.017.706 9.967.126 12.878l-.689 1.25c-.806 1.463-1.729-1.803-4.311-15.25l-1-1-2.75-.618c-2.36-.531-2.502-.744.75-2.382l1.073-.274c1.051-.269 1.76-64.226.723-65.263-.249-.249-13.579-.005-58.796 1.537l-1 1zm64 159h1.5c1.152 0 1.5 1.278 1.5 11l-2.75 6.126c-1.956 4.356-4.483 7.698-8.75 11.572-11.5 10.44-25.519 14.771-51 15.753-7.15.275-15.812.736-25.5 1.549l.498-1.78c.274-.979 1.961-2.412 3.75-3.185 3.539-1.529 5.929-1.732 28.002-2.385 12.699-.376 14.75-.66 14.75-3.65h5l2.75-.063c3.012-.069 12.762-4.088 15.424-6.358.921-.785 2.604-1.924 3.739-2.532S199.207 227.83 200 224l1.413-1.627c1.952-2.248 4.138-8.345 6.587-18.373"/>
11
+ <path fill="#9d291e" d="m145 108-1-26c.907 1.56 1.582 1.758 2.085 1.447s.915-9.088.915-19.506V45l1-1 .75 10.25c.413 5.638.417 14.145.01 18.905-.729 8.522.325 32.264 1.483 33.422.326.326 10.306.78 43.757 1.423 0 1.55 1.35 2 3 2h3l7 1 1 1-1 12-.5-11.5-6-.707c-3.3-.389-15-.943-26-1.231s-21.688-.757-23.75-1.043L147 109l-1.461-20.5-.27 9.75z"/>
12
+ <path fill="#20140d" d="M169 176h39c.55 0 1-1.098 1-2.441s.46-2.726 1.022-3.073c.657-.406 1.193 2.785 1.978 18.514l-.359 2.25c-.197 1.238-.76 3.6-1.25 5.25-.786 2.647-.979 2.148-2.391-11.5v-1.924c0-1.831-1.428-1.976-59-4.076h-4v-1.95c0-1.85.615-1.927 24-1.05"/>
13
+ <path fill="#362716" d="M207 165v-41l1-12c2.582 13.447 3.505 16.713 4.311 15.25L213 126v64l-1-1c-.785-15.729-1.321-18.92-1.978-18.514-.562.347-1.022 1.73-1.022 3.073s-.45 2.441-1 2.441h-1z"/>
14
+ <path fill="#221300" d="m74 40 1.952 2.648-.976 1.176L74 45l-30.892.64-30.891.639L12 54h-2l1-12 37-1z"/>
15
+ <path fill="#dacbb1" d="M213.229 16.25c1.041 6.368.352 8.062-4.42 10.866-2.55 1.498-4.824 2.536-5.053 2.307s-3.958.032-8.286.581c-4.827.612-8.227.639-8.795.071s-.104-2.623 1.2-5.316c1.169-2.415 2.125-5.374 2.125-6.575 0-1.437.616-2.184 1.8-2.184 2.325 0 4.2 1.902 4.2 4.259 0 1.064.457 1.577 1.068 1.199.587-.363.815-1.323.504-2.132s-.085-2.367.501-3.463c.807-1.507 1.387-1.726 2.385-.898.927.769 2.616.796 5.681.089 6.154-1.419 6.677-1.33 7.09 1.196"/>
16
+ <path fill="#e64019" d="M85.675 191.658c.362-.362 1.6-.658 2.751-.658s2.62-.844 3.265-1.876c1.256-2.011 7.031-3.383 7.954-1.889.306.496 1.299.567 2.206.158 1.375-.62 6.703-1.181 14.149-1.491.825-.034 3.672.143 6.328.395 3.498.331 4.974.08 5.355-.914.902-2.352 2.317-.428 2.317 3.151 0 3.313-.098 3.398-3.25 2.804-1.787-.337-3.961-1.225-4.829-1.975-2.191-1.891-4.08-1.703-3.879.387.344 3.583-1.217 6.25-3.659 6.25-1.709 0-2.383-.561-2.383-1.981 0-2.139-3.984-3.765-6.068-2.477-.65.402-3.115.859-5.477 1.017s-6.373 1.447-8.911 2.864c-5.41 3.02-5.968 3.124-5.134.95.343-.895.171-2.174-.384-2.842s-.713-1.511-.351-1.873"/>
17
+ <path fill="#dacbb1" d="M226 10h-.667c-.367 0-.666-1.405-.666-3.123V3.754l-6.834.14c-6.254.129-6.833.321-6.833 2.263 0 1.167.788 2.796 1.75 3.619 1.617 1.383 1.502 1.505-1.5 1.61-2.706.095-3.25-.25-3.25-2.063 0-2.793-4.989-6.96-6.127-5.118-.47.761.038 2.137 1.278 3.456 1.132 1.205 1.76 2.674 1.395 3.265-.921 1.491-4.539 1.351-4.576-.176-.017-.694-.484-.471-1.05.5-1.291 2.216-5.777 2.287-6.614.105-.842-2.195 2.543-4.608 5.444-3.881 2.054.514 2.25.213 2.25-7.474h26zM0 97l2.75.25 2.75.25.3 10.376c.264 9.141.111 10.304-1.288 9.767-2.555-.98-3.08 2.27-.643 3.977 2.844 1.992 2.705 5.783-.299 8.146C2.109 130.915.913 133.137 0 139z"/>
18
+ <path fill="#f9e9ce" d="m153 297-1.5-1.714c-2.237-2.556-1.966-5.641.44-5.012 1.46.382 2.19-.207 2.948-2.383.622-1.784 1.698-2.872 2.81-2.841 1.363.038 1.527.342.67 1.25-1.983 2.102-.549 2.538 7.805 2.367 9.146-.187 11.076 1.145 5.916 4.082-1.692.963-3.079 2.313-3.089 4.251z"/>
19
+ <path fill="#c8b69b" d="M215.055 264c.634 0 .933 1.884.75 4.718-.282 4.357-.551 4.787-3.524 5.635-2.46.702-3.802.536-5.697-.706-1.518-.995-2.717-1.241-3.091-.636-.92 1.488-4.083 1.188-5.502-.522-1.117-1.345-1.38-1.339-2.402.059-1.616 2.21-6.589.305-6.589-2.523 0-2.528-.541-2.532-3.727-.025-2.46 1.935-2.472 2-.376 2 1.191 0 2.427.681 2.746 1.513.873 2.275-1.628 4.628-4.557 4.288-2.406-.28-2.607-.702-2.886-6.063-.342-6.572.496-7.393 6.418-6.282 2.369.444 3.778 1.339 4.11 2.61.558 2.134 1.795 2.515 2.814.866.363-.587 1.252-.841 1.976-.563s1.565-.142 1.868-.932c1.252-3.263 10.545-.849 10.73 2.788.086 1.694.233 1.828.573.525.616-2.357 2.375-2.218 3.018.239.834 3.188 2.293 1.248 2.293-3.048 0-2.168.475-3.941 1.055-3.941"/>
20
+ <path fill="#dacbb1" d="m10 63-1 96-.75-3.75-.75-3.75L9 57h1z"/>
21
+ <path fill="#c1b095" d="M56.975 286c.564 0 1.025.71 1.025 1.577 0 1.352-1.393 1.528-9.75 1.234l-9.75-.343-.302-5.234c-.308-5.339.876-6.832 2.707-3.412.807 1.508 2.026 1.776 7.08 1.554 5.671-.249 6.171-.094 7.035 2.178.512 1.346 1.391 2.446 1.955 2.446"/>
22
+ <path fill="#f9e9ce" d="m226 138-3.385.59c-3.671.639-5.506-.811-3.731-2.95 1.321-1.592 1.617-6.069.704-10.64-.487-2.439-.251-4.106.78-5.5 1.416-1.914 1.568-1.925 5.632 1.5z"/>
23
+ <path fill="#dacbb1" d="M214.184 242.282c6.138 4.099 6.328 4.36 4.855 6.689-.968 1.53-2.539.724-2.539-1.304 0-.642-1.046-1.316-2.326-1.497-1.53-.217-2.14-.816-1.782-1.75.395-1.028-.264-1.42-2.388-1.42-1.864 0-3.307-.697-3.956-1.91q-1.022-1.91-3.058-1.377c-1.866.488-1.897.635-.361 1.758 2.521 1.843.922 3.256-3.687 3.256-5.714 0-6.174-2.095-1.328-6.053 2.137-1.746 4.831-4.179 5.986-5.408 2.24-2.383 3.4-2.075 3.4.901 0 1.008.487 1.833 1.083 1.833s.904.54.684 1.199 2.218 2.947 5.417 5.083"/>
24
+ <path fill="#7e1b06" d="M144 82V45h3v18.941c0 10.418-.412 19.195-.915 19.506S144.907 83.56 144 82"/>
25
+ <path fill="#bead8c" d="M25.848 258.406c1.822 1.126 1.342 3.731-.791 4.289-1.158.303-2.067 1.539-2.25 3.058-.452 3.756-4.559 6.434-8.307 5.417-2.874-.78-2.998-1.042-2.949-6.242.049-5.278.133-5.436 3.035-5.725 1.641-.164 4.089.111 5.44.611 1.83.677 2.738.523 3.563-.605.609-.833 1.626-1.194 2.259-.803"/>
26
+ <path fill="#da512b" d="M196.891 132c.425-1.535 1.544-2.624 2.9-2.82 1.215-.176 2.209-.813 2.209-1.416s.333-.765.739-.359.81 4.276.898 8.599.463 8.348.832 8.945c.917 1.483-.48 12.051-1.592 12.051-.491 0-.821-1.921-.732-4.268s-.465-5.272-1.232-6.5c-1.062-1.7-1.126-2.66-.27-4.031 1.283-2.054.058-4.375-2.893-5.482-1.877-.704-1.914-.906-.859-4.719"/>
27
+ <path fill="#dacbb1" d="m39 297 1.25-.548c.688-.302 3.05-1.411 5.25-2.466s5.211-1.933 6.691-1.952 2.983-.506 3.339-1.082 1.395-.925 2.309-.775 2.243-.092 2.955-.538c1.963-1.231 4.537 1.258 3.096 2.994-.624.752-1.754 1.367-2.512 1.367s-1.378.423-1.378.94 1.575 1.191 7 2.06zm35.495-12c2.074 0 2.394.434 2.215 2.998-.246 3.512-1.568 3.817-4.037.933-1.341-1.566-2.465-1.916-4.627-1.441-1.676.368-3.138.17-3.54-.48-.5-.809-1.045-.807-2.025.006-1.737 1.442-3.282-1.3-3.106-5.516.087-2.087.636-3.004 1.804-3.013.924-.007 2.012-.345 2.417-.75 1.446-1.446 2.404-.697 2.404 1.88 0 2.13.374 2.519 2.013 2.09 1.331-.348 2.359.12 3.035 1.383.575 1.074 2.084 1.91 3.447 1.91"/>
28
+ <path fill="#221300" d="M208 185c1.412 13.648 1.605 14.147 2.391 11.5.49-1.65 1.053-4.012 1.25-5.25L212 189l1 1-1 24-1 1c0-9.722-.348-11-1.5-11H208z"/>
29
+ <path fill="#c1b095" d="M47.25 264.353c4.92-.107 6.75.203 6.75 1.143 0 .709-.744 1.576-1.653 1.925-1.507.578-1.494.751.151 1.954 1.324.968 1.481 1.519.59 2.07-1.476.912-5.088-2.141-5.088-4.3 0-1.219-.258-1.287-1.225-.32l-1.225 1.225 1.225 1.961c2.665 4.267.027 8.132-4.228 6.193-2.124-.968-2.373-1.687-2.22-6.397l.173-5.307z"/>
30
+ <path fill="#c8b69b" d="M172.333 265.667c1.082 1.082.768 2.357-.722 2.929-.769.295-1.176 1.351-.911 2.364.422 1.613-.209 1.839-5.301 1.9-8.35.1-10.679-2.58-6.167-7.092 1.227-1.227 2.24-2.915 2.25-3.75A1.535 1.535 0 0 1 163 260.5c.993 0 1.669 1.324 2 3.915.445 3.487.65 3.733 1.872 2.25 1.393-1.691 4.247-2.212 5.461-.998M111 270c-3.987 0-5.234-1.959-1.696-2.663L111 267h2.171c1.194 0 2.902-.661 3.796-1.47 1.128-1.021 2.773-1.284 5.382-.861 3.492.567 3.736.828 3.454 3.705-.276 2.818-.651 3.122-4.193 3.389-2.549.192-4.519-.275-5.713-1.356-1.002-.907-2.514-1.37-4.897-.407"/>
31
+ <path fill="#f9e9ce" d="M174.793 275.372c.889.549.751 9.417-.16 10.328-.322.322-1.193.08-1.937-.537-.944-.784-2.381-.827-4.767-.143-1.879.539-3.531.98-3.672.98s-.257-1.158-.257-2.572c0-2.123.412-2.517 2.361-2.262 2.601.341 5.639-1.668 5.639-3.729 0-1.546 1.654-2.769 2.793-2.065M226 107l-3.258.2c-1.792.11-4.103-.125-5.136-.521-1.799-.69-1.803-.803-.11-2.674.972-1.074 2.609-2.221 3.636-2.547 1.346-.427 1.868-1.551 1.868-4.025 0-2.385.458-3.433 3-3.433z"/>
32
+ <path fill="#de4821" d="M18.042 133.538c1.077.975 1.958 2.913 1.958 4.308 0 2.372.087 2.417 1.347.694.87-1.189 1.585-1.46 2.017-.761.368.595.204 1.37-.364 1.721s-.775 1.054-.461 1.563-.628 2.498-2.094 4.42c-2.292 3.005-2.439 3.582-1.055 4.113 2.361.906 1.962 2.404-.64 2.403-2.171-.001-2.257-.354-2.458-10.117-.206-9.988-.183-10.094 1.75-8.344"/>
33
+ <path fill="#221300" d="M200 224c-.793 3.83-1.952 5.439-3.087 6.047s-2.818 1.747-3.739 2.532c-2.662 2.27-12.412 6.289-15.424 6.358L175 239l6.75-2.608c4.007-1.548 9.087-4.596 18.25-12.392"/>
34
+ <path fill="#bf281b" d="M101.17 108.909c1.88-1.006 2.426-.81 4.084 1.465 1.472 2.021 2.769 2.626 5.629 2.626 2.044 0 4.245-.528 4.89-1.173.897-.897 1.803-.886 3.852.048 5.359 2.442.278 4.064-13.031 4.16-2.695.019-7.594-3.319-7.594-5.174 0-.435.976-1.313 2.17-1.952"/>
35
+ <path fill="#97876f" d="M133 241c3.258 0 3.844-.444 3.461-1.063-.361-.585-.006-1.822.789-2.75s1.743-2.521 2.106-3.541c.407-1.143 1.233-1.622 2.152-1.25L143 233l-.5 8.5-4.75-.25z"/>
36
+ <path fill="#da512b" d="M199 176c-.974-1.723-.651-2.597.088-3.054.997-.616.642-1.098-1.372-1.864-1.494-.568-2.716-1.6-2.716-2.294 0-.945.564-1.005 2.25-.238 1.521.693 2.809.696 3.975.012 2.896-1.699 4.306.698 2.253 3.831-1.339 2.043-1.412 2.607-.338 2.607.754 0 1.93-.675 2.615-1.5L207 172v4z"/>
37
+ <path fill="#e5d6bc" d="M17.328 72.428c.804-.309 3.193-.419 5.309-.245 2.804.231 3.941.82 4.198 2.173.497 2.62-1.627 4.598-2.837 2.641-.79-1.278-1.109-1.227-2.275.367-1.954 2.672-5.152 1.732-5.54-1.628-.198-1.718.231-2.957 1.145-3.308"/>
38
+ <path fill="#c1b095" d="M36.913 264.446c1.325.819 1.324.8.09 4.047-.891 2.343-1.451 2.59-5.25 2.315-3.867-.28-4.227-.533-3.974-2.787.397-3.528 1.875-4.719 4.118-3.318 1.28.799 2.166.834 2.888.112.573-.573 1.53-.739 2.128-.369"/>
39
+ <path fill="#c8b69b" d="M140.333 265.667c.367.367.667 1.904.667 3.418 0 2.703-.102 2.75-5.75 2.584-5.685-.167-5.75-.203-5.75-3.169 0-2.754.283-3 3.455-3 2.833 0 3.58.45 4.15 2.5l.696 2.5.099-2.75c.096-2.655 1.047-3.469 2.433-2.083"/>
40
+ <path fill="#9f8e73" d="M85.055 13.534c2.07 1.279.526 4.809-2.448 5.6C78.27 20.287 74 17.763 74 14.047c0-3.607 4.257-7.275 7.945-6.845 3 .349 3.467 2.298.55 2.298C79.551 9.5 78 10.832 78 13.359 78 15.599 79.669 18 81.225 18c.454 0 1.263-1.152 1.798-2.56s1.45-2.266 2.032-1.906"/>
41
+ <path fill="#e5d6bc" d="M53.25 87.554c.688-.211 2.985-.626 5.105-.923 3.591-.502 3.814-.388 3.263 1.665-.325 1.212-.596 2.766-.604 3.454-.023 2.13-6.783 1.551-7.979-.684-1.338-2.5-1.304-3.046.215-3.512"/>
42
+ <path fill="#c1b095" d="M139.75 11.22c2.791 2.289.45 7.78-3.317 7.78-2.76 0-3.278-.849-3.668-6-.253-3.347-.134-3.485 2.735-3.153 1.65.191 3.562.809 4.25 1.373"/>
43
+ <path fill="#e5d6bc" d="M156.031 70.25c.497-1.238 1.729-2.25 2.737-2.25s2.333-.501 2.945-1.113c1.271-1.271 3.623-.24 2.734 1.198-.322.521-.961.716-1.419.433s-1.316.867-1.905 2.558-1.502 2.808-2.028 2.483-1.244-.127-1.595.441c-.655 1.06-2.551.43-2.437-.809.035-.38.471-1.703.968-2.941"/>
44
+ <path fill="#bf281b" d="M84 109.5c1.79-1.62 2.183-1.653 3.75-.307.963.827 2.575 1.797 3.583 2.156 2.747.978 1.445 3.108-2.114 3.461-3.16.313-7.219-1.199-7.219-2.69 0-.445.9-1.625 2-2.62"/>
45
+ <path fill="#362716" d="M76 192c1.674 4.489 1.776 9.544 1.303 16.5-.646 9.492-.856 10.417-1.526 6.75L75 211z"/>
46
+ <path fill="#f9e9ce" d="M90.829 275c2.224 0 1.161 1.565-1.829 2.694-1.65.623-3 .774-3 .336s-.9-1.032-2-1.32c-2.589-.677-2.552-2.345.083-3.755 1.639-.877 2.456-.778 3.829.465.96.869 2.273 1.58 2.917 1.58M226 56l-1.25-.05c-.688-.028-2.111.085-3.163.25-1.433.225-2.137-.543-2.807-3.06-.492-1.848-.625-3.628-.297-3.956s.862.419 1.187 1.661c.396 1.516 1.532 2.404 6.33 3.155z"/>
47
+ <path fill="#796b50" d="m104 267 1.482-1.411c1.904-1.812 5.518-.888 5.518 1.411l-1.696.337c-3.538.704-2.291 2.663 1.696 2.663v.75c0 .413-1.362.75-3.028.75-2.334 0-3.137-.516-3.972-4.5"/>
48
+ <path fill="#622114" d="m74 50 1.132.294c2.067.537.965 40.161-1.132 40.706z"/>
49
+ <path fill="#ea6031" d="M18.636 125.309c2.848-1.093 4.864 1.104 4.864 5.3 0 2.776-.426 3.891-1.486 3.891-.817 0-1.656-.9-1.862-2s-.999-2.36-1.763-2.8c-1.894-1.091-1.751-3.624.247-4.391"/>
50
+ <path fill="#f9e9ce" d="m226 180-3.136-3.173c-2.28-2.308-2.883-3.573-2.21-4.64.737-1.168 1.376-1.234 5.346.813z"/>
51
+ <path fill="#dacbb1" d="M185.31 259.998c3.973 1.412 2.396 3.002-2.976 3.002-3.588 0-4.429-.31-3.985-1.468.31-.807.094-1.758-.48-2.113-1.957-1.21.738-2.675 2.763-1.502 1.027.595 3.132 1.532 4.678 2.081"/>
52
+ <path fill="#de4821" d="M131.2 225.8c1.772 1.772 2.622 1.472 2.98-1.05.234-1.644.989-2.25 2.806-2.25 3.453 0 3.946 3.195.684 4.435-1.362.518-2.789 1.448-3.172 2.068-.777 1.257-4.498-1.52-4.498-3.358 0-.641.464-.581 1.2.155"/>
53
+ <path fill="#f9e9ce" d="M143.404 288.435c1.625-.408 2.596-.237 2.596.457 0 .61-.852 1.108-1.893 1.108s-2.152.675-2.469 1.5c-.716 1.865-1.721 1.891-4.159.108-1.624-1.187-1.706-1.63-.559-3.012.974-1.173 1.697-1.329 2.617-.565.699.58 2.439.762 3.867.404m-15.717-1.002c1.45.556 1.238 1.104-1.489 3.831-2.952 2.952-3.3 3.063-4.827 1.536-.905-.905-1.378-2.342-1.051-3.193.704-1.833 4.972-3.093 7.367-2.174"/>
54
+ <path fill="#dacbb1" d="m0 141 2.148.25c1.181.137 2.603.976 3.159 1.864C7.181 146.105 5.122 148 0 148z"/>
55
+ <path fill="#622114" d="M74 40h2l3.236 1.739c2.755 1.481 2.941 1.794 1.25 2.108-1.092.203-2.529.809-3.192 1.347S75.618 45.908 74 45l.976-1.176.976-1.176z"/>
56
+ <path fill="#7e1b06" d="m147 109-2-1 .269-9.75.27-9.75z"/>
57
+ <path fill="#9f8e73" d="m111 18 .507-3.25c.674-4.322 1.422-4.859 2.084-1.5.298 1.512 1.187 2.75 3.409 2.75l.25 1.25c.167.833-.833 1.167-6.25.75"/>
58
+ <path fill="#e64019" d="M106.682 171.652c2.303-2.303 14.318.931 14.318 3.854 0 2.172-4.15 3.01-5.534 1.117-.653-.892-1.873-1.623-2.712-1.623-2.181 0-6.847-2.573-6.072-3.348"/>
59
+ <path fill="#221300" d="M13 68c-1.163-3.883-1.837-5.008-2.25-5.005L10 63v-6h2z"/>
60
+ <path fill="#9f8e73" d="M128.245 13.23c2.117 4.255 2.118 4.956.005 4.608-.963-.158-2.312.065-3 .496-2.355 1.477-3.163-.283-1.859-4.05 1.659-4.793 2.864-5.054 4.854-1.054"/>
61
+ <path fill="#e64019" d="M135.696 90.323c.514-2.641 2.83-4.734 4.26-3.85 1.46.902 1.302 3.272-.281 4.227-.729.44-1.626 1.616-1.993 2.613-.603 1.639-2.872 1.531-2.546-.122z"/>
62
+ <path fill="#f9e9ce" d="M226 210h-1.878c-2.252 0-4.553-2.494-3.649-3.956.355-.574 1.743-1.044 5.527-1.044zm0-138-2.75-.25c-2-.182-2.75-.795-2.75-2.25s.75-2.068 5.5-2.5z"/>
63
+ <path fill="#7e1b06" d="M143 44h-6v-4h2z"/>
64
+ <path fill="#e5d6bc" d="M161.75 97.655c1.207-.746 7.25-.491 7.25.306 0 1.987-2.866 4.193-5.046 3.884-2.399-.34-3.88-3.154-2.204-4.19"/>
65
+ <path fill="#796b50" d="M101.477 264.81c.962.962.537 5.19-.521 5.19-.574 0-.912-.741-.75-1.646s-.268-1.844-.956-2.084c-.74-.259-1.25.414-1.25 1.647 0 1.146-.45 2.083-1 2.083s-1-1.072-1-2.383c0-1.742.667-2.511 2.477-2.857 1.362-.26 2.712-.238 3 .05m-20.724.343c.548.548.997 2.088.997 3.422 0 1.886-.528 2.425-2.375 2.425-2.501 0-3.325-2.448-1.125-3.341.978-.397.959-.711-.084-1.444-1.096-.77-1.073-1.037.128-1.498.804-.309 1.911-.112 2.459.436"/>
66
+ <path fill="#f9e9ce" d="m226 158-1.067-.6c-.587-.33-1.772.232-2.635 1.25-1.5 1.769-1.567 1.74-1.528-.65.027-1.68.892-2.91 5.23-5z"/>
67
+ <path fill="#dacbb1" d="m226 255-1.562-.75-1.562-.75L226 247z"/>
68
+ <path fill="#362716" d="M200 110v-2h5c-3.252 1.638-3.11 1.851-.75 2.382L207 111z"/>
69
+ <path fill="#796b50" d="M149.279 269.613c1.139 1.139-.816 2.623-2.923 2.217-2.757-.531-2.625-6.33.144-6.33 1.201 0 2.005.671 2.013 1.679.007.924.351 2.019.766 2.434"/>
70
+ <path fill="#bf281b" d="m109.383 121.535 2.372-2.965-.112 4.254c-.095 3.611-.404 4.21-2.049 3.965-2.829-.422-2.888-1.907-.211-5.254"/>
71
+ <path fill="#dacbb1" d="m11 42-1 12-1 2 .096-6.25c.053-3.438.502-6.588 1.904-7.75"/>
72
+ <path fill="#89785e" d="M95.375 14.746C97.163 18.159 96.682 19 92.941 19c-3.169 0-3.767-1.589-1.906-5.066 1.421-2.655 2.644-2.426 4.34.812"/>
73
+ <path fill="#dacbb1" d="m78 297 .511-2.75c.538-2.892 1.557-2.938 1.544-.069-.004.925.657 1.937 2.945 2.819z"/>
74
+ <path fill="#20140d" d="M194 108h6v2h-3c-1.65 0-3-.45-3-2"/>
75
+ <path fill="#dfd2af" d="M129.433 34.336c.862.331 1.567 1.079 1.567 1.664 0 1.62-2.987 2.413-4.267 1.133L125.6 36l1.133-1.133c.623-.623 1.838-.862 2.7-.531"/>
76
+ <path fill="#9f8e73" d="M105.066 16c1.567 0 1.04 1.746-.733 2.426-2.462.945-3.549-.735-2.941-4.549.652-4.092 1.47-4.325 2.199-.627.298 1.512.962 2.75 1.475 2.75"/>
77
+ <path fill="#796b50" d="M92.003 265.502c1.183.731-.523 4.498-2.038 4.498-.531 0-.965-.188-.965-.418s-.304-1.209-.674-2.174c-.519-1.353-.29-1.608 1-1.113.92.353 1.674.18 1.674-.385s.452-.749 1.003-.408"/>
78
+ <path fill="#da3518" d="m107 252-.75.079c-2.891.306-7.679-2.461-12.25-7.079l3.913 1.353c2.152.744 5.077 2.319 9.087 5.647"/>
79
+ <path fill="#78735b" d="M10 54h2v3H9v-1z"/>
80
+ <path fill="#e5d6bc" d="M191.804 47.621c1.345-.831 6.179 1.662 6.188 3.192.012 2.012-6.398 1.097-6.789-.97-.172-.911.098-1.911.601-2.222M16.772 67.641c1.398-.864 9.729.754 9.72 1.887-.004.535-2.027.819-4.5.632-4.588-.347-6.916-1.471-5.22-2.519"/>
81
+ <path fill="#dacbb1" d="M213 190v-16l.404 14.25c.222 7.837-.003 16.837-1.404 25.75zm2.913 42.446c.598.37 1.087 1.069 1.087 1.554 0 1.545-2.133 2.267-3.287 1.113L212.6 234l1.113-1.113c.612-.612 1.602-.811 2.2-.441m-2 17c.598.37 1.087 1.069 1.087 1.554 0 1.545-2.133 2.267-3.287 1.113L210.6 251l1.113-1.113c.612-.612 1.602-.811 2.2-.441"/>
82
+ <path fill="#da512b" d="M189.008 159.495c1.165-.72 4.992 2.136 4.992 3.726 0 .501-1.233.769-2.741.595-2.84-.328-4.27-3.073-2.251-4.321"/>
83
+ <path fill="#f9e9ce" d="m226 170-1.228-1.472-1.227-1.473L226 165z"/>
84
+ <path fill="#dacbb1" d="M35.622 180c.758 0 1.378.675 1.378 1.5 0 .952-.958 1.5-2.622 1.5-2.218 0-2.431-.232-1.378-1.5.685-.825 1.864-1.5 2.622-1.5"/>
85
+ <path fill="#bf281b" d="M123.931 125.543c1.104-.682 1.569.021 2.45 3.707.696 2.911-.191 3.54-2.181 1.55-1.426-1.426-1.581-4.446-.269-5.257"/>
86
+ <path fill="#e5d6bc" d="M166.672 84.934c2.923-1.111 6.245-.416 4.745.993-.504.474-2.379 1.17-4.167 1.547-4.018.847-4.454-1.066-.578-2.54"/>
87
+ <path fill="#e64019" d="M138.551 197.6c.681-.931.989-2.643.686-3.803-.376-1.439-.185-1.882.605-1.394 2.139 1.322.607 13.583-1.89 15.126-1.42.878-.891-7.891.599-9.929m-27.02-45.6c2.024 0 3.046 2.823 1.56 4.309-.899.899-1.395.825-2.117-.317-1.412-2.233-1.167-3.992.557-3.992"/>
88
+ <path fill="#f34c2b" d="M124.694 152.639c1.236-1.236 4.306-.622 4.306.861 0 .825-.873 1.5-1.941 1.5-2.087 0-3.408-1.318-2.365-2.361"/>
89
+ <path fill="#796b50" d="M68.032 266.5c.679 2.835.421 5-.595 5-.932 0-1.57-4.702-.859-6.323.582-1.327.886-1.05 1.454 1.323"/>
90
+ <path fill="#e64019" d="M109.007 145.496c1.221-.755 2.43 1.988 1.523 3.456-.356.576-1.071 1.048-1.589 1.048-1.261 0-1.207-3.717.066-4.504"/>
91
+ <path fill="#da512b" d="M184.452 119.38c1.582-.607 3.548.254 3.548 1.554 0 .449-1.125.816-2.5.816-2.723 0-3.376-1.477-1.048-2.37"/>
92
+ <path fill="#e64019" d="M127.662 94.25c.685-1.697 3.338-1.591 3.338.133 0 .761-.9 1.619-2 1.907-2.029.531-2.243.204-1.338-2.04"/>
93
+ <path fill="#dacbb1" d="M118.046 31.261c1.836 1.146 2.643 2.739 1.388 2.739-1.553 0-4.418-2.217-3.916-3.03.337-.545 1.382-.425 2.528.291m54.067 219.309c1.18.729 1.125 2.165-.113 2.93-1.742 1.077-3.229-.519-1.935-2.078.639-.77 1.56-1.153 2.048-.852m2.453 7.817c1.247.478 1.455.992.707 1.74-1.577 1.577-4.429.705-3.348-1.023.525-.84 1.577-1.125 2.641-.717"/>
94
+ <path fill="#e5d6bc" d="M157.491 86.46c.845 1.078 1.281 2.428.97 3-.939 1.726-1.484 1.194-2.008-1.96-.474-2.856-.424-2.905 1.038-1.04"/>
95
+ <path fill="#f9e9ce" d="M87.5 279c.275 0 .5.225.5.5s-.225.5-.5.5a.5.5 0 0 1-.5-.5c0-.275.225-.5.5-.5"/>
96
+ </svg>
package/package.json ADDED
@@ -0,0 +1,32 @@
1
+ {
2
+ "name": "galath",
3
+ "version": "1.0.2",
4
+ "description": "XML language for web applications",
5
+ "scripts": {
6
+ "save": "git add .; git commit -m 'Updated Release'; npm version patch; npm publish; git push --follow-tags;",
7
+ "serve": "http-server -c-1 -o"
8
+ },
9
+ "keywords": [
10
+ "xml",
11
+ "language",
12
+ "declarative"
13
+ ],
14
+ "workspaces": [
15
+ "packages/*"
16
+ ],
17
+ "type": "module",
18
+ "author": "catpea (https://github.com/catpea)",
19
+ "license": "MIT",
20
+ "repository": {
21
+ "type": "git",
22
+ "url": "git+https://github.com/catpea/odor.git"
23
+ },
24
+ "bugs": {
25
+ "url": "https://github.com/catpea/odor/issues"
26
+ },
27
+ "homepage": "https://catpea.github.io/odor",
28
+ "funding": {
29
+ "type": "github",
30
+ "url": "https://github.com/sponsors/catpea"
31
+ }
32
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "galath",
3
+ "version": "1.0.0",
4
+ "description": "Galath - an XML-based programming language for the web. Models from XForms, structure from XAML, commands from XUL, controllers from FXML, behaviors from Svelte. No build step. No dependencies.",
5
+ "type": "module",
6
+ "main": "src/index.js",
7
+ "module": "src/index.js",
8
+ "exports": {
9
+ ".": "./src/index.js",
10
+ "./boot": "./src/boot.js",
11
+ "./morph": "./src/morph.js",
12
+ "./*": "./src/*.js"
13
+ },
14
+ "files": [
15
+ "src"
16
+ ],
17
+ "keywords": [
18
+ "xml",
19
+ "xforms",
20
+ "xaml",
21
+ "xul",
22
+ "fxml",
23
+ "declarative",
24
+ "ui",
25
+ "web-components"
26
+ ],
27
+ "license": "MIT"
28
+ }
@@ -0,0 +1,193 @@
1
+ // =============================================================================
2
+ // behavior.js
3
+ //
4
+ // Attached behaviors. Inspired by XAML Attached Properties and Svelte
5
+ // `use:` actions, these let an attribute on an element install a small,
6
+ // disposable extension on it - without changing the element's tag or
7
+ // owning component.
8
+ //
9
+ // Built-in behaviors:
10
+ //
11
+ // use:copy="signalNameOrPath"
12
+ // On click, copy the resolved string value to the clipboard. Adds a
13
+ // transient `btn-success` class for visual feedback.
14
+ //
15
+ // use:focus="expr"
16
+ // Focus the element when `expr` is truthy. Re-evaluated each render.
17
+ //
18
+ // use:autosize
19
+ // Auto-grow a textarea as the user types.
20
+ //
21
+ // drag:source="$todo"
22
+ // Mark the element draggable and remember the resolved value as the
23
+ // current drag payload.
24
+ //
25
+ // drop:target="$todo"
26
+ // Make the element a drop zone. On drop, runs the optional
27
+ // `drop:command="cmdName"` with `$source`/`$target` in the local scope.
28
+ //
29
+ // You can register your own with `language.behaviors.set('name', fn)` from a
30
+ // downstream feature - the API is small on purpose.
31
+ //
32
+ // All behaviors return a Disposable so the renderer can clean them up when
33
+ // the element is removed or re-rendered.
34
+ // =============================================================================
35
+
36
+ // Module-private register of the *currently dragging* payload. We store the
37
+ // resolved value here when a dragstart fires; the matching drop reads it.
38
+ // Browsers have a richer DataTransfer API but it stringifies payloads -
39
+ // XNodes don't survive that, so we keep them in JS memory and use a shared
40
+ // session id across dataTransfer to validate.
41
+ let activeDragPayload = null;
42
+ let activeDragId = null;
43
+
44
+ export function behaviorFeature(language) {
45
+ // ---------------------------------------------------------------------------
46
+ // copy: click-to-clipboard
47
+ // ---------------------------------------------------------------------------
48
+ language.behaviors.set('copy', (element, value, instance) => {
49
+ const handler = async () => {
50
+ // Resolution order: explicit signal name -> path -> literal value.
51
+ const text =
52
+ instance.scope.signal(value)?.value ??
53
+ language.valueOf(value, instance) ??
54
+ value;
55
+ try {
56
+ await navigator.clipboard?.writeText(String(text));
57
+ element.classList.add('btn-success');
58
+ setTimeout(() => element.classList.remove('btn-success'), 600);
59
+ } catch {
60
+ // Clipboard may be denied (e.g. insecure context). Print so the
61
+ // user can still copy by hand.
62
+ console.info('[galath] copy behavior value:', text);
63
+ }
64
+ };
65
+ element.addEventListener('click', handler);
66
+ return new language.Disposable(() => element.removeEventListener('click', handler));
67
+ });
68
+
69
+ // ---------------------------------------------------------------------------
70
+ // focus: imperative focus when truthy
71
+ // ---------------------------------------------------------------------------
72
+ language.behaviors.set('focus', (element, value, instance, local) => {
73
+ // Evaluate immediately. Most renderers re-mount this on each render
74
+ // pass, so reactive focusing works without subscribing to specific
75
+ // signals here.
76
+ if (language.evaluate(value, instance, local)) {
77
+ // Defer to a microtask so the element is in the live DOM after morph.
78
+ queueMicrotask(() => element.focus?.());
79
+ }
80
+ return new language.Disposable(() => {});
81
+ });
82
+
83
+ // ---------------------------------------------------------------------------
84
+ // autosize: grow textarea height to fit content
85
+ // ---------------------------------------------------------------------------
86
+ language.behaviors.set('autosize', element => {
87
+ const grow = () => {
88
+ element.style.height = 'auto';
89
+ element.style.height = element.scrollHeight + 'px';
90
+ };
91
+ element.addEventListener('input', grow);
92
+ queueMicrotask(grow);
93
+ return new language.Disposable(() => element.removeEventListener('input', grow));
94
+ });
95
+
96
+ // ---------------------------------------------------------------------------
97
+ // Drag and drop are a pair. Source resolves a payload at dragstart time.
98
+ // Target intercepts dragover/drop and dispatches the configured command,
99
+ // which receives `$source` and `$target` as locals (and any other locals
100
+ // from the surrounding scope).
101
+ // ---------------------------------------------------------------------------
102
+ language.installDragDrop = (element, kind, value, instance, local, command) => {
103
+ if (kind === 'source') {
104
+ element.setAttribute('draggable', 'true');
105
+ const onStart = e => {
106
+ // Resolve the payload at drag start - its identity is "now", not
107
+ // when the binding was set up.
108
+ activeDragPayload = resolvePayload(value, instance, local);
109
+ activeDragId = String(Date.now() + Math.random());
110
+ e.dataTransfer.setData('text/plain', activeDragId);
111
+ e.dataTransfer.effectAllowed = 'move';
112
+ element.classList.add('xes-dragging');
113
+ };
114
+ const onEnd = () => {
115
+ element.classList.remove('xes-dragging');
116
+ activeDragPayload = null;
117
+ activeDragId = null;
118
+ };
119
+ element.addEventListener('dragstart', onStart);
120
+ element.addEventListener('dragend', onEnd);
121
+ return new language.Disposable(() => {
122
+ element.removeEventListener('dragstart', onStart);
123
+ element.removeEventListener('dragend', onEnd);
124
+ });
125
+ }
126
+
127
+ if (kind === 'target') {
128
+ const onOver = e => {
129
+ e.preventDefault();
130
+ e.dataTransfer.dropEffect = 'move';
131
+ element.classList.add('xes-drop-hint');
132
+ };
133
+ const onLeave = () => element.classList.remove('xes-drop-hint');
134
+ const onDrop = e => {
135
+ e.preventDefault();
136
+ element.classList.remove('xes-drop-hint');
137
+ // Validate the drag came from our session. Cross-tab drags would
138
+ // not have a matching activeDragId.
139
+ const id = e.dataTransfer.getData('text/plain');
140
+ if (id !== activeDragId || activeDragPayload == null) return;
141
+ const targetPayload = resolvePayload(value, instance, local);
142
+ // No-op when dropping a node onto itself.
143
+ if (activeDragPayload === targetPayload) return;
144
+ if (command) {
145
+ // Inject `$source` / `$target` into the local scope so the
146
+ // command body can reference them with `$source` / `$target`.
147
+ const childLocal = {
148
+ ...local,
149
+ $source: activeDragPayload,
150
+ $target: targetPayload,
151
+ source: activeDragPayload,
152
+ target: targetPayload,
153
+ };
154
+ language.executeCommand(instance, command, childLocal, e);
155
+ }
156
+ };
157
+ element.addEventListener('dragover', onOver);
158
+ element.addEventListener('dragleave', onLeave);
159
+ element.addEventListener('drop', onDrop);
160
+ return new language.Disposable(() => {
161
+ element.removeEventListener('dragover', onOver);
162
+ element.removeEventListener('dragleave', onLeave);
163
+ element.removeEventListener('drop', onDrop);
164
+ });
165
+ }
166
+ };
167
+
168
+ /**
169
+ * The renderer calls this to install a `use:NAME` behavior on an element.
170
+ * Behaviors return a Disposable; we stash it on the active render scope
171
+ * so the next render pass cleans it up automatically.
172
+ */
173
+ language.installBehavior = (name, element, value, instance, local) => {
174
+ const fn = language.behaviors.get(name);
175
+ if (!fn) {
176
+ console.warn(`[galath] no behavior named "use:${name}"`);
177
+ return;
178
+ }
179
+ instance.renderScope.collect(fn(element, value, instance, local));
180
+ };
181
+
182
+ // Resolve a behavior value to its underlying object. Path-likes
183
+ // (`$todo`, `/foo/bar`) yield the actual XNode; plain names yield a
184
+ // signal value; anything else is returned literally.
185
+ function resolvePayload(expr, instance, local) {
186
+ expr = String(expr ?? '').trim();
187
+ if (expr.startsWith('$') || expr.startsWith('/')) {
188
+ return instance.tree?.select(expr, local)[0] ?? null;
189
+ }
190
+ if (instance.scope.signal(expr)) return instance.scope.signal(expr).value;
191
+ return expr;
192
+ }
193
+ }