
          <!doctype html>
          <html lang="en">
            <head>
              <meta charSet="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="taler-support" content="uri" /><noscript><meta http-equiv="refresh" content="1" /></noscript><title>Status of your order for{{ order_summary }}</title><script>
      var contractTermsStr = '{{{contract_terms_json}}}';
    </script>
              <style>/* src/styled/index.module.css */
.styled_QRPlaceholder3 {
  margin: auto;
  text-align: center;
  width: 340px;
}
.styled_FooterBar3 {
  text-align: center;
  background-color: #033;
  color: white;
  padding: 1em;
  overflow: auto;
}
.styled_FooterBar3 > p > a:link,
.styled_FooterBar3 > p > a:visited,
.styled_FooterBar3 > p > a:hover,
.styled_FooterBar3 > p > a:active {
  color: white;
}
.styled_Page3 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 100vh;
  align-items: center;
}
.styled_Page3 a:link,
.styled_Page3 a:visited,
.styled_Page3 a:hover,
.styled_Page3 a:active {
  color: black;
}
.styled_Page3 section {
  text-align: center;
  width: calc(100% - 20px);
  margin-bottom: auto;
  padding-left: 10px;
  padding-right: 10px;
}
.styled_Page3 section:not(:first-of-type) {
  margin-top: 2em;
}
.styled_Page3 > header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  text-align: center;
}
.styled_Page3 > footer {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  width: 100%;
  margin-bottom: 0px;
}
.styled_Center3 {
  display: flex;
  justify-content: center;
}
.styled_WalletLink3 {
  display: inline-block;
  zoom: 1;
  line-height: normal;
  white-space: nowrap;
  vertical-align: middle;
  text-align: center;
  cursor: pointer;
  user-select: none;
  box-sizing: border-box;
  font-family: inherit;
  font-size: 100%;
  padding: 0.5em 1em;
  color: #444;
  color: rgba(0, 0, 0, 0.8);
  border: 1px solid #999;
  border: none rgba(0, 0, 0, 0);
  background-color: #e6e6e6;
  text-decoration: none;
  border-radius: 2px;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15) inset, 0 0 6px rgba(0, 0, 0, 0.2) inset;
  border-color: #000;
}
.styled_WalletLink3:focus {
  outline: 0;
}
.styled_WalletLink3:disabled {
  border: none;
  background-image: none;
  filter: alpha(opacity=40);
  opacity: 0.4;
  cursor: not-allowed;
  box-shadow: none;
  pointer-events: none;
}
.styled_WalletLink3:hover {
  filter: alpha(opacity=90);
  background-image:
    linear-gradient(
      transparent,
      rgba(0, 0, 0, 0.05) 40%,
      rgba(0, 0, 0, 0.1));
}
.styled_InfoBox3 {
  border-radius: 0.25em;
  flex-direction: column;
  padding: 1em;
  border: solid 1px #b8daff;
  background-color: #cce5ff;
  color: #004085;
}
.styled_TableExpanded3 {
  text-align: left;
}
.styled_TableExpanded3 dt {
  font-weight: bold;
  margin-top: 1em;
}
.styled_TableExpanded3 dd {
  margin-inline-start: 0px;
}
.styled_TableSimple3 {
  text-align: left;
}
.styled_TableSimple3 dt {
  font-weight: bold;
  display: inline-block;
  width: 30%;
}
.styled_TableSimple3 dd {
  margin-inline-start: 0px;
  display: inline-block;
  width: 70%;
}

/* src/css/pure-min.css */
.talerbar {
  text-align: center;
}
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
main {
  display: block;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}
a {
  background-color: transparent;
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button;
}
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
details {
  display: block;
}
summary {
  display: list-item;
}
template {
  display: none;
}
[hidden] {
  display: none;
}
html {
  font-family: sans-serif;
}
.hidden,
[hidden] {
  display: none !important;
}
.pure-img {
  max-width: 100%;
  height: auto;
  display: block;
}
.pure-g {
  letter-spacing: -0.31em;
  text-rendering: optimizespeed;
  font-family:
    FreeSans,
    Arimo,
    "Droid Sans",
    Helvetica,
    Arial,
    sans-serif;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex-line-pack: start;
  align-content: flex-start;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  table .pure-g {
    display: block;
  }
}
.opera-only :-o-prefocus,
.pure-g {
  word-spacing: -0.43em;
}
.pure-u {
  display: inline-block;
  letter-spacing: normal;
  word-spacing: normal;
  vertical-align: top;
  text-rendering: auto;
}
.pure-g [class*=pure-u] {
  font-family: sans-serif;
}
.pure-u-1,
.pure-u-1-1,
.pure-u-1-12,
.pure-u-1-2,
.pure-u-1-24,
.pure-u-1-3,
.pure-u-1-4,
.pure-u-1-5,
.pure-u-1-6,
.pure-u-1-8,
.pure-u-10-24,
.pure-u-11-12,
.pure-u-11-24,
.pure-u-12-24,
.pure-u-13-24,
.pure-u-14-24,
.pure-u-15-24,
.pure-u-16-24,
.pure-u-17-24,
.pure-u-18-24,
.pure-u-19-24,
.pure-u-2-24,
.pure-u-2-3,
.pure-u-2-5,
.pure-u-20-24,
.pure-u-21-24,
.pure-u-22-24,
.pure-u-23-24,
.pure-u-24-24,
.pure-u-3-24,
.pure-u-3-4,
.pure-u-3-5,
.pure-u-3-8,
.pure-u-4-24,
.pure-u-4-5,
.pure-u-5-12,
.pure-u-5-24,
.pure-u-5-5,
.pure-u-5-6,
.pure-u-5-8,
.pure-u-6-24,
.pure-u-7-12,
.pure-u-7-24,
.pure-u-7-8,
.pure-u-8-24,
.pure-u-9-24 {
  display: inline-block;
  letter-spacing: normal;
  word-spacing: normal;
  vertical-align: top;
  text-rendering: auto;
}
.pure-u-1-24 {
  width: 4.1667%;
}
.pure-u-1-12,
.pure-u-2-24 {
  width: 8.3333%;
}
.pure-u-1-8,
.pure-u-3-24 {
  width: 12.5%;
}
.pure-u-1-6,
.pure-u-4-24 {
  width: 16.6667%;
}
.pure-u-1-5 {
  width: 20%;
}
.pure-u-5-24 {
  width: 20.8333%;
}
.pure-u-1-4,
.pure-u-6-24 {
  width: 25%;
}
.pure-u-7-24 {
  width: 29.1667%;
}
.pure-u-1-3,
.pure-u-8-24 {
  width: 33.3333%;
}
.pure-u-3-8,
.pure-u-9-24 {
  width: 37.5%;
}
.pure-u-2-5 {
  width: 40%;
}
.pure-u-10-24,
.pure-u-5-12 {
  width: 41.6667%;
}
.pure-u-11-24 {
  width: 45.8333%;
}
.pure-u-1-2,
.pure-u-12-24 {
  width: 50%;
}
.pure-u-13-24 {
  width: 54.1667%;
}
.pure-u-14-24,
.pure-u-7-12 {
  width: 58.3333%;
}
.pure-u-3-5 {
  width: 60%;
}
.pure-u-15-24,
.pure-u-5-8 {
  width: 62.5%;
}
.pure-u-16-24,
.pure-u-2-3 {
  width: 66.6667%;
}
.pure-u-17-24 {
  width: 70.8333%;
}
.pure-u-18-24,
.pure-u-3-4 {
  width: 75%;
}
.pure-u-19-24 {
  width: 79.1667%;
}
.pure-u-4-5 {
  width: 80%;
}
.pure-u-20-24,
.pure-u-5-6 {
  width: 83.3333%;
}
.pure-u-21-24,
.pure-u-7-8 {
  width: 87.5%;
}
.pure-u-11-12,
.pure-u-22-24 {
  width: 91.6667%;
}
.pure-u-23-24 {
  width: 95.8333%;
}
.pure-u-1,
.pure-u-1-1,
.pure-u-24-24,
.pure-u-5-5 {
  width: 100%;
}
.pure-button {
  display: inline-block;
  line-height: normal;
  white-space: nowrap;
  vertical-align: middle;
  text-align: center;
  cursor: pointer;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.pure-button::-moz-focus-inner {
  padding: 0;
  border: 0;
}
.pure-button-group {
  letter-spacing: -0.31em;
  text-rendering: optimizespeed;
}
.opera-only :-o-prefocus,
.pure-button-group {
  word-spacing: -0.43em;
}
.pure-button-group .pure-button {
  letter-spacing: normal;
  word-spacing: normal;
  vertical-align: top;
  text-rendering: auto;
}
.pure-button {
  font-family: inherit;
  font-size: 100%;
  padding: 0.5em 1em;
  color: rgba(0, 0, 0, 0.8);
  border: none transparent;
  background-color: #e6e6e6;
  text-decoration: none;
  border-radius: 2px;
}
.pure-button-hover,
.pure-button:focus,
.pure-button:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(40%, rgba(0, 0, 0, 0.05)), to(rgba(0, 0, 0, 0.1)));
  background-image:
    linear-gradient(
      transparent,
      rgba(0, 0, 0, 0.05) 40%,
      rgba(0, 0, 0, 0.1));
}
.pure-button:focus {
  outline: 0;
}
.pure-button-active,
.pure-button:active {
  -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15) inset, 0 0 6px rgba(0, 0, 0, 0.2) inset;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15) inset, 0 0 6px rgba(0, 0, 0, 0.2) inset;
  border-color: #000;
}
.pure-button-disabled,
.pure-button-disabled:active,
.pure-button-disabled:focus,
.pure-button-disabled:hover,
.pure-button[disabled] {
  border: none;
  background-image: none;
  opacity: 0.4;
  cursor: not-allowed;
  -webkit-box-shadow: none;
  box-shadow: none;
  pointer-events: none;
}
.pure-button-hidden {
  display: none;
}
.pure-button-primary,
.pure-button-selected,
a.pure-button-primary,
a.pure-button-selected {
  background-color: #0078e7;
  color: #fff;
}
.pure-button-group .pure-button {
  margin: 0;
  border-radius: 0;
  border-right: 1px solid rgba(0, 0, 0, 0.2);
}
.pure-button-group .pure-button:first-child {
  border-top-left-radius: 2px;
  border-bottom-left-radius: 2px;
}
.pure-button-group .pure-button:last-child {
  border-top-right-radius: 2px;
  border-bottom-right-radius: 2px;
  border-right: none;
}
.pure-form input[type=color],
.pure-form input[type=date],
.pure-form input[type=datetime-local],
.pure-form input[type=datetime],
.pure-form input[type=email],
.pure-form input[type=month],
.pure-form input[type=number],
.pure-form input[type=password],
.pure-form input[type=search],
.pure-form input[type=tel],
.pure-form input[type=text],
.pure-form input[type=time],
.pure-form input[type=url],
.pure-form input[type=week],
.pure-form select,
.pure-form textarea {
  padding: 0.5em 0.6em;
  display: inline-block;
  border: 1px solid #ccc;
  -webkit-box-shadow: inset 0 1px 3px #ddd;
  box-shadow: inset 0 1px 3px #ddd;
  border-radius: 4px;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.pure-form input:not([type]) {
  padding: 0.5em 0.6em;
  display: inline-block;
  border: 1px solid #ccc;
  -webkit-box-shadow: inset 0 1px 3px #ddd;
  box-shadow: inset 0 1px 3px #ddd;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.pure-form input[type=color] {
  padding: 0.2em 0.5em;
}
.pure-form input[type=color]:focus,
.pure-form input[type=date]:focus,
.pure-form input[type=datetime-local]:focus,
.pure-form input[type=datetime]:focus,
.pure-form input[type=email]:focus,
.pure-form input[type=month]:focus,
.pure-form input[type=number]:focus,
.pure-form input[type=password]:focus,
.pure-form input[type=search]:focus,
.pure-form input[type=tel]:focus,
.pure-form input[type=text]:focus,
.pure-form input[type=time]:focus,
.pure-form input[type=url]:focus,
.pure-form input[type=week]:focus,
.pure-form select:focus,
.pure-form textarea:focus {
  outline: 0;
  border-color: #129fea;
}
.pure-form input:not([type]):focus {
  outline: 0;
  border-color: #129fea;
}
.pure-form input[type=checkbox]:focus,
.pure-form input[type=file]:focus,
.pure-form input[type=radio]:focus {
  outline: thin solid #129fea;
  outline: 1px auto #129fea;
}
.pure-form .pure-checkbox,
.pure-form .pure-radio {
  margin: 0.5em 0;
  display: block;
}
.pure-form input[type=color][disabled],
.pure-form input[type=date][disabled],
.pure-form input[type=datetime-local][disabled],
.pure-form input[type=datetime][disabled],
.pure-form input[type=email][disabled],
.pure-form input[type=month][disabled],
.pure-form input[type=number][disabled],
.pure-form input[type=password][disabled],
.pure-form input[type=search][disabled],
.pure-form input[type=tel][disabled],
.pure-form input[type=text][disabled],
.pure-form input[type=time][disabled],
.pure-form input[type=url][disabled],
.pure-form input[type=week][disabled],
.pure-form select[disabled],
.pure-form textarea[disabled] {
  cursor: not-allowed;
  background-color: #eaeded;
  color: #cad2d3;
}
.pure-form input:not([type])[disabled] {
  cursor: not-allowed;
  background-color: #eaeded;
  color: #cad2d3;
}
.pure-form input[readonly],
.pure-form select[readonly],
.pure-form textarea[readonly] {
  background-color: #eee;
  color: #777;
  border-color: #ccc;
}
.pure-form input:focus:invalid,
.pure-form select:focus:invalid,
.pure-form textarea:focus:invalid {
  color: #b94a48;
  border-color: #e9322d;
}
.pure-form input[type=checkbox]:focus:invalid:focus,
.pure-form input[type=file]:focus:invalid:focus,
.pure-form input[type=radio]:focus:invalid:focus {
  outline-color: #e9322d;
}
.pure-form select {
  height: 2.25em;
  border: 1px solid #ccc;
  background-color: #fff;
}
.pure-form select[multiple] {
  height: auto;
}
.pure-form label {
  margin: 0.5em 0 0.2em;
}
.pure-form fieldset {
  margin: 0;
  padding: 0.35em 0 0.75em;
  border: 0;
}
.pure-form legend {
  display: block;
  width: 100%;
  padding: 0.3em 0;
  margin-bottom: 0.3em;
  color: #333;
  border-bottom: 1px solid #e5e5e5;
}
.pure-form-stacked input[type=color],
.pure-form-stacked input[type=date],
.pure-form-stacked input[type=datetime-local],
.pure-form-stacked input[type=datetime],
.pure-form-stacked input[type=email],
.pure-form-stacked input[type=file],
.pure-form-stacked input[type=month],
.pure-form-stacked input[type=number],
.pure-form-stacked input[type=password],
.pure-form-stacked input[type=search],
.pure-form-stacked input[type=tel],
.pure-form-stacked input[type=text],
.pure-form-stacked input[type=time],
.pure-form-stacked input[type=url],
.pure-form-stacked input[type=week],
.pure-form-stacked label,
.pure-form-stacked select,
.pure-form-stacked textarea {
  display: block;
  margin: 0.25em 0;
}
.pure-form-stacked input:not([type]) {
  display: block;
  margin: 0.25em 0;
}
.pure-form-aligned input,
.pure-form-aligned select,
.pure-form-aligned textarea,
.pure-form-message-inline {
  display: inline-block;
  vertical-align: middle;
}
.pure-form-aligned textarea {
  vertical-align: top;
}
.pure-form-aligned .pure-control-group {
  margin-bottom: 0.5em;
}
.pure-form-aligned .pure-control-group label {
  text-align: right;
  display: inline-block;
  vertical-align: middle;
  width: 10em;
  margin: 0 1em 0 0;
}
.pure-form-aligned .pure-controls {
  margin: 1.5em 0 0 11em;
}
.pure-form .pure-input-rounded,
.pure-form input.pure-input-rounded {
  border-radius: 2em;
  padding: 0.5em 1em;
}
.pure-form .pure-group fieldset {
  margin-bottom: 10px;
}
.pure-form .pure-group input,
.pure-form .pure-group textarea {
  display: block;
  padding: 10px;
  margin: 0 0 -1px;
  border-radius: 0;
  position: relative;
  top: -1px;
}
.pure-form .pure-group input:focus,
.pure-form .pure-group textarea:focus {
  z-index: 3;
}
.pure-form .pure-group input:first-child,
.pure-form .pure-group textarea:first-child {
  top: 1px;
  border-radius: 4px 4px 0 0;
  margin: 0;
}
.pure-form .pure-group input:first-child:last-child,
.pure-form .pure-group textarea:first-child:last-child {
  top: 1px;
  border-radius: 4px;
  margin: 0;
}
.pure-form .pure-group input:last-child,
.pure-form .pure-group textarea:last-child {
  top: -2px;
  border-radius: 0 0 4px 4px;
  margin: 0;
}
.pure-form .pure-group button {
  margin: 0.35em 0;
}
.pure-form .pure-input-1 {
  width: 100%;
}
.pure-form .pure-input-3-4 {
  width: 75%;
}
.pure-form .pure-input-2-3 {
  width: 66%;
}
.pure-form .pure-input-1-2 {
  width: 50%;
}
.pure-form .pure-input-1-3 {
  width: 33%;
}
.pure-form .pure-input-1-4 {
  width: 25%;
}
.pure-form-message-inline {
  display: inline-block;
  padding-left: 0.3em;
  color: #666;
  vertical-align: middle;
  font-size: 0.875em;
}
.pure-form-message {
  display: block;
  color: #666;
  font-size: 0.875em;
}
@media only screen and (max-width: 480px) {
  .pure-form button[type=submit] {
    margin: 0.7em 0 0;
  }
  .pure-form input:not([type]),
  .pure-form input[type=color],
  .pure-form input[type=date],
  .pure-form input[type=datetime-local],
  .pure-form input[type=datetime],
  .pure-form input[type=email],
  .pure-form input[type=month],
  .pure-form input[type=number],
  .pure-form input[type=password],
  .pure-form input[type=search],
  .pure-form input[type=tel],
  .pure-form input[type=text],
  .pure-form input[type=time],
  .pure-form input[type=url],
  .pure-form input[type=week],
  .pure-form label {
    margin-bottom: 0.3em;
    display: block;
  }
  .pure-group input:not([type]),
  .pure-group input[type=color],
  .pure-group input[type=date],
  .pure-group input[type=datetime-local],
  .pure-group input[type=datetime],
  .pure-group input[type=email],
  .pure-group input[type=month],
  .pure-group input[type=number],
  .pure-group input[type=password],
  .pure-group input[type=search],
  .pure-group input[type=tel],
  .pure-group input[type=text],
  .pure-group input[type=time],
  .pure-group input[type=url],
  .pure-group input[type=week] {
    margin-bottom: 0;
  }
  .pure-form-aligned .pure-control-group label {
    margin-bottom: 0.3em;
    text-align: left;
    display: block;
    width: 100%;
  }
  .pure-form-aligned .pure-controls {
    margin: 1.5em 0 0 0;
  }
  .pure-form-message,
  .pure-form-message-inline {
    display: block;
    font-size: 0.75em;
    padding: 0.2em 0 0.8em;
  }
}
.pure-menu {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.pure-menu-fixed {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 3;
}
.pure-menu-item,
.pure-menu-list {
  position: relative;
}
.pure-menu-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.pure-menu-item {
  padding: 0;
  margin: 0;
  height: 100%;
}
.pure-menu-heading,
.pure-menu-link {
  display: block;
  text-decoration: none;
  white-space: nowrap;
}
.pure-menu-horizontal {
  width: 100%;
  white-space: nowrap;
}
.pure-menu-horizontal .pure-menu-list {
  display: inline-block;
}
.pure-menu-horizontal .pure-menu-heading,
.pure-menu-horizontal .pure-menu-item,
.pure-menu-horizontal .pure-menu-separator {
  display: inline-block;
  vertical-align: middle;
}
.pure-menu-item .pure-menu-item {
  display: block;
}
.pure-menu-children {
  display: none;
  position: absolute;
  left: 100%;
  top: 0;
  margin: 0;
  padding: 0;
  z-index: 3;
}
.pure-menu-horizontal .pure-menu-children {
  left: 0;
  top: auto;
  width: inherit;
}
.pure-menu-active > .pure-menu-children,
.pure-menu-allow-hover:hover > .pure-menu-children {
  display: block;
  position: absolute;
}
.pure-menu-has-children > .pure-menu-link:after {
  padding-left: 0.5em;
  content: "\25b8";
  font-size: small;
}
.pure-menu-horizontal .pure-menu-has-children > .pure-menu-link:after {
  content: "\25be";
}
.pure-menu-scrollable {
  overflow-y: scroll;
  overflow-x: hidden;
}
.pure-menu-scrollable .pure-menu-list {
  display: block;
}
.pure-menu-horizontal.pure-menu-scrollable .pure-menu-list {
  display: inline-block;
}
.pure-menu-horizontal.pure-menu-scrollable {
  white-space: nowrap;
  overflow-y: hidden;
  overflow-x: auto;
  padding: 0.5em 0;
}
.pure-menu-horizontal .pure-menu-children .pure-menu-separator,
.pure-menu-separator {
  background-color: #ccc;
  height: 1px;
  margin: 0.3em 0;
}
.pure-menu-horizontal .pure-menu-separator {
  width: 1px;
  height: 1.3em;
  margin: 0 0.3em;
}
.pure-menu-horizontal .pure-menu-children .pure-menu-separator {
  display: block;
  width: auto;
}
.pure-menu-heading {
  text-transform: uppercase;
  color: #565d64;
}
.pure-menu-link {
  color: #777;
}
.pure-menu-children {
  background-color: #fff;
}
.pure-menu-disabled,
.pure-menu-heading,
.pure-menu-link {
  padding: 0.5em 1em;
}
.pure-menu-disabled {
  opacity: 0.5;
}
.pure-menu-disabled .pure-menu-link:hover {
  background-color: transparent;
}
.pure-menu-active > .pure-menu-link,
.pure-menu-link:focus,
.pure-menu-link:hover {
  background-color: #eee;
}
.pure-menu-selected > .pure-menu-link,
.pure-menu-selected > .pure-menu-link:visited {
  color: #000;
}
.pure-table {
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
  border: 1px solid #cbcbcb;
}
.pure-table caption {
  color: #000;
  font: italic 85%/1 arial, sans-serif;
  padding: 1em 0;
  text-align: center;
}
.pure-table td,
.pure-table th {
  border-left: 1px solid #cbcbcb;
  border-width: 0 0 0 1px;
  font-size: inherit;
  margin: 0;
  overflow: visible;
  padding: 0.5em 1em;
}
.pure-table thead {
  background-color: #e0e0e0;
  color: #000;
  text-align: left;
  vertical-align: bottom;
}
.pure-table td {
  background-color: transparent;
}
.pure-table-odd td {
  background-color: #f2f2f2;
}
.pure-table-striped tr:nth-child(2n-1) td {
  background-color: #f2f2f2;
}
.pure-table-bordered td {
  border-bottom: 1px solid #cbcbcb;
}
.pure-table-bordered tbody > tr:last-child > td {
  border-bottom-width: 0;
}
.pure-table-horizontal td,
.pure-table-horizontal th {
  border-width: 0 0 1px 0;
  border-bottom: 1px solid #cbcbcb;
}
.pure-table-horizontal tbody > tr:last-child > td {
  border-bottom-width: 0;
}

/* src/css/style.css */
.talerbar {
  text-align: center;
}
.tt {
  font-family:
    "Lucida Console",
    Monaco,
    monospace;
}
.content {
  overflow-x: auto;
  padding-left: 15%;
  padding-right: 15%;
}
.qr {
  margin: auto;
  text-align: center;
}
.qrtext {
  width: max-content;
  margin: auto;
  transition: font-size 0.2s;
  font-family:
    "Lucida Console",
    Monaco,
    monospace;
  font-size: 0.5em;
}
.qrtext:hover {
  font-size: 1em;
}
.talerbar {
  margin: 0;
  bottom: 0;
  background-color: #033;
  color: white;
  width: 100%;
  padding: 1em;
  overflow: auto;
}
body {
  overflow-y: scroll;
}
@media (min-width: 500px) {
  .content {
    padding-bottom: 2em;
    overflow-y: auto;
  }
}
#main a:link,
#main a:visited,
#main a:hover,
#main a:active {
  color: black;
}
/*!
  Pure v2.0.3
  Copyright 2013 Yahoo!
  Licensed under the BSD License.
  https://github.com/pure-cs s/pure/blob/master/LICENSE.md
*/
/*!
  normalize.cs s v | MIT License | git.io/normalize
  Copyright (c) Nicolas Gallagher and Jonathan Neal
*/
/*! normalize.cs s v8.0.1 | MIT License | github.com/necolas/normalize.cs s */
/*!
  Pure v2.0.3
  Copyright 2013 Yahoo!
  Licensed under the BSD License.
  https://github.com/pure-ss/pure/blob/master/LICENSE.md
*/
/*!
  normalize.cs v | MIT License | git.io/normalize
  Copyright (c) Nicolas Gallagher and Jonathan Neal
*/
/*! normalize.ss v8.0.1 | MIT License | github.com/necolas/normalize.cs */
</style>
            </head>
            <script id="built_time_data">
            </script>
            <body>
              <div class="styled_Page3"><header><h1>Details of order {{ contract_terms.order_id }}</h1></header><section>{{#refund_amount}}<section><div class="styled_InfoBox3"><b>Refunded:</b> The merchant refunded you <b>{{ refund_amount }}</b>.</div></section>{{/refund_amount}}{{#contract_terms.fulfillment_message}}<section><div class="styled_InfoBox3"><b>{{ contract_terms.fulfillment_message }}</b></div></section>{{/contract_terms.fulfillment_message}}<section><dl class="styled_TableExpanded3"><dt>Order summary:</dt><dd>{{ contract_terms.summary }}</dd>{{#contract_terms.fulfillment_url}}<dt>Fulfillment URL:</dt><dd><a href="{{ contract_terms.fulfillment_url }}">{{ contract_terms.fulfillment_url }}</a></dd>{{/contract_terms.fulfillment_url}}<dt>Amount paid:</dt><dd>{{ contract_terms.amount }}</dd><dt>Order date:</dt><dd>{{ contract_terms.timestamp_str }} </dd><dt>Merchant name:</dt><dd>{{ contract_terms.merchant.name }}</dd></dl></section>{{#contract_terms.hasProducts}}<section><h2>Products purchased</h2><dl class="styled_TableSimple3">{{#contract_terms.products}}<p>{{description}}</p><dl><dt>Quantity:</dt><dd>{{quantity}}</dd><dt>Price:</dt><dd>{{price}}</dd>{{#hasTaxes}}{{#taxes}}<dt>{{name}}</dt><dd>{{tax}}</dd>{{/taxes}}{{/hasTaxes}}{{#delivery_date}}<dt>Delivered on:</dt><dd>{{ delivery_date_str }} </dd>{{/delivery_date}}{{#unit}}<dt>Product unit:</dt><dd>{{.}}</dd>{{/unit}}{{#product_id}}<dt>Product ID:</dt><dd>{{.}}</dd>{{/product_id}}</dl>{{/contract_terms.products}}</dl></section>{{/contract_terms.hasProducts}}{{#contract_terms.has_delivery_info}}<section><h2>Delivery information</h2><dl class="styled_TableExpanded3">{{#contract_terms.delivery_date}}<dt>Delivery date:</dt><dd>{{ contract_terms.delivery_date_str }} </dd>{{/contract_terms.delivery_date}}{{#contract_terms.delivery_location}}<dt>Delivery address:</dt>{{#contract_terms.delivery_location.building_name}}<dd>{{ contract_terms.delivery_location.building_name }} {{ contract_terms.delivery_location.building_number }}</dd>{{/contract_terms.delivery_location.building_name}}{{#contract_terms.delivery_location.country}}<dd>{{ contract_terms.delivery_location.country }} {{ contract_terms.delivery_location.country_subdivision }}</dd>{{/contract_terms.delivery_location.country}}{{#contract_terms.delivery_location.district}}<dd>{{ contract_terms.delivery_location.district }}</dd>{{/contract_terms.delivery_location.district}}{{#contract_terms.delivery_location.post_code}}<dd>{{ contract_terms.delivery_location.post_code }}</dd>{{/contract_terms.delivery_location.post_code}}{{#contract_terms.delivery_location.street}}<dd>{{ contract_terms.delivery_location.street }}</dd>{{/contract_terms.delivery_location.street}}{{#contract_terms.delivery_location.town}}<dd>{{ contract_terms.delivery_location.town }}</dd>{{/contract_terms.delivery_location.town}}{{#contract_terms.delivery_location.town_location}}<dd>{{ contract_terms.delivery_location.town_location }}</dd>{{/contract_terms.delivery_location.town_location}}{{/contract_terms.delivery_location}}</dl></section>{{/contract_terms.has_delivery_info}}<section><h2>Full payment information</h2><dl class="styled_TableExpanded3"><dt>Exchange transfer deadline:</dt>{{#contract_terms.wire_transfer_deadline_str}}<dd>{{ contract_terms.wire_transfer_deadline_str }} </dd>{{/contract_terms.wire_transfer_deadline_str}}{{^contract_terms.wire_transfer_deadline_str}}<dd>Wire transfer settled.</dd>{{/contract_terms.wire_transfer_deadline_str}}{{#contract_terms.max_fee}}<dt>Maximum deposit fee:</dt><dd>{{ contract_terms.max_fee }}</dd>{{/contract_terms.max_fee}}{{#contract_terms.max_wire_fee}}<dt>Maximum wire fee:</dt><dd>{{ contract_terms.max_wire_fee }}</dd>{{/contract_terms.max_wire_fee}}{{#contract_terms.wire_fee_amortization}}<dt>Wire fee amortization:</dt><dd>{{ contract_terms.wire_fee_amortization }} </dd>{{/contract_terms.wire_fee_amortization}}</dl></section><section><h2>Refund information</h2><dl class="styled_TableExpanded3"><dt>Refund deadline:</dt><dd>{{ contract_terms.refund_deadline_str }} </dd>{{#contract_terms.auto_refund}}<dt>Attempt autorefund for:</dt><dd>{{ contract_terms.auto_refund_str }} </dd>{{/contract_terms.auto_refund}}</dl></section><section><h2>Additional order details</h2><dl class="styled_TableExpanded3"><dt>Public reorder URL:</dt><dd> -- Not defined. -- </dd>{{#contract_terms.fulfillment_url}}<dt>Fulfillment URL:</dt><dd>{{ contract_terms.fulfillment_url }}</dd>{{/contract_terms.fulfillment_url}}</dl></section><section><h2>Full merchant information</h2><dl class="styled_TableExpanded3"><dt>Merchant name:</dt><dd>{{ contract_terms.merchant.name }}</dd><dt>Merchant address:</dt>{{#contract_terms.merchant.address.building_name}}<dd>{{ contract_terms.merchant.address.building_name }} {{ contract_terms.merchant.address.building_number }}</dd>{{/contract_terms.merchant.address.building_name}}{{#contract_terms.merchant.address.country}}<dd>{{ contract_terms.merchant.address.country }} {{ contract_terms.merchant.address.country_subdivision }}</dd>{{/contract_terms.merchant.address.country}}{{#contract_terms.merchant.address.district}}<dd>{{ contract_terms.merchant.address.district }}</dd>{{/contract_terms.merchant.address.district}}{{#contract_terms.merchant.address.post_code}}<dd>{{ contract_terms.merchant.address.post_code }}</dd>{{/contract_terms.merchant.address.post_code}}{{#contract_terms.merchant.address.street}}<dd>{{ contract_terms.merchant.address.street }}</dd>{{/contract_terms.merchant.address.street}}{{#contract_terms.merchant.address.town}}<dd>{{ contract_terms.merchant.address.town }}</dd>{{/contract_terms.merchant.address.town}}{{#contract_terms.merchant.address.town_location}}<dd>{{ contract_terms.merchant.address.town_location }}</dd>{{/contract_terms.merchant.address.town_location}}<dt>Merchant's jurisdiction:</dt>{{#contract_terms.merchant.jurisdiction.building_name}}<dd>{{ contract_terms.merchant.jurisdiction.building_name }} {{ contract_terms.merchant.jurisdiction.building_number }}</dd>{{/contract_terms.merchant.jurisdiction.building_name}}{{#contract_terms.merchant.jurisdiction.country}}<dd>{{ contract_terms.merchant.jurisdiction.country }} {{ contract_terms.merchant.jurisdiction.country_subdivision }}</dd>{{/contract_terms.merchant.jurisdiction.country}}{{#contract_terms.merchant.jurisdiction.district}}<dd>{{ contract_terms.merchant.jurisdiction.district }}</dd>{{/contract_terms.merchant.jurisdiction.district}}{{#contract_terms.merchant.jurisdiction.post_code}}<dd>{{ contract_terms.merchant.jurisdiction.post_code }}</dd>{{/contract_terms.merchant.jurisdiction.post_code}}{{#contract_terms.merchant.jurisdiction.street}}<dd>{{ contract_terms.merchant.jurisdiction.street }}</dd>{{/contract_terms.merchant.jurisdiction.street}}{{#contract_terms.merchant.jurisdiction.town}}<dd>{{ contract_terms.merchant.jurisdiction.town }}</dd>{{/contract_terms.merchant.jurisdiction.town}}{{#contract_terms.merchant.jurisdiction.town_location}}<dd>{{ contract_terms.merchant.jurisdiction.town_location }}</dd>{{/contract_terms.merchant.jurisdiction.town_location}}<dt>Merchant URI:</dt><dd>{{ contract_terms.merchant_base_url }}</dd><dt>Merchant's public key:</dt><dd style="overflow-wrap: break-word;">{{ contract_terms.merchant_pub }}</dd></dl></section>{{#contract_terms.hasAuditors}}<section><h2>Auditors accepted by the merchant</h2><dl class="styled_TableExpanded3">{{#contract_terms.auditors}}<p>{{name}}</p><dt>Auditor's public key:</dt><dd>{{auditor_pub}}</dd><dt>Auditor's URL:</dt><dd>{{url}}</dd>{{/contract_terms.auditors}}</dl></section>{{/contract_terms.hasAuditors}}{{#contract_terms.hasExchanges}}<section><h2>Exchanges accepted by the merchant</h2><dl class="styled_TableExpanded3">{{#contract_terms.exchanges}}<dt>Exchange's URL:</dt><dd>{{url}}</dd><dt>Public key:</dt><dd>{{master_pub}}</dd>{{/contract_terms.exchanges}}</dl></section>{{/contract_terms.hasExchanges}}</section><footer class="styled_FooterBar3"><p><a href="https://taler.net/">Learn more about GNU Taler on our website.</a><p>Copyright © 2014—2021 Taler Systems SA</p></p></footer></div>
              <script>"use strict";
var page = (() => {
  var __create = Object.create;
  var __defProp = Object.defineProperty;
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
  var __getOwnPropNames = Object.getOwnPropertyNames;
  var __getProtoOf = Object.getPrototypeOf;
  var __hasOwnProp = Object.prototype.hasOwnProperty;
  var __commonJS = (cb, mod) => function __require() {
    return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
  };
  var __export = (target, all) => {
    for (var name in all)
      __defProp(target, name, { get: all[name], enumerable: true });
  };
  var __copyProps = (to, from, except, desc) => {
    if (from && typeof from === "object" || typeof from === "function") {
      for (let key of __getOwnPropNames(from))
        if (!__hasOwnProp.call(to, key) && key !== except)
          __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
    }
    return to;
  };
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
    // If the importer is in node compatibility mode or this is not an ESM
    // file that has been converted to a CommonJS file using a Babel-
    // compatible transform (i.e. "__esModule" has not been set), then set
    // "default" to the CommonJS "module.exports" for node compatibility.
    isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
    mod
  ));
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);

  // ../../node_modules/.pnpm/jed@1.1.1/node_modules/jed/jed.js
  var require_jed = __commonJS({
    "../../node_modules/.pnpm/jed@1.1.1/node_modules/jed/jed.js"(exports, module) {
      (function(root, undef) {
        var ArrayProto = Array.prototype, ObjProto = Object.prototype, slice = ArrayProto.slice, hasOwnProp = ObjProto.hasOwnProperty, nativeForEach = ArrayProto.forEach, breaker = {};
        var _3 = {
          forEach: function(obj, iterator, context) {
            var i5, l4, key;
            if (obj === null) {
              return;
            }
            if (nativeForEach && obj.forEach === nativeForEach) {
              obj.forEach(iterator, context);
            } else if (obj.length === +obj.length) {
              for (i5 = 0, l4 = obj.length; i5 < l4; i5++) {
                if (i5 in obj && iterator.call(context, obj[i5], i5, obj) === breaker) {
                  return;
                }
              }
            } else {
              for (key in obj) {
                if (hasOwnProp.call(obj, key)) {
                  if (iterator.call(context, obj[key], key, obj) === breaker) {
                    return;
                  }
                }
              }
            }
          },
          extend: function(obj) {
            this.forEach(slice.call(arguments, 1), function(source) {
              for (var prop in source) {
                obj[prop] = source[prop];
              }
            });
            return obj;
          }
        };
        var Jed2 = function(options) {
          this.defaults = {
            "locale_data": {
              "messages": {
                "": {
                  "domain": "messages",
                  "lang": "en",
                  "plural_forms": "nplurals=2; plural=(n != 1);"
                }
                // There are no default keys, though
              }
            },
            // The default domain if one is missing
            "domain": "messages",
            // enable debug mode to log untranslated strings to the console
            "debug": false
          };
          this.options = _3.extend({}, this.defaults, options);
          this.textdomain(this.options.domain);
          if (options.domain && !this.options.locale_data[this.options.domain]) {
            throw new Error("Text domain set to non-existent domain: `" + options.domain + "`");
          }
        };
        Jed2.context_delimiter = String.fromCharCode(4);
        function getPluralFormFunc(plural_form_string) {
          return Jed2.PF.compile(plural_form_string || "nplurals=2; plural=(n != 1);");
        }
        function Chain(key, i18n2) {
          this._key = key;
          this._i18n = i18n2;
        }
        _3.extend(Chain.prototype, {
          onDomain: function(domain) {
            this._domain = domain;
            return this;
          },
          withContext: function(context) {
            this._context = context;
            return this;
          },
          ifPlural: function(num, pkey) {
            this._val = num;
            this._pkey = pkey;
            return this;
          },
          fetch: function(sArr) {
            if ({}.toString.call(sArr) != "[object Array]") {
              sArr = [].slice.call(arguments, 0);
            }
            return (sArr && sArr.length ? Jed2.sprintf : function(x3) {
              return x3;
            })(
              this._i18n.dcnpgettext(this._domain, this._context, this._key, this._pkey, this._val),
              sArr
            );
          }
        });
        _3.extend(Jed2.prototype, {
          // The sexier api start point
          translate: function(key) {
            return new Chain(key, this);
          },
          textdomain: function(domain) {
            if (!domain) {
              return this._textdomain;
            }
            this._textdomain = domain;
          },
          gettext: function(key) {
            return this.dcnpgettext.call(this, undef, undef, key);
          },
          dgettext: function(domain, key) {
            return this.dcnpgettext.call(this, domain, undef, key);
          },
          dcgettext: function(domain, key) {
            return this.dcnpgettext.call(this, domain, undef, key);
          },
          ngettext: function(skey, pkey, val) {
            return this.dcnpgettext.call(this, undef, undef, skey, pkey, val);
          },
          dngettext: function(domain, skey, pkey, val) {
            return this.dcnpgettext.call(this, domain, undef, skey, pkey, val);
          },
          dcngettext: function(domain, skey, pkey, val) {
            return this.dcnpgettext.call(this, domain, undef, skey, pkey, val);
          },
          pgettext: function(context, key) {
            return this.dcnpgettext.call(this, undef, context, key);
          },
          dpgettext: function(domain, context, key) {
            return this.dcnpgettext.call(this, domain, context, key);
          },
          dcpgettext: function(domain, context, key) {
            return this.dcnpgettext.call(this, domain, context, key);
          },
          npgettext: function(context, skey, pkey, val) {
            return this.dcnpgettext.call(this, undef, context, skey, pkey, val);
          },
          dnpgettext: function(domain, context, skey, pkey, val) {
            return this.dcnpgettext.call(this, domain, context, skey, pkey, val);
          },
          // The most fully qualified gettext function. It has every option.
          // Since it has every option, we can use it from every other method.
          // This is the bread and butter.
          // Technically there should be one more argument in this function for 'Category',
          // but since we never use it, we might as well not waste the bytes to define it.
          dcnpgettext: function(domain, context, singular_key, plural_key, val) {
            plural_key = plural_key || singular_key;
            domain = domain || this._textdomain;
            var fallback;
            if (!this.options) {
              fallback = new Jed2();
              return fallback.dcnpgettext.call(fallback, void 0, void 0, singular_key, plural_key, val);
            }
            if (!this.options.locale_data) {
              throw new Error("No locale data provided.");
            }
            if (!this.options.locale_data[domain]) {
              throw new Error("Domain `" + domain + "` was not found.");
            }
            if (!this.options.locale_data[domain][""]) {
              throw new Error("No locale meta information provided.");
            }
            if (!singular_key) {
              throw new Error("No translation key found.");
            }
            var key = context ? context + Jed2.context_delimiter + singular_key : singular_key, locale_data = this.options.locale_data, dict = locale_data[domain], defaultConf = (locale_data.messages || this.defaults.locale_data.messages)[""], pluralForms = dict[""].plural_forms || dict[""]["Plural-Forms"] || dict[""]["plural-forms"] || defaultConf.plural_forms || defaultConf["Plural-Forms"] || defaultConf["plural-forms"], val_list, res;
            var val_idx;
            if (val === void 0) {
              val_idx = 0;
            } else {
              if (typeof val != "number") {
                val = parseInt(val, 10);
                if (isNaN(val)) {
                  throw new Error("The number that was passed in is not a number.");
                }
              }
              val_idx = getPluralFormFunc(pluralForms)(val);
            }
            if (!dict) {
              throw new Error("No domain named `" + domain + "` could be found.");
            }
            val_list = dict[key];
            if (!val_list || val_idx > val_list.length) {
              if (this.options.missing_key_callback) {
                this.options.missing_key_callback(key, domain);
              }
              res = [singular_key, plural_key];
              if (this.options.debug === true) {
                console.log(res[getPluralFormFunc(pluralForms)(val)]);
              }
              return res[getPluralFormFunc()(val)];
            }
            res = val_list[val_idx];
            if (!res) {
              res = [singular_key, plural_key];
              return res[getPluralFormFunc()(val)];
            }
            return res;
          }
        });
        var sprintf = (function() {
          function get_type(variable) {
            return Object.prototype.toString.call(variable).slice(8, -1).toLowerCase();
          }
          function str_repeat(input, multiplier) {
            for (var output = []; multiplier > 0; output[--multiplier] = input) {
            }
            return output.join("");
          }
          var str_format = function() {
            if (!str_format.cache.hasOwnProperty(arguments[0])) {
              str_format.cache[arguments[0]] = str_format.parse(arguments[0]);
            }
            return str_format.format.call(null, str_format.cache[arguments[0]], arguments);
          };
          str_format.format = function(parse_tree, argv) {
            var cursor = 1, tree_length = parse_tree.length, node_type = "", arg, output = [], i5, k5, match5, pad, pad_character, pad_length;
            for (i5 = 0; i5 < tree_length; i5++) {
              node_type = get_type(parse_tree[i5]);
              if (node_type === "string") {
                output.push(parse_tree[i5]);
              } else if (node_type === "array") {
                match5 = parse_tree[i5];
                if (match5[2]) {
                  arg = argv[cursor];
                  for (k5 = 0; k5 < match5[2].length; k5++) {
                    if (!arg.hasOwnProperty(match5[2][k5])) {
                      throw sprintf('[sprintf] property "%s" does not exist', match5[2][k5]);
                    }
                    arg = arg[match5[2][k5]];
                  }
                } else if (match5[1]) {
                  arg = argv[match5[1]];
                } else {
                  arg = argv[cursor++];
                }
                if (/[^s]/.test(match5[8]) && get_type(arg) != "number") {
                  throw sprintf("[sprintf] expecting number but found %s", get_type(arg));
                }
                if (typeof arg == "undefined" || arg === null) {
                  arg = "";
                }
                switch (match5[8]) {
                  case "b":
                    arg = arg.toString(2);
                    break;
                  case "c":
                    arg = String.fromCharCode(arg);
                    break;
                  case "d":
                    arg = parseInt(arg, 10);
                    break;
                  case "e":
                    arg = match5[7] ? arg.toExponential(match5[7]) : arg.toExponential();
                    break;
                  case "f":
                    arg = match5[7] ? parseFloat(arg).toFixed(match5[7]) : parseFloat(arg);
                    break;
                  case "o":
                    arg = arg.toString(8);
                    break;
                  case "s":
                    arg = (arg = String(arg)) && match5[7] ? arg.substring(0, match5[7]) : arg;
                    break;
                  case "u":
                    arg = Math.abs(arg);
                    break;
                  case "x":
                    arg = arg.toString(16);
                    break;
                  case "X":
                    arg = arg.toString(16).toUpperCase();
                    break;
                }
                arg = /[def]/.test(match5[8]) && match5[3] && arg >= 0 ? "+" + arg : arg;
                pad_character = match5[4] ? match5[4] == "0" ? "0" : match5[4].charAt(1) : " ";
                pad_length = match5[6] - String(arg).length;
                pad = match5[6] ? str_repeat(pad_character, pad_length) : "";
                output.push(match5[5] ? arg + pad : pad + arg);
              }
            }
            return output.join("");
          };
          str_format.cache = {};
          str_format.parse = function(fmt) {
            var _fmt = fmt, match5 = [], parse_tree = [], arg_names = 0;
            while (_fmt) {
              if ((match5 = /^[^\x25]+/.exec(_fmt)) !== null) {
                parse_tree.push(match5[0]);
              } else if ((match5 = /^\x25{2}/.exec(_fmt)) !== null) {
                parse_tree.push("%");
              } else if ((match5 = /^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(_fmt)) !== null) {
                if (match5[2]) {
                  arg_names |= 1;
                  var field_list = [], replacement_field = match5[2], field_match = [];
                  if ((field_match = /^([a-z_][a-z_\d]*)/i.exec(replacement_field)) !== null) {
                    field_list.push(field_match[1]);
                    while ((replacement_field = replacement_field.substring(field_match[0].length)) !== "") {
                      if ((field_match = /^\.([a-z_][a-z_\d]*)/i.exec(replacement_field)) !== null) {
                        field_list.push(field_match[1]);
                      } else if ((field_match = /^\[(\d+)\]/.exec(replacement_field)) !== null) {
                        field_list.push(field_match[1]);
                      } else {
                        throw "[sprintf] huh?";
                      }
                    }
                  } else {
                    throw "[sprintf] huh?";
                  }
                  match5[2] = field_list;
                } else {
                  arg_names |= 2;
                }
                if (arg_names === 3) {
                  throw "[sprintf] mixing positional and named placeholders is not (yet) supported";
                }
                parse_tree.push(match5);
              } else {
                throw "[sprintf] huh?";
              }
              _fmt = _fmt.substring(match5[0].length);
            }
            return parse_tree;
          };
          return str_format;
        })();
        var vsprintf = function(fmt, argv) {
          argv.unshift(fmt);
          return sprintf.apply(null, argv);
        };
        Jed2.parse_plural = function(plural_forms, n3) {
          plural_forms = plural_forms.replace(/n/g, n3);
          return Jed2.parse_expression(plural_forms);
        };
        Jed2.sprintf = function(fmt, args) {
          if ({}.toString.call(args) == "[object Array]") {
            return vsprintf(fmt, [].slice.call(args));
          }
          return sprintf.apply(this, [].slice.call(arguments));
        };
        Jed2.prototype.sprintf = function() {
          return Jed2.sprintf.apply(this, arguments);
        };
        Jed2.PF = {};
        Jed2.PF.parse = function(p3) {
          var plural_str = Jed2.PF.extractPluralExpr(p3);
          return Jed2.PF.parser.parse.call(Jed2.PF.parser, plural_str);
        };
        Jed2.PF.compile = function(p3) {
          function imply(val) {
            return val === true ? 1 : val ? val : 0;
          }
          var ast = Jed2.PF.parse(p3);
          return function(n3) {
            return imply(Jed2.PF.interpreter(ast)(n3));
          };
        };
        Jed2.PF.interpreter = function(ast) {
          return function(n3) {
            var res;
            switch (ast.type) {
              case "GROUP":
                return Jed2.PF.interpreter(ast.expr)(n3);
              case "TERNARY":
                if (Jed2.PF.interpreter(ast.expr)(n3)) {
                  return Jed2.PF.interpreter(ast.truthy)(n3);
                }
                return Jed2.PF.interpreter(ast.falsey)(n3);
              case "OR":
                return Jed2.PF.interpreter(ast.left)(n3) || Jed2.PF.interpreter(ast.right)(n3);
              case "AND":
                return Jed2.PF.interpreter(ast.left)(n3) && Jed2.PF.interpreter(ast.right)(n3);
              case "LT":
                return Jed2.PF.interpreter(ast.left)(n3) < Jed2.PF.interpreter(ast.right)(n3);
              case "GT":
                return Jed2.PF.interpreter(ast.left)(n3) > Jed2.PF.interpreter(ast.right)(n3);
              case "LTE":
                return Jed2.PF.interpreter(ast.left)(n3) <= Jed2.PF.interpreter(ast.right)(n3);
              case "GTE":
                return Jed2.PF.interpreter(ast.left)(n3) >= Jed2.PF.interpreter(ast.right)(n3);
              case "EQ":
                return Jed2.PF.interpreter(ast.left)(n3) == Jed2.PF.interpreter(ast.right)(n3);
              case "NEQ":
                return Jed2.PF.interpreter(ast.left)(n3) != Jed2.PF.interpreter(ast.right)(n3);
              case "MOD":
                return Jed2.PF.interpreter(ast.left)(n3) % Jed2.PF.interpreter(ast.right)(n3);
              case "VAR":
                return n3;
              case "NUM":
                return ast.val;
              default:
                throw new Error("Invalid Token found.");
            }
          };
        };
        Jed2.PF.extractPluralExpr = function(p3) {
          p3 = p3.replace(/^\s\s*/, "").replace(/\s\s*$/, "");
          if (!/;\s*$/.test(p3)) {
            p3 = p3.concat(";");
          }
          var nplurals_re = /nplurals\=(\d+);/, plural_re = /plural\=(.*);/, nplurals_matches = p3.match(nplurals_re), res = {}, plural_matches;
          if (nplurals_matches.length > 1) {
            res.nplurals = nplurals_matches[1];
          } else {
            throw new Error("nplurals not found in plural_forms string: " + p3);
          }
          p3 = p3.replace(nplurals_re, "");
          plural_matches = p3.match(plural_re);
          if (!(plural_matches && plural_matches.length > 1)) {
            throw new Error("`plural` expression not found: " + p3);
          }
          return plural_matches[1];
        };
        Jed2.PF.parser = (function() {
          var parser = {
            trace: function trace() {
            },
            yy: {},
            symbols_: { "error": 2, "expressions": 3, "e": 4, "EOF": 5, "?": 6, ":": 7, "||": 8, "&&": 9, "<": 10, "<=": 11, ">": 12, ">=": 13, "!=": 14, "==": 15, "%": 16, "(": 17, ")": 18, "n": 19, "NUMBER": 20, "$accept": 0, "$end": 1 },
            terminals_: { 2: "error", 5: "EOF", 6: "?", 7: ":", 8: "||", 9: "&&", 10: "<", 11: "<=", 12: ">", 13: ">=", 14: "!=", 15: "==", 16: "%", 17: "(", 18: ")", 19: "n", 20: "NUMBER" },
            productions_: [0, [3, 2], [4, 5], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 1], [4, 1]],
            performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) {
              var $0 = $$.length - 1;
              switch (yystate) {
                case 1:
                  return { type: "GROUP", expr: $$[$0 - 1] };
                  break;
                case 2:
                  this.$ = { type: "TERNARY", expr: $$[$0 - 4], truthy: $$[$0 - 2], falsey: $$[$0] };
                  break;
                case 3:
                  this.$ = { type: "OR", left: $$[$0 - 2], right: $$[$0] };
                  break;
                case 4:
                  this.$ = { type: "AND", left: $$[$0 - 2], right: $$[$0] };
                  break;
                case 5:
                  this.$ = { type: "LT", left: $$[$0 - 2], right: $$[$0] };
                  break;
                case 6:
                  this.$ = { type: "LTE", left: $$[$0 - 2], right: $$[$0] };
                  break;
                case 7:
                  this.$ = { type: "GT", left: $$[$0 - 2], right: $$[$0] };
                  break;
                case 8:
                  this.$ = { type: "GTE", left: $$[$0 - 2], right: $$[$0] };
                  break;
                case 9:
                  this.$ = { type: "NEQ", left: $$[$0 - 2], right: $$[$0] };
                  break;
                case 10:
                  this.$ = { type: "EQ", left: $$[$0 - 2], right: $$[$0] };
                  break;
                case 11:
                  this.$ = { type: "MOD", left: $$[$0 - 2], right: $$[$0] };
                  break;
                case 12:
                  this.$ = { type: "GROUP", expr: $$[$0 - 1] };
                  break;
                case 13:
                  this.$ = { type: "VAR" };
                  break;
                case 14:
                  this.$ = { type: "NUM", val: Number(yytext) };
                  break;
              }
            },
            table: [{ 3: 1, 4: 2, 17: [1, 3], 19: [1, 4], 20: [1, 5] }, { 1: [3] }, { 5: [1, 6], 6: [1, 7], 8: [1, 8], 9: [1, 9], 10: [1, 10], 11: [1, 11], 12: [1, 12], 13: [1, 13], 14: [1, 14], 15: [1, 15], 16: [1, 16] }, { 4: 17, 17: [1, 3], 19: [1, 4], 20: [1, 5] }, { 5: [2, 13], 6: [2, 13], 7: [2, 13], 8: [2, 13], 9: [2, 13], 10: [2, 13], 11: [2, 13], 12: [2, 13], 13: [2, 13], 14: [2, 13], 15: [2, 13], 16: [2, 13], 18: [2, 13] }, { 5: [2, 14], 6: [2, 14], 7: [2, 14], 8: [2, 14], 9: [2, 14], 10: [2, 14], 11: [2, 14], 12: [2, 14], 13: [2, 14], 14: [2, 14], 15: [2, 14], 16: [2, 14], 18: [2, 14] }, { 1: [2, 1] }, { 4: 18, 17: [1, 3], 19: [1, 4], 20: [1, 5] }, { 4: 19, 17: [1, 3], 19: [1, 4], 20: [1, 5] }, { 4: 20, 17: [1, 3], 19: [1, 4], 20: [1, 5] }, { 4: 21, 17: [1, 3], 19: [1, 4], 20: [1, 5] }, { 4: 22, 17: [1, 3], 19: [1, 4], 20: [1, 5] }, { 4: 23, 17: [1, 3], 19: [1, 4], 20: [1, 5] }, { 4: 24, 17: [1, 3], 19: [1, 4], 20: [1, 5] }, { 4: 25, 17: [1, 3], 19: [1, 4], 20: [1, 5] }, { 4: 26, 17: [1, 3], 19: [1, 4], 20: [1, 5] }, { 4: 27, 17: [1, 3], 19: [1, 4], 20: [1, 5] }, { 6: [1, 7], 8: [1, 8], 9: [1, 9], 10: [1, 10], 11: [1, 11], 12: [1, 12], 13: [1, 13], 14: [1, 14], 15: [1, 15], 16: [1, 16], 18: [1, 28] }, { 6: [1, 7], 7: [1, 29], 8: [1, 8], 9: [1, 9], 10: [1, 10], 11: [1, 11], 12: [1, 12], 13: [1, 13], 14: [1, 14], 15: [1, 15], 16: [1, 16] }, { 5: [2, 3], 6: [2, 3], 7: [2, 3], 8: [2, 3], 9: [1, 9], 10: [1, 10], 11: [1, 11], 12: [1, 12], 13: [1, 13], 14: [1, 14], 15: [1, 15], 16: [1, 16], 18: [2, 3] }, { 5: [2, 4], 6: [2, 4], 7: [2, 4], 8: [2, 4], 9: [2, 4], 10: [1, 10], 11: [1, 11], 12: [1, 12], 13: [1, 13], 14: [1, 14], 15: [1, 15], 16: [1, 16], 18: [2, 4] }, { 5: [2, 5], 6: [2, 5], 7: [2, 5], 8: [2, 5], 9: [2, 5], 10: [2, 5], 11: [2, 5], 12: [2, 5], 13: [2, 5], 14: [2, 5], 15: [2, 5], 16: [1, 16], 18: [2, 5] }, { 5: [2, 6], 6: [2, 6], 7: [2, 6], 8: [2, 6], 9: [2, 6], 10: [2, 6], 11: [2, 6], 12: [2, 6], 13: [2, 6], 14: [2, 6], 15: [2, 6], 16: [1, 16], 18: [2, 6] }, { 5: [2, 7], 6: [2, 7], 7: [2, 7], 8: [2, 7], 9: [2, 7], 10: [2, 7], 11: [2, 7], 12: [2, 7], 13: [2, 7], 14: [2, 7], 15: [2, 7], 16: [1, 16], 18: [2, 7] }, { 5: [2, 8], 6: [2, 8], 7: [2, 8], 8: [2, 8], 9: [2, 8], 10: [2, 8], 11: [2, 8], 12: [2, 8], 13: [2, 8], 14: [2, 8], 15: [2, 8], 16: [1, 16], 18: [2, 8] }, { 5: [2, 9], 6: [2, 9], 7: [2, 9], 8: [2, 9], 9: [2, 9], 10: [2, 9], 11: [2, 9], 12: [2, 9], 13: [2, 9], 14: [2, 9], 15: [2, 9], 16: [1, 16], 18: [2, 9] }, { 5: [2, 10], 6: [2, 10], 7: [2, 10], 8: [2, 10], 9: [2, 10], 10: [2, 10], 11: [2, 10], 12: [2, 10], 13: [2, 10], 14: [2, 10], 15: [2, 10], 16: [1, 16], 18: [2, 10] }, { 5: [2, 11], 6: [2, 11], 7: [2, 11], 8: [2, 11], 9: [2, 11], 10: [2, 11], 11: [2, 11], 12: [2, 11], 13: [2, 11], 14: [2, 11], 15: [2, 11], 16: [2, 11], 18: [2, 11] }, { 5: [2, 12], 6: [2, 12], 7: [2, 12], 8: [2, 12], 9: [2, 12], 10: [2, 12], 11: [2, 12], 12: [2, 12], 13: [2, 12], 14: [2, 12], 15: [2, 12], 16: [2, 12], 18: [2, 12] }, { 4: 30, 17: [1, 3], 19: [1, 4], 20: [1, 5] }, { 5: [2, 2], 6: [1, 7], 7: [2, 2], 8: [1, 8], 9: [1, 9], 10: [1, 10], 11: [1, 11], 12: [1, 12], 13: [1, 13], 14: [1, 14], 15: [1, 15], 16: [1, 16], 18: [2, 2] }],
            defaultActions: { 6: [2, 1] },
            parseError: function parseError(str, hash) {
              throw new Error(str);
            },
            parse: function parse(input) {
              var self = this, stack = [0], vstack = [null], lstack = [], table = this.table, yytext = "", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1;
              this.lexer.setInput(input);
              this.lexer.yy = this.yy;
              this.yy.lexer = this.lexer;
              if (typeof this.lexer.yylloc == "undefined")
                this.lexer.yylloc = {};
              var yyloc = this.lexer.yylloc;
              lstack.push(yyloc);
              if (typeof this.yy.parseError === "function")
                this.parseError = this.yy.parseError;
              function popStack(n3) {
                stack.length = stack.length - 2 * n3;
                vstack.length = vstack.length - n3;
                lstack.length = lstack.length - n3;
              }
              function lex() {
                var token;
                token = self.lexer.lex() || 1;
                if (typeof token !== "number") {
                  token = self.symbols_[token] || token;
                }
                return token;
              }
              var symbol, preErrorSymbol, state, action, a6, r3, yyval = {}, p3, len, newState, expected;
              while (true) {
                state = stack[stack.length - 1];
                if (this.defaultActions[state]) {
                  action = this.defaultActions[state];
                } else {
                  if (symbol == null)
                    symbol = lex();
                  action = table[state] && table[state][symbol];
                }
                _handle_error:
                  if (typeof action === "undefined" || !action.length || !action[0]) {
                    if (!recovering) {
                      expected = [];
                      for (p3 in table[state]) if (this.terminals_[p3] && p3 > 2) {
                        expected.push("'" + this.terminals_[p3] + "'");
                      }
                      var errStr = "";
                      if (this.lexer.showPosition) {
                        errStr = "Parse error on line " + (yylineno + 1) + ":\n" + this.lexer.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + this.terminals_[symbol] + "'";
                      } else {
                        errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == 1 ? "end of input" : "'" + (this.terminals_[symbol] || symbol) + "'");
                      }
                      this.parseError(
                        errStr,
                        { text: this.lexer.match, token: this.terminals_[symbol] || symbol, line: this.lexer.yylineno, loc: yyloc, expected }
                      );
                    }
                    if (recovering == 3) {
                      if (symbol == EOF) {
                        throw new Error(errStr || "Parsing halted.");
                      }
                      yyleng = this.lexer.yyleng;
                      yytext = this.lexer.yytext;
                      yylineno = this.lexer.yylineno;
                      yyloc = this.lexer.yylloc;
                      symbol = lex();
                    }
                    while (1) {
                      if (TERROR.toString() in table[state]) {
                        break;
                      }
                      if (state == 0) {
                        throw new Error(errStr || "Parsing halted.");
                      }
                      popStack(1);
                      state = stack[stack.length - 1];
                    }
                    preErrorSymbol = symbol;
                    symbol = TERROR;
                    state = stack[stack.length - 1];
                    action = table[state] && table[state][TERROR];
                    recovering = 3;
                  }
                if (action[0] instanceof Array && action.length > 1) {
                  throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol);
                }
                switch (action[0]) {
                  case 1:
                    stack.push(symbol);
                    vstack.push(this.lexer.yytext);
                    lstack.push(this.lexer.yylloc);
                    stack.push(action[1]);
                    symbol = null;
                    if (!preErrorSymbol) {
                      yyleng = this.lexer.yyleng;
                      yytext = this.lexer.yytext;
                      yylineno = this.lexer.yylineno;
                      yyloc = this.lexer.yylloc;
                      if (recovering > 0)
                        recovering--;
                    } else {
                      symbol = preErrorSymbol;
                      preErrorSymbol = null;
                    }
                    break;
                  case 2:
                    len = this.productions_[action[1]][1];
                    yyval.$ = vstack[vstack.length - len];
                    yyval._$ = {
                      first_line: lstack[lstack.length - (len || 1)].first_line,
                      last_line: lstack[lstack.length - 1].last_line,
                      first_column: lstack[lstack.length - (len || 1)].first_column,
                      last_column: lstack[lstack.length - 1].last_column
                    };
                    r3 = this.performAction.call(yyval, yytext, yyleng, yylineno, this.yy, action[1], vstack, lstack);
                    if (typeof r3 !== "undefined") {
                      return r3;
                    }
                    if (len) {
                      stack = stack.slice(0, -1 * len * 2);
                      vstack = vstack.slice(0, -1 * len);
                      lstack = lstack.slice(0, -1 * len);
                    }
                    stack.push(this.productions_[action[1]][0]);
                    vstack.push(yyval.$);
                    lstack.push(yyval._$);
                    newState = table[stack[stack.length - 2]][stack[stack.length - 1]];
                    stack.push(newState);
                    break;
                  case 3:
                    return true;
                }
              }
              return true;
            }
          };
          var lexer = (function() {
            var lexer2 = {
              EOF: 1,
              parseError: function parseError(str, hash) {
                if (this.yy.parseError) {
                  this.yy.parseError(str, hash);
                } else {
                  throw new Error(str);
                }
              },
              setInput: function(input) {
                this._input = input;
                this._more = this._less = this.done = false;
                this.yylineno = this.yyleng = 0;
                this.yytext = this.matched = this.match = "";
                this.conditionStack = ["INITIAL"];
                this.yylloc = { first_line: 1, first_column: 0, last_line: 1, last_column: 0 };
                return this;
              },
              input: function() {
                var ch = this._input[0];
                this.yytext += ch;
                this.yyleng++;
                this.match += ch;
                this.matched += ch;
                var lines = ch.match(/\n/);
                if (lines) this.yylineno++;
                this._input = this._input.slice(1);
                return ch;
              },
              unput: function(ch) {
                this._input = ch + this._input;
                return this;
              },
              more: function() {
                this._more = true;
                return this;
              },
              pastInput: function() {
                var past = this.matched.substr(0, this.matched.length - this.match.length);
                return (past.length > 20 ? "..." : "") + past.substr(-20).replace(/\n/g, "");
              },
              upcomingInput: function() {
                var next = this.match;
                if (next.length < 20) {
                  next += this._input.substr(0, 20 - next.length);
                }
                return (next.substr(0, 20) + (next.length > 20 ? "..." : "")).replace(/\n/g, "");
              },
              showPosition: function() {
                var pre = this.pastInput();
                var c5 = new Array(pre.length + 1).join("-");
                return pre + this.upcomingInput() + "\n" + c5 + "^";
              },
              next: function() {
                if (this.done) {
                  return this.EOF;
                }
                if (!this._input) this.done = true;
                var token, match5, col, lines;
                if (!this._more) {
                  this.yytext = "";
                  this.match = "";
                }
                var rules = this._currentRules();
                for (var i5 = 0; i5 < rules.length; i5++) {
                  match5 = this._input.match(this.rules[rules[i5]]);
                  if (match5) {
                    lines = match5[0].match(/\n.*/g);
                    if (lines) this.yylineno += lines.length;
                    this.yylloc = {
                      first_line: this.yylloc.last_line,
                      last_line: this.yylineno + 1,
                      first_column: this.yylloc.last_column,
                      last_column: lines ? lines[lines.length - 1].length - 1 : this.yylloc.last_column + match5[0].length
                    };
                    this.yytext += match5[0];
                    this.match += match5[0];
                    this.matches = match5;
                    this.yyleng = this.yytext.length;
                    this._more = false;
                    this._input = this._input.slice(match5[0].length);
                    this.matched += match5[0];
                    token = this.performAction.call(this, this.yy, this, rules[i5], this.conditionStack[this.conditionStack.length - 1]);
                    if (token) return token;
                    else return;
                  }
                }
                if (this._input === "") {
                  return this.EOF;
                } else {
                  this.parseError(
                    "Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(),
                    { text: "", token: null, line: this.yylineno }
                  );
                }
              },
              lex: function lex() {
                var r3 = this.next();
                if (typeof r3 !== "undefined") {
                  return r3;
                } else {
                  return this.lex();
                }
              },
              begin: function begin(condition) {
                this.conditionStack.push(condition);
              },
              popState: function popState() {
                return this.conditionStack.pop();
              },
              _currentRules: function _currentRules() {
                return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules;
              },
              topState: function() {
                return this.conditionStack[this.conditionStack.length - 2];
              },
              pushState: function begin(condition) {
                this.begin(condition);
              }
            };
            lexer2.performAction = function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) {
              var YYSTATE = YY_START;
              switch ($avoiding_name_collisions) {
                case 0:
                  break;
                case 1:
                  return 20;
                  break;
                case 2:
                  return 19;
                  break;
                case 3:
                  return 8;
                  break;
                case 4:
                  return 9;
                  break;
                case 5:
                  return 6;
                  break;
                case 6:
                  return 7;
                  break;
                case 7:
                  return 11;
                  break;
                case 8:
                  return 13;
                  break;
                case 9:
                  return 10;
                  break;
                case 10:
                  return 12;
                  break;
                case 11:
                  return 14;
                  break;
                case 12:
                  return 15;
                  break;
                case 13:
                  return 16;
                  break;
                case 14:
                  return 17;
                  break;
                case 15:
                  return 18;
                  break;
                case 16:
                  return 5;
                  break;
                case 17:
                  return "INVALID";
                  break;
              }
            };
            lexer2.rules = [/^\s+/, /^[0-9]+(\.[0-9]+)?\b/, /^n\b/, /^\|\|/, /^&&/, /^\?/, /^:/, /^<=/, /^>=/, /^</, /^>/, /^!=/, /^==/, /^%/, /^\(/, /^\)/, /^$/, /^./];
            lexer2.conditions = { "INITIAL": { "rules": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], "inclusive": true } };
            return lexer2;
          })();
          parser.lexer = lexer;
          return parser;
        })();
        if (typeof exports !== "undefined") {
          if (typeof module !== "undefined" && module.exports) {
            exports = module.exports = Jed2;
          }
          exports.Jed = Jed2;
        } else {
          if (typeof define === "function" && define.amd) {
            define(function() {
              return Jed2;
            });
          }
          root["Jed"] = Jed2;
        }
      })(exports);
    }
  });

  // src/pages/ShowOrderDetails.tsx
  var ShowOrderDetails_exports = {};
  __export(ShowOrderDetails_exports, {
    ShowOrderDetails: () => ShowOrderDetails,
    buildTimeRendering: () => buildTimeRendering,
    mount: () => mount
  });

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/toInteger/index.js
  function toInteger(dirtyNumber) {
    if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) {
      return NaN;
    }
    var number = Number(dirtyNumber);
    if (isNaN(number)) {
      return number;
    }
    return number < 0 ? Math.ceil(number) : Math.floor(number);
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/requiredArgs/index.js
  function requiredArgs(required, args) {
    if (args.length < required) {
      throw new TypeError(required + " argument" + (required > 1 ? "s" : "") + " required, but only " + args.length + " present");
    }
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/toDate/index.js
  function _typeof(obj) {
    "@babel/helpers - typeof";
    if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
      _typeof = function _typeof4(obj2) {
        return typeof obj2;
      };
    } else {
      _typeof = function _typeof4(obj2) {
        return obj2 && typeof Symbol === "function" && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2;
      };
    }
    return _typeof(obj);
  }
  function toDate(argument) {
    requiredArgs(1, arguments);
    var argStr = Object.prototype.toString.call(argument);
    if (argument instanceof Date || _typeof(argument) === "object" && argStr === "[object Date]") {
      return new Date(argument.getTime());
    } else if (typeof argument === "number" || argStr === "[object Number]") {
      return new Date(argument);
    } else {
      if ((typeof argument === "string" || argStr === "[object String]") && typeof console !== "undefined") {
        console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments");
        console.warn(new Error().stack);
      }
      return /* @__PURE__ */ new Date(NaN);
    }
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/addDays/index.js
  function addDays(dirtyDate, dirtyAmount) {
    requiredArgs(2, arguments);
    var date = toDate(dirtyDate);
    var amount = toInteger(dirtyAmount);
    if (isNaN(amount)) {
      return /* @__PURE__ */ new Date(NaN);
    }
    if (!amount) {
      return date;
    }
    date.setDate(date.getDate() + amount);
    return date;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/addMonths/index.js
  function addMonths(dirtyDate, dirtyAmount) {
    requiredArgs(2, arguments);
    var date = toDate(dirtyDate);
    var amount = toInteger(dirtyAmount);
    if (isNaN(amount)) {
      return /* @__PURE__ */ new Date(NaN);
    }
    if (!amount) {
      return date;
    }
    var dayOfMonth = date.getDate();
    var endOfDesiredMonth = new Date(date.getTime());
    endOfDesiredMonth.setMonth(date.getMonth() + amount + 1, 0);
    var daysInMonth = endOfDesiredMonth.getDate();
    if (dayOfMonth >= daysInMonth) {
      return endOfDesiredMonth;
    } else {
      date.setFullYear(endOfDesiredMonth.getFullYear(), endOfDesiredMonth.getMonth(), dayOfMonth);
      return date;
    }
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/add/index.js
  function _typeof2(obj) {
    "@babel/helpers - typeof";
    if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
      _typeof2 = function _typeof4(obj2) {
        return typeof obj2;
      };
    } else {
      _typeof2 = function _typeof4(obj2) {
        return obj2 && typeof Symbol === "function" && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2;
      };
    }
    return _typeof2(obj);
  }
  function add(dirtyDate, duration) {
    requiredArgs(2, arguments);
    if (!duration || _typeof2(duration) !== "object") return /* @__PURE__ */ new Date(NaN);
    var years = duration.years ? toInteger(duration.years) : 0;
    var months = duration.months ? toInteger(duration.months) : 0;
    var weeks = duration.weeks ? toInteger(duration.weeks) : 0;
    var days = duration.days ? toInteger(duration.days) : 0;
    var hours = duration.hours ? toInteger(duration.hours) : 0;
    var minutes = duration.minutes ? toInteger(duration.minutes) : 0;
    var seconds = duration.seconds ? toInteger(duration.seconds) : 0;
    var date = toDate(dirtyDate);
    var dateWithMonths = months || years ? addMonths(date, months + years * 12) : date;
    var dateWithDays = days || weeks ? addDays(dateWithMonths, days + weeks * 7) : dateWithMonths;
    var minutesToAdd = minutes + hours * 60;
    var secondsToAdd = seconds + minutesToAdd * 60;
    var msToAdd = secondsToAdd * 1e3;
    var finalDate = new Date(dateWithDays.getTime() + msToAdd);
    return finalDate;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/addMilliseconds/index.js
  function addMilliseconds(dirtyDate, dirtyAmount) {
    requiredArgs(2, arguments);
    var timestamp = toDate(dirtyDate).getTime();
    var amount = toInteger(dirtyAmount);
    return new Date(timestamp + amount);
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/defaultOptions/index.js
  var defaultOptions = {};
  function getDefaultOptions() {
    return defaultOptions;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/getTimezoneOffsetInMilliseconds/index.js
  function getTimezoneOffsetInMilliseconds(date) {
    var utcDate = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds()));
    utcDate.setUTCFullYear(date.getFullYear());
    return date.getTime() - utcDate.getTime();
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/startOfDay/index.js
  function startOfDay(dirtyDate) {
    requiredArgs(1, arguments);
    var date = toDate(dirtyDate);
    date.setHours(0, 0, 0, 0);
    return date;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/differenceInCalendarDays/index.js
  var MILLISECONDS_IN_DAY = 864e5;
  function differenceInCalendarDays(dirtyDateLeft, dirtyDateRight) {
    requiredArgs(2, arguments);
    var startOfDayLeft = startOfDay(dirtyDateLeft);
    var startOfDayRight = startOfDay(dirtyDateRight);
    var timestampLeft = startOfDayLeft.getTime() - getTimezoneOffsetInMilliseconds(startOfDayLeft);
    var timestampRight = startOfDayRight.getTime() - getTimezoneOffsetInMilliseconds(startOfDayRight);
    return Math.round((timestampLeft - timestampRight) / MILLISECONDS_IN_DAY);
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/compareAsc/index.js
  function compareAsc(dirtyDateLeft, dirtyDateRight) {
    requiredArgs(2, arguments);
    var dateLeft = toDate(dirtyDateLeft);
    var dateRight = toDate(dirtyDateRight);
    var diff = dateLeft.getTime() - dateRight.getTime();
    if (diff < 0) {
      return -1;
    } else if (diff > 0) {
      return 1;
    } else {
      return diff;
    }
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/constants/index.js
  var daysInYear = 365.2425;
  var maxTime = Math.pow(10, 8) * 24 * 60 * 60 * 1e3;
  var millisecondsInMinute = 6e4;
  var millisecondsInHour = 36e5;
  var minTime = -maxTime;
  var secondsInHour = 3600;
  var secondsInDay = secondsInHour * 24;
  var secondsInWeek = secondsInDay * 7;
  var secondsInYear = secondsInDay * daysInYear;
  var secondsInMonth = secondsInYear / 12;
  var secondsInQuarter = secondsInMonth * 3;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/isDate/index.js
  function _typeof3(obj) {
    "@babel/helpers - typeof";
    if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
      _typeof3 = function _typeof4(obj2) {
        return typeof obj2;
      };
    } else {
      _typeof3 = function _typeof4(obj2) {
        return obj2 && typeof Symbol === "function" && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2;
      };
    }
    return _typeof3(obj);
  }
  function isDate(value) {
    requiredArgs(1, arguments);
    return value instanceof Date || _typeof3(value) === "object" && Object.prototype.toString.call(value) === "[object Date]";
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/isValid/index.js
  function isValid(dirtyDate) {
    requiredArgs(1, arguments);
    if (!isDate(dirtyDate) && typeof dirtyDate !== "number") {
      return false;
    }
    var date = toDate(dirtyDate);
    return !isNaN(Number(date));
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/differenceInCalendarMonths/index.js
  function differenceInCalendarMonths(dirtyDateLeft, dirtyDateRight) {
    requiredArgs(2, arguments);
    var dateLeft = toDate(dirtyDateLeft);
    var dateRight = toDate(dirtyDateRight);
    var yearDiff = dateLeft.getFullYear() - dateRight.getFullYear();
    var monthDiff = dateLeft.getMonth() - dateRight.getMonth();
    return yearDiff * 12 + monthDiff;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/differenceInCalendarYears/index.js
  function differenceInCalendarYears(dirtyDateLeft, dirtyDateRight) {
    requiredArgs(2, arguments);
    var dateLeft = toDate(dirtyDateLeft);
    var dateRight = toDate(dirtyDateRight);
    return dateLeft.getFullYear() - dateRight.getFullYear();
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/differenceInDays/index.js
  function compareLocalAsc(dateLeft, dateRight) {
    var diff = dateLeft.getFullYear() - dateRight.getFullYear() || dateLeft.getMonth() - dateRight.getMonth() || dateLeft.getDate() - dateRight.getDate() || dateLeft.getHours() - dateRight.getHours() || dateLeft.getMinutes() - dateRight.getMinutes() || dateLeft.getSeconds() - dateRight.getSeconds() || dateLeft.getMilliseconds() - dateRight.getMilliseconds();
    if (diff < 0) {
      return -1;
    } else if (diff > 0) {
      return 1;
    } else {
      return diff;
    }
  }
  function differenceInDays(dirtyDateLeft, dirtyDateRight) {
    requiredArgs(2, arguments);
    var dateLeft = toDate(dirtyDateLeft);
    var dateRight = toDate(dirtyDateRight);
    var sign = compareLocalAsc(dateLeft, dateRight);
    var difference = Math.abs(differenceInCalendarDays(dateLeft, dateRight));
    dateLeft.setDate(dateLeft.getDate() - sign * difference);
    var isLastDayNotFull = Number(compareLocalAsc(dateLeft, dateRight) === -sign);
    var result = sign * (difference - isLastDayNotFull);
    return result === 0 ? 0 : result;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/differenceInMilliseconds/index.js
  function differenceInMilliseconds(dateLeft, dateRight) {
    requiredArgs(2, arguments);
    return toDate(dateLeft).getTime() - toDate(dateRight).getTime();
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/roundingMethods/index.js
  var roundingMap = {
    ceil: Math.ceil,
    round: Math.round,
    floor: Math.floor,
    trunc: function trunc(value) {
      return value < 0 ? Math.ceil(value) : Math.floor(value);
    }
    // Math.trunc is not supported by IE
  };
  var defaultRoundingMethod = "trunc";
  function getRoundingMethod(method) {
    return method ? roundingMap[method] : roundingMap[defaultRoundingMethod];
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/differenceInHours/index.js
  function differenceInHours(dateLeft, dateRight, options) {
    requiredArgs(2, arguments);
    var diff = differenceInMilliseconds(dateLeft, dateRight) / millisecondsInHour;
    return getRoundingMethod(options === null || options === void 0 ? void 0 : options.roundingMethod)(diff);
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/differenceInMinutes/index.js
  function differenceInMinutes(dateLeft, dateRight, options) {
    requiredArgs(2, arguments);
    var diff = differenceInMilliseconds(dateLeft, dateRight) / millisecondsInMinute;
    return getRoundingMethod(options === null || options === void 0 ? void 0 : options.roundingMethod)(diff);
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/endOfDay/index.js
  function endOfDay(dirtyDate) {
    requiredArgs(1, arguments);
    var date = toDate(dirtyDate);
    date.setHours(23, 59, 59, 999);
    return date;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/endOfMonth/index.js
  function endOfMonth(dirtyDate) {
    requiredArgs(1, arguments);
    var date = toDate(dirtyDate);
    var month = date.getMonth();
    date.setFullYear(date.getFullYear(), month + 1, 0);
    date.setHours(23, 59, 59, 999);
    return date;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/isLastDayOfMonth/index.js
  function isLastDayOfMonth(dirtyDate) {
    requiredArgs(1, arguments);
    var date = toDate(dirtyDate);
    return endOfDay(date).getTime() === endOfMonth(date).getTime();
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/differenceInMonths/index.js
  function differenceInMonths(dirtyDateLeft, dirtyDateRight) {
    requiredArgs(2, arguments);
    var dateLeft = toDate(dirtyDateLeft);
    var dateRight = toDate(dirtyDateRight);
    var sign = compareAsc(dateLeft, dateRight);
    var difference = Math.abs(differenceInCalendarMonths(dateLeft, dateRight));
    var result;
    if (difference < 1) {
      result = 0;
    } else {
      if (dateLeft.getMonth() === 1 && dateLeft.getDate() > 27) {
        dateLeft.setDate(30);
      }
      dateLeft.setMonth(dateLeft.getMonth() - sign * difference);
      var isLastMonthNotFull = compareAsc(dateLeft, dateRight) === -sign;
      if (isLastDayOfMonth(toDate(dirtyDateLeft)) && difference === 1 && compareAsc(dirtyDateLeft, dateRight) === 1) {
        isLastMonthNotFull = false;
      }
      result = sign * (difference - Number(isLastMonthNotFull));
    }
    return result === 0 ? 0 : result;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/differenceInSeconds/index.js
  function differenceInSeconds(dateLeft, dateRight, options) {
    requiredArgs(2, arguments);
    var diff = differenceInMilliseconds(dateLeft, dateRight) / 1e3;
    return getRoundingMethod(options === null || options === void 0 ? void 0 : options.roundingMethod)(diff);
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/differenceInYears/index.js
  function differenceInYears(dirtyDateLeft, dirtyDateRight) {
    requiredArgs(2, arguments);
    var dateLeft = toDate(dirtyDateLeft);
    var dateRight = toDate(dirtyDateRight);
    var sign = compareAsc(dateLeft, dateRight);
    var difference = Math.abs(differenceInCalendarYears(dateLeft, dateRight));
    dateLeft.setFullYear(1584);
    dateRight.setFullYear(1584);
    var isLastYearNotFull = compareAsc(dateLeft, dateRight) === -sign;
    var result = sign * (difference - Number(isLastYearNotFull));
    return result === 0 ? 0 : result;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/subMilliseconds/index.js
  function subMilliseconds(dirtyDate, dirtyAmount) {
    requiredArgs(2, arguments);
    var amount = toInteger(dirtyAmount);
    return addMilliseconds(dirtyDate, -amount);
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/getUTCDayOfYear/index.js
  var MILLISECONDS_IN_DAY2 = 864e5;
  function getUTCDayOfYear(dirtyDate) {
    requiredArgs(1, arguments);
    var date = toDate(dirtyDate);
    var timestamp = date.getTime();
    date.setUTCMonth(0, 1);
    date.setUTCHours(0, 0, 0, 0);
    var startOfYearTimestamp = date.getTime();
    var difference = timestamp - startOfYearTimestamp;
    return Math.floor(difference / MILLISECONDS_IN_DAY2) + 1;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/startOfUTCISOWeek/index.js
  function startOfUTCISOWeek(dirtyDate) {
    requiredArgs(1, arguments);
    var weekStartsOn = 1;
    var date = toDate(dirtyDate);
    var day = date.getUTCDay();
    var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
    date.setUTCDate(date.getUTCDate() - diff);
    date.setUTCHours(0, 0, 0, 0);
    return date;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/getUTCISOWeekYear/index.js
  function getUTCISOWeekYear(dirtyDate) {
    requiredArgs(1, arguments);
    var date = toDate(dirtyDate);
    var year = date.getUTCFullYear();
    var fourthOfJanuaryOfNextYear = /* @__PURE__ */ new Date(0);
    fourthOfJanuaryOfNextYear.setUTCFullYear(year + 1, 0, 4);
    fourthOfJanuaryOfNextYear.setUTCHours(0, 0, 0, 0);
    var startOfNextYear = startOfUTCISOWeek(fourthOfJanuaryOfNextYear);
    var fourthOfJanuaryOfThisYear = /* @__PURE__ */ new Date(0);
    fourthOfJanuaryOfThisYear.setUTCFullYear(year, 0, 4);
    fourthOfJanuaryOfThisYear.setUTCHours(0, 0, 0, 0);
    var startOfThisYear = startOfUTCISOWeek(fourthOfJanuaryOfThisYear);
    if (date.getTime() >= startOfNextYear.getTime()) {
      return year + 1;
    } else if (date.getTime() >= startOfThisYear.getTime()) {
      return year;
    } else {
      return year - 1;
    }
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/startOfUTCISOWeekYear/index.js
  function startOfUTCISOWeekYear(dirtyDate) {
    requiredArgs(1, arguments);
    var year = getUTCISOWeekYear(dirtyDate);
    var fourthOfJanuary = /* @__PURE__ */ new Date(0);
    fourthOfJanuary.setUTCFullYear(year, 0, 4);
    fourthOfJanuary.setUTCHours(0, 0, 0, 0);
    var date = startOfUTCISOWeek(fourthOfJanuary);
    return date;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/getUTCISOWeek/index.js
  var MILLISECONDS_IN_WEEK = 6048e5;
  function getUTCISOWeek(dirtyDate) {
    requiredArgs(1, arguments);
    var date = toDate(dirtyDate);
    var diff = startOfUTCISOWeek(date).getTime() - startOfUTCISOWeekYear(date).getTime();
    return Math.round(diff / MILLISECONDS_IN_WEEK) + 1;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/startOfUTCWeek/index.js
  function startOfUTCWeek(dirtyDate, options) {
    var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2;
    requiredArgs(1, arguments);
    var defaultOptions2 = getDefaultOptions();
    var weekStartsOn = toInteger((_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options === null || options === void 0 ? void 0 : (_options$locale = options.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions2.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions2.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0);
    if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {
      throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");
    }
    var date = toDate(dirtyDate);
    var day = date.getUTCDay();
    var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
    date.setUTCDate(date.getUTCDate() - diff);
    date.setUTCHours(0, 0, 0, 0);
    return date;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/getUTCWeekYear/index.js
  function getUTCWeekYear(dirtyDate, options) {
    var _ref, _ref2, _ref3, _options$firstWeekCon, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2;
    requiredArgs(1, arguments);
    var date = toDate(dirtyDate);
    var year = date.getUTCFullYear();
    var defaultOptions2 = getDefaultOptions();
    var firstWeekContainsDate = toInteger((_ref = (_ref2 = (_ref3 = (_options$firstWeekCon = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options === null || options === void 0 ? void 0 : (_options$locale = options.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions2.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions2.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref !== void 0 ? _ref : 1);
    if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {
      throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");
    }
    var firstWeekOfNextYear = /* @__PURE__ */ new Date(0);
    firstWeekOfNextYear.setUTCFullYear(year + 1, 0, firstWeekContainsDate);
    firstWeekOfNextYear.setUTCHours(0, 0, 0, 0);
    var startOfNextYear = startOfUTCWeek(firstWeekOfNextYear, options);
    var firstWeekOfThisYear = /* @__PURE__ */ new Date(0);
    firstWeekOfThisYear.setUTCFullYear(year, 0, firstWeekContainsDate);
    firstWeekOfThisYear.setUTCHours(0, 0, 0, 0);
    var startOfThisYear = startOfUTCWeek(firstWeekOfThisYear, options);
    if (date.getTime() >= startOfNextYear.getTime()) {
      return year + 1;
    } else if (date.getTime() >= startOfThisYear.getTime()) {
      return year;
    } else {
      return year - 1;
    }
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/startOfUTCWeekYear/index.js
  function startOfUTCWeekYear(dirtyDate, options) {
    var _ref, _ref2, _ref3, _options$firstWeekCon, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2;
    requiredArgs(1, arguments);
    var defaultOptions2 = getDefaultOptions();
    var firstWeekContainsDate = toInteger((_ref = (_ref2 = (_ref3 = (_options$firstWeekCon = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options === null || options === void 0 ? void 0 : (_options$locale = options.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions2.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions2.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref !== void 0 ? _ref : 1);
    var year = getUTCWeekYear(dirtyDate, options);
    var firstWeek = /* @__PURE__ */ new Date(0);
    firstWeek.setUTCFullYear(year, 0, firstWeekContainsDate);
    firstWeek.setUTCHours(0, 0, 0, 0);
    var date = startOfUTCWeek(firstWeek, options);
    return date;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/getUTCWeek/index.js
  var MILLISECONDS_IN_WEEK2 = 6048e5;
  function getUTCWeek(dirtyDate, options) {
    requiredArgs(1, arguments);
    var date = toDate(dirtyDate);
    var diff = startOfUTCWeek(date, options).getTime() - startOfUTCWeekYear(date, options).getTime();
    return Math.round(diff / MILLISECONDS_IN_WEEK2) + 1;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/addLeadingZeros/index.js
  function addLeadingZeros(number, targetLength) {
    var sign = number < 0 ? "-" : "";
    var output = Math.abs(number).toString();
    while (output.length < targetLength) {
      output = "0" + output;
    }
    return sign + output;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/format/lightFormatters/index.js
  var formatters = {
    // Year
    y: function y(date, token) {
      var signedYear = date.getUTCFullYear();
      var year = signedYear > 0 ? signedYear : 1 - signedYear;
      return addLeadingZeros(token === "yy" ? year % 100 : year, token.length);
    },
    // Month
    M: function M(date, token) {
      var month = date.getUTCMonth();
      return token === "M" ? String(month + 1) : addLeadingZeros(month + 1, 2);
    },
    // Day of the month
    d: function d(date, token) {
      return addLeadingZeros(date.getUTCDate(), token.length);
    },
    // AM or PM
    a: function a(date, token) {
      var dayPeriodEnumValue = date.getUTCHours() / 12 >= 1 ? "pm" : "am";
      switch (token) {
        case "a":
        case "aa":
          return dayPeriodEnumValue.toUpperCase();
        case "aaa":
          return dayPeriodEnumValue;
        case "aaaaa":
          return dayPeriodEnumValue[0];
        case "aaaa":
        default:
          return dayPeriodEnumValue === "am" ? "a.m." : "p.m.";
      }
    },
    // Hour [1-12]
    h: function h(date, token) {
      return addLeadingZeros(date.getUTCHours() % 12 || 12, token.length);
    },
    // Hour [0-23]
    H: function H(date, token) {
      return addLeadingZeros(date.getUTCHours(), token.length);
    },
    // Minute
    m: function m(date, token) {
      return addLeadingZeros(date.getUTCMinutes(), token.length);
    },
    // Second
    s: function s(date, token) {
      return addLeadingZeros(date.getUTCSeconds(), token.length);
    },
    // Fraction of second
    S: function S(date, token) {
      var numberOfDigits = token.length;
      var milliseconds = date.getUTCMilliseconds();
      var fractionalSeconds = Math.floor(milliseconds * Math.pow(10, numberOfDigits - 3));
      return addLeadingZeros(fractionalSeconds, token.length);
    }
  };
  var lightFormatters_default = formatters;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/format/formatters/index.js
  var dayPeriodEnum = {
    am: "am",
    pm: "pm",
    midnight: "midnight",
    noon: "noon",
    morning: "morning",
    afternoon: "afternoon",
    evening: "evening",
    night: "night"
  };
  var formatters2 = {
    // Era
    G: function G(date, token, localize5) {
      var era = date.getUTCFullYear() > 0 ? 1 : 0;
      switch (token) {
        // AD, BC
        case "G":
        case "GG":
        case "GGG":
          return localize5.era(era, {
            width: "abbreviated"
          });
        // A, B
        case "GGGGG":
          return localize5.era(era, {
            width: "narrow"
          });
        // Anno Domini, Before Christ
        case "GGGG":
        default:
          return localize5.era(era, {
            width: "wide"
          });
      }
    },
    // Year
    y: function y2(date, token, localize5) {
      if (token === "yo") {
        var signedYear = date.getUTCFullYear();
        var year = signedYear > 0 ? signedYear : 1 - signedYear;
        return localize5.ordinalNumber(year, {
          unit: "year"
        });
      }
      return lightFormatters_default.y(date, token);
    },
    // Local week-numbering year
    Y: function Y(date, token, localize5, options) {
      var signedWeekYear = getUTCWeekYear(date, options);
      var weekYear = signedWeekYear > 0 ? signedWeekYear : 1 - signedWeekYear;
      if (token === "YY") {
        var twoDigitYear = weekYear % 100;
        return addLeadingZeros(twoDigitYear, 2);
      }
      if (token === "Yo") {
        return localize5.ordinalNumber(weekYear, {
          unit: "year"
        });
      }
      return addLeadingZeros(weekYear, token.length);
    },
    // ISO week-numbering year
    R: function R(date, token) {
      var isoWeekYear = getUTCISOWeekYear(date);
      return addLeadingZeros(isoWeekYear, token.length);
    },
    // Extended year. This is a single number designating the year of this calendar system.
    // The main difference between `y` and `u` localizers are B.C. years:
    // | Year | `y` | `u` |
    // |------|-----|-----|
    // | AC 1 |   1 |   1 |
    // | BC 1 |   1 |   0 |
    // | BC 2 |   2 |  -1 |
    // Also `yy` always returns the last two digits of a year,
    // while `uu` pads single digit years to 2 characters and returns other years unchanged.
    u: function u(date, token) {
      var year = date.getUTCFullYear();
      return addLeadingZeros(year, token.length);
    },
    // Quarter
    Q: function Q(date, token, localize5) {
      var quarter = Math.ceil((date.getUTCMonth() + 1) / 3);
      switch (token) {
        // 1, 2, 3, 4
        case "Q":
          return String(quarter);
        // 01, 02, 03, 04
        case "QQ":
          return addLeadingZeros(quarter, 2);
        // 1st, 2nd, 3rd, 4th
        case "Qo":
          return localize5.ordinalNumber(quarter, {
            unit: "quarter"
          });
        // Q1, Q2, Q3, Q4
        case "QQQ":
          return localize5.quarter(quarter, {
            width: "abbreviated",
            context: "formatting"
          });
        // 1, 2, 3, 4 (narrow quarter; could be not numerical)
        case "QQQQQ":
          return localize5.quarter(quarter, {
            width: "narrow",
            context: "formatting"
          });
        // 1st quarter, 2nd quarter, ...
        case "QQQQ":
        default:
          return localize5.quarter(quarter, {
            width: "wide",
            context: "formatting"
          });
      }
    },
    // Stand-alone quarter
    q: function q(date, token, localize5) {
      var quarter = Math.ceil((date.getUTCMonth() + 1) / 3);
      switch (token) {
        // 1, 2, 3, 4
        case "q":
          return String(quarter);
        // 01, 02, 03, 04
        case "qq":
          return addLeadingZeros(quarter, 2);
        // 1st, 2nd, 3rd, 4th
        case "qo":
          return localize5.ordinalNumber(quarter, {
            unit: "quarter"
          });
        // Q1, Q2, Q3, Q4
        case "qqq":
          return localize5.quarter(quarter, {
            width: "abbreviated",
            context: "standalone"
          });
        // 1, 2, 3, 4 (narrow quarter; could be not numerical)
        case "qqqqq":
          return localize5.quarter(quarter, {
            width: "narrow",
            context: "standalone"
          });
        // 1st quarter, 2nd quarter, ...
        case "qqqq":
        default:
          return localize5.quarter(quarter, {
            width: "wide",
            context: "standalone"
          });
      }
    },
    // Month
    M: function M2(date, token, localize5) {
      var month = date.getUTCMonth();
      switch (token) {
        case "M":
        case "MM":
          return lightFormatters_default.M(date, token);
        // 1st, 2nd, ..., 12th
        case "Mo":
          return localize5.ordinalNumber(month + 1, {
            unit: "month"
          });
        // Jan, Feb, ..., Dec
        case "MMM":
          return localize5.month(month, {
            width: "abbreviated",
            context: "formatting"
          });
        // J, F, ..., D
        case "MMMMM":
          return localize5.month(month, {
            width: "narrow",
            context: "formatting"
          });
        // January, February, ..., December
        case "MMMM":
        default:
          return localize5.month(month, {
            width: "wide",
            context: "formatting"
          });
      }
    },
    // Stand-alone month
    L: function L(date, token, localize5) {
      var month = date.getUTCMonth();
      switch (token) {
        // 1, 2, ..., 12
        case "L":
          return String(month + 1);
        // 01, 02, ..., 12
        case "LL":
          return addLeadingZeros(month + 1, 2);
        // 1st, 2nd, ..., 12th
        case "Lo":
          return localize5.ordinalNumber(month + 1, {
            unit: "month"
          });
        // Jan, Feb, ..., Dec
        case "LLL":
          return localize5.month(month, {
            width: "abbreviated",
            context: "standalone"
          });
        // J, F, ..., D
        case "LLLLL":
          return localize5.month(month, {
            width: "narrow",
            context: "standalone"
          });
        // January, February, ..., December
        case "LLLL":
        default:
          return localize5.month(month, {
            width: "wide",
            context: "standalone"
          });
      }
    },
    // Local week of year
    w: function w(date, token, localize5, options) {
      var week = getUTCWeek(date, options);
      if (token === "wo") {
        return localize5.ordinalNumber(week, {
          unit: "week"
        });
      }
      return addLeadingZeros(week, token.length);
    },
    // ISO week of year
    I: function I(date, token, localize5) {
      var isoWeek = getUTCISOWeek(date);
      if (token === "Io") {
        return localize5.ordinalNumber(isoWeek, {
          unit: "week"
        });
      }
      return addLeadingZeros(isoWeek, token.length);
    },
    // Day of the month
    d: function d2(date, token, localize5) {
      if (token === "do") {
        return localize5.ordinalNumber(date.getUTCDate(), {
          unit: "date"
        });
      }
      return lightFormatters_default.d(date, token);
    },
    // Day of year
    D: function D(date, token, localize5) {
      var dayOfYear = getUTCDayOfYear(date);
      if (token === "Do") {
        return localize5.ordinalNumber(dayOfYear, {
          unit: "dayOfYear"
        });
      }
      return addLeadingZeros(dayOfYear, token.length);
    },
    // Day of week
    E: function E(date, token, localize5) {
      var dayOfWeek = date.getUTCDay();
      switch (token) {
        // Tue
        case "E":
        case "EE":
        case "EEE":
          return localize5.day(dayOfWeek, {
            width: "abbreviated",
            context: "formatting"
          });
        // T
        case "EEEEE":
          return localize5.day(dayOfWeek, {
            width: "narrow",
            context: "formatting"
          });
        // Tu
        case "EEEEEE":
          return localize5.day(dayOfWeek, {
            width: "short",
            context: "formatting"
          });
        // Tuesday
        case "EEEE":
        default:
          return localize5.day(dayOfWeek, {
            width: "wide",
            context: "formatting"
          });
      }
    },
    // Local day of week
    e: function e(date, token, localize5, options) {
      var dayOfWeek = date.getUTCDay();
      var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;
      switch (token) {
        // Numerical value (Nth day of week with current locale or weekStartsOn)
        case "e":
          return String(localDayOfWeek);
        // Padded numerical value
        case "ee":
          return addLeadingZeros(localDayOfWeek, 2);
        // 1st, 2nd, ..., 7th
        case "eo":
          return localize5.ordinalNumber(localDayOfWeek, {
            unit: "day"
          });
        case "eee":
          return localize5.day(dayOfWeek, {
            width: "abbreviated",
            context: "formatting"
          });
        // T
        case "eeeee":
          return localize5.day(dayOfWeek, {
            width: "narrow",
            context: "formatting"
          });
        // Tu
        case "eeeeee":
          return localize5.day(dayOfWeek, {
            width: "short",
            context: "formatting"
          });
        // Tuesday
        case "eeee":
        default:
          return localize5.day(dayOfWeek, {
            width: "wide",
            context: "formatting"
          });
      }
    },
    // Stand-alone local day of week
    c: function c(date, token, localize5, options) {
      var dayOfWeek = date.getUTCDay();
      var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;
      switch (token) {
        // Numerical value (same as in `e`)
        case "c":
          return String(localDayOfWeek);
        // Padded numerical value
        case "cc":
          return addLeadingZeros(localDayOfWeek, token.length);
        // 1st, 2nd, ..., 7th
        case "co":
          return localize5.ordinalNumber(localDayOfWeek, {
            unit: "day"
          });
        case "ccc":
          return localize5.day(dayOfWeek, {
            width: "abbreviated",
            context: "standalone"
          });
        // T
        case "ccccc":
          return localize5.day(dayOfWeek, {
            width: "narrow",
            context: "standalone"
          });
        // Tu
        case "cccccc":
          return localize5.day(dayOfWeek, {
            width: "short",
            context: "standalone"
          });
        // Tuesday
        case "cccc":
        default:
          return localize5.day(dayOfWeek, {
            width: "wide",
            context: "standalone"
          });
      }
    },
    // ISO day of week
    i: function i(date, token, localize5) {
      var dayOfWeek = date.getUTCDay();
      var isoDayOfWeek = dayOfWeek === 0 ? 7 : dayOfWeek;
      switch (token) {
        // 2
        case "i":
          return String(isoDayOfWeek);
        // 02
        case "ii":
          return addLeadingZeros(isoDayOfWeek, token.length);
        // 2nd
        case "io":
          return localize5.ordinalNumber(isoDayOfWeek, {
            unit: "day"
          });
        // Tue
        case "iii":
          return localize5.day(dayOfWeek, {
            width: "abbreviated",
            context: "formatting"
          });
        // T
        case "iiiii":
          return localize5.day(dayOfWeek, {
            width: "narrow",
            context: "formatting"
          });
        // Tu
        case "iiiiii":
          return localize5.day(dayOfWeek, {
            width: "short",
            context: "formatting"
          });
        // Tuesday
        case "iiii":
        default:
          return localize5.day(dayOfWeek, {
            width: "wide",
            context: "formatting"
          });
      }
    },
    // AM or PM
    a: function a2(date, token, localize5) {
      var hours = date.getUTCHours();
      var dayPeriodEnumValue = hours / 12 >= 1 ? "pm" : "am";
      switch (token) {
        case "a":
        case "aa":
          return localize5.dayPeriod(dayPeriodEnumValue, {
            width: "abbreviated",
            context: "formatting"
          });
        case "aaa":
          return localize5.dayPeriod(dayPeriodEnumValue, {
            width: "abbreviated",
            context: "formatting"
          }).toLowerCase();
        case "aaaaa":
          return localize5.dayPeriod(dayPeriodEnumValue, {
            width: "narrow",
            context: "formatting"
          });
        case "aaaa":
        default:
          return localize5.dayPeriod(dayPeriodEnumValue, {
            width: "wide",
            context: "formatting"
          });
      }
    },
    // AM, PM, midnight, noon
    b: function b(date, token, localize5) {
      var hours = date.getUTCHours();
      var dayPeriodEnumValue;
      if (hours === 12) {
        dayPeriodEnumValue = dayPeriodEnum.noon;
      } else if (hours === 0) {
        dayPeriodEnumValue = dayPeriodEnum.midnight;
      } else {
        dayPeriodEnumValue = hours / 12 >= 1 ? "pm" : "am";
      }
      switch (token) {
        case "b":
        case "bb":
          return localize5.dayPeriod(dayPeriodEnumValue, {
            width: "abbreviated",
            context: "formatting"
          });
        case "bbb":
          return localize5.dayPeriod(dayPeriodEnumValue, {
            width: "abbreviated",
            context: "formatting"
          }).toLowerCase();
        case "bbbbb":
          return localize5.dayPeriod(dayPeriodEnumValue, {
            width: "narrow",
            context: "formatting"
          });
        case "bbbb":
        default:
          return localize5.dayPeriod(dayPeriodEnumValue, {
            width: "wide",
            context: "formatting"
          });
      }
    },
    // in the morning, in the afternoon, in the evening, at night
    B: function B(date, token, localize5) {
      var hours = date.getUTCHours();
      var dayPeriodEnumValue;
      if (hours >= 17) {
        dayPeriodEnumValue = dayPeriodEnum.evening;
      } else if (hours >= 12) {
        dayPeriodEnumValue = dayPeriodEnum.afternoon;
      } else if (hours >= 4) {
        dayPeriodEnumValue = dayPeriodEnum.morning;
      } else {
        dayPeriodEnumValue = dayPeriodEnum.night;
      }
      switch (token) {
        case "B":
        case "BB":
        case "BBB":
          return localize5.dayPeriod(dayPeriodEnumValue, {
            width: "abbreviated",
            context: "formatting"
          });
        case "BBBBB":
          return localize5.dayPeriod(dayPeriodEnumValue, {
            width: "narrow",
            context: "formatting"
          });
        case "BBBB":
        default:
          return localize5.dayPeriod(dayPeriodEnumValue, {
            width: "wide",
            context: "formatting"
          });
      }
    },
    // Hour [1-12]
    h: function h2(date, token, localize5) {
      if (token === "ho") {
        var hours = date.getUTCHours() % 12;
        if (hours === 0) hours = 12;
        return localize5.ordinalNumber(hours, {
          unit: "hour"
        });
      }
      return lightFormatters_default.h(date, token);
    },
    // Hour [0-23]
    H: function H2(date, token, localize5) {
      if (token === "Ho") {
        return localize5.ordinalNumber(date.getUTCHours(), {
          unit: "hour"
        });
      }
      return lightFormatters_default.H(date, token);
    },
    // Hour [0-11]
    K: function K(date, token, localize5) {
      var hours = date.getUTCHours() % 12;
      if (token === "Ko") {
        return localize5.ordinalNumber(hours, {
          unit: "hour"
        });
      }
      return addLeadingZeros(hours, token.length);
    },
    // Hour [1-24]
    k: function k(date, token, localize5) {
      var hours = date.getUTCHours();
      if (hours === 0) hours = 24;
      if (token === "ko") {
        return localize5.ordinalNumber(hours, {
          unit: "hour"
        });
      }
      return addLeadingZeros(hours, token.length);
    },
    // Minute
    m: function m2(date, token, localize5) {
      if (token === "mo") {
        return localize5.ordinalNumber(date.getUTCMinutes(), {
          unit: "minute"
        });
      }
      return lightFormatters_default.m(date, token);
    },
    // Second
    s: function s2(date, token, localize5) {
      if (token === "so") {
        return localize5.ordinalNumber(date.getUTCSeconds(), {
          unit: "second"
        });
      }
      return lightFormatters_default.s(date, token);
    },
    // Fraction of second
    S: function S2(date, token) {
      return lightFormatters_default.S(date, token);
    },
    // Timezone (ISO-8601. If offset is 0, output is always `'Z'`)
    X: function X(date, token, _localize, options) {
      var originalDate = options._originalDate || date;
      var timezoneOffset = originalDate.getTimezoneOffset();
      if (timezoneOffset === 0) {
        return "Z";
      }
      switch (token) {
        // Hours and optional minutes
        case "X":
          return formatTimezoneWithOptionalMinutes(timezoneOffset);
        // Hours, minutes and optional seconds without `:` delimiter
        // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
        // so this token always has the same output as `XX`
        case "XXXX":
        case "XX":
          return formatTimezone(timezoneOffset);
        // Hours, minutes and optional seconds with `:` delimiter
        // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
        // so this token always has the same output as `XXX`
        case "XXXXX":
        case "XXX":
        // Hours and minutes with `:` delimiter
        default:
          return formatTimezone(timezoneOffset, ":");
      }
    },
    // Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent)
    x: function x(date, token, _localize, options) {
      var originalDate = options._originalDate || date;
      var timezoneOffset = originalDate.getTimezoneOffset();
      switch (token) {
        // Hours and optional minutes
        case "x":
          return formatTimezoneWithOptionalMinutes(timezoneOffset);
        // Hours, minutes and optional seconds without `:` delimiter
        // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
        // so this token always has the same output as `xx`
        case "xxxx":
        case "xx":
          return formatTimezone(timezoneOffset);
        // Hours, minutes and optional seconds with `:` delimiter
        // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
        // so this token always has the same output as `xxx`
        case "xxxxx":
        case "xxx":
        // Hours and minutes with `:` delimiter
        default:
          return formatTimezone(timezoneOffset, ":");
      }
    },
    // Timezone (GMT)
    O: function O(date, token, _localize, options) {
      var originalDate = options._originalDate || date;
      var timezoneOffset = originalDate.getTimezoneOffset();
      switch (token) {
        // Short
        case "O":
        case "OO":
        case "OOO":
          return "GMT" + formatTimezoneShort(timezoneOffset, ":");
        // Long
        case "OOOO":
        default:
          return "GMT" + formatTimezone(timezoneOffset, ":");
      }
    },
    // Timezone (specific non-location)
    z: function z(date, token, _localize, options) {
      var originalDate = options._originalDate || date;
      var timezoneOffset = originalDate.getTimezoneOffset();
      switch (token) {
        // Short
        case "z":
        case "zz":
        case "zzz":
          return "GMT" + formatTimezoneShort(timezoneOffset, ":");
        // Long
        case "zzzz":
        default:
          return "GMT" + formatTimezone(timezoneOffset, ":");
      }
    },
    // Seconds timestamp
    t: function t(date, token, _localize, options) {
      var originalDate = options._originalDate || date;
      var timestamp = Math.floor(originalDate.getTime() / 1e3);
      return addLeadingZeros(timestamp, token.length);
    },
    // Milliseconds timestamp
    T: function T(date, token, _localize, options) {
      var originalDate = options._originalDate || date;
      var timestamp = originalDate.getTime();
      return addLeadingZeros(timestamp, token.length);
    }
  };
  function formatTimezoneShort(offset, dirtyDelimiter) {
    var sign = offset > 0 ? "-" : "+";
    var absOffset = Math.abs(offset);
    var hours = Math.floor(absOffset / 60);
    var minutes = absOffset % 60;
    if (minutes === 0) {
      return sign + String(hours);
    }
    var delimiter = dirtyDelimiter || "";
    return sign + String(hours) + delimiter + addLeadingZeros(minutes, 2);
  }
  function formatTimezoneWithOptionalMinutes(offset, dirtyDelimiter) {
    if (offset % 60 === 0) {
      var sign = offset > 0 ? "-" : "+";
      return sign + addLeadingZeros(Math.abs(offset) / 60, 2);
    }
    return formatTimezone(offset, dirtyDelimiter);
  }
  function formatTimezone(offset, dirtyDelimiter) {
    var delimiter = dirtyDelimiter || "";
    var sign = offset > 0 ? "-" : "+";
    var absOffset = Math.abs(offset);
    var hours = addLeadingZeros(Math.floor(absOffset / 60), 2);
    var minutes = addLeadingZeros(absOffset % 60, 2);
    return sign + hours + delimiter + minutes;
  }
  var formatters_default = formatters2;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/format/longFormatters/index.js
  var dateLongFormatter = function dateLongFormatter2(pattern, formatLong6) {
    switch (pattern) {
      case "P":
        return formatLong6.date({
          width: "short"
        });
      case "PP":
        return formatLong6.date({
          width: "medium"
        });
      case "PPP":
        return formatLong6.date({
          width: "long"
        });
      case "PPPP":
      default:
        return formatLong6.date({
          width: "full"
        });
    }
  };
  var timeLongFormatter = function timeLongFormatter2(pattern, formatLong6) {
    switch (pattern) {
      case "p":
        return formatLong6.time({
          width: "short"
        });
      case "pp":
        return formatLong6.time({
          width: "medium"
        });
      case "ppp":
        return formatLong6.time({
          width: "long"
        });
      case "pppp":
      default:
        return formatLong6.time({
          width: "full"
        });
    }
  };
  var dateTimeLongFormatter = function dateTimeLongFormatter2(pattern, formatLong6) {
    var matchResult = pattern.match(/(P+)(p+)?/) || [];
    var datePattern = matchResult[1];
    var timePattern = matchResult[2];
    if (!timePattern) {
      return dateLongFormatter(pattern, formatLong6);
    }
    var dateTimeFormat;
    switch (datePattern) {
      case "P":
        dateTimeFormat = formatLong6.dateTime({
          width: "short"
        });
        break;
      case "PP":
        dateTimeFormat = formatLong6.dateTime({
          width: "medium"
        });
        break;
      case "PPP":
        dateTimeFormat = formatLong6.dateTime({
          width: "long"
        });
        break;
      case "PPPP":
      default:
        dateTimeFormat = formatLong6.dateTime({
          width: "full"
        });
        break;
    }
    return dateTimeFormat.replace("{{date}}", dateLongFormatter(datePattern, formatLong6)).replace("{{time}}", timeLongFormatter(timePattern, formatLong6));
  };
  var longFormatters = {
    p: timeLongFormatter,
    P: dateTimeLongFormatter
  };
  var longFormatters_default = longFormatters;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/protectedTokens/index.js
  var protectedDayOfYearTokens = ["D", "DD"];
  var protectedWeekYearTokens = ["YY", "YYYY"];
  function isProtectedDayOfYearToken(token) {
    return protectedDayOfYearTokens.indexOf(token) !== -1;
  }
  function isProtectedWeekYearToken(token) {
    return protectedWeekYearTokens.indexOf(token) !== -1;
  }
  function throwProtectedError(token, format2, input) {
    if (token === "YYYY") {
      throw new RangeError("Use `yyyy` instead of `YYYY` (in `".concat(format2, "`) for formatting years to the input `").concat(input, "`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));
    } else if (token === "YY") {
      throw new RangeError("Use `yy` instead of `YY` (in `".concat(format2, "`) for formatting years to the input `").concat(input, "`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));
    } else if (token === "D") {
      throw new RangeError("Use `d` instead of `D` (in `".concat(format2, "`) for formatting days of the month to the input `").concat(input, "`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));
    } else if (token === "DD") {
      throw new RangeError("Use `dd` instead of `DD` (in `".concat(format2, "`) for formatting days of the month to the input `").concat(input, "`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));
    }
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/en-US/_lib/formatDistance/index.js
  var formatDistanceLocale = {
    lessThanXSeconds: {
      one: "less than a second",
      other: "less than {{count}} seconds"
    },
    xSeconds: {
      one: "1 second",
      other: "{{count}} seconds"
    },
    halfAMinute: "half a minute",
    lessThanXMinutes: {
      one: "less than a minute",
      other: "less than {{count}} minutes"
    },
    xMinutes: {
      one: "1 minute",
      other: "{{count}} minutes"
    },
    aboutXHours: {
      one: "about 1 hour",
      other: "about {{count}} hours"
    },
    xHours: {
      one: "1 hour",
      other: "{{count}} hours"
    },
    xDays: {
      one: "1 day",
      other: "{{count}} days"
    },
    aboutXWeeks: {
      one: "about 1 week",
      other: "about {{count}} weeks"
    },
    xWeeks: {
      one: "1 week",
      other: "{{count}} weeks"
    },
    aboutXMonths: {
      one: "about 1 month",
      other: "about {{count}} months"
    },
    xMonths: {
      one: "1 month",
      other: "{{count}} months"
    },
    aboutXYears: {
      one: "about 1 year",
      other: "about {{count}} years"
    },
    xYears: {
      one: "1 year",
      other: "{{count}} years"
    },
    overXYears: {
      one: "over 1 year",
      other: "over {{count}} years"
    },
    almostXYears: {
      one: "almost 1 year",
      other: "almost {{count}} years"
    }
  };
  var formatDistance = function formatDistance2(token, count, options) {
    var result;
    var tokenValue = formatDistanceLocale[token];
    if (typeof tokenValue === "string") {
      result = tokenValue;
    } else if (count === 1) {
      result = tokenValue.one;
    } else {
      result = tokenValue.other.replace("{{count}}", count.toString());
    }
    if (options !== null && options !== void 0 && options.addSuffix) {
      if (options.comparison && options.comparison > 0) {
        return "in " + result;
      } else {
        return result + " ago";
      }
    }
    return result;
  };
  var formatDistance_default = formatDistance;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/_lib/buildFormatLongFn/index.js
  function buildFormatLongFn(args) {
    return function() {
      var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
      var width = options.width ? String(options.width) : args.defaultWidth;
      var format2 = args.formats[width] || args.formats[args.defaultWidth];
      return format2;
    };
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/en-US/_lib/formatLong/index.js
  var dateFormats = {
    full: "EEEE, MMMM do, y",
    long: "MMMM do, y",
    medium: "MMM d, y",
    short: "MM/dd/yyyy"
  };
  var timeFormats = {
    full: "h:mm:ss a zzzz",
    long: "h:mm:ss a z",
    medium: "h:mm:ss a",
    short: "h:mm a"
  };
  var dateTimeFormats = {
    full: "{{date}} 'at' {{time}}",
    long: "{{date}} 'at' {{time}}",
    medium: "{{date}}, {{time}}",
    short: "{{date}}, {{time}}"
  };
  var formatLong = {
    date: buildFormatLongFn({
      formats: dateFormats,
      defaultWidth: "full"
    }),
    time: buildFormatLongFn({
      formats: timeFormats,
      defaultWidth: "full"
    }),
    dateTime: buildFormatLongFn({
      formats: dateTimeFormats,
      defaultWidth: "full"
    })
  };
  var formatLong_default = formatLong;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/en-US/_lib/formatRelative/index.js
  var formatRelativeLocale = {
    lastWeek: "'last' eeee 'at' p",
    yesterday: "'yesterday at' p",
    today: "'today at' p",
    tomorrow: "'tomorrow at' p",
    nextWeek: "eeee 'at' p",
    other: "P"
  };
  var formatRelative = function formatRelative2(token, _date, _baseDate, _options) {
    return formatRelativeLocale[token];
  };
  var formatRelative_default = formatRelative;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/_lib/buildLocalizeFn/index.js
  function buildLocalizeFn(args) {
    return function(dirtyIndex, options) {
      var context = options !== null && options !== void 0 && options.context ? String(options.context) : "standalone";
      var valuesArray;
      if (context === "formatting" && args.formattingValues) {
        var defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
        var width = options !== null && options !== void 0 && options.width ? String(options.width) : defaultWidth;
        valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
      } else {
        var _defaultWidth = args.defaultWidth;
        var _width = options !== null && options !== void 0 && options.width ? String(options.width) : args.defaultWidth;
        valuesArray = args.values[_width] || args.values[_defaultWidth];
      }
      var index = args.argumentCallback ? args.argumentCallback(dirtyIndex) : dirtyIndex;
      return valuesArray[index];
    };
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/en-US/_lib/localize/index.js
  var eraValues = {
    narrow: ["B", "A"],
    abbreviated: ["BC", "AD"],
    wide: ["Before Christ", "Anno Domini"]
  };
  var quarterValues = {
    narrow: ["1", "2", "3", "4"],
    abbreviated: ["Q1", "Q2", "Q3", "Q4"],
    wide: ["1st quarter", "2nd quarter", "3rd quarter", "4th quarter"]
  };
  var monthValues = {
    narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"],
    abbreviated: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
    wide: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
  };
  var dayValues = {
    narrow: ["S", "M", "T", "W", "T", "F", "S"],
    short: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
    abbreviated: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
    wide: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]
  };
  var dayPeriodValues = {
    narrow: {
      am: "a",
      pm: "p",
      midnight: "mi",
      noon: "n",
      morning: "morning",
      afternoon: "afternoon",
      evening: "evening",
      night: "night"
    },
    abbreviated: {
      am: "AM",
      pm: "PM",
      midnight: "midnight",
      noon: "noon",
      morning: "morning",
      afternoon: "afternoon",
      evening: "evening",
      night: "night"
    },
    wide: {
      am: "a.m.",
      pm: "p.m.",
      midnight: "midnight",
      noon: "noon",
      morning: "morning",
      afternoon: "afternoon",
      evening: "evening",
      night: "night"
    }
  };
  var formattingDayPeriodValues = {
    narrow: {
      am: "a",
      pm: "p",
      midnight: "mi",
      noon: "n",
      morning: "in the morning",
      afternoon: "in the afternoon",
      evening: "in the evening",
      night: "at night"
    },
    abbreviated: {
      am: "AM",
      pm: "PM",
      midnight: "midnight",
      noon: "noon",
      morning: "in the morning",
      afternoon: "in the afternoon",
      evening: "in the evening",
      night: "at night"
    },
    wide: {
      am: "a.m.",
      pm: "p.m.",
      midnight: "midnight",
      noon: "noon",
      morning: "in the morning",
      afternoon: "in the afternoon",
      evening: "in the evening",
      night: "at night"
    }
  };
  var ordinalNumber = function ordinalNumber2(dirtyNumber, _options) {
    var number = Number(dirtyNumber);
    var rem100 = number % 100;
    if (rem100 > 20 || rem100 < 10) {
      switch (rem100 % 10) {
        case 1:
          return number + "st";
        case 2:
          return number + "nd";
        case 3:
          return number + "rd";
      }
    }
    return number + "th";
  };
  var localize = {
    ordinalNumber,
    era: buildLocalizeFn({
      values: eraValues,
      defaultWidth: "wide"
    }),
    quarter: buildLocalizeFn({
      values: quarterValues,
      defaultWidth: "wide",
      argumentCallback: function argumentCallback(quarter) {
        return quarter - 1;
      }
    }),
    month: buildLocalizeFn({
      values: monthValues,
      defaultWidth: "wide"
    }),
    day: buildLocalizeFn({
      values: dayValues,
      defaultWidth: "wide"
    }),
    dayPeriod: buildLocalizeFn({
      values: dayPeriodValues,
      defaultWidth: "wide",
      formattingValues: formattingDayPeriodValues,
      defaultFormattingWidth: "wide"
    })
  };
  var localize_default = localize;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/_lib/buildMatchFn/index.js
  function buildMatchFn(args) {
    return function(string) {
      var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
      var width = options.width;
      var matchPattern = width && args.matchPatterns[width] || args.matchPatterns[args.defaultMatchWidth];
      var matchResult = string.match(matchPattern);
      if (!matchResult) {
        return null;
      }
      var matchedString = matchResult[0];
      var parsePatterns = width && args.parsePatterns[width] || args.parsePatterns[args.defaultParseWidth];
      var key = Array.isArray(parsePatterns) ? findIndex(parsePatterns, function(pattern) {
        return pattern.test(matchedString);
      }) : findKey(parsePatterns, function(pattern) {
        return pattern.test(matchedString);
      });
      var value;
      value = args.valueCallback ? args.valueCallback(key) : key;
      value = options.valueCallback ? options.valueCallback(value) : value;
      var rest = string.slice(matchedString.length);
      return {
        value,
        rest
      };
    };
  }
  function findKey(object, predicate) {
    for (var key in object) {
      if (object.hasOwnProperty(key) && predicate(object[key])) {
        return key;
      }
    }
    return void 0;
  }
  function findIndex(array, predicate) {
    for (var key = 0; key < array.length; key++) {
      if (predicate(array[key])) {
        return key;
      }
    }
    return void 0;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/_lib/buildMatchPatternFn/index.js
  function buildMatchPatternFn(args) {
    return function(string) {
      var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
      var matchResult = string.match(args.matchPattern);
      if (!matchResult) return null;
      var matchedString = matchResult[0];
      var parseResult = string.match(args.parsePattern);
      if (!parseResult) return null;
      var value = args.valueCallback ? args.valueCallback(parseResult[0]) : parseResult[0];
      value = options.valueCallback ? options.valueCallback(value) : value;
      var rest = string.slice(matchedString.length);
      return {
        value,
        rest
      };
    };
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/en-US/_lib/match/index.js
  var matchOrdinalNumberPattern = /^(\d+)(th|st|nd|rd)?/i;
  var parseOrdinalNumberPattern = /\d+/i;
  var matchEraPatterns = {
    narrow: /^(b|a)/i,
    abbreviated: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,
    wide: /^(before christ|before common era|anno domini|common era)/i
  };
  var parseEraPatterns = {
    any: [/^b/i, /^(a|c)/i]
  };
  var matchQuarterPatterns = {
    narrow: /^[1234]/i,
    abbreviated: /^q[1234]/i,
    wide: /^[1234](th|st|nd|rd)? quarter/i
  };
  var parseQuarterPatterns = {
    any: [/1/i, /2/i, /3/i, /4/i]
  };
  var matchMonthPatterns = {
    narrow: /^[jfmasond]/i,
    abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,
    wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i
  };
  var parseMonthPatterns = {
    narrow: [/^j/i, /^f/i, /^m/i, /^a/i, /^m/i, /^j/i, /^j/i, /^a/i, /^s/i, /^o/i, /^n/i, /^d/i],
    any: [/^ja/i, /^f/i, /^mar/i, /^ap/i, /^may/i, /^jun/i, /^jul/i, /^au/i, /^s/i, /^o/i, /^n/i, /^d/i]
  };
  var matchDayPatterns = {
    narrow: /^[smtwf]/i,
    short: /^(su|mo|tu|we|th|fr|sa)/i,
    abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,
    wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i
  };
  var parseDayPatterns = {
    narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],
    any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i]
  };
  var matchDayPeriodPatterns = {
    narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,
    any: /^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i
  };
  var parseDayPeriodPatterns = {
    any: {
      am: /^a/i,
      pm: /^p/i,
      midnight: /^mi/i,
      noon: /^no/i,
      morning: /morning/i,
      afternoon: /afternoon/i,
      evening: /evening/i,
      night: /night/i
    }
  };
  var match = {
    ordinalNumber: buildMatchPatternFn({
      matchPattern: matchOrdinalNumberPattern,
      parsePattern: parseOrdinalNumberPattern,
      valueCallback: function valueCallback(value) {
        return parseInt(value, 10);
      }
    }),
    era: buildMatchFn({
      matchPatterns: matchEraPatterns,
      defaultMatchWidth: "wide",
      parsePatterns: parseEraPatterns,
      defaultParseWidth: "any"
    }),
    quarter: buildMatchFn({
      matchPatterns: matchQuarterPatterns,
      defaultMatchWidth: "wide",
      parsePatterns: parseQuarterPatterns,
      defaultParseWidth: "any",
      valueCallback: function valueCallback2(index) {
        return index + 1;
      }
    }),
    month: buildMatchFn({
      matchPatterns: matchMonthPatterns,
      defaultMatchWidth: "wide",
      parsePatterns: parseMonthPatterns,
      defaultParseWidth: "any"
    }),
    day: buildMatchFn({
      matchPatterns: matchDayPatterns,
      defaultMatchWidth: "wide",
      parsePatterns: parseDayPatterns,
      defaultParseWidth: "any"
    }),
    dayPeriod: buildMatchFn({
      matchPatterns: matchDayPeriodPatterns,
      defaultMatchWidth: "any",
      parsePatterns: parseDayPeriodPatterns,
      defaultParseWidth: "any"
    })
  };
  var match_default = match;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/en-US/index.js
  var locale = {
    code: "en-US",
    formatDistance: formatDistance_default,
    formatLong: formatLong_default,
    formatRelative: formatRelative_default,
    localize: localize_default,
    match: match_default,
    options: {
      weekStartsOn: 0,
      firstWeekContainsDate: 1
    }
  };
  var en_US_default = locale;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/_lib/defaultLocale/index.js
  var defaultLocale_default = en_US_default;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/format/index.js
  var formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g;
  var longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;
  var escapedStringRegExp = /^'([^]*?)'?$/;
  var doubleQuoteRegExp = /''/g;
  var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
  function format(dirtyDate, dirtyFormatStr, options) {
    var _ref, _options$locale, _ref2, _ref3, _ref4, _options$firstWeekCon, _options$locale2, _options$locale2$opti, _defaultOptions$local, _defaultOptions$local2, _ref5, _ref6, _ref7, _options$weekStartsOn, _options$locale3, _options$locale3$opti, _defaultOptions$local3, _defaultOptions$local4;
    requiredArgs(2, arguments);
    var formatStr = String(dirtyFormatStr);
    var defaultOptions2 = getDefaultOptions();
    var locale6 = (_ref = (_options$locale = options === null || options === void 0 ? void 0 : options.locale) !== null && _options$locale !== void 0 ? _options$locale : defaultOptions2.locale) !== null && _ref !== void 0 ? _ref : defaultLocale_default;
    var firstWeekContainsDate = toInteger((_ref2 = (_ref3 = (_ref4 = (_options$firstWeekCon = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options === null || options === void 0 ? void 0 : (_options$locale2 = options.locale) === null || _options$locale2 === void 0 ? void 0 : (_options$locale2$opti = _options$locale2.options) === null || _options$locale2$opti === void 0 ? void 0 : _options$locale2$opti.firstWeekContainsDate) !== null && _ref4 !== void 0 ? _ref4 : defaultOptions2.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : (_defaultOptions$local = defaultOptions2.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : 1);
    if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {
      throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");
    }
    var weekStartsOn = toInteger((_ref5 = (_ref6 = (_ref7 = (_options$weekStartsOn = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options === null || options === void 0 ? void 0 : (_options$locale3 = options.locale) === null || _options$locale3 === void 0 ? void 0 : (_options$locale3$opti = _options$locale3.options) === null || _options$locale3$opti === void 0 ? void 0 : _options$locale3$opti.weekStartsOn) !== null && _ref7 !== void 0 ? _ref7 : defaultOptions2.weekStartsOn) !== null && _ref6 !== void 0 ? _ref6 : (_defaultOptions$local3 = defaultOptions2.locale) === null || _defaultOptions$local3 === void 0 ? void 0 : (_defaultOptions$local4 = _defaultOptions$local3.options) === null || _defaultOptions$local4 === void 0 ? void 0 : _defaultOptions$local4.weekStartsOn) !== null && _ref5 !== void 0 ? _ref5 : 0);
    if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {
      throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");
    }
    if (!locale6.localize) {
      throw new RangeError("locale must contain localize property");
    }
    if (!locale6.formatLong) {
      throw new RangeError("locale must contain formatLong property");
    }
    var originalDate = toDate(dirtyDate);
    if (!isValid(originalDate)) {
      throw new RangeError("Invalid time value");
    }
    var timezoneOffset = getTimezoneOffsetInMilliseconds(originalDate);
    var utcDate = subMilliseconds(originalDate, timezoneOffset);
    var formatterOptions = {
      firstWeekContainsDate,
      weekStartsOn,
      locale: locale6,
      _originalDate: originalDate
    };
    var result = formatStr.match(longFormattingTokensRegExp).map(function(substring) {
      var firstCharacter = substring[0];
      if (firstCharacter === "p" || firstCharacter === "P") {
        var longFormatter = longFormatters_default[firstCharacter];
        return longFormatter(substring, locale6.formatLong);
      }
      return substring;
    }).join("").match(formattingTokensRegExp).map(function(substring) {
      if (substring === "''") {
        return "'";
      }
      var firstCharacter = substring[0];
      if (firstCharacter === "'") {
        return cleanEscapedString(substring);
      }
      var formatter = formatters_default[firstCharacter];
      if (formatter) {
        if (!(options !== null && options !== void 0 && options.useAdditionalWeekYearTokens) && isProtectedWeekYearToken(substring)) {
          throwProtectedError(substring, dirtyFormatStr, String(dirtyDate));
        }
        if (!(options !== null && options !== void 0 && options.useAdditionalDayOfYearTokens) && isProtectedDayOfYearToken(substring)) {
          throwProtectedError(substring, dirtyFormatStr, String(dirtyDate));
        }
        return formatter(utcDate, substring, locale6.localize, formatterOptions);
      }
      if (firstCharacter.match(unescapedLatinCharacterRegExp)) {
        throw new RangeError("Format string contains an unescaped latin alphabet character `" + firstCharacter + "`");
      }
      return substring;
    }).join("");
    return result;
  }
  function cleanEscapedString(input) {
    var matched = input.match(escapedStringRegExp);
    if (!matched) {
      return input;
    }
    return matched[1].replace(doubleQuoteRegExp, "'");
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/formatDuration/index.js
  var defaultFormat = ["years", "months", "weeks", "days", "hours", "minutes", "seconds"];
  function formatDuration(duration, options) {
    var _ref, _options$locale, _options$format, _options$zero, _options$delimiter;
    if (arguments.length < 1) {
      throw new TypeError("1 argument required, but only ".concat(arguments.length, " present"));
    }
    var defaultOptions2 = getDefaultOptions();
    var locale6 = (_ref = (_options$locale = options === null || options === void 0 ? void 0 : options.locale) !== null && _options$locale !== void 0 ? _options$locale : defaultOptions2.locale) !== null && _ref !== void 0 ? _ref : defaultLocale_default;
    var format2 = (_options$format = options === null || options === void 0 ? void 0 : options.format) !== null && _options$format !== void 0 ? _options$format : defaultFormat;
    var zero = (_options$zero = options === null || options === void 0 ? void 0 : options.zero) !== null && _options$zero !== void 0 ? _options$zero : false;
    var delimiter = (_options$delimiter = options === null || options === void 0 ? void 0 : options.delimiter) !== null && _options$delimiter !== void 0 ? _options$delimiter : " ";
    if (!locale6.formatDistance) {
      return "";
    }
    var result = format2.reduce(function(acc, unit) {
      var token = "x".concat(unit.replace(/(^.)/, function(m6) {
        return m6.toUpperCase();
      }));
      var value = duration[unit];
      if (typeof value === "number" && (zero || duration[unit])) {
        return acc.concat(locale6.formatDistance(token, value));
      }
      return acc;
    }, []).join(delimiter);
    return result;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/intervalToDuration/index.js
  function intervalToDuration(interval) {
    requiredArgs(1, arguments);
    var start = toDate(interval.start);
    var end = toDate(interval.end);
    if (isNaN(start.getTime())) throw new RangeError("Start Date is invalid");
    if (isNaN(end.getTime())) throw new RangeError("End Date is invalid");
    var duration = {};
    duration.years = Math.abs(differenceInYears(end, start));
    var sign = compareAsc(end, start);
    var remainingMonths = add(start, {
      years: sign * duration.years
    });
    duration.months = Math.abs(differenceInMonths(end, remainingMonths));
    var remainingDays = add(remainingMonths, {
      months: sign * duration.months
    });
    duration.days = Math.abs(differenceInDays(end, remainingDays));
    var remainingHours = add(remainingDays, {
      days: sign * duration.days
    });
    duration.hours = Math.abs(differenceInHours(end, remainingHours));
    var remainingMinutes = add(remainingHours, {
      hours: sign * duration.hours
    });
    duration.minutes = Math.abs(differenceInMinutes(end, remainingMinutes));
    var remainingSeconds = add(remainingMinutes, {
      minutes: sign * duration.minutes
    });
    duration.seconds = Math.abs(differenceInSeconds(end, remainingSeconds));
    return duration;
  }

  // ../../node_modules/.pnpm/preact@10.11.3/node_modules/preact/dist/preact.module.js
  var n;
  var l;
  var u2;
  var i2;
  var t2;
  var o;
  var r;
  var f = {};
  var e2 = [];
  var c2 = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;
  function s3(n3, l4) {
    for (var u5 in l4) n3[u5] = l4[u5];
    return n3;
  }
  function a3(n3) {
    var l4 = n3.parentNode;
    l4 && l4.removeChild(n3);
  }
  function h3(l4, u5, i5) {
    var t4, o4, r3, f4 = {};
    for (r3 in u5) "key" == r3 ? t4 = u5[r3] : "ref" == r3 ? o4 = u5[r3] : f4[r3] = u5[r3];
    if (arguments.length > 2 && (f4.children = arguments.length > 3 ? n.call(arguments, 2) : i5), "function" == typeof l4 && null != l4.defaultProps) for (r3 in l4.defaultProps) void 0 === f4[r3] && (f4[r3] = l4.defaultProps[r3]);
    return v(l4, f4, t4, o4, null);
  }
  function v(n3, i5, t4, o4, r3) {
    var f4 = { type: n3, props: i5, key: t4, ref: o4, __k: null, __: null, __b: 0, __e: null, __d: void 0, __c: null, __h: null, constructor: void 0, __v: null == r3 ? ++u2 : r3 };
    return null == r3 && null != l.vnode && l.vnode(f4), f4;
  }
  function p(n3) {
    return n3.children;
  }
  function d3(n3, l4) {
    this.props = n3, this.context = l4;
  }
  function _(n3, l4) {
    if (null == l4) return n3.__ ? _(n3.__, n3.__.__k.indexOf(n3) + 1) : null;
    for (var u5; l4 < n3.__k.length; l4++) if (null != (u5 = n3.__k[l4]) && null != u5.__e) return u5.__e;
    return "function" == typeof n3.type ? _(n3) : null;
  }
  function k2(n3) {
    var l4, u5;
    if (null != (n3 = n3.__) && null != n3.__c) {
      for (n3.__e = n3.__c.base = null, l4 = 0; l4 < n3.__k.length; l4++) if (null != (u5 = n3.__k[l4]) && null != u5.__e) {
        n3.__e = n3.__c.base = u5.__e;
        break;
      }
      return k2(n3);
    }
  }
  function b2(n3) {
    (!n3.__d && (n3.__d = true) && t2.push(n3) && !g.__r++ || o !== l.debounceRendering) && ((o = l.debounceRendering) || setTimeout)(g);
  }
  function g() {
    for (var n3; g.__r = t2.length; ) n3 = t2.sort(function(n4, l4) {
      return n4.__v.__b - l4.__v.__b;
    }), t2 = [], n3.some(function(n4) {
      var l4, u5, i5, t4, o4, r3;
      n4.__d && (o4 = (t4 = (l4 = n4).__v).__e, (r3 = l4.__P) && (u5 = [], (i5 = s3({}, t4)).__v = t4.__v + 1, j(r3, t4, i5, l4.__n, void 0 !== r3.ownerSVGElement, null != t4.__h ? [o4] : null, u5, null == o4 ? _(t4) : o4, t4.__h), z2(u5, t4), t4.__e != o4 && k2(t4)));
    });
  }
  function w2(n3, l4, u5, i5, t4, o4, r3, c5, s5, a6) {
    var h5, y4, d6, k5, b5, g4, w5, x3 = i5 && i5.__k || e2, C3 = x3.length;
    for (u5.__k = [], h5 = 0; h5 < l4.length; h5++) if (null != (k5 = u5.__k[h5] = null == (k5 = l4[h5]) || "boolean" == typeof k5 ? null : "string" == typeof k5 || "number" == typeof k5 || "bigint" == typeof k5 ? v(null, k5, null, null, k5) : Array.isArray(k5) ? v(p, { children: k5 }, null, null, null) : k5.__b > 0 ? v(k5.type, k5.props, k5.key, k5.ref ? k5.ref : null, k5.__v) : k5)) {
      if (k5.__ = u5, k5.__b = u5.__b + 1, null === (d6 = x3[h5]) || d6 && k5.key == d6.key && k5.type === d6.type) x3[h5] = void 0;
      else for (y4 = 0; y4 < C3; y4++) {
        if ((d6 = x3[y4]) && k5.key == d6.key && k5.type === d6.type) {
          x3[y4] = void 0;
          break;
        }
        d6 = null;
      }
      j(n3, k5, d6 = d6 || f, t4, o4, r3, c5, s5, a6), b5 = k5.__e, (y4 = k5.ref) && d6.ref != y4 && (w5 || (w5 = []), d6.ref && w5.push(d6.ref, null, k5), w5.push(y4, k5.__c || b5, k5)), null != b5 ? (null == g4 && (g4 = b5), "function" == typeof k5.type && k5.__k === d6.__k ? k5.__d = s5 = m3(k5, s5, n3) : s5 = A(n3, k5, d6, x3, b5, s5), "function" == typeof u5.type && (u5.__d = s5)) : s5 && d6.__e == s5 && s5.parentNode != n3 && (s5 = _(d6));
    }
    for (u5.__e = g4, h5 = C3; h5--; ) null != x3[h5] && N(x3[h5], x3[h5]);
    if (w5) for (h5 = 0; h5 < w5.length; h5++) M3(w5[h5], w5[++h5], w5[++h5]);
  }
  function m3(n3, l4, u5) {
    for (var i5, t4 = n3.__k, o4 = 0; t4 && o4 < t4.length; o4++) (i5 = t4[o4]) && (i5.__ = n3, l4 = "function" == typeof i5.type ? m3(i5, l4, u5) : A(u5, i5, i5, t4, i5.__e, l4));
    return l4;
  }
  function A(n3, l4, u5, i5, t4, o4) {
    var r3, f4, e4;
    if (void 0 !== l4.__d) r3 = l4.__d, l4.__d = void 0;
    else if (null == u5 || t4 != o4 || null == t4.parentNode) n: if (null == o4 || o4.parentNode !== n3) n3.appendChild(t4), r3 = null;
    else {
      for (f4 = o4, e4 = 0; (f4 = f4.nextSibling) && e4 < i5.length; e4 += 1) if (f4 == t4) break n;
      n3.insertBefore(t4, o4), r3 = o4;
    }
    return void 0 !== r3 ? r3 : t4.nextSibling;
  }
  function C(n3, l4, u5, i5, t4) {
    var o4;
    for (o4 in u5) "children" === o4 || "key" === o4 || o4 in l4 || H3(n3, o4, null, u5[o4], i5);
    for (o4 in l4) t4 && "function" != typeof l4[o4] || "children" === o4 || "key" === o4 || "value" === o4 || "checked" === o4 || u5[o4] === l4[o4] || H3(n3, o4, l4[o4], u5[o4], i5);
  }
  function $(n3, l4, u5) {
    "-" === l4[0] ? n3.setProperty(l4, u5) : n3[l4] = null == u5 ? "" : "number" != typeof u5 || c2.test(l4) ? u5 : u5 + "px";
  }
  function H3(n3, l4, u5, i5, t4) {
    var o4;
    n: if ("style" === l4) if ("string" == typeof u5) n3.style.cssText = u5;
    else {
      if ("string" == typeof i5 && (n3.style.cssText = i5 = ""), i5) for (l4 in i5) u5 && l4 in u5 || $(n3.style, l4, "");
      if (u5) for (l4 in u5) i5 && u5[l4] === i5[l4] || $(n3.style, l4, u5[l4]);
    }
    else if ("o" === l4[0] && "n" === l4[1]) o4 = l4 !== (l4 = l4.replace(/Capture$/, "")), l4 = l4.toLowerCase() in n3 ? l4.toLowerCase().slice(2) : l4.slice(2), n3.l || (n3.l = {}), n3.l[l4 + o4] = u5, u5 ? i5 || n3.addEventListener(l4, o4 ? T2 : I2, o4) : n3.removeEventListener(l4, o4 ? T2 : I2, o4);
    else if ("dangerouslySetInnerHTML" !== l4) {
      if (t4) l4 = l4.replace(/xlink(H|:h)/, "h").replace(/sName$/, "s");
      else if ("href" !== l4 && "list" !== l4 && "form" !== l4 && "tabIndex" !== l4 && "download" !== l4 && l4 in n3) try {
        n3[l4] = null == u5 ? "" : u5;
        break n;
      } catch (n4) {
      }
      "function" == typeof u5 || (null == u5 || false === u5 && -1 == l4.indexOf("-") ? n3.removeAttribute(l4) : n3.setAttribute(l4, u5));
    }
  }
  function I2(n3) {
    this.l[n3.type + false](l.event ? l.event(n3) : n3);
  }
  function T2(n3) {
    this.l[n3.type + true](l.event ? l.event(n3) : n3);
  }
  function j(n3, u5, i5, t4, o4, r3, f4, e4, c5) {
    var a6, h5, v4, y4, _3, k5, b5, g4, m6, x3, A3, C3, $2, H4, I3, T3 = u5.type;
    if (void 0 !== u5.constructor) return null;
    null != i5.__h && (c5 = i5.__h, e4 = u5.__e = i5.__e, u5.__h = null, r3 = [e4]), (a6 = l.__b) && a6(u5);
    try {
      n: if ("function" == typeof T3) {
        if (g4 = u5.props, m6 = (a6 = T3.contextType) && t4[a6.__c], x3 = a6 ? m6 ? m6.props.value : a6.__ : t4, i5.__c ? b5 = (h5 = u5.__c = i5.__c).__ = h5.__E : ("prototype" in T3 && T3.prototype.render ? u5.__c = h5 = new T3(g4, x3) : (u5.__c = h5 = new d3(g4, x3), h5.constructor = T3, h5.render = O2), m6 && m6.sub(h5), h5.props = g4, h5.state || (h5.state = {}), h5.context = x3, h5.__n = t4, v4 = h5.__d = true, h5.__h = [], h5._sb = []), null == h5.__s && (h5.__s = h5.state), null != T3.getDerivedStateFromProps && (h5.__s == h5.state && (h5.__s = s3({}, h5.__s)), s3(h5.__s, T3.getDerivedStateFromProps(g4, h5.__s))), y4 = h5.props, _3 = h5.state, v4) null == T3.getDerivedStateFromProps && null != h5.componentWillMount && h5.componentWillMount(), null != h5.componentDidMount && h5.__h.push(h5.componentDidMount);
        else {
          if (null == T3.getDerivedStateFromProps && g4 !== y4 && null != h5.componentWillReceiveProps && h5.componentWillReceiveProps(g4, x3), !h5.__e && null != h5.shouldComponentUpdate && false === h5.shouldComponentUpdate(g4, h5.__s, x3) || u5.__v === i5.__v) {
            for (h5.props = g4, h5.state = h5.__s, u5.__v !== i5.__v && (h5.__d = false), h5.__v = u5, u5.__e = i5.__e, u5.__k = i5.__k, u5.__k.forEach(function(n4) {
              n4 && (n4.__ = u5);
            }), A3 = 0; A3 < h5._sb.length; A3++) h5.__h.push(h5._sb[A3]);
            h5._sb = [], h5.__h.length && f4.push(h5);
            break n;
          }
          null != h5.componentWillUpdate && h5.componentWillUpdate(g4, h5.__s, x3), null != h5.componentDidUpdate && h5.__h.push(function() {
            h5.componentDidUpdate(y4, _3, k5);
          });
        }
        if (h5.context = x3, h5.props = g4, h5.__v = u5, h5.__P = n3, C3 = l.__r, $2 = 0, "prototype" in T3 && T3.prototype.render) {
          for (h5.state = h5.__s, h5.__d = false, C3 && C3(u5), a6 = h5.render(h5.props, h5.state, h5.context), H4 = 0; H4 < h5._sb.length; H4++) h5.__h.push(h5._sb[H4]);
          h5._sb = [];
        } else do {
          h5.__d = false, C3 && C3(u5), a6 = h5.render(h5.props, h5.state, h5.context), h5.state = h5.__s;
        } while (h5.__d && ++$2 < 25);
        h5.state = h5.__s, null != h5.getChildContext && (t4 = s3(s3({}, t4), h5.getChildContext())), v4 || null == h5.getSnapshotBeforeUpdate || (k5 = h5.getSnapshotBeforeUpdate(y4, _3)), I3 = null != a6 && a6.type === p && null == a6.key ? a6.props.children : a6, w2(n3, Array.isArray(I3) ? I3 : [I3], u5, i5, t4, o4, r3, f4, e4, c5), h5.base = u5.__e, u5.__h = null, h5.__h.length && f4.push(h5), b5 && (h5.__E = h5.__ = null), h5.__e = false;
      } else null == r3 && u5.__v === i5.__v ? (u5.__k = i5.__k, u5.__e = i5.__e) : u5.__e = L2(i5.__e, u5, i5, t4, o4, r3, f4, c5);
      (a6 = l.diffed) && a6(u5);
    } catch (n4) {
      u5.__v = null, (c5 || null != r3) && (u5.__e = e4, u5.__h = !!c5, r3[r3.indexOf(e4)] = null), l.__e(n4, u5, i5);
    }
  }
  function z2(n3, u5) {
    l.__c && l.__c(u5, n3), n3.some(function(u6) {
      try {
        n3 = u6.__h, u6.__h = [], n3.some(function(n4) {
          n4.call(u6);
        });
      } catch (n4) {
        l.__e(n4, u6.__v);
      }
    });
  }
  function L2(l4, u5, i5, t4, o4, r3, e4, c5) {
    var s5, h5, v4, y4 = i5.props, p3 = u5.props, d6 = u5.type, k5 = 0;
    if ("svg" === d6 && (o4 = true), null != r3) {
      for (; k5 < r3.length; k5++) if ((s5 = r3[k5]) && "setAttribute" in s5 == !!d6 && (d6 ? s5.localName === d6 : 3 === s5.nodeType)) {
        l4 = s5, r3[k5] = null;
        break;
      }
    }
    if (null == l4) {
      if (null === d6) return document.createTextNode(p3);
      l4 = o4 ? document.createElementNS("http://www.w3.org/2000/svg", d6) : document.createElement(d6, p3.is && p3), r3 = null, c5 = false;
    }
    if (null === d6) y4 === p3 || c5 && l4.data === p3 || (l4.data = p3);
    else {
      if (r3 = r3 && n.call(l4.childNodes), h5 = (y4 = i5.props || f).dangerouslySetInnerHTML, v4 = p3.dangerouslySetInnerHTML, !c5) {
        if (null != r3) for (y4 = {}, k5 = 0; k5 < l4.attributes.length; k5++) y4[l4.attributes[k5].name] = l4.attributes[k5].value;
        (v4 || h5) && (v4 && (h5 && v4.__html == h5.__html || v4.__html === l4.innerHTML) || (l4.innerHTML = v4 && v4.__html || ""));
      }
      if (C(l4, p3, y4, o4, c5), v4) u5.__k = [];
      else if (k5 = u5.props.children, w2(l4, Array.isArray(k5) ? k5 : [k5], u5, i5, t4, o4 && "foreignObject" !== d6, r3, e4, r3 ? r3[0] : i5.__k && _(i5, 0), c5), null != r3) for (k5 = r3.length; k5--; ) null != r3[k5] && a3(r3[k5]);
      c5 || ("value" in p3 && void 0 !== (k5 = p3.value) && (k5 !== l4.value || "progress" === d6 && !k5 || "option" === d6 && k5 !== y4.value) && H3(l4, "value", k5, y4.value, false), "checked" in p3 && void 0 !== (k5 = p3.checked) && k5 !== l4.checked && H3(l4, "checked", k5, y4.checked, false));
    }
    return l4;
  }
  function M3(n3, u5, i5) {
    try {
      "function" == typeof n3 ? n3(u5) : n3.current = u5;
    } catch (n4) {
      l.__e(n4, i5);
    }
  }
  function N(n3, u5, i5) {
    var t4, o4;
    if (l.unmount && l.unmount(n3), (t4 = n3.ref) && (t4.current && t4.current !== n3.__e || M3(t4, null, u5)), null != (t4 = n3.__c)) {
      if (t4.componentWillUnmount) try {
        t4.componentWillUnmount();
      } catch (n4) {
        l.__e(n4, u5);
      }
      t4.base = t4.__P = null, n3.__c = void 0;
    }
    if (t4 = n3.__k) for (o4 = 0; o4 < t4.length; o4++) t4[o4] && N(t4[o4], u5, i5 || "function" != typeof n3.type);
    i5 || null == n3.__e || a3(n3.__e), n3.__ = n3.__e = n3.__d = void 0;
  }
  function O2(n3, l4, u5) {
    return this.constructor(n3, u5);
  }
  function P(u5, i5, t4) {
    var o4, r3, e4;
    l.__ && l.__(u5, i5), r3 = (o4 = "function" == typeof t4) ? null : t4 && t4.__k || i5.__k, e4 = [], j(i5, u5 = (!o4 && t4 || i5).__k = h3(p, null, [u5]), r3 || f, f, void 0 !== i5.ownerSVGElement, !o4 && t4 ? [t4] : r3 ? null : i5.firstChild ? n.call(i5.childNodes) : null, e4, !o4 && t4 ? t4 : r3 ? r3.__e : i5.firstChild, o4), z2(e4, u5);
  }
  function B2(n3, l4) {
    var u5 = { __c: l4 = "__cC" + r++, __: n3, Consumer: function(n4, l5) {
      return n4.children(l5);
    }, Provider: function(n4) {
      var u6, i5;
      return this.getChildContext || (u6 = [], (i5 = {})[l4] = this, this.getChildContext = function() {
        return i5;
      }, this.shouldComponentUpdate = function(n5) {
        this.props.value !== n5.value && u6.some(b2);
      }, this.sub = function(n5) {
        u6.push(n5);
        var l5 = n5.componentWillUnmount;
        n5.componentWillUnmount = function() {
          u6.splice(u6.indexOf(n5), 1), l5 && l5.call(n5);
        };
      }), n4.children;
    } };
    return u5.Provider.__ = u5.Consumer.contextType = u5;
  }
  n = e2.slice, l = { __e: function(n3, l4, u5, i5) {
    for (var t4, o4, r3; l4 = l4.__; ) if ((t4 = l4.__c) && !t4.__) try {
      if ((o4 = t4.constructor) && null != o4.getDerivedStateFromError && (t4.setState(o4.getDerivedStateFromError(n3)), r3 = t4.__d), null != t4.componentDidCatch && (t4.componentDidCatch(n3, i5 || {}), r3 = t4.__d), r3) return t4.__E = t4;
    } catch (l5) {
      n3 = l5;
    }
    throw n3;
  } }, u2 = 0, i2 = function(n3) {
    return null != n3 && void 0 === n3.constructor;
  }, d3.prototype.setState = function(n3, l4) {
    var u5;
    u5 = null != this.__s && this.__s !== this.state ? this.__s : this.__s = s3({}, this.state), "function" == typeof n3 && (n3 = n3(s3({}, u5), this.props)), n3 && s3(u5, n3), null != n3 && this.__v && (l4 && this._sb.push(l4), b2(this));
  }, d3.prototype.forceUpdate = function(n3) {
    this.__v && (this.__e = true, n3 && this.__h.push(n3), b2(this));
  }, d3.prototype.render = p, t2 = [], g.__r = 0, r = 0;

  // ../../node_modules/.pnpm/preact-render-to-string@5.2.6_preact@10.11.3/node_modules/preact-render-to-string/dist/index.mjs
  var n2 = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|^--/i;
  var o2 = /^(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)$/;
  var i3 = /[\s\n\\/='"\0<>]/;
  var l2 = /^xlink:?./;
  var a4 = /["&<]/;
  function s4(e4) {
    if (false === a4.test(e4 += "")) return e4;
    for (var t4 = 0, r3 = 0, n3 = "", o4 = ""; r3 < e4.length; r3++) {
      switch (e4.charCodeAt(r3)) {
        case 34:
          o4 = "&quot;";
          break;
        case 38:
          o4 = "&amp;";
          break;
        case 60:
          o4 = "&lt;";
          break;
        default:
          continue;
      }
      r3 !== t4 && (n3 += e4.slice(t4, r3)), n3 += o4, t4 = r3 + 1;
    }
    return r3 !== t4 && (n3 += e4.slice(t4, r3)), n3;
  }
  var f2 = function(e4, t4) {
    return String(e4).replace(/(\n+)/g, "$1" + (t4 || "	"));
  };
  var u3 = function(e4, t4, r3) {
    return String(e4).length > (t4 || 40) || !r3 && -1 !== String(e4).indexOf("\n") || -1 !== String(e4).indexOf("<");
  };
  var c3 = {};
  var _2 = /([A-Z])/g;
  function p2(e4) {
    var t4 = "";
    for (var r3 in e4) {
      var o4 = e4[r3];
      null != o4 && "" !== o4 && (t4 && (t4 += " "), t4 += "-" == r3[0] ? r3 : c3[r3] || (c3[r3] = r3.replace(_2, "-$1").toLowerCase()), t4 = "number" == typeof o4 && false === n2.test(r3) ? t4 + ": " + o4 + "px;" : t4 + ": " + o4 + ";");
    }
    return t4 || void 0;
  }
  function d4(e4, t4) {
    return Array.isArray(t4) ? t4.reduce(d4, e4) : null != t4 && false !== t4 && e4.push(t4), e4;
  }
  function v2() {
    this.__d = true;
  }
  function h4(e4, t4) {
    return { __v: e4, context: t4, props: e4.props, setState: v2, forceUpdate: v2, __d: true, __h: [] };
  }
  function g2(e4, t4) {
    var r3 = e4.contextType, n3 = r3 && t4[r3.__c];
    return null != r3 ? n3 ? n3.props.value : r3.__ : t4;
  }
  var y3 = [];
  function m4(r3, n3, a6, c5, _3, v4) {
    if (null == r3 || "boolean" == typeof r3) return "";
    if ("object" != typeof r3) return "function" == typeof r3 ? "" : s4(r3);
    var b5 = a6.pretty, x3 = b5 && "string" == typeof b5 ? b5 : "	";
    if (Array.isArray(r3)) {
      for (var k5 = "", S4 = 0; S4 < r3.length; S4++) b5 && S4 > 0 && (k5 += "\n"), k5 += m4(r3[S4], n3, a6, c5, _3, v4);
      return k5;
    }
    if (void 0 !== r3.constructor) return "";
    var w5, C3 = r3.type, O4 = r3.props, j4 = false;
    if ("function" == typeof C3) {
      if (j4 = true, !a6.shallow || !c5 && false !== a6.renderRootComponent) {
        if (C3 === p) {
          var A3 = [];
          return d4(A3, r3.props.children), m4(A3, n3, a6, false !== a6.shallowHighOrder, _3, v4);
        }
        var F2, H4 = r3.__c = h4(r3, n3);
        l.__b && l.__b(r3);
        var M4 = l.__r;
        if (C3.prototype && "function" == typeof C3.prototype.render) {
          var L3 = g2(C3, n3);
          (H4 = r3.__c = new C3(O4, L3)).__v = r3, H4._dirty = H4.__d = true, H4.props = O4, null == H4.state && (H4.state = {}), null == H4._nextState && null == H4.__s && (H4._nextState = H4.__s = H4.state), H4.context = L3, C3.getDerivedStateFromProps ? H4.state = Object.assign({}, H4.state, C3.getDerivedStateFromProps(H4.props, H4.state)) : H4.componentWillMount && (H4.componentWillMount(), H4.state = H4._nextState !== H4.state ? H4._nextState : H4.__s !== H4.state ? H4.__s : H4.state), M4 && M4(r3), F2 = H4.render(H4.props, H4.state, H4.context);
        } else for (var T3 = g2(C3, n3), E2 = 0; H4.__d && E2++ < 25; ) H4.__d = false, M4 && M4(r3), F2 = C3.call(r3.__c, O4, T3);
        return H4.getChildContext && (n3 = Object.assign({}, n3, H4.getChildContext())), l.diffed && l.diffed(r3), m4(F2, n3, a6, false !== a6.shallowHighOrder, _3, v4);
      }
      C3 = (w5 = C3).displayName || w5 !== Function && w5.name || (function(e4) {
        var t4 = (Function.prototype.toString.call(e4).match(/^\s*function\s+([^( ]+)/) || "")[1];
        if (!t4) {
          for (var r4 = -1, n4 = y3.length; n4--; ) if (y3[n4] === e4) {
            r4 = n4;
            break;
          }
          r4 < 0 && (r4 = y3.push(e4) - 1), t4 = "UnnamedComponent" + r4;
        }
        return t4;
      })(w5);
    }
    var $2, D2, N2 = "<" + C3;
    if (O4) {
      var P2 = Object.keys(O4);
      a6 && true === a6.sortAttributes && P2.sort();
      for (var W = 0; W < P2.length; W++) {
        var I3 = P2[W], R2 = O4[I3];
        if ("children" !== I3) {
          if (!i3.test(I3) && (a6 && a6.allAttributes || "key" !== I3 && "ref" !== I3 && "__self" !== I3 && "__source" !== I3)) {
            if ("defaultValue" === I3) I3 = "value";
            else if ("defaultChecked" === I3) I3 = "checked";
            else if ("defaultSelected" === I3) I3 = "selected";
            else if ("className" === I3) {
              if (void 0 !== O4.class) continue;
              I3 = "class";
            } else _3 && l2.test(I3) && (I3 = I3.toLowerCase().replace(/^xlink:?/, "xlink:"));
            if ("htmlFor" === I3) {
              if (O4.for) continue;
              I3 = "for";
            }
            "style" === I3 && R2 && "object" == typeof R2 && (R2 = p2(R2)), "a" === I3[0] && "r" === I3[1] && "boolean" == typeof R2 && (R2 = String(R2));
            var U = a6.attributeHook && a6.attributeHook(I3, R2, n3, a6, j4);
            if (U || "" === U) N2 += U;
            else if ("dangerouslySetInnerHTML" === I3) D2 = R2 && R2.__html;
            else if ("textarea" === C3 && "value" === I3) $2 = R2;
            else if ((R2 || 0 === R2 || "" === R2) && "function" != typeof R2) {
              if (!(true !== R2 && "" !== R2 || (R2 = I3, a6 && a6.xml))) {
                N2 = N2 + " " + I3;
                continue;
              }
              if ("value" === I3) {
                if ("select" === C3) {
                  v4 = R2;
                  continue;
                }
                "option" === C3 && v4 == R2 && void 0 === O4.selected && (N2 += " selected");
              }
              N2 = N2 + " " + I3 + '="' + s4(R2) + '"';
            }
          }
        } else $2 = R2;
      }
    }
    if (b5) {
      var V = N2.replace(/\n\s*/, " ");
      V === N2 || ~V.indexOf("\n") ? b5 && ~N2.indexOf("\n") && (N2 += "\n") : N2 = V;
    }
    if (N2 += ">", i3.test(C3)) throw new Error(C3 + " is not a valid HTML tag name in " + N2);
    var q3, z3 = o2.test(C3) || a6.voidElements && a6.voidElements.test(C3), Z = [];
    if (D2) b5 && u3(D2) && (D2 = "\n" + x3 + f2(D2, x3)), N2 += D2;
    else if (null != $2 && d4(q3 = [], $2).length) {
      for (var B3 = b5 && ~N2.indexOf("\n"), G2 = false, J = 0; J < q3.length; J++) {
        var K2 = q3[J];
        if (null != K2 && false !== K2) {
          var Q2 = m4(K2, n3, a6, true, "svg" === C3 || "foreignObject" !== C3 && _3, v4);
          if (b5 && !B3 && u3(Q2) && (B3 = true), Q2) if (b5) {
            var X2 = Q2.length > 0 && "<" != Q2[0];
            G2 && X2 ? Z[Z.length - 1] += Q2 : Z.push(Q2), G2 = X2;
          } else Z.push(Q2);
        }
      }
      if (b5 && B3) for (var Y2 = Z.length; Y2--; ) Z[Y2] = "\n" + x3 + f2(Z[Y2], x3);
    }
    if (Z.length || D2) N2 += Z.join("");
    else if (a6 && a6.xml) return N2.substring(0, N2.length - 1) + " />";
    return !z3 || q3 || D2 ? (b5 && ~N2.indexOf("\n") && (N2 += "\n"), N2 = N2 + "</" + C3 + ">") : N2 = N2.replace(/>$/, " />"), N2;
  }
  var b3 = { shallow: true };
  S3.render = S3;
  var x2 = function(e4, t4) {
    return S3(e4, t4, b3);
  };
  var k3 = [];
  function S3(n3, o4, i5) {
    o4 = o4 || {};
    var l4 = l.__s;
    l.__s = true;
    var a6, s5 = h3(p, null);
    return s5.__k = [n3], a6 = i5 && (i5.pretty || i5.voidElements || i5.sortAttributes || i5.shallow || i5.allAttributes || i5.xml || i5.attributeHook) ? m4(n3, o4, i5) : F(n3, o4, false, void 0, s5), l.__c && l.__c(n3, k3), l.__s = l4, k3.length = 0, a6;
  }
  function w3(e4) {
    return null == e4 || "boolean" == typeof e4 ? null : "string" == typeof e4 || "number" == typeof e4 || "bigint" == typeof e4 ? h3(null, null, e4) : e4;
  }
  function C2(e4, t4) {
    return "className" === e4 ? "class" : "htmlFor" === e4 ? "for" : "defaultValue" === e4 ? "value" : "defaultChecked" === e4 ? "checked" : "defaultSelected" === e4 ? "selected" : t4 && l2.test(e4) ? e4.toLowerCase().replace(/^xlink:?/, "xlink:") : e4;
  }
  function O3(e4, t4) {
    return "style" === e4 && null != t4 && "object" == typeof t4 ? p2(t4) : "a" === e4[0] && "r" === e4[1] && "boolean" == typeof t4 ? String(t4) : t4;
  }
  var j2 = Array.isArray;
  var A2 = Object.assign;
  function F(r3, n3, l4, a6, f4) {
    if (null == r3 || true === r3 || false === r3 || "" === r3) return "";
    if ("object" != typeof r3) return "function" == typeof r3 ? "" : s4(r3);
    if (j2(r3)) {
      var u5 = "";
      f4.__k = r3;
      for (var c5 = 0; c5 < r3.length; c5++) u5 += F(r3[c5], n3, l4, a6, f4), r3[c5] = w3(r3[c5]);
      return u5;
    }
    if (void 0 !== r3.constructor) return "";
    r3.__ = f4, l.__b && l.__b(r3);
    var _3 = r3.type, p3 = r3.props;
    if ("function" == typeof _3) {
      var d6;
      if (_3 === p) d6 = p3.children;
      else {
        d6 = _3.prototype && "function" == typeof _3.prototype.render ? (function(e4, r4) {
          var n4 = e4.type, o4 = g2(n4, r4), i5 = new n4(e4.props, o4);
          e4.__c = i5, i5.__v = e4, i5.__d = true, i5.props = e4.props, null == i5.state && (i5.state = {}), null == i5.__s && (i5.__s = i5.state), i5.context = o4, n4.getDerivedStateFromProps ? i5.state = A2({}, i5.state, n4.getDerivedStateFromProps(i5.props, i5.state)) : i5.componentWillMount && (i5.componentWillMount(), i5.state = i5.__s !== i5.state ? i5.__s : i5.state);
          var l5 = l.__r;
          return l5 && l5(e4), i5.render(i5.props, i5.state, i5.context);
        })(r3, n3) : (function(e4, r4) {
          var n4, o4 = h4(e4, r4), i5 = g2(e4.type, r4);
          e4.__c = o4;
          for (var l5 = l.__r, a7 = 0; o4.__d && a7++ < 25; ) o4.__d = false, l5 && l5(e4), n4 = e4.type.call(o4, e4.props, i5);
          return n4;
        })(r3, n3);
        var v4 = r3.__c;
        v4.getChildContext && (n3 = A2({}, n3, v4.getChildContext()));
      }
      var y4 = F(d6 = null != d6 && d6.type === p && null == d6.key ? d6.props.children : d6, n3, l4, a6, r3);
      return l.diffed && l.diffed(r3), r3.__ = void 0, l.unmount && l.unmount(r3), y4;
    }
    var m6, b5, x3 = "<";
    if (x3 += _3, p3) for (var k5 in m6 = p3.children, p3) {
      var S4 = p3[k5];
      if (!("key" === k5 || "ref" === k5 || "__self" === k5 || "__source" === k5 || "children" === k5 || "className" === k5 && "class" in p3 || "htmlFor" === k5 && "for" in p3 || i3.test(k5))) {
        if (S4 = O3(k5 = C2(k5, l4), S4), "dangerouslySetInnerHTML" === k5) b5 = S4 && S4.__html;
        else if ("textarea" === _3 && "value" === k5) m6 = S4;
        else if ((S4 || 0 === S4 || "" === S4) && "function" != typeof S4) {
          if (true === S4 || "" === S4) {
            S4 = k5, x3 = x3 + " " + k5;
            continue;
          }
          if ("value" === k5) {
            if ("select" === _3) {
              a6 = S4;
              continue;
            }
            "option" !== _3 || a6 != S4 || "selected" in p3 || (x3 += " selected");
          }
          x3 = x3 + " " + k5 + '="' + s4(S4) + '"';
        }
      }
    }
    var H4 = x3;
    if (x3 += ">", i3.test(_3)) throw new Error(_3 + " is not a valid HTML tag name in " + x3);
    var M4 = "", L3 = false;
    if (b5) M4 += b5, L3 = true;
    else if ("string" == typeof m6) M4 += s4(m6), L3 = true;
    else if (j2(m6)) {
      r3.__k = m6;
      for (var T3 = 0; T3 < m6.length; T3++) {
        var E2 = m6[T3];
        if (m6[T3] = w3(E2), null != E2 && false !== E2) {
          var $2 = F(E2, n3, "svg" === _3 || "foreignObject" !== _3 && l4, a6, r3);
          $2 && (M4 += $2, L3 = true);
        }
      }
    } else if (null != m6 && false !== m6 && true !== m6) {
      r3.__k = [w3(m6)];
      var D2 = F(m6, n3, "svg" === _3 || "foreignObject" !== _3 && l4, a6, r3);
      D2 && (M4 += D2, L3 = true);
    }
    if (l.diffed && l.diffed(r3), r3.__ = void 0, l.unmount && l.unmount(r3), L3) x3 += M4;
    else if (o2.test(_3)) return H4 + " />";
    return x3 + "</" + _3 + ">";
  }
  S3.shallowRender = x2;

  // src/styled/index.module.css
  var styled_default = {
    QRPlaceholder: "styled_QRPlaceholder3",
    FooterBar: "styled_FooterBar3",
    Page: "styled_Page3",
    Center: "styled_Center3",
    WalletLink: "styled_WalletLink3",
    InfoBox: "styled_InfoBox3",
    TableExpanded: "styled_TableExpanded3",
    TableSimple: "styled_TableSimple3"
  };

  // src/styled/index.tsx
  function classNames(...classes) {
    return classes.filter(Boolean).join(" ");
  }
  function FooterBar(props) {
    return /* @__PURE__ */ h3("footer", { ...props, class: classNames(styled_default.FooterBar, props.class) });
  }
  function Page(props) {
    return /* @__PURE__ */ h3("div", { ...props, class: classNames(styled_default.Page, props.class) });
  }
  function InfoBox(props) {
    return /* @__PURE__ */ h3("div", { ...props, class: classNames(styled_default.InfoBox, props.class) });
  }
  function TableExpanded(props) {
    return /* @__PURE__ */ h3("dl", { ...props, class: classNames(styled_default.TableExpanded, props.class) });
  }
  function TableSimple(props) {
    return /* @__PURE__ */ h3("dl", { ...props, class: classNames(styled_default.TableSimple, props.class) });
  }

  // src/components/Footer.tsx
  function Footer() {
    return /* @__PURE__ */ h3(FooterBar, null, /* @__PURE__ */ h3("p", null, /* @__PURE__ */ h3("a", { href: "https://taler.net/" }, "Learn more about GNU Taler on our website."), /* @__PURE__ */ h3("p", null, "Copyright \xA9 2014\u20142021 Taler Systems SA")));
  }

  // src/utils.ts
  var TIME_DATE_FORMAT = "dd MMM yyyy HH:mm:ss";

  // src/utils/i18n.ts
  var jedLib = __toESM(require_jed());
  var jed = void 0;
  function setupI18n(lang, strings2) {
    lang = lang.replace("_", "-");
    if (!strings2[lang]) {
      strings2[lang] = {};
    }
    jed = new jedLib.Jed(strings2[lang]);
  }
  function toI18nString(stringSeq) {
    let s5 = "";
    for (let i5 = 0; i5 < stringSeq.length; i5++) {
      s5 += stringSeq[i5];
      if (i5 < stringSeq.length - 1) {
        s5 += `%${i5 + 1}$s`;
      }
    }
    return s5;
  }
  function singular(stringSeq, ...values) {
    const s5 = toI18nString(stringSeq);
    if (!s5) return "";
    const tr = jed.translate(s5).ifPlural(1, s5).fetch(...values);
    return tr;
  }
  function withContext(ctx) {
    return function(t4, ...v4) {
      const s5 = toI18nString(t4);
      const tr = jed.translate(s5).withContext(ctx).ifPlural(1, s5).fetch(...v4);
      return tr;
    };
  }
  function translate(stringSeq, ...values) {
    const s5 = toI18nString(stringSeq);
    if (!s5) return [];
    const translation = jed.ngettext(s5, s5, 1);
    return replacePlaceholderWithValues(translation, values);
  }
  function Translate({
    children,
    debug,
    context: ctx
  }) {
    const c5 = [].concat(children);
    const s5 = stringifyArray(c5);
    if (!s5) return [];
    const translation = ctx ? jed.npgettext(ctx, s5, s5, 1) : jed.ngettext(s5, s5, 1);
    if (debug) {
      console.log("looking for ", s5, "got", translation);
    }
    return replacePlaceholderWithValues(translation, c5);
  }
  function replacePlaceholderWithValues(translation, childArray) {
    const tr = translation.split(/%(\d+)\$s/);
    const placeholderChildren = [];
    for (let i5 = 0; i5 < childArray.length; i5++) {
      const x3 = childArray[i5];
      if (x3 === void 0) {
        continue;
      } else if (typeof x3 === "string") {
        continue;
      } else {
        placeholderChildren.push(x3);
      }
    }
    const result = [];
    for (let i5 = 0; i5 < tr.length; i5++) {
      if (i5 % 2 == 0) {
        result.push(tr[i5]);
      } else {
        const childIdx = Number.parseInt(tr[i5]) - 1;
        result.push(placeholderChildren[childIdx]);
      }
    }
    return result;
  }
  function stringifyArray(children) {
    let n3 = 1;
    const ss = children.map((c5) => {
      if (typeof c5 === "string") {
        return c5;
      }
      return `%${n3++}$s`;
    });
    const s5 = ss.join("").replace(/ +/g, " ").trim();
    return s5;
  }
  var i18n = {
    str: singular,
    ctx: withContext,
    singular,
    Translate,
    translate
  };

  // ../../node_modules/.pnpm/preact@10.11.3/node_modules/preact/hooks/dist/hooks.module.js
  var t3;
  var r2;
  var u4;
  var i4;
  var o3 = 0;
  var f3 = [];
  var c4 = [];
  var e3 = l.__b;
  var a5 = l.__r;
  var v3 = l.diffed;
  var l3 = l.__c;
  var m5 = l.unmount;
  function d5(t4, u5) {
    l.__h && l.__h(r2, t4, o3 || u5), o3 = 0;
    var i5 = r2.__H || (r2.__H = { __: [], __h: [] });
    return t4 >= i5.__.length && i5.__.push({ __V: c4 }), i5.__[t4];
  }
  function q2(n3) {
    var u5 = r2.context[n3.__c], i5 = d5(t3++, 9);
    return i5.c = n3, u5 ? (null == i5.__ && (i5.__ = true, u5.sub(r2)), u5.props.value) : n3.__;
  }
  function b4() {
    for (var t4; t4 = f3.shift(); ) if (t4.__P && t4.__H) try {
      t4.__H.__h.forEach(k4), t4.__H.__h.forEach(w4), t4.__H.__h = [];
    } catch (r3) {
      t4.__H.__h = [], l.__e(r3, t4.__v);
    }
  }
  l.__b = function(n3) {
    r2 = null, e3 && e3(n3);
  }, l.__r = function(n3) {
    a5 && a5(n3), t3 = 0;
    var i5 = (r2 = n3.__c).__H;
    i5 && (u4 === r2 ? (i5.__h = [], r2.__h = [], i5.__.forEach(function(n4) {
      n4.__N && (n4.__ = n4.__N), n4.__V = c4, n4.__N = n4.i = void 0;
    })) : (i5.__h.forEach(k4), i5.__h.forEach(w4), i5.__h = [])), u4 = r2;
  }, l.diffed = function(t4) {
    v3 && v3(t4);
    var o4 = t4.__c;
    o4 && o4.__H && (o4.__H.__h.length && (1 !== f3.push(o4) && i4 === l.requestAnimationFrame || ((i4 = l.requestAnimationFrame) || j3)(b4)), o4.__H.__.forEach(function(n3) {
      n3.i && (n3.__H = n3.i), n3.__V !== c4 && (n3.__ = n3.__V), n3.i = void 0, n3.__V = c4;
    })), u4 = r2 = null;
  }, l.__c = function(t4, r3) {
    r3.some(function(t5) {
      try {
        t5.__h.forEach(k4), t5.__h = t5.__h.filter(function(n3) {
          return !n3.__ || w4(n3);
        });
      } catch (u5) {
        r3.some(function(n3) {
          n3.__h && (n3.__h = []);
        }), r3 = [], l.__e(u5, t5.__v);
      }
    }), l3 && l3(t4, r3);
  }, l.unmount = function(t4) {
    m5 && m5(t4);
    var r3, u5 = t4.__c;
    u5 && u5.__H && (u5.__H.__.forEach(function(n3) {
      try {
        k4(n3);
      } catch (n4) {
        r3 = n4;
      }
    }), u5.__H = void 0, r3 && l.__e(r3, u5.__v));
  };
  var g3 = "function" == typeof requestAnimationFrame;
  function j3(n3) {
    var t4, r3 = function() {
      clearTimeout(u5), g3 && cancelAnimationFrame(t4), setTimeout(n3);
    }, u5 = setTimeout(r3, 100);
    g3 && (t4 = requestAnimationFrame(r3));
  }
  function k4(n3) {
    var t4 = r2, u5 = n3.__c;
    "function" == typeof u5 && (n3.__c = void 0, u5()), r2 = t4;
  }
  function w4(n3) {
    var t4 = r2;
    n3.__c = n3.__(), r2 = t4;
  }

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/de/_lib/formatDistance/index.js
  var formatDistanceLocale2 = {
    lessThanXSeconds: {
      standalone: {
        one: "weniger als 1 Sekunde",
        other: "weniger als {{count}} Sekunden"
      },
      withPreposition: {
        one: "weniger als 1 Sekunde",
        other: "weniger als {{count}} Sekunden"
      }
    },
    xSeconds: {
      standalone: {
        one: "1 Sekunde",
        other: "{{count}} Sekunden"
      },
      withPreposition: {
        one: "1 Sekunde",
        other: "{{count}} Sekunden"
      }
    },
    halfAMinute: {
      standalone: "halbe Minute",
      withPreposition: "halben Minute"
    },
    lessThanXMinutes: {
      standalone: {
        one: "weniger als 1 Minute",
        other: "weniger als {{count}} Minuten"
      },
      withPreposition: {
        one: "weniger als 1 Minute",
        other: "weniger als {{count}} Minuten"
      }
    },
    xMinutes: {
      standalone: {
        one: "1 Minute",
        other: "{{count}} Minuten"
      },
      withPreposition: {
        one: "1 Minute",
        other: "{{count}} Minuten"
      }
    },
    aboutXHours: {
      standalone: {
        one: "etwa 1 Stunde",
        other: "etwa {{count}} Stunden"
      },
      withPreposition: {
        one: "etwa 1 Stunde",
        other: "etwa {{count}} Stunden"
      }
    },
    xHours: {
      standalone: {
        one: "1 Stunde",
        other: "{{count}} Stunden"
      },
      withPreposition: {
        one: "1 Stunde",
        other: "{{count}} Stunden"
      }
    },
    xDays: {
      standalone: {
        one: "1 Tag",
        other: "{{count}} Tage"
      },
      withPreposition: {
        one: "1 Tag",
        other: "{{count}} Tagen"
      }
    },
    aboutXWeeks: {
      standalone: {
        one: "etwa 1 Woche",
        other: "etwa {{count}} Wochen"
      },
      withPreposition: {
        one: "etwa 1 Woche",
        other: "etwa {{count}} Wochen"
      }
    },
    xWeeks: {
      standalone: {
        one: "1 Woche",
        other: "{{count}} Wochen"
      },
      withPreposition: {
        one: "1 Woche",
        other: "{{count}} Wochen"
      }
    },
    aboutXMonths: {
      standalone: {
        one: "etwa 1 Monat",
        other: "etwa {{count}} Monate"
      },
      withPreposition: {
        one: "etwa 1 Monat",
        other: "etwa {{count}} Monaten"
      }
    },
    xMonths: {
      standalone: {
        one: "1 Monat",
        other: "{{count}} Monate"
      },
      withPreposition: {
        one: "1 Monat",
        other: "{{count}} Monaten"
      }
    },
    aboutXYears: {
      standalone: {
        one: "etwa 1 Jahr",
        other: "etwa {{count}} Jahre"
      },
      withPreposition: {
        one: "etwa 1 Jahr",
        other: "etwa {{count}} Jahren"
      }
    },
    xYears: {
      standalone: {
        one: "1 Jahr",
        other: "{{count}} Jahre"
      },
      withPreposition: {
        one: "1 Jahr",
        other: "{{count}} Jahren"
      }
    },
    overXYears: {
      standalone: {
        one: "mehr als 1 Jahr",
        other: "mehr als {{count}} Jahre"
      },
      withPreposition: {
        one: "mehr als 1 Jahr",
        other: "mehr als {{count}} Jahren"
      }
    },
    almostXYears: {
      standalone: {
        one: "fast 1 Jahr",
        other: "fast {{count}} Jahre"
      },
      withPreposition: {
        one: "fast 1 Jahr",
        other: "fast {{count}} Jahren"
      }
    }
  };
  var formatDistance3 = function formatDistance4(token, count, options) {
    var result;
    var tokenValue = options !== null && options !== void 0 && options.addSuffix ? formatDistanceLocale2[token].withPreposition : formatDistanceLocale2[token].standalone;
    if (typeof tokenValue === "string") {
      result = tokenValue;
    } else if (count === 1) {
      result = tokenValue.one;
    } else {
      result = tokenValue.other.replace("{{count}}", String(count));
    }
    if (options !== null && options !== void 0 && options.addSuffix) {
      if (options.comparison && options.comparison > 0) {
        return "in " + result;
      } else {
        return "vor " + result;
      }
    }
    return result;
  };
  var formatDistance_default2 = formatDistance3;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/de/_lib/formatLong/index.js
  var dateFormats2 = {
    full: "EEEE, do MMMM y",
    // Montag, 7. Januar 2018
    long: "do MMMM y",
    // 7. Januar 2018
    medium: "do MMM y",
    // 7. Jan. 2018
    short: "dd.MM.y"
    // 07.01.2018
  };
  var timeFormats2 = {
    full: "HH:mm:ss zzzz",
    long: "HH:mm:ss z",
    medium: "HH:mm:ss",
    short: "HH:mm"
  };
  var dateTimeFormats2 = {
    full: "{{date}} 'um' {{time}}",
    long: "{{date}} 'um' {{time}}",
    medium: "{{date}} {{time}}",
    short: "{{date}} {{time}}"
  };
  var formatLong2 = {
    date: buildFormatLongFn({
      formats: dateFormats2,
      defaultWidth: "full"
    }),
    time: buildFormatLongFn({
      formats: timeFormats2,
      defaultWidth: "full"
    }),
    dateTime: buildFormatLongFn({
      formats: dateTimeFormats2,
      defaultWidth: "full"
    })
  };
  var formatLong_default2 = formatLong2;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/de/_lib/formatRelative/index.js
  var formatRelativeLocale2 = {
    lastWeek: "'letzten' eeee 'um' p",
    yesterday: "'gestern um' p",
    today: "'heute um' p",
    tomorrow: "'morgen um' p",
    nextWeek: "eeee 'um' p",
    other: "P"
  };
  var formatRelative3 = function formatRelative4(token, _date, _baseDate, _options) {
    return formatRelativeLocale2[token];
  };
  var formatRelative_default2 = formatRelative3;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/de/_lib/localize/index.js
  var eraValues2 = {
    narrow: ["v.Chr.", "n.Chr."],
    abbreviated: ["v.Chr.", "n.Chr."],
    wide: ["vor Christus", "nach Christus"]
  };
  var quarterValues2 = {
    narrow: ["1", "2", "3", "4"],
    abbreviated: ["Q1", "Q2", "Q3", "Q4"],
    wide: ["1. Quartal", "2. Quartal", "3. Quartal", "4. Quartal"]
  };
  var monthValues2 = {
    narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"],
    abbreviated: ["Jan", "Feb", "M\xE4r", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"],
    wide: ["Januar", "Februar", "M\xE4rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"]
  };
  var formattingMonthValues = {
    narrow: monthValues2.narrow,
    abbreviated: ["Jan.", "Feb.", "M\xE4rz", "Apr.", "Mai", "Juni", "Juli", "Aug.", "Sep.", "Okt.", "Nov.", "Dez."],
    wide: monthValues2.wide
  };
  var dayValues2 = {
    narrow: ["S", "M", "D", "M", "D", "F", "S"],
    short: ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"],
    abbreviated: ["So.", "Mo.", "Di.", "Mi.", "Do.", "Fr.", "Sa."],
    wide: ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"]
  };
  var dayPeriodValues2 = {
    narrow: {
      am: "vm.",
      pm: "nm.",
      midnight: "Mitternacht",
      noon: "Mittag",
      morning: "Morgen",
      afternoon: "Nachm.",
      evening: "Abend",
      night: "Nacht"
    },
    abbreviated: {
      am: "vorm.",
      pm: "nachm.",
      midnight: "Mitternacht",
      noon: "Mittag",
      morning: "Morgen",
      afternoon: "Nachmittag",
      evening: "Abend",
      night: "Nacht"
    },
    wide: {
      am: "vormittags",
      pm: "nachmittags",
      midnight: "Mitternacht",
      noon: "Mittag",
      morning: "Morgen",
      afternoon: "Nachmittag",
      evening: "Abend",
      night: "Nacht"
    }
  };
  var formattingDayPeriodValues2 = {
    narrow: {
      am: "vm.",
      pm: "nm.",
      midnight: "Mitternacht",
      noon: "Mittag",
      morning: "morgens",
      afternoon: "nachm.",
      evening: "abends",
      night: "nachts"
    },
    abbreviated: {
      am: "vorm.",
      pm: "nachm.",
      midnight: "Mitternacht",
      noon: "Mittag",
      morning: "morgens",
      afternoon: "nachmittags",
      evening: "abends",
      night: "nachts"
    },
    wide: {
      am: "vormittags",
      pm: "nachmittags",
      midnight: "Mitternacht",
      noon: "Mittag",
      morning: "morgens",
      afternoon: "nachmittags",
      evening: "abends",
      night: "nachts"
    }
  };
  var ordinalNumber3 = function ordinalNumber4(dirtyNumber) {
    var number = Number(dirtyNumber);
    return number + ".";
  };
  var localize2 = {
    ordinalNumber: ordinalNumber3,
    era: buildLocalizeFn({
      values: eraValues2,
      defaultWidth: "wide"
    }),
    quarter: buildLocalizeFn({
      values: quarterValues2,
      defaultWidth: "wide",
      argumentCallback: function argumentCallback2(quarter) {
        return quarter - 1;
      }
    }),
    month: buildLocalizeFn({
      values: monthValues2,
      formattingValues: formattingMonthValues,
      defaultWidth: "wide"
    }),
    day: buildLocalizeFn({
      values: dayValues2,
      defaultWidth: "wide"
    }),
    dayPeriod: buildLocalizeFn({
      values: dayPeriodValues2,
      defaultWidth: "wide",
      formattingValues: formattingDayPeriodValues2,
      defaultFormattingWidth: "wide"
    })
  };
  var localize_default2 = localize2;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/de/_lib/match/index.js
  var matchOrdinalNumberPattern2 = /^(\d+)(\.)?/i;
  var parseOrdinalNumberPattern2 = /\d+/i;
  var matchEraPatterns2 = {
    narrow: /^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,
    abbreviated: /^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,
    wide: /^(vor Christus|vor unserer Zeitrechnung|nach Christus|unserer Zeitrechnung)/i
  };
  var parseEraPatterns2 = {
    any: [/^v/i, /^n/i]
  };
  var matchQuarterPatterns2 = {
    narrow: /^[1234]/i,
    abbreviated: /^q[1234]/i,
    wide: /^[1234](\.)? Quartal/i
  };
  var parseQuarterPatterns2 = {
    any: [/1/i, /2/i, /3/i, /4/i]
  };
  var matchMonthPatterns2 = {
    narrow: /^[jfmasond]/i,
    abbreviated: /^(j[aä]n|feb|mär[z]?|apr|mai|jun[i]?|jul[i]?|aug|sep|okt|nov|dez)\.?/i,
    wide: /^(januar|februar|märz|april|mai|juni|juli|august|september|oktober|november|dezember)/i
  };
  var parseMonthPatterns2 = {
    narrow: [/^j/i, /^f/i, /^m/i, /^a/i, /^m/i, /^j/i, /^j/i, /^a/i, /^s/i, /^o/i, /^n/i, /^d/i],
    any: [/^j[aä]/i, /^f/i, /^mär/i, /^ap/i, /^mai/i, /^jun/i, /^jul/i, /^au/i, /^s/i, /^o/i, /^n/i, /^d/i]
  };
  var matchDayPatterns2 = {
    narrow: /^[smdmf]/i,
    short: /^(so|mo|di|mi|do|fr|sa)/i,
    abbreviated: /^(son?|mon?|die?|mit?|don?|fre?|sam?)\.?/i,
    wide: /^(sonntag|montag|dienstag|mittwoch|donnerstag|freitag|samstag)/i
  };
  var parseDayPatterns2 = {
    any: [/^so/i, /^mo/i, /^di/i, /^mi/i, /^do/i, /^f/i, /^sa/i]
  };
  var matchDayPeriodPatterns2 = {
    narrow: /^(vm\.?|nm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,
    abbreviated: /^(vorm\.?|nachm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,
    wide: /^(vormittags|nachmittags|Mitternacht|Mittag|morgens|nachmittags|abends|nachts)/i
  };
  var parseDayPeriodPatterns2 = {
    any: {
      am: /^v/i,
      pm: /^n/i,
      midnight: /^Mitte/i,
      noon: /^Mitta/i,
      morning: /morgens/i,
      afternoon: /nachmittags/i,
      // will never be matched. Afternoon is matched by `pm`
      evening: /abends/i,
      night: /nachts/i
      // will never be matched. Night is matched by `pm`
    }
  };
  var match2 = {
    ordinalNumber: buildMatchPatternFn({
      matchPattern: matchOrdinalNumberPattern2,
      parsePattern: parseOrdinalNumberPattern2,
      valueCallback: function valueCallback3(value) {
        return parseInt(value);
      }
    }),
    era: buildMatchFn({
      matchPatterns: matchEraPatterns2,
      defaultMatchWidth: "wide",
      parsePatterns: parseEraPatterns2,
      defaultParseWidth: "any"
    }),
    quarter: buildMatchFn({
      matchPatterns: matchQuarterPatterns2,
      defaultMatchWidth: "wide",
      parsePatterns: parseQuarterPatterns2,
      defaultParseWidth: "any",
      valueCallback: function valueCallback4(index) {
        return index + 1;
      }
    }),
    month: buildMatchFn({
      matchPatterns: matchMonthPatterns2,
      defaultMatchWidth: "wide",
      parsePatterns: parseMonthPatterns2,
      defaultParseWidth: "any"
    }),
    day: buildMatchFn({
      matchPatterns: matchDayPatterns2,
      defaultMatchWidth: "wide",
      parsePatterns: parseDayPatterns2,
      defaultParseWidth: "any"
    }),
    dayPeriod: buildMatchFn({
      matchPatterns: matchDayPeriodPatterns2,
      defaultMatchWidth: "wide",
      parsePatterns: parseDayPeriodPatterns2,
      defaultParseWidth: "any"
    })
  };
  var match_default2 = match2;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/de/index.js
  var locale2 = {
    code: "de",
    formatDistance: formatDistance_default2,
    formatLong: formatLong_default2,
    formatRelative: formatRelative_default2,
    localize: localize_default2,
    match: match_default2,
    options: {
      weekStartsOn: 1,
      firstWeekContainsDate: 4
    }
  };
  var de_default = locale2;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/en-GB/_lib/formatLong/index.js
  var dateFormats3 = {
    full: "EEEE, d MMMM yyyy",
    long: "d MMMM yyyy",
    medium: "d MMM yyyy",
    short: "dd/MM/yyyy"
  };
  var timeFormats3 = {
    full: "HH:mm:ss zzzz",
    long: "HH:mm:ss z",
    medium: "HH:mm:ss",
    short: "HH:mm"
  };
  var dateTimeFormats3 = {
    full: "{{date}} 'at' {{time}}",
    long: "{{date}} 'at' {{time}}",
    medium: "{{date}}, {{time}}",
    short: "{{date}}, {{time}}"
  };
  var formatLong3 = {
    date: buildFormatLongFn({
      formats: dateFormats3,
      defaultWidth: "full"
    }),
    time: buildFormatLongFn({
      formats: timeFormats3,
      defaultWidth: "full"
    }),
    dateTime: buildFormatLongFn({
      formats: dateTimeFormats3,
      defaultWidth: "full"
    })
  };
  var formatLong_default3 = formatLong3;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/en-GB/index.js
  var locale3 = {
    code: "en-GB",
    formatDistance: formatDistance_default,
    formatLong: formatLong_default3,
    formatRelative: formatRelative_default,
    localize: localize_default,
    match: match_default,
    options: {
      weekStartsOn: 1,
      firstWeekContainsDate: 4
    }
  };
  var en_GB_default = locale3;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/es/_lib/formatDistance/index.js
  var formatDistanceLocale3 = {
    lessThanXSeconds: {
      one: "menos de un segundo",
      other: "menos de {{count}} segundos"
    },
    xSeconds: {
      one: "1 segundo",
      other: "{{count}} segundos"
    },
    halfAMinute: "medio minuto",
    lessThanXMinutes: {
      one: "menos de un minuto",
      other: "menos de {{count}} minutos"
    },
    xMinutes: {
      one: "1 minuto",
      other: "{{count}} minutos"
    },
    aboutXHours: {
      one: "alrededor de 1 hora",
      other: "alrededor de {{count}} horas"
    },
    xHours: {
      one: "1 hora",
      other: "{{count}} horas"
    },
    xDays: {
      one: "1 d\xEDa",
      other: "{{count}} d\xEDas"
    },
    aboutXWeeks: {
      one: "alrededor de 1 semana",
      other: "alrededor de {{count}} semanas"
    },
    xWeeks: {
      one: "1 semana",
      other: "{{count}} semanas"
    },
    aboutXMonths: {
      one: "alrededor de 1 mes",
      other: "alrededor de {{count}} meses"
    },
    xMonths: {
      one: "1 mes",
      other: "{{count}} meses"
    },
    aboutXYears: {
      one: "alrededor de 1 a\xF1o",
      other: "alrededor de {{count}} a\xF1os"
    },
    xYears: {
      one: "1 a\xF1o",
      other: "{{count}} a\xF1os"
    },
    overXYears: {
      one: "m\xE1s de 1 a\xF1o",
      other: "m\xE1s de {{count}} a\xF1os"
    },
    almostXYears: {
      one: "casi 1 a\xF1o",
      other: "casi {{count}} a\xF1os"
    }
  };
  var formatDistance5 = function formatDistance6(token, count, options) {
    var result;
    var tokenValue = formatDistanceLocale3[token];
    if (typeof tokenValue === "string") {
      result = tokenValue;
    } else if (count === 1) {
      result = tokenValue.one;
    } else {
      result = tokenValue.other.replace("{{count}}", count.toString());
    }
    if (options !== null && options !== void 0 && options.addSuffix) {
      if (options.comparison && options.comparison > 0) {
        return "en " + result;
      } else {
        return "hace " + result;
      }
    }
    return result;
  };
  var formatDistance_default3 = formatDistance5;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/es/_lib/formatLong/index.js
  var dateFormats4 = {
    full: "EEEE, d 'de' MMMM 'de' y",
    long: "d 'de' MMMM 'de' y",
    medium: "d MMM y",
    short: "dd/MM/y"
  };
  var timeFormats4 = {
    full: "HH:mm:ss zzzz",
    long: "HH:mm:ss z",
    medium: "HH:mm:ss",
    short: "HH:mm"
  };
  var dateTimeFormats4 = {
    full: "{{date}} 'a las' {{time}}",
    long: "{{date}} 'a las' {{time}}",
    medium: "{{date}}, {{time}}",
    short: "{{date}}, {{time}}"
  };
  var formatLong4 = {
    date: buildFormatLongFn({
      formats: dateFormats4,
      defaultWidth: "full"
    }),
    time: buildFormatLongFn({
      formats: timeFormats4,
      defaultWidth: "full"
    }),
    dateTime: buildFormatLongFn({
      formats: dateTimeFormats4,
      defaultWidth: "full"
    })
  };
  var formatLong_default4 = formatLong4;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/es/_lib/formatRelative/index.js
  var formatRelativeLocale3 = {
    lastWeek: "'el' eeee 'pasado a la' p",
    yesterday: "'ayer a la' p",
    today: "'hoy a la' p",
    tomorrow: "'ma\xF1ana a la' p",
    nextWeek: "eeee 'a la' p",
    other: "P"
  };
  var formatRelativeLocalePlural = {
    lastWeek: "'el' eeee 'pasado a las' p",
    yesterday: "'ayer a las' p",
    today: "'hoy a las' p",
    tomorrow: "'ma\xF1ana a las' p",
    nextWeek: "eeee 'a las' p",
    other: "P"
  };
  var formatRelative5 = function formatRelative6(token, date, _baseDate, _options) {
    if (date.getUTCHours() !== 1) {
      return formatRelativeLocalePlural[token];
    } else {
      return formatRelativeLocale3[token];
    }
  };
  var formatRelative_default3 = formatRelative5;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/es/_lib/localize/index.js
  var eraValues3 = {
    narrow: ["AC", "DC"],
    abbreviated: ["AC", "DC"],
    wide: ["antes de cristo", "despu\xE9s de cristo"]
  };
  var quarterValues3 = {
    narrow: ["1", "2", "3", "4"],
    abbreviated: ["T1", "T2", "T3", "T4"],
    wide: ["1\xBA trimestre", "2\xBA trimestre", "3\xBA trimestre", "4\xBA trimestre"]
  };
  var monthValues3 = {
    narrow: ["e", "f", "m", "a", "m", "j", "j", "a", "s", "o", "n", "d"],
    abbreviated: ["ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic"],
    wide: ["enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre"]
  };
  var dayValues3 = {
    narrow: ["d", "l", "m", "m", "j", "v", "s"],
    short: ["do", "lu", "ma", "mi", "ju", "vi", "s\xE1"],
    abbreviated: ["dom", "lun", "mar", "mi\xE9", "jue", "vie", "s\xE1b"],
    wide: ["domingo", "lunes", "martes", "mi\xE9rcoles", "jueves", "viernes", "s\xE1bado"]
  };
  var dayPeriodValues3 = {
    narrow: {
      am: "a",
      pm: "p",
      midnight: "mn",
      noon: "md",
      morning: "ma\xF1ana",
      afternoon: "tarde",
      evening: "tarde",
      night: "noche"
    },
    abbreviated: {
      am: "AM",
      pm: "PM",
      midnight: "medianoche",
      noon: "mediodia",
      morning: "ma\xF1ana",
      afternoon: "tarde",
      evening: "tarde",
      night: "noche"
    },
    wide: {
      am: "a.m.",
      pm: "p.m.",
      midnight: "medianoche",
      noon: "mediodia",
      morning: "ma\xF1ana",
      afternoon: "tarde",
      evening: "tarde",
      night: "noche"
    }
  };
  var formattingDayPeriodValues3 = {
    narrow: {
      am: "a",
      pm: "p",
      midnight: "mn",
      noon: "md",
      morning: "de la ma\xF1ana",
      afternoon: "de la tarde",
      evening: "de la tarde",
      night: "de la noche"
    },
    abbreviated: {
      am: "AM",
      pm: "PM",
      midnight: "medianoche",
      noon: "mediodia",
      morning: "de la ma\xF1ana",
      afternoon: "de la tarde",
      evening: "de la tarde",
      night: "de la noche"
    },
    wide: {
      am: "a.m.",
      pm: "p.m.",
      midnight: "medianoche",
      noon: "mediodia",
      morning: "de la ma\xF1ana",
      afternoon: "de la tarde",
      evening: "de la tarde",
      night: "de la noche"
    }
  };
  var ordinalNumber5 = function ordinalNumber6(dirtyNumber, _options) {
    var number = Number(dirtyNumber);
    return number + "\xBA";
  };
  var localize3 = {
    ordinalNumber: ordinalNumber5,
    era: buildLocalizeFn({
      values: eraValues3,
      defaultWidth: "wide"
    }),
    quarter: buildLocalizeFn({
      values: quarterValues3,
      defaultWidth: "wide",
      argumentCallback: function argumentCallback3(quarter) {
        return Number(quarter) - 1;
      }
    }),
    month: buildLocalizeFn({
      values: monthValues3,
      defaultWidth: "wide"
    }),
    day: buildLocalizeFn({
      values: dayValues3,
      defaultWidth: "wide"
    }),
    dayPeriod: buildLocalizeFn({
      values: dayPeriodValues3,
      defaultWidth: "wide",
      formattingValues: formattingDayPeriodValues3,
      defaultFormattingWidth: "wide"
    })
  };
  var localize_default3 = localize3;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/es/_lib/match/index.js
  var matchOrdinalNumberPattern3 = /^(\d+)(º)?/i;
  var parseOrdinalNumberPattern3 = /\d+/i;
  var matchEraPatterns3 = {
    narrow: /^(ac|dc|a|d)/i,
    abbreviated: /^(a\.?\s?c\.?|a\.?\s?e\.?\s?c\.?|d\.?\s?c\.?|e\.?\s?c\.?)/i,
    wide: /^(antes de cristo|antes de la era com[uú]n|despu[eé]s de cristo|era com[uú]n)/i
  };
  var parseEraPatterns3 = {
    any: [/^ac/i, /^dc/i],
    wide: [/^(antes de cristo|antes de la era com[uú]n)/i, /^(despu[eé]s de cristo|era com[uú]n)/i]
  };
  var matchQuarterPatterns3 = {
    narrow: /^[1234]/i,
    abbreviated: /^T[1234]/i,
    wide: /^[1234](º)? trimestre/i
  };
  var parseQuarterPatterns3 = {
    any: [/1/i, /2/i, /3/i, /4/i]
  };
  var matchMonthPatterns3 = {
    narrow: /^[efmajsond]/i,
    abbreviated: /^(ene|feb|mar|abr|may|jun|jul|ago|sep|oct|nov|dic)/i,
    wide: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i
  };
  var parseMonthPatterns3 = {
    narrow: [/^e/i, /^f/i, /^m/i, /^a/i, /^m/i, /^j/i, /^j/i, /^a/i, /^s/i, /^o/i, /^n/i, /^d/i],
    any: [/^en/i, /^feb/i, /^mar/i, /^abr/i, /^may/i, /^jun/i, /^jul/i, /^ago/i, /^sep/i, /^oct/i, /^nov/i, /^dic/i]
  };
  var matchDayPatterns3 = {
    narrow: /^[dlmjvs]/i,
    short: /^(do|lu|ma|mi|ju|vi|s[áa])/i,
    abbreviated: /^(dom|lun|mar|mi[ée]|jue|vie|s[áa]b)/i,
    wide: /^(domingo|lunes|martes|mi[ée]rcoles|jueves|viernes|s[áa]bado)/i
  };
  var parseDayPatterns3 = {
    narrow: [/^d/i, /^l/i, /^m/i, /^m/i, /^j/i, /^v/i, /^s/i],
    any: [/^do/i, /^lu/i, /^ma/i, /^mi/i, /^ju/i, /^vi/i, /^sa/i]
  };
  var matchDayPeriodPatterns3 = {
    narrow: /^(a|p|mn|md|(de la|a las) (mañana|tarde|noche))/i,
    any: /^([ap]\.?\s?m\.?|medianoche|mediodia|(de la|a las) (mañana|tarde|noche))/i
  };
  var parseDayPeriodPatterns3 = {
    any: {
      am: /^a/i,
      pm: /^p/i,
      midnight: /^mn/i,
      noon: /^md/i,
      morning: /mañana/i,
      afternoon: /tarde/i,
      evening: /tarde/i,
      night: /noche/i
    }
  };
  var match3 = {
    ordinalNumber: buildMatchPatternFn({
      matchPattern: matchOrdinalNumberPattern3,
      parsePattern: parseOrdinalNumberPattern3,
      valueCallback: function valueCallback5(value) {
        return parseInt(value, 10);
      }
    }),
    era: buildMatchFn({
      matchPatterns: matchEraPatterns3,
      defaultMatchWidth: "wide",
      parsePatterns: parseEraPatterns3,
      defaultParseWidth: "any"
    }),
    quarter: buildMatchFn({
      matchPatterns: matchQuarterPatterns3,
      defaultMatchWidth: "wide",
      parsePatterns: parseQuarterPatterns3,
      defaultParseWidth: "any",
      valueCallback: function valueCallback6(index) {
        return index + 1;
      }
    }),
    month: buildMatchFn({
      matchPatterns: matchMonthPatterns3,
      defaultMatchWidth: "wide",
      parsePatterns: parseMonthPatterns3,
      defaultParseWidth: "any"
    }),
    day: buildMatchFn({
      matchPatterns: matchDayPatterns3,
      defaultMatchWidth: "wide",
      parsePatterns: parseDayPatterns3,
      defaultParseWidth: "any"
    }),
    dayPeriod: buildMatchFn({
      matchPatterns: matchDayPeriodPatterns3,
      defaultMatchWidth: "any",
      parsePatterns: parseDayPeriodPatterns3,
      defaultParseWidth: "any"
    })
  };
  var match_default3 = match3;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/es/index.js
  var locale4 = {
    code: "es",
    formatDistance: formatDistance_default3,
    formatLong: formatLong_default4,
    formatRelative: formatRelative_default3,
    localize: localize_default3,
    match: match_default3,
    options: {
      weekStartsOn: 1,
      firstWeekContainsDate: 1
    }
  };
  var es_default = locale4;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/fr/_lib/formatDistance/index.js
  var formatDistanceLocale4 = {
    lessThanXSeconds: {
      one: "moins d\u2019une seconde",
      other: "moins de {{count}} secondes"
    },
    xSeconds: {
      one: "1 seconde",
      other: "{{count}} secondes"
    },
    halfAMinute: "30 secondes",
    lessThanXMinutes: {
      one: "moins d\u2019une minute",
      other: "moins de {{count}} minutes"
    },
    xMinutes: {
      one: "1 minute",
      other: "{{count}} minutes"
    },
    aboutXHours: {
      one: "environ 1 heure",
      other: "environ {{count}} heures"
    },
    xHours: {
      one: "1 heure",
      other: "{{count}} heures"
    },
    xDays: {
      one: "1 jour",
      other: "{{count}} jours"
    },
    aboutXWeeks: {
      one: "environ 1 semaine",
      other: "environ {{count}} semaines"
    },
    xWeeks: {
      one: "1 semaine",
      other: "{{count}} semaines"
    },
    aboutXMonths: {
      one: "environ 1 mois",
      other: "environ {{count}} mois"
    },
    xMonths: {
      one: "1 mois",
      other: "{{count}} mois"
    },
    aboutXYears: {
      one: "environ 1 an",
      other: "environ {{count}} ans"
    },
    xYears: {
      one: "1 an",
      other: "{{count}} ans"
    },
    overXYears: {
      one: "plus d\u2019un an",
      other: "plus de {{count}} ans"
    },
    almostXYears: {
      one: "presqu\u2019un an",
      other: "presque {{count}} ans"
    }
  };
  var formatDistance7 = function formatDistance8(token, count, options) {
    var result;
    var form = formatDistanceLocale4[token];
    if (typeof form === "string") {
      result = form;
    } else if (count === 1) {
      result = form.one;
    } else {
      result = form.other.replace("{{count}}", String(count));
    }
    if (options !== null && options !== void 0 && options.addSuffix) {
      if (options.comparison && options.comparison > 0) {
        return "dans " + result;
      } else {
        return "il y a " + result;
      }
    }
    return result;
  };
  var formatDistance_default4 = formatDistance7;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/fr/_lib/formatLong/index.js
  var dateFormats5 = {
    full: "EEEE d MMMM y",
    long: "d MMMM y",
    medium: "d MMM y",
    short: "dd/MM/y"
  };
  var timeFormats5 = {
    full: "HH:mm:ss zzzz",
    long: "HH:mm:ss z",
    medium: "HH:mm:ss",
    short: "HH:mm"
  };
  var dateTimeFormats5 = {
    full: "{{date}} '\xE0' {{time}}",
    long: "{{date}} '\xE0' {{time}}",
    medium: "{{date}}, {{time}}",
    short: "{{date}}, {{time}}"
  };
  var formatLong5 = {
    date: buildFormatLongFn({
      formats: dateFormats5,
      defaultWidth: "full"
    }),
    time: buildFormatLongFn({
      formats: timeFormats5,
      defaultWidth: "full"
    }),
    dateTime: buildFormatLongFn({
      formats: dateTimeFormats5,
      defaultWidth: "full"
    })
  };
  var formatLong_default5 = formatLong5;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/fr/_lib/formatRelative/index.js
  var formatRelativeLocale4 = {
    lastWeek: "eeee 'dernier \xE0' p",
    yesterday: "'hier \xE0' p",
    today: "'aujourd\u2019hui \xE0' p",
    tomorrow: "'demain \xE0' p'",
    nextWeek: "eeee 'prochain \xE0' p",
    other: "P"
  };
  var formatRelative7 = function formatRelative8(token, _date, _baseDate, _options) {
    return formatRelativeLocale4[token];
  };
  var formatRelative_default4 = formatRelative7;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/fr/_lib/localize/index.js
  var eraValues4 = {
    narrow: ["av. J.-C", "ap. J.-C"],
    abbreviated: ["av. J.-C", "ap. J.-C"],
    wide: ["avant J\xE9sus-Christ", "apr\xE8s J\xE9sus-Christ"]
  };
  var quarterValues4 = {
    narrow: ["T1", "T2", "T3", "T4"],
    abbreviated: ["1er trim.", "2\xE8me trim.", "3\xE8me trim.", "4\xE8me trim."],
    wide: ["1er trimestre", "2\xE8me trimestre", "3\xE8me trimestre", "4\xE8me trimestre"]
  };
  var monthValues4 = {
    narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"],
    abbreviated: ["janv.", "f\xE9vr.", "mars", "avr.", "mai", "juin", "juil.", "ao\xFBt", "sept.", "oct.", "nov.", "d\xE9c."],
    wide: ["janvier", "f\xE9vrier", "mars", "avril", "mai", "juin", "juillet", "ao\xFBt", "septembre", "octobre", "novembre", "d\xE9cembre"]
  };
  var dayValues4 = {
    narrow: ["D", "L", "M", "M", "J", "V", "S"],
    short: ["di", "lu", "ma", "me", "je", "ve", "sa"],
    abbreviated: ["dim.", "lun.", "mar.", "mer.", "jeu.", "ven.", "sam."],
    wide: ["dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi"]
  };
  var dayPeriodValues4 = {
    narrow: {
      am: "AM",
      pm: "PM",
      midnight: "minuit",
      noon: "midi",
      morning: "mat.",
      afternoon: "ap.m.",
      evening: "soir",
      night: "mat."
    },
    abbreviated: {
      am: "AM",
      pm: "PM",
      midnight: "minuit",
      noon: "midi",
      morning: "matin",
      afternoon: "apr\xE8s-midi",
      evening: "soir",
      night: "matin"
    },
    wide: {
      am: "AM",
      pm: "PM",
      midnight: "minuit",
      noon: "midi",
      morning: "du matin",
      afternoon: "de l\u2019apr\xE8s-midi",
      evening: "du soir",
      night: "du matin"
    }
  };
  var ordinalNumber7 = function ordinalNumber8(dirtyNumber, options) {
    var number = Number(dirtyNumber);
    var unit = options === null || options === void 0 ? void 0 : options.unit;
    if (number === 0) return "0";
    var feminineUnits = ["year", "week", "hour", "minute", "second"];
    var suffix;
    if (number === 1) {
      suffix = unit && feminineUnits.includes(unit) ? "\xE8re" : "er";
    } else {
      suffix = "\xE8me";
    }
    return number + suffix;
  };
  var localize4 = {
    ordinalNumber: ordinalNumber7,
    era: buildLocalizeFn({
      values: eraValues4,
      defaultWidth: "wide"
    }),
    quarter: buildLocalizeFn({
      values: quarterValues4,
      defaultWidth: "wide",
      argumentCallback: function argumentCallback4(quarter) {
        return quarter - 1;
      }
    }),
    month: buildLocalizeFn({
      values: monthValues4,
      defaultWidth: "wide"
    }),
    day: buildLocalizeFn({
      values: dayValues4,
      defaultWidth: "wide"
    }),
    dayPeriod: buildLocalizeFn({
      values: dayPeriodValues4,
      defaultWidth: "wide"
    })
  };
  var localize_default4 = localize4;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/fr/_lib/match/index.js
  var matchOrdinalNumberPattern4 = /^(\d+)(ième|ère|ème|er|e)?/i;
  var parseOrdinalNumberPattern4 = /\d+/i;
  var matchEraPatterns4 = {
    narrow: /^(av\.J\.C|ap\.J\.C|ap\.J\.-C)/i,
    abbreviated: /^(av\.J\.-C|av\.J-C|apr\.J\.-C|apr\.J-C|ap\.J-C)/i,
    wide: /^(avant Jésus-Christ|après Jésus-Christ)/i
  };
  var parseEraPatterns4 = {
    any: [/^av/i, /^ap/i]
  };
  var matchQuarterPatterns4 = {
    narrow: /^T?[1234]/i,
    abbreviated: /^[1234](er|ème|e)? trim\.?/i,
    wide: /^[1234](er|ème|e)? trimestre/i
  };
  var parseQuarterPatterns4 = {
    any: [/1/i, /2/i, /3/i, /4/i]
  };
  var matchMonthPatterns4 = {
    narrow: /^[jfmasond]/i,
    abbreviated: /^(janv|févr|mars|avr|mai|juin|juill|juil|août|sept|oct|nov|déc)\.?/i,
    wide: /^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i
  };
  var parseMonthPatterns4 = {
    narrow: [/^j/i, /^f/i, /^m/i, /^a/i, /^m/i, /^j/i, /^j/i, /^a/i, /^s/i, /^o/i, /^n/i, /^d/i],
    any: [/^ja/i, /^f/i, /^mar/i, /^av/i, /^ma/i, /^juin/i, /^juil/i, /^ao/i, /^s/i, /^o/i, /^n/i, /^d/i]
  };
  var matchDayPatterns4 = {
    narrow: /^[lmjvsd]/i,
    short: /^(di|lu|ma|me|je|ve|sa)/i,
    abbreviated: /^(dim|lun|mar|mer|jeu|ven|sam)\.?/i,
    wide: /^(dimanche|lundi|mardi|mercredi|jeudi|vendredi|samedi)/i
  };
  var parseDayPatterns4 = {
    narrow: [/^d/i, /^l/i, /^m/i, /^m/i, /^j/i, /^v/i, /^s/i],
    any: [/^di/i, /^lu/i, /^ma/i, /^me/i, /^je/i, /^ve/i, /^sa/i]
  };
  var matchDayPeriodPatterns4 = {
    narrow: /^(a|p|minuit|midi|mat\.?|ap\.?m\.?|soir|nuit)/i,
    any: /^([ap]\.?\s?m\.?|du matin|de l'après[-\s]midi|du soir|de la nuit)/i
  };
  var parseDayPeriodPatterns4 = {
    any: {
      am: /^a/i,
      pm: /^p/i,
      midnight: /^min/i,
      noon: /^mid/i,
      morning: /mat/i,
      afternoon: /ap/i,
      evening: /soir/i,
      night: /nuit/i
    }
  };
  var match4 = {
    ordinalNumber: buildMatchPatternFn({
      matchPattern: matchOrdinalNumberPattern4,
      parsePattern: parseOrdinalNumberPattern4,
      valueCallback: function valueCallback7(value) {
        return parseInt(value);
      }
    }),
    era: buildMatchFn({
      matchPatterns: matchEraPatterns4,
      defaultMatchWidth: "wide",
      parsePatterns: parseEraPatterns4,
      defaultParseWidth: "any"
    }),
    quarter: buildMatchFn({
      matchPatterns: matchQuarterPatterns4,
      defaultMatchWidth: "wide",
      parsePatterns: parseQuarterPatterns4,
      defaultParseWidth: "any",
      valueCallback: function valueCallback8(index) {
        return index + 1;
      }
    }),
    month: buildMatchFn({
      matchPatterns: matchMonthPatterns4,
      defaultMatchWidth: "wide",
      parsePatterns: parseMonthPatterns4,
      defaultParseWidth: "any"
    }),
    day: buildMatchFn({
      matchPatterns: matchDayPatterns4,
      defaultMatchWidth: "wide",
      parsePatterns: parseDayPatterns4,
      defaultParseWidth: "any"
    }),
    dayPeriod: buildMatchFn({
      matchPatterns: matchDayPeriodPatterns4,
      defaultMatchWidth: "any",
      parsePatterns: parseDayPeriodPatterns4,
      defaultParseWidth: "any"
    })
  };
  var match_default4 = match4;

  // ../../node_modules/.pnpm/date-fns@2.29.3/node_modules/date-fns/esm/locale/fr/index.js
  var locale5 = {
    code: "fr",
    formatDistance: formatDistance_default4,
    formatLong: formatLong_default5,
    formatRelative: formatRelative_default4,
    localize: localize_default4,
    match: match_default4,
    options: {
      weekStartsOn: 1,
      firstWeekContainsDate: 4
    }
  };
  var fr_default = locale5;

  // src/context/translations.ts
  var supportedLang = {
    es: "Espanol [es]",
    en: "English [en]",
    fr: "Francais [fr]",
    de: "Deutsch [de]",
    sv: "Svenska [sv]",
    it: "Italiane [it]"
  };
  var initial = {
    lang: "en",
    supportedLang,
    i18n,
    dateLocale: en_GB_default,
    completeness: {
      de: 0,
      en: 0,
      es: 0,
      fr: 0,
      it: 0,
      sv: 0
    }
  };
  var Context = B2(initial);
  var TranslationProvider = ({
    children,
    lang,
    source,
    completeness: completenessProp
  }) => {
    const completeness = {
      en: 100,
      de: !completenessProp || !completenessProp["de"] ? 0 : completenessProp["de"],
      es: !completenessProp || !completenessProp["es"] ? 0 : completenessProp["es"],
      fr: !completenessProp || !completenessProp["fr"] ? 0 : completenessProp["fr"],
      it: !completenessProp || !completenessProp["it"] ? 0 : completenessProp["it"],
      sv: !completenessProp || !completenessProp["sv"] ? 0 : completenessProp["sv"]
    };
    setupI18n(lang, source);
    const dateLocale = lang === "es" ? es_default : lang === "fr" ? fr_default : lang === "de" ? de_default : en_GB_default;
    return h3(Context.Provider, {
      value: {
        lang,
        supportedLang,
        i18n,
        dateLocale,
        completeness
      },
      children
    });
  };
  var useTranslationContext = () => q2(Context);

  // src/i18n/strings.ts
  var strings = {};
  strings["es"] = {
    "locale_data": {
      "messages": {
        "": {
          "domain": "messages",
          "lang": "es",
          "plural_forms": "nplurals=2; plural=n != 1;"
        },
        "Status of your order for": [
          "Estado de la orden para"
        ],
        "Details of order": [
          "Detalles de la orden"
        ],
        "Refunded:": [
          ""
        ],
        "The merchant refunded you": [
          ""
        ],
        "Order summary:": [
          ""
        ],
        "Amount paid:": [
          ""
        ],
        "Order date:": [
          ""
        ],
        "Merchant name:": [
          ""
        ],
        "Products purchased": [
          ""
        ],
        "Quantity:": [
          ""
        ],
        "Price:": [
          ""
        ],
        "Delivered on:": [
          ""
        ],
        "Product unit:": [
          ""
        ],
        "Product ID:": [
          ""
        ],
        "Delivery information": [
          ""
        ],
        "Delivery date:": [
          ""
        ],
        "never": [
          ""
        ],
        "Delivery address:": [
          ""
        ],
        "Full payment information": [
          ""
        ],
        "Exchange transfer deadline:": [
          ""
        ],
        "Wire transfer settled.": [
          ""
        ],
        "Maximum deposit fee:": [
          ""
        ],
        "Maximum wire fee:": [
          ""
        ],
        "Wire fee amortization:": [
          ""
        ],
        "Refund information": [
          ""
        ],
        "Refund deadline:": [
          ""
        ],
        "Attempt autorefund for:": [
          ""
        ],
        "forever": [
          ""
        ],
        "Additional order details": [
          ""
        ],
        "Public reorder URL:": [
          ""
        ],
        "Not defined.": [
          ""
        ],
        "Fulfillment URL:": [
          ""
        ],
        "Full merchant information": [
          ""
        ],
        "Merchant address:": [
          ""
        ],
        "Merchant's jurisdiction:": [
          ""
        ],
        "Merchant URI:": [
          ""
        ],
        "Merchant's public key:": [
          ""
        ],
        "Auditors accepted by the merchant": [
          ""
        ],
        "Auditor's public key:": [
          ""
        ],
        "Auditor's URL:": [
          ""
        ],
        "Exchanges accepted by the merchant": [
          ""
        ],
        "Exchange's URL:": [
          ""
        ],
        "Public key:": [
          ""
        ],
        "Refund available for": [
          ""
        ],
        "Collect Taler refund": [
          ""
        ],
        "Scan this QR code with your Taler mobile wallet:": [
          ""
        ],
        "Or open your Taler wallet": [
          ""
        ],
        "Don't have a Taler wallet yet? Install it!": [
          ""
        ],
        "Payment requested for": [
          ""
        ],
        "Pay with Taler": [
          ""
        ],
        "Scan this QR code with your mobile wallet:": [
          ""
        ]
      }
    },
    "domain": "messages",
    "plural_forms": "nplurals=2; plural=n != 1;",
    "lang": "es",
    "completeness": 3
  };
  strings["en"] = {
    "locale_data": {
      "messages": {
        "": {
          "domain": "messages",
          "lang": "en",
          "plural_forms": "nplurals=2; plural=(n != 1);"
        },
        "Status of your order for": [
          ""
        ],
        "Details of order": [
          ""
        ],
        "Refunded:": [
          ""
        ],
        "The merchant refunded you": [
          ""
        ],
        "Order summary:": [
          ""
        ],
        "Amount paid:": [
          ""
        ],
        "Order date:": [
          ""
        ],
        "Merchant name:": [
          ""
        ],
        "Products purchased": [
          ""
        ],
        "Quantity:": [
          ""
        ],
        "Price:": [
          ""
        ],
        "Delivered on:": [
          ""
        ],
        "Product unit:": [
          ""
        ],
        "Product ID:": [
          ""
        ],
        "Delivery information": [
          ""
        ],
        "Delivery date:": [
          ""
        ],
        "never": [
          ""
        ],
        "Delivery address:": [
          ""
        ],
        "Full payment information": [
          ""
        ],
        "Exchange transfer deadline:": [
          ""
        ],
        "Wire transfer settled.": [
          ""
        ],
        "Maximum deposit fee:": [
          ""
        ],
        "Maximum wire fee:": [
          ""
        ],
        "Wire fee amortization:": [
          ""
        ],
        "Refund information": [
          ""
        ],
        "Refund deadline:": [
          ""
        ],
        "Attempt autorefund for:": [
          ""
        ],
        "forever": [
          ""
        ],
        "Additional order details": [
          ""
        ],
        "Public reorder URL:": [
          ""
        ],
        "Not defined.": [
          ""
        ],
        "Fulfillment URL:": [
          ""
        ],
        "Full merchant information": [
          ""
        ],
        "Merchant address:": [
          ""
        ],
        "Merchant's jurisdiction:": [
          ""
        ],
        "Merchant URI:": [
          ""
        ],
        "Merchant's public key:": [
          ""
        ],
        "Auditors accepted by the merchant": [
          ""
        ],
        "Auditor's public key:": [
          ""
        ],
        "Auditor's URL:": [
          ""
        ],
        "Exchanges accepted by the merchant": [
          ""
        ],
        "Exchange's URL:": [
          ""
        ],
        "Public key:": [
          ""
        ],
        "Refund available for": [
          ""
        ],
        "Collect Taler refund": [
          ""
        ],
        "Scan this QR code with your Taler mobile wallet:": [
          ""
        ],
        "Or open your Taler wallet": [
          ""
        ],
        "Don't have a Taler wallet yet? Install it!": [
          ""
        ],
        "Payment requested for": [
          ""
        ],
        "Pay with Taler": [
          ""
        ],
        "Scan this QR code with your mobile wallet:": [
          ""
        ]
      }
    },
    "domain": "messages",
    "plural_forms": "nplurals=2; plural=(n != 1);",
    "lang": "en",
    "completeness": 100
  };
  strings["de"] = {
    "locale_data": {
      "messages": {
        "": {
          "domain": "messages",
          "lang": "de",
          "plural_forms": "nplurals=2; plural=n != 1;"
        },
        "Status of your order for": [
          ""
        ],
        "Details of order": [
          ""
        ],
        "Refunded:": [
          ""
        ],
        "The merchant refunded you": [
          ""
        ],
        "Order summary:": [
          ""
        ],
        "Amount paid:": [
          ""
        ],
        "Order date:": [
          ""
        ],
        "Merchant name:": [
          ""
        ],
        "Products purchased": [
          ""
        ],
        "Quantity:": [
          ""
        ],
        "Price:": [
          ""
        ],
        "Delivered on:": [
          ""
        ],
        "Product unit:": [
          ""
        ],
        "Product ID:": [
          ""
        ],
        "Delivery information": [
          ""
        ],
        "Delivery date:": [
          ""
        ],
        "never": [
          ""
        ],
        "Delivery address:": [
          ""
        ],
        "Full payment information": [
          ""
        ],
        "Exchange transfer deadline:": [
          ""
        ],
        "Wire transfer settled.": [
          ""
        ],
        "Maximum deposit fee:": [
          ""
        ],
        "Maximum wire fee:": [
          ""
        ],
        "Wire fee amortization:": [
          ""
        ],
        "Refund information": [
          ""
        ],
        "Refund deadline:": [
          ""
        ],
        "Attempt autorefund for:": [
          ""
        ],
        "forever": [
          ""
        ],
        "Additional order details": [
          ""
        ],
        "Public reorder URL:": [
          ""
        ],
        "Not defined.": [
          ""
        ],
        "Fulfillment URL:": [
          ""
        ],
        "Full merchant information": [
          ""
        ],
        "Merchant address:": [
          ""
        ],
        "Merchant's jurisdiction:": [
          ""
        ],
        "Merchant URI:": [
          ""
        ],
        "Merchant's public key:": [
          ""
        ],
        "Auditors accepted by the merchant": [
          ""
        ],
        "Auditor's public key:": [
          ""
        ],
        "Auditor's URL:": [
          ""
        ],
        "Exchanges accepted by the merchant": [
          ""
        ],
        "Exchange's URL:": [
          ""
        ],
        "Public key:": [
          ""
        ],
        "Refund available for": [
          ""
        ],
        "Collect Taler refund": [
          ""
        ],
        "Scan this QR code with your Taler mobile wallet:": [
          ""
        ],
        "Or open your Taler wallet": [
          ""
        ],
        "Don't have a Taler wallet yet? Install it!": [
          ""
        ],
        "Payment requested for": [
          ""
        ],
        "Pay with Taler": [
          ""
        ],
        "Scan this QR code with your mobile wallet:": [
          ""
        ]
      }
    },
    "domain": "messages",
    "plural_forms": "nplurals=2; plural=n != 1;",
    "lang": "de",
    "completeness": 0
  };

  // src/components/Application.tsx
  function Application({ children, lang }) {
    return /* @__PURE__ */ h3(
      TranslationProvider,
      {
        source: strings,
        lang,
        completeness: {
          es: strings["es"].completeness,
          de: strings["de"].completeness
        }
      },
      children
    );
  }

  // src/pages/ShowOrderDetails.tsx
  function Head({ order_summary }) {
    const { i18n: i18n2 } = useTranslationContext();
    return /* @__PURE__ */ h3(p, null, /* @__PURE__ */ h3("meta", { charSet: "UTF-8" }), /* @__PURE__ */ h3("meta", { name: "viewport", content: "width=device-width, initial-scale=1.0" }), /* @__PURE__ */ h3("meta", { name: "taler-support", content: "uri" }), /* @__PURE__ */ h3("noscript", null, /* @__PURE__ */ h3("meta", { "http-equiv": "refresh", content: "1" })), /* @__PURE__ */ h3("title", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Status of your order for "), order_summary ? order_summary : `{{ order_summary }}`), /* @__PURE__ */ h3("script", null, `
      var contractTermsStr = '{{{contract_terms_json}}}';
    `));
  }
  function Location({
    templateName,
    location,
    btr
  }) {
    return /* @__PURE__ */ h3(p, null, btr && `{{#${templateName}.building_name}}`, /* @__PURE__ */ h3("dd", null, location?.building_name || btr && `{{ ${templateName}.building_name }}`, " ", location?.building_number || btr && `{{ ${templateName}.building_number }}`), btr && `{{/${templateName}.building_name}}`, btr && `{{#${templateName}.country}}`, /* @__PURE__ */ h3("dd", null, location?.country || btr && `{{ ${templateName}.country }}`, " ", location?.country_subdivision || btr && `{{ ${templateName}.country_subdivision }}`), btr && `{{/${templateName}.country}}`, btr && `{{#${templateName}.district}}`, /* @__PURE__ */ h3("dd", null, location?.district || btr && `{{ ${templateName}.district }}`), btr && `{{/${templateName}.district}}`, btr && `{{#${templateName}.post_code}}`, /* @__PURE__ */ h3("dd", null, location?.post_code || btr && `{{ ${templateName}.post_code }}`), btr && `{{/${templateName}.post_code}}`, btr && `{{#${templateName}.street}}`, /* @__PURE__ */ h3("dd", null, location?.street || btr && `{{ ${templateName}.street }}`), btr && `{{/${templateName}.street}}`, btr && `{{#${templateName}.town}}`, /* @__PURE__ */ h3("dd", null, location?.town || btr && `{{ ${templateName}.town }}`), btr && `{{/${templateName}.town}}`, btr && `{{#${templateName}.town_location}}`, /* @__PURE__ */ h3("dd", null, location?.town_location || btr && `{{ ${templateName}.town_location }}`), btr && `{{/${templateName}.town_location}}`);
  }
  function ShowOrderDetails({
    order_summary,
    refund_amount,
    contract_terms,
    btr
  }) {
    const { i18n: i18n2 } = useTranslationContext();
    const productList = btr ? [{}] : contract_terms?.products || [];
    const auditorsList = btr ? [{}] : contract_terms?.auditors || [];
    const exchangesList = btr ? [{}] : contract_terms?.exchanges || [];
    const hasDeliveryInfo = btr || !!contract_terms?.delivery_date || !!contract_terms?.delivery_location;
    return /* @__PURE__ */ h3(Page, null, /* @__PURE__ */ h3("header", null, /* @__PURE__ */ h3("h1", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Details of order"), " ", contract_terms?.order_id || `{{ contract_terms.order_id }}`)), /* @__PURE__ */ h3("section", null, btr && `{{#refund_amount}}`, (btr || refund_amount) && /* @__PURE__ */ h3("section", null, /* @__PURE__ */ h3(InfoBox, null, /* @__PURE__ */ h3("b", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Refunded:")), " ", /* @__PURE__ */ h3(i18n2.Translate, null, "The merchant refunded you"), " ", /* @__PURE__ */ h3("b", null, refund_amount || `{{ refund_amount }}`), ".")), btr && `{{/refund_amount}}`, btr && `{{#contract_terms.fulfillment_message}}`, (btr || contract_terms?.fulfillment_message) && /* @__PURE__ */ h3("section", null, /* @__PURE__ */ h3(InfoBox, null, /* @__PURE__ */ h3("b", null, contract_terms?.fulfillment_message || `{{ contract_terms.fulfillment_message }}`))), btr && `{{/contract_terms.fulfillment_message}}`, /* @__PURE__ */ h3("section", null, /* @__PURE__ */ h3(TableExpanded, null, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Order summary:")), /* @__PURE__ */ h3("dd", null, contract_terms?.summary || `{{ contract_terms.summary }}`), btr && `{{#contract_terms.fulfillment_url}}`, /* @__PURE__ */ h3("dt", null, "Fulfillment URL:"), /* @__PURE__ */ h3("dd", null, /* @__PURE__ */ h3(
      "a",
      {
        href: contract_terms?.fulfillment_url || `{{ contract_terms.fulfillment_url }}`
      },
      contract_terms?.fulfillment_url || `{{ contract_terms.fulfillment_url }}`
    )), btr && `{{/contract_terms.fulfillment_url}}`, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Amount paid:")), /* @__PURE__ */ h3("dd", null, contract_terms?.amount || `{{ contract_terms.amount }}`), /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Order date:")), /* @__PURE__ */ h3("dd", null, contract_terms?.timestamp ? contract_terms?.timestamp.t_s != "never" ? format(
      contract_terms?.timestamp.t_s * 1e3,
      TIME_DATE_FORMAT
    ) : "never" : `{{ contract_terms.timestamp_str }}`, " "), /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Merchant name:")), /* @__PURE__ */ h3("dd", null, contract_terms?.merchant.name || `{{ contract_terms.merchant.name }}`))), btr && `{{#contract_terms.hasProducts}}`, !productList.length ? null : /* @__PURE__ */ h3("section", null, /* @__PURE__ */ h3("h2", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Products purchased")), /* @__PURE__ */ h3(TableSimple, null, btr && "{{#contract_terms.products}}", productList.map((p3, i5) => {
      const taxList = btr ? [{}] : p3.taxes || [];
      return /* @__PURE__ */ h3(p, { key: i5 }, /* @__PURE__ */ h3("p", null, p3.description || `{{description}}`), /* @__PURE__ */ h3("dl", null, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Quantity:")), /* @__PURE__ */ h3("dd", null, p3.quantity || `{{quantity}}`), /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Price:")), /* @__PURE__ */ h3("dd", null, p3.price || `{{price}}`), btr && `{{#hasTaxes}}`, !taxList.length ? null : /* @__PURE__ */ h3(p, null, btr && "{{#taxes}}", taxList.map((t4, i6) => {
        return /* @__PURE__ */ h3(p, { key: i6 }, /* @__PURE__ */ h3("dt", null, t4.name || `{{name}}`), /* @__PURE__ */ h3("dd", null, t4.tax || `{{tax}}`));
      }), btr && "{{/taxes}}"), btr && `{{/hasTaxes}}`, btr && `{{#delivery_date}}`, (btr || p3.delivery_date) && /* @__PURE__ */ h3(p, null, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Delivered on:")), /* @__PURE__ */ h3("dd", null, p3.delivery_date ? p3.delivery_date.t_s != "never" ? format(p3.delivery_date.t_s, TIME_DATE_FORMAT) : "never" : `{{ delivery_date_str }}`, " ")), btr && `{{/delivery_date}}`, btr && `{{#unit}}`, (btr || p3.unit) && /* @__PURE__ */ h3(p, null, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Product unit:")), /* @__PURE__ */ h3("dd", null, p3.unit || `{{.}}`)), btr && `{{/unit}}`, btr && `{{#product_id}}`, (btr || p3.product_id) && /* @__PURE__ */ h3(p, null, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Product ID:")), /* @__PURE__ */ h3("dd", null, p3.product_id || `{{.}}`)), btr && `{{/product_id}}`));
    }), btr && "{{/contract_terms.products}}")), btr && `{{/contract_terms.hasProducts}}`, btr && `{{#contract_terms.has_delivery_info}}`, !hasDeliveryInfo ? null : /* @__PURE__ */ h3("section", null, /* @__PURE__ */ h3("h2", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Delivery information")), /* @__PURE__ */ h3(TableExpanded, null, btr && `{{#contract_terms.delivery_date}}`, (btr || contract_terms?.delivery_date) && /* @__PURE__ */ h3(p, null, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Delivery date:")), /* @__PURE__ */ h3("dd", null, contract_terms?.delivery_date ? contract_terms?.delivery_date.t_s != "never" ? format(
      contract_terms?.delivery_date.t_s,
      TIME_DATE_FORMAT
    ) : i18n2.str`never` : `{{ contract_terms.delivery_date_str }}`, " ")), btr && `{{/contract_terms.delivery_date}}`, btr && `{{#contract_terms.delivery_location}}`, (btr || contract_terms?.delivery_location) && /* @__PURE__ */ h3(p, null, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Delivery address:")), /* @__PURE__ */ h3(
      Location,
      {
        btr,
        location: contract_terms?.delivery_location,
        templateName: "contract_terms.delivery_location"
      }
    )), btr && `{{/contract_terms.delivery_location}}`)), btr && `{{/contract_terms.has_delivery_info}}`, /* @__PURE__ */ h3("section", null, /* @__PURE__ */ h3("h2", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Full payment information")), /* @__PURE__ */ h3(TableExpanded, null, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Exchange transfer deadline:")), btr && `{{#contract_terms.wire_transfer_deadline_str}}`, /* @__PURE__ */ h3("dd", null, contract_terms?.wire_transfer_deadline ? contract_terms?.wire_transfer_deadline.t_s != "never" ? format(
      contract_terms?.wire_transfer_deadline.t_s * 1e3,
      TIME_DATE_FORMAT
    ) : "never" : `{{ contract_terms.wire_transfer_deadline_str }}`, " "), btr && `{{/contract_terms.wire_transfer_deadline_str}}`, btr && `{{^contract_terms.wire_transfer_deadline_str}}`, /* @__PURE__ */ h3("dd", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Wire transfer settled.")), btr && `{{/contract_terms.wire_transfer_deadline_str}}`, btr && `{{#contract_terms.max_fee}}`, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Maximum deposit fee:")), /* @__PURE__ */ h3("dd", null, contract_terms?.max_fee || `{{ contract_terms.max_fee }}`), btr && `{{/contract_terms.max_fee}}`, btr && `{{#contract_terms.max_wire_fee}}`, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Maximum wire fee:")), /* @__PURE__ */ h3("dd", null, contract_terms?.max_wire_fee || `{{ contract_terms.max_wire_fee }}`), btr && `{{/contract_terms.max_wire_fee}}`, btr && `{{#contract_terms.wire_fee_amortization}}`, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Wire fee amortization:")), /* @__PURE__ */ h3("dd", null, contract_terms?.wire_fee_amortization || `{{ contract_terms.wire_fee_amortization }}`, " "), btr && `{{/contract_terms.wire_fee_amortization}}`)), /* @__PURE__ */ h3("section", null, /* @__PURE__ */ h3("h2", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Refund information")), /* @__PURE__ */ h3(TableExpanded, null, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Refund deadline:")), /* @__PURE__ */ h3("dd", null, contract_terms?.refund_deadline ? contract_terms?.refund_deadline.t_s != "never" ? format(
      contract_terms?.refund_deadline.t_s * 1e3,
      TIME_DATE_FORMAT
    ) : i18n2.str`never` : `{{ contract_terms.refund_deadline_str }}`, " "), btr && `{{#contract_terms.auto_refund}}`, (btr || contract_terms?.auto_refund) && /* @__PURE__ */ h3(p, null, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Attempt autorefund for:")), /* @__PURE__ */ h3("dd", null, contract_terms?.auto_refund ? contract_terms?.auto_refund.d_us != "forever" ? formatDuration(
      intervalToDuration({
        start: 0,
        end: contract_terms?.auto_refund.d_us
      })
    ) : i18n2.str`forever` : `{{ contract_terms.auto_refund_str }}`, " ")), btr && `{{/contract_terms.auto_refund}}`)), /* @__PURE__ */ h3("section", null, /* @__PURE__ */ h3("h2", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Additional order details")), /* @__PURE__ */ h3(TableExpanded, null, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Public reorder URL:")), /* @__PURE__ */ h3("dd", null, " -- ", /* @__PURE__ */ h3(i18n2.Translate, null, "Not defined."), " -- "), btr && `{{#contract_terms.fulfillment_url}}`, (btr || contract_terms?.fulfillment_url) && /* @__PURE__ */ h3(p, null, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Fulfillment URL:")), /* @__PURE__ */ h3("dd", null, contract_terms?.fulfillment_url || btr && `{{ contract_terms.fulfillment_url }}`)), btr && `{{/contract_terms.fulfillment_url}}`)), /* @__PURE__ */ h3("section", null, /* @__PURE__ */ h3("h2", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Full merchant information")), /* @__PURE__ */ h3(TableExpanded, null, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Merchant name:")), /* @__PURE__ */ h3("dd", null, contract_terms?.merchant.name || `{{ contract_terms.merchant.name }}`), /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Merchant address:")), /* @__PURE__ */ h3(
      Location,
      {
        btr,
        location: contract_terms?.merchant.address,
        templateName: "contract_terms.merchant.address"
      }
    ), /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Merchant's jurisdiction:")), /* @__PURE__ */ h3(
      Location,
      {
        btr,
        location: contract_terms?.merchant.jurisdiction,
        templateName: "contract_terms.merchant.jurisdiction"
      }
    ), /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Merchant URI:")), /* @__PURE__ */ h3("dd", null, contract_terms?.merchant_base_url || `{{ contract_terms.merchant_base_url }}`), /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Merchant's public key:")), /* @__PURE__ */ h3("dd", { style: "overflow-wrap: break-word;" }, contract_terms?.merchant_pub || `{{ contract_terms.merchant_pub }}`))), btr && `{{#contract_terms.hasAuditors}}`, !auditorsList.length ? null : /* @__PURE__ */ h3("section", null, /* @__PURE__ */ h3("h2", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Auditors accepted by the merchant")), /* @__PURE__ */ h3(TableExpanded, null, btr && "{{#contract_terms.auditors}}", auditorsList.map((p3, i5) => {
      return /* @__PURE__ */ h3(p, { key: i5 }, /* @__PURE__ */ h3("p", null, p3.name || `{{name}}`), /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Auditor's public key:")), /* @__PURE__ */ h3("dd", null, p3.auditor_pub || `{{auditor_pub}}`), /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Auditor's URL:")), /* @__PURE__ */ h3("dd", null, p3.url || `{{url}}`));
    }), btr && "{{/contract_terms.auditors}}")), btr && `{{/contract_terms.hasAuditors}}`, btr && `{{#contract_terms.hasExchanges}}`, !exchangesList.length ? null : /* @__PURE__ */ h3("section", null, /* @__PURE__ */ h3("h2", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Exchanges accepted by the merchant")), /* @__PURE__ */ h3(TableExpanded, null, btr && "{{#contract_terms.exchanges}}", exchangesList.map((p3, i5) => {
      return /* @__PURE__ */ h3(p, { key: i5 }, /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Exchange's URL:")), /* @__PURE__ */ h3("dd", null, p3.url || `{{url}}`), /* @__PURE__ */ h3("dt", null, /* @__PURE__ */ h3(i18n2.Translate, null, "Public key:")), /* @__PURE__ */ h3("dd", null, p3.master_pub || `{{master_pub}}`));
    }), btr && "{{/contract_terms.exchanges}}")), btr && `{{/contract_terms.hasExchanges}}`), /* @__PURE__ */ h3(Footer, null));
  }
  function mount(lang) {
    try {
      const fromLocation = new URL(window.location.href).searchParams;
      const os = fromLocation.get("order_summary") || void 0;
      if (os) {
        P(
          /* @__PURE__ */ h3(Application, { lang }, /* @__PURE__ */ h3(Head, { order_summary: os })),
          document.head
        );
      }
      const ra = fromLocation.get("refund_amount") || void 0;
      const ct = fromLocation.get("contract_terms") || void 0;
      let contractTerms;
      try {
        contractTerms = JSON.parse(window.contractTermsStr);
      } catch {
      }
      P(
        /* @__PURE__ */ h3(Application, { lang }, /* @__PURE__ */ h3(
          ShowOrderDetails,
          {
            contract_terms: contractTerms,
            order_summary: os,
            refund_amount: ra
          }
        )),
        document.body
      );
    } catch (e4) {
      console.error("got error", e4);
      if (e4 instanceof Error) {
        document.body.innerText = `Fatal error: "${e4.message}".  Please report this bug at https://bugs.gnunet.org/.`;
      }
    }
  }
  function buildTimeRendering(lang) {
    return {
      head: S3(
        /* @__PURE__ */ h3(Application, { lang }, /* @__PURE__ */ h3(Head, null))
      ),
      body: S3(
        /* @__PURE__ */ h3(Application, { lang }, /* @__PURE__ */ h3(ShowOrderDetails, { btr: true }))
      )
    };
  }
  return __toCommonJS(ShowOrderDetails_exports);
})();
/*! Bundled license information:

jed/jed.js:
  (**
   * @preserve jed.js https://github.com/SlexAxton/Jed
   *)
*/
</script>
              <script>page.mount("en")</script>
            </body>
          </html>