~doma/do-auth

21d3273710381f8c59949a76b98df6a9334cf8cf — Jonn 2 months ago 41f61fa
Problem: No way to verify credentials in browser

Solution:

 - Implement TOFU (trust on first use), and expose it through endpoint
	- tofu.ex
	- tofu_view.ex
 - Improve convenience of using crypto with stuff like `verify64`
 - Fix https://github.com/jlouis/enacl/issues/57 by using correct
	primitive (Detached ``verify'' verifies attached signatures)
 - Remove logging from a bunch of files
 - Using reasonably modern sodium.js with browser-compatible security
	parametrs, port Elixir's credential.ex and crypto.ex to browser
 - Use this port to demonstrate obtaining TOFU credential from a doauth
	server and verify it
M Makefile => Makefile +3 -0
@@ 12,4 12,7 @@ db:
hooks:
	cp -v priv/dev/pre-commit .git/hooks/

sodiumjs:
	curl https://raw.githubusercontent.com/jedisct1/libsodium.js/master/dist/browsers/sodium.js > priv/static/js/sodium.js

dev: hooks db

A lib/do_auth/chappy/tofu.ex => lib/do_auth/chappy/tofu.ex +25 -0
@@ 0,0 1,25 @@
defmodule DoAuth.Chappy.Tofu do
  @moduledoc """
  This module is dedicated to assisting clients in getting introduced to doauth servers.
  We are inspired by TOFU, just as Gemini protocol is:

  https://drewdevault.com/2020/09/21/Gemini-TOFU.html
  """

  use Phoenix.Controller, namespace: DoAuth.Web
  # import Plug.Conn
  alias DoAuth.Chappy.TofuView, as: View
  alias DoAuth.Crypto
  alias DoAuth.Subject
  alias DoAuth.Credential

  def init(x), do: x

  def me(c, _) do
    # TODO: Key management is kinda meh, we leave traces of secret key all over
    # the memory
    %{public: pk} = Crypto.server_keypair()
    cred = Subject.by_claim_me(pk |> Crypto.show()) |> Credential.by_subject()
    c |> put_view(View) |> render("tofu.json", %{cred: cred, endpoint: "/chappy/tofu"})
  end
end

A lib/do_auth/chappy/tofu_view.ex => lib/do_auth/chappy/tofu_view.ex +7 -0
@@ 0,0 1,7 @@
defmodule DoAuth.Chappy.TofuView do
  alias DoAuth.Credential

  def render("tofu.json", %{cred: cred, endpoint: endpoint}) do
    cred |> Credential.to_map(unwrapped: true) |> Map.put(:id, endpoint)
  end
end

M lib/do_auth/crypto.ex => lib/do_auth/crypto.ex +68 -1
@@ 79,6 79,24 @@ defmodule DoAuth.Crypto do
  """
  @type detached_sig :: %{public: binary(), signature: binary()}

  @typedoc """
  Only accept atoms as keys of canonicalisable entities.
  """
  @type canonicalisable_key :: atom()

  @typedoc """
  Only accept atoms, strings and numbers as values of canonocalisable entities.
  """
  @type canonicalisable_value ::
          atom()
          | String.t()
          | number()
          | list(canonicalisable_value())
          | %{canonicalisable_key() => canonicalisable_value()}

  @type canonicalised_value ::
          String.t() | number() | list(list(String.t() | canonicalised_value()))

  @doc """
  Generate slip and main key from password with given parameters.
  This function is used directly for testing and flexibility, but shouldn't be normally used.


@@ 122,7 140,7 @@ defmodule DoAuth.Crypto do
  """
  @spec sign(binary() | iolist(), keypair()) :: detached_sig()
  def sign(msg, %{secret: sk, public: pk}) do
    %{public: pk, signature: C.sign(msg, sk)}
    %{public: pk, signature: C.sign_detached(msg, sk)}
  end

  @doc """


@@ 170,6 188,55 @@ defmodule DoAuth.Crypto do
  def read!(x), do: Base.url_decode64!(x)

  @doc """
    Preventing canonicalization bugs by ordering maps lexicographically into a
    list. NB! This makes it so that list representations of JSON objects are
    also accepted by verifiers, but it's OK, since no data can seemingly be
    falsified like this.

    TODO: Audit this function really well, both here and in JavaScript reference
    implementation, since a bug here can sabotage the security guarantees of the
    cryptographic system.
  """
  @spec canonicalise_term(canonicalisable_value()) :: canonicalised_value()

  def canonicalise_term(v) when is_binary(v) or is_number(v) do
    v
  end

  def canonicalise_term(v) when is_atom(v) do
    Atom.to_string(v)
  end

  def canonicalise_term(tau = %DateTime{}) do
    DateTime.to_iso8601(tau)
  end

  def canonicalise_term(xs = []) do
    Enum.map(xs, fn v -> canonicalise_term(v) end)
  end

  def canonicalise_term(kv = %{}) do
    canonicalise_term_do(Map.keys(kv) |> Enum.sort(), kv, []) |> Enum.reverse()
  end

  def canonicalise_term(xs) when is_tuple(xs) do
    canonicalise_term(Tuple.to_list(xs))
  end

  defp canonicalise_term_do([], _, acc), do: acc

  defp canonicalise_term_do([x | rest], kv, acc) when is_atom(x) or is_binary(x) do
    x_canonicalised =
      if is_atom(x) do
        Atom.to_string(x)
      else
        x
      end

    canonicalise_term_do(rest, kv, [[x_canonicalised, canonicalise_term(kv[x])] | acc])
  end

  @doc """
  Simple way to get the server keypair.

  TODO: audit key management practices in Phoenix and here.

M lib/do_auth/persistence.ex => lib/do_auth/persistence.ex +4 -7
@@ 5,7 5,6 @@ defmodule DoAuth.Persistence do
  """

  use Supervisor
  require Logger
  import Ecto.Query
  alias DoAuth.Repo
  alias DoAuth.Crypto


@@ 15,8 14,6 @@ defmodule DoAuth.Persistence do
  @max_retries 11

  def init(_) do
    Logger.debug("Initialising #{inspect(__MODULE__)}")

    children = [
      DoAuth.Repo,
      %{id: DoAuth.Persistence.Populate, start: {__MODULE__, :populate, []}, restart: :transient}


@@ 32,16 29,16 @@ defmodule DoAuth.Persistence do
  Exposed for testing.
  """
  @spec populate_do(any) :: any
  def populate_do(retries \\ 0)
  def populate_do(kp \\ Crypto.server_keypair(), retries \\ 0)

  def populate_do(@max_retries) do
  def populate_do(_, @max_retries) do
    raise("Populate has reached maximum retires reached while waiting for Repo")
  end

  def populate_do(retries) do
  def populate_do(kp, retries) do
    if GenServer.whereis(Repo) do
      Repo.transaction(fn ->
        kp = DoAuth.Crypto.server_keypair()
        # kp = DoAuth.Crypto.server_keypair()
        pk64 = kp.public |> Crypto.show()

        impossibility =

M lib/do_auth/schema/basic.ex => lib/do_auth/schema/basic.ex +0 -35
@@ 1,40 1,5 @@
### https://www.youtube.com/watch?v=YQxopjai0CU

defmodule DoAuth.Subject do
  @moduledoc """
  Credential subjects are just free-form claims in DoAuth thus far.

  Management of obligatory fields is deferred to modules and systems using
  DoAuth to implement authentication and authorization protocols.
  """
  use DoAuth.DBUtils, into: __MODULE__

  schema "subjects" do
    field(:claim, :map)
    field(:misc, :map)
  end

  @spec changeset(cauldron(), ingredients()) :: Changeset.t()
  def changeset(c, stuff) do
    c |> cast(stuff, [:claim, :misc]) |> validate_required(:claim)
  end

  def to_map(%__MODULE__{misc: nil, claim: c}, unwrapped: true) do
    c
  end

  def to_map(x, unwrapped: true) do
    x.claim |> Map.put_new(:misc, x.misc)
  end

  @spec to_map(atom | %{:claim => any, :misc => any, optional(any) => any}) :: %{claim: any}
  def to_map(x) do
    %{claim: to_map(x, unwrapped: true)}
  end

  DBUtils.codegen(into: __MODULE__, canonical_from_map: true)
end

############

defmodule DoAuth.ProofType do

M lib/do_auth/schema/credential.ex => lib/do_auth/schema/credential.ex +166 -18
@@ 1,8 1,24 @@
defmodule DoAuth.Credential do
  @moduledoc """
  Credential.

  Canonical field orders:
  TODO: change elixir's "issuer" to a rightful "entity"

  "@context" /        contexts
  id /                -
  type /              types
  issuer /            issuer
  issuanceDate /      timestamp
  credentialSubject / subject
  proof /             proof
  """

  use DoAuth.DBUtils, into: __MODULE__
  alias DoAuth.DBUtils
  alias DoAuth.DID
  alias DoAuth.Entity
  alias DoAuth.Key
  alias DoAuth.Subject
  alias DoAuth.Proof
  alias DoAuth.Context


@@ 11,7 27,6 @@ defmodule DoAuth.Credential do
  alias DoAuth.CredentialType
  alias DoAuth.CredentialCredentialType, as: CCT
  # alias Ecto.Multi
  require Logger

  schema "credentials" do
    belongs_to(:issuer, Entity)


@@ 22,37 37,136 @@ defmodule DoAuth.Credential do
    field(:timestamp, :utc_datetime)
  end

  @spec preload_entity :: [:issuer | [{:did, :key}, ...], ...]
  def tx_import_tofu!(cred_map) do
    {:ok, cred} =
      Repo.transaction(fn ->
        pk64 = cred_map.credentialSubject.me

        pk_stored =
          case pk64 |> Key.by_pk() |> Repo.all() do
            [] ->
              Key.changeset(%{public_key: pk64}) |> Repo.insert!()

            [x = %DoAuth.Key{}] ->
              x
          end

        did_stored =
          case DoAuth.DID.by_pk64(pk64) |> Repo.all() do
            [] ->
              DoAuth.DID.from_key(pk_stored) |> Repo.insert!()

            [x = %DoAuth.DID{}] ->
              x
          end

        _entity_stored =
          case DoAuth.Entity.by_did_id(did_stored.id) |> Repo.all() do
            [] ->
              DoAuth.Entity.from_did(did_stored) |> Repo.insert!()

            [x = %DoAuth.Entity{}] ->
              x
          end

        {:ok, tau0, 0} = cred_map.issuanceDate |> DateTime.from_iso8601()

        credential =
          case from(c in DoAuth.Subject,
                 where: fragment(~s(? ->> 'me' = ?), c.claim, ^pk64)
               )
               |> Repo.all() do
            [] ->
              tx_from_keypair_credential!(
                %{
                  public: Crypto.read!(pk64),
                  signature: cred_map.proof.signature |> Crypto.read!(),
                  timestamp: tau0
                },
                %{me: pk64}
              )

            [x = %DoAuth.Subject{}] ->
              from(c in DoAuth.Credential, where: c.subject_id == ^x.id) |> Repo.one!()
          end

        credential |> Repo.preload(preload_credential())
      end)

    cred
  end

  def preload_entity(), do: [:issuer, [did: :key]]

  @spec preload_credential :: [
          :contexts | :issuer | :proof | :subject | :types | [{:did, :key}, ...],
          ...
        ]
  def preload_credential(), do: [[issuer: [did: :key]], :contexts, :proof, :subject, :types]
  def preload_credential(),
    do: [
      [issuer: [did: [:entity, :key]]],
      :contexts,
      [proof: [verification_method: :did]],
      :subject,
      :types
    ]

  @spec by_subject(%Subject{}) :: %__MODULE__{}
  @doc """
  Get credential by subject.
  """
  def by_subject(subj) do
    from(c in __MODULE__, where: c.subject_id == ^subj.id)
    |> Repo.one()
    |> Repo.preload(preload_credential())
  end

  @doc """
  Makes a credential from a keypair serialisable map (claim).
  """
  @spec tx_from_keypair_credential!(%{:public => binary(), :secret => binary()}, map()) ::
  @spec tx_from_keypair_credential!(
          %{
            :public => binary(),
            optional(:secret) => binary(),
            optional(:signature) => binary(),
            # TODO: Recap how timestamps work in Elixir
            optional(:timestamp) => any()
          },
          map()
        ) ::
          %__MODULE__{}
  def tx_from_keypair_credential!(kp = %{public: pk}, claim) do
    {:ok, {:ok, cred}} =
      Repo.transaction(fn ->
        tau0 = DBUtils.now()
        tau0 =
          unless Map.get(kp, :timestamp, false) do
            DBUtils.now()
          else
            kp.timestamp
          end

        did = DID.by_pk64(pk |> Crypto.show()) |> Repo.one()
        entity = Entity.by_did_id(did.id) |> Repo.one() |> Repo.preload(preload_entity())
        {:ok, subject} = %{claim: claim} |> Subject.changeset() |> Repo.insert(returning: true)

        # TODO: Make it clear that ID is not known at this stage and isn't
        # verified, which opens up an option for phishing and for shitty
        # implementations that are tricked by an unverified ID in a verified
        # credential to fetch a bogus one and treat it as correct.
        proofless = %__MODULE__{
          timestamp: tau0,
          issuer: entity,
          subject: subject,
          contexts: [],
          types: []
          types: [],
          issuer: entity,
          timestamp: tau0,
          subject: subject
        }

        sig = proofless |> to_map(proofless: true) |> Proof.sign_map(kp)
        sig =
          unless Map.get(kp, :signature, false) do
            proofless
            |> to_map(proofless: true)
            |> Crypto.canonicalise_term()
            |> Proof.sign_map(kp)
          else
            %{signature: kp.signature}
          end

        {:ok, proof} = Proof.from_sig(entity, sig.signature |> Crypto.show()) |> Repo.insert()
        %{proofless | proof: proof} |> Repo.insert(returning: true)
      end)


@@ 65,11 179,10 @@ defmodule DoAuth.Credential do
  """
  @spec proofless_json(%__MODULE__{}) :: String.t()
  def proofless_json(cred = %__MODULE__{}) do
    cred |> to_map(proofless: true) |> Jason.encode!()
    cred1 = cred |> to_map(proofless: true)
    cred1 |> Crypto.canonicalise_term() |> Jason.encode!()
  end

  # defp dbg(x), do: inspect(x, pretty: true)

  @doc """
  Verifies a proof of Jason.encode!'ed proofless part of a credential.
  """


@@ 79,6 192,38 @@ defmodule DoAuth.Credential do
    Crypto.verify(proofless, %{public: pk, signature: sig |> Crypto.read!()})
  end

  @doc """
  Verifies a proof of Jason.encode!'ed proofless part of a credential, given an URLSAFE BASE64 ENCODED public key.
  """
  @spec verify64(%__MODULE__{}, binary()) :: boolean()
  def verify64(cred, pk64) do
    verify(cred, pk64 |> Crypto.read!())
  end

  @doc """
  Make a %Credential{} with canonical order of fields.
  """
  def from_map(
        _cred = %{
          "@context": ctx,
          credentialSubject: subj,
          issuanceDate: tau0,
          issuer: issuer,
          proof: proof,
          type: type
        }
      ) do
    # [x] This complies with the canonical field orders
    %__MODULE__{
      contexts: ctx,
      types: type,
      issuer: Entity.read(issuer),
      timestamp: tau0,
      subject: subj,
      proof: Proof.from_map(proof)
    }
  end

  @spec to_map(%__MODULE__{}, [unwrapped: true] | [proofless: true] | []) :: map()
  def to_map(cred = %__MODULE__{proof: proof}, unwrapped: true) do
    to_map(cred, proofless: true)


@@ 87,7 232,7 @@ defmodule DoAuth.Credential do
  end

  def to_map(
        %__MODULE__{
        _cred = %__MODULE__{
          contexts: ctxs,
          types: ts,
          issuer: entity,


@@ 112,6 257,7 @@ defmodule DoAuth.Credential do
  @spec to_map(%__MODULE__{}) :: map()
  def to_map(x = %__MODULE__{}), do: %{credential: to_map(x, unwrapped: true)}

  # TODO: nicer ids for credentials
  @spec to_url(%__MODULE__{}) :: String.t()
  def to_url(cred = %__MODULE__{}),
    do: "unavailable/credentials/#{Crypto.salted_hash(cred |> :erlang.term_to_binary())}"


@@ 148,6 294,8 @@ defmodule DoAuth.Credential do
  defp tag_once(cred, mk_changeset) do
    fn tag, _acc ->
      mk_changeset.(cred, tag)
      # TODO: This is something really shady and really deep. We probably should
      # do something about this mess.
      |> Repo.insert()
      |> to_cont()
    end

M lib/do_auth/schema/did.ex => lib/do_auth/schema/did.ex +25 -0
@@ 49,6 49,31 @@ defmodule DoAuth.DID do
    |> DoAuth.URI.did2s()
  end

  @spec read(binary | URI.t()) :: %DoAuth.DID{
          __meta__: Ecto.Schema.Metadata.t(),
          body: binary,
          entity: Ecto.Association.NotLoaded.t(),
          id: nil,
          key: Ecto.Association.NotLoaded.t(),
          key_id: nil,
          method: binary,
          misc: %{},
          path: <<_::8, _::_*8>>
        }
  def read(x) do
    %URI{scheme: "did", path: methodBodyPath, query: _q, fragment: _frag} = URI.parse(x)
    [method, bodyPath] = methodBodyPath |> String.split(":")
    [body | path] = bodyPath |> String.split("/")

    path =
      case path do
        [] -> ""
        _ -> "/" <> Enum.join(path, "/")
      end

    %__MODULE__{method: method, body: body, path: path, misc: %{}}
  end

  @doc """
  Associates a DoAuth.Key structure with a DID, :body of which is the hash of
  field :public_key of DoAuth.Key, which is urlsafe-base64-encoded digest of the

M lib/do_auth/schema/entity.ex => lib/do_auth/schema/entity.ex +12 -1
@@ 10,8 10,19 @@ defmodule DoAuth.Entity do
    has_many(:proofs, DoAuth.Proof, foreign_key: :verification_method_id)
  end

  def read(x) do
    read_do(URI.parse(x))
  end

  defp read_do(%URI{scheme: "did", path: p}) do
    %__MODULE__{did: DoAuth.DID.read("did:" <> p)}
  end

  defp read_do(x), do: %__MODULE__{issuer: x}

  def show(%__MODULE__{issuer_id: nil, did: did = %DoAuth.DID{}}) do
    did |> Repo.preload(:key) |> DoAuth.DID.show()
    did = Repo.preload(did, :key)
    DoAuth.DID.show(did)
  end

  def show(%__MODULE__{did_id: nil, issuer: issuer = %DoAuth.Issuer{}}) do

M lib/do_auth/schema/proof.ex => lib/do_auth/schema/proof.ex +14 -2
@@ 15,7 15,7 @@ defmodule DoAuth.Proof do
    changeset(%{signature: sig, verification_method: proving_entity})
  end

  @spec sign_map(map(), Crypto.keypair()) :: Crypto.detached_sig()
  @spec sign_map(Crypto.canonicalised_value(), Crypto.keypair()) :: Crypto.detached_sig()
  def sign_map(xs, kp) do
    xs |> Jason.encode!() |> Crypto.sign(kp)
  end


@@ 36,7 36,7 @@ defmodule DoAuth.Proof do
      type: "libsodium2021",
      created: timestamp,
      proofPurpose: "assertionMethod",
      verificationMethod: Entity.to_map(entity, unwrapped: true),
      verificationMethod: Entity.show(entity),
      # TODO: test that sig can only be represented by URLsafe base 64.
      signature: sig
    }


@@ 46,5 46,17 @@ defmodule DoAuth.Proof do
  @spec to_map(%__MODULE__{}) :: map()
  def to_map(x = %__MODULE__{}), do: %{proof: to_map(x, unwrapped: true)}

  # TODO: Make sure that this and credential have not only bridge from JS but also all the way from JS to PGSQL.
  # Something like `by_struct` that will be finding the corresponding PGSQL item.
  def from_map(%{
        created: tau0,
        # TODO: Implement proof purposes
        proofPurpose: _purpose,
        signature: sig,
        verificationMethod: verEntity
      }) do
    %__MODULE__{timestamp: tau0, verification_method: Entity.read(verEntity), signature: sig}
  end

  DBUtils.codegen(into: __MODULE__, no_changeset: true, canonical_from_map: true)
end

A lib/do_auth/schema/subject.ex => lib/do_auth/schema/subject.ex +41 -0
@@ 0,0 1,41 @@
defmodule DoAuth.Subject do
  @moduledoc """
  Credential subjects are just free-form claims in DoAuth thus far.

  Management of obligatory fields is deferred to modules and systems using
  DoAuth to implement authentication and authorization protocols.
  """
  use DoAuth.DBUtils, into: __MODULE__

  schema "subjects" do
    field(:claim, :map)
    field(:misc, :map)
  end

  # TODO: stuff like this ``Repo.one'' can and will break high availability
  # version with cross-data-center replication. By not addressing this issue
  # head on we're accumulating technical debt.
  def by_claim_me(self_assigned_identifier) do
    from(c in __MODULE__, where: c.claim["me"] == ^self_assigned_identifier) |> Repo.one()
  end

  @spec changeset(cauldron(), ingredients()) :: Changeset.t()
  def changeset(c, stuff) do
    c |> cast(stuff, [:claim, :misc]) |> validate_required(:claim)
  end

  def to_map(%__MODULE__{misc: nil, claim: c}, unwrapped: true) do
    c
  end

  def to_map(x, unwrapped: true) do
    x.claim |> Map.put_new(:misc, x.misc)
  end

  @spec to_map(atom | %{:claim => any, :misc => any, optional(any) => any}) :: %{claim: any}
  def to_map(x) do
    %{claim: to_map(x, unwrapped: true)}
  end

  DBUtils.codegen(into: __MODULE__, canonical_from_map: true)
end

M lib/do_auth/web.ex => lib/do_auth/web.ex +4 -1
@@ 22,7 22,7 @@ defmodule DoAuth.Web do
    at: "/",
    from: {:do_auth, "priv/static"},
    gzip: false,
    only: ~w(css fonts images js favicon.ico robots.txt)
    only: ~w(css fonts images js demo.html favicon.ico robots.txt)
  )

  # TODO: Figure out how to move this stuff to Chappy.Chappy


@@ 73,6 73,9 @@ defmodule DoAuth.Web do
        root: "lib/do_auth/web/templates",
        namespace: DoAuth.Web

      import Phoenix.Controller,
        only: [get_flash: 1, get_flash: 2, view_module: 1, view_template: 1]

      use Phoenix.HTML
    end
  end

M lib/do_auth/web/router.ex => lib/do_auth/web/router.ex +2 -0
@@ 26,12 26,14 @@ defmodule DoAuth.Web.Router do
  scope "/", DoAuth do
    pipe_through(:browser)
    get("/", ZeroVC.ZeroVC, :index)
    get("/demo", ZeroVC.ZeroVC, :demo)
    get("/hello/world", ZeroVC.ZeroVC, :cheer)
  end

  scope "/chappy", DoAuth do
    pipe_through(:chappy)
    get("/", Chappy.Chappy, :the_endpoint)
    get("/tofu", Chappy.Tofu, :me)
  end

  scope "/api", DoAuth do

M lib/do_auth/zero_vc/zero_vc.ex => lib/do_auth/zero_vc/zero_vc.ex +6 -0
@@ 9,6 9,7 @@ defmodule DoAuth.ZeroVC.ZeroVC do
  use Phoenix.Controller, namespace: DoAuth.Web
  # ^ be explicit to separate the modules easier later on
  import Plug.Conn
  alias DoAuth.ZeroVC.ZeroVCView, as: View

  def init(x), do: x



@@ 24,4 25,9 @@ defmodule DoAuth.ZeroVC.ZeroVC do
    c = put_session(c, :hello, msg <> msg)
    send_resp(c, 200, msg)
  end

  @spec demo(Plug.Conn.t(), any) :: Plug.Conn.t()
  def demo(c, _) do
    c |> put_view(View) |> render("demo.html", %{})
  end
end

A lib/do_auth/zero_vc/zero_vc_view.ex => lib/do_auth/zero_vc/zero_vc_view.ex +3 -0
@@ 0,0 1,3 @@
defmodule DoAuth.ZeroVC.ZeroVCView do
  use DoAuth.Web, :view
end

A priv/static/demo.html => priv/static/demo.html +180 -0
@@ 0,0 1,180 @@
<!doctype html>
<html>
    <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>doauth demo</title>
    </head>
    <body>
        <script>
            window.sodium = {
                onload: (sodium) => {
                    maybePort = () => {
                        if(window.location.port) {
                            return ':' + window.location.port
                        } else {
                            return ''
                        }
                    }
                    window.doAuth = {
                        server: window.location.protocol + '//' + window.location.hostname + maybePort(),
                        tofuPath: "/chappy/tofu",
                        saltSize: 16,
                        hashSize: 32,
                        keySize: 32,
                        defaultParams: {
                            opsLimit: sodium.crypto_pwhash_OPSLIMIT_SENSITIVE,
                            memLimit: 5 * sodium.crypto_pwhash_MEMLIMIT_MIN
                        },
                    }

                    window.doAuth.crypto = {}

                    window.doAuth.crypto.show = (bs) => {
                        return sodium.to_base64(bs, sodium.base64_variants["URLSAFE"])
                    }

                    window.doAuth.crypto.read = (s) => {
                        return sodium.from_base64(s, sodium.base64_variants["URLSAFE"])
                    }

                    window.doAuth.crypto.mainKey = (pass) => {
                        slipMaybe = localStorage.getItem("slip")
                        dp = doAuth.defaultParams
                        if(slipMaybe) {
                            return doAuth.crypto.mainKeyReproduce2(pass, JSON.parse(slipMaybe))
                        } else {
                            [mkey, slip] = doAuth.crypto.mainKeyInit2(pass, {
                                ops: dp.opsLimit,
                                mem: dp.memLimit,
                                saltSize: doAuth.saltSize,
                            })
                            localStorage.setItem("slip", JSON.stringify(slip))
                            return mkey
                        }
                    }

                    window.doAuth.crypto.mainKeyInit2 = (pass, slip0) => {
                        slip1 = {...slip0, salt: doAuth.crypto.show(sodium.randombytes_buf(slip0.saltSize))}
                        mkey = doAuth.crypto.mainKeyReproduce2(pass, slip1)
                        return [mkey, slip1]
                    }

                    window.doAuth.crypto.mainKeyReproduce2 = (pass, slip) => {
                        let {ops, mem, saltSize, salt} = slip
                        mkey = sodium.crypto_pwhash(
                            doAuth.hashSize, // kinda hardcoded but ok
                            pass,
                            doAuth.crypto.read(salt),
                            ops,
                            mem,
                            sodium.crypto_pwhash_ALG_DEFAULT
                        )
                        return mkey
                    }

                    window.doAuth.crypto.deriveSigningKeypair = (mkey, n) => {
                        mkd = sodium.crypto_kdf_derive_from_key(doAuth.keySize, n, "signsign", mkey)
                        let {publicKey, privateKey} = sodium.crypto_sign_seed_keypair(mkd)
                        return {public: publicKey, secret: privateKey}
                    }

                    window.doAuth.crypto.sign = (msg, {secret, public}) => {
                        return {public: public, signature: sodium.crypto_sign_detached(msg, secret)}
                    }

                    window.doAuth.crypto.verify = (msg, {public, signature}) => {
                        console.log(public, signature)
                        return sodium.crypto_sign_verify_detached(signature, msg, public)
                    }

                    window.doAuth.crypto.bland_hash = (msg) => {
                        return doAuth.crypto.show(sodium.crypto_generichash(doAuth.hashSize, msg))
                    }

                    /*
                     * TODO:
                     * console.log's are left in to show what the author
                     * checked. They are NOT A SUFFICIENT EVIDENCE that this
                     * function does what it's supposed to do and proper
                     * invariant testing and audit are absolutely necessary to
                     * run it in production.
                     */
                    function _canonicalise(x) {
                        // console.log("Canonicalising ", x)
                        if (typeof(x) === "string" || typeof(x) === "number" || typeof(x) === "bigint") {
                            // console.log("It's just a value", x)
                            return x
                        } else if (typeof(x) === "object") {
                            if (Array.isArray(x) === true) {
                                return x.map(x => _canonicalise(x))
                            } else {
                                var ks = Object.keys(x)
                                const x1 = {...x}
                                ks.sort()
                                var y = new Array()
                                for(let i = 0; i < ks.length; i++) {
                                    // console.log("Got object, working on adding **", ks[i], "**, the", i, "th element of", ks)
                                    y.push([ks[i], _canonicalise(x1[ks[i]], y)])
                                    // console.log("Accumulator so far:", [...y])
                                }
                                return y
                            }
                        }
                    }

                    window.doAuth.crypto.canonicalise = _canonicalise

                    window.doAuth.api = {}

                    window.doAuth.api.tofu = (x) => {
                        return fetch(x)
                            .then(resp => resp.json())
                    }

                    window.doAuth.credential = {}

                    window.doAuth.credential.proofless = (cred) => {
                        ctxs = cred['@context']
                        let {type, issuer, issuanceDate, credentialSubject} = cred
                        return {'@context': ctxs, type: type, issuer: issuer, issuanceDate: issuanceDate, credentialSubject: credentialSubject}
                    }

                    window.doAuth.credential.prooflessJSON = (cred) => {
                        return JSON.stringify(
                            doAuth.crypto.canonicalise(
                                doAuth.credential.proofless(cred)
                            )
                        )
                    }

                    window.doAuth.credential.verify = (cred, pk) => {
                        return doAuth.crypto.verify(
                            doAuth.credential.prooflessJSON(cred),
                            {
                                public: pk,
                                signature: doAuth.crypto.read(cred.proof.signature)
                            }
                        )
                    }

                    window.doAuth.credential.verify64 = (cred, pk) => {
                        return doAuth.credential.verify(cred, doAuth.crypto.read(pk))
                    }

                    main = async () => {
                        rcred = await doAuth.api.tofu(doAuth.server + doAuth.tofuPath)
                        console.log(rcred)
                        console.log(JSON.stringify(rcred))
                        console.log(doAuth.credential.prooflessJSON(rcred))
                        console.log("Verifying...")
                        console.log(doAuth.credential.verify64(rcred, rcred.credentialSubject.me))
                    }

                    main()
                }
            }
        </script>
        <script src="js/sodium.js" async></script>
    </body>
</html>

A priv/static/favicon.ico => priv/static/favicon.ico +0 -0
A priv/static/js/demo.js => priv/static/js/demo.js +1 -0
@@ 0,0 1,1 @@
alert('xss');
\ No newline at end of file

A priv/static/js/sodium.js => priv/static/js/sodium.js +1 -0
@@ 0,0 1,1 @@
!function(A){function g(A){"use strict";var g;void 0===(g=A)&&(g={});var I=g;"object"!=typeof I.sodium&&("object"==typeof global?I=global:"object"==typeof window&&(I=window)),"object"==typeof I.sodium&&"number"==typeof I.sodium.totalMemory&&(g.TOTAL_MEMORY=I.sodium.totalMemory);var e=g;return g.ready=new Promise((function(A,g){(r=e).onAbort=g,r.print=function(A){},r.printErr=function(A){},r.onRuntimeInitialized=function(){try{r._crypto_secretbox_keybytes(),A()}catch(A){g(A)}},r.useBackupModule=function(){return new Promise((function(A,g){(r={}).onAbort=g,r.onRuntimeInitialized=function(){Object.keys(e).forEach((function(A){"getRandomValue"!==A&&delete e[A]})),Object.keys(r).forEach((function(A){e[A]=r[A]})),A()};var I,r=void 0!==r?r:{},a={};for(I in r)r.hasOwnProperty(I)&&(a[I]=r[I]);var B=[],t=!1,n=!1,i=!1,o=!1;t="object"==typeof window,n="function"==typeof importScripts,i="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,o=!t&&!i&&!n;var Q,C,c,E,s,y="";function _(A){return r.locateFile?r.locateFile(A,y):y+A}i?(y=n?require("path").dirname(y)+"/":__dirname+"/",Q=function(A,g){var I=GA(A);return I?g?I:I.toString():(E||(E=require("fs")),s||(s=require("path")),A=s.normalize(A),E.readFileSync(A,g?null:"utf8"))},c=function(A){var g=Q(A,!0);return g.buffer||(g=new Uint8Array(g)),v(g.buffer),g},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),B=process.argv.slice(2),"undefined"!=typeof module&&(module.exports=r),r.inspect=function(){return"[Emscripten Module object]"}):o?("undefined"!=typeof read&&(Q=function(A){var g=GA(A);return g?bA(g):read(A)}),c=function(A){var g;return(g=GA(A))?g:"function"==typeof readbuffer?new Uint8Array(readbuffer(A)):(v("object"==typeof(g=read(A,"binary"))),g)},"undefined"!=typeof scriptArgs?B=scriptArgs:void 0!==arguments&&(B=arguments),"undefined"!=typeof print&&("undefined"==typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!=typeof printErr?printErr:print)):(t||n)&&(n?y=self.location.href:"undefined"!=typeof document&&document.currentScript&&(y=document.currentScript.src),y=0!==y.indexOf("blob:")?y.substr(0,y.lastIndexOf("/")+1):"",Q=function(A){try{var g=new XMLHttpRequest;return g.open("GET",A,!1),g.send(null),g.responseText}catch(g){var I=GA(A);if(I)return bA(I);throw g}},n&&(c=function(A){try{var g=new XMLHttpRequest;return g.open("GET",A,!1),g.responseType="arraybuffer",g.send(null),new Uint8Array(g.response)}catch(g){var I=GA(A);if(I)return I;throw g}}),C=function(A,g,I){var e=new XMLHttpRequest;e.open("GET",A,!0),e.responseType="arraybuffer",e.onload=function(){if(200==e.status||0==e.status&&e.response)g(e.response);else{var r=GA(A);r?g(r.buffer):I()}},e.onerror=I,e.send(null)}),r.print;var h,f=r.printErr||void 0;for(I in a)a.hasOwnProperty(I)&&(r[I]=a[I]);a=null,r.arguments&&(B=r.arguments),r.thisProgram&&r.thisProgram,r.quit&&r.quit,r.wasmBinary&&(h=r.wasmBinary),r.noExitRuntime&&r.noExitRuntime;var p,u={Memory:function(A){this.buffer=new ArrayBuffer(65536*A.initial)},Module:function(A){},Instance:function(A,g){this.exports=function(A){for(var g,I=new Uint8Array(123),e=25;e>=0;--e)I[48+e]=52+e,I[65+e]=e,I[97+e]=26+e;function r(A,g,e){for(var r,a,B=0,t=g,n=e.length,i=g+(3*n>>2)-("="==e[n-2])-("="==e[n-1]);B<n;B+=4)r=I[e.charCodeAt(B+1)],a=I[e.charCodeAt(B+2)],A[t++]=I[e.charCodeAt(B)]<<2|r>>4,t<i&&(A[t++]=r<<4|a>>2),t<i&&(A[t++]=a<<6|I[e.charCodeAt(B+3)])}return I[43]=62,I[47]=63,function(A){var I=A.a,e=I.buffer;I.grow=function(A){A|=0;var r=0|VI(),Q=r+A|0;if(r<Q&&Q<65536){var C=new ArrayBuffer(o(Q,65536));new Int8Array(C).set(a),a=new Int8Array(C),B=new Int16Array(C),t=new Int32Array(C),n=new Uint8Array(C),new Uint16Array(C),i=new Uint32Array(C),new Float32Array(C),new Float64Array(C),e=C,I.buffer=e,g=n}return r};var a=new Int8Array(e),B=new Int16Array(e),t=new Int32Array(e),n=new Uint8Array(e),i=(new Uint16Array(e),new Uint32Array(e)),o=(new Float32Array(e),new Float64Array(e),Math.imul),Q=(Math.fround,Math.abs,Math.clz32),C=(Math.min,Math.max,Math.floor,Math.ceil,Math.trunc,Math.sqrt,A.abort),c=A.b,E=A.c,s=A.d,y=A.e,_=A.f,h=A.g,f=5279312,p=0,u=0,l=0;function w(A,g){var I,e,r,B,i=0,o=0,Q=0,C=0,c=0,E=0,s=0,y=0,_=0,h=0,p=0,u=0,w=0,D=0,v=0,d=0,b=0,k=0,F=0,G=0,m=0,Y=0,H=0,S=0,U=0,M=0,N=0,x=0,P=0,R=0,J=0,K=0,L=0,T=0,X=0,V=0,W=0,j=0,O=0,Z=0,z=0,$=0,AA=0,gA=0,IA=0,eA=0,rA=0,aA=0,BA=0,tA=0,nA=0,iA=0,oA=0,QA=0,CA=0,cA=0,EA=0,sA=0,yA=0,_A=0,hA=0,fA=0,pA=0;for(f=V=f-256|0;X=(L=O<<3)+(V+128|0)|0,rA=n[4+(L=g+L|0)|0]|n[L+5|0]<<8|n[L+6|0]<<16|n[L+7|0]<<24,t[X>>2]=n[0|L]|n[L+1|0]<<8|n[L+2|0]<<16|n[L+3|0]<<24,t[X+4>>2]=rA,16!=(0|(O=O+1|0)););for(I=q(V,A,64),L=t[(g=I)>>2],O=t[g+4>>2],i=L,L=(rA=t[g+32>>2])+(V=t[g+128>>2])|0,g=($=t[g+36>>2])+t[g+132>>2]|0,g=L>>>0<V>>>0?g+1|0:g,V=L,g=g+O|0,V=g=(L=i+L|0)>>>0<V>>>0?g+1|0:g,J=uI((O=L)^(n[0|(L=A- -64|0)]|n[L+1|0]<<8|n[L+2|0]<<16|n[L+3|0]<<24)^-1377402159,g^(n[L+4|0]|n[L+5|0]<<8|n[L+6|0]<<16|n[L+7|0]<<24)^1359893119,32),L=g=l,g=g+1779033703|0,i=rA^(X=J-205731576|0),rA=g=X>>>0<4089235720?g+1|0:g,G=uI(i,$^g,24),m=g=l,j=L,i=J,g=g+V|0,g=(g=(J=G+O|0)>>>0<O>>>0?g+1|0:g)+(c=e=t[I+140>>2])|0,i=uI(i^(Q=O=(L=t[I+136>>2])+J|0),(v=J>>>0>Q>>>0?g+1|0:g)^j,16),g=rA+(N=l)|0,c=uI((w=O=X+i|0)^G,(V=X>>>0>w>>>0?g+1|0:g)^m,63),E=l,X=t[I+12>>2],O=(G=t[I+144>>2])+($=rA=t[I+40>>2])|0,g=(W=t[I+148>>2])+(j=t[I+44>>2])|0,g=O>>>0<$>>>0?g+1|0:g,$=O,g=g+X|0,g=(O=O+t[I+8>>2]|0)>>>0<$>>>0?g+1|0:g,J=uI(O^(n[A+72|0]|n[A+73|0]<<8|n[A+74|0]<<16|n[A+75|0]<<24)^725511199,(n[A+76|0]|n[A+77|0]<<8|n[A+78|0]<<16|n[A+79|0]<<24)^g^-1694144372,32),j=uI(o=(X=J-2067093701|0)^rA,j^(m=(rA=l)-((J>>>0<2067093701)+1150833018|0)|0),24),s=t[I+156>>2],o=j,g=g+($=l)|0,g=(g=(j=j+O|0)>>>0<O>>>0?g+1|0:g)+s|0,CA=uI((u=O=j+t[I+152>>2]|0)^J,(d=j>>>0>u>>>0?g+1|0:g)^rA,16),g=m+(k=l)|0,sA=O=X+CA|0,J=uI(o^O,(X=X>>>0>O>>>0?g+1|0:g)^$,63),m=l,rA=t[I+20>>2],O=(H=t[I+160>>2])+(j=t[I+48>>2])|0,g=(tA=t[I+164>>2])+(y=t[I+52>>2])|0,$=O,g=(g=O>>>0<j>>>0?g+1|0:g)+rA|0,oA=O=O+t[I+16>>2]|0,O=O>>>0<$>>>0?g+1|0:g,_=uI(oA^(n[A+80|0]|n[A+81|0]<<8|n[A+82|0]<<16|n[A+83|0]<<24)^-79577749,O^(n[A+84|0]|n[A+85|0]<<8|n[A+86|0]<<16|n[A+87|0]<<24)^528734635,32),rA=g=l,g=g+1013904242|0,o=j^($=_-23791573|0),j=g=$>>>0<4271175723?g+1|0:g,g=uI(o,y^g,24),s=rA,r=t[I+172>>2],o=g,C=_,_=g,oA=g+oA|0,g=(y=l)+O|0,g=(g=_>>>0>oA>>>0?g+1|0:g)+(R=r)|0,AA=uI(C^(D=O=(rA=t[I+168>>2])+(_=oA)|0),(R=_>>>0>D>>>0?g+1|0:g)^s,16),g=j+(M=l)|0,y=uI(o^(b=O=$+AA|0),(j=b>>>0<$>>>0?g+1|0:g)^y,63),s=l,_=t[I+28>>2],$=(O=t[I+176>>2])+(p=oA=t[I+56>>2])|0,g=(yA=t[I+180>>2])+(h=t[I+60>>2])|0,g=(g=p>>>0>$>>>0?g+1|0:g)+_|0,g=(p=$)>>>0>(Y=$=p+t[I+24>>2]|0)>>>0?g+1|0:g,S=uI(Y^(n[A+88|0]|n[A+89|0]<<8|n[A+90|0]<<16|n[A+91|0]<<24)^327033209,g^(n[A+92|0]|n[A+93|0]<<8|n[A+94|0]<<16|n[A+95|0]<<24)^1541459225,32),_=uI(C=(o=(_=S)+1595750129|0)^oA,h^(oA=($=l)-((_>>>0<2699217167)+1521486533|0)|0),24),h=oA,F=$,oA=t[I+188>>2],C=_,x=o,g=(p=l)+g|0,g=(g=(Y=_+Y|0)>>>0<_>>>0?g+1|0:g)+(U=oA)|0,Z=_=($=t[I+184>>2])+Y|0,o=uI(_^S,(o=F)^(F=_>>>0<Y>>>0?g+1|0:g),16),g=(g=h)+(h=l)|0,Y=_=x+o|0,S=p,p=g=_>>>0<o>>>0?g+1|0:g,C=uI(C^_,S^g,63),_=l,S=m,x=J,K=b,g=m+v|0,m=Q=Q+J|0,g=(g=Q>>>0<J>>>0?g+1|0:g)+(U=T=t[I+196>>2])|0,b=uI((Q=J=(gA=t[I+192>>2])+Q|0)^o,(J=m>>>0>Q>>>0?g+1|0:g)^h,32),g=(g=j)+(j=l)|0,v=g=(m=K+(v=b)|0)>>>0<v>>>0?g+1|0:g,g=uI(x^m,g^S,24),EA=t[I+204>>2],x=g,o=b,h=Q,Q=g,b=h+g|0,g=(h=l)+J|0,g=(g=Q>>>0>b>>>0?g+1|0:g)+(U=EA)|0,aA=J=(S=t[I+200>>2])+(Q=b)|0,cA=uI(o^J,(Q=Q>>>0>J>>>0?g+1|0:g)^j,16),g=v+(b=l)|0,U=uI(x^(o=j=m+cA|0),(v=h)^(h=m>>>0>o>>>0?g+1|0:g),63),v=l,j=s,K=y,g=s+d|0,g=(g=(m=y+u|0)>>>0<y>>>0?g+1|0:g)+(x=QA=t[I+212>>2])|0,u=uI((P=i)^(i=m=(J=t[I+208>>2])+(y=m)|0),(y=y>>>0>i>>>0?g+1|0:g)^N,32),g=p+(m=l)|0,j=uI(K^(s=Y+u|0),(g=s>>>0<Y>>>0?g+1|0:g)^j,24),N=g,d=m,z=t[I+220>>2],K=j,P=s,g=(s=l)+y|0,g=(g=(p=i+j|0)>>>0<j>>>0?g+1|0:g)+(x=z)|0,d=uI((p=j=(m=t[I+216>>2])+(y=p)|0)^u,(Y=y>>>0>p>>>0?g+1|0:g)^d,16),g=(i=l)+N|0,iA=j=P+(y=d)|0,x=uI(K^j,(y=y>>>0>j>>>0?g+1|0:g)^s,63),s=l,N=_,K=C,g=_+R|0,g=(g=(C=C+D|0)>>>0<D>>>0?g+1|0:g)+(u=B=t[I+228>>2])|0,C=uI((R=_=(j=t[I+224>>2])+C|0)^CA,(_=_>>>0<C>>>0?g+1|0:g)^k,32),g=(k=l)+V|0,w=D=w+C|0,V=uI(K^D,(g=D>>>0<C>>>0?g+1|0:g)^N,24),D=g,K=t[I+236>>2],u=V,g=(N=l)+_|0,g=(g=(R=R+V|0)>>>0<V>>>0?g+1|0:g)+K|0,nA=uI((R=V=(eA=t[I+232>>2])+(_=R)|0)^C,(V=k)^(k=_>>>0>R>>>0?g+1|0:g),16),g=(g=D)+(D=l)|0,_=uI(u^(C=V=(_=nA)+w|0),(w=_>>>0>C>>>0?g+1|0:g)^N,63),N=l,u=E,IA=c,BA=sA,g=E+F|0,g=(g=(sA=c+Z|0)>>>0<c>>>0?g+1|0:g)+(P=CA=t[I+244>>2])|0,E=g=(c=(V=t[I+240>>2])+(E=sA)|0)>>>0<E>>>0?g+1|0:g,AA=uI(c^AA,g^M,32),g=(g=X)+(X=l)|0,Z=M=BA+(F=AA)|0,u=uI(IA^M,(g=F>>>0>M>>>0?g+1|0:g)^u,24),IA=BA=l,M=g,F=X,_A=u,g=E+BA|0,g=(g=(u=c+u|0)>>>0<c>>>0?g+1|0:g)+(sA=t[I+252>>2])|0,u=c=(X=t[I+248>>2])+(E=u)|0,P=uI(c^AA,(P=F)^(F=c>>>0<E>>>0?g+1|0:g),16),g=(g=M)+(M=l)|0,AA=uI(_A^(BA=c=(E=P)+Z|0),(c=c>>>0<E>>>0?g+1|0:g)^IA,63),IA=g=l,E=g,_A=d,g=Q+CA|0,g=(g=(d=V)>>>0>(Z=d+aA|0)>>>0?g+1|0:g)+E|0,Z=uI(_A^(E=d=(Q=Z)+AA|0),(d=Q>>>0>E>>>0?g+1|0:g)^i,32),g=w+(Q=l)|0,C=g=(i=C+Z|0)>>>0<C>>>0?g+1|0:g,aA=AA=uI(AA^i,IA^g,24),IA=g=l,w=g,hA=AA,g=d+QA|0,g=(g=(AA=E+J|0)>>>0<E>>>0?g+1|0:g)+w|0,aA=E=aA+(d=AA)|0,_A=uI(E^Z,(w=Q)^(Q=E>>>0<d>>>0?g+1|0:g),16),g=C+(w=l)|0,C=g=(E=i+_A|0)>>>0<i>>>0?g+1|0:g,AA=uI(hA^(i=E),g^IA,63),d=l,Z=U,g=tA+(E=v)|0,g=(g=(U=H+U|0)>>>0<H>>>0?g+1|0:g)+Y|0,H=g=(v=p+U|0)>>>0<p>>>0?g+1|0:g,Y=uI(v^nA,g^D,32),g=(g=c)+(c=l)|0,g=(D=(p=Y)+BA|0)>>>0<p>>>0?g+1|0:g,p=E,E=g,U=uI(Z^D,p^g,24),tA=g=l,p=g,Z=Y,g=H+T|0,g=(g=(Y=v+gA|0)>>>0<v>>>0?g+1|0:g)+p|0,g=(v=(H=Y)+U|0)>>>0<H>>>0?g+1|0:g,H=v,p=g,nA=uI(Z^v,g^c,16),g=E+(Y=l)|0,BA=c=D+nA|0,U=uI(c^U,(E=c>>>0<D>>>0?g+1|0:g)^tA,63),c=l,v=s,g=s+EA|0,g=(g=(D=S+x|0)>>>0<S>>>0?g+1|0:g)+k|0,M=uI((S=s=D+R|0)^P,(s=s>>>0<R>>>0?g+1|0:g)^M,32),g=h+(k=l)|0,g=o>>>0>(D=o+M|0)>>>0?g+1|0:g,o=v,v=g,o=h=uI(D^x,o^g,24),x=g=l,R=g,Z=M,g=s+sA|0,g=(g=(h=(M=X)+S|0)>>>0<M>>>0?g+1|0:g)+R|0,P=s=o+h|0,IA=uI(Z^s,(M=k)^(k=s>>>0<h>>>0?g+1|0:g),16),g=v+(R=l)|0,x=uI((S=s=D+IA|0)^o,(s=s>>>0<D>>>0?g+1|0:g)^x,63),v=l,o=_,g=(D=N)+K|0,g=(g=(M=_+eA|0)>>>0<_>>>0?g+1|0:g)+F|0,h=uI((M=_=u+M|0)^cA,(_=_>>>0<u>>>0?g+1|0:g)^b,32),g=(g=y)+(y=l)|0,b=uI(o^(F=N=h+iA|0),(g=N>>>0<h>>>0?g+1|0:g)^D,24),u=N=l,D=g,Z=F,F=h,h=(g=M)+(M=O)|0,g=_+yA|0,g=(g=h>>>0<M>>>0?g+1|0:g)+N|0,M=_=h+(o=b)|0,h=g=_>>>0<h>>>0?g+1|0:g,F=uI(F^_,g^y,16),g=(N=l)+D|0,Z=uI(b^(o=y=Z+(_=F)|0),(_=o>>>0<_>>>0?g+1|0:g)^u,63),y=l,D=c,b=S,u=F,g=Q+e|0,g=(g=(F=L)>>>0>(S=F+aA|0)>>>0?g+1|0:g)+c|0,S=uI(u^(c=F=S+U|0),(Q=N)^(N=c>>>0<S>>>0?g+1|0:g),32),g=(g=s)+(s=l)|0,g=(Q=S)>>>0>(F=b+Q|0)>>>0?g+1|0:g,u=b=uI((Q=F)^U,g^D,24),U=D=l,F=g,aA=S,g=N+B|0,g=(g=(S=c+j|0)>>>0<c>>>0?g+1|0:g)+D|0,D=c=(N=S)+b|0,cA=uI(aA^c,(S=c>>>0<N>>>0?g+1|0:g)^s,16),g=(g=F)+(F=l)|0,Q=c=(s=cA)+Q|0,tA=uI(c^u,(b=c>>>0<s>>>0?g+1|0:g)^U,63),s=l,U=o,g=p+(c=v)|0,g=(g=(N=H+x|0)>>>0<H>>>0?g+1|0:g)+(u=iA=t[I+132>>2])|0,N=g=(v=(o=t[I+128>>2])+N|0)>>>0<N>>>0?g+1|0:g,p=uI(v^_A,g^w,32),g=(g=_)+(_=l)|0,w=H=U+p|0,U=u=uI(H^x,(g=H>>>0<p>>>0?g+1|0:g)^c,24),x=c=l,H=g,aA=p,g=N+W|0,N=p=G+v|0,g=(g=p>>>0<v>>>0?g+1|0:g)+c|0,c=uI(aA^(p=v=p+u|0),(c=_)^(_=p>>>0<N>>>0?g+1|0:g),16),g=(g=H)+(H=l)|0,w=v=c+w|0,EA=uI(v^U,(u=v>>>0<c>>>0?g+1|0:g)^x,63),v=l,N=y,g=k+z|0,g=(g=(x=m+P|0)>>>0<m>>>0?g+1|0:g)+y|0,g=(k=(U=x)+Z|0)>>>0<U>>>0?g+1|0:g,U=k,y=g,x=uI(k^nA,g^Y,32),g=C+(k=l)|0,g=i>>>0>(Y=i+x|0)>>>0?g+1|0:g,Z=C=uI((i=Y)^Z,g^N,24),aA=N=l,Y=g,P=i,g=y+oA|0,g=(i=$)>>>0>(C=i+U|0)>>>0?g+1|0:g,i=C,g=g+N|0,C=k,k=g=i>>>0>(y=Z+i|0)>>>0?g+1|0:g,nA=uI((i=y)^x,C^g,16),g=(y=l)+Y|0,Z=uI((Y=N=P+(C=nA)|0)^Z,(g=C>>>0>Y>>>0?g+1|0:g)^aA,63),N=l,U=g,x=c,P=AA,g=r+(C=d)|0,g=(g=(c=rA)>>>0>(AA=c+AA|0)>>>0?g+1|0:g)+h|0,d=c=M+AA|0,h=uI(c^IA,(h=R)^(R=c>>>0<M>>>0?g+1|0:g),32),g=(c=l)+E|0,aA=M=h+BA|0,C=uI(P^M,(g=M>>>0<h>>>0?g+1|0:g)^C,24),IA=BA=l,E=g,M=c,BA=C,P=h,g=R+IA|0,g=(g=(h=C+d|0)>>>0<d>>>0?g+1|0:g)+(AA=t[I+156>>2])|0,R=d=(c=t[I+152>>2])+h|0,C=M,M=g=d>>>0<h>>>0?g+1|0:g,P=uI(P^d,C^g,16),g=(g=E)+(E=l)|0,C=g=(h=P)>>>0>(d=h+aA|0)>>>0?g+1|0:g,aA=uI(BA^(h=d),g^IA,63),BA=g=l,d=g,IA=Y,g=S+z|0,g=(g=(Y=D+m|0)>>>0<D>>>0?g+1|0:g)+d|0,d=D=Y+aA|0,x=uI(D^x,(S=H)^(H=D>>>0<Y>>>0?g+1|0:g),32),g=(D=l)+U|0,S=g=(Y=IA+(S=x)|0)>>>0<S>>>0?g+1|0:g,BA=aA=uI(aA^Y,BA^g,24),IA=g=l,U=g,_A=x,g=H+T|0,g=(g=(x=d+gA|0)>>>0<d>>>0?g+1|0:g)+U|0,g=(d=(H=x)+aA|0)>>>0<H>>>0?g+1|0:g,H=d,U=D,D=g,aA=uI(_A^d,U^g,16),g=S+(U=l)|0,g=(d=Y+aA|0)>>>0<Y>>>0?g+1|0:g,Y=d,S=g,gA=uI(d^BA,g^IA,63),d=l,x=s,IA=tA,g=s+B|0,g=_+(j>>>0>(tA=j+tA|0)>>>0?g+1|0:g)|0,T=s=p+tA|0,tA=uI(s^nA,(_=y)^(y=s>>>0<p>>>0?g+1|0:g),32),g=C+(s=l)|0,p=g=(_=h+tA|0)>>>0<h>>>0?g+1|0:g,x=C=uI(IA^_,g^x,24),nA=g=l,h=g,g=y+iA|0,g=(g=(C=o+T|0)>>>0<o>>>0?g+1|0:g)+h|0,T=y=x+(o=C)|0,tA=uI(y^tA,(h=y>>>0<o>>>0?g+1|0:g)^s,16),g=p+(o=l)|0,iA=y=_+tA|0,C=uI(y^x,(_=y>>>0<_>>>0?g+1|0:g)^nA,63),y=l,g=r+(s=v)|0,g=k+((p=rA)>>>0>(x=p+EA|0)>>>0?g+1|0:g)|0,p=E,E=g=i>>>0>(v=i+x|0)>>>0?g+1|0:g,x=uI((i=v)^P,p^g,32),g=b+(v=l)|0,g=Q>>>0>(k=Q+x|0)>>>0?g+1|0:g,Q=s,s=g,Q=uI(k^EA,Q^g,24),EA=g=l,p=g,IA=Q,g=E+W|0,g=(g=(Q=G)>>>0>(b=Q+i|0)>>>0?g+1|0:g)+p|0,nA=E=IA+(Q=b)|0,P=uI(E^x,(p=E>>>0<Q>>>0?g+1|0:g)^v,16),g=s+(Q=l)|0,x=E=k+P|0,b=uI(IA^E,(v=E>>>0<k>>>0?g+1|0:g)^EA,63),E=l,g=sA+(s=N)|0,g=M+((i=(k=X)+Z|0)>>>0<k>>>0?g+1|0:g)|0,k=g=(N=R+i|0)>>>0<R>>>0?g+1|0:g,i=uI(N^cA,g^F,32),g=u+(R=l)|0,F=s,s=g=w>>>0>(M=w+i|0)>>>0?g+1|0:g,w=uI(M^Z,F^g,24),Z=g=l,F=g,IA=i,g=k+K|0,g=(g=(i=N+eA|0)>>>0<N>>>0?g+1|0:g)+F|0,i=uI(IA^(F=N=i+(u=w)|0),(u=R)^(R=i>>>0>F>>>0?g+1|0:g),16),g=s+(k=l)|0,w=uI(w^(u=N=M+i|0),(N=u>>>0<M>>>0?g+1|0:g)^Z,63),s=l,M=y,Z=C,IA=i,g=D+QA|0,D=i=H+J|0,g=(g=i>>>0<H>>>0?g+1|0:g)+y|0,C=uI(IA^(i=H=i+C|0),(y=D>>>0>i>>>0?g+1|0:g)^k,32),g=(g=v)+(v=l)|0,H=g=(k=C+x|0)>>>0<C>>>0?g+1|0:g,x=M=uI(Z^k,g^M,24),Z=g=l,D=g,g=y+CA|0,g=(g=(i=(M=V)+i|0)>>>0<M>>>0?g+1|0:g)+D|0,EA=y=x+i|0,cA=uI(y^C,(D=y>>>0<i>>>0?g+1|0:g)^v,16),g=H+(M=l)|0,x=uI((BA=y=k+cA|0)^x,(y=y>>>0<k>>>0?g+1|0:g)^Z,63),v=l,k=E,C=b,g=h+AA|0,g=(g=(b=c+T|0)>>>0<c>>>0?g+1|0:g)+E|0,E=g=(h=b)>>>0>(H=C+h|0)>>>0?g+1|0:g,b=uI((h=H)^aA,g^U,32),g=(g=N)+(N=l)|0,g=(i=b)>>>0>(H=i+u|0)>>>0?g+1|0:g,u=C=uI(C^(i=H),g^k,24),H=g,U=i,i=b,b=(g=h)+(h=O)|0,g=E+yA|0,g=(g=h>>>0>b>>>0?g+1|0:g)+(k=l)|0,g=(E=(h=b)+C|0)>>>0<h>>>0?g+1|0:g,h=E,b=g,i=uI(i^E,g^N,16),g=(C=l)+H|0,N=uI((aA=E=U+i|0)^u,(E=E>>>0<i>>>0?g+1|0:g)^k,63),k=l,H=s,U=w,g=p+oA|0,g=(g=(u=(w=$)+nA|0)>>>0<w>>>0?g+1|0:g)+s|0,w=p=U+u|0,s=g=p>>>0<u>>>0?g+1|0:g,u=uI(p^tA,g^o,32),g=S+(p=l)|0,S=o=Y+u|0,U=o=uI(U^o,(g=o>>>0<Y>>>0?g+1|0:g)^H,24),T=H=l,Y=g,Z=S,g=s+e|0,g=(g=(o=(S=L)+w|0)>>>0<S>>>0?g+1|0:g)+H|0,g=(s=U+o|0)>>>0<o>>>0?g+1|0:g,S=s,o=p,p=g,nA=uI(s^u,o^g,16),g=(g=Y)+(Y=l)|0,U=uI((s=Z+(H=nA)|0)^U,(g=s>>>0<H>>>0?g+1|0:g)^T,63),H=l,w=s,u=g,g=R+(o=d)|0,d=s=F+gA|0,g=(g=s>>>0<F>>>0?g+1|0:g)+(T=t[I+204>>2])|0,d=g=(s=(Z=t[I+200>>2])+s|0)>>>0<d>>>0?g+1|0:g,F=uI(s^P,g^Q,32),g=(g=_)+(_=l)|0,g=(Q=F)>>>0>(R=Q+iA|0)>>>0?g+1|0:g,o=uI((Q=R)^gA,g^o,24),P=iA=l,R=g,IA=Q,iA=F,g=d+P|0,g=(g=(F=s+o|0)>>>0<s>>>0?g+1|0:g)+(gA=t[I+164>>2])|0,F=s=(tA=t[I+160>>2])+(d=F)|0,iA=uI(iA^s,(Q=s>>>0<d>>>0?g+1|0:g)^_,16),g=(g=R)+(R=l)|0,o=uI(o^(IA=s=IA+(_=iA)|0),(s=s>>>0<_>>>0?g+1|0:g)^P,63),P=g=l,_=g,_A=i,g=D+oA|0,g=(g=(i=(d=$)+EA|0)>>>0<d>>>0?g+1|0:g)+_|0,C=uI(_A^(_=d=i+o|0),(d=i>>>0>_>>>0?g+1|0:g)^C,32),g=(D=l)+u|0,w=i=w+C|0,u=uI(o^i,(g=i>>>0<C>>>0?g+1|0:g)^P,24),P=o=l,i=g,EA=w,_A=C,g=d+T|0,g=(g=(C=_+Z|0)>>>0<_>>>0?g+1|0:g)+o|0,w=_=C+u|0,_A=uI(_A^_,(o=D)^(D=_>>>0<C>>>0?g+1|0:g),16),g=(o=l)+i|0,EA=uI((hA=_=EA+(d=_A)|0)^u,(_=_>>>0<d>>>0?g+1|0:g)^P,63),d=l,g=AA+(i=v)|0,g=(g=(C=c+x|0)>>>0<c>>>0?g+1|0:g)+b|0,C=uI((b=c=C+h|0)^nA,(c=c>>>0<h>>>0?g+1|0:g)^Y,32),g=(g=s)+(s=l)|0,h=g=C>>>0>(v=C+IA|0)>>>0?g+1|0:g,u=i=uI(v^x,g^i,24),x=g=l,Y=g,i=(g=b)+(b=L)|0,g=c+e|0,g=(g=i>>>0<b>>>0?g+1|0:g)+Y|0,AA=c=u+i|0,nA=uI(c^C,(Y=c>>>0<i>>>0?g+1|0:g)^s,16),g=h+(b=l)|0,P=c=v+nA|0,i=uI(c^u,(s=c>>>0<v>>>0?g+1|0:g)^x,63),c=l,C=N,g=(v=k)+K|0,g=(g=(h=N+eA|0)>>>0<N>>>0?g+1|0:g)+p|0,k=g=(N=h+S|0)>>>0<S>>>0?g+1|0:g,p=uI(N^iA,g^R,32),g=(g=y)+(y=l)|0,g=(h=p)>>>0>(R=h+BA|0)>>>0?g+1|0:g,S=uI(C^(h=R),g^v,24),u=v=l,R=g,x=h,K=p,g=k+B|0,k=p=N+j|0,g=(g=p>>>0<N>>>0?g+1|0:g)+v|0,iA=uI(K^(p=N=p+(C=S)|0),(h=k>>>0>p>>>0?g+1|0:g)^y,16),g=(g=R)+(R=l)|0,u=uI(S^(C=y=x+(v=iA)|0),(v=C>>>0<v>>>0?g+1|0:g)^u,63),y=l,N=H,g=H+z|0,g=(g=(S=m+U|0)>>>0<m>>>0?g+1|0:g)+Q|0,g=(k=F+S|0)>>>0<F>>>0?g+1|0:g,F=k,k=g,S=uI(F^cA,g^M,32),g=(g=E)+(E=l)|0,Q=N,N=g=(H=(M=S)+aA|0)>>>0<M>>>0?g+1|0:g,U=Q=uI(H^U,Q^g,24),x=g=l,M=g,K=S,S=(g=F)+(F=V)|0,g=k+CA|0,g=(g=F>>>0>S>>>0?g+1|0:g)+M|0,M=k=(F=S)+Q|0,Q=uI(K^k,(F=k>>>0<F>>>0?g+1|0:g)^E,16),g=N+(k=l)|0,g=(E=H+Q|0)>>>0<H>>>0?g+1|0:g,H=E,S=g,U=uI(E^U,g^x,63),E=l,N=c,x=i,K=Q,g=D+W|0,g=(g=(i=(Q=G)+w|0)>>>0<Q>>>0?g+1|0:g)+c|0,c=g=i>>>0>(D=x+i|0)>>>0?g+1|0:g,Q=uI(K^D,g^k,32),g=(g=v)+(v=l)|0,g=(i=Q)>>>0>(k=i+C|0)>>>0?g+1|0:g,w=C=uI(x^(i=k),g^N,24),k=g,x=Q,Q=(g=D)+(D=O)|0,g=c+yA|0,g=(g=Q>>>0<D>>>0?g+1|0:g)+(N=l)|0,D=c=Q+C|0,Q=g=c>>>0<Q>>>0?g+1|0:g,c=(v=cA=uI(x^c,g^v,16))+i|0,g=(i=l)+k|0,C=c,K=uI(k=c^w,(w=c>>>0<v>>>0?g+1|0:g)^N,63),N=l,g=Y+r|0,g=(g=(v=rA)>>>0>(k=v+AA|0)>>>0?g+1|0:g)+(c=y)|0,Y=v=k+u|0,o=uI(v^_A,(y=v>>>0<k>>>0?g+1|0:g)^o,32),g=S+(v=l)|0,g=(k=H+o|0)>>>0<H>>>0?g+1|0:g,H=k,S=uI(k^u,g^c,24),x=c=l,k=g,AA=H,g=y+QA|0,g=(H=J)>>>0>(Y=H+Y|0)>>>0?g+1|0:g,H=Y,g=g+c|0,Y=y=Y+(u=S)|0,y=uI(y^o,(S=y>>>0<H>>>0?g+1|0:g)^v,16),g=(H=l)+k|0,BA=c=AA+y|0,eA=uI(c^u,(v=c>>>0<y>>>0?g+1|0:g)^x,63),k=l,x=U,g=h+gA|0,g=(g=(o=p+tA|0)>>>0<p>>>0?g+1|0:g)+(c=E)|0,u=uI((E=p=o+U|0)^nA,(p=o>>>0>E>>>0?g+1|0:g)^b,32),g=(g=_)+(_=l)|0,U=h=(b=u)+hA|0,o=uI(x^h,(g=h>>>0<b>>>0?g+1|0:g)^c,24),h=c=l,b=g,x=o,g=p+c|0,g=(g=(o=E+o|0)>>>0<E>>>0?g+1|0:g)+(AA=t[I+132>>2])|0,p=E=(c=t[I+128>>2])+o|0,o=g=E>>>0<o>>>0?g+1|0:g,nA=uI(E^u,g^_,16),g=(g=b)+(b=l)|0,aA=uI(x^(E=(_=nA)+U|0),(g=E>>>0<_>>>0?g+1|0:g)^h,63),_=l,u=E,U=g,x=y,g=sA+(h=d)|0,g=(g=(E=(y=X)+EA|0)>>>0<y>>>0?g+1|0:g)+F|0,M=uI((E=y=E+M|0)^iA,(d=E>>>0<M>>>0?g+1|0:g)^R,32),g=(y=l)+s|0,g=(F=M)>>>0>(R=F+P|0)>>>0?g+1|0:g,h=uI((F=R)^EA,g^h,24),IA=P=l,s=g,R=y,iA=M,g=d+P|0,g=(g=(M=E+h|0)>>>0<E>>>0?g+1|0:g)+(EA=t[I+196>>2])|0,M=E=(y=t[I+192>>2])+(d=M)|0,iA=uI(iA^E,(P=R)^(R=E>>>0<d>>>0?g+1|0:g),16),g=(g=s)+(s=l)|0,h=uI(h^(P=E=(d=iA)+F|0),(E=E>>>0<d>>>0?g+1|0:g)^IA,63),IA=g=l,d=g,g=Q+T|0,g=(g=(F=D+Z|0)>>>0<D>>>0?g+1|0:g)+d|0,g=(D=F+h|0)>>>0<F>>>0?g+1|0:g,F=D,d=g,Q=uI(D^x,g^H,32),g=(H=l)+U|0,u=D=u+Q|0,U=uI(h^D,(g=D>>>0<Q>>>0?g+1|0:g)^IA,24),T=D=l,h=g,x=Q,g=d+AA|0,g=(g=(Q=c+F|0)>>>0<c>>>0?g+1|0:g)+D|0,Z=d=Q+U|0,IA=uI(x^d,(D=d>>>0<Q>>>0?g+1|0:g)^H,16),g=(g=h)+(h=l)|0,F=d=(H=IA)+u|0,T=uI(d^U,(Q=d>>>0<H>>>0?g+1|0:g)^T,63),H=l,g=r+(d=N)|0,g=S+((u=rA)>>>0>(U=u+K|0)>>>0?g+1|0:g)|0,Y=g=(N=Y+U|0)>>>0<Y>>>0?g+1|0:g,u=uI(N^nA,g^b,32),g=(g=E)+(E=l)|0,g=(b=u)>>>0>(S=b+P|0)>>>0?g+1|0:g,b=d,d=g,U=uI(S^K,b^g,24),K=g=l,b=g,x=u,g=Y+oA|0,g=(g=(u=N+$|0)>>>0<N>>>0?g+1|0:g)+b|0,b=g=(N=(Y=u)+U|0)>>>0<Y>>>0?g+1|0:g,nA=uI(x^(Y=N),g^E,16),g=d+(u=l)|0,P=E=S+nA|0,U=uI(E^U,(N=E>>>0<S>>>0?g+1|0:g)^K,63),E=l,d=k,g=k+W|0,g=o+(G>>>0>(x=G+eA|0)>>>0?g+1|0:g)|0,o=s,s=g=p>>>0>(k=p+x|0)>>>0?g+1|0:g,x=uI(k^iA,o^g,32),g=w+(p=l)|0,o=d,d=g=C>>>0>(S=C+x|0)>>>0?g+1|0:g,w=C=uI(S^eA,o^g,24),o=g=l,g=s+gA|0,g=(g=(C=k+tA|0)>>>0<k>>>0?g+1|0:g)+o|0,gA=s=w+C|0,tA=uI(s^x,(k=s>>>0<C>>>0?g+1|0:g)^p,16),g=d+(p=l)|0,eA=s=S+tA|0,C=uI(s^w,(d=s>>>0<S>>>0?g+1|0:g)^o,63),s=l,S=_,g=_+QA|0,g=R+((o=J)>>>0>(w=o+aA|0)>>>0?g+1|0:g)|0,i=uI((o=_=M+w|0)^cA,(_=o>>>0<M>>>0?g+1|0:g)^i,32),g=(g=v)+(v=l)|0,x=S=uI((w=R=i+BA|0)^aA,(g=i>>>0>w>>>0?g+1|0:g)^S,24),K=R=l,M=g,g=_+sA|0,g=(g=(o=(S=X)+o|0)>>>0<S>>>0?g+1|0:g)+R|0,R=_=x+o|0,i=uI(_^i,(S=_>>>0<o>>>0?g+1|0:g)^v,16),g=(g=M)+(M=l)|0,aA=_=i+w|0,x=uI(_^x,(v=_>>>0<i>>>0?g+1|0:g)^K,63),_=l,K=U,iA=i,g=D+CA|0,g=(g=(i=V)>>>0>(w=i+Z|0)>>>0?g+1|0:g)+(o=E)|0,E=g=(i=w)>>>0>(D=i+U|0)>>>0?g+1|0:g,w=uI(iA^(i=D),g^M,32),g=(g=d)+(d=l)|0,U=D=(M=w)+eA|0,K=o=uI(K^D,(g=D>>>0<M>>>0?g+1|0:g)^o,24),eA=D=l,M=g,g=E+e|0,g=(g=(i=(o=L)+i|0)>>>0<o>>>0?g+1|0:g)+D|0,cA=E=K+i|0,iA=uI(E^w,(o=d)^(d=E>>>0<i>>>0?g+1|0:g),16),g=(D=l)+M|0,M=E=(o=iA)+U|0,K=uI(E^K,(o=E>>>0<o>>>0?g+1|0:g)^eA,63),E=l,U=C,g=b+z|0,b=C=m+Y|0,g=(g=C>>>0<Y>>>0?g+1|0:g)+(i=s)|0,w=uI((C=Y=U+C|0)^IA,(s=C>>>0<b>>>0?g+1|0:g)^h,32),g=(g=v)+(v=l)|0,Y=g=(h=(Y=w)+aA|0)>>>0<Y>>>0?g+1|0:g,U=i=uI(U^h,g^i,24),eA=g=l,b=g,g=s+B|0,g=(g=(i=j)>>>0>(C=i+C|0)>>>0?g+1|0:g)+b|0,b=s=U+(i=C)|0,v=uI(s^w,(i=s>>>0<i>>>0?g+1|0:g)^v,16),g=Y+(C=l)|0,g=(s=h+v|0)>>>0<h>>>0?g+1|0:g,h=s,Y=g,eA=uI(s^U,g^eA,63),s=l,w=_,Z=x,g=k+yA|0,g=(g=(U=O)>>>0>(x=U+gA|0)>>>0?g+1|0:g)+_|0,g=(k=Z+(U=x)|0)>>>0<U>>>0?g+1|0:g,U=k,_=g,x=uI(k^nA,g^u,32),g=Q+(k=l)|0,Q=g=(u=F+x|0)>>>0<F>>>0?g+1|0:g,u=uI(Z^(F=u),g^w,24),Z=g=l,w=g,g=_+EA|0,g=(g=(U=y+U|0)>>>0<y>>>0?g+1|0:g)+w|0,w=_=(gA=u)+(u=U)|0,aA=uI(_^x,(U=k)^(k=_>>>0<u>>>0?g+1|0:g),16),g=Q+(u=l)|0,g=(_=F+aA|0)>>>0<F>>>0?g+1|0:g,F=_,gA=uI(_^gA,g^Z,63),_=l,U=g,IA=T,g=S+(Q=H)|0,g=(g=(T=R+T|0)>>>0<R>>>0?g+1|0:g)+(Z=nA=t[I+156>>2])|0,R=g=(H=(x=t[I+152>>2])+(R=T)|0)>>>0<R>>>0?g+1|0:g,S=uI(H^tA,g^p,32),g=(g=N)+(N=l)|0,T=p=S+P|0,Z=Q=uI(IA^p,(g=p>>>0<S>>>0?g+1|0:g)^Q,24),P=tA=l,p=g,IA=BA=t[I+236>>2],BA=T,T=S,g=R+P|0,g=(g=(Q=Q+H|0)>>>0<H>>>0?g+1|0:g)+IA|0,g=(H=(S=t[I+232>>2])+Q|0)>>>0<Q>>>0?g+1|0:g,Q=N,N=g,tA=uI(T^H,Q^g,16),g=(R=l)+p|0,Z=uI((p=Q=BA+(T=tA)|0)^Z,(Q=Q>>>0<T>>>0?g+1|0:g)^P,63),P=g=l,T=g,BA=v,g=d+W|0,g=(g=(v=G+cA|0)>>>0<G>>>0?g+1|0:g)+T|0,C=uI(BA^(T=G=v+Z|0),(G=G>>>0<v>>>0?g+1|0:g)^C,32),g=(v=l)+U|0,U=d=F+C|0,W=uI(Z^d,P^(g=d>>>0<C>>>0?g+1|0:g),24),cA=d=l,F=g,Z=U,P=C,g=G+B|0,g=(g=(C=j)>>>0>(U=C+T|0)>>>0?g+1|0:g)+d|0,P=uI(P^(d=G=(C=U)+W|0),(C=C>>>0>d>>>0?g+1|0:g)^v,16),g=(g=F)+(F=l)|0,U=G=Z+(v=P)|0,Z=uI(G^W,(T=G>>>0<v>>>0?g+1|0:g)^cA,63),v=l,G=E,BA=K,g=E+yA|0,g=i+(O>>>0>(K=O+K|0)>>>0?g+1|0:g)|0,u=uI((W=E=b+K|0)^aA,(E=E>>>0<b>>>0?g+1|0:g)^u,32),g=Q+(b=l)|0,g=(i=p+u|0)>>>0<p>>>0?g+1|0:g,p=i,Q=G,G=g,K=i=uI(BA^i,Q^g,24),aA=g=l,Q=g,BA=i,cA=u,g=E+QA|0,g=(g=(i=J)>>>0>(u=i+W|0)>>>0?g+1|0:g)+Q|0,K=E=K+(i=u)|0,cA=uI(cA^E,(Q=E>>>0<i>>>0?g+1|0:g)^b,16),g=G+(b=l)|0,g=(E=p+cA|0)>>>0<p>>>0?g+1|0:g,p=E,i=g,u=uI(BA^E,g^aA,63),E=l,G=s,g=s+AA|0,g=(g=(W=c+eA|0)>>>0<c>>>0?g+1|0:g)+k|0,g=(c=w+W|0)>>>0<w>>>0?g+1|0:g,w=c,c=g,W=uI(w^tA,g^R,32),g=o+(s=l)|0,o=G,G=g=(k=M+W|0)>>>0<M>>>0?g+1|0:g,o=M=uI(k^eA,o^g,24),eA=g=l,R=g,g=c+z|0,g=(g=(M=m+w|0)>>>0<m>>>0?g+1|0:g)+R|0,w=m=o+(c=M)|0,W=uI(m^W,(M=s)^(s=c>>>0>m>>>0?g+1|0:g),16),g=G+(R=l)|0,z=m=k+W|0,M=uI(m^o,(c=m>>>0<k>>>0?g+1|0:g)^eA,63),G=l,m=_,g=_+EA|0,g=(g=(k=y+gA|0)>>>0<y>>>0?g+1|0:g)+N|0,g=(y=k+H|0)>>>0<H>>>0?g+1|0:g,H=y,y=g,D=uI(H^iA,g^D,32),g=Y+(_=l)|0,o=m,m=g=h>>>0>(N=h+D|0)>>>0?g+1|0:g,Y=h=uI(N^gA,o^g,24),o=g=l,g=y+nA|0,g=(g=(H=H+x|0)>>>0<x>>>0?g+1|0:g)+o|0,k=y=H+h|0,D=uI(y^D,(h=_)^(_=y>>>0<H>>>0?g+1|0:g),16),g=m+(H=l)|0,o=uI((h=y=N+D|0)^Y,(y=y>>>0<N>>>0?g+1|0:g)^o,63),m=l,N=E,x=D,g=E+C|0,g=(D=d+u|0)>>>0<d>>>0?g+1|0:g,d=D,g=g+(Y=t[I+164>>2])|0,Y=uI(x^(D=E=D+t[I+160>>2]|0),(E=E>>>0<d>>>0?g+1|0:g)^H,32),g=(g=c)+(c=l)|0,C=N,N=g=(d=(H=Y)+z|0)>>>0<H>>>0?g+1|0:g,C=uI(d^u,C^g,24),x=g=l,H=g,g=E+IA|0,g=(g=(D=D+S|0)>>>0<S>>>0?g+1|0:g)+H|0,eA=uI((z=E=D+C|0)^Y,(E=E>>>0<D>>>0?g+1|0:g)^c,16),g=N+(H=l)|0,N=c=d+eA|0,u=uI(c^C,(d=c>>>0<d>>>0?g+1|0:g)^x,63),c=l,C=M,S=h,g=Q+oA|0,g=(g=(h=(M=$)+K|0)>>>0<M>>>0?g+1|0:g)+(D=G)|0,F=uI((Y=M=C+h|0)^P,(G=h>>>0>Y>>>0?g+1|0:g)^F,32),g=(g=y)+(y=l)|0,Q=D,D=g=(h=F)>>>0>(M=S+h|0)>>>0?g+1|0:g,Q=S=uI(C^M,Q^g,24),C=g=l,S=F,g=G+r|0,g=(g=(F=rA)>>>0>(Y=F+Y|0)>>>0?g+1|0:g)+C|0,Y=uI(S^(h=G=Y+Q|0),(F=h>>>0<Y>>>0?g+1|0:g)^y,16),g=D+(S=l)|0,x=uI((D=G=M+Y|0)^Q,(M=D>>>0<M>>>0?g+1|0:g)^C,63),G=l,K=o,g=s+sA|0,g=(Q=X)>>>0>(o=Q+w|0)>>>0?g+1|0:g,Q=o,g=g+(y=m)|0,C=uI((o=s=K+o|0)^cA,(m=o>>>0<Q>>>0?g+1|0:g)^b,32),g=T+(s=l)|0,b=y,y=g=(Q=U+C|0)>>>0<U>>>0?g+1|0:g,w=uI(K^Q,b^g,24),T=g=l,b=g,U=C,C=(g=o)+(o=V)|0,g=m+CA|0,g=(g=o>>>0>C>>>0?g+1|0:g)+b|0,b=g=(o=C)>>>0>(m=o+w|0)>>>0?g+1|0:g,K=uI(U^m,g^s,16),g=y+(o=l)|0,U=uI((s=Q+K|0)^w,(g=s>>>0<Q>>>0?g+1|0:g)^T,63),y=l,C=g,g=e+(Q=v)|0,g=_+((w=L)>>>0>(T=w+Z|0)>>>0?g+1|0:g)|0,w=v=k+T|0,T=uI(v^W,(_=v>>>0<k>>>0?g+1|0:g)^R,32),g=i+(v=l)|0,R=g=p>>>0>(k=p+T|0)>>>0?g+1|0:g,W=g=uI(k^Z,g^Q,24),p=g,Q=g+w|0,g=(i=l)+_|0,g=(g=Q>>>0<p>>>0?g+1|0:g)+(gA=t[I+204>>2])|0,g=(_=Q+t[I+200>>2]|0)>>>0<Q>>>0?g+1|0:g,Q=v,v=g,gA=uI(_^T,Q^g,16),g=R+(p=l)|0,g=(Q=k+gA|0)>>>0<k>>>0?g+1|0:g,k=Q,R=g,i=uI(W^Q,g^i,63),Q=g=l,w=s,W=Y,g=E+B|0,g=(g=(s=j)>>>0>(Y=s+z|0)>>>0?g+1|0:g)+Q|0,W=uI(W^(T=E=(s=Y)+i|0),(E=E>>>0<s>>>0?g+1|0:g)^S,32),g=(s=l)+C|0,S=g=(Y=w+(S=W)|0)>>>0<S>>>0?g+1|0:g,i=uI(i^Y,Q^g,24),w=g=l,Q=g,P=i,g=E+r|0,g=(g=(i=rA)>>>0>(C=i+T|0)>>>0?g+1|0:g)+Q|0,W=uI((Q=E=P+(i=C)|0)^W,(i=Q>>>0<i>>>0?g+1|0:g)^s,16),g=S+(C=l)|0,g=(E=Y+W|0)>>>0<Y>>>0?g+1|0:g,Y=E,S=g,E=uI(P^E,g^w,63),s=l,w=c,P=u,g=c+e|0,g=F+((u=L)>>>0>(T=P+u|0)>>>0?g+1|0:g)|0,o=uI((u=c=h+T|0)^K,(c=c>>>0<h>>>0?g+1|0:g)^o,32),g=R+(h=l)|0,R=g=k>>>0>(F=k+o|0)>>>0?g+1|0:g,T=w=uI(P^(k=F),g^w,24),z=g=l,F=g,P=w,K=o,g=c+sA|0,g=(g=(o=X)>>>0>(w=o+u|0)>>>0?g+1|0:g)+F|0,T=c=T+(o=w)|0,K=uI(K^c,(F=h)^(h=c>>>0<o>>>0?g+1|0:g),16),g=R+(F=l)|0,g=(c=k+K|0)>>>0<k>>>0?g+1|0:g,k=c,R=g,u=uI(P^c,g^z,63),c=l,P=x,g=CA+(o=G)|0,g=b+((w=V)>>>0>(x=w+x|0)>>>0?g+1|0:g)|0,w=uI((b=G=m+x|0)^gA,(G=m>>>0>b>>>0?g+1|0:g)^p,32),g=d+(m=l)|0,g=(p=N+w|0)>>>0<N>>>0?g+1|0:g,N=p,d=g,g=uI(P^p,g^o,24),z=t[I+236>>2],P=g,o=b,b=g,o=o+g|0,g=(p=l)+G|0,g=(g=o>>>0<b>>>0?g+1|0:g)+z|0,o=g=(G=o+t[I+232>>2]|0)>>>0<o>>>0?g+1|0:g,z=uI((b=G)^w,g^m,16),g=d+(w=l)|0,x=G=N+z|0,p=uI(P^G,(m=G>>>0<N>>>0?g+1|0:g)^p,63),G=l,N=y,P=U,g=y+v|0,g=(g=(d=_+U|0)>>>0<_>>>0?g+1|0:g)+(gA=t[I+164>>2])|0,H=uI((U=y=(_=d)+t[I+160>>2]|0)^eA,(y=y>>>0<_>>>0?g+1|0:g)^H,32),g=M+(_=l)|0,M=N,N=g=D>>>0>(v=D+H|0)>>>0?g+1|0:g,M=D=uI(P^v,M^g,24),eA=g=l,d=g,P=H,g=y+QA|0,g=(g=(D=(H=J)+U|0)>>>0<H>>>0?g+1|0:g)+d|0,gA=y=M+D|0,D=uI(P^y,(d=_)^(_=y>>>0<D>>>0?g+1|0:g),16),g=N+(d=l)|0,g=(y=v+D|0)>>>0<v>>>0?g+1|0:g,v=y,N=g,U=uI(y^M,g^eA,63),y=l,H=c,P=D,g=c+i|0,g=(g=(D=Q+u|0)>>>0<Q>>>0?g+1|0:g)+(M=t[I+132>>2])|0,Q=uI(P^(M=c=D+t[I+128>>2]|0),(c=c>>>0<D>>>0?g+1|0:g)^d,32),g=(g=m)+(m=l)|0,i=H,H=g=Q>>>0>(d=Q+x|0)>>>0?g+1|0:g,i=uI(d^u,i^g,24),x=g=l,D=g,u=Q,Q=(g=M)+(M=$)|0,g=c+oA|0,g=(g=Q>>>0<M>>>0?g+1|0:g)+D|0,eA=c=Q+i|0,AA=uI(u^c,(D=c>>>0<Q>>>0?g+1|0:g)^m,16),g=H+(M=l)|0,H=g=(m=d+AA|0)>>>0<d>>>0?g+1|0:g,u=uI((d=m)^i,g^x,63),m=l,x=p,g=h+yA|0,h=Q=(p=O)+T|0,g=(g=Q>>>0<p>>>0?g+1|0:g)+(c=G)|0,i=uI((Q=p=x+Q|0)^W,(G=h>>>0>Q>>>0?g+1|0:g)^C,32),g=N+(p=l)|0,g=(h=v+i|0)>>>0<v>>>0?g+1|0:g,v=h,C=c,c=g,g=uI(x^h,C^g,24),x=t[I+156>>2],C=g,h=g,Q=g+Q|0,g=(N=l)+G|0,g=(g=Q>>>0<h>>>0?g+1|0:g)+x|0,g=Q>>>0>(G=Q+t[I+152>>2]|0)>>>0?g+1|0:g,Q=p,p=g,T=uI((h=G)^i,Q^g,16),g=c+(Q=l)|0,i=N,N=g=(G=v+T|0)>>>0<v>>>0?g+1|0:g,x=uI(C^(v=G),i^g,63),c=l,G=y,g=y+o|0,g=(g=(i=b+U|0)>>>0<b>>>0?g+1|0:g)+(C=t[I+204>>2])|0,g=(y=i+t[I+200>>2]|0)>>>0<i>>>0?g+1|0:g,i=F,F=g,i=uI(y^K,i^g,32),g=S+(b=l)|0,g=(o=Y+i|0)>>>0<Y>>>0?g+1|0:g,Y=o,C=G,G=g,o=uI(o^U,C^g,24),C=g=l,K=o,g=g+F|0,g=(g=(o=y+o|0)>>>0<y>>>0?g+1|0:g)+(U=t[I+148>>2])|0,g=(y=o+t[I+144>>2]|0)>>>0<o>>>0?g+1|0:g,F=y,o=b,b=g,W=uI(y^i,o^g,16),g=G+(o=l)|0,g=(y=Y+W|0)>>>0<Y>>>0?g+1|0:g,Y=y,S=g,U=uI(K^y,C^g,63),y=l,G=s,K=E,g=s+_|0,s=i=E+gA|0,g=(g=i>>>0<E>>>0?g+1|0:g)+(C=t[I+196>>2])|0,C=uI((i=E=i+t[I+192>>2]|0)^z,(E=i>>>0<s>>>0?g+1|0:g)^w,32),g=R+(s=l)|0,G=uI(K^(_=k+C|0),(g=_>>>0<k>>>0?g+1|0:g)^G,24),k=g,z=t[I+220>>2],w=G,P=_,g=(_=l)+E|0,E=i=i+G|0,g=(g=i>>>0<G>>>0?g+1|0:g)+(K=z)|0,K=uI(G=(i=G=(R=t[I+216>>2])+i|0)^C,(C=E>>>0>i>>>0?g+1|0:g)^s,16),g=(g=k)+(k=l)|0,g=(E=K)>>>0>(G=P+E|0)>>>0?g+1|0:g,E=_,_=g,g=uI(w^G,E^g,63),Z=t[I+236>>2],P=g,s=g,w=g+eA|0,g=(E=l)+D|0,g=(g=s>>>0>w>>>0?g+1|0:g)+Z|0,T=uI((w=s=(D=w)+t[I+232>>2]|0)^T,(s=s>>>0<D>>>0?g+1|0:g)^Q,32),g=S+(D=l)|0,g=(Q=Y+T|0)>>>0<Y>>>0?g+1|0:g,Y=Q,S=E,E=g,g=uI(P^Q,S^g,24),P=T,Q=g,w=g+w|0,g=(S=l)+s|0,g=z+(Q>>>0>w>>>0?g+1|0:g)|0,T=s=w+R|0,z=uI(P^s,(w=D)^(D=s>>>0<R>>>0?g+1|0:g),16),g=E+(R=l)|0,g=(s=Y+z|0)>>>0<Y>>>0?g+1|0:g,Y=s,E=S,S=g,E=uI(Q^s,E^g,63),s=l,P=u,g=oA+(Q=m)|0,g=p+((u=(w=$)+u|0)>>>0<w>>>0?g+1|0:g)|0,o=uI((w=m=h+u|0)^W,(m=h>>>0>m>>>0?g+1|0:g)^o,32),g=_+(p=l)|0,g=(h=G+o|0)>>>0<G>>>0?g+1|0:g,G=h,_=g,u=Q=uI(P^h,g^Q,24),W=g=l,h=g,P=o,g=m+CA|0,g=(g=(Q=V)>>>0>(o=Q+w|0)>>>0?g+1|0:g)+h|0,eA=m=u+(Q=o)|0,gA=uI(P^m,(o=p)^(p=Q>>>0>m>>>0?g+1|0:g),16),g=_+(h=l)|0,w=uI((_=m=G+gA|0)^u,(Q=_>>>0<G>>>0?g+1|0:g)^W,63),G=l,m=c,g=c+B|0,g=b+((o=j)>>>0>(u=o+x|0)>>>0?g+1|0:g)|0,o=uI((b=c=F+u|0)^K,(c=c>>>0<F>>>0?g+1|0:g)^k,32),g=H+(k=l)|0,g=d>>>0>(F=d+o|0)>>>0?g+1|0:g,d=F,F=m,m=g,u=F=uI(d^x,F^g,24),x=g=l,H=g,g=c+e|0,g=(g=(F=L)>>>0>(b=F+b|0)>>>0?g+1|0:g)+H|0,H=c=u+b|0,W=uI(c^o,(F=k)^(k=c>>>0<b>>>0?g+1|0:g),16),g=m+(F=l)|0,g=(c=d+W|0)>>>0<d>>>0?g+1|0:g,d=c,b=g,u=uI(c^u,g^x,63),m=l,g=C+(c=y)|0,g=(g=(o=i+U|0)>>>0<i>>>0?g+1|0:g)+(x=t[I+156>>2])|0,i=M,M=g=(y=o+t[I+152>>2]|0)>>>0<o>>>0?g+1|0:g,C=uI(y^AA,i^g,32),g=N+(o=l)|0,g=(i=v+C|0)>>>0<v>>>0?g+1|0:g,v=i,N=c,c=g,i=uI(i^U,N^g,24),U=g=l,P=i,g=M+g|0,g=(g=(i=i+y|0)>>>0<y>>>0?g+1|0:g)+(x=t[I+204>>2])|0,K=y=i+t[I+200>>2]|0,i=uI(y^C,(M=y>>>0<i>>>0?g+1|0:g)^o,16),g=c+(y=l)|0,g=(o=v+i|0)>>>0<v>>>0?g+1|0:g,v=o,N=g,U=uI(P^o,U^g,63),c=l,x=i,g=D+r|0,g=(g=(i=rA)>>>0>(C=i+T|0)>>>0?g+1|0:g)+(o=G)|0,G=D=(i=C)+w|0,C=uI(x^D,(C=y)^(y=i>>>0>D>>>0?g+1|0:g),32),g=b+(D=l)|0,g=(i=d+C|0)>>>0<d>>>0?g+1|0:g,d=i,b=g,i=uI(i^w,g^o,24),o=g=l,w=i,g=y+g|0,g=(g=(i=i+G|0)>>>0<G>>>0?g+1|0:g)+(x=t[I+132>>2])|0,T=G=i+t[I+128>>2]|0,AA=uI(G^C,(y=D)^(D=i>>>0>G>>>0?g+1|0:g),16),g=b+(i=l)|0,b=g=(G=d+AA|0)>>>0<d>>>0?g+1|0:g,x=uI(w^(d=G),g^o,63),G=l,g=p+sA|0,g=(g=(o=X)>>>0>(C=o+eA|0)>>>0?g+1|0:g)+(y=m)|0,m=g=(o=C)>>>0>(p=o+u|0)>>>0?g+1|0:g,C=uI((o=p)^z,g^R,32),g=N+(R=l)|0,g=v>>>0>(p=v+C|0)>>>0?g+1|0:g,v=p,w=y,y=g,g=uI(p^u,w^g,24),u=t[I+164>>2],w=g,p=g,o=g+o|0,g=(N=l)+m|0,g=(g=o>>>0<p>>>0?g+1|0:g)+u|0,g=(m=o+t[I+160>>2]|0)>>>0<o>>>0?g+1|0:g,o=R,R=g,o=uI((p=m)^C,o^g,16),g=y+(C=l)|0,y=N,N=g=(m=v+o|0)>>>0<v>>>0?g+1|0:g,m=uI(w^(v=m),y^g,63),y=l,w=c,P=U,g=c+k|0,g=(g=(u=H+U|0)>>>0<H>>>0?g+1|0:g)+(z=t[I+196>>2])|0,U=uI((u=c=(k=u)+t[I+192>>2]|0)^gA,(c=c>>>0<k>>>0?g+1|0:g)^h,32),g=S+(k=l)|0,h=g=(H=Y+U|0)>>>0<Y>>>0?g+1|0:g,S=uI(P^H,g^w,24),z=g=l,Y=g,P=S,g=c+yA|0,g=(g=(w=(S=O)+u|0)>>>0<S>>>0?g+1|0:g)+Y|0,eA=c=P+(S=w)|0,gA=uI(c^U,(w=k)^(k=c>>>0<S>>>0?g+1|0:g),16),g=h+(Y=l)|0,g=(c=H+gA|0)>>>0<H>>>0?g+1|0:g,H=c,w=uI(P^c,g^z,63),c=l,h=s,S=g,P=E,g=s+M|0,g=(g=(u=E+K|0)>>>0<E>>>0?g+1|0:g)+(U=t[I+148>>2])|0,F=uI((u=E=(s=u)+t[I+144>>2]|0)^W,(E=E>>>0<s>>>0?g+1|0:g)^F,32),g=Q+(s=l)|0,g=_>>>0>(M=_+F|0)>>>0?g+1|0:g,_=M,M=g,U=Q=uI(P^_,g^h,24),W=g=l,h=g,K=F,g=E+QA|0,g=(g=(Q=(F=J)+u|0)>>>0<F>>>0?g+1|0:g)+h|0,h=E=U+Q|0,z=uI(K^E,(F=E>>>0<Q>>>0?g+1|0:g)^s,16),g=M+(s=l)|0,g=(E=_+z|0)>>>0<_>>>0?g+1|0:g,_=E,M=g,Q=uI(E^U,g^W,63),u=g=l,E=g,U=H,W=o,g=D+yA|0,D=o=(H=O)+T|0,g=(g=o>>>0<H>>>0?g+1|0:g)+E|0,C=uI(W^(o=H=o+Q|0),(E=D>>>0>o>>>0?g+1|0:g)^C,32),g=(H=l)+S|0,S=g=(D=U+C|0)>>>0<C>>>0?g+1|0:g,u=uI(Q^D,u^g,24),T=g=l,Q=g,U=C,C=(g=o)+(o=X)|0,g=E+sA|0,g=(g=o>>>0>C>>>0?g+1|0:g)+Q|0,W=E=(o=C)+u|0,K=uI(U^E,(Q=H)^(H=E>>>0<o>>>0?g+1|0:g),16),g=S+(Q=l)|0,g=(E=D+K|0)>>>0<D>>>0?g+1|0:g,D=E,S=g,U=uI(E^u,g^T,63),E=l,g=CA+(o=G)|0,g=R+((C=V)>>>0>(u=C+x|0)>>>0?g+1|0:g)|0,Y=uI((C=G=p+u|0)^gA,(G=C>>>0<p>>>0?g+1|0:g)^Y,32),g=M+(R=l)|0,M=g=_>>>0>(p=_+Y|0)>>>0?g+1|0:g,g=uI((_=p)^x,g^o,24),x=t[I+204>>2],u=g,T=Y,Y=g,o=g+C|0,g=(p=l)+G|0,g=(g=o>>>0<Y>>>0?g+1|0:g)+x|0,x=G=o+t[I+200>>2]|0,T=uI(T^G,(C=R)^(R=G>>>0<o>>>0?g+1|0:g),16),g=M+(Y=l)|0,M=G=_+T|0,C=uI(u^G,(o=p)^(p=_>>>0>G>>>0?g+1|0:g),63),G=l,_=y,P=m,g=y+k|0,g=(g=(o=m+eA|0)>>>0<m>>>0?g+1|0:g)+(u=t[I+220>>2])|0,o=uI((k=m=o+t[I+216>>2]|0)^z,(m=o>>>0>k>>>0?g+1|0:g)^s,32),g=b+(y=l)|0,b=_,_=g=(s=d+o|0)>>>0<d>>>0?g+1|0:g,g=uI(P^s,b^g,24),z=t[I+156>>2],u=g,b=k,k=g,b=b+g|0,g=(d=l)+m|0,g=(g=k>>>0>b>>>0?g+1|0:g)+z|0,z=m=(k=b)+t[I+152>>2]|0,eA=uI(m^o,(k=m>>>0<k>>>0?g+1|0:g)^y,16),g=_+(b=l)|0,y=uI(u^(_=m=s+eA|0),(o=d)^(d=s>>>0>_>>>0?g+1|0:g),63),s=l,m=c,g=c+F|0,g=(g=(o=h+w|0)>>>0<h>>>0?g+1|0:g)+(u=t[I+132>>2])|0,h=g=(c=o+t[I+128>>2]|0)>>>0<o>>>0?g+1|0:g,i=uI(c^AA,g^i,32),g=N+(F=l)|0,g=(o=v+i|0)>>>0<v>>>0?g+1|0:g,v=o,u=m,m=g,o=uI(o^w,u^g,24),w=g=l,P=o,g=h+g|0,g=(g=(o=c+o|0)>>>0<c>>>0?g+1|0:g)+(u=t[I+196>>2])|0,g=(c=o+t[I+192>>2]|0)>>>0<o>>>0?g+1|0:g,h=c,o=F,F=g,i=uI(c^i,o^g,16),g=m+(c=l)|0,g=(o=v+i|0)>>>0<v>>>0?g+1|0:g,v=o,N=g,u=uI(P^o,w^g,63),m=l,P=C,w=i,g=H+B|0,g=(g=(i=j)>>>0>(C=i+W|0)>>>0?g+1|0:g)+(o=G)|0,G=H=P+(i=C)|0,C=uI(w^H,(C=c)^(c=i>>>0>H>>>0?g+1|0:g),32),g=d+(H=l)|0,w=i=_+C|0,i=uI(P^i,(g=i>>>0<_>>>0?g+1|0:g)^o,24),d=g,gA=t[I+148>>2],W=i,g=c+(_=l)|0,g=(g=(i=i+G|0)>>>0<G>>>0?g+1|0:g)+(AA=gA)|0,Z=uI((AA=G=(o=t[I+144>>2])+i|0)^C,(G=i>>>0>G>>>0?g+1|0:g)^H,16),g=(g=d)+(d=l)|0,g=(c=(H=Z)+w|0)>>>0<H>>>0?g+1|0:g,H=c,i=g,c=uI(W^c,g^_,63),_=l,P=y,g=(C=s)+R|0,g=(g=(w=y+x|0)>>>0<y>>>0?g+1|0:g)+(W=t[I+236>>2])|0,Q=uI((w=y=(s=w)+t[I+232>>2]|0)^K,(y=s>>>0>y>>>0?g+1|0:g)^Q,32),g=N+(s=l)|0,N=g=v>>>0>(R=v+Q|0)>>>0?g+1|0:g,x=C=uI(P^(v=R),g^C,24),W=g=l,R=g,P=Q,g=y+oA|0,g=(g=(Q=$)>>>0>(C=Q+w|0)>>>0?g+1|0:g)+R|0,K=y=x+(Q=C)|0,Q=uI(P^y,(R=y>>>0<Q>>>0?g+1|0:g)^s,16),g=N+(C=l)|0,N=y=v+Q|0,x=uI(y^x,(w=y>>>0<v>>>0?g+1|0:g)^W,63),y=l,W=u,g=k+e|0,g=(g=(v=L)>>>0>(u=v+z|0)>>>0?g+1|0:g)+(s=m)|0,u=uI((m=v=W+(k=u)|0)^T,(v=v>>>0<k>>>0?g+1|0:g)^Y,32),g=S+(k=l)|0,S=uI(W^(Y=D+u|0),(g=D>>>0>Y>>>0?g+1|0:g)^s,24),D=g,z=t[I+164>>2],T=S,P=Y,g=v+(s=l)|0,v=S=m+S|0,g=(g=S>>>0<m>>>0?g+1|0:g)+(W=z)|0,S=k,k=g=(m=(Y=t[I+160>>2])+v|0)>>>0<v>>>0?g+1|0:g,tA=uI(m^u,S^g,16),g=(g=D)+(D=l)|0,S=g=(v=P+(S=tA)|0)>>>0<S>>>0?g+1|0:g,T=uI(T^v,g^s,63),s=l,u=E,P=U,g=E+QA|0,g=F+((U=J)>>>0>(W=P+U|0)>>>0?g+1|0:g)|0,b=uI((U=E=h+W|0)^eA,(E=E>>>0<h>>>0?g+1|0:g)^b,32),g=p+(h=l)|0,p=g=(F=M+b|0)>>>0<M>>>0?g+1|0:g,W=u=uI(P^(M=F),g^u,24),eA=g=l,F=g,P=b,g=E+r|0,g=(g=(u=(b=rA)+U|0)>>>0<b>>>0?g+1|0:g)+F|0,F=E=W+u|0,U=uI(P^E,(b=h)^(h=E>>>0<u>>>0?g+1|0:g),16),g=p+(b=l)|0,g=(E=M+U|0)>>>0<M>>>0?g+1|0:g,M=E,p=g,u=uI(E^W,g^eA,63),W=g=l,E=g,P=Q,g=G+QA|0,G=Q=J+AA|0,g=(g=Q>>>0<J>>>0?g+1|0:g)+E|0,C=uI(P^(Q=J=Q+u|0),(G=G>>>0>Q>>>0?g+1|0:g)^C,32),g=S+(E=l)|0,QA=J=v+C|0,S=g=v>>>0>J>>>0?g+1|0:g,P=J=uI(u^J,W^g,24),g=(v=l)+G|0,g=(g=(Q=Q+J|0)>>>0<J>>>0?g+1|0:g)+gA|0,W=uI((u=J=Q+o|0)^C,(Q=o>>>0>u>>>0?g+1|0:g)^E,16),g=(g=S)+(S=l)|0,QA=J=(G=W)+QA|0,E=uI(P^J,(G=G>>>0>J>>>0?g+1|0:g)^v,63),v=l,J=_,P=c,g=_+R|0,_=o=c+K|0,g=(g=o>>>0<c>>>0?g+1|0:g)+(C=t[I+196>>2])|0,C=uI((o=c=o+t[I+192>>2]|0)^tA,(c=o>>>0<_>>>0?g+1|0:g)^D,32),g=p+(_=l)|0,p=J,J=g=(D=M+C|0)>>>0<M>>>0?g+1|0:g,P=g=uI(P^D,p^g,24),M=g,p=g+o|0,g=(R=l)+c|0,g=z+(p>>>0<M>>>0?g+1|0:g)|0,z=c=p+Y|0,K=uI(c^C,(o=_)^(_=c>>>0<Y>>>0?g+1|0:g),16),g=J+(M=l)|0,g=(c=D+K|0)>>>0<D>>>0?g+1|0:g,D=c,o=R,R=g,o=uI(P^c,o^g,63),J=l,g=oA+(c=y)|0,g=k+((p=$)>>>0>(Y=p+x|0)>>>0?g+1|0:g)|0,p=y=m+Y|0,Y=uI(y^U,(m=y>>>0<m>>>0?g+1|0:g)^b,32),g=i+(y=l)|0,i=c,c=g=(k=H+Y|0)>>>0<H>>>0?g+1|0:g,i=b=uI(k^x,i^g,24),C=g=l,b=Y,Y=(g=p)+(p=O)|0,g=m+yA|0,g=(g=p>>>0>Y>>>0?g+1|0:g)+C|0,H=m=(p=Y)+i|0,U=uI(b^m,(p=m>>>0<p>>>0?g+1|0:g)^y,16),g=c+(Y=l)|0,c=uI((x=m=k+U|0)^i,(m=m>>>0<k>>>0?g+1|0:g)^C,63),y=l,k=s,g=s+e|0,g=h+((i=(b=L)+T|0)>>>0<b>>>0?g+1|0:g)|0,g=(s=F+i|0)>>>0<F>>>0?g+1|0:g,F=s,s=g,b=uI(F^Z,g^d,32),g=w+(d=l)|0,g=(h=N+b|0)>>>0<N>>>0?g+1|0:g,N=h,i=k,k=g,i=uI(h^T,i^g,24),w=g=l,h=g,C=b,b=(g=F)+(F=rA)|0,g=s+r|0,g=(g=F>>>0>b>>>0?g+1|0:g)+h|0,T=s=b+i|0,b=uI(C^s,(F=d)^(d=s>>>0<b>>>0?g+1|0:g),16),g=k+(h=l)|0,g=(s=N+b|0)>>>0<N>>>0?g+1|0:g,N=s,k=g,C=uI(s^i,g^w,63),s=l,i=o,w=b,g=Q+sA|0,g=(g=(o=(b=X)+u|0)>>>0<b>>>0?g+1|0:g)+(F=J)|0,b=Q=i+o|0,J=g=Q>>>0<o>>>0?g+1|0:g,o=uI(w^Q,g^h,32),g=(g=m)+(m=l)|0,Q=F,F=g=o>>>0>(h=o+x|0)>>>0?g+1|0:g,g=uI(i^h,Q^g,24),w=t[I+220>>2],i=g,x=o,Q=b,b=g,o=Q+g|0,g=(Q=l)+J|0,g=(g=o>>>0<b>>>0?g+1|0:g)+w|0,x=uI(x^(u=J=o+t[I+216>>2]|0),(b=o>>>0>u>>>0?g+1|0:g)^m,16),g=F+(o=l)|0,F=g=h>>>0>(J=h+x|0)>>>0?g+1|0:g,J=uI(i^(h=J),g^Q,63),m=l,P=c,g=(Q=y)+_|0,y=i=c+z|0,g=(g=i>>>0<c>>>0?g+1|0:g)+(w=t[I+204>>2])|0,S=uI((i=c=i+t[I+200>>2]|0)^W,(c=i>>>0<y>>>0?g+1|0:g)^S,32),g=k+(y=l)|0,N=g=(_=N+S|0)>>>0<N>>>0?g+1|0:g,w=Q=uI(P^_,g^Q,24),W=g=l,k=g,P=S,g=c+CA|0,g=(g=(Q=(S=V)+i|0)>>>0<S>>>0?g+1|0:g)+k|0,z=c=w+Q|0,eA=uI(P^c,(k=c>>>0<Q>>>0?g+1|0:g)^y,16),g=N+(S=l)|0,g=(c=_+eA|0)>>>0<_>>>0?g+1|0:g,_=c,N=g,c=uI(c^w,g^W,63),y=l,P=C,g=(Q=s)+p|0,g=(C=C+H|0)>>>0<H>>>0?g+1|0:g,H=C,g=g+(w=W=t[I+156>>2])|0,w=uI((C=s=(i=t[I+152>>2])+C|0)^K,(s=C>>>0<H>>>0?g+1|0:g)^M,32),g=(g=G)+(G=l)|0,M=g=(H=w+QA|0)>>>0<w>>>0?g+1|0:g,QA=Q=uI(P^H,g^Q,24),K=g=l,p=g,P=Q,g=s+B|0,g=(g=(Q=j)>>>0>(C=Q+C|0)>>>0?g+1|0:g)+p|0,QA=s=QA+(Q=C)|0,gA=uI(s^w,(p=s>>>0<Q>>>0?g+1|0:g)^G,16),g=M+(s=l)|0,g=(G=H+gA|0)>>>0<H>>>0?g+1|0:g,H=G,M=g,w=uI(P^G,g^K,63),G=l,P=E,g=(Q=v)+d|0,v=C=E+T|0,g=(g=C>>>0<E>>>0?g+1|0:g)+(K=t[I+236>>2])|0,Y=uI((C=E=C+t[I+232>>2]|0)^U,(v=C>>>0<v>>>0?g+1|0:g)^Y,32),g=R+(d=l)|0,U=E=D+Y|0,E=uI(P^E,(g=E>>>0<D>>>0?g+1|0:g)^Q,24),R=g,K=t[I+132>>2],T=E,P=U,U=Y,g=(D=l)+v|0,g=(g=(Q=E+C|0)>>>0<E>>>0?g+1|0:g)+K|0,g=(E=(Y=t[I+128>>2])+Q|0)>>>0<Q>>>0?g+1|0:g,v=E,Q=d,d=g,U=uI(U^E,Q^g,16),g=(g=R)+(R=l)|0,g=(E=P+(Q=U)|0)>>>0<Q>>>0?g+1|0:g,Q=E,E=D,D=g,T=g=uI(T^Q,E^g,63),C=g,u=g+u|0,g=(E=l)+b|0,g=K+(C>>>0>u>>>0?g+1|0:g)|0,u=uI((C=b=u+Y|0)^eA,(Y=Y>>>0>C>>>0?g+1|0:g)^S,32),g=M+(S=l)|0,g=H>>>0>(b=H+u|0)>>>0?g+1|0:g,H=b,b=E,E=g,T=b=uI(T^H,b^g,24),K=g=l,M=g,P=b,g=Y+e|0,g=(g=(C=(b=L)+C|0)>>>0<b>>>0?g+1|0:g)+M|0,T=Y=T+C|0,eA=uI(Y^u,(M=Y>>>0<C>>>0?g+1|0:g)^S,16),g=E+(Y=l)|0,g=H>>>0>(S=H+eA|0)>>>0?g+1|0:g,H=S,S=g,u=uI(P^H,g^K,63),E=l,b=m,P=J,g=m+k|0,m=C=J+z|0,g=(g=C>>>0<J>>>0?g+1|0:g)+(K=t[I+148>>2])|0,z=uI((C=J=C+t[I+144>>2]|0)^gA,(J=m>>>0>C>>>0?g+1|0:g)^s,32),g=D+(m=l)|0,k=g=(s=Q+z|0)>>>0<Q>>>0?g+1|0:g,K=g=uI(P^s,g^b,24),Q=g,b=g+C|0,g=(D=l)+J|0,g=W+(Q>>>0>b>>>0?g+1|0:g)|0,W=J=i+b|0,z=uI(J^z,(Q=i>>>0>J>>>0?g+1|0:g)^m,16),g=k+(b=l)|0,m=uI(K^(k=J=s+z|0),(i=D)^(D=s>>>0>k>>>0?g+1|0:g),63),s=l,J=y,K=c,g=y+p|0,y=i=c+QA|0,g=(g=i>>>0<c>>>0?g+1|0:g)+(C=t[I+164>>2])|0,C=uI((i=c=i+t[I+160>>2]|0)^U,(c=i>>>0<y>>>0?g+1|0:g)^R,32),g=F+(y=l)|0,F=J,J=g=h>>>0>(R=h+C|0)>>>0?g+1|0:g,h=uI(K^R,F^g,24),U=g=l,p=g,P=h,g=c+r|0,g=(g=(h=rA)>>>0>(F=h+i|0)>>>0?g+1|0:g)+p|0,QA=c=P+(h=F)|0,K=uI(c^C,(p=c>>>0<h>>>0?g+1|0:g)^y,16),g=J+(h=l)|0,g=(c=R+K|0)>>>0<R>>>0?g+1|0:g,R=c,F=g,c=uI(P^c,g^U,63),y=l,J=G,g=G+yA|0,g=d+((i=O)>>>0>(C=i+w|0)>>>0?g+1|0:g)|0,o=uI((i=G=v+C|0)^x,(G=i>>>0<v>>>0?g+1|0:g)^o,32),g=N+(v=l)|0,C=J,J=g=_>>>0>(d=_+o|0)>>>0?g+1|0:g,C=d=uI((_=d)^w,C^g,24),w=g=l,U=o,g=G+oA|0,g=(g=(o=(d=$)+i|0)>>>0<d>>>0?g+1|0:g)+w|0,N=G=C+o|0,o=uI(U^G,(i=v)^(v=G>>>0<o>>>0?g+1|0:g),16),g=J+(d=l)|0,w=uI((i=G=_+o|0)^C,(G=_>>>0>i>>>0?g+1|0:g)^w,63),J=l,_=s,U=m,x=o,g=s+M|0,g=(g=(o=m+T|0)>>>0<m>>>0?g+1|0:g)+(C=t[I+196>>2])|0,o=uI(x^(M=m=o+t[I+192>>2]|0),(m=o>>>0>m>>>0?g+1|0:g)^d,32),g=F+(s=l)|0,C=_,_=g=(d=R+o|0)>>>0<R>>>0?g+1|0:g,g=uI(U^d,C^g,24),U=t[I+204>>2],C=g,F=M,M=g,F=F+g|0,g=(R=l)+m|0,g=(g=F>>>0<M>>>0?g+1|0:g)+U|0,x=m=F+t[I+200>>2]|0,T=uI(m^o,(M=m>>>0<F>>>0?g+1|0:g)^s,16),g=_+(F=l)|0,m=uI(C^(_=m=d+T|0),(d=_>>>0<d>>>0?g+1|0:g)^R,63),s=l,R=y,U=c,P=i,g=y+Q|0,g=(g=(i=c+W|0)>>>0<c>>>0?g+1|0:g)+(C=gA=t[I+212>>2])|0,i=uI((Q=c=(o=t[I+208>>2])+i|0)^eA,(c=c>>>0<i>>>0?g+1|0:g)^Y,32),g=(g=G)+(G=l)|0,C=R,R=g=(y=P+i|0)>>>0<i>>>0?g+1|0:g,g=uI(U^y,C^g,24),U=t[I+220>>2],P=g,C=i,i=Q,Q=g,i=i+g|0,g=(Y=l)+c|0,g=(g=i>>>0<Q>>>0?g+1|0:g)+U|0,W=c=i+t[I+216>>2]|0,i=uI(C^c,(Q=c>>>0<i>>>0?g+1|0:g)^G,16),g=R+(C=l)|0,R=G=y+i|0,G=uI(P^G,(c=Y)^(Y=y>>>0>G>>>0?g+1|0:g),63),c=l,P=w,g=p+B|0,g=(g=(w=j)>>>0>(U=w+QA|0)>>>0?g+1|0:g)+(y=J)|0,U=uI((J=p=P+(w=U)|0)^z,(p=p>>>0<w>>>0?g+1|0:g)^b,32),g=S+(b=l)|0,g=H>>>0>(w=H+U|0)>>>0?g+1|0:g,H=w,w=y,y=g,w=uI(P^H,w^g,24),S=g=l,P=w,g=p+g|0,g=(g=(w=w+J|0)>>>0<J>>>0?g+1|0:g)+(z=t[I+236>>2])|0,QA=J=(p=w)+t[I+232>>2]|0,z=uI(J^U,(p=p>>>0>J>>>0?g+1|0:g)^b,16),g=y+(b=l)|0,U=uI(P^(y=J=H+z|0),(H=H>>>0>y>>>0?g+1|0:g)^S,63),J=l,S=E,P=u,g=E+CA|0,g=v+((u=(w=V)+u|0)>>>0<w>>>0?g+1|0:g)|0,h=uI((w=E=N+u|0)^K,(E=E>>>0<N>>>0?g+1|0:g)^h,32),g=D+(v=l)|0,k=g=k>>>0>(N=k+h|0)>>>0?g+1|0:g,u=S=uI(P^N,g^S,24),K=g=l,D=g,P=h,g=E+sA|0,g=(g=(h=X)>>>0>(S=h+w|0)>>>0?g+1|0:g)+D|0,D=E=u+(h=S)|0,w=uI(P^E,(w=v)^(v=E>>>0<h>>>0?g+1|0:g),16),g=k+(h=l)|0,g=(E=N+w|0)>>>0<N>>>0?g+1|0:g,N=E,k=g,S=uI(E^u,g^K,63),u=g=l,E=g,K=i,g=M+CA|0,M=i=x+V|0,g=(g=i>>>0<V>>>0?g+1|0:g)+E|0,C=uI(K^(i=V=i+S|0),(V=M>>>0>i>>>0?g+1|0:g)^C,32),g=H+(E=l)|0,H=g=y>>>0>(M=y+C|0)>>>0?g+1|0:g,x=g=uI(S^(y=M),u^g,24),S=g,i=g+i|0,g=(M=l)+V|0,g=gA+(i>>>0<S>>>0?g+1|0:g)|0,u=uI((u=C)^(C=V=i+o|0),(S=o>>>0>C>>>0?g+1|0:g)^E,16),g=H+(o=l)|0,y=uI(x^(H=V=y+u|0),(i=M)^(M=y>>>0>H>>>0?g+1|0:g),63),E=l,V=s,K=m,g=s+Q|0,s=i=m+W|0,g=(g=i>>>0<m>>>0?g+1|0:g)+(x=t[I+164>>2])|0,b=uI((i=m=i+t[I+160>>2]|0)^z,(m=s>>>0>i>>>0?g+1|0:g)^b,32),g=k+(s=l)|0,g=(Q=N+b|0)>>>0<N>>>0?g+1|0:g,N=Q,k=V,V=g,g=uI(K^Q,k^g,24),W=t[I+196>>2],K=g,x=b,Q=g,b=g+i|0,g=(k=l)+m|0,g=(g=Q>>>0>b>>>0?g+1|0:g)+W|0,x=uI(x^(i=m=(Q=b)+t[I+192>>2]|0),(b=s)^(s=Q>>>0>i>>>0?g+1|0:g),16),g=V+(W=l)|0,g=(m=N+x|0)>>>0<N>>>0?g+1|0:g,N=m,Q=k,k=g,Q=uI(K^m,Q^g,63),V=l,m=c,K=G,g=c+p|0,g=(g=(b=G+QA|0)>>>0<G>>>0?g+1|0:g)+(CA=t[I+204>>2])|0,h=uI((b=G=(c=b)+t[I+200>>2]|0)^w,(G=c>>>0>G>>>0?g+1|0:g)^h,32),g=d+(c=l)|0,g=_>>>0>(p=_+h|0)>>>0?g+1|0:g,_=p,p=m,m=g,w=p=uI(K^_,p^g,24),CA=g=l,d=g,K=p,g=G+sA|0,g=(g=(p=b+X|0)>>>0<X>>>0?g+1|0:g)+d|0,w=uI((b=X=w+p|0)^h,(w=c)^(c=p>>>0>b>>>0?g+1|0:g),16),g=m+(d=l)|0,p=g=_>>>0>(X=_+w|0)>>>0?g+1|0:g,X=uI(K^(_=X),g^CA,63),G=l,g=v+(m=J)|0,v=h=D+U|0,g=(g=h>>>0<D>>>0?g+1|0:g)+(CA=t[I+236>>2])|0,F=uI((h=J=h+t[I+232>>2]|0)^T,(J=v>>>0>h>>>0?g+1|0:g)^F,32),g=Y+(v=l)|0,Y=m,m=g=(D=R+F|0)>>>0<R>>>0?g+1|0:g,Y=uI(D^U,Y^g,24),T=g=l,R=g,g=J+yA|0,g=(g=(h=h+O|0)>>>0<O>>>0?g+1|0:g)+R|0,U=uI((R=O=h+Y|0)^F,(U=v)^(v=h>>>0>R>>>0?g+1|0:g),16),g=m+(yA=l)|0,h=g=D>>>0>(O=D+U|0)>>>0?g+1|0:g,J=uI(Y^(D=O),g^T,63),m=l,g=S+e|0,g=(g=(Y=C+L|0)>>>0<L>>>0?g+1|0:g)+(F=V)|0,g=Y>>>0>(L=Y+Q|0)>>>0?g+1|0:g,Y=L,L=g,g=B+g|0,j=g=(F=j+Y|0)>>>0<j>>>0?g+1|0:g,C=F,F=uI(Y^U,L^yA,32),g=p+(Y=l)|0,S=uI((p=L=_+F|0)^Q,(L=_>>>0>p>>>0?g+1|0:g)^V,24),g=(Q=l)+j|0,g=(_=S)>>>0>(V=C+_|0)>>>0?g+1|0:g,_=V,t[I>>2]=_,t[I+4>>2]=g,O=g,g=uI(_^F,g^Y,16),F=V=l,t[I+120>>2]=g,t[I+124>>2]=F,j=g,p=g+p|0,g=F+L|0,t[I+80>>2]=p,g=p>>>0<j>>>0?g+1|0:g,t[I+84>>2]=g,fA=I,pA=uI(S^p,g^Q,63),t[fA+40>>2]=pA,t[I+44>>2]=l,L=G,Q=X,g=s+G|0,g=(g=(j=i+X|0)>>>0<X>>>0?g+1|0:g)+(p=t[I+132>>2])|0,j=g=(X=j+t[I+128>>2]|0)>>>0<j>>>0?g+1|0:g,s=uI(X^u,g^o,32),g=h+(p=l)|0,i=L,L=g=D>>>0>(G=D+s|0)>>>0?g+1|0:g,h=uI(Q^(D=G),i^g,24),g=j+(F=l)|0,g=(G=h+X|0)>>>0<X>>>0?g+1|0:g,X=(j=t[I+144>>2])+G|0,g=t[I+148>>2]+g|0,g=X>>>0<j>>>0?g+1|0:g,t[I+8>>2]=X,t[I+12>>2]=g,g=uI(s^X,g^p,16),G=V=l,t[I+96>>2]=g,t[I+100>>2]=G,X=g,j=g+D|0,g=G+L|0,L=j,t[I+88>>2]=L,g=X>>>0>L>>>0?g+1|0:g,t[I+92>>2]=g,fA=I,pA=uI(h^L,g^F,63),t[fA+48>>2]=pA,t[I+52>>2]=l,i=$,g=c+m|0,g=(g=(X=b+J|0)>>>0<J>>>0?g+1|0:g)+(j=t[I+220>>2])|0,g=(V=X+t[I+216>>2]|0)>>>0<X>>>0?g+1|0:g,$=V,j=V,X=i+V|0,V=g,g=g+oA|0,g=X>>>0<j>>>0?g+1|0:g,j=X,X=g,i=j,Q=J,j=uI(x^$,V^W,32),g=M+(J=l)|0,m=uI(Q^(G=V=H+j|0),(V=H>>>0>G>>>0?g+1|0:g)^m,24),g=(s=l)+X|0,X=$=i+(c=m)|0,t[I+16>>2]=X,g=c>>>0>X>>>0?g+1|0:g,t[I+20>>2]=g,g=uI(X^j,g^J,16),L=l,t[I+104>>2]=g,t[I+108>>2]=L,X=g,$=g+G|0,g=V+L|0,V=$,t[I+64>>2]=V,g=X>>>0>V>>>0?g+1|0:g,t[I+68>>2]=g,fA=I,pA=uI(c^V,g^s,63),t[fA+56>>2]=pA,t[I+60>>2]=l,g=E+r|0,g=(g=(X=y+rA|0)>>>0<y>>>0?g+1|0:g)+v|0,rA=g=R>>>0>(X=R+X|0)>>>0?g+1|0:g,J=uI(X^w,g^d,32),g=k+(G=l)|0,L=g=N>>>0>($=N+J|0)>>>0?g+1|0:g,m=uI($^y,E^g,24),g=rA+(c=l)|0,g=X>>>0>(j=m+X|0)>>>0?g+1|0:g,X=(rA=t[I+152>>2])+j|0,g=t[I+156>>2]+g|0,g=X>>>0<rA>>>0?g+1|0:g,t[I+24>>2]=X,t[I+28>>2]=g,g=uI(J^X,g^G,16),t[I+112>>2]=g,rA=l,t[I+116>>2]=rA,X=g+$|0,g=L+rA|0,L=X,t[I+72>>2]=L,g=L>>>0<$>>>0?g+1|0:g,t[I+76>>2]=g,fA=I,pA=uI(m^L,g^c,63),t[fA+32>>2]=pA,t[I+36>>2]=l,g=t[I+68>>2]^(n[A+4|0]|n[A+5|0]<<8|n[A+6|0]<<16|n[A+7|0]<<24)^O,L=t[I+64>>2]^(n[0|A]|n[A+1|0]<<8|n[A+2|0]<<16|n[A+3|0]<<24)^_,a[0|A]=L,a[A+1|0]=L>>>8,a[A+2|0]=L>>>16,a[A+3|0]=L>>>24,a[A+4|0]=g,a[A+5|0]=g>>>8,a[A+6|0]=g>>>16,a[A+7|0]=g>>>24,O=1;g=(L=O<<3)+A|0,V=L=I+L|0,X=t[L>>2]^(n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24),rA=t[(L=L- -64|0)>>2],L=t[L+4>>2]^t[V+4>>2]^(n[g+4|0]|n[g+5|0]<<8|n[g+6|0]<<16|n[g+7|0]<<24),V=X^rA,a[0|g]=V,a[g+1|0]=V>>>8,a[g+2|0]=V>>>16,a[g+3|0]=V>>>24,a[g+4|0]=L,a[g+5|0]=L>>>8,a[g+6|0]=L>>>16,a[g+7|0]=L>>>24,8!=(0|(O=O+1|0)););f=I+256|0}function D(A,g,I,e){var r=0,a=0,B=0,n=0,i=0,o=0,Q=0,C=0,c=0,E=0,s=0,y=0,_=0,h=0,f=0,p=0,u=0,w=0,D=0,v=0,d=0,b=0,k=0,F=0,G=0,m=0,Y=0,H=0,S=0,U=0,M=0,N=0,x=0,P=0,R=0,J=0,K=0;for(function(A,g){for(var I=0,e=0,r=0,a=0,B=0;a=r=(e=I<<3)+A|0,B=NA(g+e|0),t[a>>2]=B,t[r+4>>2]=l,16!=(0|(I=I+1|0)););}(I,g),g=q(e,A,64),Q=t[I>>2],E=t[I+4>>2],e=0;;){if(r=uI(w=t[(B=g)+32>>2],c=t[B+36>>2],14),_=l,r=uI(w,c,18)^r,p=l^_,a=Q,Q=uI(w,c,41)^r,r=(l^p)+E|0,r=Q>>>0>(_=a+Q|0)>>>0?r+1|0:r,Q=_,y=t[B+48>>2],Q=(p=t[(E=34784+(K=e<<3)|0)>>2])+Q|0,r=t[E+4>>2]+r|0,r=Q>>>0<p>>>0?r+1|0:r,Q=(E=y^((d=t[B+40>>2])^y)&w)+Q|0,r=(((a=t[B+52>>2])^(u=t[B+44>>2]))&c^a)+r|0,r=Q>>>0<E>>>0?r+1|0:r,_=(i=Q)+(Q=t[B+56>>2])|0,r=t[B+60>>2]+r|0,r=Q>>>0>_>>>0?r+1|0:r,E=_+(p=t[B+24>>2])|0,Q=r,r=r+t[B+28>>2]|0,r=E>>>0<p>>>0?r+1|0:r,p=E,s=r,t[B+24>>2]=E,t[B+28>>2]=r,r=uI(D=t[B>>2],E=t[B+4>>2],28),f=l,r=uI(D,E,34)^r,n=l^f,f=_+(uI(D,E,39)^r)|0,r=Q+(l^n)|0,r=_>>>0>f>>>0?r+1|0:r,_=(i=D&((n=t[B+16>>2])|(o=t[B+8>>2]))|n&o)+f|0,r=(E&((f=t[B+20>>2])|(Q=t[B+12>>2]))|Q&f)+r|0,_=r=i>>>0>(C=_)>>>0?r+1|0:r,t[B+56>>2]=C,t[B+60>>2]=r,r=uI(p,s,14),i=l,N=uI(p,s,18)^r,i^=l,h=n,r=((c^u)&s^u)+a|0,r=(n=(w^d)&p^d)>>>0>(y=n+y|0)>>>0?r+1|0:r,a=uI(p,s,41)^N,r=(l^i)+r|0,r=a>>>0>(y=a+y|0)>>>0?r+1|0:r,y=(i=t[(n=N=(a=(1|e)<<3)+I|0)>>2])+y|0,r=t[n+4>>2]+r|0,r=i>>>0>y>>>0?r+1|0:r,y=(n=t[(a=a+34784|0)>>2])+y|0,r=t[a+4>>2]+r|0,n=r=n>>>0>y>>>0?r+1|0:r,r=r+f|0,f=y=h+(a=i=y)|0,a=r=a>>>0>y>>>0?r+1|0:r,t[B+16>>2]=y,t[B+20>>2]=r,y=B,r=uI(C,_,28),B=l,v=uI(C,_,34)^r,k=l^B,B=(r=i)+(i=(o|D)&C|o&D)|0,r=((Q|E)&_|Q&E)+n|0,r=B>>>0<i>>>0?r+1|0:r,n=uI(C,_,39)^v,r=(l^k)+r|0,v=B=n+B|0,B=r=B>>>0<n>>>0?r+1|0:r,t[y+48>>2]=v,t[y+52>>2]=r,i=y,r=uI(f,a,14),y=l,n=uI(f,a,18)^r,k=l^y,h=o,r=((c^s)&a^c)+u|0,r=(o=(p^w)&f^w)>>>0>(y=o+d|0)>>>0?r+1|0:r,n=uI(f,a,41)^n,r=(l^k)+r|0,r=n>>>0>(y=n+y|0)>>>0?r+1|0:r,y=(d=t[(o=H=(n=(2|e)<<3)+I|0)>>2])+y|0,r=t[o+4>>2]+r|0,r=y>>>0<d>>>0?r+1|0:r,y=(o=t[(n=n+34784|0)>>2])+y|0,r=t[n+4>>2]+r|0,r=o>>>0>y>>>0?r+1|0:r,y=h+(n=o=y)|0,h=Q,Q=r,r=h+r|0,n=r=n>>>0>y>>>0?r+1|0:r,t[i+8>>2]=y,t[i+12>>2]=r,r=uI(v,B,28),d=l,u=uI(v,B,34)^r,d^=l,r=((E|_)&B|E&_)+Q|0,r=(o=(k=(C|D)&v|C&D)+o|0)>>>0<k>>>0?r+1|0:r,Q=o,o=uI(v,B,39)^u,r=(l^d)+r|0,d=Q=Q+o|0,Q=r=Q>>>0<o>>>0?r+1|0:r,t[i+40>>2]=d,t[i+44>>2]=r,o=i,r=uI(y,n,14),i=l,u=uI(y,n,18)^r,k=l^i,h=D,r=(s^(a^s)&n)+c|0,r=(i=(D=p^(f^p)&y)+w|0)>>>0<D>>>0?r+1|0:r,c=i,i=uI(y,n,41)^u,r=(l^k)+r|0,r=i>>>0>(c=c+i|0)>>>0?r+1|0:r,c=(u=t[(w=D=(i=(3|e)<<3)+I|0)>>2])+c|0,r=t[w+4>>2]+r|0,r=c>>>0<u>>>0?r+1|0:r,c=(w=t[(i=i+34784|0)>>2])+c|0,r=t[i+4>>2]+r|0,r=c>>>0<w>>>0?r+1|0:r,w=c,c=h+(i=c)|0,h=E,E=r,r=h+r|0,i=r=i>>>0>c>>>0?r+1|0:r,t[o>>2]=c,t[o+4>>2]=r,r=uI(d,Q,28),u=l,k=uI(d,Q,34)^r,u^=l,r=((B|_)&Q|B&_)+E|0,r=(w=(Y=(C|v)&d|C&v)+w|0)>>>0<Y>>>0?r+1|0:r,E=w,w=uI(d,Q,39)^k,r=(l^u)+r|0,r=(E=E+w|0)>>>0<w>>>0?r+1|0:r,w=E,E=r,t[o+32>>2]=w,t[o+36>>2]=r,r=uI(c,i,14),u=l,k=uI(c,i,18)^r,u^=l,h=C,r=s+(a^(a^n)&i)|0,r=(C=p+(f^(y^f)&c)|0)>>>0<p>>>0?r+1|0:r,s=uI(c,i,41)^k,r=(l^u)+r|0,r=s>>>0>(p=s+C|0)>>>0?r+1|0:r,p=(u=t[(C=S=(s=(4|e)<<3)+I|0)>>2])+p|0,r=t[C+4>>2]+r|0,r=p>>>0<u>>>0?r+1|0:r,p=(C=t[(s=s+34784|0)>>2])+p|0,r=t[s+4>>2]+r|0,s=_,_=r=C>>>0>p>>>0?r+1|0:r,r=s+r|0,s=r=(C=p)>>>0>(p=h+C|0)>>>0?r+1|0:r,t[o+56>>2]=p,t[o+60>>2]=r,r=uI(w,E,28),u=l,k=uI(w,E,34)^r,u^=l,r=((B|Q)&E|B&Q)+_|0,r=(C=(Y=(d|v)&w|d&v)+C|0)>>>0<Y>>>0?r+1|0:r,_=C,C=uI(w,E,39)^k,r=(l^u)+r|0,u=_=_+C|0,_=r=C>>>0>_>>>0?r+1|0:r,t[o+24>>2]=u,t[o+28>>2]=r,r=uI(p,s,14),C=l,k=uI(p,s,18)^r,Y=l^C,h=v,r=a+(n^(n^i)&s)|0,r=(C=f+(y^(c^y)&p)|0)>>>0<f>>>0?r+1|0:r,a=uI(p,s,41)^k,r=(l^Y)+r|0,r=a>>>0>(f=a+C|0)>>>0?r+1|0:r,f=(k=t[(C=v=(a=(5|e)<<3)+I|0)>>2])+f|0,r=t[C+4>>2]+r|0,r=f>>>0<k>>>0?r+1|0:r,f=(C=t[(a=a+34784|0)>>2])+f|0,r=t[a+4>>2]+r|0,r=C>>>0>f>>>0?r+1|0:r,f=h+(a=C=f)|0,h=B,B=r,r=h+r|0,a=r=a>>>0>f>>>0?r+1|0:r,t[o+48>>2]=f,t[o+52>>2]=r,r=uI(u,_,28),k=l,Y=uI(u,_,34)^r,k^=l,r=((Q|E)&_|Q&E)+B|0,r=(C=(b=(w|d)&u|w&d)+C|0)>>>0<b>>>0?r+1|0:r,B=C,C=uI(u,_,39)^Y,r=(l^k)+r|0,Y=B=B+C|0,B=r=B>>>0<C>>>0?r+1|0:r,t[o+16>>2]=Y,t[o+20>>2]=r,r=uI(f,a,14),C=l,k=uI(f,a,18)^r,b=l^C,h=d,r=n+(i^(i^s)&a)|0,r=(C=y+(c^(c^p)&f)|0)>>>0<y>>>0?r+1|0:r,n=uI(f,a,41)^k,r=(l^b)+r|0,r=n>>>0>(y=n+C|0)>>>0?r+1|0:r,y=(d=t[(C=P=(n=(6|e)<<3)+I|0)>>2])+y|0,r=t[C+4>>2]+r|0,r=y>>>0<d>>>0?r+1|0:r,y=(C=t[(n=n+34784|0)>>2])+y|0,r=t[n+4>>2]+r|0,r=C>>>0>y>>>0?r+1|0:r,y=h+(n=C=y)|0,h=Q,Q=r,r=h+r|0,n=r=n>>>0>y>>>0?r+1|0:r,t[o+40>>2]=y,t[o+44>>2]=r,r=uI(Y,B,28),d=l,k=uI(Y,B,34)^r,d^=l,r=((E|_)&B|E&_)+Q|0,r=(C=(b=(u|w)&Y|u&w)+C|0)>>>0<b>>>0?r+1|0:r,Q=C,C=uI(Y,B,39)^k,r=(l^d)+r|0,b=Q=Q+C|0,Q=r=Q>>>0<C>>>0?r+1|0:r,t[o+8>>2]=b,t[o+12>>2]=r,r=uI(y,n,14),C=l,d=uI(y,n,18)^r,k=l^C,h=w,r=i+(s^(a^s)&n)|0,r=(C=c+(p^(f^p)&y)|0)>>>0<c>>>0?r+1|0:r,i=uI(y,n,41)^d,r=(l^k)+r|0,r=i>>>0>(c=i+C|0)>>>0?r+1|0:r,c=(w=t[(C=d=(i=(7|e)<<3)+I|0)>>2])+c|0,r=t[C+4>>2]+r|0,r=c>>>0<w>>>0?r+1|0:r,c=(C=t[(i=i+34784|0)>>2])+c|0,r=t[i+4>>2]+r|0,r=c>>>0<C>>>0?r+1|0:r,c=h+(i=C=c)|0,h=E,E=r,r=h+r|0,i=r=i>>>0>c>>>0?r+1|0:r,t[o+32>>2]=c,t[o+36>>2]=r,r=uI(b,Q,28),w=l,k=uI(b,Q,34)^r,w^=l,r=((B|_)&Q|B&_)+E|0,r=(C=(h=(u|Y)&b|u&Y)+C|0)>>>0<h>>>0?r+1|0:r,E=C,C=uI(b,Q,39)^k,r=(l^w)+r|0,h=E=E+C|0,E=r=C>>>0>E>>>0?r+1|0:r,t[o>>2]=h,t[o+4>>2]=r,C=o,r=uI(c,i,14),o=l,w=uI(c,i,18)^r,k=l^o,r=s+(a^(a^n)&i)|0,r=(o=p+(f^(y^f)&c)|0)>>>0<p>>>0?r+1|0:r,s=uI(c,i,41)^w,r=(l^k)+r|0,r=s>>>0>(p=s+o|0)>>>0?r+1|0:r,p=(w=t[(o=k=(s=(8|e)<<3)+I|0)>>2])+p|0,r=t[o+4>>2]+r|0,r=p>>>0<w>>>0?r+1|0:r,p=(o=t[(s=s+34784|0)>>2])+p|0,r=t[s+4>>2]+r|0,r=o>>>0>p>>>0?r+1|0:r,w=p,o=_,_=r,r=o+r|0,o=r=(s=p)>>>0>(p=s+u|0)>>>0?r+1|0:r,t[C+24>>2]=p,t[C+28>>2]=r,s=C,r=uI(h,E,28),C=l,u=uI(h,E,34)^r,F=l^C,C=(r=w)+(w=(b|Y)&h|b&Y)|0,r=((B|Q)&E|B&Q)+_|0,r=C>>>0<w>>>0?r+1|0:r,_=C,C=uI(h,E,39)^u,r=(l^F)+r|0,F=_=_+C|0,_=r=C>>>0>_>>>0?r+1|0:r,t[s+56>>2]=F,t[s+60>>2]=r,r=uI(p,o,14),C=l,w=uI(p,o,18)^r,u=l^C,r=a+(n^(n^i)&o)|0,r=(C=f+(y^(c^y)&p)|0)>>>0<f>>>0?r+1|0:r,a=uI(p,o,41)^w,r=(l^u)+r|0,r=a>>>0>(f=a+C|0)>>>0?r+1|0:r,f=(u=t[(C=w=(a=(9|e)<<3)+I|0)>>2])+f|0,r=t[C+4>>2]+r|0,r=f>>>0<u>>>0?r+1|0:r,f=(C=t[(a=a+34784|0)>>2])+f|0,r=t[a+4>>2]+r|0,r=C>>>0>f>>>0?r+1|0:r,C=B,B=r,r=C+r|0,C=r=(a=f)>>>0>(f=a+Y|0)>>>0?r+1|0:r,t[s+16>>2]=f,t[s+20>>2]=r,r=uI(F,_,28),u=l,Y=uI(F,_,34)^r,u^=l,r=((Q|E)&_|Q&E)+B|0,r=(a=(G=(h|b)&F|h&b)+a|0)>>>0<G>>>0?r+1|0:r,B=a,a=uI(F,_,39)^Y,r=(l^u)+r|0,G=B=B+a|0,B=r=B>>>0<a>>>0?r+1|0:r,t[s+48>>2]=G,t[s+52>>2]=r,r=uI(f,C,14),a=l,u=uI(f,C,18)^r,Y=l^a,r=n+(i^(o^i)&C)|0,r=(a=y+(c^(c^p)&f)|0)>>>0<y>>>0?r+1|0:r,n=a,a=uI(f,C,41)^u,r=(l^Y)+r|0,r=a>>>0>(y=n+a|0)>>>0?r+1|0:r,y=(u=t[(n=Y=(a=(10|e)<<3)+I|0)>>2])+y|0,r=t[n+4>>2]+r|0,r=y>>>0<u>>>0?r+1|0:r,y=(n=t[(a=a+34784|0)>>2])+y|0,r=t[a+4>>2]+r|0,r=n>>>0>y>>>0?r+1|0:r,u=y,n=Q,Q=r,r=n+r|0,n=r=(a=y)>>>0>(y=a+b|0)>>>0?r+1|0:r,t[s+8>>2]=y,t[s+12>>2]=r,a=s,r=uI(G,B,28),s=l,b=uI(G,B,34)^r,U=l^s,s=(r=u)+(u=(h|F)&G|h&F)|0,r=((E|_)&B|E&_)+Q|0,r=s>>>0<u>>>0?r+1|0:r,Q=s,s=uI(G,B,39)^b,r=(l^U)+r|0,s=r=(Q=Q+s|0)>>>0<s>>>0?r+1|0:r,t[a+40>>2]=Q,t[a+44>>2]=r,r=uI(y,n,14),u=l,b=uI(y,n,18)^r,U=l^u,m=h,r=i+(o^(o^C)&n)|0,r=(u=c+(p^(f^p)&y)|0)>>>0<c>>>0?r+1|0:r,i=uI(y,n,41)^b,r=(l^U)+r|0,r=i>>>0>(c=i+u|0)>>>0?r+1|0:r,c=(h=t[(u=(i=(11|e)<<3)+I|0)>>2])+c|0,r=t[u+4>>2]+r|0,r=c>>>0<h>>>0?r+1|0:r,c=(b=t[(i=i+34784|0)>>2])+c|0,r=t[i+4>>2]+r|0,r=c>>>0<b>>>0?r+1|0:r,h=c,b=E,E=r,r=b+r|0,i=r=(i=c)>>>0>(c=m+i|0)>>>0?r+1|0:r,t[a>>2]=c,t[a+4>>2]=r,b=a,r=uI(Q,s,28),a=l,U=uI(Q,s,34)^r,M=l^a,a=(r=h)+(h=(F|G)&Q|F&G)|0,r=((B|_)&s|B&_)+E|0,r=a>>>0<h>>>0?r+1|0:r,E=a,a=uI(Q,s,39)^U,r=(l^M)+r|0,a=r=a>>>0>(E=E+a|0)>>>0?r+1|0:r,t[b+32>>2]=E,t[b+36>>2]=r,h=b,r=uI(c,i,14),b=l,U=uI(c,i,18)^r,M=l^b,m=F,r=o+(C^(n^C)&i)|0,r=(b=p+(f^(y^f)&c)|0)>>>0<p>>>0?r+1|0:r,o=uI(c,i,41)^U,r=(l^M)+r|0,r=o>>>0>(p=o+b|0)>>>0?r+1|0:r,p=(U=t[(F=b=(o=(12|e)<<3)+I|0)>>2])+p|0,r=t[F+4>>2]+r|0,r=p>>>0<U>>>0?r+1|0:r,p=(F=t[(o=o+34784|0)>>2])+p|0,r=t[o+4>>2]+r|0,r=p>>>0<F>>>0?r+1|0:r,F=p,p=m+(o=p)|0,m=_,_=r,r=m+r|0,U=p,p=r=o>>>0>p>>>0?r+1|0:r,t[h+56>>2]=U,t[h+60>>2]=r,o=h,r=uI(E,a,28),h=l,M=uI(E,a,34)^r,m=l^h,h=(r=F)+(F=(Q|G)&E|Q&G)|0,r=((B|s)&a|B&s)+_|0,r=h>>>0<F>>>0?r+1|0:r,_=h,h=uI(E,a,39)^M,r=(l^m)+r|0,F=_=_+h|0,_=r=_>>>0<h>>>0?r+1|0:r,t[o+24>>2]=F,t[o+28>>2]=r,h=o,r=uI(U,p,14),o=l,M=uI(U,p,18)^r,m=l^o,x=G,r=C+(n^(n^i)&p)|0,r=(o=f+(y^(c^y)&U)|0)>>>0<f>>>0?r+1|0:r,C=o,o=uI(U,p,41)^M,r=(l^m)+r|0,r=o>>>0>(f=C+o|0)>>>0?r+1|0:r,o=(o=f)+(M=t[(f=(C=(13|e)<<3)+I|0)>>2])|0,r=t[f+4>>2]+r|0,r=o>>>0<M>>>0?r+1|0:r,o=(G=t[(C=C+34784|0)>>2])+o|0,r=t[C+4>>2]+r|0,r=o>>>0<G>>>0?r+1|0:r,G=o,C=o,m=B,B=r,r=m+r|0,M=o=x+o|0,o=r=o>>>0<C>>>0?r+1|0:r,t[h+48>>2]=M,t[h+52>>2]=r,C=h,r=uI(F,_,28),h=l,m=uI(F,_,34)^r,x=l^h,h=(r=G)+(G=(Q|E)&F|Q&E)|0,r=((a|s)&_|a&s)+B|0,r=h>>>0<G>>>0?r+1|0:r,B=h,h=uI(F,_,39)^m,r=(l^x)+r|0,G=B=B+h|0,B=r=B>>>0<h>>>0?r+1|0:r,t[C+16>>2]=G,t[C+20>>2]=r,r=uI(M,o,14),h=l,m=uI(M,o,18)^r,x=l^h,r=n+(i^(i^p)&o)|0,r=(h=y+(c^(c^U)&M)|0)>>>0<y>>>0?r+1|0:r,n=uI(M,o,41)^m,r=(l^x)+r|0,r=n>>>0>(y=n+h|0)>>>0?r+1|0:r,n=(n=y)+(x=t[(y=(h=(14|e)<<3)+I|0)>>2])|0,r=t[y+4>>2]+r|0,r=n>>>0<x>>>0?r+1|0:r,n=(m=t[(h=h+34784|0)>>2])+n|0,r=t[h+4>>2]+r|0,x=n,h=r=n>>>0<m>>>0?r+1|0:r,r=s+r|0,m=n=Q+n|0,Q=r=n>>>0<Q>>>0?r+1|0:r,t[C+40>>2]=n,t[C+44>>2]=r,n=C,r=uI(G,B,28),s=l,C=uI(G,B,34)^r,R=l^s,s=(r=x)+(x=(E|F)&G|E&F)|0,r=((a|_)&B|a&_)+h|0,r=s>>>0<x>>>0?r+1|0:r,C=uI(G,B,39)^C,r=(l^R)+r|0,r=C>>>0>(s=C+s|0)>>>0?r+1|0:r,C=s,s=r,t[n+8>>2]=C,t[n+12>>2]=r,r=uI(m,Q,14),n=l,x=uI(m,Q,18)^r,R=l^n,r=i+(p^(o^p)&Q)|0,r=(h=c+(U^(U^M)&m)|0)>>>0<c>>>0?r+1|0:r,p=uI(m,Q,41)^x,r=(l^R)+r|0,r=(Q=p+h|0)>>>0<p>>>0?r+1|0:r,Q=(o=t[(i=p=(c=(15|e)<<3)+I|0)>>2])+Q|0,r=t[i+4>>2]+r|0,r=Q>>>0<o>>>0?r+1|0:r,Q=(i=t[(c=c+34784|0)>>2])+Q|0,r=t[c+4>>2]+r|0,r=Q>>>0<i>>>0?r+1|0:r,c=E+(i=Q)|0,Q=r,r=a+r|0,t[(n=g)+32>>2]=c,t[n+36>>2]=c>>>0<E>>>0?r+1|0:r,r=uI(C,s,28),E=l,a=uI(C,s,34)^r,n=l^E,r=((B|_)&s|B&_)+Q|0,_=(c=(B=i)+(i=(F|G)&C|F&G)|0)+(B=uI(C,s,39)^a)|0,r=(l^n)+(i>>>0>c>>>0?r+1|0:r)|0,t[(E=g)>>2]=_,t[E+4>>2]=B>>>0>_>>>0?r+1|0:r,64==(0|e)){for(;_=I=(e=J<<3)+A|0,e=(B=t[(r=g+e|0)>>2])+t[_>>2]|0,r=t[_+4>>2]+t[r+4>>2]|0,t[_>>2]=e,t[_+4>>2]=e>>>0<B>>>0?r+1|0:r,8!=(0|(J=J+1|0)););break}s=((e=e+16|0)<<3)+I|0,F=_=t[y+4>>2],r=_>>>6|0,_=((63&_)<<26|(G=t[y>>2])>>>6)^uI(G,_,19),r^=l,_=(a=uI(G,F,61)^_)+(B=h=t[w>>2])|0,r=(E=t[w+4>>2])+(l^r)|0,r=B>>>0>_>>>0?r+1|0:r,_=(Q=t[(B=I+K|0)>>2])+_|0,r=t[B+4>>2]+r|0,_=Q>>>0>(a=_)>>>0?r+1|0:r,Q=B=t[N+4>>2],r=B>>>7|0,B=((127&B)<<25|(c=t[N>>2])>>>7)^uI(c,B,1),r^=l,i=a,a=uI(c,Q,8)^B,r=(l^r)+_|0,n=B=i+a|0,B=r=B>>>0<a>>>0?r+1|0:r,t[s>>2]=n,t[s+4>>2]=r,r=t[(s=N)+76>>2]+Q|0,a=c,Q=(c=t[s+72>>2])>>>0>(a=_=a+c|0)>>>0?r+1|0:r,_=c=t[p+4>>2],r=c>>>6|0,c=((63&c)<<26|(C=t[p>>2])>>>6)^uI(C,c,19),r^=l,i=a,a=uI(C,_,61)^c,r=(l^r)+Q|0,Q=a>>>0>(i=c=i+a|0)>>>0?r+1|0:r,c=a=t[s+12>>2],r=a>>>7|0,a=((127&a)<<25|(o=t[s+8>>2])>>>7)^uI(o,a,1),r^=l,N=i,i=uI(o,c,8)^a,r=(l^r)+Q|0,r=(a=N+i|0)>>>0<i>>>0?r+1|0:r,i=a,Q=r,t[s+128>>2]=a,t[s+132>>2]=r,s=H,a=c,r=uI(n,B,19),H=l,c=r,r=B>>>6|0,B=(B=uI(n,B,61)^c^((63&B)<<26|n>>>6))+(n=N=t[u>>2])|0,r=(c=t[u+4>>2])+(l^r^H)|0,r=B>>>0<n>>>0?r+1|0:r,n=B,r=r+a|0,o=B=B+o|0,B=B>>>0<n>>>0?r+1|0:r,n=a=t[D+4>>2],r=a>>>7|0,a=((127&a)<<25|(H=t[D>>2])>>>7)^uI(H,a,1),r^=l,m=o,o=uI(H,n,8)^a,r=(l^r)+B|0,r=(a=m+o|0)>>>0<o>>>0?r+1|0:r,o=a,B=r,t[s+128>>2]=a,t[s+132>>2]=r,s=(r=H)+(H=t[(a=D)+72>>2])|0,r=t[a+76>>2]+n|0,n=r=s>>>0<H>>>0?r+1|0:r,r=uI(i,Q,19),H=l,D=s,s=r,r=Q>>>6|0,s=uI(i,Q,61)^s^((63&Q)<<26|i>>>6),r=(l^r^H)+n|0,H=Q=D+s|0,Q=Q>>>0<s>>>0?r+1|0:r,s=n=t[a+12>>2],r=n>>>7|0,n=((127&n)<<25|(i=t[a+8>>2])>>>7)^uI(i,n,1),r^=l,D=uI(i,s,8)^n,r=(l^r)+Q|0,r=(n=D+H|0)>>>0<D>>>0?r+1|0:r,D=n,Q=r,t[a+128>>2]=n,t[a+132>>2]=r,a=S,n=s,r=uI(o,B,19),S=l,m=i,i=r,r=B>>>6|0,B=(B=uI(o,B,61)^i^((63&B)<<26|o>>>6))+(i=H=t[f>>2])|0,r=(s=t[f+4>>2])+(l^r^S)|0,r=B>>>0<i>>>0?r+1|0:r,i=B,r=r+n|0,S=B=m+B|0,B=B>>>0<i>>>0?r+1|0:r,i=n=t[v+4>>2],r=n>>>7|0,n=((127&n)<<25|(o=t[v>>2])>>>7)^uI(o,n,1),r^=l,m=S,S=uI(o,i,8)^n,r=(l^r)+B|0,r=(n=m+S|0)>>>0<S>>>0?r+1|0:r,S=n,B=r,t[a+128>>2]=n,t[a+132>>2]=r,a=(r=o)+(o=t[(n=v)+72>>2])|0,r=t[n+76>>2]+i|0,i=r=a>>>0<o>>>0?r+1|0:r,r=uI(D,Q,19),o=l,v=a,m=r,r=(a=Q)>>>6|0,a=m^((63&a)<<26|D>>>6)^uI(D,a,61),r=(l^r^o)+i|0,Q=a>>>0>(o=Q=v+a|0)>>>0?r+1|0:r,r=(a=i=t[n+12>>2])>>>7|0,i=((127&a)<<25|(v=t[n+8>>2])>>>7)^uI(v,a,1),r^=l,D=o,o=uI(v,a,8)^i,r=(l^r)+Q|0,D=i=D+o|0,Q=r=o>>>0>i>>>0?r+1|0:r,t[n+128>>2]=i,t[n+132>>2]=r,n=P,i=a,r=uI(S,B,19),P=l,a=r,r=B>>>6|0,a=uI(S,B,61)^a^((63&B)<<26|S>>>6),r=(l^r^P)+_|0,r=(B=a+C|0)>>>0<a>>>0?r+1|0:r,a=B,r=r+i|0,v=B=B+v|0,B=B>>>0<a>>>0?r+1|0:r,r=(a=o=t[d+4>>2])>>>7|0,o=((127&a)<<25|(i=t[d>>2])>>>7)^uI(i,a,1),r^=l,S=v,v=uI(i,a,8)^o,r=(l^r)+B|0,B=r=(o=S+v|0)>>>0<v>>>0?r+1|0:r,t[n+128>>2]=o,t[n+132>>2]=r,r=t[(n=d)+76>>2]+a|0,i=(a=i=(v=t[n+72>>2])+i|0)>>>0<v>>>0?r+1|0:r,r=uI(D,Q,19),v=l,S=a,d=r,r=(a=Q)>>>6|0,a=d^((63&a)<<26|D>>>6)^uI(D,a,61),r=(l^r^v)+i|0,D=Q=S+a|0,Q=a>>>0>Q>>>0?r+1|0:r,r=(a=i=t[n+12>>2])>>>7|0,i=((127&a)<<25|(v=t[n+8>>2])>>>7)^uI(v,a,1),r^=l,S=D,D=uI(v,a,8)^i,r=(l^r)+Q|0,r=(i=S+D|0)>>>0<D>>>0?r+1|0:r,D=i,Q=r,t[n+128>>2]=i,t[n+132>>2]=r,i=a,r=uI(o,B,19),d=l,a=r,r=B>>>6|0,B=(B=uI(o,B,61)^a^((63&B)<<26|o>>>6))+(a=t[(n=k)+72>>2])|0,r=t[n+76>>2]+(l^r^d)|0,r=B>>>0<a>>>0?r+1|0:r,a=B,r=r+i|0,a=r=(B=B+v|0)>>>0<a>>>0?r+1|0:r,r=uI(h,E,1),i=l,v=B,o=r,r=(B=E)>>>7|0,o=o^((127&B)<<25|h>>>7)^uI(h,B,8),r=(l^r^i)+a|0,i=B=v+o|0,B=r=B>>>0<o>>>0?r+1|0:r,t[n+128>>2]=i,t[n+132>>2]=r,r=t[(a=w)+76>>2]+E|0,E=n=(o=t[a+72>>2])+h|0,n=n>>>0<o>>>0?r+1|0:r,r=uI(D,Q,19),o=l,h=E,E=r,r=Q>>>6|0,E=uI(D,Q,61)^E^((63&Q)<<26|D>>>6),r=(l^r^o)+n|0,Q=(o=Q=h+E|0)>>>0<E>>>0?r+1|0:r,E=n=t[a+12>>2],r=n>>>7|0,n=((127&n)<<25|(D=t[a+8>>2])>>>7)^uI(D,n,1),r^=l,h=o,o=uI(D,E,8)^n,r=(l^r)+Q|0,r=(n=h+o|0)>>>0<o>>>0?r+1|0:r,o=n,Q=r,t[a+128>>2]=n,t[a+132>>2]=r,n=E,r=uI(i,B,19),v=l,a=r,r=B>>>6|0,B=(B=uI(i,B,61)^a^((63&B)<<26|i>>>6))+(E=t[(a=Y)+72>>2])|0,r=t[a+76>>2]+(l^r^v)|0,r=B>>>0<E>>>0?r+1|0:r,E=B,r=r+n|0,E=r=(B=B+D|0)>>>0<E>>>0?r+1|0:r,r=uI(N,c,1),n=l,h=B,i=r,r=(B=c)>>>7|0,i=i^((127&B)<<25|N>>>7)^uI(N,B,8),r=(l^r^n)+E|0,n=B=h+i|0,B=r=B>>>0<i>>>0?r+1|0:r,t[a+128>>2]=n,t[a+132>>2]=r,E=(i=t[(a=u)+72>>2])+N|0,r=t[a+76>>2]+c|0,c=r=i>>>0>E>>>0?r+1|0:r,r=uI(o,Q,19),i=l,h=E,E=r,r=Q>>>6|0,E=uI(o,Q,61)^E^((63&Q)<<26|o>>>6),r=(l^r^i)+c|0,Q=(i=Q=h+E|0)>>>0<E>>>0?r+1|0:r,E=c=t[a+12>>2],r=c>>>7|0,c=((127&c)<<25|(o=t[a+8>>2])>>>7)^uI(o,c,1),r^=l,h=i,i=uI(o,E,8)^c,r=(l^r)+Q|0,r=i>>>0>(c=h+i|0)>>>0?r+1|0:r,i=c,Q=r,t[a+128>>2]=i,t[a+132>>2]=r,a=E,r=uI(n,B,19),N=l,E=r,r=B>>>6|0,B=(B=uI(n,B,61)^E^((63&B)<<26|n>>>6))+(E=t[(c=b)+72>>2])|0,r=t[c+76>>2]+(l^r^N)|0,r=B>>>0<E>>>0?r+1|0:r,E=B,r=r+a|0,E=r=(B=B+o|0)>>>0<E>>>0?r+1|0:r,r=uI(H,s,1),a=l,o=B,n=r,r=(B=s)>>>7|0,n=n^((127&B)<<25|H>>>7)^uI(H,B,8),r=(l^r^a)+E|0,a=B=o+n|0,B=r=B>>>0<n>>>0?r+1|0:r,t[c+128>>2]=a,t[c+132>>2]=r,c=(n=t[(E=f)+72>>2])+H|0,r=t[E+76>>2]+s|0,s=r=n>>>0>c>>>0?r+1|0:r,r=uI(i,Q,19),n=l,o=c,c=r,r=Q>>>6|0,c=uI(i,Q,61)^c^((63&Q)<<26|i>>>6),r=(l^r^n)+s|0,Q=(n=Q=o+c|0)>>>0<c>>>0?r+1|0:r,s=c=t[E+12>>2],r=c>>>7|0,c=((127&c)<<25|(f=t[E+8>>2])>>>7)^uI(f,c,1),r^=l,c=uI(f,s,8)^c,r=(l^r)+Q|0,r=c>>>0>(f=c+n|0)>>>0?r+1|0:r,c=f,Q=r,t[E+128>>2]=c,t[E+132>>2]=r,f=(s=t[(E=y)+72>>2])+G|0,r=t[E+76>>2]+F|0,y=r=s>>>0>f>>>0?r+1|0:r,r=uI(a,B,19),s=l,i=f,n=r,r=B>>>6|0,f=uI(a,B,61)^n^((63&B)<<26|a>>>6),r=(l^r^s)+y|0,f=r=(B=i+f|0)>>>0<f>>>0?r+1|0:r,r=uI(C,_,1),y=l,a=B,i=r,r=(B=_)>>>7|0,B=a+(s=i^((127&B)<<25|C>>>7)^uI(C,B,8))|0,r=(l^r^y)+f|0,t[E+128>>2]=B,t[E+132>>2]=B>>>0<s>>>0?r+1|0:r,r=t[(B=p)+76>>2]+_|0,_=E=(f=t[B+72>>2])+C|0,E=E>>>0<f>>>0?r+1|0:r,r=uI(c,Q,19),f=l,a=r,r=Q>>>6|0,Q=uI(c,Q,61)^a^((63&Q)<<26|c>>>6),r=(l^r^f)+E|0,_=Q>>>0>(y=_=Q+_|0)>>>0?r+1|0:r,p=((127&(E=f=t[B+12>>2]))<<25|(Q=t[B+8>>2])>>>7)^uI(Q,E,1),r=l^E>>>7,p=(f=uI(Q,E,8)^p)+y|0,r=(l^r)+_|0,t[B+128>>2]=p,t[B+132>>2]=f>>>0>p>>>0?r+1|0:r}}function v(A){var g,I,e,r,B,t,i,o,Q,C,c,E,s,y,_,h,f,p,u=0,w=0,D=0,v=0,d=0,b=0,k=0,F=0,G=0,m=0,Y=0,H=0,S=0,U=0,M=0,N=0,x=0,P=0,R=0,J=0,K=0,L=0,T=0,q=0,X=0,V=0,W=0,j=0,O=0,Z=0,z=0,$=0,AA=0,gA=0,IA=0,eA=0,rA=0,aA=0,BA=0;y=kg(A),_=n[A+2|0]|n[A+3|0]<<8|n[A+4|0]<<16|n[A+5|0]<<24,h=kg(A+5|0),f=l,gA=n[A+7|0]|n[A+8|0]<<8|n[A+9|0]<<16|n[A+10|0]<<24,IA=n[A+10|0]|n[A+11|0]<<8|n[A+12|0]<<16|n[A+13|0]<<24,p=kg(A+13|0),eA=l,M=n[A+15|0]|n[A+16|0]<<8|n[A+17|0]<<16|n[A+18|0]<<24,O=kg(A+18|0),N=l,m=kg(A+21|0),b=n[A+23|0]|n[A+24|0]<<8|n[A+25|0]<<16|n[A+26|0]<<24,d=kg(A+26|0),w=l,AA=n[A+28|0]|n[A+29|0]<<8|n[A+30|0]<<16|n[A+31|0]<<24,T=n[A+31|0]|n[A+32|0]<<8|n[A+33|0]<<16|n[A+34|0]<<24,W=kg(A+34|0),V=l,x=n[A+36|0]|n[A+37|0]<<8|n[A+38|0]<<16|n[A+39|0]<<24,Z=kg(A+39|0),R=l,F=kg(A+42|0),v=n[A+44|0]|n[A+45|0]<<8|n[A+46|0]<<16|n[A+47|0]<<24,D=kg(A+47|0),u=2097151&((3&w)<<30|d>>>2),d=CI(g=2097151&((3&(k=l))<<30|D>>>2),0,136657,0)+u|0,w=l,w=u>>>0>d>>>0?w+1|0:w,D=CI(I=(n[A+49|0]|n[A+50|0]<<8|n[A+51|0]<<16|n[A+52|0]<<24)>>>7&2097151,0,-997805,-1),u=l+w|0,u=D>>>0>(d=D+d|0)>>>0?u+1|0:u,w=CI(e=(n[A+52|0]|n[A+53|0]<<8|n[A+54|0]<<16|n[A+55|0]<<24)>>>4&2097151,0,654183,0),D=l+u|0,D=w>>>0>(d=w+d|0)>>>0?D+1|0:D,u=d,w=kg(A+55|0),d=u+(w=CI(r=2097151&((1&(d=l))<<31|w>>>1),0,470296,0))|0,u=l+D|0,u=w>>>0>d>>>0?u+1|0:u,D=CI(B=(n[A+57|0]|n[A+58|0]<<8|n[A+59|0]<<16|n[A+60|0]<<24)>>>6&2097151,0,666643,0),w=l+u|0,H=w=D>>>0>(d=D+d|0)>>>0?w+1|0:w,D=w,G=v>>>5&2097151,w=2097151&F,v=CI(t=(n[A+60|0]|n[A+61|0]<<8|n[A+62|0]<<16|n[A+63|0]<<24)>>>3|0,0,-683901,-1)+w|0,u=l,F=v,S=u=w>>>0>v>>>0?u+1|0:u,U=(u=v)- -1048576|0,K=v=S-((u>>>0<4293918720)-1|0)|0,u=v>>21,o=G=(v=(2097151&v)<<11|U>>>21)+G|0,X=w=v>>>0>G>>>0?u+1|0:u,u=CI(G,w,-683901,-1),w=l+D|0,j=k=u+d|0,Y=u>>>0>k>>>0?w+1|0:w,D=b>>>5&2097151,k=CI(g,0,-997805,-1)+D|0,u=l,u=D>>>0>k>>>0?u+1|0:u,w=CI(I,0,654183,0),D=l+u|0,D=w>>>0>(k=w+k|0)>>>0?D+1|0:D,u=CI(e,0,470296,0),w=l+D|0,w=u>>>0>(k=u+k|0)>>>0?w+1|0:w,D=CI(r,0,666643,0),u=l+w|0,D=D>>>0>(b=k=D+k|0)>>>0?u+1|0:u,u=2097151&m,k=CI(g,0,654183,0)+u|0,w=l,w=u>>>0>k>>>0?w+1|0:w,v=(u=k)+(k=CI(I,0,470296,0))|0,u=l+w|0,u=v>>>0<k>>>0?u+1|0:u,k=CI(e,0,666643,0),w=l+u|0,G=v=k+v|0,v=w=v>>>0<k>>>0?w+1|0:w,z=(u=G)- -1048576|0,P=k=w-((u>>>0<4293918720)-1|0)|0,D=(u=k>>>21|0)+D|0,m=D=(w=(2097151&k)<<11|z>>>21)>>>0>(b=k=w+b|0)>>>0?D+1|0:D,L=(u=b)- -1048576|0,E=d- -1048576|0,H=H-((d>>>0<4293918720)-1|0)|0,w=(u=(D=J=D-((u>>>0<4293918720)-1|0)|0)>>21)+Y|0,H=(w=(d=(2097151&D)<<11|L>>>21)>>>0>(J=d+j|0)>>>0?w+1|0:w)-(((u=-2097152&E)>>>0>(d=J)>>>0)+(k=H)|0)|0,rA=(u=d-u|0)-(w=-2097152&(s=u- -1048576|0))|0,aA=H-((u>>>0<w>>>0)+(d=H-((u>>>0<4293918720)-1|0)|0)|0)|0,w=CI(o,X,136657,0)+b|0,u=m+l|0,u=w>>>0<b>>>0?u+1|0:u,$=(b=w)-(w=-2097152&L)|0,j=u-((w>>>0>b>>>0)+D|0)|0,H=F-(u=-2097152&U)|0,Y=S-((u>>>0>F>>>0)+K|0)|0,u=2097151&((7&R)<<29|Z>>>3),D=CI(t,0,136657,0)+u|0,w=l,w=u>>>0>D>>>0?w+1|0:w,b=(u=D)+(D=CI(B,0,-683901,-1))|0,u=l+w|0,F=b,b=D>>>0>b>>>0?u+1|0:u,u=CI(r,0,-683901,-1),w=l,D=u,w=(u=x>>>6&2097151)>>>0>(D=D+u|0)>>>0?w+1|0:w,m=(u=CI(t,0,-997805,-1))+D|0,D=l+w|0,D=u>>>0>m>>>0?D+1|0:D,w=CI(B,0,136657,0),u=l+D|0,L=w=(U=u=w>>>0>(m=w+m|0)>>>0?u+1|0:u)-(((u=m)>>>0<4293918720)-1|0)|0,u=(2097151&w)<<11|(Z=u- -1048576|0)>>>21,w=(w>>21)+b|0,S=w=u>>>0>(F=u+F|0)>>>0?w+1|0:w,J=(u=F)- -1048576|0,K=w=w-((u>>>0<4293918720)-1|0)|0,u=(D=w>>21)+Y|0,Q=b=(w=(2097151&w)<<11|J>>>21)+H|0,q=u=w>>>0>b>>>0?u+1|0:u,w=CI(b,u,-683901,-1),u=l+j|0,BA=D=w+$|0,x=w>>>0>D>>>0?u+1|0:u,Y=G,u=2097151&((7&N)<<29|O>>>3),D=CI(g,0,470296,0)+u|0,w=l,w=u>>>0>D>>>0?w+1|0:w,u=CI(I,0,666643,0),w=l+w|0,H=D=u+D|0,D=u>>>0>D>>>0?w+1|0:w,b=M>>>6&2097151,G=CI(g,0,666643,0)+b|0,u=l,N=b=(M=u=b>>>0>G>>>0?u+1|0:u)-(((u=G)>>>0<4293918720)-1|0)|0,w=(w=b>>>21|0)+D|0,R=w=(u=(2097151&b)<<11|($=u- -1048576|0)>>>21)>>>0>(b=u+H|0)>>>0?w+1|0:w,O=w-(((u=b)>>>0<4293918720)-1|0)|0,j=u- -1048576|0,i=F-(u=-2097152&J)|0,C=D=S-((u>>>0>F>>>0)+K|0)|0,u=((H=O)>>>21|0)+v|0,u=(F=(2097151&H)<<11|j>>>21)>>>0>(Y=F+Y|0)>>>0?u+1|0:u,Y=(v=CI(o,X,-997805,-1))+((F=Y)-(w=-2097152&z)|0)|0,w=l+(u-((8191&P)+(w>>>0>F>>>0)|0)|0)|0,w=v>>>0>Y>>>0?w+1|0:w,u=CI(Q,q,136657,0),w=l+w|0,w=u>>>0>(v=u+Y|0)>>>0?w+1|0:w,D=CI(i,D,-683901,-1),u=l+w|0,S=u=D>>>0>(v=D+v|0)>>>0?u+1|0:u,J=(u=v)- -1048576|0,K=D=S-((u>>>0<4293918720)-1|0)|0,w=(u=D>>21)+x|0,Y=w=(D=(2097151&D)<<11|J>>>21)>>>0>(F=D+BA|0)>>>0?w+1|0:w,P=(u=D=F)- -1048576|0,u=(u=(F=x=w-((u>>>0<4293918720)-1|0)|0)>>21)+aA|0,rA=x=(w=(2097151&F)<<11|P>>>21)+rA|0,x=w>>>0>x>>>0?u+1|0:u,aA=D-(u=-2097152&P)|0,BA=Y-((u>>>0>D>>>0)+F|0)|0,O=v-(u=-2097152&J)|0,z=S-((u>>>0>v>>>0)+K|0)|0,u=CI(o,X,654183,0),D=l+(R-((8191&H)+((w=-2097152&j)>>>0>b>>>0)|0)|0)|0,D=u>>>0>(v=u+(b-w|0)|0)>>>0?D+1|0:D,w=CI(Q,q,-997805,-1),u=l+D|0,u=w>>>0>(v=w+v|0)>>>0?u+1|0:u,D=CI(i,C,136657,0),w=l+u|0,J=v=D+v|0,F=D>>>0>v>>>0?w+1|0:w,P=m-(u=-2097152&Z)|0,R=U-((u>>>0>m>>>0)+L|0)|0,w=2097151&((1&V)<<31|W>>>1),v=CI(e,0,-683901,-1)+w|0,u=l,u=w>>>0>v>>>0?u+1|0:u,w=CI(r,0,136657,0),u=l+u|0,u=w>>>0>(D=w+v|0)>>>0?u+1|0:u,v=(w=D)+(D=CI(t,0,654183,0))|0,w=l+u|0,w=D>>>0>v>>>0?w+1|0:w,u=CI(B,0,-997805,-1),w=l+w|0,m=D=u+v|0,v=u>>>0>D>>>0?w+1|0:w,u=CI(I,0,-683901,-1),D=l,w=u,D=(u=T>>>4&2097151)>>>0>(w=w+u|0)>>>0?D+1|0:D,b=(u=w)+(w=CI(e,0,136657,0))|0,u=l+D|0,u=w>>>0>b>>>0?u+1|0:u,D=CI(r,0,-997805,-1),w=l+u|0,w=D>>>0>(b=D+b|0)>>>0?w+1|0:w,D=CI(t,0,470296,0),u=l+w|0,u=D>>>0>(b=D+b|0)>>>0?u+1|0:u,D=CI(B,0,654183,0),w=l+u|0,S=w=D>>>0>(b=D+b|0)>>>0?w+1|0:w,L=(u=b)- -1048576|0,K=D=w-((u>>>0<4293918720)-1|0)|0,u=(u=D>>21)+v|0,v=D=(w=(2097151&D)<<11|L>>>21)+m|0,Y=u=w>>>0>D>>>0?u+1|0:u,H=(u=D)- -1048576|0,m=D=Y-((u>>>0<4293918720)-1|0)|0,w=(u=D>>21)+R|0,c=U=(D=(2097151&D)<<11|H>>>21)+P|0,T=w=D>>>0>U>>>0?w+1|0:w,u=CI(U,w,-683901,-1),D=l+F|0,R=w=u+J|0,F=u>>>0>w>>>0?D+1|0:D,W=v-(u=-2097152&H)|0,V=m=Y-((u>>>0>v>>>0)+m|0)|0,D=(u=CI(o,X,470296,0))+(G-(w=-2097152&$)|0)|0,w=l+(M-((2047&N)+(w>>>0>G>>>0)|0)|0)|0,w=u>>>0>D>>>0?w+1|0:w,u=CI(Q,q,654183,0),w=l+w|0,w=u>>>0>(D=u+D|0)>>>0?w+1|0:w,v=(u=CI(i,C,-997805,-1))+D|0,D=l+w|0,D=u>>>0>v>>>0?D+1|0:D,w=CI(U,T,136657,0),u=l+D|0,u=w>>>0>(v=w+v|0)>>>0?u+1|0:u,D=CI(W,m,-683901,-1),w=l+u|0,Y=w=D>>>0>(v=D+v|0)>>>0?w+1|0:w,N=(u=v)- -1048576|0,m=D=w-((u>>>0<4293918720)-1|0)|0,u=(u=D>>21)+F|0,F=u=(w=(2097151&D)<<11|N>>>21)>>>0>(D=w+R|0)>>>0?u+1|0:u,H=(u=D)- -1048576|0,w=(u=(G=R=F-((u>>>0<4293918720)-1|0)|0)>>21)+z|0,O=M=(R=(2097151&G)<<11|H>>>21)+O|0,R=M>>>0<R>>>0?w+1|0:w,z=D-(u=-2097152&H)|0,Z=F-((u>>>0>D>>>0)+G|0)|0,J=v-(u=-2097152&N)|0,U=Y-((u>>>0>v>>>0)+m|0)|0,w=2097151&((1&eA)<<31|p>>>1),v=CI(o,X,666643,0)+w|0,u=l,u=w>>>0>v>>>0?u+1|0:u,D=CI(Q,q,470296,0),w=l+u|0,w=D>>>0>(v=D+v|0)>>>0?w+1|0:w,D=CI(i,C,654183,0),u=l+w|0,u=D>>>0>(v=D+v|0)>>>0?u+1|0:u,w=CI(c,T,-997805,-1),D=l+u|0,D=w>>>0>(v=w+v|0)>>>0?D+1|0:D,u=CI(W,V,136657,0),w=l+D|0,m=v=u+v|0,G=u>>>0>v>>>0?w+1|0:w,F=b-(u=-2097152&L)|0,b=S-((u>>>0>b>>>0)+K|0)|0,u=CI(g,0,-683901,-1),w=l,D=u,w=(u=AA>>>7&2097151)>>>0>(D=D+u|0)>>>0?w+1|0:w,v=(u=CI(I,0,136657,0))+D|0,D=l+w|0,D=u>>>0>v>>>0?D+1|0:D,w=CI(e,0,-997805,-1),u=l+D|0,u=w>>>0>(v=w+v|0)>>>0?u+1|0:u,D=CI(r,0,654183,0),w=l+u|0,w=D>>>0>(v=D+v|0)>>>0?w+1|0:w,D=CI(t,0,666643,0),u=l+w|0,u=D>>>0>(v=D+v|0)>>>0?u+1|0:u,D=CI(B,0,470296,0),w=l+u|0,u=w=D>>>0>(v=D+v|0)>>>0?w+1|0:w,w=k>>21,v=(k=(2097151&k)<<11|E>>>21)+(D=v)|0,D=u+w|0,K=D=v>>>0<k>>>0?D+1|0:D,S=(u=v)- -1048576|0,Y=D=D-((u>>>0<4293918720)-1|0)|0,u=(w=D>>21)+b|0,X=k=(D=(2097151&D)<<11|S>>>21)+F|0,P=u=D>>>0>k>>>0?u+1|0:u,u=CI(k,u,-683901,-1),w=l+G|0,G=D=u+m|0,k=u>>>0>D>>>0?w+1|0:w,u=CI(Q,q,666643,0),D=l,w=u,D=(u=IA>>>4&2097151)>>>0>(w=w+u|0)>>>0?D+1|0:D,b=(u=w)+(w=CI(i,C,470296,0))|0,u=l+D|0,u=w>>>0>b>>>0?u+1|0:u,D=CI(c,T,654183,0),w=l+u|0,w=D>>>0>(b=D+b|0)>>>0?w+1|0:w,u=CI(W,V,-997805,-1),w=l+w|0,w=u>>>0>(D=u+b|0)>>>0?w+1|0:w,b=(u=D)+(D=CI(X,P,136657,0))|0,u=l+w|0,m=u=D>>>0>b>>>0?u+1|0:u,M=(u=b)- -1048576|0,F=D=m-((u>>>0<4293918720)-1|0)|0,u=(w=D>>21)+k|0,D=u=(D=(2097151&D)<<11|M>>>21)>>>0>(k=G=D+G|0)>>>0?u+1|0:u,N=(u=k)- -1048576|0,u=(w=(G=H=D-((u>>>0<4293918720)-1|0)|0)>>21)+U|0,$=L=(H=(2097151&G)<<11|N>>>21)+J|0,H=H>>>0>L>>>0?u+1|0:u,u=v-(w=-2097152&S)|0,v=K-((w>>>0>v>>>0)+Y|0)|0,Y=u,u=(u=d>>21)+v|0,S=u=(w=(2097151&d)<<11|s>>>21)>>>0>(v=d=Y+w|0)>>>0?u+1|0:u,L=(u=v)- -1048576|0,K=d=S-((u>>>0<4293918720)-1|0)|0,U=u=d>>21,u=CI(q=(2097151&d)<<11|L>>>21,u,-683901,-1),w=l+D|0,w=u>>>0>(d=u+k|0)>>>0?w+1|0:w,j=(D=d)-(u=-2097152&N)|0,J=w-((u>>>0>D>>>0)+G|0)|0,w=CI(q,U,136657,0)+b|0,u=m+l|0,u=w>>>0<b>>>0?u+1|0:u,AA=(D=w)-(w=-2097152&M)|0,M=u-((w>>>0>D>>>0)+F|0)|0,u=CI(i,C,666643,0),w=l,D=u,w=(u=gA>>>7&2097151)>>>0>(D=D+u|0)>>>0?w+1|0:w,d=(u=CI(c,T,470296,0))+D|0,D=l+w|0,D=u>>>0>d>>>0?D+1|0:D,w=CI(W,V,654183,0),u=l+D|0,u=w>>>0>(d=w+d|0)>>>0?u+1|0:u,w=CI(X,P,-997805,-1),u=l+u|0,F=D=w+d|0,D=w>>>0>D>>>0?u+1|0:u,u=2097151&((3&f)<<30|h>>>2),d=CI(c,T,666643,0)+u|0,w=l,w=u>>>0>d>>>0?w+1|0:w,u=CI(W,V,470296,0),w=l+w|0,w=u>>>0>(d=u+d|0)>>>0?w+1|0:w,k=(u=d)+(d=CI(X,P,654183,0))|0,u=l+w|0,G=u=d>>>0>k>>>0?u+1|0:u,N=(u=d=k)- -1048576|0,u=(w=(b=k=G-((u>>>0<4293918720)-1|0)|0)>>21)+D|0,m=F=(k=(2097151&b)<<11|N>>>21)+F|0,D=u=k>>>0>F>>>0?u+1|0:u,F=(u=F)- -1048576|0,u=(w=(k=Y=D-((u>>>0<4293918720)-1|0)|0)>>21)+M|0,gA=T=(Y=(2097151&k)<<11|F>>>21)+AA|0,Y=Y>>>0>T>>>0?u+1|0:u,u=CI(q,U,-997805,-1),D=l+D|0,D=u>>>0>(w=u+m|0)>>>0?D+1|0:D,IA=w-(u=-2097152&F)|0,eA=D-((u>>>0>w>>>0)+k|0)|0,u=CI(q,U,654183,0)+d|0,w=G+l|0,w=u>>>0<d>>>0?w+1|0:w,AA=(D=u)-(u=-2097152&N)|0,T=w-((u>>>0>D>>>0)+b|0)|0,u=CI(W,V,666643,0),D=l,w=u,D=(u=_>>>5&2097151)>>>0>(w=w+u|0)>>>0?D+1|0:D,d=(u=w)+(w=CI(X,P,470296,0))|0,u=l+D|0,b=d,D=w>>>0>d>>>0?u+1|0:u,w=2097151&y,d=CI(X,P,666643,0)+w|0,u=l,k=d,F=d=(m=u=w>>>0>d>>>0?u+1|0:u)-(((u=d)>>>0<4293918720)-1|0)|0,D=(w=d>>21)+D|0,G=D=(u=(2097151&d)<<11|(M=u- -1048576|0)>>>21)>>>0>(d=u+b|0)>>>0?D+1|0:D,N=(u=d)- -1048576|0,b=D=D-((u>>>0<4293918720)-1|0)|0,u=(w=D>>21)+T|0,D=u=(D=(2097151&D)<<11|N>>>21)>>>0>(P=D+AA|0)>>>0?u+1|0:u,u=CI(q,U,470296,0)+d|0,w=G+l|0,b=(w=u>>>0<d>>>0?w+1|0:w)-(((d=-2097152&N)>>>0>(G=u)>>>0)+b|0)|0,G=u=u-d|0,d=(w=CI(q,U,666643,0))+(k-(u=-2097152&M)|0)|0,u=l+(m-((u>>>0>k>>>0)+F|0)|0)|0,k=d,w=(w=(u=w>>>0>d>>>0?u+1|0:u)>>21)+b|0,V=d=G+(u=(2097151&u)<<11|d>>>21)|0,D=(u=(w=u>>>0>d>>>0?w+1|0:w)>>21)+D|0,b=d=(w=(2097151&w)<<11|d>>>21)+P|0,w=(D=w>>>0>(u=d)>>>0?D+1|0:D)>>21,D=(2097151&D)<<11|u>>>21,u=w+eA|0,F=d=D+IA|0,D=(u=D>>>0>(w=d)>>>0?u+1|0:u)>>21,u=(2097151&u)<<11|w>>>21,w=D+Y|0,Y=d=u+gA|0,u=(u=(w=u>>>0>(D=d)>>>0?w+1|0:w)>>21)+J|0,P=D=(w=(2097151&w)<<11|D>>>21)+j|0,w=(w=(u=w>>>0>D>>>0?u+1|0:u)>>21)+H|0,U=D=(u=(2097151&u)<<11|D>>>21)+$|0,u=(w=u>>>0>D>>>0?w+1|0:w)>>21,w=(2097151&w)<<11|D>>>21,D=u+Z|0,M=d=w+z|0,w=(D=w>>>0>(u=d)>>>0?D+1|0:D)>>21,D=(2097151&D)<<11|u>>>21,u=w+R|0,N=d=D+O|0,D=(u=D>>>0>(w=d)>>>0?u+1|0:u)>>21,u=(2097151&u)<<11|w>>>21,w=D+BA|0,R=d=u+aA|0,u=(u=(w=u>>>0>(D=d)>>>0?w+1|0:w)>>21)+x|0,H=D=(w=(2097151&w)<<11|D>>>21)+rA|0,w=(u=w>>>0>D>>>0?u+1|0:u)>>21,d=(2097151&u)<<11|D>>>21,u=v-(D=-2097152&L)|0,D=(S-((D>>>0>v>>>0)+K|0)|0)+w|0,K=d=d+u|0,x=(2097151&(D=u>>>0>(w=d)>>>0?D+1|0:D))<<11|w>>>21,m=u=D>>21,w=2097151&k,D=CI(x,u,666643,0)+w|0,u=l,G=D,d=u=w>>>0>D>>>0?u+1|0:u,a[0|A]=D,a[A+1|0]=(255&u)<<24|D>>>8,u=2097151&V,D=CI(x,m,470296,0)+u|0,w=l,w=u>>>0>D>>>0?w+1|0:w,k=D,v=(2097151&(D=d))<<11|G>>>21,D=(u=D>>21)+w|0,D=v>>>0>(S=k+v|0)>>>0?D+1|0:D,v=S,a[A+4|0]=(2047&D)<<21|v>>>11,u=w=D,D=v,a[A+3|0]=(7&u)<<29|D>>>3,D=2097151&b,b=CI(x,m,654183,0)+D|0,u=l,u=D>>>0>b>>>0?u+1|0:u,D=b,b=(2097151&w)<<11|v>>>21,w=(w>>21)+u|0,w=b>>>0>(S=D+b|0)>>>0?w+1|0:w,b=S,u=w,a[A+6|0]=(63&u)<<26|b>>>6,k=0,D=31&((65535&d)<<16|G>>>16),w=G=2097151&v,a[A+2|0]=D|w<<5,D=2097151&F,v=CI(x,m,-997805,-1)+D|0,w=l,D=w=D>>>0>v>>>0?w+1|0:w,D=(w=u>>21)+D|0,F=v=(u=(2097151&u)<<11|b>>>21)+v|0,D=u>>>0>v>>>0?D+1|0:D,a[A+9|0]=(511&D)<<23|v>>>9,u=w=D,D=v,a[A+8|0]=(1&u)<<31|D>>>1,v=0,D=b&=2097151,a[A+5|0]=(524287&k)<<13|G>>>19|D<<2,D=2097151&Y,k=CI(x,m,136657,0)+D|0,u=l,u=(u=D>>>0>k>>>0?u+1|0:u)+(D=w>>21)|0,G=k=(w=(2097151&w)<<11|F>>>21)+k|0,u=w>>>0>k>>>0?u+1|0:u,w=k,a[A+12|0]=(4095&u)<<20|w>>>12,D=u,a[A+11|0]=(15&u)<<28|w>>>4,k=0,w=Y=2097151&F,a[A+7|0]=(16383&v)<<18|b>>>14|w<<7,u=2097151&P,v=CI(x,m,-683901,-1)+u|0,w=l,w=u>>>0>v>>>0?w+1|0:w,w=(u=D>>21)+w|0,b=v=(D=(2097151&D)<<11|G>>>21)+v|0,u=w=D>>>0>v>>>0?w+1|0:w,a[A+14|0]=(127&u)<<25|v>>>7,v=0,D=F=2097151&G,a[A+10|0]=(131071&k)<<15|Y>>>17|D<<4,w=u>>21,D=(u=(2097151&u)<<11|b>>>21)>>>0>(G=u+(2097151&U)|0)>>>0?w+1|0:w,a[A+17|0]=(1023&D)<<22|G>>>10,u=D,D=G,a[A+16|0]=(3&u)<<30|D>>>2,D=m=2097151&b,a[A+13|0]=(1048575&v)<<12|F>>>20|D<<1,D=(2097151&u)<<11|G>>>21,u>>=21,u=D>>>0>(b=D+(2097151&M)|0)>>>0?u+1|0:u,w=b,a[A+20|0]=(8191&u)<<19|w>>>13,a[A+19|0]=(31&u)<<27|w>>>5,w=F=2097151&G,a[A+15|0]=(32767&k)<<17|m>>>15|w<<6,d=(2097151&u)<<11|b>>>21,u=w=u>>21,d=u=d>>>0>(m=d+(2097151&N)|0)>>>0?u+1|0:u,a[A+21|0]=m,u=b,a[A+18|0]=(262143&v)<<14|F>>>18|u<<3,u=d,a[A+22|0]=(255&u)<<24|m>>>8,D=u,u>>=21,D=(b=(k=(2097151&D)<<11|m>>>21)+(2097151&R)|0)>>>0<k>>>0?u+1|0:u,a[(w=A)+25|0]=(2047&D)<<21|b>>>11,u=D,D=b,a[w+24|0]=(7&u)<<29|D>>>3,D=w,k=(2097151&u)<<11|b>>>21,u>>=21,w=u=k>>>0>(v=G=k+(2097151&H)|0)>>>0?u+1|0:u,a[D+27|0]=(63&u)<<26|v>>>6,k=0,u=G=2097151&b,a[D+23|0]=31&((65535&d)<<16|m>>>16)|u<<5,w=(u=w)>>21,w=(u=(2097151&u)<<11|v>>>21)>>>0>(d=u+(2097151&K)|0)>>>0?w+1|0:w,D=d,a[A+31|0]=(131071&w)<<15|D>>>17,u=w,a[A+30|0]=(511&u)<<23|D>>>9,a[A+29|0]=(1&u)<<31|D>>>1,w=0,v&=2097151,a[A+26|0]=(524287&k)<<13|G>>>19|v<<2,a[A+28|0]=(16383&w)<<18|v>>>14|D<<7}function d(A){var g,I=0,e=0,r=0,a=0,B=0,o=0,Q=0,c=0,E=0,s=0,y=0,_=0,h=0;f=g=f-16|0;A:{g:{I:{e:{r:{a:{B:{t:{n:{i:{o:{Q:{if((A|=0)>>>0<=244){if(3&(I=(B=t[8961])>>>(e=(c=A>>>0<11?16:A+11&-8)>>>3|0)|0)){A=(a=t[35892+(I=(r=e+(1&(-1^I))|0)<<3)>>2])+8|0,(0|(e=t[a+8>>2]))!=(0|(I=I+35884|0))?(t[e+12>>2]=I,t[I+8>>2]=e):(_=35844,h=Yg(-2,r)&B,t[_>>2]=h),I=r<<3,t[a+4>>2]=3|I,t[4+(I=I+a|0)>>2]=1|t[I+4>>2];break A}if((s=t[8963])>>>0>=c>>>0)break Q;if(I){e=A=(I=(0-(A=(0-(A=2<<e)|A)&I<<e)&A)-1|0)>>>12&16,e|=A=(I=I>>>A|0)>>>5&8,e|=A=(I=I>>>A|0)>>>2&4,o=t[35892+(A=(e=((e|=A=(I=I>>>A|0)>>>1&2)|(A=(I=I>>>A|0)>>>1&1))+(I>>>A|0)|0)<<3)>>2],(0|(I=t[o+8>>2]))!=(0|(A=A+35884|0))?(t[I+12>>2]=A,t[A+8>>2]=I):(B=Yg(-2,e)&B,t[8961]=B),A=o+8|0,t[o+4>>2]=3|c,a=(I=e<<3)-c|0,t[4+(r=o+c|0)>>2]=1|a,t[I+o>>2]=a,s&&(e=35884+((I=s>>>3|0)<<3)|0,o=t[8966],(I=1<<I)&B?I=t[e+8>>2]:(t[8961]=I|B,I=e),t[e+8>>2]=o,t[I+12>>2]=o,t[o+12>>2]=e,t[o+8>>2]=I),t[8966]=r,t[8963]=a;break A}if(!(Q=t[8962]))break Q;for(e=A=(I=(Q&0-Q)-1|0)>>>12&16,e|=A=(I=I>>>A|0)>>>5&8,e|=A=(I=I>>>A|0)>>>2&4,I=t[36148+(((e|=A=(I=I>>>A|0)>>>1&2)|(A=(I=I>>>A|0)>>>1&1))+(I>>>A|0)<<2)>>2],a=(-8&t[I+4>>2])-c|0,e=I;(A=t[e+16>>2])||(A=t[e+20>>2]);)a=(r=(e=(-8&t[A+4>>2])-c|0)>>>0<a>>>0)?e:a,I=r?A:I,e=A;if((E=I+c|0)>>>0<=I>>>0)break o;if(y=t[I+24>>2],(0|(r=t[I+12>>2]))!=(0|I)){A=t[I+8>>2],t[A+12>>2]=r,t[r+8>>2]=A;break g}if(!(A=t[(e=I+20|0)>>2])){if(!(A=t[I+16>>2]))break i;e=I+16|0}for(;o=e,r=A,(A=t[(e=A+20|0)>>2])||(e=r+16|0,A=t[r+16>>2]););t[o>>2]=0;break g}if(c=-1,!(A>>>0>4294967231)&&(c=-8&(A=A+11|0),E=t[8962])){B=31,a=0-c|0,c>>>0<=16777215&&(A=A>>>8|0,A<<=o=A+1048320>>>16&8,B=28+((A=((A<<=e=A+520192>>>16&4)<<(I=A+245760>>>16&2)>>>15|0)-(I|e|o)|0)<<1|c>>>A+21&1)|0);C:{c:{if(e=t[36148+(B<<2)>>2])for(A=0,I=c<<(31==(0|B)?0:25-(B>>>1|0)|0);;){if(!((o=(-8&t[e+4>>2])-c|0)>>>0>=a>>>0||(r=e,a=o))){a=0,A=e;break c}if(o=t[e+20>>2],e=t[16+((I>>>29&4)+e|0)>>2],A=o?(0|o)==(0|e)?A:o:A,I<<=1,!e)break}else A=0;if(!(A|r)){if(!(A=(0-(A=2<<B)|A)&E))break Q;e=A=(I=(A&0-A)-1|0)>>>12&16,e|=A=(I=I>>>A|0)>>>5&8,e|=A=(I=I>>>A|0)>>>2&4,A=t[36148+(((e|=A=(I=I>>>A|0)>>>1&2)|(A=(I=I>>>A|0)>>>1&1))+(I>>>A|0)<<2)>>2]}if(!A)break C}for(;a=(e=(I=(-8&t[A+4>>2])-c|0)>>>0<a>>>0)?I:a,r=e?A:r,A=(I=t[A+16>>2])||t[A+20>>2];);}if(!(!r|t[8963]-c>>>0<=a>>>0)){if((Q=r+c|0)>>>0<=r>>>0)break o;if(B=t[r+24>>2],(0|r)!=(0|(I=t[r+12>>2]))){A=t[r+8>>2],t[A+12>>2]=I,t[I+8>>2]=A;break I}if(!(A=t[(e=r+20|0)>>2])){if(!(A=t[r+16>>2]))break n;e=r+16|0}for(;o=e,I=A,(A=t[(e=A+20|0)>>2])||(e=I+16|0,A=t[I+16>>2]););t[o>>2]=0;break I}}}if((e=t[8963])>>>0>=c>>>0){r=t[8966],(I=e-c|0)>>>0>=16?(t[8963]=I,A=r+c|0,t[8966]=A,t[A+4>>2]=1|I,t[e+r>>2]=I,t[r+4>>2]=3|c):(t[8966]=0,t[8963]=0,t[r+4>>2]=3|e,t[4+(A=e+r|0)>>2]=1|t[A+4>>2]),A=r+8|0;break A}if((Q=t[8964])>>>0>c>>>0){I=Q-c|0,t[8964]=I,A=(e=t[8967])+c|0,t[8967]=A,t[A+4>>2]=1|I,t[e+4>>2]=3|c,A=e+8|0;break A}if(A=0,I=E=c+47|0,t[9079]?e=t[9081]:(t[9082]=-1,t[9083]=-1,t[9080]=4096,t[9081]=4096,t[9079]=g+12&-16^1431655768,t[9084]=0,t[9072]=0,e=4096),(e=(o=I+e|0)&(a=0-e|0))>>>0<=c>>>0)break A;if((r=t[9071])&&r>>>0<(B=(I=t[9069])+e|0)>>>0|I>>>0>=B>>>0)break A;if(4&n[36288])break a;Q:{C:{if(r=t[8967])for(A=36292;;){if(r>>>0<(I=t[A>>2])+t[A+4>>2]>>>0&&I>>>0<=r>>>0)break C;if(!(A=t[A+8>>2]))break}if(-1==(0|(I=gg(0))))break B;if(B=e,(A=(r=t[9080])-1|0)&I&&(B=(e-I|0)+(A+I&0-r)|0),B>>>0<=c>>>0|B>>>0>2147483646)break B;if((r=t[9071])&&r>>>0<(a=(A=t[9069])+B|0)>>>0|A>>>0>=a>>>0)break B;if((0|I)!=(0|(A=gg(B))))break Q;break r}if((B=a&o-Q)>>>0>2147483646)break B;if((0|(I=gg(B)))==(t[A>>2]+t[A+4>>2]|0))break t;A=I}if(!(-1==(0|A)|c+48>>>0<=B>>>0)){if((I=(I=t[9081])+(E-B|0)&0-I)>>>0>2147483646){I=A;break r}if(-1!=(0|gg(I))){B=I+B|0,I=A;break r}gg(0-B|0);break B}if(I=A,-1!=(0|A))break r;break B}C()}r=0;break g}I=0;break I}if(-1!=(0|I))break r}t[9072]=4|t[9072]}if(e>>>0>2147483646)break e;if((I=gg(e))>>>0>=(A=gg(0))>>>0|-1==(0|I)|-1==(0|A))break e;if((B=A-I|0)>>>0<=c+40>>>0)break e}A=t[9069]+B|0,t[9069]=A,A>>>0>i[9070]&&(t[9070]=A);r:{a:{B:{if(o=t[8967]){for(A=36292;;){if(((r=t[A>>2])+(e=t[A+4>>2])|0)==(0|I))break B;if(!(A=t[A+8>>2]))break}break a}for((A=t[8965])>>>0<=I>>>0&&A||(t[8965]=I),A=0,t[9074]=B,t[9073]=I,t[8969]=-1,t[8970]=t[9079],t[9076]=0;e=35884+(r=A<<3)|0,t[r+35892>>2]=e,t[r+35896>>2]=e,32!=(0|(A=A+1|0)););e=(r=B-40|0)-(A=I+8&7?-8-I&7:0)|0,t[8964]=e,A=A+I|0,t[8967]=A,t[A+4>>2]=1|e,t[4+(I+r|0)>>2]=40,t[8968]=t[9083];break r}if(!(8&n[A+12|0]|I>>>0<=o>>>0|r>>>0>o>>>0)){t[A+4>>2]=e+B,e=(A=o+8&7?-8-o&7:0)+o|0,t[8967]=e,A=(I=t[8964]+B|0)-A|0,t[8964]=A,t[e+4>>2]=1|A,t[4+(I+o|0)>>2]=40,t[8968]=t[9083];break r}}(r=t[8965])>>>0>I>>>0&&(t[8965]=I,r=0),e=I+B|0,A=36292;a:{B:{t:{n:{i:{o:{for(;;){if((0|e)!=t[A>>2]){if(A=t[A+8>>2])continue;break o}break}if(!(8&n[A+12|0]))break i}for(A=36292;;){if((e=t[A>>2])>>>0<=o>>>0&&(a=e+t[A+4>>2]|0)>>>0>o>>>0)break n;A=t[A+8>>2]}}if(t[A>>2]=I,t[A+4>>2]=t[A+4>>2]+B,t[4+(E=(I+8&7?-8-I&7:0)+I|0)>>2]=3|c,e=((B=e+(e+8&7?-8-e&7:0)|0)-E|0)-c|0,Q=c+E|0,(0|B)==(0|o)){t[8967]=Q,A=t[8964]+e|0,t[8964]=A,t[Q+4>>2]=1|A;break B}if(t[8966]==(0|B)){t[8966]=Q,A=t[8963]+e|0,t[8963]=A,t[Q+4>>2]=1|A,t[A+Q>>2]=A;break B}if(1==(3&(A=t[B+4>>2]))){o=-8&A;i:if(A>>>0<=255){if(r=t[B+8>>2],A=A>>>3|0,(0|(I=t[B+12>>2]))==(0|r)){_=35844,h=t[8961]&Yg(-2,A),t[_>>2]=h;break i}t[r+12>>2]=I,t[I+8>>2]=r}else{if(c=t[B+24>>2],(0|B)==(0|(I=t[B+12>>2])))if((a=t[(A=B+20|0)>>2])||(a=t[(A=B+16|0)>>2])){for(;r=A,(a=t[(A=(I=a)+20|0)>>2])||(A=I+16|0,a=t[I+16>>2]););t[r>>2]=0}else I=0;else A=t[B+8>>2],t[A+12>>2]=I,t[I+8>>2]=A;if(c){r=t[B+28>>2];o:{if(t[(A=36148+(r<<2)|0)>>2]==(0|B)){if(t[A>>2]=I,I)break o;_=35848,h=t[8962]&Yg(-2,r),t[_>>2]=h;break i}if(t[c+(t[c+16>>2]==(0|B)?16:20)>>2]=I,!I)break i}t[I+24>>2]=c,(A=t[B+16>>2])&&(t[I+16>>2]=A,t[A+24>>2]=I),(A=t[B+20>>2])&&(t[I+20>>2]=A,t[A+24>>2]=I)}}B=B+o|0,e=e+o|0}if(t[B+4>>2]=-2&t[B+4>>2],t[Q+4>>2]=1|e,t[e+Q>>2]=e,e>>>0<=255){I=35884+((A=e>>>3|0)<<3)|0,(e=t[8961])&(A=1<<A)?A=t[I+8>>2]:(t[8961]=A|e,A=I),t[I+8>>2]=Q,t[A+12>>2]=Q,t[Q+12>>2]=I,t[Q+8>>2]=A;break B}if(A=31,e>>>0<=16777215&&(A=e>>>8|0,A<<=a=A+1048320>>>16&8,A=28+((A=((A<<=r=A+520192>>>16&4)<<(I=A+245760>>>16&2)>>>15|0)-(I|r|a)|0)<<1|e>>>A+21&1)|0),t[Q+28>>2]=A,t[Q+16>>2]=0,t[Q+20>>2]=0,a=36148+(A<<2)|0,(r=t[8962])&(I=1<<A)){for(A=e<<(31==(0|A)?0:25-(A>>>1|0)|0),I=t[a>>2];;){if(r=I,(-8&t[I+4>>2])==(0|e))break t;if(I=A>>>29|0,A<<=1,!(I=t[16+(a=r+(4&I)|0)>>2]))break}t[a+16>>2]=Q,t[Q+24>>2]=r}else t[8962]=I|r,t[a>>2]=Q,t[Q+24>>2]=a;t[Q+12>>2]=Q,t[Q+8>>2]=Q;break B}for(e=(r=B-40|0)-(A=I+8&7?-8-I&7:0)|0,t[8964]=e,A=A+I|0,t[8967]=A,t[A+4>>2]=1|e,t[4+(I+r|0)>>2]=40,t[8968]=t[9083],t[(e=(A=(a+(a-39&7?39-a&7:0)|0)-47|0)>>>0<o+16>>>0?o:A)+4>>2]=27,A=t[9076],t[e+16>>2]=t[9075],t[e+20>>2]=A,A=t[9074],t[e+8>>2]=t[9073],t[e+12>>2]=A,t[9075]=e+8,t[9074]=B,t[9073]=I,t[9076]=0,A=e+24|0;t[A+4>>2]=7,I=A+8|0,A=A+4|0,I>>>0<a>>>0;);if((0|e)==(0|o))break r;if(t[e+4>>2]=-2&t[e+4>>2],a=e-o|0,t[o+4>>2]=1|a,t[e>>2]=a,a>>>0<=255){I=35884+((A=a>>>3|0)<<3)|0,(e=t[8961])&(A=1<<A)?A=t[I+8>>2]:(t[8961]=A|e,A=I),t[I+8>>2]=o,t[A+12>>2]=o,t[o+12>>2]=I,t[o+8>>2]=A;break r}if(A=31,t[o+16>>2]=0,t[o+20>>2]=0,a>>>0<=16777215&&(A=a>>>8|0,A<<=r=A+1048320>>>16&8,A=28+((A=((A<<=e=A+520192>>>16&4)<<(I=A+245760>>>16&2)>>>15|0)-(I|e|r)|0)<<1|a>>>A+21&1)|0),t[o+28>>2]=A,r=36148+(A<<2)|0,(e=t[8962])&(I=1<<A)){for(A=a<<(31==(0|A)?0:25-(A>>>1|0)|0),I=t[r>>2];;){if(e=I,(0|a)==(-8&t[I+4>>2]))break a;if(I=A>>>29|0,A<<=1,!(I=t[16+(r=e+(4&I)|0)>>2]))break}t[r+16>>2]=o,t[o+24>>2]=e}else t[8962]=I|e,t[r>>2]=o,t[o+24>>2]=r;t[o+12>>2]=o,t[o+8>>2]=o;break r}A=t[r+8>>2],t[A+12>>2]=Q,t[r+8>>2]=Q,t[Q+24>>2]=0,t[Q+12>>2]=r,t[Q+8>>2]=A}A=E+8|0;break A}A=t[e+8>>2],t[A+12>>2]=o,t[e+8>>2]=o,t[o+24>>2]=0,t[o+12>>2]=e,t[o+8>>2]=A}if(!((A=t[8964])>>>0<=c>>>0)){I=A-c|0,t[8964]=I,A=(e=t[8967])+c|0,t[8967]=A,t[A+4>>2]=1|I,t[e+4>>2]=3|c,A=e+8|0;break A}}t[8960]=48,A=0;break A}I:if(B){e=t[r+28>>2];e:{if(t[(A=36148+(e<<2)|0)>>2]==(0|r)){if(t[A>>2]=I,I)break e;E=Yg(-2,e)&E,t[8962]=E;break I}if(t[B+(t[B+16>>2]==(0|r)?16:20)>>2]=I,!I)break I}t[I+24>>2]=B,(A=t[r+16>>2])&&(t[I+16>>2]=A,t[A+24>>2]=I),(A=t[r+20>>2])&&(t[I+20>>2]=A,t[A+24>>2]=I)}I:if(a>>>0<=15)A=a+c|0,t[r+4>>2]=3|A,t[4+(A=A+r|0)>>2]=1|t[A+4>>2];else if(t[r+4>>2]=3|c,t[Q+4>>2]=1|a,t[a+Q>>2]=a,a>>>0<=255)I=35884+((A=a>>>3|0)<<3)|0,(e=t[8961])&(A=1<<A)?A=t[I+8>>2]:(t[8961]=A|e,A=I),t[I+8>>2]=Q,t[A+12>>2]=Q,t[Q+12>>2]=I,t[Q+8>>2]=A;else{A=31,a>>>0<=16777215&&(A=a>>>8|0,A<<=o=A+1048320>>>16&8,A=28+((A=((A<<=e=A+520192>>>16&4)<<(I=A+245760>>>16&2)>>>15|0)-(I|e|o)|0)<<1|a>>>A+21&1)|0),t[Q+28>>2]=A,t[Q+16>>2]=0,t[Q+20>>2]=0,e=36148+(A<<2)|0;e:{if((I=1<<A)&E){for(A=a<<(31==(0|A)?0:25-(A>>>1|0)|0),c=t[e>>2];;){if((-8&t[(I=c)+4>>2])==(0|a))break e;if(e=A>>>29|0,A<<=1,!(c=t[16+(e=I+(4&e)|0)>>2]))break}t[e+16>>2]=Q,t[Q+24>>2]=I}else t[8962]=I|E,t[e>>2]=Q,t[Q+24>>2]=e;t[Q+12>>2]=Q,t[Q+8>>2]=Q;break I}A=t[I+8>>2],t[A+12>>2]=Q,t[I+8>>2]=Q,t[Q+24>>2]=0,t[Q+12>>2]=I,t[Q+8>>2]=A}A=r+8|0;break A}g:if(y){e=t[I+28>>2];I:{if(t[(A=36148+(e<<2)|0)>>2]==(0|I)){if(t[A>>2]=r,r)break I;_=35848,h=Yg(-2,e)&Q,t[_>>2]=h;break g}if(t[(t[y+16>>2]==(0|I)?16:20)+y>>2]=r,!r)break g}t[r+24>>2]=y,(A=t[I+16>>2])&&(t[r+16>>2]=A,t[A+24>>2]=r),(A=t[I+20>>2])&&(t[r+20>>2]=A,t[A+24>>2]=r)}a>>>0<=15?(A=a+c|0,t[I+4>>2]=3|A,t[4+(A=A+I|0)>>2]=1|t[A+4>>2]):(t[I+4>>2]=3|c,t[E+4>>2]=1|a,t[a+E>>2]=a,s&&(e=35884+((A=s>>>3|0)<<3)|0,r=t[8966],(A=1<<A)&B?A=t[e+8>>2]:(t[8961]=A|B,A=e),t[e+8>>2]=r,t[A+12>>2]=r,t[r+12>>2]=e,t[r+8>>2]=A),t[8966]=E,t[8963]=a),A=I+8|0}return f=g+16|0,0|A}function b(A,g,I){var e,r,a,B,n,i,Q,C,c,E,s,y,_,h,f,p,u,w,D,v,d,b,k,F,G,m,Y,H,S,U,M,N,x,P,R,J,K,L,T,q,X,V,W,j,O,Z,z,$,AA,gA,IA,eA,rA,aA,BA=0,tA=0,nA=0,iA=0,oA=0,QA=0,CA=0,cA=0,EA=0,sA=0,yA=0,_A=0,hA=0,fA=0,pA=0,uA=0,lA=0,wA=0,DA=0,vA=0,dA=0,bA=0,kA=0,FA=0,GA=0;CA=A,e=BA=kA=t[I+4>>2],c=BA>>31,J=BA=(pA=t[g+20>>2])<<1,BA=CI(e,c,BA,k=BA>>31),nA=l,tA=BA,r=BA=t[I>>2],a=BA>>31,E=BA=t[g+24>>2],oA=CI(r,a,BA,B=BA>>31),BA=l+nA|0,BA=(tA=tA+oA|0)>>>0<oA>>>0?BA+1|0:BA,nA=tA,K=tA=QA=t[I+8>>2],u=tA>>31,s=tA=t[g+16>>2],tA=nA+(oA=CI(QA,u,tA,n=tA>>31))|0,nA=l+BA|0,nA=tA>>>0<oA>>>0?nA+1|0:nA,L=BA=lA=t[I+12>>2],w=BA>>31,T=BA=(_A=t[g+12>>2])<<1,BA=(oA=CI(lA,w,BA,F=BA>>31))+tA|0,tA=l+nA|0,tA=BA>>>0<oA>>>0?tA+1|0:tA,nA=BA,Z=BA=uA=t[I+16>>2],d=BA>>31,y=BA=t[g+8>>2],oA=CI(uA,d,BA,i=BA>>31),BA=l+tA|0,BA=(nA=nA+oA|0)>>>0<oA>>>0?BA+1|0:BA,iA=nA,z=tA=sA=t[I+20>>2],G=tA>>31,q=tA=(EA=t[g+4>>2])<<1,nA=CI(sA,G,tA,m=tA>>31),BA=l+BA|0,BA=(tA=iA+nA|0)>>>0<nA>>>0?BA+1|0:BA,nA=tA,$=tA=yA=t[I+24>>2],X=tA>>31,_=tA=t[g>>2],oA=CI(yA,X,tA,Q=tA>>31),tA=l+BA|0,tA=(nA=nA+oA|0)>>>0<oA>>>0?tA+1|0:tA,wA=t[I+28>>2],D=BA=o(wA,19),v=BA>>31,V=BA=(hA=t[g+36>>2])<<1,BA=(oA=CI(D,v,BA,Y=BA>>31))+nA|0,nA=l+tA|0,nA=BA>>>0<oA>>>0?nA+1|0:nA,tA=BA,fA=t[I+32>>2],DA=BA=o(fA,19),vA=BA>>31,h=BA=t[g+32>>2],oA=CI(DA,vA,BA,C=BA>>31),BA=l+nA|0,BA=(tA=tA+oA|0)>>>0<oA>>>0?BA+1|0:BA,nA=tA,AA=t[I+36>>2],f=I=o(AA,19),p=I>>31,W=I=(g=t[g+28>>2])<<1,tA=CI(f,p,I,H=I>>31),BA=l+BA|0,cA=I=nA+tA|0,I=I>>>0<tA>>>0?BA+1|0:BA,BA=CI(s,n,e,c),tA=l,pA=CI(r,a,oA=pA,S=oA>>31),nA=l+tA|0,nA=(BA=pA+BA|0)>>>0<pA>>>0?nA+1|0:nA,pA=_A,_A=CI(QA,u,_A,U=_A>>31),tA=l+nA|0,tA=(BA=_A+BA|0)>>>0<_A>>>0?tA+1|0:tA,nA=(_A=CI(y,i,lA,w))+BA|0,BA=l+tA|0,BA=nA>>>0<_A>>>0?BA+1|0:BA,tA=nA,_A=EA,nA=CI(uA,d,EA,M=EA>>31),BA=l+BA|0,BA=(tA=tA+nA|0)>>>0<nA>>>0?BA+1|0:BA,nA=CI(_,Q,sA,G),BA=l+BA|0,BA=(tA=nA+tA|0)>>>0<nA>>>0?BA+1|0:BA,nA=tA,N=tA=o(yA,19),tA=nA+(hA=CI(tA,b=tA>>31,EA=hA,x=EA>>31))|0,nA=l+BA|0,nA=tA>>>0<hA>>>0?nA+1|0:nA,BA=(hA=CI(h,C,D,v))+tA|0,tA=l+nA|0,tA=BA>>>0<hA>>>0?tA+1|0:tA,hA=g,g=(nA=CI(DA,vA,g,P=g>>31))+BA|0,BA=l+tA|0,BA=g>>>0<nA>>>0?BA+1|0:BA,tA=CI(f,p,E,B),BA=l+BA|0,bA=g=tA+g|0,g=g>>>0<tA>>>0?BA+1|0:BA,BA=CI(e,c,T,F),nA=l,tA=(yA=CI(r,a,s,n))+BA|0,BA=l+nA|0,BA=tA>>>0<yA>>>0?BA+1|0:BA,yA=CI(y,i,QA,u),nA=l+BA|0,nA=(tA=yA+tA|0)>>>0<yA>>>0?nA+1|0:nA,BA=(yA=CI(lA,w,q,m))+tA|0,tA=l+nA|0,tA=BA>>>0<yA>>>0?tA+1|0:tA,nA=(yA=CI(_,Q,uA,d))+BA|0,BA=l+tA|0,BA=nA>>>0<yA>>>0?BA+1|0:BA,iA=nA,j=tA=o(sA,19),nA=CI(tA,R=tA>>31,V,Y),BA=l+BA|0,BA=(tA=iA+nA|0)>>>0<nA>>>0?BA+1|0:BA,nA=CI(h,C,N,b),BA=l+BA|0,BA=(tA=nA+tA|0)>>>0<nA>>>0?BA+1|0:BA,sA=CI(D,v,W,H),nA=l+BA|0,nA=(tA=sA+tA|0)>>>0<sA>>>0?nA+1|0:nA,BA=(sA=CI(DA,vA,E,B))+tA|0,tA=l+nA|0,tA=BA>>>0<sA>>>0?tA+1|0:tA,nA=(sA=CI(f,p,J,k))+BA|0,BA=l+tA|0,BA=nA>>>0<sA>>>0?BA+1|0:BA,sA=nA,IA=BA,yA=tA=nA+33554432|0,eA=BA=tA>>>0<33554432?BA+1|0:BA,nA=bA,bA=(67108863&BA)<<6|tA>>>26,BA=(BA>>26)+g|0,BA=(nA=nA+bA|0)>>>0<bA>>>0?BA+1|0:BA,rA=g=(bA=nA)+16777216|0,BA=I+(tA=(nA=g>>>0<16777216?BA+1|0:BA)>>25)|0,BA=(g=(nA=(33554431&nA)<<7|g>>>25)+cA|0)>>>0<nA>>>0?BA+1|0:BA,FA=g=(I=g)+33554432|0,g=BA=g>>>0<33554432?BA+1|0:BA,BA=-67108864&FA,t[CA+24>>2]=I-BA,cA=CA,I=CI(e,c,q,m),BA=l,tA=CI(r,a,y,i),nA=l+BA|0,nA=(I=tA+I|0)>>>0<tA>>>0?nA+1|0:nA,tA=CI(_,Q,QA,u),BA=l+nA|0,BA=(I=tA+I|0)>>>0<tA>>>0?BA+1|0:BA,nA=I,CA=I=o(lA,19),tA=CI(I,lA=I>>31,V,Y),BA=l+BA|0,BA=(I=nA+tA|0)>>>0<tA>>>0?BA+1|0:BA,tA=I,gA=I=o(uA,19),I=tA+(nA=CI(h,C,I,O=I>>31))|0,tA=l+BA|0,tA=I>>>0<nA>>>0?tA+1|0:tA,nA=CI(W,H,j,R),BA=l+tA|0,BA=(I=nA+I|0)>>>0<nA>>>0?BA+1|0:BA,tA=CI(E,B,N,b),nA=l+BA|0,nA=(I=tA+I|0)>>>0<tA>>>0?nA+1|0:nA,tA=CI(D,v,J,k),BA=l+nA|0,BA=(I=tA+I|0)>>>0<tA>>>0?BA+1|0:BA,tA=CI(DA,vA,s,n),BA=l+BA|0,BA=(I=tA+I|0)>>>0<tA>>>0?BA+1|0:BA,nA=CI(f,p,T,F),tA=l+BA|0,iA=I=nA+I|0,I=I>>>0<nA>>>0?tA+1|0:tA,BA=CI(_,Q,e,c),nA=l,tA=(uA=CI(r,a,_A,M))+BA|0,BA=l+nA|0,BA=tA>>>0<uA>>>0?BA+1|0:BA,nA=tA,uA=tA=o(QA,19),tA=nA+(QA=CI(tA,dA=tA>>31,EA,x))|0,nA=l+BA|0,nA=tA>>>0<QA>>>0?nA+1|0:nA,QA=CI(h,C,CA,lA),BA=l+nA|0,BA=(tA=QA+tA|0)>>>0<QA>>>0?BA+1|0:BA,nA=CI(gA,O,hA,P),BA=l+BA|0,BA=(tA=nA+tA|0)>>>0<nA>>>0?BA+1|0:BA,nA=(QA=CI(E,B,j,R))+tA|0,tA=l+BA|0,tA=nA>>>0<QA>>>0?tA+1|0:tA,QA=CI(N,b,oA,S),BA=l+tA|0,BA=(nA=QA+nA|0)>>>0<QA>>>0?BA+1|0:BA,tA=(QA=CI(s,n,D,v))+nA|0,nA=l+BA|0,nA=tA>>>0<QA>>>0?nA+1|0:nA,QA=CI(DA,vA,pA,U),BA=l+nA|0,BA=(tA=QA+tA|0)>>>0<QA>>>0?BA+1|0:BA,nA=CI(f,p,y,i),BA=l+BA|0,GA=tA=nA+tA|0,QA=tA>>>0<nA>>>0?BA+1|0:BA,BA=CI(BA=o(e,19),BA>>31,V,Y),tA=l,nA=CI(r,a,_,Q),tA=l+tA|0,tA=(BA=nA+BA|0)>>>0<nA>>>0?tA+1|0:tA,nA=(kA=CI(h,C,uA,dA))+BA|0,BA=l+tA|0,tA=(CA=CI(CA,lA,W,H))+nA|0,nA=l+(nA>>>0<kA>>>0?BA+1|0:BA)|0,nA=tA>>>0<CA>>>0?nA+1|0:nA,CA=CI(E,B,gA,O),BA=l+nA|0,BA=(tA=CA+tA|0)>>>0<CA>>>0?BA+1|0:BA,nA=CI(J,k,j,R),BA=l+BA|0,BA=(tA=nA+tA|0)>>>0<nA>>>0?BA+1|0:BA,nA=(CA=CI(s,n,N,b))+tA|0,tA=l+BA|0,tA=nA>>>0<CA>>>0?tA+1|0:tA,CA=CI(D,v,T,F),BA=l+tA|0,BA=(nA=CA+nA|0)>>>0<CA>>>0?BA+1|0:BA,tA=(CA=CI(DA,vA,y,i))+nA|0,nA=l+BA|0,nA=tA>>>0<CA>>>0?nA+1|0:nA,CA=CI(f,p,q,m),BA=l+nA|0,BA=(tA=CA+tA|0)>>>0<CA>>>0?BA+1|0:BA,CA=tA,kA=BA,lA=tA=tA+33554432|0,uA=BA=tA>>>0<33554432?BA+1|0:BA,dA=(67108863&BA)<<6|tA>>>26,tA=(nA=BA>>26)+QA|0,QA=BA=dA+GA|0,nA=iA,BA=BA>>>0<dA>>>0?tA+1|0:tA,aA=tA=QA+16777216|0,iA=(33554431&(BA=tA>>>0<16777216?BA+1|0:BA))<<7|tA>>>25,BA=(BA>>25)+I|0,BA=(tA=nA+iA|0)>>>0<iA>>>0?BA+1|0:BA,dA=I=tA+33554432|0,I=BA=I>>>0<33554432?BA+1|0:BA,BA=-67108864&dA,t[cA+8>>2]=tA-BA,iA=cA,BA=CI(E,B,e,c),nA=l,tA=(cA=CI(r,a,hA,P))+BA|0,BA=l+nA|0,BA=tA>>>0<cA>>>0?BA+1|0:BA,nA=CI(K,u,oA,S),BA=l+BA|0,BA=(tA=nA+tA|0)>>>0<nA>>>0?BA+1|0:BA,nA=CI(s,n,L,w),BA=l+BA|0,BA=(tA=nA+tA|0)>>>0<nA>>>0?BA+1|0:BA,cA=CI(Z,d,pA,U),nA=l+BA|0,nA=(tA=cA+tA|0)>>>0<cA>>>0?nA+1|0:nA,BA=(cA=CI(y,i,z,G))+tA|0,tA=l+nA|0,tA=BA>>>0<cA>>>0?tA+1|0:tA,nA=(cA=CI(_A,M,$,X))+BA|0,BA=l+tA|0,BA=nA>>>0<cA>>>0?BA+1|0:BA,tA=nA,nA=CI(_,Q,cA=wA,GA=cA>>31),BA=l+BA|0,BA=(tA=tA+nA|0)>>>0<nA>>>0?BA+1|0:BA,nA=CI(DA,vA,EA,x),BA=l+BA|0,BA=(tA=nA+tA|0)>>>0<nA>>>0?BA+1|0:BA,wA=CI(f,p,h,C),nA=l+BA|0,nA=(tA=wA+tA|0)>>>0<wA>>>0?nA+1|0:nA,BA=g>>26,g=(wA=(67108863&g)<<6|FA>>>26)+tA|0,tA=BA+nA|0,BA=tA=g>>>0<wA>>>0?tA+1|0:tA,FA=g=(nA=g)+16777216|0,g=BA=g>>>0<16777216?BA+1|0:BA,BA=-33554432&FA,t[iA+28>>2]=nA-BA,wA=iA,BA=CI(y,i,e,c),tA=l,iA=CI(r,a,pA,U),nA=l+tA|0,nA=(BA=iA+BA|0)>>>0<iA>>>0?nA+1|0:nA,iA=CI(K,u,_A,M),tA=l+nA|0,tA=(BA=iA+BA|0)>>>0<iA>>>0?tA+1|0:tA,nA=(iA=CI(_,Q,L,w))+BA|0,BA=l+tA|0,BA=nA>>>0<iA>>>0?BA+1|0:BA,tA=nA,nA=CI(gA,O,EA,x),BA=l+BA|0,BA=(tA=tA+nA|0)>>>0<nA>>>0?BA+1|0:BA,nA=CI(h,C,j,R),BA=l+BA|0,BA=(tA=nA+tA|0)>>>0<nA>>>0?BA+1|0:BA,iA=CI(N,b,hA,P),nA=l+BA|0,nA=(tA=iA+tA|0)>>>0<iA>>>0?nA+1|0:nA,BA=(iA=CI(E,B,D,v))+tA|0,tA=l+nA|0,tA=BA>>>0<iA>>>0?tA+1|0:tA,nA=(iA=CI(DA,vA,oA,S))+BA|0,BA=l+tA|0,BA=nA>>>0<iA>>>0?BA+1|0:BA,tA=nA,nA=CI(f,p,s,n),BA=l+BA|0,iA=tA=tA+nA|0,BA=(BA=tA>>>0<nA>>>0?BA+1|0:BA)+(tA=I>>26)|0,BA=(I=iA+(nA=(67108863&I)<<6|dA>>>26)|0)>>>0<nA>>>0?BA+1|0:BA,DA=I=(tA=I)+16777216|0,I=nA=I>>>0<16777216?BA+1|0:BA,BA=-33554432&DA,t[wA+12>>2]=tA-BA,BA=CI(e,c,W,H),nA=l,tA=(iA=CI(r,a,h,C))+BA|0,BA=l+nA|0,BA=tA>>>0<iA>>>0?BA+1|0:BA,nA=CI(E,B,K,u),BA=l+BA|0,BA=(tA=nA+tA|0)>>>0<nA>>>0?BA+1|0:BA,iA=CI(L,w,J,k),nA=l+BA|0,nA=(tA=iA+tA|0)>>>0<iA>>>0?nA+1|0:nA,BA=(iA=CI(s,n,Z,d))+tA|0,tA=l+nA|0,tA=BA>>>0<iA>>>0?tA+1|0:tA,nA=(iA=CI(T,F,z,G))+BA|0,BA=l+tA|0,BA=nA>>>0<iA>>>0?BA+1|0:BA,tA=nA,nA=CI(y,i,$,X),BA=l+BA|0,BA=(tA=tA+nA|0)>>>0<nA>>>0?BA+1|0:BA,nA=CI(cA,GA,q,m),BA=l+BA|0,BA=(tA=nA+tA|0)>>>0<nA>>>0?BA+1|0:BA,fA=CI(_,Q,iA=fA,vA=iA>>31),nA=l+BA|0,nA=(tA=fA+tA|0)>>>0<fA>>>0?nA+1|0:nA,BA=(fA=CI(f,p,V,Y))+tA|0,tA=l+nA|0,tA=BA>>>0<fA>>>0?tA+1|0:tA,fA=BA,BA=(BA=g>>25)+tA|0,BA=(g=fA+(nA=(33554431&g)<<7|FA>>>25)|0)>>>0<nA>>>0?BA+1|0:BA,fA=g=(tA=g)+33554432|0,g=BA=g>>>0<33554432?BA+1|0:BA,BA=-67108864&fA,t[wA+32>>2]=tA-BA,nA=tA=sA-(BA=-67108864&yA)|0,BA=(BA=IA-((BA>>>0>sA>>>0)+eA|0)|0)+(tA=I>>25)|0,BA=(I=nA+(sA=(33554431&I)<<7|DA>>>25)|0)>>>0<sA>>>0?BA+1|0:BA,(tA=I+33554432|0)>>>0<33554432&&(BA=BA+1|0),BA=(bA-(-33554432&rA)|0)+((67108863&BA)<<6|tA>>>26)|0,t[A+20>>2]=BA,BA=-67108864&tA,t[A+16>>2]=I-BA,BA=CI(h,C,e,c),nA=l,tA=(EA=CI(r,a,EA,x))+BA|0,BA=l+nA|0,BA=tA>>>0<EA>>>0?BA+1|0:BA,nA=(EA=CI(K,u,hA,P))+tA|0,tA=l+BA|0,tA=nA>>>0<EA>>>0?tA+1|0:tA,BA=(EA=CI(E,B,L,w))+nA|0,nA=l+tA|0,tA=(oA=CI(Z,d,oA,S))+BA|0,BA=l+(BA>>>0<EA>>>0?nA+1|0:nA)|0,BA=tA>>>0<oA>>>0?BA+1|0:BA,nA=CI(s,n,z,G),BA=l+BA|0,BA=(tA=nA+tA|0)>>>0<nA>>>0?BA+1|0:BA,nA=CI(pA,U,$,X),BA=l+BA|0,BA=(tA=nA+tA|0)>>>0<nA>>>0?BA+1|0:BA,nA=(oA=CI(y,i,cA,GA))+tA|0,tA=l+BA|0,tA=nA>>>0<oA>>>0?tA+1|0:tA,BA=(oA=CI(iA,vA,_A,M))+nA|0,nA=l+tA|0,nA=BA>>>0<oA>>>0?nA+1|0:nA,tA=(oA=CI(_,Q,AA,AA>>31))+BA|0,BA=l+nA|0,I=tA,BA=(BA=tA>>>0<oA>>>0?BA+1|0:BA)+(tA=g>>26)|0,BA=(g=I+(nA=(67108863&g)<<6|fA>>>26)|0)>>>0<nA>>>0?BA+1|0:BA,BA=(g=(I=g)+16777216|0)>>>0<16777216?BA+1|0:BA,g=-33554432&(tA=g),t[A+36>>2]=I-g,nA=QA-(-33554432&aA)|0,oA=CA-(g=-67108864&lA)|0,pA=kA-((g>>>0>CA>>>0)+uA|0)|0,BA=CI((33554431&(g=BA))<<7|tA>>>25,BA>>=25,19,0),tA=l+pA|0,BA=tA=(g=BA+oA|0)>>>0<BA>>>0?tA+1|0:tA,I=((67108863&(BA=(I=g+33554432|0)>>>0<33554432?BA+1|0:BA))<<6|(tA=I)>>>26)+nA|0,t[A+4>>2]=I,I=A,A=-67108864&tA,t[I>>2]=g-A}function k(A,g){var I,e,r,a,B,n,i,Q,C,c,E,s,y,_,h,f,p,u,w,D,v,d,b,k,F,G,m,Y,H,S,U,M,N,x,P,R,J,K=0,L=0,T=0,q=0,X=0,V=0,W=0,j=0,O=0,Z=0,z=0,$=0,AA=0,gA=0,IA=0,eA=0,rA=0;V=A,c=L=(K=t[g+12>>2])<<1,j=K,K=CI(L,B=L>>31,K,k=K>>31),q=l,L=K,I=K=t[g+16>>2],n=K>>31,p=K=(Z=t[g+8>>2])<<1,X=CI(I,n,K,y=K>>31),K=l+q|0,K=(L=L+X|0)>>>0<X>>>0?K+1|0:K,q=L,_=L=(X=t[g+20>>2])<<1,h=L>>31,i=L=(z=t[g+4>>2])<<1,T=CI(_,h,L,e=L>>31),L=l+K|0,L=(q=q+T|0)>>>0<T>>>0?L+1|0:L,D=K=W=t[g+24>>2],E=K>>31,Q=K=(eA=t[g>>2])<<1,T=CI(W,E,K,r=K>>31),K=l+L|0,K=(q=T+q|0)>>>0<T>>>0?K+1|0:K,O=q,L=t[g+32>>2],f=q=o(L,19),F=L,q=CI(q,s=q>>31,L,v=L>>31),K=l+K|0,K=(L=O+q|0)>>>0<q>>>0?K+1|0:K,O=L,AA=t[g+36>>2],C=L=o(AA,38),a=L>>31,S=g=(q=t[g+28>>2])<<1,T=CI(L,a,g,G=g>>31),g=l+K|0,gA=L=O+T|0,$=L>>>0<T>>>0?g+1|0:g,g=CI(i,e,I,n),K=l,L=CI(p,y,j,k),K=l+K|0,K=(g=L+g|0)>>>0<L>>>0?K+1|0:K,U=X,T=CI(X,d=X>>31,Q,r),L=l+K|0,L=(g=T+g|0)>>>0<T>>>0?L+1|0:L,T=CI(f,s,S,G),K=l+L|0,K=(g=T+g|0)>>>0<T>>>0?K+1|0:K,L=CI(C,a,W,E),K=l+K|0,O=g=L+g|0,rA=g>>>0<L>>>0?K+1|0:K,g=CI(i,e,c,B),L=l,K=(Z=CI(T=Z,u=T>>31,T,u))+g|0,g=l+L|0,g=K>>>0<Z>>>0?g+1|0:g,L=(Z=CI(Q,r,I,n))+K|0,K=l+g|0,K=L>>>0<Z>>>0?K+1|0:K,b=g=o(q,38),Z=q,g=(q=CI(g,w=g>>31,q,m=q>>31))+L|0,L=l+K|0,L=g>>>0<q>>>0?L+1|0:L,g=(K=g)+(q=CI(f,s,g=W<<1,g>>31))|0,K=l+L|0,K=g>>>0<q>>>0?K+1|0:K,L=CI(C,a,_,h),K=l+K|0,Y=g=L+g|0,x=K=g>>>0<L>>>0?K+1|0:K,g=K,M=K=Y+33554432|0,P=g=K>>>0<33554432?g+1|0:g,K=(K=g>>26)+rA|0,rA=g=(L=(67108863&g)<<6|M>>>26)+O|0,L=g>>>0<L>>>0?K+1|0:K,R=g=g+16777216|0,K=(K=(L=g>>>0<16777216?L+1|0:L)>>25)+$|0,K=(g=(L=(33554431&L)<<7|g>>>25)+gA|0)>>>0<L>>>0?K+1|0:K,L=g,g=K,O=K=L+33554432|0,q=g=K>>>0<33554432?g+1|0:g,g=-67108864&K,t[V+24>>2]=L-g,g=CI(Q,r,T,u),K=l,z=CI(i,e,V=z,IA=V>>31),L=l+K|0,L=(g=z+g|0)>>>0<z>>>0?L+1|0:L,K=g,z=g=o(W,19),g=K+(W=CI(g,gA=g>>31,W,E))|0,K=l+L|0,K=g>>>0<W>>>0?K+1|0:K,L=(W=CI(_,h,b,w))+g|0,g=l+K|0,g=L>>>0<W>>>0?g+1|0:g,N=K=I<<1,W=CI(f,s,K,H=K>>31),K=l+g|0,K=(L=W+L|0)>>>0<W>>>0?K+1|0:K,g=L,L=CI(C,a,c,B),K=l+K|0,$=g=g+L|0,W=g>>>0<L>>>0?K+1|0:K,g=CI(_,h,z,gA),K=l,V=CI(Q,r,V,IA),L=l+K|0,L=(g=V+g|0)>>>0<V>>>0?L+1|0:L,V=CI(I,n,b,w),K=l+L|0,K=(g=V+g|0)>>>0<V>>>0?K+1|0:K,L=(V=CI(f,s,c,B))+g|0,g=l+K|0,g=L>>>0<V>>>0?g+1|0:g,V=CI(C,a,T,u),K=l+g|0,IA=L=V+L|0,V=L>>>0<V>>>0?K+1|0:K,g=CI(g=o(X,38),g>>31,X,d),K=l,X=g,L=CI(g=eA,L=g>>31,g,L),K=l+K|0,K=(g=X+L|0)>>>0<L>>>0?K+1|0:K,X=CI(z,gA,N,H),L=l+K|0,L=(g=X+g|0)>>>0<X>>>0?L+1|0:L,X=CI(c,B,b,w),K=l+L|0,K=(g=X+g|0)>>>0<X>>>0?K+1|0:K,L=(X=CI(f,s,p,y))+g|0,g=l+K|0,g=L>>>0<X>>>0?g+1|0:g,X=CI(i,e,C,a),K=l+g|0,z=L=X+L|0,gA=K=L>>>0<X>>>0?K+1|0:K,eA=g=L+33554432|0,J=K=g>>>0<33554432?K+1|0:K,L=(g=K>>26)+V|0,V=K=(X=(67108863&K)<<6|eA>>>26)+IA|0,K=K>>>0<X>>>0?L+1|0:L,IA=g=V+16777216|0,X=(33554431&(K=g>>>0<16777216?K+1|0:K))<<7|g>>>25,K=(K>>25)+W|0,K=(L=X+$|0)>>>0<X>>>0?K+1|0:K,W=L=(g=L)+33554432|0,X=K=L>>>0<33554432?K+1|0:K,K=-67108864&L,t[A+8>>2]=g-K,g=CI(p,y,U,d),K=l,L=CI(I,n,c,B),K=l+K|0,K=(g=L+g|0)>>>0<L>>>0?K+1|0:K,L=CI(i,e,D,E),K=l+K|0,K=(g=L+g|0)>>>0<L>>>0?K+1|0:K,L=CI(Q,r,Z,m),K=l+K|0,K=(g=L+g|0)>>>0<L>>>0?K+1|0:K,L=($=CI(C,a,F,v))+g|0,g=l+K|0,K=q>>26,q=(O=(67108863&q)<<6|O>>>26)+L|0,L=(g=L>>>0<$>>>0?g+1|0:g)+K|0,K=L=q>>>0<O>>>0?L+1|0:L,O=L=(g=q)+16777216|0,q=K=L>>>0<16777216?K+1|0:K,K=-33554432&L,t[A+28>>2]=g-K,g=CI(Q,r,j,k),L=l,K=(T=CI(i,e,T,u))+g|0,g=l+L|0,g=K>>>0<T>>>0?g+1|0:g,T=CI(D,E,b,w),L=l+g|0,L=(K=T+K|0)>>>0<T>>>0?L+1|0:L,g=(T=CI(f,s,_,h))+K|0,K=l+L|0,K=g>>>0<T>>>0?K+1|0:K,L=CI(C,a,I,n),K=l+K|0,K=(K=(g=L+g|0)>>>0<L>>>0?K+1|0:K)+(L=X>>26)|0,L=g=(X=(67108863&X)<<6|W>>>26)+g|0,g=K=g>>>0<X>>>0?K+1|0:K,W=K=L+16777216|0,X=g=K>>>0<16777216?g+1|0:g,g=-33554432&K,t[A+12>>2]=L-g,T=A,g=CI(D,E,p,y),K=l,L=CI(I,n,I,n),K=l+K|0,K=(g=L+g|0)>>>0<L>>>0?K+1|0:K,L=CI(c,B,_,h),K=l+K|0,K=(g=L+g|0)>>>0<L>>>0?K+1|0:K,L=(j=CI(i,e,S,G))+g|0,g=l+K|0,g=L>>>0<j>>>0?g+1|0:g,K=(j=CI(Q,r,F,v))+L|0,L=l+g|0,L=K>>>0<j>>>0?L+1|0:L,g=(AA=CI(C,a,j=AA,$=j>>31))+K|0,K=l+L|0,K=g>>>0<AA>>>0?K+1|0:K,A=g,K=(g=q>>25)+K|0,K=(L=A+(q=(33554431&q)<<7|O>>>25)|0)>>>0<q>>>0?K+1|0:K,AA=L=(g=L)+33554432|0,q=K=L>>>0<33554432?K+1|0:K,K=-67108864&L,t[T+32>>2]=g-K,K=X>>25,L=(X=(33554431&X)<<7|W>>>25)+(Y-(g=-67108864&M)|0)|0,g=K+(x-((g>>>0>Y>>>0)+P|0)|0)|0,K=g=L>>>0<X>>>0?g+1|0:g,X=g=L+33554432|0,g=((67108863&(K=g>>>0<33554432?K+1|0:K))<<6|g>>>26)+(rA=rA-(-33554432&R)|0)|0,t[T+20>>2]=g,g=-67108864&X,t[T+16>>2]=L-g,X=T,g=CI(c,B,D,E),L=l,K=(T=CI(U,d,N,H))+g|0,g=l+L|0,g=K>>>0<T>>>0?g+1|0:g,L=(T=CI(p,y,Z,m))+K|0,K=l+g|0,K=L>>>0<T>>>0?K+1|0:K,g=(T=CI(i,e,F,v))+L|0,L=l+K|0,L=g>>>0<T>>>0?L+1|0:L,T=CI(Q,r,j,$),K=l+L|0,L=g=T+g|0,K=(g=g>>>0<T>>>0?K+1|0:K)+(K=q>>26)|0,K=(L=(q=(67108863&q)<<6|AA>>>26)+L|0)>>>0<q>>>0?K+1|0:K,q=L,g=K,g=(K=L+16777216|0)>>>0<16777216?g+1|0:g,L=-33554432&K,t[X+36>>2]=q-L,T=CI((33554431&g)<<7|K>>>25,g>>25,19,0),K=l+(gA-(((L=-67108864&eA)>>>0>z>>>0)+J|0)|0)|0,L=g=T+(z-L|0)|0,g=g>>>0<T>>>0?K+1|0:K,g=(V-(-33554432&IA)|0)+((67108863&(g=(K=L+33554432|0)>>>0<33554432?g+1|0:g))<<6|K>>>26)|0,t[X+4>>2]=g,A=-67108864&K,t[X>>2]=L-A}function F(A,g,I){var e,r=0,a=0,B=0,n=0,i=0,o=0,Q=0,C=0,c=0,E=0,s=0,y=0,_=0,h=0,p=0,u=0,w=0,D=0,v=0,d=0,b=0,k=0,F=0,G=0,m=0,Y=0,H=0,S=0,U=0,M=0,N=0,x=0,P=0,R=0,J=0,K=0,L=0,T=0,q=0,X=0,V=0,W=0,j=0,O=0,Z=0,z=0,$=0,AA=0,gA=0,IA=0,eA=0,rA=0,aA=0;for(f=e=f-2048|0,FI(e+1024|0,g),rg(e+1024|0,A),FI(e,e+1024|0),rg(e,I),g=0;n=t[(r=E=(e+1024|0)+(64|(A=D<<7))|0)>>2],C=t[(B=c=(e+1024|0)+(96|A)|0)>>2],B=t[B+4>>2],i=n,h=t[r+4>>2],Q=C,r=A+(e+1024|0)|0,o=t[(n=(e+1024|0)+(32|A)|0)>>2],C=t[n+4>>2],Q=uI(Q^(w=og(t[r>>2],t[r+4>>2],o,C)),(a=B)^(B=l),32),C=uI(i=(_=og(i,h,Q,a=l))^o,C^(o=l),24),x=uI((m=og(w,i=B,C,B=l))^Q,(y=l)^a,16),B=uI(C^(P=og(_,o,x,S=l)),(U=l)^B,63),C=l,Q=t[(o=(e+1024|0)+(104|A)|0)>>2],_=t[o+4>>2],k=t[(a=w=(e+1024|0)+(72|A)|0)>>2],s=t[a+4>>2],v=uI((v=Q)^(d=og(u=t[(a=Q=(e+1024|0)+(8|A)|0)>>2],h=t[a+4>>2],H=t[(a=(e+1024|0)+(40|A)|0)>>2],i=t[a+4>>2])),(h=_)^(_=l),32),i=uI(s=(u=og(k,s,v,h=l))^H,i^(H=l),24),X=uI((M=og(d,s=_,i,_=l))^v,(R=l)^h,16),_=uI(i^(Z=og(u,H,X,j=l)),(z=l)^_,63),i=l,v=t[(d=H=(e+1024|0)+(112|A)|0)>>2],u=t[d+4>>2],Y=t[(d=(e+1024|0)+(80|A)|0)>>2],p=t[d+4>>2],k=v,v=(e+1024|0)+(16|A)|0,F=t[(G=h=(e+1024|0)+(48|A)|0)>>2],G=t[G+4>>2],k=uI(k^(N=og(t[v>>2],t[v+4>>2],F,G)),(s=u)^(u=l),32),G=uI(p=(s=og(Y,p,k,b=l))^F,G^(F=l),24),gA=uI(($=og(N,p=u,G,u=l))^k,(AA=l)^b,16),u=uI(G^(V=og(s,F,gA,IA=l)),(T=l)^u,63),G=l,k=t[(F=(e+1024|0)+(120|A)|0)>>2],b=t[F+4>>2],eA=t[(s=N=(e+1024|0)+(88|A)|0)>>2],q=t[s+4>>2],K=uI((Y=k)^(W=og(O=t[(s=k=(e+1024|0)+(24|A)|0)>>2],p=t[s+4>>2],J=t[(A=(e+1024|0)+(56|A)|0)>>2],s=t[A+4>>2])),(p=b)^(b=l),32),s=uI(p=(q=og(eA,q,K,L=l))^J,s^(J=l),24),Y=J,K=uI((J=og(W,p=b,s,b=l))^K,(W=l)^L,16),b=uI(s^(q=og(q,Y,K,L=l)),(O=l)^b,63),s=l,Y=V,p=T,V=uI(K^(m=og(m,y,_,i)),L^(y=l),32),_=uI((K=og(Y,p,V,T=l))^_,(L=l)^i,24),i=og(i=m,y,_,m=l),y=l,t[r>>2]=i,t[r+4>>2]=y,r=uI(i^V,T^y,16),i=l,t[F>>2]=r,t[F+4>>2]=i,r=og(K,L,r,i),i=l,t[d>>2]=r,t[d+4>>2]=i,rA=a,aA=uI(r^_,i^m,63),t[rA>>2]=aA,t[a+4>>2]=l,y=u,i=uI(x^(a=og(M,R,u,G)),S^(_=l),32),r=uI(y^(u=og(q,O,i,d=l)),(r=G)^(G=l),24),a=og(a,y=_,r,_=l),F=l,t[Q>>2]=a,t[Q+4>>2]=F,Q=uI(a^i,d^F,16),a=l,t[c>>2]=Q,t[c+4>>2]=a,c=og(u,G,Q,a),t[N>>2]=c,Q=l,t[N+4>>2]=Q,rA=h,aA=uI(r^c,Q^_,63),t[rA>>2]=aA,t[h+4>>2]=l,r=og($,AA,b,s),i=og(P,U,a=uI(X^r,j^(Q=l),32),_=l),r=og(r,h=Q,c=uI(i^b,(d=l)^s,24),Q=l),u=h=l,t[v>>2]=r,t[v+4>>2]=u,r=uI(r^a,_^u,16),a=l,t[o>>2]=r,t[o+4>>2]=a,r=og(i,d,r,a),t[E>>2]=r,a=E,E=l,t[a+4>>2]=E,rA=A,aA=uI(r^c,E^Q,63),t[rA>>2]=aA,t[A+4>>2]=l,a=B,r=uI(gA^(E=og(J,W,B,C)),IA^(c=l),32),A=uI(a^(o=og(Z,z,r,B=l)),(A=C)^(C=l),24),E=og(E,a=c,A,c=l),a=Q=l,t[k>>2]=E,t[k+4>>2]=a,E=uI(r^E,B^a,16),r=l,t[H>>2]=E,t[H+4>>2]=r,E=og(o,C,E,r),t[w>>2]=E,r=l,t[w+4>>2]=r,rA=n,aA=uI(A^E,r^c,63),t[rA>>2]=aA,t[n+4>>2]=l,8!=(0|(D=D+1|0)););for(;D=t[768+(A=(c=g<<4)+(e+1024|0)|0)>>2],E=t[A+772>>2],i=t[(r=A+512|0)>>2],Q=t[r+4>>2],a=D,D=t[A+256>>2],r=t[A+260>>2],B=uI(a^(n=og(t[A>>2],t[A+4>>2],D,r)),(B=E)^(E=l),32),r=uI(a=(o=og(i,Q,B,C=l))^D,r^(D=l),24),h=D,_=uI((Q=og(n,E,r,D=l))^B,(a=l)^C,16),D=uI(r^(H=og(o,h,_,i=l)),(d=l)^D,63),E=l,r=t[A+780>>2],u=t[A+520>>2],y=t[A+524>>2],o=uI((v=t[A+776>>2])^(C=og(h=t[(n=c=(e+1024|0)+(8|c)|0)>>2],C=t[n+4>>2],n=t[A+264>>2],B=t[A+268>>2])),(h=r)^(r=l),32),B=uI(h=(v=og(u,y,o,w=l))^n,B^(n=l),24),y=v,u=uI((v=og(C,h=r,B,r=l))^o,(h=l)^w,16),r=uI(B^(F=og(y,n,u,G=l)),(N=l)^r,63),n=l,B=t[A+900>>2],p=t[A+640>>2],m=t[A+644>>2],s=t[A+896>>2],C=t[A+384>>2],o=t[A+388>>2],k=uI(s^(w=og(t[A+128>>2],t[A+132>>2],C,o)),(y=B)^(B=l),32),o=uI(y=(s=og(p,m,k,b=l))^C,o^(C=l),24),p=s,s=uI((s=k)^(k=og(w,y=B,o,B=l)),(y=b)^(b=l),16),B=uI(o^(y=og(p,C,s,m=l)),(x=l)^B,63),C=l,o=t[A+908>>2],T=t[A+648>>2],j=t[A+652>>2],Y=t[A+904>>2],w=t[A+392>>2],S=t[A+396>>2],U=uI(Y^(P=og(t[A+136>>2],t[A+140>>2],w,S)),(p=o)^(o=l),32),Y=S=uI(p=(R=og(T,j,U,M=l))^w,S^(w=l),24),U=uI((S=og(P,p=o,S,o=l))^U,(P=l)^M,16),o=uI(Y^(R=og(R,w,U,M=l)),(X=l)^o,63),w=l,Y=y,p=x,y=uI(U^(Q=og(Q,a,r,n)),M^(a=l),32),r=uI((U=og(Y,p,y,x=l))^r,(M=l)^n,24),n=og(n=Q,a,r,Q=l),a=l,t[A>>2]=n,t[A+4>>2]=a,n=uI(n^y,x^a,16),a=l,t[A+904>>2]=n,t[A+908>>2]=a,n=og(U,M,n,a),a=l,t[A+640>>2]=n,t[A+644>>2]=a,rA=A,aA=uI(r^n,Q^a,63),t[rA+264>>2]=aA,t[A+268>>2]=l,y=B,n=og(v,h,B,C),_=og(R,X,Q=uI(_^n,i^(B=l),32),a=l),n=og(n,i=B,r=uI(y^_,(r=C)^(C=l),24),B=l),i=l,t[c>>2]=n,t[c+4>>2]=i,c=uI(n^Q,a^i,16),n=l,t[A+768>>2]=c,t[A+772>>2]=n,c=og(_,C,c,n),t[A+648>>2]=c,n=l,t[A+652>>2]=n,rA=A,aA=uI(r^c,n^B,63),t[rA+384>>2]=aA,t[A+388>>2]=l,Q=o,B=uI(u^(r=og(k,b,o,w)),G^(n=l),32),c=uI(Q^(o=og(H,d,B,C=l)),(a=w)^(w=l),24),r=og(r,a=n,c,n=l),a=Q=l,t[A+128>>2]=r,t[A+132>>2]=a,r=uI(r^B,a^C,16),B=l,t[A+776>>2]=r,t[A+780>>2]=B,r=og(o,w,r,B),t[A+512>>2]=r,B=l,t[A+516>>2]=B,rA=A,aA=uI(r^c,n^B,63),t[rA+392>>2]=aA,t[A+396>>2]=l,c=og(S,P,D,E),C=og(F,N,n=uI(s^c,m^(r=l),32),B=l),E=og(a=c,r,D=uI(C^D,(o=l)^E,24),c=l),r=l,t[A+136>>2]=E,t[A+140>>2]=r,E=uI(n^E,B^r,16),r=l,t[A+896>>2]=E,t[A+900>>2]=r,E=og(C,o,E,r),t[A+520>>2]=E,r=l,t[A+524>>2]=r,rA=A,aA=uI(E^D,r^c,63),t[rA+256>>2]=aA,t[A+260>>2]=l,8!=(0|(g=g+1|0)););FI(I,e),rg(I,e+1024|0),f=e+2048|0}function G(A,g,I){var e,r=0,a=0,B=0,n=0,i=0,o=0,Q=0,C=0,c=0,E=0,s=0,y=0,_=0,h=0,p=0,u=0,w=0,D=0,v=0,d=0,b=0,k=0,F=0,G=0,m=0,Y=0,H=0,S=0,U=0,M=0,N=0,x=0,P=0,R=0,J=0,K=0,L=0,T=0,q=0,X=0,V=0,W=0,j=0,O=0,Z=0,z=0,$=0,AA=0,gA=0,IA=0,eA=0,rA=0,aA=0;for(f=e=f-2048|0,FI(e+1024|0,g),rg(e+1024|0,A),FI(e,e+1024|0),g=0;n=t[(r=E=(e+1024|0)+(64|(A=D<<7))|0)>>2],C=t[(B=c=(e+1024|0)+(96|A)|0)>>2],B=t[B+4>>2],i=n,h=t[r+4>>2],Q=C,r=A+(e+1024|0)|0,o=t[(n=(e+1024|0)+(32|A)|0)>>2],C=t[n+4>>2],Q=uI(Q^(w=og(t[r>>2],t[r+4>>2],o,C)),(a=B)^(B=l),32),C=uI(i=(_=og(i,h,Q,a=l))^o,C^(o=l),24),x=uI((m=og(w,i=B,C,B=l))^Q,(y=l)^a,16),B=uI(C^(P=og(_,o,x,S=l)),(U=l)^B,63),C=l,Q=t[(o=(e+1024|0)+(104|A)|0)>>2],_=t[o+4>>2],k=t[(a=w=(e+1024|0)+(72|A)|0)>>2],s=t[a+4>>2],v=uI((v=Q)^(d=og(u=t[(a=Q=(e+1024|0)+(8|A)|0)>>2],h=t[a+4>>2],H=t[(a=(e+1024|0)+(40|A)|0)>>2],i=t[a+4>>2])),(h=_)^(_=l),32),i=uI(s=(u=og(k,s,v,h=l))^H,i^(H=l),24),X=uI((M=og(d,s=_,i,_=l))^v,(R=l)^h,16),_=uI(i^(Z=og(u,H,X,j=l)),(z=l)^_,63),i=l,v=t[(d=H=(e+1024|0)+(112|A)|0)>>2],u=t[d+4>>2],Y=t[(d=(e+1024|0)+(80|A)|0)>>2],p=t[d+4>>2],k=v,v=(e+1024|0)+(16|A)|0,F=t[(G=h=(e+1024|0)+(48|A)|0)>>2],G=t[G+4>>2],k=uI(k^(N=og(t[v>>2],t[v+4>>2],F,G)),(s=u)^(u=l),32),G=uI(p=(s=og(Y,p,k,b=l))^F,G^(F=l),24),gA=uI(($=og(N,p=u,G,u=l))^k,(AA=l)^b,16),u=uI(G^(V=og(s,F,gA,IA=l)),(T=l)^u,63),G=l,k=t[(F=(e+1024|0)+(120|A)|0)>>2],b=t[F+4>>2],eA=t[(s=N=(e+1024|0)+(88|A)|0)>>2],q=t[s+4>>2],K=uI((Y=k)^(W=og(O=t[(s=k=(e+1024|0)+(24|A)|0)>>2],p=t[s+4>>2],J=t[(A=(e+1024|0)+(56|A)|0)>>2],s=t[A+4>>2])),(p=b)^(b=l),32),s=uI(p=(q=og(eA,q,K,L=l))^J,s^(J=l),24),Y=J,K=uI((J=og(W,p=b,s,b=l))^K,(W=l)^L,16),b=uI(s^(q=og(q,Y,K,L=l)),(O=l)^b,63),s=l,Y=V,p=T,V=uI(K^(m=og(m,y,_,i)),L^(y=l),32),_=uI((K=og(Y,p,V,T=l))^_,(L=l)^i,24),i=og(i=m,y,_,m=l),y=l,t[r>>2]=i,t[r+4>>2]=y,r=uI(i^V,T^y,16),i=l,t[F>>2]=r,t[F+4>>2]=i,r=og(K,L,r,i),i=l,t[d>>2]=r,t[d+4>>2]=i,rA=a,aA=uI(r^_,i^m,63),t[rA>>2]=aA,t[a+4>>2]=l,y=u,i=uI(x^(a=og(M,R,u,G)),S^(_=l),32),r=uI(y^(u=og(q,O,i,d=l)),(r=G)^(G=l),24),a=og(a,y=_,r,_=l),F=l,t[Q>>2]=a,t[Q+4>>2]=F,Q=uI(a^i,d^F,16),a=l,t[c>>2]=Q,t[c+4>>2]=a,c=og(u,G,Q,a),t[N>>2]=c,Q=l,t[N+4>>2]=Q,rA=h,aA=uI(r^c,Q^_,63),t[rA>>2]=aA,t[h+4>>2]=l,r=og($,AA,b,s),i=og(P,U,a=uI(X^r,j^(Q=l),32),_=l),r=og(r,h=Q,c=uI(i^b,(d=l)^s,24),Q=l),u=h=l,t[v>>2]=r,t[v+4>>2]=u,r=uI(r^a,_^u,16),a=l,t[o>>2]=r,t[o+4>>2]=a,r=og(i,d,r,a),t[E>>2]=r,a=E,E=l,t[a+4>>2]=E,rA=A,aA=uI(r^c,E^Q,63),t[rA>>2]=aA,t[A+4>>2]=l,a=B,r=uI(gA^(E=og(J,W,B,C)),IA^(c=l),32),A=uI(a^(o=og(Z,z,r,B=l)),(A=C)^(C=l),24),E=og(E,a=c,A,c=l),a=Q=l,t[k>>2]=E,t[k+4>>2]=a,E=uI(r^E,B^a,16),r=l,t[H>>2]=E,t[H+4>>2]=r,E=og(o,C,E,r),t[w>>2]=E,r=l,t[w+4>>2]=r,rA=n,aA=uI(A^E,r^c,63),t[rA>>2]=aA,t[n+4>>2]=l,8!=(0|(D=D+1|0)););for(;D=t[768+(A=(c=g<<4)+(e+1024|0)|0)>>2],E=t[A+772>>2],i=t[(r=A+512|0)>>2],Q=t[r+4>>2],a=D,D=t[A+256>>2],r=t[A+260>>2],B=uI(a^(n=og(t[A>>2],t[A+4>>2],D,r)),(B=E)^(E=l),32),r=uI(a=(o=og(i,Q,B,C=l))^D,r^(D=l),24),h=D,_=uI((Q=og(n,E,r,D=l))^B,(a=l)^C,16),D=uI(r^(H=og(o,h,_,i=l)),(d=l)^D,63),E=l,r=t[A+780>>2],u=t[A+520>>2],y=t[A+524>>2],o=uI((v=t[A+776>>2])^(C=og(h=t[(n=c=(e+1024|0)+(8|c)|0)>>2],C=t[n+4>>2],n=t[A+264>>2],B=t[A+268>>2])),(h=r)^(r=l),32),B=uI(h=(v=og(u,y,o,w=l))^n,B^(n=l),24),y=v,u=uI((v=og(C,h=r,B,r=l))^o,(h=l)^w,16),r=uI(B^(F=og(y,n,u,G=l)),(N=l)^r,63),n=l,B=t[A+900>>2],p=t[A+640>>2],m=t[A+644>>2],s=t[A+896>>2],C=t[A+384>>2],o=t[A+388>>2],k=uI(s^(w=og(t[A+128>>2],t[A+132>>2],C,o)),(y=B)^(B=l),32),o=uI(y=(s=og(p,m,k,b=l))^C,o^(C=l),24),p=s,s=uI((s=k)^(k=og(w,y=B,o,B=l)),(y=b)^(b=l),16),B=uI(o^(y=og(p,C,s,m=l)),(x=l)^B,63),C=l,o=t[A+908>>2],T=t[A+648>>2],j=t[A+652>>2],Y=t[A+904>>2],w=t[A+392>>2],S=t[A+396>>2],U=uI(Y^(P=og(t[A+136>>2],t[A+140>>2],w,S)),(p=o)^(o=l),32),Y=S=uI(p=(R=og(T,j,U,M=l))^w,S^(w=l),24),U=uI((S=og(P,p=o,S,o=l))^U,(P=l)^M,16),o=uI(Y^(R=og(R,w,U,M=l)),(X=l)^o,63),w=l,Y=y,p=x,y=uI(U^(Q=og(Q,a,r,n)),M^(a=l),32),r=uI((U=og(Y,p,y,x=l))^r,(M=l)^n,24),n=og(n=Q,a,r,Q=l),a=l,t[A>>2]=n,t[A+4>>2]=a,n=uI(n^y,x^a,16),a=l,t[A+904>>2]=n,t[A+908>>2]=a,n=og(U,M,n,a),a=l,t[A+640>>2]=n,t[A+644>>2]=a,rA=A,aA=uI(r^n,Q^a,63),t[rA+264>>2]=aA,t[A+268>>2]=l,y=B,n=og(v,h,B,C),_=og(R,X,Q=uI(_^n,i^(B=l),32),a=l),n=og(n,i=B,r=uI(y^_,(r=C)^(C=l),24),B=l),i=l,t[c>>2]=n,t[c+4>>2]=i,c=uI(n^Q,a^i,16),n=l,t[A+768>>2]=c,t[A+772>>2]=n,c=og(_,C,c,n),t[A+648>>2]=c,n=l,t[A+652>>2]=n,rA=A,aA=uI(r^c,n^B,63),t[rA+384>>2]=aA,t[A+388>>2]=l,Q=o,B=uI(u^(r=og(k,b,o,w)),G^(n=l),32),c=uI(Q^(o=og(H,d,B,C=l)),(a=w)^(w=l),24),r=og(r,a=n,c,n=l),a=Q=l,t[A+128>>2]=r,t[A+132>>2]=a,r=uI(r^B,a^C,16),B=l,t[A+776>>2]=r,t[A+780>>2]=B,r=og(o,w,r,B),t[A+512>>2]=r,B=l,t[A+516>>2]=B,rA=A,aA=uI(r^c,n^B,63),t[rA+392>>2]=aA,t[A+396>>2]=l,c=og(S,P,D,E),C=og(F,N,n=uI(s^c,m^(r=l),32),B=l),E=og(a=c,r,D=uI(C^D,(o=l)^E,24),c=l),r=l,t[A+136>>2]=E,t[A+140>>2]=r,E=uI(n^E,B^r,16),r=l,t[A+896>>2]=E,t[A+900>>2]=r,E=og(C,o,E,r),t[A+520>>2]=E,r=l,t[A+524>>2]=r,rA=A,aA=uI(E^D,r^c,63),t[rA+256>>2]=aA,t[A+260>>2]=l,8!=(0|(g=g+1|0)););FI(I,e),rg(I,e+1024|0),f=e+2048|0}function m(A){var g=0,I=0,e=0,r=0,a=0,B=0,n=0,o=0,Q=0;A:if(A|=0){a=(e=A-8|0)+(A=-8&(g=t[A-4>>2]))|0;g:if(!(1&g)){if(!(3&g))break A;if((e=e-(g=t[e>>2])|0)>>>0<i[8965])break A;if(A=A+g|0,t[8966]==(0|e)){if(3==(3&(g=t[a+4>>2])))return t[8963]=A,t[a+4>>2]=-2&g,t[e+4>>2]=1|A,void(t[A+e>>2]=A)}else{if(g>>>0<=255){if(r=t[e+8>>2],g=g>>>3|0,(0|(I=t[e+12>>2]))==(0|r)){o=35844,Q=t[8961]&Yg(-2,g),t[o>>2]=Q;break g}t[r+12>>2]=I,t[I+8>>2]=r;break g}if(n=t[e+24>>2],(0|e)==(0|(g=t[e+12>>2])))if((I=t[(r=e+20|0)>>2])||(I=t[(r=e+16|0)>>2])){for(;B=r,(I=t[(r=(g=I)+20|0)>>2])||(r=g+16|0,I=t[g+16>>2]););t[B>>2]=0}else g=0;else I=t[e+8>>2],t[I+12>>2]=g,t[g+8>>2]=I;if(!n)break g;r=t[e+28>>2];I:{if(t[(I=36148+(r<<2)|0)>>2]==(0|e)){if(t[I>>2]=g,g)break I;o=35848,Q=t[8962]&Yg(-2,r),t[o>>2]=Q;break g}if(t[n+(t[n+16>>2]==(0|e)?16:20)>>2]=g,!g)break g}if(t[g+24>>2]=n,(I=t[e+16>>2])&&(t[g+16>>2]=I,t[I+24>>2]=g),!(I=t[e+20>>2]))break g;t[g+20>>2]=I,t[I+24>>2]=g}}if(!(e>>>0>=a>>>0)&&1&(g=t[a+4>>2])){g:{if(!(2&g)){if(t[8967]==(0|a)){if(t[8967]=e,A=t[8964]+A|0,t[8964]=A,t[e+4>>2]=1|A,t[8966]!=(0|e))break A;return t[8963]=0,void(t[8966]=0)}if(t[8966]==(0|a))return t[8966]=e,A=t[8963]+A|0,t[8963]=A,t[e+4>>2]=1|A,void(t[A+e>>2]=A);A=(-8&g)+A|0;I:if(g>>>0<=255){if(g=g>>>3|0,(0|(I=t[a+8>>2]))==(0|(r=t[a+12>>2]))){o=35844,Q=t[8961]&Yg(-2,g),t[o>>2]=Q;break I}t[I+12>>2]=r,t[r+8>>2]=I}else{if(n=t[a+24>>2],(0|a)==(0|(g=t[a+12>>2])))if((I=t[(r=a+20|0)>>2])||(I=t[(r=a+16|0)>>2])){for(;B=r,(I=t[(r=(g=I)+20|0)>>2])||(r=g+16|0,I=t[g+16>>2]););t[B>>2]=0}else g=0;else I=t[a+8>>2],t[I+12>>2]=g,t[g+8>>2]=I;if(n){r=t[a+28>>2];e:{if(t[(I=36148+(r<<2)|0)>>2]==(0|a)){if(t[I>>2]=g,g)break e;o=35848,Q=t[8962]&Yg(-2,r),t[o>>2]=Q;break I}if(t[n+(t[n+16>>2]==(0|a)?16:20)>>2]=g,!g)break I}t[g+24>>2]=n,(I=t[a+16>>2])&&(t[g+16>>2]=I,t[I+24>>2]=g),(I=t[a+20>>2])&&(t[g+20>>2]=I,t[I+24>>2]=g)}}if(t[e+4>>2]=1|A,t[A+e>>2]=A,t[8966]!=(0|e))break g;return void(t[8963]=A)}t[a+4>>2]=-2&g,t[e+4>>2]=1|A,t[A+e>>2]=A}if(A>>>0<=255)return g=35884+((A=A>>>3|0)<<3)|0,(I=t[8961])&(A=1<<A)?A=t[g+8>>2]:(t[8961]=A|I,A=g),t[g+8>>2]=e,t[A+12>>2]=e,t[e+12>>2]=g,void(t[e+8>>2]=A);r=31,t[e+16>>2]=0,t[e+20>>2]=0,A>>>0<=16777215&&(g=A>>>8|0,g<<=B=g+1048320>>>16&8,r=28+((g=((g<<=r=g+520192>>>16&4)<<(I=g+245760>>>16&2)>>>15|0)-(I|r|B)|0)<<1|A>>>g+21&1)|0),t[e+28>>2]=r,B=36148+(r<<2)|0;g:{I:{if((I=t[8962])&(g=1<<r)){for(r=A<<(31==(0|r)?0:25-(r>>>1|0)|0),g=t[B>>2];;){if(I=g,(-8&t[g+4>>2])==(0|A))break I;if(g=r>>>29|0,r<<=1,!(g=t[16+(B=I+(4&g)|0)>>2]))break}t[B+16>>2]=e,t[e+24>>2]=I}else t[8962]=g|I,t[B>>2]=e,t[e+24>>2]=B;t[e+12>>2]=e,t[e+8>>2]=e;break g}A=t[I+8>>2],t[A+12>>2]=e,t[I+8>>2]=e,t[e+24>>2]=0,t[e+12>>2]=I,t[e+8>>2]=A}A=t[8969]-1|0,t[8969]=A||-1}}}function Y(A,g){var I,e=0,r=0,a=0,B=0,n=0,i=0,o=0;I=A+g|0;A:{g:if(!(1&(e=t[A+4>>2]))){if(!(3&e))break A;if(g=(e=t[A>>2])+g|0,(0|(A=A-e|0))==t[8966]){if(3==(3&(e=t[I+4>>2])))return t[8963]=g,t[I+4>>2]=-2&e,t[A+4>>2]=1|g,void(t[I>>2]=g)}else{if(e>>>0<=255){if(a=t[A+8>>2],e=e>>>3|0,(0|(r=t[A+12>>2]))==(0|a)){i=35844,o=t[8961]&Yg(-2,e),t[i>>2]=o;break g}t[a+12>>2]=r,t[r+8>>2]=a;break g}if(n=t[A+24>>2],(0|(e=t[A+12>>2]))==(0|A))if((r=t[(a=A+20|0)>>2])||(r=t[(a=A+16|0)>>2])){for(;B=a,(r=t[(a=(e=r)+20|0)>>2])||(a=e+16|0,r=t[e+16>>2]););t[B>>2]=0}else e=0;else r=t[A+8>>2],t[r+12>>2]=e,t[e+8>>2]=r;if(!n)break g;a=t[A+28>>2];I:{if(t[(r=36148+(a<<2)|0)>>2]==(0|A)){if(t[r>>2]=e,e)break I;i=35848,o=t[8962]&Yg(-2,a),t[i>>2]=o;break g}if(t[n+(t[n+16>>2]==(0|A)?16:20)>>2]=e,!e)break g}if(t[e+24>>2]=n,(r=t[A+16>>2])&&(t[e+16>>2]=r,t[r+24>>2]=e),!(r=t[A+20>>2]))break g;t[e+20>>2]=r,t[r+24>>2]=e}}g:{if(!(2&(e=t[I+4>>2]))){if(t[8967]==(0|I)){if(t[8967]=A,g=t[8964]+g|0,t[8964]=g,t[A+4>>2]=1|g,t[8966]!=(0|A))break A;return t[8963]=0,void(t[8966]=0)}if(t[8966]==(0|I))return t[8966]=A,g=t[8963]+g|0,t[8963]=g,t[A+4>>2]=1|g,void(t[A+g>>2]=g);g=(-8&e)+g|0;I:if(e>>>0<=255){if(a=t[I+8>>2],e=e>>>3|0,(0|(r=t[I+12>>2]))==(0|a)){i=35844,o=t[8961]&Yg(-2,e),t[i>>2]=o;break I}t[a+12>>2]=r,t[r+8>>2]=a}else{if(n=t[I+24>>2],(0|I)==(0|(e=t[I+12>>2])))if((a=t[(r=I+20|0)>>2])||(a=t[(r=I+16|0)>>2])){for(;B=r,(a=t[(r=(e=a)+20|0)>>2])||(r=e+16|0,a=t[e+16>>2]););t[B>>2]=0}else e=0;else r=t[I+8>>2],t[r+12>>2]=e,t[e+8>>2]=r;if(n){a=t[I+28>>2];e:{if(t[(r=36148+(a<<2)|0)>>2]==(0|I)){if(t[r>>2]=e,e)break e;i=35848,o=t[8962]&Yg(-2,a),t[i>>2]=o;break I}if(t[n+(t[n+16>>2]==(0|I)?16:20)>>2]=e,!e)break I}t[e+24>>2]=n,(r=t[I+16>>2])&&(t[e+16>>2]=r,t[r+24>>2]=e),(r=t[I+20>>2])&&(t[e+20>>2]=r,t[r+24>>2]=e)}}if(t[A+4>>2]=1|g,t[A+g>>2]=g,t[8966]!=(0|A))break g;return void(t[8963]=g)}t[I+4>>2]=-2&e,t[A+4>>2]=1|g,t[A+g>>2]=g}if(g>>>0<=255)return e=35884+((g=g>>>3|0)<<3)|0,(r=t[8961])&(g=1<<g)?g=t[e+8>>2]:(t[8961]=g|r,g=e),t[e+8>>2]=A,t[g+12>>2]=A,t[A+12>>2]=e,void(t[A+8>>2]=g);a=31,t[A+16>>2]=0,t[A+20>>2]=0,g>>>0<=16777215&&(e=g>>>8|0,e<<=B=e+1048320>>>16&8,a=28+((e=((e<<=a=e+520192>>>16&4)<<(r=e+245760>>>16&2)>>>15|0)-(r|a|B)|0)<<1|g>>>e+21&1)|0),t[A+28>>2]=a,B=36148+(a<<2)|0;g:{if((r=t[8962])&(e=1<<a)){for(a=g<<(31==(0|a)?0:25-(a>>>1|0)|0),e=t[B>>2];;){if(r=e,(-8&t[e+4>>2])==(0|g))break g;if(e=a>>>29|0,a<<=1,!(e=t[16+(B=r+(4&e)|0)>>2]))break}t[B+16>>2]=A,t[A+24>>2]=r}else t[8962]=e|r,t[B>>2]=A,t[A+24>>2]=B;return t[A+12>>2]=A,void(t[A+8>>2]=A)}g=t[r+8>>2],t[g+12>>2]=A,t[r+8>>2]=A,t[A+24>>2]=0,t[A+12>>2]=r,t[A+8>>2]=g}}function H(A,g,I,e,r){var B,i,o,Q,C,c,E,s,y,_,h,p,u,l,w,D=0,v=0,d=0,b=0,k=0,F=0,G=0,m=0,Y=0,H=0,S=0,U=0,M=0,N=0,x=0,P=0,R=0,J=0,K=0,L=0,T=0,q=0,X=0,V=0,W=0,j=0,O=0,Z=0,z=0,$=0,AA=0,gA=0,IA=0,eA=0;for(f=B=f+-64|0,i=t[A+60>>2],o=t[A+56>>2],L=t[A+52>>2],J=t[A+48>>2],Q=t[A+44>>2],C=t[A+40>>2],c=t[A+36>>2],E=t[A+32>>2],s=t[A+28>>2],y=t[A+24>>2],_=t[A+20>>2],h=t[A+16>>2],p=t[A+12>>2],u=t[A+8>>2],l=t[A+4>>2],w=t[A>>2];;){if(!r&e>>>0>63|r)d=I;else{if(b=0,d=D=BA(B,0,64),e|r)for(;a[D+b|0]=n[g+b|0],!r&(b=b+1|0)>>>0<e>>>0|r;);g=d,X=I}for(T=20,m=w,Y=l,H=u,S=p,b=h,D=_,I=y,U=s,k=E,F=c,M=C,N=i,x=o,v=L,P=J,K=Q;G=b,m=kI((b=b+m|0)^P,16),P=kI(G^(k=m+k|0),12),G=k,k=kI((k=m)^(m=b+P|0),8),b=kI(P^(R=G+k|0),7),G=D,Y=kI((D=D+Y|0)^v,16),v=kI(G^(F=Y+F|0),12),G=F,F=kI((F=Y)^(Y=D+v|0),8),D=kI(v^(q=G+F|0),7),v=I,H=kI((I=I+H|0)^x,16),G=x=kI(v^(M=H+M|0),12),x=kI((v=H)^(H=I+x|0),8),I=kI(G^(M=x+M|0),7),v=U,S=kI((U=U+S|0)^N,16),K=v=kI(v^(N=S+K|0),12),G=N,N=kI((N=S)^(S=U+v|0),8),U=kI(K^(v=G+N|0),7),G=M,M=kI((m=D+m|0)^N,16),D=kI((P=G+M|0)^D,12),N=kI(M^(m=D+m|0),8),D=kI(D^(M=P+N|0),7),k=kI((Y=I+Y|0)^k,16),I=kI((v=k+v|0)^I,12),P=kI(k^(Y=I+Y|0),8),I=kI(I^(K=v+P|0),7),k=kI((H=U+H|0)^F,16),U=kI((F=k+R|0)^U,12),v=kI(k^(H=U+H|0),8),U=kI(U^(k=F+v|0),7),F=kI((S=b+S|0)^x,16),b=kI((R=F+q|0)^b,12),x=kI(F^(S=b+S|0),8),b=kI(b^(F=R+x|0),7),T=T-2|0;);if(T=n[g+4|0]|n[g+5|0]<<8|n[g+6|0]<<16|n[g+7|0]<<24,R=n[g+8|0]|n[g+9|0]<<8|n[g+10|0]<<16|n[g+11|0]<<24,q=n[g+12|0]|n[g+13|0]<<8|n[g+14|0]<<16|n[g+15|0]<<24,V=n[g+16|0]|n[g+17|0]<<8|n[g+18|0]<<16|n[g+19|0]<<24,W=n[g+20|0]|n[g+21|0]<<8|n[g+22|0]<<16|n[g+23|0]<<24,j=n[g+24|0]|n[g+25|0]<<8|n[g+26|0]<<16|n[g+27|0]<<24,O=n[g+28|0]|n[g+29|0]<<8|n[g+30|0]<<16|n[g+31|0]<<24,Z=n[g+32|0]|n[g+33|0]<<8|n[g+34|0]<<16|n[g+35|0]<<24,z=n[g+36|0]|n[g+37|0]<<8|n[g+38|0]<<16|n[g+39|0]<<24,$=n[g+40|0]|n[g+41|0]<<8|n[g+42|0]<<16|n[g+43|0]<<24,AA=n[g+44|0]|n[g+45|0]<<8|n[g+46|0]<<16|n[g+47|0]<<24,gA=n[g+48|0]|n[g+49|0]<<8|n[g+50|0]<<16|n[g+51|0]<<24,IA=n[g+52|0]|n[g+53|0]<<8|n[g+54|0]<<16|n[g+55|0]<<24,eA=n[g+56|0]|n[g+57|0]<<8|n[g+58|0]<<16|n[g+59|0]<<24,G=n[g+60|0]|n[g+61|0]<<8|n[g+62|0]<<16|n[g+63|0]<<24,Jg(d,m+w^(n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24)),Jg(d+4|0,Y+l^T),Jg(d+8|0,H+u^R),Jg(d+12|0,S+p^q),Jg(d+16|0,b+h^V),Jg(d+20|0,D+_^W),Jg(d+24|0,I+y^j),Jg(d+28|0,U+s^O),Jg(d+32|0,k+E^Z),Jg(d+36|0,F+c^z),Jg(d+40|0,$^M+C),Jg(d+44|0,AA^K+Q),Jg(d+48|0,gA^P+J),Jg(d+52|0,IA^v+L),Jg(d+56|0,eA^x+o),Jg(d+60|0,G^N+i),L=((J=(I=J)+1|0)>>>0<I>>>0)+L|0,!r&e>>>0<=64){if(!(!e|!r&e>>>0>63|0!=(0|r)))for(D=0;a[D+X|0]=n[d+D|0],(0|e)!=(0|(D=D+1|0)););t[A+52>>2]=L,t[A+48>>2]=J,f=B- -64|0;break}g=g- -64|0,I=d- -64|0,r=r-1|0,r=(e=e+-64|0)>>>0<4294967232?r+1|0:r}}function S(A,g,I,e){var r=0,a=0,B=0,i=0,Q=0,C=0,c=0,E=0,s=0,y=0,_=0,h=0,f=0,p=0,u=0,w=0,D=0,v=0,d=0,b=0,k=0,F=0,G=0,m=0,Y=0;if(s=t[A+36>>2],i=t[A+32>>2],B=t[A+28>>2],a=t[A+24>>2],Q=t[A+20>>2],!e&I>>>0>=16|e)for(k=!n[A+80|0]<<24,_=t[A+4>>2],F=o(_,5),p=t[A+8>>2],b=o(p,5),v=t[A+12>>2],d=o(v,5),r=t[A+16>>2],u=o(r,5),G=r,h=t[A>>2];r=CI(C=((n[g+3|0]|n[g+4|0]<<8|n[g+5|0]<<16|n[g+6|0]<<24)>>>2&67108863)+a|0,0,v,0),c=l,a=(y=CI(Q=(67108863&(n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24))+Q|0,0,G,0))+r|0,r=l+c|0,r=a>>>0<y>>>0?r+1|0:r,E=a,a=CI(c=((n[g+6|0]|n[g+7|0]<<8|n[g+8|0]<<16|n[g+9|0]<<24)>>>4&67108863)+B|0,0,p,0),r=l+r|0,r=a>>>0>(B=E+a|0)>>>0?r+1|0:r,a=B,B=CI(y=((n[g+9|0]|n[g+10|0]<<8|n[g+11|0]<<16|n[g+12|0]<<24)>>>6|0)+i|0,0,_,0),r=l+r|0,r=B>>>0>(i=a+B|0)>>>0?r+1|0:r,a=i,i=CI(f=s+k+((n[g+12|0]|n[g+13|0]<<8|n[g+14|0]<<16|n[g+15|0]<<24)>>>8)|0,0,h,0),r=l+r|0,m=s=a+i|0,s=i>>>0>s>>>0?r+1|0:r,r=CI(C,0,p,0),B=l,i=(a=CI(Q,0,v,0))+r|0,r=l+B|0,r=a>>>0>i>>>0?r+1|0:r,B=CI(c,0,_,0),r=l+r|0,r=B>>>0>(i=B+i|0)>>>0?r+1|0:r,B=CI(y,0,h,0),r=l+r|0,r=B>>>0>(i=B+i|0)>>>0?r+1|0:r,B=CI(f,0,u,0),r=l+r|0,Y=i=B+i|0,i=B>>>0>i>>>0?r+1|0:r,r=CI(C,0,_,0),a=l,B=(w=CI(Q,0,p,0))+r|0,r=l+a|0,r=B>>>0<w>>>0?r+1|0:r,a=CI(c,0,h,0),r=l+r|0,r=a>>>0>(B=a+B|0)>>>0?r+1|0:r,a=CI(y,0,u,0),r=l+r|0,r=a>>>0>(B=a+B|0)>>>0?r+1|0:r,a=CI(f,0,d,0),r=l+r|0,w=B=a+B|0,B=a>>>0>B>>>0?r+1|0:r,r=CI(C,0,h,0),E=l,a=(D=CI(Q,0,_,0))+r|0,r=l+E|0,r=a>>>0<D>>>0?r+1|0:r,E=CI(c,0,u,0),r=l+r|0,r=(a=E+a|0)>>>0<E>>>0?r+1|0:r,E=CI(y,0,d,0),r=l+r|0,r=(a=E+a|0)>>>0<E>>>0?r+1|0:r,E=CI(f,0,b,0),r=l+r|0,r=(a=E+a|0)>>>0<E>>>0?r+1|0:r,E=a,a=r,r=CI(C,0,u,0),D=l,C=(Q=CI(Q,0,h,0))+r|0,r=l+D|0,r=C>>>0<Q>>>0?r+1|0:r,Q=CI(c,0,d,0),r=l+r|0,r=(C=Q+C|0)>>>0<Q>>>0?r+1|0:r,Q=CI(y,0,b,0),r=l+r|0,r=(C=Q+C|0)>>>0<Q>>>0?r+1|0:r,Q=CI(f,0,F,0),r=l+r|0,r=(C=Q+C|0)>>>0<Q>>>0?r+1|0:r,Q=C,c=(67108863&r)<<6|C>>>26,r=a,c=(67108863&(r=(C=c+E|0)>>>0<c>>>0?r+1|0:r))<<6|(a=C)>>>26,r=B,r=(a=c+w|0)>>>0<c>>>0?r+1|0:r,c=a,a=(67108863&r)<<6|a>>>26,r=i,y=B=a+Y|0,B=(67108863&(r=a>>>0>B>>>0?r+1|0:r))<<6|B>>>26,r=s,s=i=B+m|0,a=(67108863&C)+((r=o((67108863&(r=B>>>0>i>>>0?r+1|0:r))<<6|i>>>26,5)+(67108863&Q)|0)>>>26|0)|0,B=67108863&c,i=67108863&y,s&=67108863,Q=67108863&r,g=g+16|0,!(e=e-(I>>>0<16)|0)&(I=I-16|0)>>>0>15|e;);t[A+20>>2]=Q,t[A+36>>2]=s,t[A+32>>2]=i,t[A+28>>2]=B,t[A+24>>2]=a}function U(A,g,I){var e,r,B,t,i=0,o=0,Q=0,C=0,c=0;return f=B=f-160|0,mg(g,I,32,0),a[0|g]=248&n[0|g],a[g+31|0]=63&n[g+31|0]|64,aA(B,g),ng(A,B),o=n[(r=I)+8|0]|n[r+9|0]<<8|n[r+10|0]<<16|n[r+11|0]<<24,i=n[r+12|0]|n[r+13|0]<<8|n[r+14|0]<<16|n[r+15|0]<<24,Q=n[r+16|0]|n[r+17|0]<<8|n[r+18|0]<<16|n[r+19|0]<<24,C=n[r+20|0]|n[r+21|0]<<8|n[r+22|0]<<16|n[r+23|0]<<24,c=n[0|r]|n[r+1|0]<<8|n[r+2|0]<<16|n[r+3|0]<<24,I=n[r+4|0]|n[r+5|0]<<8|n[r+6|0]<<16|n[r+7|0]<<24,e=g,t=n[r+28|0]|n[r+29|0]<<8|n[r+30|0]<<16|n[r+31|0]<<24,g=n[r+24|0]|n[r+25|0]<<8|n[r+26|0]<<16|n[r+27|0]<<24,a[e+24|0]=g,a[e+25|0]=g>>>8,a[e+26|0]=g>>>16,a[e+27|0]=g>>>24,a[e+28|0]=t,a[e+29|0]=t>>>8,a[e+30|0]=t>>>16,a[e+31|0]=t>>>24,a[e+16|0]=Q,a[e+17|0]=Q>>>8,a[e+18|0]=Q>>>16,a[e+19|0]=Q>>>24,a[e+20|0]=C,a[e+21|0]=C>>>8,a[e+22|0]=C>>>16,a[e+23|0]=C>>>24,a[e+8|0]=o,a[e+9|0]=o>>>8,a[e+10|0]=o>>>16,a[e+11|0]=o>>>24,a[e+12|0]=i,a[e+13|0]=i>>>8,a[e+14|0]=i>>>16,a[e+15|0]=i>>>24,a[0|e]=c,a[e+1|0]=c>>>8,a[e+2|0]=c>>>16,a[e+3|0]=c>>>24,a[e+4|0]=I,a[e+5|0]=I>>>8,a[e+6|0]=I>>>16,a[e+7|0]=I>>>24,Q=n[(i=A)+8|0]|n[i+9|0]<<8|n[i+10|0]<<16|n[i+11|0]<<24,C=n[i+12|0]|n[i+13|0]<<8|n[i+14|0]<<16|n[i+15|0]<<24,c=n[i+16|0]|n[i+17|0]<<8|n[i+18|0]<<16|n[i+19|0]<<24,I=n[i+20|0]|n[i+21|0]<<8|n[i+22|0]<<16|n[i+23|0]<<24,g=n[0|i]|n[i+1|0]<<8|n[i+2|0]<<16|n[i+3|0]<<24,A=n[i+4|0]|n[i+5|0]<<8|n[i+6|0]<<16|n[i+7|0]<<24,o=n[i+28|0]|n[i+29|0]<<8|n[i+30|0]<<16|n[i+31|0]<<24,i=n[i+24|0]|n[i+25|0]<<8|n[i+26|0]<<16|n[i+27|0]<<24,a[e+56|0]=i,a[e+57|0]=i>>>8,a[e+58|0]=i>>>16,a[e+59|0]=i>>>24,a[e+60|0]=o,a[e+61|0]=o>>>8,a[e+62|0]=o>>>16,a[e+63|0]=o>>>24,a[e+48|0]=c,a[e+49|0]=c>>>8,a[e+50|0]=c>>>16,a[e+51|0]=c>>>24,a[e+52|0]=I,a[e+53|0]=I>>>8,a[e+54|0]=I>>>16,a[e+55|0]=I>>>24,a[e+40|0]=Q,a[e+41|0]=Q>>>8,a[e+42|0]=Q>>>16,a[e+43|0]=Q>>>24,a[e+44|0]=C,a[e+45|0]=C>>>8,a[e+46|0]=C>>>16,a[e+47|0]=C>>>24,a[e+32|0]=g,a[e+33|0]=g>>>8,a[e+34|0]=g>>>16,a[e+35|0]=g>>>24,a[e+36|0]=A,a[e+37|0]=A>>>8,a[e+38|0]=A>>>16,a[e+39|0]=A>>>24,f=B+160|0,0}function M(A,g,I){var e,r=0,B=0,t=0;f=e=f+-64|0;A:{if(!(!I|I>>>0>=65)){if(r=-1,!(n[A+80|0]|n[A+81|0]<<8|n[A+82|0]<<16|n[A+83|0]<<24|n[A+84|0]|n[A+85|0]<<8|n[A+86|0]<<16|n[A+87|0]<<24)){if(B=A,(r=n[A+352|0]|n[A+353|0]<<8|n[A+354|0]<<16|n[A+355|0]<<24)>>>0>=129){if(tA(A,128),w(A,t=A+96|0),r=(n[A+352|0]|n[A+353|0]<<8|n[A+354|0]<<16|n[A+355|0]<<24)-128|0,a[A+352|0]=r,a[A+353|0]=r>>>8,a[A+354|0]=r>>>16,a[A+355|0]=r>>>24,r>>>0>=129)break A;q(t,A+224|0,r),r=n[A+352|0]|n[A+353|0]<<8|n[A+354|0]<<16|n[A+355|0]<<24}tA(B,r),n[A+356|0]&&(a[A+88|0]=255,a[A+89|0]=255,a[A+90|0]=255,a[A+91|0]=255,a[A+92|0]=255,a[A+93|0]=255,a[A+94|0]=255,a[A+95|0]=255),a[A+80|0]=255,a[A+81|0]=255,a[A+82|0]=255,a[A+83|0]=255,a[A+84|0]=255,a[A+85|0]=255,a[A+86|0]=255,a[A+87|0]=255,BA((r=A+96|0)+(B=n[A+352|0]|n[A+353|0]<<8|n[A+354|0]<<16|n[A+355|0]<<24)|0,0,256-B|0),w(A,r),cg(e,n[0|A]|n[A+1|0]<<8|n[A+2|0]<<16|n[A+3|0]<<24,n[A+4|0]|n[A+5|0]<<8|n[A+6|0]<<16|n[A+7|0]<<24),cg(8|e,n[A+8|0]|n[A+9|0]<<8|n[A+10|0]<<16|n[A+11|0]<<24,n[A+12|0]|n[A+13|0]<<8|n[A+14|0]<<16|n[A+15|0]<<24),cg(e+16|0,n[A+16|0]|n[A+17|0]<<8|n[A+18|0]<<16|n[A+19|0]<<24,n[A+20|0]|n[A+21|0]<<8|n[A+22|0]<<16|n[A+23|0]<<24),cg(e+24|0,n[A+24|0]|n[A+25|0]<<8|n[A+26|0]<<16|n[A+27|0]<<24,n[A+28|0]|n[A+29|0]<<8|n[A+30|0]<<16|n[A+31|0]<<24),cg(e+32|0,n[A+32|0]|n[A+33|0]<<8|n[A+34|0]<<16|n[A+35|0]<<24,n[A+36|0]|n[A+37|0]<<8|n[A+38|0]<<16|n[A+39|0]<<24),cg(e+40|0,n[A+40|0]|n[A+41|0]<<8|n[A+42|0]<<16|n[A+43|0]<<24,n[A+44|0]|n[A+45|0]<<8|n[A+46|0]<<16|n[A+47|0]<<24),cg(e+48|0,n[A+48|0]|n[A+49|0]<<8|n[A+50|0]<<16|n[A+51|0]<<24,n[A+52|0]|n[A+53|0]<<8|n[A+54|0]<<16|n[A+55|0]<<24),cg(e+56|0,n[A+56|0]|n[A+57|0]<<8|n[A+58|0]<<16|n[A+59|0]<<24,n[A+60|0]|n[A+61|0]<<8|n[A+62|0]<<16|n[A+63|0]<<24),q(g,e,I),Eg(A,64),Eg(r,256),r=0}return f=e- -64|0,r}Zg(),C()}c(1854,1886,306,1931),C()}function N(A,g){var I,e,r,a,B,i,o,Q,C,c=0,E=0,s=0,y=0,_=0,h=0,f=0,p=0,u=0,w=0,D=0;I=n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24,u=kg(g+4|0),c=l,f=kg(g+7|0),s=l,p=kg(g+10|0),E=l,e=kg(g+13|0),_=l,y=n[g+16|0]|n[g+17|0]<<8|n[g+18|0]<<16|n[g+19|0]<<24,r=kg(g+20|0),w=l,a=kg(g+23|0),B=l,i=kg(g+26|0),o=l,Q=kg(g+29|0),g=E<<3|p>>>29,D=E=p<<3,p=E=E+16777216|0,E=g=E>>>0<16777216?g+1|0:g,s=g=s<<5|f>>>27,C=h=f<<5,c=g=c<<6|(f=u)>>>26,u=g=16777216+(f<<=6)|0,h=g,g=(g=(c=g>>>0<16777216?c+1|0:c)>>25)+s|0,g=(c=C+(h=(33554431&c)<<7|h>>>25)|0)>>>0<h>>>0?g+1|0:g,(s=c+33554432|0)>>>0<33554432&&(g=g+1|0),g=(D-(-33554432&p)|0)+((67108863&g)<<6|s>>>26)|0,t[A+12>>2]=g,g=-67108864&s,t[A+8>>2]=c-g,g=0,h=y=(s=y)+16777216|0,y=g=y>>>0<16777216?1:g,D=s-(-33554432&h)|0,g=_<<2|(s=e)>>>30,_=s<<2,s=g,g=(g=E>>25)+s|0,c=g=(E=(c=_)+(_=(33554431&E)<<7|p>>>25)|0)>>>0<_>>>0?g+1|0:g,s=g=E+33554432|0,g=((67108863&(c=g>>>0<33554432?c+1|0:c))<<6|g>>>26)+D|0,t[A+20>>2]=g,g=-67108864&s,t[A+16>>2]=E-g,_=(c=r)<<7,g=(g=w<<7|c>>>25)+(c=y>>25)|0,g=(y=_+(s=(33554431&y)<<7|h>>>25)|0)>>>0<s>>>0?g+1|0:g,y=c=y,s=c=c+33554432|0,c=g=c>>>0<33554432?g+1|0:g,g=-67108864&s,t[(E=A)+24>>2]=y-g,y=E,g=B<<5|(E=a)>>>27,w=E<<=5,_=E=E+16777216|0,E=g=E>>>0<16777216?g+1|0:g,g=(w-(-33554432&_)|0)+((67108863&c)<<6|s>>>26)|0,t[y+28>>2]=g,s=(c=i)<<4,c=g=o<<4|c>>>28,g=(g=E>>25)+c|0,g=(E=(h=s)+(s=(33554431&E)<<7|_>>>25)|0)>>>0<s>>>0?g+1|0:g,E=c=E,s=c=c+33554432|0,c=g=c>>>0<33554432?g+1|0:g,g=-67108864&s,t[y+32>>2]=E-g,g=0,E=y=(y=Q)<<2&33554428,g=(y=y+16777216|0)>>>0<16777216?g+1|0:g,c=(E-(33554432&y)|0)+((67108863&c)<<6|s>>>26)|0,t[A+36>>2]=c,y=CI((33554431&g)<<7|y>>>25,g>>>25|0,19,0),g=l,g=(c=y+I|0)>>>0<y>>>0?g+1|0:g,(E=c+33554432|0)>>>0<33554432&&(g=g+1|0),g=(f-(-33554432&u)|0)+((67108863&g)<<6|E>>>26)|0,t[A+4>>2]=g,g=A,A=-67108864&E,t[g>>2]=c-A}function x(A,g){var I,e,r,a,B,n,i,o,Q,C=0,c=0,E=0,s=0,y=0,_=0,h=0,f=0,p=0,u=0,w=0,D=0,v=0,d=0;w=c=t[(C=g)+4>>2],p=c>>31,D=c=t[C+8>>2],e=c>>31,h=c=t[C+12>>2],u=c>>31,v=c=t[C+16>>2],r=c>>31,f=c=t[C+20>>2],_=c>>31,d=c=t[C+24>>2],a=c>>31,B=c=t[C>>2],n=c>>31,s=c=CI(C=t[C+36>>2],C>>31,121666,0),C=l,I=c=c+16777216|0,c=C=c>>>0<16777216?C+1|0:C,i=s-(-33554432&I)|0,E=CI(C=t[g+32>>2],C>>31,121666,0),o=l,s=CI(g=t[g+28>>2],g>>31,121666,0),C=l,y=E,Q=g=s+16777216|0,E=g,g=(g=(C=g>>>0<16777216?C+1|0:C)>>25)+o|0,g=(C=y+(E=(33554431&C)<<7|E>>>25)|0)>>>0<E>>>0?g+1|0:g,E=C,C=g,y=g=E+33554432|0,g=((67108863&(C=g>>>0<33554432?C+1|0:C))<<6|g>>>26)+i|0,t[A+36>>2]=g,g=-67108864&y,t[A+32>>2]=E-g,y=s-(-33554432&Q)|0,C=CI(d,a,121666,0),d=l,s=CI(f,_,121666,0),g=l,E=C,f=C=s+16777216|0,_=C,C=(C=(g=C>>>0<16777216?g+1|0:g)>>25)+d|0,C=(g=E+(_=(33554431&g)<<7|_>>>25)|0)>>>0<_>>>0?C+1|0:C,(E=g+33554432|0)>>>0<33554432&&(C=C+1|0),C=y+((67108863&C)<<6|E>>>26)|0,t[A+28>>2]=C,C=-67108864&E,t[A+24>>2]=g-C,f=s-(-33554432&f)|0,g=CI(v,r,121666,0),v=l,s=CI(h,u,121666,0),C=l,y=g,h=g=s+16777216|0,u=(33554431&(C=g>>>0<16777216?C+1|0:C))<<7|g>>>25,C=(C>>25)+v|0,g=C=(E=y+u|0)>>>0<u>>>0?C+1|0:C,g=((67108863&(g=(C=E+33554432|0)>>>0<33554432?g+1|0:g))<<6|C>>>26)+f|0,t[A+20>>2]=g,g=-67108864&C,t[A+16>>2]=E-g,h=s-(-33554432&h)|0,C=CI(D,e,121666,0),D=l,s=CI(w,p,121666,0),g=l,y=C,w=C=s+16777216|0,p=(33554431&(g=C>>>0<16777216?g+1|0:g))<<7|C>>>25,g=(g>>25)+D|0,C=g=(E=y+p|0)>>>0<p>>>0?g+1|0:g,y=g=E+33554432|0,g=((67108863&(C=g>>>0<33554432?C+1|0:C))<<6|g>>>26)+h|0,t[A+12>>2]=g,g=-67108864&y,t[A+8>>2]=E-g,g=CI((33554431&c)<<7|I>>>25,c>>25,19,0),C=l,y=s-(-33554432&w)|0,c=CI(B,n,121666,0),C=l+C|0,C=(g=c+g|0)>>>0<c>>>0?C+1|0:C,(c=g+33554432|0)>>>0<33554432&&(C=C+1|0),C=y+((67108863&C)<<6|c>>>26)|0,t[A+4>>2]=C,C=A,A=-67108864&c,t[C>>2]=g-A}function P(A,g,I,e){var r,B=0,i=0;f=r=f-16|0,B=-31;A:{g:{I:{e:switch(e-1|0){case 1:if(g>>>0<13)break g;e=n[35660]|n[35661]<<8|n[35662]<<16|n[35663]<<24,B=n[35656]|n[35657]<<8|n[35658]<<16|n[35659]<<24,a[0|A]=B,a[A+1|0]=B>>>8,a[A+2|0]=B>>>16,a[A+3|0]=B>>>24,a[A+4|0]=e,a[A+5|0]=e>>>8,a[A+6|0]=e>>>16,a[A+7|0]=e>>>24,e=n[35665]|n[35666]<<8|n[35667]<<16|n[35668]<<24,B=n[35661]|n[35662]<<8|n[35663]<<16|n[35664]<<24,a[A+5|0]=B,a[A+6|0]=B>>>8,a[A+7|0]=B>>>16,a[A+8|0]=B>>>24,a[A+9|0]=e,a[A+10|0]=e>>>8,a[A+11|0]=e>>>16,a[A+12|0]=e>>>24,i=-12,e=12;break I;case 0:break e;default:break A}if(g>>>0<12)break g;e=n[35673]|n[35674]<<8|n[35675]<<16|n[35676]<<24,B=n[35669]|n[35670]<<8|n[35671]<<16|n[35672]<<24,a[0|A]=B,a[A+1|0]=B>>>8,a[A+2|0]=B>>>16,a[A+3|0]=B>>>24,a[A+4|0]=e,a[A+5|0]=e>>>8,a[A+6|0]=e>>>16,a[A+7|0]=e>>>24,e=n[35677]|n[35678]<<8|n[35679]<<16|n[35680]<<24,a[A+8|0]=e,a[A+9|0]=e>>>8,a[A+10|0]=e>>>16,a[A+11|0]=e>>>24,i=-11,e=11}if(B=QA(I))break A;if(TA(r+5|0,19),!((B=g+i|0)>>>0<=(g=FA(r+5|0))>>>0)&&(A=q(A+e|0,r+5|0,g+1|0),!((e=B-g|0)>>>0<4)&&(a[0|(A=A+g|0)]=36,a[A+1|0]=109,a[A+2|0]=61,a[A+3|0]=0,TA(r+5|0,t[I+44>>2]),!((e=e-3|0)>>>0<=(g=FA(r+5|0))>>>0)&&(A=q(A+3|0,r+5|0,g+1|0),!((e=e-g|0)>>>0<4)&&(a[0|(A=A+g|0)]=44,a[A+1|0]=116,a[A+2|0]=61,a[A+3|0]=0,TA(r+5|0,t[I+40>>2]),!((e=e-3|0)>>>0<=(g=FA(r+5|0))>>>0)&&(A=q(A+3|0,r+5|0,g+1|0),!((e=e-g|0)>>>0<4)&&(a[0|(A=A+g|0)]=44,a[A+1|0]=112,a[A+2|0]=61,a[A+3|0]=0,TA(r+5|0,t[I+48>>2]),!((e=e-3|0)>>>0<=(g=FA(r+5|0))>>>0)&&(A=q(A+3|0,r+5|0,g+1|0),!((e=e-g|0)>>>0<2)&&(a[0|(A=A+g|0)]=36,a[A+1|0]=0,Z(A=A+1|0,g=e-1|0,t[I+16>>2],t[I+20>>2],3)))))))))){if(B=-31,(e=(e=g)-(g=FA(A))|0)>>>0<2)break A;return a[0|(A=A+g|0)]=36,a[A+1|0]=0,A=Z(A+1|0,e-1|0,t[I>>2],t[I+4>>2],3),f=r+16|0,A?0:-31}}B=-31}return f=r+16|0,B}function R(A,g,I,e){var r,B=0;r=B=f,f=B=B-576&-64,t[B+188>>2]=0,Jg(B+188|0,g);A:if(g>>>0<=64){if((0|tg(B+192|0,0,0,g))<0)break A;if((0|fI(B+192|0,B+188|0,4,0))<0)break A;if((0|fI(B+192|0,I,e,0))<0)break A;Ng(B+192|0,A,g)}else if(!((0|tg(B+192|0,0,0,64))<0||(0|fI(B+192|0,B+188|0,4,0))<0||(0|fI(B+192|0,I,e,0))<0||(0|Ng(B+192|0,B+112|0,64))<0)){if(I=t[B+116>>2],e=t[B+112>>2],a[0|A]=e,a[A+1|0]=e>>>8,a[A+2|0]=e>>>16,a[A+3|0]=e>>>24,a[A+4|0]=I,a[A+5|0]=I>>>8,a[A+6|0]=I>>>16,a[A+7|0]=I>>>24,I=t[B+124>>2],e=t[B+120>>2],a[A+8|0]=e,a[A+9|0]=e>>>8,a[A+10|0]=e>>>16,a[A+11|0]=e>>>24,a[A+12|0]=I,a[A+13|0]=I>>>8,a[A+14|0]=I>>>16,a[A+15|0]=I>>>24,I=t[B+140>>2],e=t[B+136>>2],a[A+24|0]=e,a[A+25|0]=e>>>8,a[A+26|0]=e>>>16,a[A+27|0]=e>>>24,a[A+28|0]=I,a[A+29|0]=I>>>8,a[A+30|0]=I>>>16,a[A+31|0]=I>>>24,I=t[B+132>>2],e=t[B+128>>2],a[A+16|0]=e,a[A+17|0]=e>>>8,a[A+18|0]=e>>>16,a[A+19|0]=e>>>24,a[A+20|0]=I,a[A+21|0]=I>>>8,a[A+22|0]=I>>>16,a[A+23|0]=I>>>24,A=A+32|0,(g=g-32|0)>>>0>=65)for(;;){if(q(B+48|0,B+112|0,64),(0|vg(B+112|0,64,B+48|0,64,0,0,0))<0)break A;if(I=t[B+116>>2],e=t[B+112>>2],a[0|A]=e,a[A+1|0]=e>>>8,a[A+2|0]=e>>>16,a[A+3|0]=e>>>24,a[A+4|0]=I,a[A+5|0]=I>>>8,a[A+6|0]=I>>>16,a[A+7|0]=I>>>24,I=t[B+124>>2],e=t[B+120>>2],a[A+8|0]=e,a[A+9|0]=e>>>8,a[A+10|0]=e>>>16,a[A+11|0]=e>>>24,a[A+12|0]=I,a[A+13|0]=I>>>8,a[A+14|0]=I>>>16,a[A+15|0]=I>>>24,I=t[B+140>>2],e=t[B+136>>2],a[A+24|0]=e,a[A+25|0]=e>>>8,a[A+26|0]=e>>>16,a[A+27|0]=e>>>24,a[A+28|0]=I,a[A+29|0]=I>>>8,a[A+30|0]=I>>>16,a[A+31|0]=I>>>24,I=t[B+132>>2],e=t[B+128>>2],a[A+16|0]=e,a[A+17|0]=e>>>8,a[A+18|0]=e>>>16,a[A+19|0]=e>>>24,a[A+20|0]=I,a[A+21|0]=I>>>8,a[A+22|0]=I>>>16,a[A+23|0]=I>>>24,A=A+32|0,!((g=g-32|0)>>>0>64))break}q(B+48|0,B+112|0,64),(0|vg(B+112|0,g,B+48|0,64,0,0,0))<0||q(A,B+112|0,g)}Eg(B+192|0,384),f=r}function J(A,g,I){var e=0,r=0,a=0,B=0,t=0,i=0,o=0,Q=0,C=0,c=0,E=0,s=0,y=0,_=0,h=0,f=0,p=0,u=0,l=0;for(a=2036477234,C=857760878,c=1634760805,B=1797285236,Q=n[0|I]|n[I+1|0]<<8|n[I+2|0]<<16|n[I+3|0]<<24,e=n[I+4|0]|n[I+5|0]<<8|n[I+6|0]<<16|n[I+7|0]<<24,r=n[I+8|0]|n[I+9|0]<<8|n[I+10|0]<<16|n[I+11|0]<<24,i=n[I+12|0]|n[I+13|0]<<8|n[I+14|0]<<16|n[I+15|0]<<24,s=n[I+16|0]|n[I+17|0]<<8|n[I+18|0]<<16|n[I+19|0]<<24,y=n[I+20|0]|n[I+21|0]<<8|n[I+22|0]<<16|n[I+23|0]<<24,h=n[I+24|0]|n[I+25|0]<<8|n[I+26|0]<<16|n[I+27|0]<<24,f=n[I+28|0]|n[I+29|0]<<8|n[I+30|0]<<16|n[I+31|0]<<24,I=n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24,E=n[g+4|0]|n[g+5|0]<<8|n[g+6|0]<<16|n[g+7|0]<<24,t=n[g+8|0]|n[g+9|0]<<8|n[g+10|0]<<16|n[g+11|0]<<24,g=n[g+12|0]|n[g+13|0]<<8|n[g+14|0]<<16|n[g+15|0]<<24;o=Q,c=kI((_=I)^(I=Q+c|0),16),o=s=kI(o^(Q=c+s|0),12),s=kI((_=c)^(c=I+s|0),8),Q=kI(o^(p=s+Q|0),7),o=e,C=kI((I=e+C|0)^E,16),o=E=kI(o^(e=C+y|0),12),E=kI((_=C)^(C=I+E|0),8),I=kI(o^(y=E+e|0),7),o=r,e=kI((a=a+r|0)^t,16),o=t=kI(o^(r=e+h|0),12),_=kI(e^(t=a+t|0),8),a=kI(o^(e=_+r|0),7),B=kI((r=g)^(g=B+i|0),16),i=kI((r=B+f|0)^i,12),g=kI(B^(u=g+i|0),8),B=kI(i^(r=g+r|0),7),o=e,e=kI((e=g)^(g=I+c|0),16),I=kI((i=o+e|0)^I,12),g=kI(e^(c=g+I|0),8),e=kI(I^(h=i+g|0),7),o=r,r=kI((I=a+C|0)^s,16),a=kI((i=o+r|0)^a,12),I=kI(r^(C=I+a|0),8),r=kI(a^(f=i+I|0),7),i=kI((a=B+t|0)^E,16),B=kI((t=i+p|0)^B,12),E=kI(i^(a=a+B|0),8),i=kI(B^(s=t+E|0),7),t=kI((B=Q+u|0)^_,16),Q=kI((y=t+y|0)^Q,12),t=kI(t^(B=B+Q|0),8),Q=kI(Q^(y=y+t|0),7),10!=(0|(l=l+1|0)););Jg(A,c),Jg(A+4|0,C),Jg(A+8|0,a),Jg(A+12|0,B),Jg(A+16|0,I),Jg(A+20|0,E),Jg(A+24|0,t),Jg(A+28|0,g)}function K(A){var g,I=0,e=0;f=g=f-48|0,I=n[28+(A|=0)|0]|n[A+29|0]<<8|n[A+30|0]<<16|n[A+31|0]<<24,t[g+24>>2]=n[A+24|0]|n[A+25|0]<<8|n[A+26|0]<<16|n[A+27|0]<<24,t[g+28>>2]=I,I=n[A+20|0]|n[A+21|0]<<8|n[A+22|0]<<16|n[A+23|0]<<24,t[g+16>>2]=n[A+16|0]|n[A+17|0]<<8|n[A+18|0]<<16|n[A+19|0]<<24,t[g+20>>2]=I,I=n[A+4|0]|n[A+5|0]<<8|n[A+6|0]<<16|n[A+7|0]<<24,t[g>>2]=n[0|A]|n[A+1|0]<<8|n[A+2|0]<<16|n[A+3|0]<<24,t[g+4>>2]=I,I=n[A+12|0]|n[A+13|0]<<8|n[A+14|0]<<16|n[A+15|0]<<24,t[g+8>>2]=n[A+8|0]|n[A+9|0]<<8|n[A+10|0]<<16|n[A+11|0]<<24,t[g+12>>2]=I,I=n[A+40|0]|n[A+41|0]<<8|n[A+42|0]<<16|n[A+43|0]<<24,t[g+32>>2]=n[A+36|0]|n[A+37|0]<<8|n[A+38|0]<<16|n[A+39|0]<<24,t[g+36>>2]=I,XI[t[8957]](g,g,40,0,A+32|0,0,A),I=t[g+28>>2],e=t[g+24>>2],a[A+24|0]=e,a[A+25|0]=e>>>8,a[A+26|0]=e>>>16,a[A+27|0]=e>>>24,a[A+28|0]=I,a[A+29|0]=I>>>8,a[A+30|0]=I>>>16,a[A+31|0]=I>>>24,I=t[g+20>>2],e=t[g+16>>2],a[A+16|0]=e,a[A+17|0]=e>>>8,a[A+18|0]=e>>>16,a[A+19|0]=e>>>24,a[A+20|0]=I,a[A+21|0]=I>>>8,a[A+22|0]=I>>>16,a[A+23|0]=I>>>24,I=t[g+12>>2],e=t[g+8>>2],a[A+8|0]=e,a[A+9|0]=e>>>8,a[A+10|0]=e>>>16,a[A+11|0]=e>>>24,a[A+12|0]=I,a[A+13|0]=I>>>8,a[A+14|0]=I>>>16,a[A+15|0]=I>>>24,I=t[g+4>>2],e=t[g>>2],a[0|A]=e,a[A+1|0]=e>>>8,a[A+2|0]=e>>>16,a[A+3|0]=e>>>24,a[A+4|0]=I,a[A+5|0]=I>>>8,a[A+6|0]=I>>>16,a[A+7|0]=I>>>24,I=t[g+36>>2],e=t[g+32>>2],a[A+36|0]=e,a[A+37|0]=e>>>8,a[A+38|0]=e>>>16,a[A+39|0]=e>>>24,a[A+40|0]=I,a[A+41|0]=I>>>8,a[A+42|0]=I>>>16,a[A+43|0]=I>>>24,qg(A),f=g+48|0}function L(A,g,I){var e=0,r=0,a=0,B=0,t=0,i=0,o=0,Q=0,C=0,c=0,E=0,s=0,y=0,_=0,h=0,f=0,p=0,u=0,l=0,w=0,D=0;for(r=2036477234,a=857760878,B=1634760805,t=1797285236,h=20,Q=n[0|I]|n[I+1|0]<<8|n[I+2|0]<<16|n[I+3|0]<<24,_=n[I+4|0]|n[I+5|0]<<8|n[I+6|0]<<16|n[I+7|0]<<24,f=n[I+8|0]|n[I+9|0]<<8|n[I+10|0]<<16|n[I+11|0]<<24,s=n[I+12|0]|n[I+13|0]<<8|n[I+14|0]<<16|n[I+15|0]<<24,C=n[I+16|0]|n[I+17|0]<<8|n[I+18|0]<<16|n[I+19|0]<<24,i=n[I+20|0]|n[I+21|0]<<8|n[I+22|0]<<16|n[I+23|0]<<24,c=n[I+24|0]|n[I+25|0]<<8|n[I+26|0]<<16|n[I+27|0]<<24,E=n[I+28|0]|n[I+29|0]<<8|n[I+30|0]<<16|n[I+31|0]<<24,I=n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24,o=n[g+4|0]|n[g+5|0]<<8|n[g+6|0]<<16|n[g+7|0]<<24,e=n[g+8|0]|n[g+9|0]<<8|n[g+10|0]<<16|n[g+11|0]<<24,g=n[g+12|0]|n[g+13|0]<<8|n[g+14|0]<<16|n[g+15|0]<<24;p=e,e=kI(B+i|0,7)^s,y=p^kI(e+B|0,9),u=kI(e+y|0,13)^i,s=kI(y+u|0,18),g=kI(a+Q|0,7)^g,c=kI(g+a|0,9)^c,Q=kI(g+c|0,13)^Q,w=kI(c+Q|0,18),E=kI(I+r|0,7)^E,i=kI(E+r|0,9)^_,l=kI(i+E|0,13)^I,D=kI(i+l|0,18),I=kI(t+C|0,7)^f,o=kI(I+t|0,9)^o,C=kI(I+o|0,13)^C,p=kI(o+C|0,18),Q=kI((B^=s)+I|0,7)^Q,_=kI(Q+B|0,9)^i,f=kI(Q+_|0,13)^I,B=kI(_+f|0,18)^B,I=kI((a^=w)+e|0,7)^l,o=kI(I+a|0,9)^o,s=kI(I+o|0,13)^e,a=kI(o+s|0,18)^a,C=kI((r^=D)+g|0,7)^C,e=kI(C+r|0,9)^y,g=kI(e+C|0,13)^g,r=kI(g+e|0,18)^r,i=kI((t^=p)+E|0,7)^u,c=kI(i+t|0,9)^c,E=kI(i+c|0,13)^E,t=kI(c+E|0,18)^t,y=h>>>0>2,h=h-2|0,y;);return Jg(A,B),Jg(A+4|0,a),Jg(A+8|0,r),Jg(A+12|0,t),Jg(A+16|0,I),Jg(A+20|0,o),Jg(A+24|0,e),Jg(A+28|0,g),0}function T(A,g,I,e,r,B,i){var o,Q,C,c,E,s,y,_=0;return f=o=f-560|0,tI(o+352|0,i),mg(o+288|0,B,32,0),X(o+352|0,o+320|0,32,0),X(o+352|0,I,e,r),Hg(o+352|0,o+224|0),Q=n[(_=B)+32|0]|n[_+33|0]<<8|n[_+34|0]<<16|n[_+35|0]<<24,C=n[_+36|0]|n[_+37|0]<<8|n[_+38|0]<<16|n[_+39|0]<<24,c=n[_+40|0]|n[_+41|0]<<8|n[_+42|0]<<16|n[_+43|0]<<24,E=n[_+44|0]|n[_+45|0]<<8|n[_+46|0]<<16|n[_+47|0]<<24,s=n[_+48|0]|n[_+49|0]<<8|n[_+50|0]<<16|n[_+51|0]<<24,B=n[_+52|0]|n[_+53|0]<<8|n[_+54|0]<<16|n[_+55|0]<<24,y=n[_+60|0]|n[_+61|0]<<8|n[_+62|0]<<16|n[_+63|0]<<24,_=n[_+56|0]|n[_+57|0]<<8|n[_+58|0]<<16|n[_+59|0]<<24,a[A+56|0]=_,a[A+57|0]=_>>>8,a[A+58|0]=_>>>16,a[A+59|0]=_>>>24,a[A+60|0]=y,a[A+61|0]=y>>>8,a[A+62|0]=y>>>16,a[A+63|0]=y>>>24,a[A+48|0]=s,a[A+49|0]=s>>>8,a[A+50|0]=s>>>16,a[A+51|0]=s>>>24,a[A+52|0]=B,a[A+53|0]=B>>>8,a[A+54|0]=B>>>16,a[A+55|0]=B>>>24,a[A+40|0]=c,a[A+41|0]=c>>>8,a[A+42|0]=c>>>16,a[A+43|0]=c>>>24,a[A+44|0]=E,a[A+45|0]=E>>>8,a[A+46|0]=E>>>16,a[A+47|0]=E>>>24,a[0|(B=A+32|0)]=Q,a[B+1|0]=Q>>>8,a[B+2|0]=Q>>>16,a[B+3|0]=Q>>>24,a[B+4|0]=C,a[B+5|0]=C>>>8,a[B+6|0]=C>>>16,a[B+7|0]=C>>>24,v(o+224|0),aA(o,o+224|0),ng(A,o),tI(o+352|0,i),X(o+352|0,A,64,0),X(o+352|0,I,e,r),Hg(o+352|0,o+160|0),v(o+160|0),a[o+288|0]=248&n[o+288|0],a[o+319|0]=63&n[o+319|0]|64,function(A,g,I,e){var r,B,t,i,o,Q,C,c,E,s,y,_,h,f,p,u,w,D,v,d,b,k,F,G,m,Y,H,S,U,M,N,x,P,R,J,K,L,T,q,X,V,W,j,O,Z,z,$,AA,gA=0,IA=0,eA=0,rA=0,aA=0,BA=0,tA=0,nA=0,iA=0,oA=0,QA=0,CA=0,cA=0,EA=0,sA=0,yA=0,_A=0,hA=0,fA=0,pA=0,uA=0,lA=0,wA=0,DA=0,vA=0,dA=0,bA=0,kA=0,FA=0,GA=0,mA=0,YA=0,HA=0,SA=0,UA=0,MA=0,NA=0,xA=0,PA=0,RA=0,JA=0,KA=0,LA=0,TA=0,qA=0,XA=0,VA=0,WA=0,jA=0,OA=0,ZA=0;PA=kg(g),_A=n[g+2|0]|n[g+3|0]<<8|n[g+4|0]<<16|n[g+5|0]<<24,VA=kg(g+5|0),FA=l,hA=n[g+7|0]|n[g+8|0]<<8|n[g+9|0]<<16|n[g+10|0]<<24,fA=n[g+10|0]|n[g+11|0]<<8|n[g+12|0]<<16|n[g+13|0]<<24,mA=kg(g+13|0),QA=l,cA=n[g+15|0]|n[g+16|0]<<8|n[g+17|0]<<16|n[g+18|0]<<24,LA=kg(g+18|0),EA=l,GA=kg(g+21|0),tA=n[g+23|0]|n[g+24|0]<<8|n[g+25|0]<<16|n[g+26|0]<<24,iA=kg(g+26|0),rA=l,eA=n[g+28|0]|n[g+29|0]<<8|n[g+30|0]<<16|n[g+31|0]<<24,UA=kg(I),lA=n[(g=I)+2|0]|n[g+3|0]<<8|n[g+4|0]<<16|n[g+5|0]<<24,qA=kg(g+5|0),oA=l,sA=n[g+7|0]|n[g+8|0]<<8|n[g+9|0]<<16|n[g+10|0]<<24,yA=n[g+10|0]|n[g+11|0]<<8|n[g+12|0]<<16|n[g+13|0]<<24,XA=kg(g+13|0),CA=l,aA=n[g+15|0]|n[g+16|0]<<8|n[g+17|0]<<16|n[g+18|0]<<24,TA=kg(g+18|0),IA=l,RA=kg(g+21|0),gA=n[g+23|0]|n[g+24|0]<<8|n[g+25|0]<<16|n[g+26|0]<<24,nA=kg(g+26|0),I=l,g=n[g+28|0]|n[g+29|0]<<8|n[g+30|0]<<16|n[g+31|0]<<24,O=kg(e),Z=n[e+2|0]|n[e+3|0]<<8|n[e+4|0]<<16|n[e+5|0]<<24,z=kg(e+5|0),$=l,MA=n[e+7|0]|n[e+8|0]<<8|n[e+9|0]<<16|n[e+10|0]<<24,JA=n[e+10|0]|n[e+11|0]<<8|n[e+12|0]<<16|n[e+13|0]<<24,KA=kg(e+13|0),SA=l,YA=n[e+15|0]|n[e+16|0]<<8|n[e+17|0]<<16|n[e+18|0]<<24,WA=kg(e+18|0),bA=l,DA=kg(e+21|0),g=CI(r=g>>>7|0,0,B=2097151&((3&rA)<<30|iA>>>2),0),BA=l,rA=g,g=CI(t=2097151&((3&I)<<30|nA>>>2),0,i=eA>>>7|0,0),I=l+BA|0,BA=eA=rA+g|0,eA=g>>>0>eA>>>0?I+1|0:I,g=CI(B,0,t,0),rA=l,gA=(I=CI(o=gA>>>5&2097151,0,i,0))+g|0,g=l+rA|0,I=g=I>>>0>gA>>>0?g+1|0:g,g=CI(r,0,Q=tA>>>5&2097151,0),I=l+I|0,tA=gA=g+gA|0,wA=I=g>>>0>gA>>>0?I+1|0:I,pA=(g=gA)- -1048576|0,uA=I=I-((g>>>0<4293918720)-1|0)|0,g=(gA=I>>21)+eA|0,iA=g=(I=(2097151&I)<<11|pA>>>21)>>>0>(eA=rA=I+BA|0)>>>0?g+1|0:g,vA=(g=eA)- -1048576|0,nA=BA=iA-((g>>>0<4293918720)-1|0)|0,rA=CI(r,0,i,0),I=kA=(xA=l)-(((g=rA)>>>0<4293918720)-1|0)|0,gA=BA>>21,kA=(2097151&BA)<<11|vA>>>21,rA=g-(BA=-2097152&(NA=g- -1048576|0))|0,g=(xA-((g>>>0<BA>>>0)+I|0)|0)+gA|0,x=g=rA>>>0>(Y=kA+rA|0)>>>0?g+1|0:g,BA=CI(Y,g,-683901,-1),rA=l,P=g=I>>21,g=CI(S=(2097151&I)<<11|NA>>>21,g,136657,0),gA=l+rA|0,kA=I=g+BA|0,BA=g>>>0>I>>>0?gA+1|0:gA,g=CI(C=2097151&((1&CA)<<31|XA>>>1),0,B,0),I=l,gA=g,g=CI(c=yA>>>4&2097151,0,i,0),I=l+I|0,I=g>>>0>(gA=gA+g|0)>>>0?I+1|0:I,g=CI(E=aA>>>6&2097151,0,Q,0),I=l+I|0,I=g>>>0>(gA=g+gA|0)>>>0?I+1|0:I,m=g=0,rA=gA,gA=CI(s=2097151&RA,g,y=2097151&((7&EA)<<29|LA>>>3),0),g=l+I|0,g=gA>>>0>(rA=rA+gA|0)>>>0?g+1|0:g,gA=CI(_=2097151&((7&IA)<<29|TA>>>3),0,h=2097151&GA,0),I=l+g|0,I=gA>>>0>(rA=gA+rA|0)>>>0?I+1|0:I,g=CI(o,0,f=cA>>>6&2097151,0),gA=l+I|0,gA=g>>>0>(rA=g+rA|0)>>>0?gA+1|0:gA,I=CI(t,0,p=2097151&((1&QA)<<31|mA>>>1),0),g=l+gA|0,I=I>>>0>(gA=rA=I+rA|0)>>>0?g+1|0:g,g=CI(r,0,u=fA>>>4&2097151,0),I=l+I|0,EA=gA=g+gA|0,rA=g>>>0>gA>>>0?I+1|0:I,g=CI(B,0,c,0),I=l,IA=(gA=g)+(g=CI(w=sA>>>7&2097151,0,i,0))|0,gA=l+I|0,gA=g>>>0>IA>>>0?gA+1|0:gA,I=CI(Q,0,C,0),g=l+gA|0,g=I>>>0>(IA=I+IA|0)>>>0?g+1|0:g,gA=CI(E,0,h,0),I=l+g|0,I=gA>>>0>(IA=gA+IA|0)>>>0?I+1|0:I,g=CI(s,m,f,0),I=l+I|0,I=g>>>0>(gA=g+IA|0)>>>0?I+1|0:I,IA=(g=gA)+(gA=CI(y,0,_,0))|0,g=l+I|0,g=gA>>>0>IA>>>0?g+1|0:g,I=CI(o,0,p,0),gA=l+g|0,gA=I>>>0>(IA=I+IA|0)>>>0?gA+1|0:gA,I=CI(t,0,u,0),g=l+gA|0,I=I>>>0>(gA=IA=I+IA|0)>>>0?g+1|0:g,g=CI(r,0,D=hA>>>7&2097151,0),I=l+I|0,yA=gA=g+gA|0,aA=I=g>>>0>gA>>>0?I+1|0:I,CA=(g=gA)- -1048576|0,IA=I=I-((g>>>0<4293918720)-1|0)|0,g=(gA=I>>21)+rA|0,I=g=(I=(2097151&I)<<11|CA>>>21)>>>0>(sA=I+EA|0)>>>0?g+1|0:g,g=g+BA|0,g=(gA=rA=sA)>>>0>(sA=gA+kA|0)>>>0?g+1|0:g,BA=(BA=I)-(((I=rA)>>>0<4293918720)-1|0)|0,QA=I- -1048576|0,cA=(I=gA=sA)-(gA=-2097152&QA)|0,EA=g-((rA=BA)+(I>>>0<gA>>>0)|0)|0,U=eA-(g=-2097152&vA)|0,R=I=iA-((g>>>0>eA>>>0)+nA|0)|0,g=CI(S,P,-997805,-1),gA=l+aA|0,gA=g>>>0>(eA=g+yA|0)>>>0?gA+1|0:gA,aA=(g=eA)+(eA=CI(Y,x,136657,0))|0,g=l+gA|0,I=CI(U,I,-683901,-1),g=l+(eA>>>0>aA>>>0?g+1|0:g)|0,g=I>>>0>(gA=I+aA|0)>>>0?g+1|0:g,BA=gA-(I=-2097152&CA)|0,aA=g-((I>>>0>gA>>>0)+IA|0)|0,g=CI(B,0,w,0),gA=l,eA=(I=CI(v=2097151&((3&oA)<<30|qA>>>2),0,i,0))+g|0,g=l+gA|0,g=I>>>0>eA>>>0?g+1|0:g,gA=CI(Q,0,c,0),I=l+g|0,I=gA>>>0>(eA=gA+eA|0)>>>0?I+1|0:I,g=CI(C,0,h,0),gA=l+I|0,gA=g>>>0>(eA=g+eA|0)>>>0?gA+1|0:gA,I=CI(E,0,y,0),g=l+gA|0,g=I>>>0>(eA=I+eA|0)>>>0?g+1|0:g,gA=CI(s,m,p,0),I=l+g|0,I=gA>>>0>(eA=gA+eA|0)>>>0?I+1|0:I,gA=CI(_,0,f,0),g=l+I|0,g=gA>>>0>(eA=gA+eA|0)>>>0?g+1|0:g,gA=CI(o,0,u,0),I=l+g|0,I=gA>>>0>(eA=gA+eA|0)>>>0?I+1|0:I,g=CI(t,0,D,0),gA=l+I|0,gA=g>>>0>(eA=g+eA|0)>>>0?gA+1|0:gA,I=CI(r,0,d=2097151&((3&FA)<<30|VA>>>2),0),g=l+gA|0,eA=I>>>0>(IA=eA=I+eA|0)>>>0?g+1|0:g,g=CI(B,0,v,0),I=l,gA=g,g=CI(b=lA>>>5&2097151,0,i,0),I=l+I|0,I=g>>>0>(gA=gA+g|0)>>>0?I+1|0:I,nA=(g=CI(Q,0,w,0))+gA|0,gA=l+I|0,gA=g>>>0>nA>>>0?gA+1|0:gA,I=CI(c,0,h,0),g=l+gA|0,g=I>>>0>(nA=I+nA|0)>>>0?g+1|0:g,I=CI(C,0,y,0),g=l+g|0,g=I>>>0>(gA=I+nA|0)>>>0?g+1|0:g,nA=(I=gA)+(gA=CI(E,0,f,0))|0,I=l+g|0,I=gA>>>0>nA>>>0?I+1|0:I,g=CI(s,m,u,0),I=l+I|0,I=g>>>0>(gA=g+nA|0)>>>0?I+1|0:I,nA=(g=CI(_,0,p,0))+gA|0,gA=l+I|0,gA=g>>>0>nA>>>0?gA+1|0:gA,I=CI(o,0,D,0),g=l+gA|0,g=I>>>0>(nA=I+nA|0)>>>0?g+1|0:g,I=CI(t,0,d,0),g=l+g|0,I=g=I>>>0>(gA=I+nA|0)>>>0?g+1|0:g,g=CI(r,0,k=_A>>>5&2097151,0),I=l+I|0,sA=gA=g+gA|0,qA=I=g>>>0>gA>>>0?I+1|0:I,AA=(g=gA)- -1048576|0,XA=gA=I-((g>>>0<4293918720)-1|0)|0,g=(g=gA>>21)+eA|0,yA=gA=(I=(2097151&gA)<<11|AA>>>21)+IA|0,TA=g=I>>>0>gA>>>0?g+1|0:g,VA=(g=gA)- -1048576|0,RA=gA=TA-((g>>>0<4293918720)-1|0)|0,I=(g=gA>>21)+aA|0,CA=eA=(gA=(2097151&gA)<<11|VA>>>21)+BA|0,xA=I=gA>>>0>eA>>>0?I+1|0:I,mA=(g=eA)- -1048576|0,kA=gA=I-((g>>>0<4293918720)-1|0)|0,g=(g=gA>>21)+EA|0,aA=gA=(I=(2097151&gA)<<11|mA>>>21)+cA|0,_A=gA=(vA=g=I>>>0>gA>>>0?g+1|0:g)-(((g=gA)>>>0<4293918720)-1|0)|0,iA=(2097151&gA)<<11|(GA=g- -1048576|0)>>>21,IA=gA>>21,g=CI(B,0,E,0),I=l,gA=g,g=CI(i,0,C,0),I=l+I|0,I=g>>>0>(gA=gA+g|0)>>>0?I+1|0:I,g=CI(s,m,h,0),I=l+I|0,I=g>>>0>(gA=g+gA|0)>>>0?I+1|0:I,eA=(g=gA)+(gA=CI(Q,0,_,0))|0,g=l+I|0,g=gA>>>0>eA>>>0?g+1|0:g,I=CI(o,0,y,0),gA=l+g|0,gA=I>>>0>(eA=I+eA|0)>>>0?gA+1|0:gA,I=CI(t,0,f,0),g=l+gA|0,g=I>>>0>(eA=I+eA|0)>>>0?g+1|0:g,gA=CI(r,0,p,0),I=l+g|0,I=gA>>>0>(eA=gA+eA|0)>>>0?I+1|0:I,gA=CI(S,P,-683901,-1),I=(g=I)+l|0,I=gA>>>0>(BA=eA+gA|0)>>>0?I+1|0:I,gA=BA,BA=(BA=g)-(((g=eA)>>>0<4293918720)-1|0)|0,lA=g- -1048576|0,nA=(g=gA)-(gA=-2097152&lA)|0,gA=I-((eA=BA)+(g>>>0<gA>>>0)|0)|0,g=(g=rA>>21)+gA|0,g=(I=(2097151&rA)<<11|QA>>>21)>>>0>(rA=I+nA|0)>>>0?g+1|0:g,BA=(I=rA)-(gA=-2097152&(oA=I- -1048576|0))|0,gA=(g-((I>>>0<gA>>>0)+(rA=nA=g-((I>>>0<4293918720)-1|0)|0)|0)|0)+IA|0,J=iA=BA+iA|0,K=gA=BA>>>0>iA>>>0?gA+1|0:gA,nA=CI(iA,gA,-683901,-1),BA=l,I=CI(Q,0,s,m),g=l,gA=I,I=CI(i,0,E,0),g=l+g|0,g=I>>>0>(gA=gA+I|0)>>>0?g+1|0:g,IA=(I=gA)+(gA=CI(B,0,_,0))|0,I=l+g|0,I=gA>>>0>IA>>>0?I+1|0:I,gA=CI(o,0,h,0),g=l+I|0,g=gA>>>0>(IA=gA+IA|0)>>>0?g+1|0:g,gA=CI(t,0,y,0),I=l+g|0,I=gA>>>0>(IA=gA+IA|0)>>>0?I+1|0:I,g=CI(r,0,f,0),gA=l+I|0,gA=g>>>0>(IA=g+IA|0)>>>0?gA+1|0:gA,g=(g=eA>>21)+gA|0,hA=IA=(g=(I=(2097151&eA)<<11|lA>>>21)>>>0>(eA=I+IA|0)>>>0?g+1|0:g)-(((I=eA)>>>0<4293918720)-1|0)|0,eA=I-(gA=-2097152&(HA=I- -1048576|0))|0,gA=(g-((I>>>0<gA>>>0)+IA|0)|0)+(rA>>21)|0,L=eA=(g=(2097151&rA)<<11|oA>>>21)+eA|0,T=gA=g>>>0>eA>>>0?gA+1|0:gA,I=CI(eA,gA,136657,0),g=l+BA|0,LA=gA=I+nA|0,fA=I>>>0>gA>>>0?g+1|0:g,I=CI(h,0,b,0),g=l,gA=I,I=CI(F=2097151&UA,0,Q,0),g=l+g|0,g=I>>>0>(gA=gA+I|0)>>>0?g+1|0:g,eA=(I=gA)+(gA=CI(y,0,v,0))|0,I=l+g|0,I=gA>>>0>eA>>>0?I+1|0:I,g=CI(f,0,w,0),gA=l+I|0,gA=g>>>0>(eA=g+eA|0)>>>0?gA+1|0:gA,I=CI(c,0,p,0),g=l+gA|0,g=I>>>0>(eA=I+eA|0)>>>0?g+1|0:g,gA=CI(C,0,u,0),I=l+g|0,I=gA>>>0>(eA=gA+eA|0)>>>0?I+1|0:I,gA=CI(E,0,D,0),g=l+I|0,g=gA>>>0>(eA=gA+eA|0)>>>0?g+1|0:g,gA=CI(s,m,k,0),I=l+g|0,I=gA>>>0>(eA=gA+eA|0)>>>0?I+1|0:I,g=CI(_,0,d,0),gA=l+I|0,gA=g>>>0>(eA=g+eA|0)>>>0?gA+1|0:gA,I=CI(o,0,G=2097151&PA,0),g=l+gA|0,g=I>>>0>(eA=I+eA|0)>>>0?g+1|0:g,rA=eA=(gA=(n[e+23|0]|n[e+24|0]<<8|n[e+25|0]<<16|n[e+26|0]<<24)>>>5&2097151)+eA|0,eA=gA>>>0>eA>>>0?g+1|0:g,g=CI(y,0,b,0),I=l,gA=g,g=CI(h,0,F,0),I=l+I|0,I=g>>>0>(gA=gA+g|0)>>>0?I+1|0:I,IA=(g=CI(f,0,v,0))+gA|0,gA=l+I|0,gA=g>>>0>IA>>>0?gA+1|0:gA,I=CI(p,0,w,0),g=l+gA|0,g=I>>>0>(IA=I+IA|0)>>>0?g+1|0:g,I=CI(c,0,u,0),g=l+g|0,g=I>>>0>(gA=I+IA|0)>>>0?g+1|0:g,IA=(I=gA)+(gA=CI(C,0,D,0))|0,I=l+g|0,I=gA>>>0>IA>>>0?I+1|0:I,g=CI(E,0,d,0),I=l+I|0,I=g>>>0>(gA=g+IA|0)>>>0?I+1|0:I,IA=(g=CI(s,m,G,0))+gA|0,gA=l+I|0,gA=g>>>0>IA>>>0?gA+1|0:gA,I=CI(_,0,k,0),g=l+gA|0,g=I>>>0>(IA=I+IA|0)>>>0?g+1|0:g,IA=gA=(I=2097151&DA)+IA|0,cA=gA=(QA=g=I>>>0>gA>>>0?g+1|0:g)-(((g=gA)>>>0<4293918720)-1|0)|0,g=(2097151&gA)<<11|(FA=g- -1048576|0)>>>21,gA=(gA>>>21|0)+eA|0,oA=gA=g>>>0>(rA=g+rA|0)>>>0?gA+1|0:gA,UA=tA-(g=-2097152&pA)|0,DA=wA-((g>>>0>tA>>>0)+uA|0)|0,I=CI(B,0,o,0),g=l,gA=I,I=CI(i,0,s,m),g=l+g|0,g=I>>>0>(gA=gA+I|0)>>>0?g+1|0:g,eA=(I=gA)+(gA=CI(t,0,Q,0))|0,I=l+g|0,I=gA>>>0>eA>>>0?I+1|0:I,g=CI(r,0,h,0),gA=l+I|0,gA=g>>>0>(eA=g+eA|0)>>>0?gA+1|0:gA,BA=eA,g=CI(i,0,_,0),I=l,eA=g,g=CI(B,0,s,m),I=l+I|0,I=g>>>0>(eA=eA+g|0)>>>0?I+1|0:I,tA=(g=eA)+(eA=CI(Q,0,o,0))|0,g=l+I|0,g=eA>>>0>tA>>>0?g+1|0:g,I=CI(t,0,h,0),g=l+g|0,g=I>>>0>(eA=I+tA|0)>>>0?g+1|0:g,tA=(I=eA)+(eA=CI(r,0,y,0))|0,I=l+g|0,iA=I=eA>>>0>tA>>>0?I+1|0:I,wA=(g=eA=tA)- -1048576|0,nA=tA=I-((g>>>0<4293918720)-1|0)|0,I=(g=tA>>21)+gA|0,BA=I=(gA=BA=(tA=(2097151&tA)<<11|wA>>>21)+BA|0)>>>0<tA>>>0?I+1|0:I,uA=(g=gA)- -1048576|0,I=(g=(tA=pA=I-((g>>>0<4293918720)-1|0)|0)>>21)+DA|0,q=I=(pA=(2097151&tA)<<11|uA>>>21)>>>0>(H=UA=pA+UA|0)>>>0?I+1|0:I,DA=CI(H,I,470296,0),pA=l,M=gA-(I=-2097152&uA)|0,NA=g=BA-((I>>>0>gA>>>0)+tA|0)|0,I=CI(U,R,666643,0),gA=l+pA|0,gA=I>>>0>(tA=I+DA|0)>>>0?gA+1|0:gA,I=CI(M,g,654183,0),g=l+gA|0,I=I>>>0>(BA=tA=I+tA|0)>>>0?g+1|0:g,g=eA-(gA=-2097152&wA)|0,gA=(hA>>21)+(tA=iA-((gA>>>0>eA>>>0)+nA|0)|0)|0,X=nA=(eA=(2097151&hA)<<11|HA>>>21)+g|0,PA=gA=eA>>>0>nA>>>0?gA+1|0:gA,jA=rA- -1048576|0,eA=tA=oA-((rA>>>0<4293918720)-1|0)|0,g=CI(nA,gA,-997805,-1),I=l+I|0,g=(I=g>>>0>(gA=g+BA|0)>>>0?I+1|0:I)+oA|0,g=gA>>>0>(rA=gA+rA|0)>>>0?g+1|0:g,DA=(gA=rA)-(I=-2097152&jA)|0,pA=g-((I>>>0>gA>>>0)+eA|0)|0,g=CI(M,NA,470296,0),I=l,rA=(gA=g)+(g=CI(H,q,666643,0))|0,gA=l+I|0,gA=g>>>0>rA>>>0?gA+1|0:gA,I=CI(nA,PA,654183,0),g=l+gA|0,I=QA+(I>>>0>(rA=I+rA|0)>>>0?g+1|0:g)|0,oA=(gA=IA+rA|0)-(g=-2097152&FA)|0,tA=(I=gA>>>0<IA>>>0?I+1|0:I)-((g>>>0>gA>>>0)+cA|0)|0,I=CI(f,0,b,0),g=l,gA=I,I=CI(y,0,F,0),g=l+g|0,g=I>>>0>(gA=gA+I|0)>>>0?g+1|0:g,I=CI(p,0,v,0),g=l+g|0,g=I>>>0>(gA=I+gA|0)>>>0?g+1|0:g,rA=(I=gA)+(gA=CI(u,0,w,0))|0,I=l+g|0,I=gA>>>0>rA>>>0?I+1|0:I,g=CI(c,0,D,0),gA=l+I|0,gA=g>>>0>(rA=g+rA|0)>>>0?gA+1|0:gA,g=CI(C,0,d,0),I=l+gA|0,I=g>>>0>(rA=g+rA|0)>>>0?I+1|0:I,gA=CI(E,0,k,0),g=l+I|0,g=gA>>>0>(rA=gA+rA|0)>>>0?g+1|0:g,I=CI(_,0,G,0),g=l+g|0,g=I>>>0>(gA=I+rA|0)>>>0?g+1|0:g,I=gA,rA=(gA=2097151&((7&bA)<<29|WA>>>3))>>>0>(IA=rA=I+gA|0)>>>0?g+1|0:g,g=CI(p,0,b,0),I=l,BA=(gA=g)+(g=CI(f,0,F,0))|0,gA=l+I|0,gA=g>>>0>BA>>>0?gA+1|0:gA,I=CI(u,0,v,0),g=l+gA|0,g=I>>>0>(BA=I+BA|0)>>>0?g+1|0:g,gA=CI(D,0,w,0),I=l+g|0,I=gA>>>0>(BA=gA+BA|0)>>>0?I+1|0:I,gA=CI(c,0,d,0),g=l+I|0,g=gA>>>0>(BA=gA+BA|0)>>>0?g+1|0:g,gA=CI(C,0,k,0),I=l+g|0,I=gA>>>0>(BA=gA+BA|0)>>>0?I+1|0:I,g=CI(E,0,G,0),gA=l+I|0,g=g>>>0>(I=BA=g+BA|0)>>>0?gA+1|0:gA,wA=gA=BA+(I=YA>>>6&2097151)|0,EA=gA=(iA=g=I>>>0>gA>>>0?g+1|0:g)-(((g=gA)>>>0<4293918720)-1|0)|0,g=(2097151&gA)<<11|(uA=g- -1048576|0)>>>21,gA=(gA>>>21|0)+rA|0,nA=gA=g>>>0>(IA=g+IA|0)>>>0?gA+1|0:gA,hA=(g=IA)- -1048576|0,BA=gA=gA-((g>>>0<4293918720)-1|0)|0,g=(I=gA>>>21|0)+tA|0,QA=rA=(gA=(2097151&gA)<<11|hA>>>21)+oA|0,lA=gA=(tA=g=gA>>>0>rA>>>0?g+1|0:g)-(((g=rA)>>>0<4293918720)-1|0)|0,g=(2097151&gA)<<11|(cA=g- -1048576|0)>>>21,gA=(gA>>21)+pA|0,g=(I=gA=g>>>0>(rA=g+DA|0)>>>0?gA+1|0:gA)+fA|0,oA=(oA=I)-(((I=rA)>>>0<4293918720)-1|0)|0,OA=I- -1048576|0,ZA=(I=gA=bA=rA+LA|0)-(gA=-2097152&OA)|0,dA=(g=rA>>>0>bA>>>0?g+1|0:g)-((rA=oA)+(I>>>0<gA>>>0)|0)|0,g=CI(L,T,-997805,-1),I=l+tA|0,HA=gA=g+QA|0,oA=g>>>0>gA>>>0?I+1|0:I,I=CI(X,PA,470296,0),g=l,gA=I,I=CI(M,NA,666643,0),g=l+g|0,g=(g=I>>>0>(gA=gA+I|0)>>>0?g+1|0:g)+nA|0,g=(I=gA+IA|0)>>>0<IA>>>0?g+1|0:g,hA=(gA=I)-(I=-2097152&hA)|0,fA=g-((I>>>0>gA>>>0)+BA|0)|0,g=CI(X,PA,666643,0),I=l+iA|0,QA=gA=g+wA|0,tA=g>>>0>gA>>>0?I+1|0:I,I=CI(u,0,b,0),g=l,gA=I,I=CI(p,0,F,0),g=l+g|0,g=I>>>0>(gA=gA+I|0)>>>0?g+1|0:g,I=CI(D,0,v,0),g=l+g|0,g=I>>>0>(gA=I+gA|0)>>>0?g+1|0:g,IA=(I=gA)+(gA=CI(d,0,w,0))|0,I=l+g|0,I=gA>>>0>IA>>>0?I+1|0:I,g=CI(c,0,k,0),gA=l+I|0,gA=g>>>0>(IA=g+IA|0)>>>0?gA+1|0:gA,g=CI(C,0,G,0),I=l+gA|0,g=I=g>>>0>(IA=g+IA|0)>>>0?I+1|0:I,BA=IA=(gA=2097151&((1&SA)<<31|KA>>>1))+IA|0,IA=gA>>>0>IA>>>0?g+1|0:g,I=CI(D,0,b,0),g=l,gA=I,I=CI(u,0,F,0),g=l+g|0,g=I>>>0>(gA=gA+I|0)>>>0?g+1|0:g,nA=(I=gA)+(gA=CI(d,0,v,0))|0,I=l+g|0,I=gA>>>0>nA>>>0?I+1|0:I,g=CI(k,0,w,0),I=l+I|0,I=g>>>0>(gA=g+nA|0)>>>0?I+1|0:I,nA=(g=CI(c,0,G,0))+gA|0,gA=l+I|0,g=g>>>0>(I=nA)>>>0?gA+1|0:gA,iA=gA=nA+(I=JA>>>4&2097151)|0,JA=gA=(FA=g=I>>>0>gA>>>0?g+1|0:g)-(((g=gA)>>>0<4293918720)-1|0)|0,g=(2097151&gA)<<11|(WA=g- -1048576|0)>>>21,gA=(gA>>>21|0)+IA|0,nA=BA=g+BA|0,SA=gA=g>>>0>BA>>>0?gA+1|0:gA,LA=(g=BA)- -1048576|0,YA=gA=gA-((g>>>0<4293918720)-1|0)|0,g=(I=gA>>>21|0)+tA|0,wA=gA=(bA=(gA=(gA=(2097151&gA)<<11|LA>>>21)>>>0>(I=IA=gA+QA|0)>>>0?g+1|0:g)-(((g=-2097152&uA)>>>0>I>>>0)+EA|0)|0)-(((g=BA=I-g|0)>>>0<4293918720)-1|0)|0,I=(I=gA>>21)+fA|0,DA=gA=(g=(2097151&gA)<<11|(UA=g- -1048576|0)>>>21)+hA|0,uA=I=g>>>0>gA>>>0?I+1|0:I,pA=(g=gA)- -1048576|0,hA=IA=I-((g>>>0<4293918720)-1|0)|0,N=aA-(g=-2097152&GA)|0,KA=gA=vA-((g>>>0>aA>>>0)+_A|0)|0,g=(I=IA>>21)+oA|0,g=(IA=(2097151&IA)<<11|pA>>>21)>>>0>(aA=IA+HA|0)>>>0?g+1|0:g,tA=(IA=CI(J,K,136657,0))+(aA-(I=-2097152&cA)|0)|0,I=l+(g-((I>>>0>aA>>>0)+lA|0)|0)|0,I=IA>>>0>tA>>>0?I+1|0:I,gA=CI(N,gA,-683901,-1),g=l+I|0,tA=IA=gA+tA|0,QA=gA=(fA=g=gA>>>0>IA>>>0?g+1|0:g)-(((g=IA)>>>0<4293918720)-1|0)|0,I=(I=gA>>21)+dA|0,aA=gA=(g=(2097151&gA)<<11|(GA=g- -1048576|0)>>>21)+ZA|0,cA=I=g>>>0>gA>>>0?I+1|0:I,EA=gA=I-(((g=gA)>>>0<4293918720)-1|0)|0,HA=(2097151&gA)<<11|(vA=g- -1048576|0)>>>21,lA=gA>>21,I=CI(Q,0,b,0),g=l,gA=I,I=CI(B,0,F,0),g=l+g|0,g=I>>>0>(gA=gA+I|0)>>>0?g+1|0:g,IA=(I=CI(h,0,v,0))+gA|0,gA=l+g|0,gA=I>>>0>IA>>>0?gA+1|0:gA,g=CI(y,0,w,0),I=l+gA|0,I=g>>>0>(IA=g+IA|0)>>>0?I+1|0:I,gA=CI(c,0,f,0),g=l+I|0,g=gA>>>0>(IA=gA+IA|0)>>>0?g+1|0:g,gA=CI(C,0,p,0),I=l+g|0,I=gA>>>0>(IA=gA+IA|0)>>>0?I+1|0:I,gA=CI(E,0,u,0),g=l+I|0,g=gA>>>0>(IA=gA+IA|0)>>>0?g+1|0:g,I=CI(s,m,d,0),gA=l+g|0,gA=I>>>0>(IA=I+IA|0)>>>0?gA+1|0:gA,g=CI(_,0,D,0),I=l+gA|0,I=g>>>0>(IA=g+IA|0)>>>0?I+1|0:I,gA=CI(o,0,k,0),g=l+I|0,g=gA>>>0>(IA=gA+IA|0)>>>0?g+1|0:g,gA=CI(t,0,G,0),I=l+g|0,I=gA>>>0>(IA=gA+IA|0)>>>0?I+1|0:I,g=kg(e+26|0),gA=2097151&((3&(gA=l))<<30|g>>>2),g=I,_A=IA=gA+IA|0,IA=g=gA>>>0>IA>>>0?g+1|0:g,g=CI(U,R,470296,0),I=l,dA=(gA=g)+(g=CI(Y,x,666643,0))|0,gA=l+I|0,gA=g>>>0>dA>>>0?gA+1|0:gA,g=CI(H,q,654183,0),I=l+gA|0,I=g>>>0>(dA=g+dA|0)>>>0?I+1|0:I,g=CI(M,NA,-997805,-1),I=l+I|0,I=g>>>0>(gA=g+dA|0)>>>0?I+1|0:I,dA=(g=gA)+(gA=CI(X,PA,136657,0))|0,g=l+I|0,g=(g=gA>>>0>dA>>>0?g+1|0:g)+IA|0,g=(I=dA)>>>0>(gA=I+_A|0)>>>0?g+1|0:g,I=gA,gA=g,V=(g=_A)- -1048576|0,IA=oA=IA-((g>>>0<4293918720)-1|0)|0,oA=I,gA=(I=eA>>21)+gA|0,gA=(g=(2097151&eA)<<11|jA>>>21)>>>0>(eA=oA+g|0)>>>0?gA+1|0:gA,I=eA-(g=-2097152&V)|0,_A=CI(L,T,-683901,-1),g=(eA=gA-((g>>>0>eA>>>0)+IA|0)|0)+l|0,gA=g=_A>>>0>(dA=I+_A|0)>>>0?g+1|0:g,oA=eA-(((g=I)>>>0<4293918720)-1|0)|0,W=g- -1048576|0,gA=(I=rA>>21)+gA|0,gA=(g=(2097151&rA)<<11|OA>>>21)>>>0>(rA=g+(_A=dA)|0)>>>0?gA+1|0:gA,_A=I=rA-(g=-2097152&W)|0,g=(rA=gA-((g>>>0>rA>>>0)+(eA=oA)|0)|0)+lA|0,j=I- -1048576|0,oA=rA-((I>>>0<4293918720)-1|0)|0,jA=(I=gA=HA=I+HA|0)-(gA=-2097152&j)|0,OA=(_A>>>0>I>>>0?g+1|0:g)-((I>>>0<gA>>>0)+(rA=oA)|0)|0,ZA=aA-(g=-2097152&vA)|0,dA=cA-((g>>>0>aA>>>0)+EA|0)|0,HA=tA-(g=-2097152&GA)|0,GA=fA-((g>>>0>tA>>>0)+QA|0)|0,I=CI(L,T,654183,0),g=l+uA|0,g=I>>>0>(gA=I+DA|0)>>>0?g+1|0:g,tA=((aA=gA)-(I=-2097152&pA)|0)+(gA=CI(J,K,-997805,-1))|0,I=l+(g-((I>>>0>aA>>>0)+hA|0)|0)|0,I=gA>>>0>tA>>>0?I+1|0:I,gA=CI(N,KA,136657,0),g=l+I|0,vA=aA=gA+tA|0,tA=gA>>>0>aA>>>0?g+1|0:g,_A=CA-(g=-2097152&mA)|0,fA=xA-((g>>>0>CA>>>0)+kA|0)|0,g=CI(Y,x,-997805,-1),I=l,gA=g,g=CI(S,P,654183,0),I=l+I|0,I=g>>>0>(gA=gA+g|0)>>>0?I+1|0:I,g=CI(U,R,136657,0),I=l+I|0,I=g>>>0>(gA=g+gA|0)>>>0?I+1|0:I,aA=(g=gA)+(gA=CI(H,q,-683901,-1))|0,g=l+I|0,gA=TA+(gA>>>0>aA>>>0?g+1|0:g)|0,QA=(I=aA+yA|0)-(g=-2097152&VA)|0,cA=(gA=I>>>0<yA>>>0?gA+1|0:gA)-((g>>>0>I>>>0)+RA|0)|0,g=CI(Y,x,654183,0),I=l,gA=g,g=CI(S,P,470296,0),I=l+I|0,I=g>>>0>(gA=gA+g|0)>>>0?I+1|0:I,aA=(g=gA)+(gA=CI(U,R,-997805,-1))|0,g=l+I|0,I=aA+sA|0,gA=qA+(gA>>>0>aA>>>0?g+1|0:g)|0,aA=(g=CI(H,q,136657,0))+I|0,I=l+(I>>>0<sA>>>0?gA+1|0:gA)|0,I=g>>>0>aA>>>0?I+1|0:I,gA=CI(M,NA,-683901,-1),g=l+I|0,g=gA>>>0>(aA=gA+aA|0)>>>0?g+1|0:g,yA=(gA=aA)-(I=-2097152&AA)|0,CA=g-((I>>>0>gA>>>0)+XA|0)|0,I=CI(B,0,b,0),g=l,gA=I,I=CI(i,0,F,0),g=l+g|0,g=I>>>0>(gA=gA+I|0)>>>0?g+1|0:g,aA=(I=gA)+(gA=CI(Q,0,v,0))|0,I=l+g|0,I=gA>>>0>aA>>>0?I+1|0:I,gA=CI(h,0,w,0),g=l+I|0,g=gA>>>0>(aA=gA+aA|0)>>>0?g+1|0:g,I=CI(c,0,y,0),gA=l+g|0,gA=I>>>0>(aA=I+aA|0)>>>0?gA+1|0:gA,g=CI(C,0,f,0),I=l+gA|0,I=g>>>0>(aA=g+aA|0)>>>0?I+1|0:I,gA=CI(E,0,p,0),g=l+I|0,g=gA>>>0>(aA=gA+aA|0)>>>0?g+1|0:g,gA=CI(s,m,D,0),I=l+g|0,I=gA>>>0>(aA=gA+aA|0)>>>0?I+1|0:I,gA=CI(_,0,u,0),g=l+I|0,g=gA>>>0>(aA=gA+aA|0)>>>0?g+1|0:g,I=CI(o,0,d,0),gA=l+g|0,gA=I>>>0>(aA=I+aA|0)>>>0?gA+1|0:gA,g=CI(r,0,G,0),I=l+gA|0,I=g>>>0>(aA=g+aA|0)>>>0?I+1|0:I,gA=CI(t,0,k,0),g=l+I|0,g=gA>>>0>(aA=gA+aA|0)>>>0?g+1|0:g,I=(e=(n[e+28|0]|n[e+29|0]<<8|n[e+30|0]<<16|n[e+31|0]<<24)>>>7|0)>>>0>(gA=e+aA|0)>>>0?g+1|0:g,g=gA,gA=IA>>21,IA=g+(e=(2097151&IA)<<11|V>>>21)|0,g=I+gA|0,aA=IA,EA=g=e>>>0>IA>>>0?g+1|0:g,uA=(g=IA)- -1048576|0,lA=I=EA-((g>>>0<4293918720)-1|0)|0,g=(gA=I>>21)+CA|0,IA=e=(I=(2097151&I)<<11|uA>>>21)+yA|0,oA=g=I>>>0>e>>>0?g+1|0:g,hA=(g=e)- -1048576|0,sA=I=oA-((g>>>0<4293918720)-1|0)|0,g=(gA=I>>21)+cA|0,yA=g=(I=(2097151&I)<<11|hA>>>21)>>>0>(e=I+QA|0)>>>0?g+1|0:g,cA=(g=e)- -1048576|0,CA=I=yA-((g>>>0<4293918720)-1|0)|0,g=(gA=I>>21)+fA|0,mA=QA=(I=(2097151&I)<<11|cA>>>21)+_A|0,kA=g=I>>>0>QA>>>0?g+1|0:g,g=CI(QA,g,-683901,-1),I=l+tA|0,QA=gA=g+vA|0,tA=g>>>0>gA>>>0?I+1|0:I,DA=e-(g=-2097152&cA)|0,vA=CA=yA-((g>>>0>e>>>0)+CA|0)|0,I=CI(L,T,470296,0)+BA|0,g=bA+l|0,g=I>>>0<BA>>>0?g+1|0:g,BA=((gA=I)-(e=-2097152&UA)|0)+(I=CI(J,K,654183,0))|0,gA=l+(g-((e>>>0>gA>>>0)+wA|0)|0)|0,g=CI(N,KA,-997805,-1),I=l+(I>>>0>BA>>>0?gA+1|0:gA)|0,I=g>>>0>(e=g+BA|0)>>>0?I+1|0:I,gA=(g=e)+(e=CI(mA,kA,136657,0))|0,g=l+I|0,g=e>>>0>gA>>>0?g+1|0:g,e=CI(DA,CA,-683901,-1),I=l+g|0,yA=I=e>>>0>(gA=e+gA|0)>>>0?I+1|0:I,fA=(g=gA)- -1048576|0,CA=e=I-((g>>>0<4293918720)-1|0)|0,g=(g=e>>21)+tA|0,BA=g=(I=(2097151&e)<<11|fA>>>21)>>>0>(e=I+QA|0)>>>0?g+1|0:g,cA=(g=e)- -1048576|0,I=(g=(tA=QA=BA-((g>>>0<4293918720)-1|0)|0)>>21)+GA|0,GA=wA=(QA=(2097151&tA)<<11|cA>>>21)+HA|0,QA=QA>>>0>wA>>>0?I+1|0:I,qA=e-(g=-2097152&cA)|0,XA=BA-((g>>>0>e>>>0)+tA|0)|0,RA=gA-(g=-2097152&fA)|0,xA=yA-((g>>>0>gA>>>0)+CA|0)|0,g=CI(L,T,666643,0),gA=l+(SA-(((I=-2097152&LA)>>>0>nA>>>0)+YA|0)|0)|0,gA=g>>>0>(e=g+(nA-I|0)|0)>>>0?gA+1|0:gA,g=CI(J,K,470296,0),I=l+gA|0,I=g>>>0>(e=g+e|0)>>>0?I+1|0:I,gA=(g=e)+(e=CI(N,KA,654183,0))|0,g=l+I|0,CA=gA,e=e>>>0>gA>>>0?g+1|0:g,nA=IA-(g=-2097152&hA)|0,tA=oA-((g>>>0>IA>>>0)+sA|0)|0,I=CI(Y,x,470296,0),g=l,gA=I,I=CI(S,P,666643,0),g=l+g|0,g=I>>>0>(gA=gA+I|0)>>>0?g+1|0:g,IA=(I=gA)+(gA=CI(U,R,654183,0))|0,I=l+g|0,I=gA>>>0>IA>>>0?I+1|0:I,gA=CI(H,q,-997805,-1),g=l+I|0,g=gA>>>0>(IA=gA+IA|0)>>>0?g+1|0:g,I=CI(M,NA,136657,0),gA=l+g|0,gA=I>>>0>(IA=I+IA|0)>>>0?gA+1|0:gA,g=CI(X,PA,-683901,-1),I=l+gA|0,g=EA+(g>>>0>(IA=g+IA|0)>>>0?I+1|0:I)|0,g=(gA=IA+aA|0)>>>0<aA>>>0?g+1|0:g,I=(IA=gA)-(gA=-2097152&uA)|0,gA=g-((gA>>>0>IA>>>0)+lA|0)|0,g=(g=eA>>21)+gA|0,BA=eA=(IA=I)+(I=(2097151&eA)<<11|W>>>21)|0,sA=gA=(oA=g=I>>>0>eA>>>0?g+1|0:g)-(((g=eA)>>>0<4293918720)-1|0)|0,I=(2097151&gA)<<11|(bA=g- -1048576|0)>>>21,gA=(gA>>21)+tA|0,pA=eA=I+nA|0,_A=gA=I>>>0>eA>>>0?gA+1|0:gA,g=CI(eA,gA,-683901,-1),I=l+e|0,I=g>>>0>(gA=g+CA|0)>>>0?I+1|0:I,e=CI(mA,kA,-997805,-1),g=l+I|0,g=e>>>0>(gA=e+gA|0)>>>0?g+1|0:g,e=CI(DA,vA,136657,0),I=l+g|0,nA=gA=e+gA|0,IA=e>>>0>gA>>>0?I+1|0:I,I=CI(d,0,b,0),g=l,e=I,I=CI(D,0,F,0),g=l+g|0,g=I>>>0>(e=e+I|0)>>>0?g+1|0:g,I=CI(k,0,v,0),gA=l+g|0,gA=I>>>0>(e=I+e|0)>>>0?gA+1|0:gA,g=CI(G,0,w,0),I=l+gA|0,g=I=g>>>0>(e=g+e|0)>>>0?I+1|0:I,aA=e=(I=MA>>>7&2097151)+e|0,e=I>>>0>e>>>0?g+1|0:g,g=CI(k,0,b,0),I=l,gA=g,g=CI(d,0,F,0),I=l+I|0,I=g>>>0>(gA=gA+g|0)>>>0?I+1|0:I,g=CI(G,0,v,0),I=l+I|0,I=g>>>0>(gA=g+gA|0)>>>0?I+1|0:I,eA=(g=gA)+(gA=2097151&((3&$)<<30|z>>>2))|0,g=I,tA=eA,cA=gA=(eA=g=gA>>>0>eA>>>0?g+1|0:g)-(((g=tA)>>>0<4293918720)-1|0)|0,I=(I=gA>>>21|0)+e|0,aA=gA=(g=(2097151&gA)<<11|(YA=g- -1048576|0)>>>21)+aA|0,EA=I=g>>>0>gA>>>0?I+1|0:I,wA=(g=gA)- -1048576|0,yA=e=I-((g>>>0<4293918720)-1|0)|0,g=(I=e>>>21|0)+FA|0,g=(e=iA+((2097151&e)<<11|wA>>>21)|0)>>>0<iA>>>0?g+1|0:g,iA=((gA=e)-(I=-2097152&WA)|0)+(e=CI(J,K,666643,0))|0,I=l+(g-((I>>>0>gA>>>0)+JA|0)|0)|0,I=e>>>0>iA>>>0?I+1|0:I,g=CI(N,KA,470296,0),I=l+I|0,I=g>>>0>(e=g+iA|0)>>>0?I+1|0:I,gA=(g=e)+(e=CI(pA,_A,136657,0))|0,g=l+I|0,g=e>>>0>gA>>>0?g+1|0:g,I=CI(mA,kA,654183,0),g=l+g|0,g=I>>>0>(e=I+gA|0)>>>0?g+1|0:g,I=CI(DA,vA,-997805,-1),gA=l+g|0,uA=e=I+e|0,CA=gA=I>>>0>e>>>0?gA+1|0:gA,hA=(g=e)- -1048576|0,iA=e=gA-((g>>>0<4293918720)-1|0)|0,I=(g=e>>21)+IA|0,IA=gA=(e=(2097151&e)<<11|hA>>>21)+nA|0,e=I=e>>>0>gA>>>0?I+1|0:I,nA=gA=I-(((g=gA)>>>0<4293918720)-1|0)|0,I=(2097151&gA)<<11|(fA=g- -1048576|0)>>>21,gA=(gA>>21)+xA|0,TA=lA=I+RA|0,lA=I>>>0>lA>>>0?gA+1|0:gA,gA=rA>>21,rA=(g=(2097151&rA)<<11|j>>>21)+(BA-(I=-2097152&bA)|0)|0,I=gA+(oA-((I>>>0>BA>>>0)+sA|0)|0)|0,oA=I=g>>>0>rA>>>0?I+1|0:I,sA=I=I-(((g=rA)>>>0<4293918720)-1|0)|0,SA=gA=I>>21,I=CI(MA=(2097151&I)<<11|(bA=g- -1048576|0)>>>21,gA,-683901,-1),g=l+e|0,g=I>>>0>(gA=I+IA|0)>>>0?g+1|0:g,RA=gA-(I=-2097152&fA)|0,xA=g-((I>>>0>gA>>>0)+nA|0)|0,g=CI(MA,SA,136657,0),I=l+CA|0,I=g>>>0>(e=g+uA|0)>>>0?I+1|0:I,FA=e-(g=-2097152&hA)|0,JA=I-((g>>>0>e>>>0)+iA|0)|0,e=(g=CI(N,KA,666643,0))+(aA-(I=-2097152&wA)|0)|0,I=l+(EA-((I>>>0>aA>>>0)+yA|0)|0)|0,I=g>>>0>e>>>0?I+1|0:I,gA=(g=e)+(e=CI(pA,_A,-997805,-1))|0,g=l+I|0,g=e>>>0>gA>>>0?g+1|0:g,e=(I=CI(mA,kA,470296,0))+gA|0,gA=l+g|0,gA=I>>>0>e>>>0?gA+1|0:gA,g=CI(DA,vA,654183,0),I=l+gA|0,EA=e=g+e|0,BA=g>>>0>e>>>0?I+1|0:I,IA=eA,I=CI(G,0,b,0),g=l,e=I,I=CI(k,0,F,0),g=l+g|0,g=I>>>0>(e=e+I|0)>>>0?g+1|0:g,I=e,I=(e=Z>>>5&2097151)>>>0>(gA=I+e|0)>>>0?g+1|0:g,e=2097151&O,eA=CI(G,0,F,0)+e|0,g=l,CA=e=(yA=g=e>>>0>eA>>>0?g+1|0:g)-(((g=eA)>>>0<4293918720)-1|0)|0,aA=gA,I=I+(gA=e>>>21|0)|0,iA=I=(g=(2097151&e)<<11|(wA=g- -1048576|0)>>>21)>>>0>(e=aA+g|0)>>>0?I+1|0:I,uA=(g=e)- -1048576|0,nA=I=I-((g>>>0<4293918720)-1|0)|0,g=(gA=I>>>21|0)+IA|0,g=(I=(2097151&I)<<11|uA>>>21)>>>0>(aA=I+tA|0)>>>0?g+1|0:g,aA=(gA=CI(pA,_A,654183,0))+((IA=aA)-(I=-2097152&YA)|0)|0,I=l+(g-((16383&cA)+(I>>>0>IA>>>0)|0)|0)|0,g=CI(mA,kA,666643,0),gA=l+(gA>>>0>aA>>>0?I+1|0:I)|0,gA=g>>>0>(IA=g+aA|0)>>>0?gA+1|0:gA,I=CI(DA,vA,470296,0),g=l+gA|0,hA=IA=I+IA|0,tA=g=I>>>0>IA>>>0?g+1|0:g,fA=(g=IA)- -1048576|0,aA=I=tA-((g>>>0<4293918720)-1|0)|0,g=(gA=I>>21)+BA|0,cA=IA=(I=(2097151&I)<<11|fA>>>21)+EA|0,I=g=I>>>0>IA>>>0?g+1|0:g,EA=(g=IA)- -1048576|0,g=(gA=(IA=BA=I-((g>>>0<4293918720)-1|0)|0)>>21)+JA|0,BA=(BA=(2097151&IA)<<11|EA>>>21)>>>0>(FA=YA=BA+FA|0)>>>0?g+1|0:g,g=CI(MA,SA,-997805,-1);I=l+I|0,I=g>>>0>(gA=g+cA|0)>>>0?I+1|0:I,JA=gA-(g=-2097152&EA)|0,YA=I-((g>>>0>gA>>>0)+IA|0)|0,g=CI(MA,SA,654183,0),I=l+tA|0,I=g>>>0>(gA=g+hA|0)>>>0?I+1|0:I,cA=gA-(g=-2097152&fA)|0,EA=I-((g>>>0>gA>>>0)+aA|0)|0,gA=(I=CI(pA,_A,470296,0))+(e-(g=-2097152&uA)|0)|0,g=l+(iA-((16383&nA)+(g>>>0>e>>>0)|0)|0)|0,g=I>>>0>gA>>>0?g+1|0:g,e=(I=CI(DA,vA,666643,0))+gA|0,gA=l+g|0,gA=I>>>0>e>>>0?gA+1|0:gA,IA=e,e=(g=CI(pA,_A,666643,0))+(eA-(I=-2097152&wA)|0)|0,I=l+(yA-((4095&CA)+(I>>>0>eA>>>0)|0)|0)|0,tA=I=g>>>0>e>>>0?I+1|0:I,CA=(g=e)- -1048576|0,aA=eA=I-((g>>>0<4293918720)-1|0)|0,gA=(g=eA>>21)+gA|0,iA=eA=(I=(2097151&eA)<<11|CA>>>21)+IA|0,IA=gA=I>>>0>eA>>>0?gA+1|0:gA,nA=(g=eA)- -1048576|0,eA=gA=gA-((g>>>0<4293918720)-1|0)|0,I=(g=gA>>21)+EA|0,gA=I=(gA=(2097151&gA)<<11|nA>>>21)>>>0>(yA=gA+cA|0)>>>0?I+1|0:I,I=CI(MA,SA,470296,0),g=l+IA|0,g=I>>>0>(iA=I+iA|0)>>>0?g+1|0:g,I=iA-(IA=-2097152&nA)|0,IA=g-((IA>>>0>iA>>>0)+eA|0)|0,nA=I,eA=(g=CI(MA,SA,666643,0))+(e-(I=-2097152&CA)|0)|0,I=l+(tA-((I>>>0>e>>>0)+aA|0)|0)|0,g=(g=(I=g>>>0>eA>>>0?I+1|0:I)>>21)+IA|0,aA=e=nA+(I=(2097151&I)<<11|(e=eA)>>>21)|0,gA=(I=(g=I>>>0>e>>>0?g+1|0:g)>>21)+gA|0,IA=e=(g=(2097151&g)<<11|e>>>21)+yA|0,e=(2097151&(gA=g>>>0>(I=e)>>>0?gA+1|0:gA))<<11|I>>>21,I=(g=gA>>21)+YA|0,iA=gA=e+JA|0,gA=(I=e>>>0>(g=gA)>>>0?I+1|0:I)>>21,I=(2097151&I)<<11|g>>>21,g=gA+BA|0,uA=e=I+FA|0,I=(I=(g=I>>>0>e>>>0?g+1|0:g)>>21)+xA|0,hA=e=(g=(2097151&g)<<11|e>>>21)+RA|0,g=(g=(I=g>>>0>e>>>0?I+1|0:I)>>21)+lA|0,fA=e=(I=(2097151&I)<<11|e>>>21)+TA|0,gA=(I=(g=I>>>0>e>>>0?g+1|0:g)>>21)+XA|0,cA=e=(g=(2097151&g)<<11|e>>>21)+qA|0,e=(2097151&(gA=g>>>0>(I=e)>>>0?gA+1|0:gA))<<11|I>>>21,I=(g=gA>>21)+QA|0,EA=gA=e+GA|0,gA=(I=e>>>0>(g=gA)>>>0?I+1|0:I)>>21,I=(2097151&I)<<11|g>>>21,g=gA+dA|0,lA=e=I+ZA|0,I=(I=(g=I>>>0>e>>>0?g+1|0:g)>>21)+OA|0,yA=e=(g=(2097151&g)<<11|e>>>21)+jA|0,g=(I=g>>>0>e>>>0?I+1|0:I)>>21,tA=(gA=(2097151&I)<<11|e>>>21)+(I=rA-(e=-2097152&bA)|0)|0,gA=(oA-((e>>>0>rA>>>0)+sA|0)|0)+g|0,CA=tA,sA=(2097151&(gA=I>>>0>(g=tA)>>>0?gA+1|0:gA))<<11|g>>>21,BA=I=gA>>21,g=2097151&eA,e=CI(sA,I,666643,0)+g|0,I=l,tA=e,e=I=g>>>0>e>>>0?I+1|0:I,a[0|A]=tA,a[A+1|0]=(255&I)<<24|tA>>>8,eA=A,I=2097151&aA,gA=CI(sA,BA,470296,0)+I|0,g=l,g=I>>>0>gA>>>0?g+1|0:g,aA=gA,rA=(2097151&(gA=e))<<11|tA>>>21,gA=g+(I=gA>>21)|0,gA=rA>>>0>(aA=aA+rA|0)>>>0?gA+1|0:gA,rA=aA,a[eA+4|0]=(2047&gA)<<21|rA>>>11,g=gA,gA=rA,a[eA+3|0]=(7&g)<<29|gA>>>3,gA=2097151&IA,IA=CI(sA,BA,654183,0)+gA|0,I=l,I=gA>>>0>IA>>>0?I+1|0:I,gA=IA,IA=(2097151&g)<<11|rA>>>21,g=(g>>21)+I|0,I=g=IA>>>0>(aA=gA+IA|0)>>>0?g+1|0:g,a[eA+6|0]=(63&g)<<26|aA>>>6,IA=0,g=nA=2097151&rA,a[eA+2|0]=31&((65535&e)<<16|tA>>>16)|g<<5,e=2097151&iA,gA=CI(sA,BA,-997805,-1)+e|0,g=l,e=g=e>>>0>gA>>>0?g+1|0:g,g=I>>21,rA=(I=(2097151&I)<<11|aA>>>21)+gA|0,gA=g+e|0,tA=rA,gA=I>>>0>rA>>>0?gA+1|0:gA,a[eA+9|0]=(511&gA)<<23|rA>>>9,g=gA,a[eA+8|0]=(1&g)<<31|rA>>>1,rA=0,e=iA=2097151&aA,a[eA+5|0]=(524287&IA)<<13|nA>>>19|e<<2,e=2097151&uA,gA=CI(sA,BA,136657,0)+e|0,I=l,I=e>>>0>gA>>>0?I+1|0:I,e=gA,I=I+(gA=g>>21)|0,aA=e=e+(g=(2097151&g)<<11|tA>>>21)|0,I=g>>>0>e>>>0?I+1|0:I,a[eA+12|0]=(4095&I)<<20|e>>>12,e=I,g=I,I=aA,a[eA+11|0]=(15&g)<<28|I>>>4,eA=0,I=nA=2097151&tA,a[A+7|0]=(16383&rA)<<18|iA>>>14|I<<7,gA=A,I=2097151&hA,rA=CI(sA,BA,-683901,-1)+I|0,g=l,g=(g=I>>>0>rA>>>0?g+1|0:g)+(I=e>>21)|0,I=g=(e=(2097151&e)<<11|aA>>>21)>>>0>(IA=rA=e+rA|0)>>>0?g+1|0:g,a[gA+14|0]=(127&g)<<25|IA>>>7,rA=0,e=tA=2097151&aA,a[gA+10|0]=(131071&eA)<<15|nA>>>17|e<<4,e=gA,g>>=21,gA=(I=(2097151&I)<<11|IA>>>21)>>>0>(aA=I+(2097151&fA)|0)>>>0?g+1|0:g,a[e+17|0]=(1023&gA)<<22|aA>>>10,g=gA,a[e+16|0]=(3&g)<<30|aA>>>2,e=BA=2097151&IA,a[A+13|0]=(1048575&rA)<<12|tA>>>20|e<<1,I=g,g>>=21,I=(gA=(2097151&I)<<11|aA>>>21)>>>0>(IA=gA+(2097151&cA)|0)>>>0?g+1|0:g,a[(e=A)+20|0]=(8191&I)<<19|IA>>>13,g=I,I=IA,a[e+19|0]=(31&g)<<27|I>>>5,I=tA=2097151&aA,a[e+15|0]=(32767&eA)<<17|BA>>>15|I<<6,I=g,g>>=21,I=(e=(2097151&I)<<11|IA>>>21)>>>0>(BA=e+(2097151&EA)|0)>>>0?g+1|0:g,a[A+21|0]=BA,g=IA,a[A+18|0]=(262143&rA)<<14|tA>>>18|g<<3,e=I,g=I,I=BA,a[A+22|0]=(255&g)<<24|I>>>8,I=g>>21,gA=(g=(2097151&g)<<11|BA>>>21)>>>0>(IA=g+(2097151&lA)|0)>>>0?I+1|0:I,a[A+25|0]=(2047&gA)<<21|IA>>>11,g=gA,gA=IA,a[A+24|0]=(7&g)<<29|gA>>>3,I=g>>21,I=(eA=(2097151&g)<<11|IA>>>21)>>>0>(aA=eA+(2097151&yA)|0)>>>0?I+1|0:I,eA=aA,g=I,a[(gA=A)+27|0]=(63&g)<<26|eA>>>6,gA=0,I=aA=2097151&IA,a[A+23|0]=31&((65535&e)<<16|BA>>>16)|I<<5,I=g,g>>=21,g=(I=(2097151&I)<<11|eA>>>21)>>>0>(rA=I+(2097151&CA)|0)>>>0?g+1|0:g,e=rA,a[A+31|0]=(131071&g)<<15|e>>>17,a[A+30|0]=(511&g)<<23|e>>>9,a[A+29|0]=(1&g)<<31|e>>>1,g=0,IA=eA&=2097151,a[A+26|0]=(524287&gA)<<13|aA>>>19|IA<<2,a[A+28|0]=(16383&g)<<18|IA>>>14|e<<7}(B,o+160|0,o+288|0,o+224|0),Eg(o+288|0,64),Eg(o+224|0,64),g&&(t[g>>2]=64,t[g+4>>2]=0),f=o+560|0,0}function q(A,g,I){var e,r=0,B=0;if(I>>>0>=512)return _(0|A,0|g,0|I),A;e=A+I|0;A:if(3&(A^g))if(e>>>0<4)I=A;else if((r=e-4|0)>>>0<A>>>0)I=A;else for(I=A;a[0|I]=n[0|g],a[I+1|0]=n[g+1|0],a[I+2|0]=n[g+2|0],a[I+3|0]=n[g+3|0],g=g+4|0,r>>>0>=(I=I+4|0)>>>0;);else{g:if((0|I)<1)I=A;else if(3&A)for(I=A;;){if(a[0|I]=n[0|g],g=g+1|0,e>>>0<=(I=I+1|0)>>>0)break g;if(!(3&I))break}else I=A;if(!((r=-4&e)>>>0<64||(B=r+-64|0)>>>0<I>>>0))for(;t[I>>2]=t[g>>2],t[I+4>>2]=t[g+4>>2],t[I+8>>2]=t[g+8>>2],t[I+12>>2]=t[g+12>>2],t[I+16>>2]=t[g+16>>2],t[I+20>>2]=t[g+20>>2],t[I+24>>2]=t[g+24>>2],t[I+28>>2]=t[g+28>>2],t[I+32>>2]=t[g+32>>2],t[I+36>>2]=t[g+36>>2],t[I+40>>2]=t[g+40>>2],t[I+44>>2]=t[g+44>>2],t[I+48>>2]=t[g+48>>2],t[I+52>>2]=t[g+52>>2],t[I+56>>2]=t[g+56>>2],t[I+60>>2]=t[g+60>>2],g=g- -64|0,B>>>0>=(I=I- -64|0)>>>0;);if(I>>>0>=r>>>0)break A;for(;t[I>>2]=t[g>>2],g=g+4|0,r>>>0>(I=I+4|0)>>>0;);}if(I>>>0<e>>>0)for(;a[0|I]=n[0|g],g=g+1|0,(0|e)!=(0|(I=I+1|0)););return A}function X(A,g,I,e){var r,B=0,i=0,o=0,Q=0,C=0,c=0,E=0;if(f=r=f-704|0,I|e)if(B=e<<3|I>>>29,o=(E=t[(i=A)+72>>2])+(C=I<<3)|0,B=B+(Q=t[i+76>>2])|0,c=o,t[i+72>>2]=o,B=o>>>0<C>>>0?B+1|0:B,t[i+76>>2]=B,c=(C=(0|B)==(0|Q)&E>>>0>c>>>0|B>>>0<Q>>>0)+t[(i=o=i- -64|0)>>2]|0,B=t[i+4>>2],B=C>>>0>c>>>0?B+1|0:B,o=(C=e>>>29|0)+c|0,t[i>>2]=o,t[i+4>>2]=o>>>0<C>>>0?B+1|0:B,(0|(B=e))==(0|(c=0-((Q=127&((7&Q)<<29|E>>>3))>>>0>128)|0))&I>>>0>=(o=128-Q|0)>>>0|B>>>0>c>>>0){for(i=0,B=0;a[80+(A+(C=i+Q|0)|0)|0]=n[g+i|0],(0|o)!=(0|(i=i+1|0))|(0|(B=i>>>0<1?B+1|0:B))!=(0|c););if(D(A,A+80|0,r,B=r+640|0),g=g+o|0,!(e=e-((I>>>0<o>>>0)+c|0)|0)&(I=I-o|0)>>>0>127|e)for(;D(A,g,r,B),g=g+128|0,!(e=e-(I>>>0<128)|0)&(I=I-128|0)>>>0>127|e;);if(I|e)for(i=0,B=0;a[80+(A+i|0)|0]=n[g+i|0],(0|I)!=(0|(i=Q=i+1|0))|(0|e)!=(0|(B=Q>>>0<1?B+1|0:B)););Eg(r,704)}else for(i=I,o=(I=!e&I>>>0>1|0!=(0|e))?i:1,E=I?e:0,i=0,B=0;a[80+(A+(e=i+Q|0)|0)|0]=n[g+i|0],(0|o)!=(0|(i=I=i+1|0))|(0|(B=I>>>0<1?B+1|0:B))!=(0|E););return f=r+704|0,0}function V(A,g,I,e,r,B,n,i){A|=0,g|=0,I|=0,e|=0,r|=0,B|=0,n|=0,i|=0;var o,Q=0,C=0,c=0,E=0,s=0,y=0,_=0,h=0,p=0;f=o=f-16|0,t[o+12>>2]=0,lI(i);A:{if(e){h=4&i;g:{I:{e:{for(;;){Q=E;r:{a:{for(;;){if(y=a[I+Q|0],255!=(0|(c=h?KA(y):LA(y))))break a;if(!r)break r;if(!II(r,y))break e;if(!((Q=Q+1|0)>>>0<e>>>0))break}A=E+1|0,t[o+12>>2]=A>>>0<e>>>0?e:A;break I}if(_=(_<<6)+c|0,(c=C+6|0)>>>0<8)C=c;else{if(C=C-2|0,g>>>0<=s>>>0){t[o+12>>2]=Q,t[8960]=68,Q=1;break g}a[A+s|0]=_>>>C,s=s+1|0}if((E=Q+1|0)>>>0<e>>>0)continue}break}t[o+12>>2]=E;break I}t[o+12>>2]=Q}Q=0}if(!(C>>>0<=4)){A=-1;break A}}if(A=-1,!((-1<<C^-1)&_|Q)&&(2&i||!(A=function(A,g,I,e,r){var B=0,n=0,i=0;g:if(r)for(B=t[I>>2];;){I:{if(g>>>0<=B>>>0)t[8960]=68;else{if(61==(0|(n=a[A+B|0]))){r=r-1|0;break I}if(e&&II(e,n))break I;t[8960]=28}i=-1;break g}if(B=B+1|0,t[I>>2]=B,!r)break}return i}(I,e,o+12|0,r,C>>>1|0)))){A=0;g:if(r&&!((Q=t[o+12>>2])>>>0>=e>>>0)){I:{for(;;){if(!II(r,a[I+Q|0]))break I;if((0|(Q=Q+1|0))==(0|e))break}t[o+12>>2]=e;break g}t[o+12>>2]=Q}p=s}}return g=t[o+12>>2],n?t[n>>2]=g+I:(0|g)!=(0|e)&&(t[8960]=28,A=-1),B&&(t[B>>2]=p),f=o+16|0,0|A}function W(A,g,I){var e,r,a,B=0;f=e=f-16|0,r=t[A+20>>2],t[A+20>>2]=0,a=t[A+4>>2],t[A+4>>2]=0,B=-26;A:{g:{I:switch(I-1|0){case 1:if(B=-32,qA(g,35621,9))break A;g=g+9|0;break g;case 0:break I;default:break A}if(B=-32,qA(g,35631,8))break A;g=g+8|0}if(!qA(g,35640,3)&&(g=GA(g+3|0,e+12|0))){if(B=-26,19!=t[e+12>>2])break A;if(!qA(g,35644,3)&&(g=GA(g+3|0,e+12|0))&&(t[A+44>>2]=t[e+12>>2],!qA(g,35648,3)&&(g=GA(g+3|0,e+12|0))&&(t[A+40>>2]=t[e+12>>2],!qA(g,35652,3)&&(g=GA(g+3|0,e+12|0))&&(I=t[e+12>>2],t[A+48>>2]=I,t[A+52>>2]=I,36==(0|(I=n[0|g]))&&(t[e+12>>2]=r,g=36==(0|I)?g+1|0:g,!V(t[A+16>>2],r,g,FA(g),0,e+12|0,e+8|0,3)&&(t[A+20>>2]=t[e+12>>2],g=t[e+8>>2],36==(0|(I=n[0|g]))&&(t[e+12>>2]=a,g=36==(0|I)?g+1|0:g,!V(t[A>>2],a,g,FA(g),0,e+12|0,e+8|0,3)))))))){if(t[A+4>>2]=t[e+12>>2],g=t[e+8>>2],B=QA(A))break A;return f=e+16|0,n[0|g]?-32:0}}B=-32}return f=e+16|0,B}function j(A,g){var I;for(f=I=f-192|0,k(I+144|0,g),k(I+96|0,I+144|0),k(I+96|0,I+96|0),b(I+96|0,g,I+96|0),b(I+144|0,I+144|0,I+96|0),k(I+48|0,I+144|0),b(I+96|0,I+96|0,I+48|0),k(I+48|0,I+96|0),g=1;k(I+48|0,I+48|0),5!=(0|(g=g+1|0)););for(b(I+96|0,I+48|0,I+96|0),k(I+48|0,I+96|0),g=1;k(I+48|0,I+48|0),10!=(0|(g=g+1|0)););for(b(I+48|0,I+48|0,I+96|0),k(I,I+48|0),g=1;k(I,I),20!=(0|(g=g+1|0)););for(b(I+48|0,I,I+48|0),g=1;k(I+48|0,I+48|0),11!=(0|(g=g+1|0)););for(b(I+96|0,I+48|0,I+96|0),k(I+48|0,I+96|0),g=1;k(I+48|0,I+48|0),50!=(0|(g=g+1|0)););for(b(I+48|0,I+48|0,I+96|0),k(I,I+48|0),g=1;k(I,I),100!=(0|(g=g+1|0)););for(b(I+48|0,I,I+48|0),g=1;k(I+48|0,I+48|0),51!=(0|(g=g+1|0)););for(b(I+96|0,I+48|0,I+96|0),g=1;k(I+96|0,I+96|0),6!=(0|(g=g+1|0)););b(A,I+96|0,I+144|0),f=I+192|0}function O(A,g){var I,e,r,B,n,i,Q,C,c,E,s=0,y=0,_=0,h=0,f=0,p=0,u=0;(y=_=t[A+60>>2])|(s=t[A+56>>2])&&(_=s,a[(h=s+A|0)- -64|0]=1,!(y=(s=s+1|0)>>>0<1?y+1|0:y)&s>>>0<=15&&BA(h+65|0,0,15-_|0),a[A+80|0]=1,S(A,A- -64|0,16,0)),c=t[A+52>>2],E=t[A+48>>2],_=t[A+44>>2],u=t[A+24>>2],f=t[A+28>>2]+(u>>>26|0)|0,s=t[A+32>>2]+(f>>>26|0)|0,C=(I=(B=(-67108864|(r=t[A+36>>2]+(s>>>26|0)|0))+((Q=(i=67108863&s)+((f=(p=67108863&f)+((y=(s=(67108863&u)+((y=t[A+20>>2]+o(r>>>26|0,5)|0)>>>26|0)|0)+((n=5+(h=67108863&y)|0)>>>26|0)|0)>>>26|0)|0)>>>26|0)|0)>>>26|0)|0)>>31)&s|(e=67108863&(u=(B>>>31|0)-1|0))&y,y=0,y=(s=h&I|e&n|C<<26)>>>0>(h=s+t[A+40>>2]|0)>>>0?1:y,Jg(g,h),f=(s=(p=p&I|f&e)<<20|C>>>6)+_|0,_=0,_=s>>>0>f>>>0?1:_,s=y,y=_,y=s>>>0>(f=s+f|0)>>>0?y+1|0:y,Jg(g+4|0,f),_=0,_=(s=(h=I&i|e&Q)<<14|p>>>12)>>>0>(p=s+E|0)>>>0?1:_,s=y,y=_,y=s>>>0>(p=s+p|0)>>>0?y+1|0:y,Jg(g+8|0,p),Jg(_=g+12|0,y=y+(h=(g=(u&B|I&r)<<8|h>>>18)+c|0)|0),Eg(A,88)}function Z(A,g,I,e,r){A|=0,g|=0,I|=0,e|=0;var B=0,t=0,i=0,Q=0,E=0,s=0,y=0,_=0,h=0;lI(r|=0),t=(B=(e>>>0)/3|0)<<2,(B=o(B,-3)+e|0)&&(t=2&r?(2|t)+(B>>>1|0)|0:t+4|0);A:{g:{I:{e:{if(g>>>0>t>>>0){if(!(4&r)){if(i=0,!e)break I;r=0,B=0;break e}if(i=0,!e)break I;for(r=0,B=0;;){for(E=n[I+Q|0]|E<<8,r=r+8|0;s=B,y=r,_=A+B|0,h=ag(E>>>(r=r-6|0)&63),a[0|_]=h,B=B+1|0,r>>>0>5;);if((0|(Q=Q+1|0))==(0|e))break}if(i=B,!r)break I;_=A+B|0,h=ag(E<<12-y&63),a[0|_]=h,i=s+2|0;break I}Zg(),C()}for(;;){for(E=n[I+Q|0]|E<<8,r=r+8|0;s=B,y=r,_=A+B|0,h=Bg(E>>>(r=r-6|0)&63),a[0|_]=h,B=B+1|0,r>>>0>5;);if((0|(Q=Q+1|0))==(0|e))break}i=B,r&&(_=A+B|0,h=Bg(E<<12-y&63),a[0|_]=h,i=s+2|0)}if((B=i)>>>0<=t>>>0){if(B>>>0<t>>>0)break g;t=B;break A}c(35568,35587,230,35603),C()}BA(A+B|0,61,t-B|0)}return BA(A+t|0,0,(g>>>0>(I=t+1|0)>>>0?g:I)-t|0),0|A}function z(A,g,I,e){var r=0,B=0,i=0,o=0,Q=0,C=0;A:{if((r=t[A+56>>2])|(B=t[A+60>>2])){if(C=A,Q=i=16-r|0,Q=(i=(0|(o=0-((r>>>0>16)+B|0)|0))==(0|e)&I>>>0<i>>>0|e>>>0<o>>>0)?I:Q,(i=o=i?e:o)|Q){if(a[(A+r|0)- -64|0]=n[0|g],B=1,r=0,1!=(0|Q)|i)for(;o=B+t[A+56>>2]|0,a[(A+o|0)- -64|0]=n[g+B|0],(0|Q)!=(0|(B=B+1|0))|(0|(r=B>>>0<1?r+1|0:r))!=(0|i););r=t[A+56>>2],B=t[A+60>>2]}if(o=r+Q|0,r=B+i|0,B=o,t[C+56>>2]=B,r=B>>>0<Q>>>0?r+1|0:r,t[C+60>>2]=r,!r&B>>>0<16)break A;S(A,A- -64|0,16,0),t[A+56>>2]=0,t[A+60>>2]=0,I=(r=I)-(B=Q)|0,e=e-((r>>>0<B>>>0)+i|0)|0,g=g+B|0}if(!e&I>>>0>=16|e&&(S(A,g,r=-16&I,e),I&=15,e=0,g=g+r|0),I|e){for(B=0,r=0;C=B+t[A+56>>2]|0,a[(A+C|0)- -64|0]=n[g+B|0],(0|I)!=(0|(B=B+1|0))|(0|e)!=(0|(r=B>>>0<1?r+1|0:r)););g=A,r=I+t[A+56>>2]|0,A=e+t[A+60>>2]|0,t[g+56>>2]=r,t[g+60>>2]=I>>>0>r>>>0?A+1|0:A}}}function $(A,g){var I=0,e=0,r=0,a=0,B=0,Q=0,C=0,c=0,E=0,s=0,y=0,_=0,h=0;A:if(A&&(2!=t[A+36>>2]||(r=t[g>>2],n[g+8|0]<2&&!r)?(function(A,g,I){var e,r=0,a=0,B=0;if(f=e=f-4096|0,YI(e+3072|0),YI(e+2048|0),!(!A|!g)&&(t[e+2048>>2]=t[g>>2],t[e+2052>>2]=0,t[e+2056>>2]=t[g+4>>2],t[e+2060>>2]=0,t[e+2064>>2]=n[g+8|0],t[e+2068>>2]=0,t[e+2072>>2]=t[A+16>>2],t[e+2076>>2]=0,t[e+2080>>2]=t[A+8>>2],t[e+2084>>2]=0,t[e+2088>>2]=t[A+36>>2],t[e+2092>>2]=0,t[A+20>>2]))for(g=0;(B=127&g)||(r=t[e+2100>>2],r=(a=t[e+2096>>2]+1|0)>>>0<1?r+1|0:r,t[e+2096>>2]=a,t[e+2100>>2]=r,YI(e),YI(e+1024|0),F(e+3072|0,e+2048|0,e),F(e+3072|0,e,e+1024|0)),B=t[4+(a=(e+1024|0)+(B<<3)|0)>>2],t[(r=(g<<3)+I|0)>>2]=t[a>>2],t[r+4>>2]=B,(g=g+1|0)>>>0<i[A+20>>2];);f=e+4096|0}(A,g,c=t[A+4>>2]),r=t[g>>2],e=0):(c=t[A+4>>2],e=1),s=e,!((B=!((e=n[g+8|0])|r)<<1)>>>0>=(I=t[A+20>>2])>>>0)))for(a=t[A+24>>2],I=(r=(o(a,t[g+4>>2])+B|0)+o(I,e)|0)+((r>>>0)%(a>>>0)|0?-1:a-1|0)|0;;){if(E=1==((r>>>0)%(a>>>0)|0)?r-1|0:I,s?(Q=t[A>>2],I=t[Q+4>>2]+(E<<10)|0):(Q=t[A>>2],I=(B<<3)+c|0),e=t[I+4>>2],y=t[I>>2],I=t[A+28>>2],t[g+12>>2]=B,e=(e>>>0)%(I>>>0)|0,C=t[g+4>>2],I=n[g+8|0]?e:C,Q=t[Q+4>>2],_=a,h=e,a=t[g>>2],C=(Q+(o(_,I=(e=a)?h:I)<<10)|0)+(DA(A,g,y,!0&(0|I)==(0|C))<<10)|0,e=Q+(E<<10)|0,I=Q+(r<<10)|0,a?F(e,C,I):G(e,C,I),(B=B+1|0)>>>0>=i[A+20>>2])break A;r=r+1|0,I=E+1|0,a=t[A+24>>2]}}function AA(A,g,I){var e,r,a,B,n,i,o,Q,C,c,E,s,y=0,_=0,h=0,f=0,p=0,u=0,l=0,w=0,D=0;e=t[g+4>>2],r=t[A+4>>2],a=t[g+8>>2],_=t[A+8>>2],B=t[g+12>>2],h=t[A+12>>2],n=t[g+16>>2],f=t[A+16>>2],i=t[g+20>>2],p=t[A+20>>2],o=t[g+24>>2],u=t[A+24>>2],Q=t[g+28>>2],l=t[A+28>>2],C=t[g+32>>2],w=t[A+32>>2],c=t[g+36>>2],D=t[A+36>>2],s=(I=0-I|0)&((E=t[g>>2])^(y=t[A>>2])),t[A>>2]=s^y,y=D,D=I&(D^c),t[A+36>>2]=y^D,y=w,w=I&(w^C),t[A+32>>2]=y^w,y=l,l=I&(l^Q),t[A+28>>2]=y^l,y=u,u=I&(u^o),t[A+24>>2]=y^u,y=p,p=I&(p^i),t[A+20>>2]=y^p,y=f,f=I&(f^n),t[A+16>>2]=y^f,y=h,h=I&(h^B),t[A+12>>2]=y^h,y=_,_=I&(_^a),t[A+8>>2]=y^_,y=A,A=I&(e^r),t[y+4>>2]=A^r,t[g+36>>2]=D^c,t[g+32>>2]=w^C,t[g+28>>2]=l^Q,t[g+24>>2]=u^o,t[g+20>>2]=p^i,t[g+16>>2]=f^n,t[g+12>>2]=h^B,t[g+8>>2]=_^a,t[g+4>>2]=A^e,t[g>>2]=E^s}function gA(A,g){var I;t[A>>2]=67108863&(n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24),t[A+4>>2]=(n[g+3|0]|n[g+4|0]<<8|n[g+5|0]<<16|n[g+6|0]<<24)>>>2&67108611,t[A+8>>2]=(n[g+6|0]|n[g+7|0]<<8|n[g+8|0]<<16|n[g+9|0]<<24)>>>4&67092735,t[A+12>>2]=(n[g+9|0]|n[g+10|0]<<8|n[g+11|0]<<16|n[g+12|0]<<24)>>>6&66076671,I=n[g+12|0]|n[g+13|0]<<8|n[g+14|0]<<16|n[g+15|0]<<24,t[A+20>>2]=0,t[A+24>>2]=0,t[A+28>>2]=0,t[A+32>>2]=0,t[A+36>>2]=0,t[A+16>>2]=I>>>8&1048575,t[A+40>>2]=n[g+16|0]|n[g+17|0]<<8|n[g+18|0]<<16|n[g+19|0]<<24,t[A+44>>2]=n[g+20|0]|n[g+21|0]<<8|n[g+22|0]<<16|n[g+23|0]<<24,t[A+48>>2]=n[g+24|0]|n[g+25|0]<<8|n[g+26|0]<<16|n[g+27|0]<<24,g=n[g+28|0]|n[g+29|0]<<8|n[g+30|0]<<16|n[g+31|0]<<24,a[A+80|0]=0,t[A+56>>2]=0,t[A+60>>2]=0,t[A+52>>2]=g}function IA(A,g,I){var e=0;A:if((0|A)!=(0|g)){if((g-A|0)-I>>>0<=0-(I<<1)>>>0)return q(A,g,I);if(e=3&(A^g),A>>>0<g>>>0){if(e)e=A;else{if(3&A)for(e=A;;){if(!I)break A;if(a[0|e]=n[0|g],g=g+1|0,I=I-1|0,!(3&(e=e+1|0)))break}else e=A;if(!(I>>>0<=3))for(;t[e>>2]=t[g>>2],g=g+4|0,e=e+4|0,(I=I-4|0)>>>0>3;);}if(I)for(;a[0|e]=n[0|g],e=e+1|0,g=g+1|0,I=I-1|0;);}else{if(!e){if(A+I&3)for(;;){if(!I)break A;if(a[0|(e=(I=I-1|0)+A|0)]=n[g+I|0],!(3&e))break}if(!(I>>>0<=3))for(;t[(I=I-4|0)+A>>2]=t[g+I>>2],I>>>0>3;);}if(!I)break A;for(;a[(I=I-1|0)+A|0]=n[g+I|0],I;);}}return A}function eA(A,g){var I,e=0;f=I=f-48|0,function(A,g){var I,e,r,a,B,n,i,Q,C=0;e=t[g+28>>2],r=t[g+24>>2],a=t[g+20>>2],B=t[g+16>>2],n=t[g+12>>2],i=t[g+8>>2],Q=t[g+4>>2],C=t[g>>2],I=t[g+36>>2],g=t[g+32>>2],C=o(((e+(r+(a+(B+(n+(i+(Q+(C+(o(I,19)+16777216>>>25|0)>>26)>>25)>>26)>>25)>>26)>>25)>>26)>>25)+g>>26)+I>>25,19)+C|0,t[A>>2]=67108863&C,C=Q+(C>>26)|0,t[A+4>>2]=33554431&C,C=i+(C>>25)|0,t[A+8>>2]=67108863&C,C=n+(C>>26)|0,t[A+12>>2]=33554431&C,C=B+(C>>25)|0,t[A+16>>2]=67108863&C,C=a+(C>>26)|0,t[A+20>>2]=33554431&C,C=r+(C>>25)|0,t[A+24>>2]=67108863&C,C=e+(C>>26)|0,t[A+28>>2]=33554431&C,g=g+(C>>25)|0,t[A+32>>2]=67108863&g,t[A+36>>2]=I+(g>>26)&33554431}(I,g),g=t[I>>2],a[0|A]=g,a[A+2|0]=g>>>16,a[A+1|0]=g>>>8,e=t[I+4>>2],a[A+5|0]=e>>>14,a[A+4|0]=e>>>6,a[A+3|0]=e<<2|g>>>24,g=t[I+8>>2],a[A+8|0]=g>>>13,a[A+7|0]=g>>>5,a[A+6|0]=g<<3|e>>>22,e=t[I+12>>2],a[A+11|0]=e>>>11,a[A+10|0]=e>>>3,a[A+9|0]=e<<5|g>>>21,g=t[I+16>>2],a[A+15|0]=g>>>18,a[A+14|0]=g>>>10,a[A+13|0]=g>>>2,a[A+12|0]=g<<6|e>>>19,g=t[I+20>>2],a[A+16|0]=g,a[A+18|0]=g>>>16,a[A+17|0]=g>>>8,e=t[I+24>>2],a[A+21|0]=e>>>15,a[A+20|0]=e>>>7,a[A+19|0]=e<<1|g>>>24,g=t[I+28>>2],a[A+24|0]=g>>>13,a[A+23|0]=g>>>5,a[A+22|0]=g<<3|e>>>23,e=t[I+32>>2],a[A+27|0]=e>>>12,a[A+26|0]=e>>>4,a[A+25|0]=e<<4|g>>>21,g=t[I+36>>2],a[A+31|0]=g>>>18,a[A+30|0]=g>>>10,a[A+29|0]=g>>>2,a[A+28|0]=g<<6|e>>>20,f=I+48|0}function rA(A,g,I,e){var r=0,B=0,t=0,i=0,o=0,Q=0;A:if(I|e)for(Q=A+224|0,t=A+96|0,r=n[A+352|0]|n[A+353|0]<<8|n[A+354|0]<<16|n[A+355|0]<<24;;){if(i=96+(A+r|0)|0,o=B=256-r|0,!e&I>>>0<=B>>>0){q(i,g,I),g=I+(n[A+352|0]|n[A+353|0]<<8|n[A+354|0]<<16|n[A+355|0]<<24)|0,a[A+352|0]=g,a[A+353|0]=g>>>8,a[A+354|0]=g>>>16,a[A+355|0]=g>>>24;break A}if(q(i,g,B),r=(n[A+352|0]|n[A+353|0]<<8|n[A+354|0]<<16|n[A+355|0]<<24)+B|0,a[A+352|0]=r,a[A+353|0]=r>>>8,a[A+354|0]=r>>>16,a[A+355|0]=r>>>24,tA(A,128),w(A,t),q(t,Q,128),r=(n[A+352|0]|n[A+353|0]<<8|n[A+354|0]<<16|n[A+355|0]<<24)-128|0,a[A+352|0]=r,a[A+353|0]=r>>>8,a[A+354|0]=r>>>16,a[A+355|0]=r>>>24,g=g+B|0,!((I=(B=I)-o|0)|(e=e-(B>>>0<o>>>0)|0)))break}return 0}function aA(A,g){var I,e=0,r=0,B=0,t=0;for(f=I=f-464|0;r=e<<1,t=n[g+e|0],a[r+(I+400|0)|0]=15&t,a[(I+400|0)+(1|r)|0]=t>>>4,32!=(0|(e=e+1|0)););for(e=0;g=((r=(g=e)+n[0|(e=(I+400|0)+B|0)]|0)<<24)- -134217728|0,a[0|e]=r-(g>>24&240),e=g>>28,63!=(0|(B=B+1|0)););for(a[I+463|0]=n[I+463|0]+e,zg(A),e=1;EI(I,e>>>1|0,a[(I+400|0)+e|0]),ZA(I+240|0,A,I),pg(A,I+240|0),g=e>>>0<62,e=e+2|0,g;);for(Rg(I+240|0,A),bg(I+120|0,I+240|0),Ag(I+240|0,I+120|0),bg(I+120|0,I+240|0),Ag(I+240|0,I+120|0),bg(I+120|0,I+240|0),Ag(I+240|0,I+120|0),pg(A,I+240|0),e=0;EI(I,e>>>1|0,a[(I+400|0)+e|0]),ZA(I+240|0,A,I),pg(A,I+240|0),g=e>>>0<62,e=e+2|0,g;);f=I+464|0}function BA(A,g,I){var e=0,r=0,B=0,n=0;if(I&&(a[(e=A+I|0)-1|0]=g,a[0|A]=g,!(I>>>0<3||(a[e-2|0]=g,a[A+1|0]=g,a[e-3|0]=g,a[A+2|0]=g,I>>>0<7||(a[e-4|0]=g,a[A+3|0]=g,I>>>0<9||(r=(e=0-A&3)+A|0,g=o(255&g,16843009),t[r>>2]=g,t[(e=(I=I-e&-4)+r|0)-4>>2]=g,I>>>0<9||(t[r+8>>2]=g,t[r+4>>2]=g,t[e-8>>2]=g,t[e-12>>2]=g,I>>>0<25||(t[r+24>>2]=g,t[r+20>>2]=g,t[r+16>>2]=g,t[r+12>>2]=g,t[e-16>>2]=g,t[e-20>>2]=g,t[e-24>>2]=g,t[e-28>>2]=g,(I=I-(n=4&r|24)|0)>>>0<32))))))))for(e=g,B=g,g=r+n|0;t[g+24>>2]=B,t[g+28>>2]=e,t[g+16>>2]=B,t[g+20>>2]=e,t[g+8>>2]=B,t[g+12>>2]=e,t[g>>2]=B,t[g+4>>2]=e,g=g+32|0,(I=I-32|0)>>>0>31;);return A}function tA(A,g){var I,e,r,B=0,t=0;t=B=A- -64|0,e=1+(I=n[B+4|0]|n[B+5|0]<<8|n[B+6|0]<<16|n[B+7|0]<<24)|0,B=(g=g+(B=r=n[0|B]|n[B+1|0]<<8|n[B+2|0]<<16|n[B+3|0]<<24)|0)>>>0<B>>>0?e:I,a[0|t]=g,a[t+1|0]=g>>>8,a[t+2|0]=g>>>16,a[t+3|0]=g>>>24,a[t+4|0]=B,a[t+5|0]=B>>>8,a[t+6|0]=B>>>16,a[t+7|0]=B>>>24,g=(B=(0|B)==(0|I)&g>>>0<r>>>0|B>>>0<I>>>0)+(n[A+72|0]|n[A+73|0]<<8|n[A+74|0]<<16|n[A+75|0]<<24)|0,t=n[A+76|0]|n[A+77|0]<<8|n[A+78|0]<<16|n[A+79|0]<<24,B=g>>>0<B>>>0?t+1|0:t,a[A+72|0]=g,a[A+73|0]=g>>>8,a[A+74|0]=g>>>16,a[A+75|0]=g>>>24,a[A+76|0]=B,a[A+77|0]=B>>>8,a[A+78|0]=B>>>16,a[A+79|0]=B>>>24}function nA(A,g,I,e,r,a,B){var n,i,o,Q,C=0;return f=n=f-352|0,L(n,a,B),!r&e>>>0<=I-A>>>0|A>>>0>=I>>>0&&!(!r&e>>>0>A-I>>>0|r&&A>>>0>I>>>0)||(I=IA(A,I,e)),t[n+56>>2]=0,t[n+60>>2]=0,t[n+48>>2]=0,t[n+52>>2]=0,t[n+40>>2]=0,t[n+44>>2]=0,t[n+32>>2]=0,t[n+36>>2]=0,(i=!((B=(C=!r&e>>>0>32|0!=(0|r))?32:e)|(C=C?0:r)))||q(n- -64|0,I,B),Q=a+16|0,$g(n+32|0,n+32|0,o=B+32|0,a=o>>>0<32?C+1|0:C,Q,n),wI(n+96|0,n+32|0),i||q(A,n- -64|0,B),Eg(n+32|0,64),!r&e>>>0>=33|r&&AI(A+B|0,a=I+B|0,(I=e)-B|0,r-(C+(I>>>0<B>>>0)|0)|0,Q,n),Eg(n,32),yI(n+96|0,A,e,r),DI(n+96|0,g),Eg(n+96|0,256),f=n+352|0,0}function iA(A,g){t[A>>2]=1634760805,t[A+4>>2]=857760878,t[A+8>>2]=2036477234,t[A+12>>2]=1797285236,t[A+16>>2]=n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24,t[A+20>>2]=n[g+4|0]|n[g+5|0]<<8|n[g+6|0]<<16|n[g+7|0]<<24,t[A+24>>2]=n[g+8|0]|n[g+9|0]<<8|n[g+10|0]<<16|n[g+11|0]<<24,t[A+28>>2]=n[g+12|0]|n[g+13|0]<<8|n[g+14|0]<<16|n[g+15|0]<<24,t[A+32>>2]=n[g+16|0]|n[g+17|0]<<8|n[g+18|0]<<16|n[g+19|0]<<24,t[A+36>>2]=n[g+20|0]|n[g+21|0]<<8|n[g+22|0]<<16|n[g+23|0]<<24,t[A+40>>2]=n[g+24|0]|n[g+25|0]<<8|n[g+26|0]<<16|n[g+27|0]<<24,t[A+44>>2]=n[g+28|0]|n[g+29|0]<<8|n[g+30|0]<<16|n[g+31|0]<<24}function oA(A,g,I,e,r,a,B){var n,i,o=0,Q=0;f=n=f-96|0,L(n,a,B),i=a+16|0,XI[t[8952]](n+32|0,32,0,i,n),a=-1;A:{if(!(0|XI[t[8946]](I,g,e,r,n+32|0))){if(a=0,!A)break A;!r&e>>>0<=A-g>>>0|A>>>0<=g>>>0&&!(!r&e>>>0>g-A>>>0|r&&A>>>0<g>>>0)||(g=IA(A,g,e)),I=(a=!r&e>>>0>32|0!=(0|r))?32:e,B=a=a?0:r,I|a?(Q=q(n- -64|0,g,I),a=B,$g(n+32|0,n+32|0,o=I+32|0,a=o>>>0<32?a+1|0:a,i,n),q(A,Q,I)):(a=B,$g(n+32|0,n+32|0,o=I+32|0,a=o>>>0<32?a+1|0:a,i,n)),a=0,!r&e>>>0<33||AI((o=A)+(A=I)|0,A+g|0,e-A|0,r-(B+(A>>>0>e>>>0)|0)|0,i,n)}Eg(n,32)}return f=n+96|0,a}function QA(A){var g=0,I=0,e=0;if(!A)return-25;if(!t[A>>2])return-1;A:{g:{if(g=-2,!(i[A+4>>2]<16)&&(t[A+8>>2]||(g=-18,!t[A+12>>2]))){if(I=t[A+20>>2],!t[A+16>>2])break g;if(g=-6,!(I>>>0<8)&&(t[A+24>>2]||(g=-20,!t[A+28>>2]))&&(t[A+32>>2]||(g=-21,!t[A+36>>2]))){if(!(I=t[A+48>>2]))return-16;if(g=-17,!(I>>>0>16777215||(g=-14,(e=t[A+44>>2])>>>0<8||(g=-15,e>>>0>2097152||(g=-14,I<<3>>>0>e>>>0))))){if(!t[A+40>>2])return-12;if(A=t[A+52>>2])break A;g=-28}}}return g}return I?-19:-6}return A>>>0>16777215?-29:0}function CA(A,g,I){var e,r,a,B,n,i,o,Q,C,c,E,s,y,_,h,f,p,u,l,w;E=t[g+4>>2],e=t[A+4>>2],s=t[g+8>>2],r=t[A+8>>2],y=t[g+12>>2],a=t[A+12>>2],_=t[g+16>>2],B=t[A+16>>2],h=t[g+20>>2],n=t[A+20>>2],f=t[g+24>>2],i=t[A+24>>2],p=t[g+28>>2],o=t[A+28>>2],u=t[g+32>>2],Q=t[A+32>>2],l=t[g+36>>2],C=t[A+36>>2],c=t[A>>2],w=t[g>>2]^c,g=0-I|0,t[A>>2]=c^w&g,t[A+36>>2]=g&(C^l)^C,t[A+32>>2]=g&(Q^u)^Q,t[A+28>>2]=g&(o^p)^o,t[A+24>>2]=g&(i^f)^i,t[A+20>>2]=g&(n^h)^n,t[A+16>>2]=g&(B^_)^B,t[A+12>>2]=g&(a^y)^a,t[A+8>>2]=g&(r^s)^r,t[A+4>>2]=g&(e^E)^e}function cA(A,g){for(var I=0,e=0,r=0,B=0,t=0,i=0,o=0,Q=0;a[A+I|0]=n[(I>>>3|0)+g|0]>>>(7&I)&1,256!=(0|(I=I+1|0)););for(;;){i=(g=i)+1|0;A:if(n[0|(t=A+g|0)]&&(I=i,r=1,!(g>>>0>254)))for(;;){g:if(B=a[0|(e=A+I|0)])if((0|(Q=(o=a[0|t])+(B<<=r)|0))<=15)a[0|t]=Q,a[0|e]=0;else{if((0|(e=o-B|0))<-15)break A;for(a[0|t]=e;;){if(!n[0|(e=A+I|0)]){a[0|e]=1;break g}if(a[0|e]=0,e=I>>>0<255,I=I+1|0,!e)break}}if(r>>>0>5)break A;if(!((I=g+(r=r+1|0)|0)>>>0<256))break}if(256==(0|i))break}}function EA(A,g,I,e){var r,a,B,n,i=0;f=r=f+-64|0,BA(r+8|0,0,52),i=FA(A),t[r+20>>2]=i,t[r+36>>2]=i,t[r+4>>2]=i,a=d(i),t[r+32>>2]=a,B=d(i),t[r+16>>2]=B,n=d(i),t[r>>2]=n;A:if(!n|!a|!B||!(i=d(i)))m(a),m(B),m(n),A=-22;else{if(A=W(r,A,e)){m(t[r+32>>2]),m(t[r+16>>2]),m(t[r>>2]),m(i);break A}A=0,g=lA(t[r+40>>2],t[r+44>>2],t[r+52>>2],g,I,t[r+16>>2],t[r+20>>2],i,t[r+4>>2],0,0,e),m(t[r+32>>2]),m(t[r+16>>2]),(g||zA(i,t[r>>2],t[r+4>>2]))&&(A=-35),m(i),m(t[r>>2])}return f=r- -64|0,A}function sA(A,g){var I,e,r=0;f=I=f-288|0,N(e=A+40|0,g),hI(r=A+80|0),k(I+240|0,e),b(I+192|0,I+240|0,2128),yA(I+240|0,I+240|0,r),_A(I+192|0,I+192|0,r),k(I+144|0,I+192|0),b(I+144|0,I+144|0,I+192|0),k(A,I+144|0),b(A,A,I+192|0),b(A,A,I+240|0),function(A,g){var I,e=0;for(f=I=f-144|0,k(I+96|0,g),k(I+48|0,I+96|0),k(I+48|0,I+48|0),b(I+48|0,g,I+48|0),b(I+96|0,I+96|0,I+48|0),k(I+96|0,I+96|0),b(I+96|0,I+48|0,I+96|0),k(I+48|0,I+96|0),e=1;k(I+48|0,I+48|0),5!=(0|(e=e+1|0)););for(b(I+96|0,I+48|0,I+96|0),k(I+48|0,I+96|0),e=1;k(I+48|0,I+48|0),10!=(0|(e=e+1|0)););for(b(I+48|0,I+48|0,I+96|0),k(I,I+48|0),e=1;k(I,I),20!=(0|(e=e+1|0)););for(b(I+48|0,I,I+48|0),e=1;k(I+48|0,I+48|0),11!=(0|(e=e+1|0)););for(b(I+96|0,I+48|0,I+96|0),k(I+48|0,I+96|0),e=1;k(I+48|0,I+48|0),50!=(0|(e=e+1|0)););for(b(I+48|0,I+48|0,I+96|0),k(I,I+48|0),e=1;k(I,I),100!=(0|(e=e+1|0)););for(b(I+48|0,I,I+48|0),e=1;k(I+48|0,I+48|0),51!=(0|(e=e+1|0)););b(I+96|0,I+48|0,I+96|0),k(I+96|0,I+96|0),k(I+96|0,I+96|0),b(A,I+96|0,g),f=I+144|0}(A,A),b(A,A,I+144|0),b(A,A,I+240|0),k(I+96|0,A),b(I+96|0,I+96|0,I+192|0),yA(I+48|0,I+96|0,I+240|0);A:{if(!Pg(I+48|0)){if(_A(I,I+96|0,I+240|0),r=-1,!Pg(I))break A;b(A,A,2176)}(0|Lg(A))==(n[g+31|0]>>>7|0)&&mA(A,A),b(A+120|0,A,e),r=0}return f=I+288|0,r}function yA(A,g,I){var e,r,a,B,n,i,o,Q,C,c,E,s,y,_,h,f,p,u;e=t[I+4>>2],r=t[g+4>>2],a=t[I+8>>2],B=t[g+8>>2],n=t[I+12>>2],i=t[g+12>>2],o=t[I+16>>2],Q=t[g+16>>2],C=t[I+20>>2],c=t[g+20>>2],E=t[I+24>>2],s=t[g+24>>2],y=t[I+28>>2],_=t[g+28>>2],h=t[I+32>>2],f=t[g+32>>2],p=t[I+36>>2],u=t[g+36>>2],t[A>>2]=t[g>>2]-t[I>>2],t[A+36>>2]=u-p,t[A+32>>2]=f-h,t[A+28>>2]=_-y,t[A+24>>2]=s-E,t[A+20>>2]=c-C,t[A+16>>2]=Q-o,t[A+12>>2]=i-n,t[A+8>>2]=B-a,t[A+4>>2]=r-e}function _A(A,g,I){var e,r,a,B,n,i,o,Q,C,c,E,s,y,_,h,f,p,u;e=t[I+4>>2],r=t[g+4>>2],a=t[I+8>>2],B=t[g+8>>2],n=t[I+12>>2],i=t[g+12>>2],o=t[I+16>>2],Q=t[g+16>>2],C=t[I+20>>2],c=t[g+20>>2],E=t[I+24>>2],s=t[g+24>>2],y=t[I+28>>2],_=t[g+28>>2],h=t[I+32>>2],f=t[g+32>>2],p=t[I+36>>2],u=t[g+36>>2],t[A>>2]=t[I>>2]+t[g>>2],t[A+36>>2]=p+u,t[A+32>>2]=h+f,t[A+28>>2]=y+_,t[A+24>>2]=E+s,t[A+20>>2]=C+c,t[A+16>>2]=o+Q,t[A+12>>2]=n+i,t[A+8>>2]=a+B,t[A+4>>2]=e+r}function hA(A){var g,I=0,e=0,r=0,B=0;for(a[11+(g=f-16|0)|0]=0,a[g+12|0]=0,a[g+13|0]=0,a[g+14|0]=0,t[g+8>>2]=0;;){for(r=n[A+e|0],I=0;a[0|(B=(g+8|0)+I|0)]=n[0|B]|r^n[(3232+(I<<5)|0)+e|0],7!=(0|(I=I+1|0)););if(31==(0|(e=e+1|0)))break}for(e=127&n[A+31|0],A=0,I=0;a[0|(r=(g+8|0)+I|0)]=n[0|r]|e^n[3263+(I<<5)|0],7!=(0|(I=I+1|0)););for(I=0;I=n[(g+8|0)+A|0]-1|I,7!=(0|(A=A+1|0)););return I>>>8&1}function fA(A,g){var I=0,e=0,r=0,B=0,t=0;for(BA(q(A,1952,64)- -64|0,0,293);r=e=(I=B<<3)+A|0,I=g+I|0,t=n[0|e]|n[e+1|0]<<8|n[e+2|0]<<16|n[e+3|0]<<24,e=(n[I+4|0]|n[I+5|0]<<8|n[I+6|0]<<16|n[I+7|0]<<24)^(n[e+4|0]|n[e+5|0]<<8|n[e+6|0]<<16|n[e+7|0]<<24),I=(n[0|I]|n[I+1|0]<<8|n[I+2|0]<<16|n[I+3|0]<<24)^t,a[0|r]=I,a[r+1|0]=I>>>8,a[r+2|0]=I>>>16,a[r+3|0]=I>>>24,a[r+4|0]=e,a[r+5|0]=e>>>8,a[r+6|0]=e>>>16,a[r+7|0]=e>>>24,8!=(0|(B=B+1|0)););}function pA(A,g,I,e,r){var a,B=0;f=a=f+-64|0;A:{g:{if(B=!I,(I=FA(A))>>>0<128&&B){if(t[a+56>>2]=0,t[a+48>>2]=0,t[a+52>>2]=0,t[a+40>>2]=0,t[a+44>>2]=0,B=function(A){var g=0,I=0;return g=0,A&&(I=A,g=A,(1|A)>>>0<65536||(g=I)),I=g,!(A=d(g))|!(3&n[A-4|0])||BA(A,0,I),A}(I))break g}else t[8960]=28;A=-1;break A}t[a+32>>2]=0,t[a+36>>2]=0,t[a+8>>2]=B,t[a+16>>2]=B,t[a+20>>2]=I,t[a>>2]=B,t[a+12>>2]=I,t[a+24>>2]=0,t[a+28>>2]=0,t[a+4>>2]=I,W(a,A,r)?(t[8960]=28,A=-1):(A=1,(0|g)==t[a+40>>2]&&(A=t[a+44>>2]!=(e>>>10|0))),m(B)}return f=a- -64|0,A}function uA(A,g){var I,e=0,r=0,B=0,Q=0;if(f=I=f-48|0,!((e=QA(A))||(e=-26,g-1>>>0>1||(B=t[A+44>>2],e=t[A+48>>2],t[I>>2]=0,r=t[A+40>>2],t[I+28>>2]=e,t[I+12>>2]=-1,t[I+8>>2]=r,e=((r=B>>>0<(r=e<<3)>>>0?r:B)>>>0)/((B=e<<2)>>>0)|0,t[I+20>>2]=e,t[I+24>>2]=e<<2,t[I+16>>2]=o(e,B),e=t[A+52>>2],t[I+36>>2]=g,t[I+32>>2]=e,e=function(A,g){var I,e=0;return f=I=f-80|0,e=-25,!A|!g||(e=d(t[A+20>>2]<<3),t[A+4>>2]=e,e?(e=function(A,g){var I,e=0,r=0;f=I=f-16|0,r=-22;A:if(!(!A|!g)&&1024==(((e=g<<10)>>>0)/(g>>>0)|0)&&(g=d(12),t[A>>2]=g,g)){t[g>>2]=0,t[g+4>>2]=0,g=function(A,g){if(g>>>0>4294967168)A=48;else{if(!(g=function(A){var g=0,I=0,e=0,r=0,a=0,B=0;return A>>>0>=4294967168?(t[8960]=48,0):(A=d(76+(e=A>>>0<11?16:A+11&-8)|0))?(g=A-8|0,63&A?(r=(-8&(B=t[(a=A-4|0)>>2]))-(I=(A=(A=(A+63&-64)-8|0)-g>>>0>15?A:A- -64|0)-g|0)|0,3&B?(t[A+4>>2]=r|1&t[A+4>>2]|2,t[4+(r=A+r|0)>>2]=1|t[r+4>>2],t[a>>2]=I|1&t[a>>2]|2,t[A+4>>2]=1|t[A+4>>2],Y(g,I)):(g=t[g>>2],t[A+4>>2]=r,t[A>>2]=g+I)):A=g,3&(g=t[A+4>>2])&&((I=-8&g)>>>0<=e+16>>>0||(t[A+4>>2]=e|1&g|2,g=A+e|0,e=I-e|0,t[g+4>>2]=3|e,t[4+(I=A+I|0)>>2]=1|t[I+4>>2],Y(g,e))),A+8|0):0}(g)))return 48;t[A>>2]=g,A=0}return A}(I+12|0,e),t[8960]=g;g:{if(g)t[I+12>>2]=0;else if(g=t[I+12>>2])break g;m(t[A>>2]),t[A>>2]=0;break A}t[t[A>>2]>>2]=g,t[t[A>>2]+4>>2]=g,t[t[A>>2]+8>>2]=e,r=0}return f=I+16|0,r}(A,t[A+16>>2]))?Cg(A,t[g+56>>2]):(function(A,g,I){var e,r=0;e=r=f,f=r=r-448&-64,!A|!g||(tg(r- -64|0,0,0,64),Jg(r+60|0,t[g+48>>2]),fI(r- -64|0,r+60|0,4,0),Jg(r+60|0,t[g+4>>2]),fI(r- -64|0,r+60|0,4,0),Jg(r+60|0,t[g+44>>2]),fI(r- -64|0,r+60|0,4,0),Jg(r+60|0,t[g+40>>2]),fI(r- -64|0,r+60|0,4,0),Jg(r+60|0,19),fI(r- -64|0,r+60|0,4,0),Jg(r+60|0,I),fI(r- -64|0,r+60|0,4,0),Jg(r+60|0,t[g+12>>2]),fI(r- -64|0,r+60|0,4,0),(I=t[g+8>>2])&&(fI(r- -64|0,I,t[g+12>>2],0),1&a[g+56|0]&&(Eg(t[g+8>>2],t[g+12>>2]),t[g+12>>2]=0)),Jg(r+60|0,t[g+20>>2]),fI(r- -64|0,r+60|0,4,0),(I=t[g+16>>2])&&fI(r- -64|0,I,t[g+20>>2],0),Jg(r+60|0,t[g+28>>2]),fI(r- -64|0,r+60|0,4,0),(I=t[g+24>>2])&&(fI(r- -64|0,I,t[g+28>>2],0),2&n[g+56|0]&&(Eg(t[g+24>>2],t[g+28>>2]),t[g+28>>2]=0)),Jg(r+60|0,t[g+36>>2]),fI(r- -64|0,r+60|0,4,0),(I=t[g+32>>2])&&fI(r- -64|0,I,t[g+36>>2],0),Ng(r- -64|0,A,64)),f=e}(I,g,t[A+36>>2]),Eg(I- -64|0,8),function(A,g){var I,e=0,r=0,a=0;if(f=I=f-1024|0,t[g+28>>2])for(a=A+68|0,r=A- -64|0;Jg(r,0),Jg(a,e),R(I,1024,A,72),WA(t[t[g>>2]+4>>2]+(o(t[g+24>>2],e)<<10)|0,I),Jg(r,1),R(I,1024,A,72),WA(1024+(t[t[g>>2]+4>>2]+(o(t[g+24>>2],e)<<10)|0)|0,I),(e=e+1|0)>>>0<i[g+28>>2];);Eg(I,1024),f=I+1024|0}(I,A),Eg(I,72),e=0):e=-22),f=I+80|0,e}(I,A))))){if(t[I+8>>2])for(;dA(I,Q),(Q=Q+1|0)>>>0<i[I+8>>2];);!function(A,g){var I,e=0,r=0;if(f=I=f-2048|0,!(!A|!g)){if(FI(I+1024|0,(t[t[g>>2]+4>>2]+(t[g+24>>2]<<10)|0)-1024|0),i[g+28>>2]>=2)for(e=1;r=t[g+24>>2],rg(I+1024|0,(t[t[g>>2]+4>>2]+(r+o(e,r)<<10)|0)-1024|0),(e=e+1|0)>>>0<i[g+28>>2];);!function(A,g){for(var I=0,e=0;cg((I=e<<3)+A|0,t[(I=g+I|0)>>2],t[I+4>>2]),128!=(0|(e=e+1|0)););}(I,I+1024|0),R(t[A>>2],t[A+4>>2],I,1024),Eg(I+1024|0,1024),Eg(I,1024),Cg(g,t[A+56>>2])}f=I+2048|0}(A,I),e=0}return f=I+48|0,e}function lA(A,g,I,e,r,a,B,n,i,o,Q,C){var c,E;return f=c=f+-64|0,(E=d(i))?(t[c+32>>2]=0,t[c+36>>2]=0,t[c+24>>2]=0,t[c+28>>2]=0,t[c+20>>2]=B,t[c+16>>2]=a,t[c+12>>2]=r,t[c+8>>2]=e,t[c+4>>2]=i,t[c>>2]=E,t[c+56>>2]=0,t[c+52>>2]=I,t[c+48>>2]=I,t[c+44>>2]=g,t[c+40>>2]=A,(I=uA(c,C))?Eg(E,i):!o|!Q||!P(o,Q,c,C)?(n&&q(n,E,i),Eg(E,i),I=0):(Eg(E,i),Eg(o,Q),I=-31),m(E)):I=-22,f=c- -64|0,I}function wA(A,g,I,e,r,B){var t,i,Q=0,C=0,c=0;return f=t=f-592|0,Q=-1,function(A){var g=0,I=0,e=0,r=0,a=0;for(g=32,I=1;a=(e=n[(g=g-1|0)+A|0])-(r=n[g+3456|0])>>8&I|255&a,I&=65535+(e^r)>>>8,g;);return 0!=(0|a)}(i=A+32|0)&&(hA(A)||function(A){var g=0,I=0;for(I=127&(-1^n[A+31|0]),g=30;I=-1^n[A+g|0]|I,g=g-1|0;);return 1&(((255&I)-1&236-n[0|A])>>>8^-1)}(r)&&(hA(r)||sA(t+128|0,r)||(tI(t+384|0,B),X(t+384|0,A,32,0),X(t+384|0,r,32,0),X(t+384|0,g,I,e),Hg(t+384|0,t+320|0),v(t+320|0),function(A,g,I,e){var r;f=r=f-2272|0,cA(r+2016|0,g),cA(r+1760|0,e),Dg(r+480|0,I),Rg(r+320|0,I),pg(r,r+320|0),XA(r+320|0,r,r+480|0),pg(r+160|0,r+320|0),Dg(g=r+640|0,r+160|0),XA(r+320|0,r,g),pg(r+160|0,r+320|0),Dg(g=r+800|0,r+160|0),XA(r+320|0,r,g),pg(r+160|0,r+320|0),Dg(g=r+960|0,r+160|0),XA(r+320|0,r,g),pg(r+160|0,r+320|0),Dg(g=r+1120|0,r+160|0),XA(r+320|0,r,g),pg(r+160|0,r+320|0),Dg(g=r+1280|0,r+160|0),XA(r+320|0,r,g),pg(r+160|0,r+320|0),Dg(g=r+1440|0,r+160|0),XA(r+320|0,r,g),pg(r+160|0,r+320|0),Dg(r+1600|0,r+160|0),HI(A),hI(A+40|0),hI(A+80|0),e=255;A:{for(;;){if(!(n[(I=e)+(r+2016|0)|0]|n[(r+1760|0)+I|0])){if(e=I-1|0,I)continue;break A}break}if(!((0|I)<0))for(;Ag(r+320|0,A),(0|(I=a[(g=I)+(r+2016|0)|0]))>=1?(pg(r+160|0,r+320|0),XA(r+320|0,r+160|0,(r+480|0)+o((254&I)>>>1|0,160)|0)):(0|I)>-1||(pg(r+160|0,r+320|0),VA(r+320|0,r+160|0,(r+480|0)+o((0-I&254)>>>1|0,160)|0)),(0|(I=a[g+(r+1760|0)|0]))>=1?(pg(r+160|0,r+320|0),ZA(r+320|0,r+160|0,o((254&I)>>>1|0,120)+2272|0)):(0|I)>-1||(pg(r+160|0,r+320|0),OA(r+320|0,r+160|0,o((0-I&254)>>>1|0,120)+2272|0)),bg(A,r+320|0),I=g-1|0,(0|g)>0;);}f=r+2272|0}(t+8|0,t+320|0,t+128|0,i),ng(t+288|0,t+8|0),C=-1,c=vI(t+288|0,A),Q=((t+288|0)==(0|A)?C:c)|zA(A,t+288|0,32)))),f=t+592|0,Q}function DA(A,g,I,e){var r=0,a=0;A:if(t[g>>2])a=t[A+24>>2],r=t[A+20>>2],e=e?t[g+12>>2]+(a+(-1^r)|0)|0:(a-r|0)-!t[g+12>>2]|0,a=0,3!=(0|(g=n[g+8|0]))&&(a=o(r,g+1|0));else{if(!(r=n[g+8|0])){e=t[g+12>>2]-1|0,a=0;break A}if(r=o(r,t[A+20>>2]),g=t[g+12>>2],e){e=(g+r|0)-1|0,a=0;break A}e=r-!g|0,a=0}return g=a+(r=e-1|0)|0,CI(I,0,I,0),CI(e,0,l,0),function(A,g,I){var e=0,r=0,a=0,B=0,t=0,n=0,i=0,C=0,c=0;A:{g:{I:{e:{r:{a:{B:{t:{n:{if(r=g){if(!(e=I))break n;break t}return p=A-o((A>>>0)/(I>>>0)|0,I)|0,u=0,void(l=0)}if(!A)break B;break a}if(!((B=e-1|0)&e))break r;t=0-(B=(Q(e)+33|0)-Q(r)|0)|0;break I}return p=0,u=r,void(l=0)}if((e=32-Q(r)|0)>>>0<31)break e;break g}if(p=A&B,u=0,1==(0|e))break A;return I=31&(A=e?31-Q(e-1^e)|0:32),void(l=(63&A)>>>0>=32?0:g>>>I|0)}B=e+1|0,t=63-e|0}if(e=g,a=31&(r=63&B),r>>>0>=32?(r=0,a=e>>>a|0):(r=e>>>a|0,a=((1<<a)-1&e)<<32-a|A>>>a),e=31&(t&=63),t>>>0>=32?(g=A<<e,A=0):(g=(1<<e)-1&A>>>32-e|g<<e,A<<=e),B)for(t=-1!=(0|(e=I-1|0))?0:-1;a=(i=n=a<<1|g>>>31)-(C=I&(n=t-((r=r<<1|a>>>31)+(e>>>0<n>>>0)|0)>>31))|0,r=r-(i>>>0<C>>>0)|0,g=g<<1|A>>>31,A=c|A<<1,c=1&n,B=B-1|0;);return p=a,u=r,void(l=g<<1|A>>>31)}p=A,u=g,g=0}l=g}(g-(I=l)|0,(g>>>0<r>>>0)-(g>>>0<I>>>0)|0,t[A+24>>2]),l=u,p}function vA(A,g,I,e,r,a,B,t,n,i){var o;return f=o=f-352|0,bI(o+32|0,64,n,i),wI(o+96|0,o+32|0),Eg(o+32|0,64),yI(o+96|0,a,B,t),yI(o+96|0,34688,0-B&15,0),yI(o+96|0,g,I,e),yI(o+96|0,34688,0-I&15,0),cg(o+24|0,B,t),yI(o+96|0,o+24|0,8,0),cg(o+24|0,I,e),yI(o+96|0,o+24|0,8,0),DI(o+96|0,o),Eg(o+96|0,256),r=dI(o,r),Eg(o,16),A&&(r?(BA(A,0,I),r=-1):(eg(A,g,I,e,n,1,i),r=0)),f=o+352|0,r}function dA(A,g){var I,e=0,r=0,B=0;if(f=I=f-32|0,!(!A|!t[A+28>>2]))for(t[I+16>>2]=g,e=1;;){if(a[I+24|0]=r,g=0,B=0,e)for(;t[I+28>>2]=0,e=t[I+28>>2],t[I+8>>2]=t[I+24>>2],t[I+12>>2]=e,t[I+20>>2]=g,e=t[I+20>>2],t[I>>2]=t[I+16>>2],t[I+4>>2]=e,$(A,I),(g=g+1|0)>>>0<(B=t[A+28>>2])>>>0;);if(e=B,4==(0|(r=r+1|0)))break}f=I+32|0}function bA(A,g,I,e,r,a,B,n,i,o,Q){var C;return f=C=f-336|0,bI(C+16|0,64,o,Q),wI(C+80|0,C+16|0),Eg(C+16|0,64),yI(C+80|0,B,n,i),yI(C+80|0,34688,0-n&15,0),eg(A,e,r,a,o,1,Q),yI(C+80|0,A,r,a),yI(C+80|0,34688,0-r&15,0),cg(C+8|0,n,i),yI(C+80|0,C+8|0,8,0),cg(C+8|0,r,a),yI(C+80|0,C+8|0,8,0),DI(C+80|0,g),Eg(C+80|0,256),I&&(t[I>>2]=16,t[I+4>>2]=0),f=C+336|0,0}function kA(A,g,I,e,r,a,B,t,n,i){var o;return f=o=f-352|0,QI(o+32|0,n,i),wI(o+96|0,o+32|0),Eg(o+32|0,64),yI(o+96|0,a,B,t),cg(o+24|0,B,t),yI(o+96|0,o+24|0,8,0),yI(o+96|0,g,I,e),cg(o+24|0,I,e),yI(o+96|0,o+24|0,8,0),DI(o+96|0,o),Eg(o+96|0,256),r=dI(o,r),Eg(o,16),A&&(r?(BA(A,0,I),r=-1):(Ug(A,g,I,e,n,i),r=0)),f=o+352|0,r}function FA(A){var g=0,I=0,e=0;A:{g:if(3&(g=A)){if(!n[0|A])return 0;for(;;){if(!(3&(g=g+1|0)))break g;if(!n[0|g])break}break A}for(;I=g,g=g+4|0,!((-1^(e=t[I>>2]))&e-16843009&-2139062144););if(!(255&e))return I-A|0;for(;e=n[I+1|0],I=g=I+1|0,e;);}return g-A|0}function GA(A,g){var I,e=0,r=0,a=0,B=0,i=0;A:if(!(((I=n[0|A])-48&255)>>>0>9)){for(r=I,e=A;;){if(B=e,a>>>0>429496729)break A;if((r=(255&r)-48|0)>>>0>(-1^(e=o(a,10)))>>>0)break A;if(a=e+r|0,!(((r=n[0|(e=B+1|0)])-48&255)>>>0<10))break}(0|A)==(0|e)|(48==(0|I)?(0|A)!=(0|B):0)||(t[g>>2]=a,i=e)}return i}function mA(A,g){var I,e,r,a,B,n,i,o,Q;I=t[g+4>>2],e=t[g+8>>2],r=t[g+12>>2],a=t[g+16>>2],B=t[g+20>>2],n=t[g+24>>2],i=t[g+28>>2],o=t[g+32>>2],Q=t[g+36>>2],t[A>>2]=0-t[g>>2],t[A+36>>2]=0-Q,t[A+32>>2]=0-o,t[A+28>>2]=0-i,t[A+24>>2]=0-n,t[A+20>>2]=0-B,t[A+16>>2]=0-a,t[A+12>>2]=0-r,t[A+8>>2]=0-e,t[A+4>>2]=0-I}function YA(A,g,I){var e=0;e=g<<8&16711680|g<<24,e|=255&(I<<8|g>>>24)|65280&(I<<24|g>>>8),g=-16777216&((255&I)<<24|g>>>8)|16711680&((16777215&I)<<8|g>>>24)|I>>>8&65280|I>>>24|0,a[0|A]=g,a[A+1|0]=g>>>8,a[A+2|0]=g>>>16,a[A+3|0]=g>>>24,g=e,a[A+4|0]=g,a[A+5|0]=g>>>8,a[A+6|0]=g>>>16,a[A+7|0]=g>>>24}function HA(A,g,I){var e;e=A,I?(t[A+48>>2]=n[0|I]|n[I+1|0]<<8|n[I+2|0]<<16|n[I+3|0]<<24,I=n[I+4|0]|n[I+5|0]<<8|n[I+6|0]<<16|n[I+7|0]<<24):(t[A+48>>2]=0,I=0),t[e+52>>2]=I,t[A+56>>2]=n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24,t[A+60>>2]=n[g+4|0]|n[g+5|0]<<8|n[g+6|0]<<16|n[g+7|0]<<24}function SA(A,g){var I,e,r,a,B,n,i,o,Q;I=t[g+8>>2],e=t[g+12>>2],r=t[g+16>>2],a=t[g+20>>2],B=t[g+24>>2],n=t[g+28>>2],i=t[g>>2],o=t[g+4>>2],Q=t[g+36>>2],t[A+32>>2]=t[g+32>>2],t[A+36>>2]=Q,t[A+24>>2]=B,t[A+28>>2]=n,t[A+16>>2]=r,t[A+20>>2]=a,t[A+8>>2]=I,t[A+12>>2]=e,t[A>>2]=i,t[A+4>>2]=o}function UA(A,g,I,e,r,a,B,i,o,Q,C){var c;return f=c=f-48|0,t[c+8>>2]=0,t[c>>2]=0,t[c+4>>2]=0,J(c+16|0,Q,C),C=n[Q+16|0]|n[Q+17|0]<<8|n[Q+18|0]<<16|n[Q+19|0]<<24,Q=n[Q+20|0]|n[Q+21|0]<<8|n[Q+22|0]<<16|n[Q+23|0]<<24,t[c+4>>2]=C,t[c+8>>2]=Q,function(A,g,I,e,r,a,B,n,i,o,Q){var C;f=C=f-336|0,oI(C+16|0,64,o,Q),wI(C+80|0,C+16|0),Eg(C+16|0,64),yI(C+80|0,B,n,i),yI(C+80|0,34704,0-n&15,0),Sg(A,e,r,a,o,1,Q),yI(C+80|0,A,r,a),yI(C+80|0,34704,0-r&15,0),cg(C+8|0,n,i),yI(C+80|0,C+8|0,8,0),cg(C+8|0,r,a),yI(C+80|0,C+8|0,8,0),DI(C+80|0,g),Eg(C+80|0,256),I&&(t[I>>2]=16,t[I+4>>2]=0),f=C+336|0}(A,g,I,e,r,a,B,i,o,c,c+16|0),Eg(c+16|0,32),f=c+48|0,0}function MA(A,g,I,e,r,a,B,i,o,Q){var C;return f=C=f-48|0,t[C+8>>2]=0,t[C>>2]=0,t[C+4>>2]=0,J(C+16|0,o,Q),Q=n[o+16|0]|n[o+17|0]<<8|n[o+18|0]<<16|n[o+19|0]<<24,o=n[o+20|0]|n[o+21|0]<<8|n[o+22|0]<<16|n[o+23|0]<<24,t[C+4>>2]=Q,t[C+8>>2]=o,A=function(A,g,I,e,r,a,B,t,n,i){var o;return f=o=f-352|0,oI(o+32|0,64,n,i),wI(o+96|0,o+32|0),Eg(o+32|0,64),yI(o+96|0,a,B,t),yI(o+96|0,34704,0-B&15,0),yI(o+96|0,g,I,e),yI(o+96|0,34704,0-I&15,0),cg(o+24|0,B,t),yI(o+96|0,o+24|0,8,0),cg(o+24|0,I,e),yI(o+96|0,o+24|0,8,0),DI(o+96|0,o),Eg(o+96|0,256),r=dI(o,r),Eg(o,16),A&&(r?(BA(A,0,I),r=-1):(Sg(A,g,I,e,n,1,i),r=0)),f=o+352|0,r}(A,g,I,e,r,a,B,i,C,C+16|0),Eg(C+16|0,32),f=C+48|0,A}function NA(A){var g;return g=n[0|A]|n[A+1|0]<<8|n[A+2|0]<<16|n[A+3|0]<<24,A=n[A+4|0]|n[A+5|0]<<8|n[A+6|0]<<16|n[A+7|0]<<24,l=65280&(A<<24|g>>>8)|255&(A<<8|g>>>24)|g<<8&16711680|g<<24,-16777216&((255&A)<<24|g>>>8)|16711680&((16777215&A)<<8|g>>>24)|A>>>8&65280|A>>>24|0}function xA(A,g,I,e,r,a,B,n,i,o,Q){var C;return f=C=f-336|0,QI(C+16|0,o,Q),wI(C+80|0,C+16|0),Eg(C+16|0,64),yI(C+80|0,B,n,i),cg(C+8|0,n,i),yI(C+80|0,C+8|0,8,0),Ug(A,e,r,a,o,Q),yI(C+80|0,A,r,a),cg(C+8|0,r,a),yI(C+80|0,C+8|0,8,0),DI(C+80|0,g),Eg(C+80|0,256),I&&(t[I>>2]=16,t[I+4>>2]=0),f=C+336|0,0}function PA(A,g,I,e){var r;if(f=r=f-192|0,!(!I|(g-1&255)>>>0>=64|(e-1&255)>>>0>=64))return B[r+130>>1]=257,a[r+129|0]=e,a[r+128|0]=g,Vg(r+128|4),cg(r+128|8,0,0),BA(r+144|0,0,48),fA(A,r+128|0),BA(e+r|0,0,128-e|0),rA(g=A,A=q(r,I,e),128,0),Eg(A,128),f=A+192|0,0;Zg(),C()}function RA(A,g,I){t[A+48>>2]=I?n[0|I]|n[I+1|0]<<8|n[I+2|0]<<16|n[I+3|0]<<24:0,t[A+52>>2]=n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24,t[A+56>>2]=n[g+4|0]|n[g+5|0]<<8|n[g+6|0]<<16|n[g+7|0]<<24,t[A+60>>2]=n[g+8|0]|n[g+9|0]<<8|n[g+10|0]<<16|n[g+11|0]<<24}function JA(A,g,I,e,r,a,B){var n;return f=n=f-16|0,A=BA(A,0,128),B>>>0<2147483649&&!(e|a)?B>>>0>8191&&r|a?(sg(n,16),A=lA(r,B>>>10|0,1,g,I,n,16,0,32,A,128,2)?-1:0):(t[8960]=28,A=-1):(t[8960]=22,A=-1),f=n+16|0,A}function KA(A){var g=0;return(0-(g=A+4&(A+65488>>>8^-1)&(57-A>>>8^-1)&255|((g=A-65|0)>>>8^-1)&g&(90-A>>>8^-1)&255|A+185&(A+65439>>>8^-1)&(122-A>>>8^-1)&255|63&(1+(16288^A)>>>8^-1)|62&(1+(16338^A)>>>8^-1))>>>8^-1)&1+(65470^A)>>>8&255|g}function LA(A){var g=0;return(0-(g=A+4&(A+65488>>>8^-1)&(57-A>>>8^-1)&255|((g=A-65|0)>>>8^-1)&g&(90-A>>>8^-1)&255|A+185&(A+65439>>>8^-1)&(122-A>>>8^-1)&255|63&(1+(16336^A)>>>8^-1)|62&(1+(16340^A)>>>8^-1))>>>8^-1)&1+(65470^A)>>>8&255|g}function TA(A,g){var I,e,r=0,B=0,t=0,n=0;for(f=I=f-16|0,r=10;n=r,t=(g>>>0)/10|0,a[0|(B=(r=r-1|0)+(I+6|0)|0)]=g-o(t,10)|48,!(g>>>0<10)&&(g=t,r););e=q(g=A,B,A=11-n|0)+A|0,a[0|e]=0,f=I+16|0}function qA(A,g,I){var e=0,r=0,a=0;if(!I)return 0;A:if(e=n[0|A]){for(;;){if((0|(r=n[0|g]))==(0|e)&&!(!(I=I-1|0)|!r)){if(g=g+1|0,e=n[A+1|0],A=A+1|0,e)continue;break A}break}a=e}return(255&a)-n[0|g]|0}function XA(A,g,I){var e,r,a,B=0;f=r=f-48|0,_A(A,B=g+40|0,g),yA(e=A+40|0,B,g),b(B=A+80|0,A,I),b(e,e,I+40|0),b(a=A+120|0,I+120|0,g+120|0),b(A,g+80|0,I+80|0),_A(r,A,A),yA(A,B,e),_A(e,B,e),_A(B,r,a),yA(a,r,a),f=r+48|0}function VA(A,g,I){var e,r,a,B=0;f=r=f-48|0,_A(A,B=g+40|0,g),yA(e=A+40|0,B,g),b(B=A+80|0,A,I+40|0),b(e,e,I),b(a=A+120|0,I+120|0,g+120|0),b(A,g+80|0,I+80|0),_A(r,A,A),yA(A,B,e),_A(e,B,e),yA(B,r,a),_A(a,r,a),f=r+48|0}function WA(A,g){for(var I=0,e=0,r=0,a=0;r=(I=e<<3)+A|0,a=n[0|(I=g+I|0)]|n[I+1|0]<<8|n[I+2|0]<<16|n[I+3|0]<<24,I=n[I+4|0]|n[I+5|0]<<8|n[I+6|0]<<16|n[I+7|0]<<24,t[r>>2]=a,t[r+4>>2]=I,128!=(0|(e=e+1|0)););}function jA(A,g,I){var e;if(t[12+(e=f-16|0)>>2]=A,t[e+8>>2]=g,g=0,t[e+4>>2]=0,(0|I)>=1)for(;t[e+4>>2]=t[e+4>>2]|n[t[e+8>>2]+g|0]^n[t[e+12>>2]+g|0],(0|I)!=(0|(g=g+1|0)););return(t[e+4>>2]-1>>>8&1)-1|0}function OA(A,g,I){var e,r,a,B=0;f=r=f-48|0,_A(A,B=g+40|0,g),yA(e=A+40|0,B,g),b(B=A+80|0,A,I+40|0),b(e,e,I),b(a=A+120|0,I+80|0,g+120|0),_A(r,g=g+80|0,g),yA(A,B,e),_A(e,B,e),yA(B,r,a),_A(a,r,a),f=r+48|0}function ZA(A,g,I){var e,r,a,B=0;f=r=f-48|0,_A(A,B=g+40|0,g),yA(e=A+40|0,B,g),b(B=A+80|0,A,I),b(e,e,I+40|0),b(a=A+120|0,I+80|0,g+120|0),_A(r,g=g+80|0,g),yA(A,B,e),_A(e,B,e),_A(B,r,a),yA(a,r,a),f=r+48|0}function zA(A,g,I){var e;if(t[12+(e=f-16|0)>>2]=A,t[e+8>>2]=g,g=0,a[e+7|0]=0,I)for(;a[e+7|0]=n[e+7|0]|n[t[e+8>>2]+g|0]^n[t[e+12>>2]+g|0],(0|I)!=(0|(g=g+1|0)););return(n[e+7|0]-1>>>8&1)-1|0}function $A(A,g,I){var e,r=0,B=0;if(f=e=f-16|0,a[e+15|0]=0,B=-1,!(0|XI[t[8950]](A,g,I))){for(;a[e+15|0]=n[A+r|0]|n[e+15|0],32!=(0|(r=r+1|0)););B=0-(n[e+15|0]-1>>>8&1)|0}return f=e+16|0,B}function Ag(A,g){var I,e,r,a,B;f=e=f-48|0,k(A,g),k(I=A+80|0,B=g+40|0),function(A,g){var I,e,r,a,B,n,i,Q,C,c,E,s,y,_,h,f,p,u,w,D,v,d,b,k,F,G,m,Y,H,S,U,M,N,x,P,R,J,K,L=0,T=0,q=0,X=0,V=0,W=0,j=0,O=0,Z=0,z=0,$=0,AA=0,gA=0,IA=0,eA=0,rA=0,aA=0,BA=0,tA=0,nA=0;B=L=(V=t[g+12>>2])<<1,n=L>>31,i=L=(Z=t[g+4>>2])<<1,L=CI(B,n,L,I=L>>31),q=l,T=L,d=L=IA=t[g+8>>2],X=CI(L,z=L>>31,L,z),L=l+q|0,L=(T=T+X|0)>>>0<X>>>0?L+1|0:L,X=T,e=T=eA=t[g+16>>2],Q=T>>31,C=T=(rA=t[g>>2])<<1,q=CI(e,Q,T,r=T>>31),L=l+L|0,L=(T=X+q|0)>>>0<q>>>0?L+1|0:L,j=T,q=t[g+28>>2],w=T=o(q,38),H=q,X=CI(T,f=T>>31,q,b=q>>31),L=l+L|0,L=(T=j+X|0)>>>0<X>>>0?L+1|0:L,W=T,j=t[g+32>>2],O=CI(E=T=o(j,19),s=T>>31,T=(X=t[g+24>>2])<<1,T>>31),T=l+L|0,T=O>>>0>($=W+O|0)>>>0?T+1|0:T,W=$,gA=t[g+36>>2],c=L=o(gA,38),a=L>>31,p=g=($=t[g+20>>2])<<1,O=CI(L,a,g,_=g>>31),g=l+T|0,k=(L=W+O|0)<<1,x=L=(L>>>0<O>>>0?g+1|0:g)<<1|L>>>31,S=g=k+33554432|0,P=L=g>>>0<33554432?L+1|0:L,g=L>>26,L=(67108863&L)<<6|S>>>26,T=CI(i,I,e,Q),O=l,W=L,u=L=IA<<1,aA=V,V=CI(L,h=L>>31,V,F=V>>31),L=l+O|0,L=(T=V+T|0)>>>0<V>>>0?L+1|0:L,IA=$,V=(O=CI($,D=$>>31,C,r))+T|0,T=l+L|0,T=V>>>0<O>>>0?T+1|0:T,eA=V,U=L=q<<1,V=CI(E,s,L,G=L>>31),L=l+T|0,L=(q=eA+V|0)>>>0<V>>>0?L+1|0:L,T=q,V=X,q=CI(c,a,X,y=X>>31),L=l+L|0,L=(T=T+q|0)>>>0<q>>>0?L+1|0:L,q=T,g=g+(T=L<<1|T>>>31)|0,BA=L=W+(q<<=1)|0,L=L>>>0<q>>>0?g+1|0:g,R=g=BA+16777216|0,g=(33554431&(L=g>>>0<16777216?L+1|0:L))<<7|g>>>25,q=L>>25,L=CI(B,n,aA,F),T=l,W=g,g=(O=CI(e,Q,u,h))+L|0,L=l+T|0,L=g>>>0<O>>>0?L+1|0:L,T=CI(i,I,p,_),L=l+L|0,L=(g=T+g|0)>>>0<T>>>0?L+1|0:L,T=(O=CI(C,r,X,y))+g|0,g=l+L|0,g=T>>>0<O>>>0?g+1|0:g,O=j,j=CI(E,s,j,v=j>>31),L=l+g|0,L=(T=j+T|0)>>>0<j>>>0?L+1|0:L,g=(j=CI(c,a,U,G))+T|0,T=l+L|0,g=((L=g)>>>0<j>>>0?T+1|0:T)<<1|L>>>31,j=L<<1,L=g+q|0,L=(T=W+j|0)>>>0<j>>>0?L+1|0:L,tA=T=(g=T)+33554432|0,q=L=T>>>0<33554432?L+1|0:L,L=-67108864&T,t[A+24>>2]=g-L,j=A,g=CI(g=o($,38),g>>31,$,D),L=l,W=g,$=CI(g=rA,T=g>>31,g,T),T=l+L|0,T=(g=W+$|0)>>>0<$>>>0?T+1|0:T,L=g,AA=g=o(X,19),m=g>>31,M=g=e<<1,g=L+(X=CI(AA,m,g,Y=g>>31))|0,L=l+T|0,L=g>>>0<X>>>0?L+1|0:L,T=CI(B,n,w,f),L=l+L|0,L=(g=T+g|0)>>>0<T>>>0?L+1|0:L,T=(X=CI(E,s,u,h))+g|0,g=l+L|0,g=T>>>0<X>>>0?g+1|0:g,X=CI(i,I,c,a),L=l+g|0,J=L=((g=T=X+T|0)>>>0<X>>>0?L+1|0:L)<<1|g>>>31,rA=g=33554432+($=g<<1)|0,eA=T=g>>>0<33554432?L+1|0:L,g=(67108863&T)<<6|g>>>26,X=T>>26,L=CI(AA,m,p,_),T=l,nA=g,g=(Z=CI(C,r,W=Z,N=W>>31))+L|0,L=l+T|0,L=g>>>0<Z>>>0?L+1|0:L,T=(Z=CI(e,Q,w,f))+g|0,g=l+L|0,g=T>>>0<Z>>>0?g+1|0:g,Z=CI(E,s,B,n),L=l+g|0,L=(T=Z+T|0)>>>0<Z>>>0?L+1|0:L,g=(Z=CI(c,a,d,z))+T|0,T=l+L|0,g=((L=g)>>>0<Z>>>0?T+1|0:T)<<1|L>>>31,Z=L<<1,L=g+X|0,L=(T=nA+Z|0)>>>0<Z>>>0?L+1|0:L,Z=T,(g=T+16777216|0)>>>0<16777216&&(L=L+1|0),nA=g,T=g,g=L>>25,L=(33554431&L)<<7|T>>>25,X=g,g=CI(C,r,d,z),T=l,K=L,W=CI(i,I,W,N),L=l+T|0,L=(g=W+g|0)>>>0<W>>>0?L+1|0:L,W=CI(AA,m,V,y),T=l+L|0,T=(g=W+g|0)>>>0<W>>>0?T+1|0:T,W=CI(p,_,w,f),L=l+T|0,L=(g=W+g|0)>>>0<W>>>0?L+1|0:L,T=CI(E,s,M,Y),L=l+L|0,L=(g=T+g|0)>>>0<T>>>0?L+1|0:L,T=(W=CI(c,a,B,n))+g|0,g=l+L|0,L=(L=(g=T>>>0<W>>>0?g+1|0:g)<<1|T>>>31)+X|0,T=L=(g=K+(T<<=1)|0)>>>0<T>>>0?L+1|0:L,W=L=g+33554432|0,X=T=L>>>0<33554432?T+1|0:T,L&=-67108864,t[j+8>>2]=g-L,g=CI(u,h,IA,D),T=l,L=(AA=CI(e,Q,B,n))+g|0,g=l+T|0,g=L>>>0<AA>>>0?g+1|0:g,T=(AA=CI(i,I,V,y))+L|0,L=l+g|0,L=T>>>0<AA>>>0?L+1|0:L,g=(AA=CI(C,r,H,b))+T|0,T=l+L|0,T=g>>>0<AA>>>0?T+1|0:T,AA=CI(c,a,O,v),L=l+T|0,L=(L=(L=(g=AA+g|0)>>>0<AA>>>0?L+1|0:L)<<1|g>>>31)+(T=q>>26)|0,T=g=(q=(67108863&q)<<6|tA>>>26)+(g<<1)|0,g=L=g>>>0<q>>>0?L+1|0:L,tA=L=T+16777216|0,q=g=L>>>0<16777216?g+1|0:g,g=-33554432&L,t[j+28>>2]=T-g,g=CI(C,r,aA,F),L=l,T=CI(i,I,d,z),L=l+L|0,L=(g=T+g|0)>>>0<T>>>0?L+1|0:L,T=CI(V,y,w,f),L=l+L|0,L=(g=T+g|0)>>>0<T>>>0?L+1|0:L,T=(z=CI(E,s,p,_))+g|0,g=l+L|0,g=T>>>0<z>>>0?g+1|0:g,L=(z=CI(c,a,e,Q))+T|0,T=l+g|0,g=L,L=(L>>>0<z>>>0?T+1|0:T)<<1|L>>>31,T=g<<1,L=(g=X>>26)+L|0,L=(T=T+(X=(67108863&X)<<6|W>>>26)|0)>>>0<X>>>0?L+1|0:L,aA=T=(g=T)+16777216|0,X=L=T>>>0<16777216?L+1|0:L,L=-33554432&T,t[j+12>>2]=g-L,z=A,g=CI(V,y,u,h),L=l,T=CI(e,Q,e,Q),L=l+L|0,L=(g=T+g|0)>>>0<T>>>0?L+1|0:L,T=CI(B,n,p,_),L=l+L|0,L=(g=T+g|0)>>>0<T>>>0?L+1|0:L,T=CI(i,I,U,G),L=l+L|0,L=(g=T+g|0)>>>0<T>>>0?L+1|0:L,T=(j=CI(C,r,O,v))+g|0,g=l+L|0,g=T>>>0<j>>>0?g+1|0:g,L=(gA=CI(c,a,j=gA,W=j>>31))+T|0,T=l+g|0,A=(g=L)<<1,L=(g=q>>25)+(L=(L>>>0<gA>>>0?T+1|0:T)<<1|L>>>31)|0,L=(T=A+(q=(33554431&q)<<7|tA>>>25)|0)>>>0<q>>>0?L+1|0:L,gA=T=(g=T)+33554432|0,q=L=T>>>0<33554432?L+1|0:L,L=-67108864&T,t[z+32>>2]=g-L,L=X>>25,T=(X=(33554431&X)<<7|aA>>>25)+(k-(g=-67108864&S)|0)|0,g=L+(x-((g>>>0>k>>>0)+P|0)|0)|0,L=g=T>>>0<X>>>0?g+1|0:g,X=g=T+33554432|0,g=((67108863&(L=g>>>0<33554432?L+1|0:L))<<6|g>>>26)+(BA=BA-(-33554432&R)|0)|0,t[z+20>>2]=g,g=-67108864&X,t[z+16>>2]=T-g,g=CI(B,n,V,y),T=l,L=(V=CI(IA,D,M,Y))+g|0,g=l+T|0,g=L>>>0<V>>>0?g+1|0:g,T=(V=CI(u,h,H,b))+L|0,L=l+g|0,L=T>>>0<V>>>0?L+1|0:L,g=(V=CI(i,I,O,v))+T|0,T=l+L|0,T=g>>>0<V>>>0?T+1|0:T,V=CI(C,r,j,W),L=l+T|0,L=(L=(L=(g=V+g|0)>>>0<V>>>0?L+1|0:L)<<1|g>>>31)+(T=q>>26)|0,L=(g=(q=(67108863&q)<<6|gA>>>26)+(g<<1)|0)>>>0<q>>>0?L+1|0:L,T=g,q=g,g=L,g=(L=T+16777216|0)>>>0<16777216?g+1|0:g,T=-33554432&L,t[z+36>>2]=q-T,X=Z-(-33554432&nA)|0,g=(L=CI((33554431&g)<<7|L>>>25,g>>25,19,0))+($-(T=-67108864&rA)|0)|0,T=l+(J-((T>>>0>$>>>0)+eA|0)|0)|0,T=g>>>0<L>>>0?T+1|0:T,L=g,g=T,g=((67108863&(g=(T=L+33554432|0)>>>0<33554432?g+1|0:g))<<6|T>>>26)+X|0,t[z+4>>2]=g,A=-67108864&T,t[z>>2]=L-A}(a=A+120|0,g+80|0),_A(r=A+40|0,g,B),k(e,r),_A(r,I,A),yA(I,I,A),yA(A,e,r),yA(a,a,I),f=e+48|0}function gg(A){var g,I;return(A=(g=t[8943])+(I=A+3&-4)|0)>>>0<=g>>>0&&(0|I)>=1||A>>>0>VI()<<16>>>0&&!(0|h(0|A))?(t[8960]=48,-1):(t[8943]=A,g)}function Ig(A,g){var I;return f=I=f+-64|0,(g-1&255)>>>0>=64&&(Zg(),C()),a[I+3|0]=1,a[I+1|0]=0,a[I+2|0]=1,a[0|I]=g,Vg(4|I),cg(8|I,0,0),BA(I+16|0,0,48),fA(A,I),f=I- -64|0,0}function eg(A,g,I,e,r,a,B){var t=0,n=0;t=e,1==(((t=(n=I+63|0)>>>0<63?t+1|0:t)>>>6|0)+(0!=(0|(t=(63&t)<<26|n>>>6)))|0)&(n=0-t|0)>>>0<a>>>0&&(Zg(),C()),Sg(A,g,I,e,r,a,B)}function rg(A,g){for(var I=0,e=0,r=0,a=0;e=(I=r<<3)+A|0,a=t[(I=g+I|0)>>2],I=t[e+4>>2]^t[I+4>>2],t[e>>2]=t[e>>2]^a,t[e+4>>2]=I,128!=(0|(r=r+1|0)););}function ag(A){var g,I;return 95&(1+(32704^A)>>>8^-1)|45&(1+(16321^A)>>>8^-1)|(g=A+65510>>>8&255)&A+65|(I=A+65484>>>8|0)&A+71&(255^g)|A+252&A+65474>>>8&(-1^I)&255}function Bg(A){var g,I;return 47&(1+(16320^A)>>>8^-1)|43&(1+(16321^A)>>>8^-1)|(g=A+65510>>>8&255)&A+65|(I=A+65484>>>8|0)&A+71&(255^g)|A+252&A+65474>>>8&(-1^I)&255}function tg(A,g,I,e){var r=0;r=-1;A:if(!(I>>>0>64|e-1>>>0>63)){g:{if(!I||!g){if(!Ig(A,255&e))break g;break A}if(PA(A,255&e,g,255&I))break A}r=0}return r}function ng(A,g){var I,e,r;f=I=f-144|0,j(I+96|0,g+80|0),b(I+48|0,g,I+96|0),b(I,g+40|0,I+96|0),eA(A,I),e=A,r=Lg(I+48|0)<<7^n[A+31|0],a[e+31|0]=r,f=I+144|0}function ig(A,g){var I,e=0;if(a[15+(I=f-16|0)|0]=0,g)for(;a[I+15|0]=n[A+e|0]|n[I+15|0],(0|(e=e+1|0))!=(0|g););return n[I+15|0]-1>>>8&1}function og(A,g,I,e){var r;return e=g+e|0,e=(r=A+I|0)>>>0<I>>>0?e+1|0:e,I=CI(A<<1&-2,1&(g=g<<1|A>>>31),I,0),A=l+e|0,l=A=(g=I+r|0)>>>0<I>>>0?A+1|0:A,g}function Qg(A,g,I){var e,r=0;if(e=I>>>3|0)for(I=0;YA((r=I<<3)+A|0,t[(r=g+r|0)>>2],t[r+4>>2]),(0|e)!=(0|(I=I+1|0)););}function Cg(A,g){var I=0;!function(A,g){g&&((g=t[A>>2])&&Eg(t[g+4>>2],t[A+16>>2]<<10),(g=t[A+4>>2])&&Eg(g,t[A+20>>2]<<3))}(A,4&g),m(t[A+4>>2]),t[A+4>>2]=0,(g=t[A>>2])&&(I=t[g>>2])&&m(I),m(g),t[A>>2]=0}function cg(A,g,I){a[0|A]=g,a[A+1|0]=g>>>8,a[A+2|0]=g>>>16,a[A+3|0]=g>>>24,a[A+4|0]=I,a[A+5|0]=I>>>8,a[A+6|0]=I>>>16,a[A+7|0]=I>>>24}function Eg(A,g){var I;if(t[12+(I=f-16|0)>>2]=A,g)for(A=0;a[t[I+12>>2]+A|0]=0,(0|g)!=(0|(A=A+1|0)););}function sg(A,g){A|=0;var I=0,e=0,r=0;if(g|=0)for(;e=A+I|0,r=Fg(),a[0|e]=r,(0|(I=I+1|0))!=(0|g););}function yg(A,g,I,e,r){var a,B;return A|=0,g|=0,I|=0,e|=0,f=a=(B=f)-128&-64,gA(a,r|=0),z(a,g,I,e),O(a,A),f=B,0}function _g(A){var g=0,I=0,e=0;for(g=1;g=n[0|(e=A+I|0)]+g|0,a[0|e]=g,g=g>>>8|0,4!=(0|(I=I+1|0)););}function hg(A,g,I,e,r,a,B,t){var n,i=0;return f=n=f-32|0,i=-1,jg(n,B,t)||(i=rI(A,g,I,e,r,a,n),Eg(n,32)),f=n+32|0,i}function fg(A,g,I,e,r,a,B,t){var n,i=0;return f=n=f-32|0,i=-1,jg(n,B,t)||(i=aI(A,g,I,e,r,a,n),Eg(n,32)),f=n+32|0,i}function pg(A,g){var I,e,r;b(A,g,I=g+120|0),b(A+40|0,e=g+40|0,r=g+80|0),b(A+80|0,r,I),b(A+120|0,g,e)}function ug(A,g,I,e,r,a,B){return!e&I>>>0>=16|e?fg(A,g+16|0,g,I-16|0,e-(I>>>0<16)|0,r,a,B):-1}function lg(A,g){for(var I=0,e=0;a[0|(e=A+I|0)]=n[0|e]^n[g+I|0],8!=(0|(I=I+1|0)););}function wg(A,g,I){var e,r;f=e=(r=f)-384&-64,Tg(e,0,0,24),_I(e,g,32,0),_I(e,I,32,0),Wg(e,A,24),f=r}function Dg(A,g){var I;_A(A,I=g+40|0,g),yA(A+40|0,I,g),SA(A+80|0,g+80|0),b(A+120|0,g+120|0,2224)}function vg(A,g,I,e,r,a,B){return g-1>>>0>63|B>>>0>64?-1:function(A,g,I,e,r,a,B){var t,n=0;if(t=n=f,f=n=n-384&-64,!(!A|(e-1&255)>>>0>=64|(r|a?!g:0)|B>>>0>=65|(B?!I:0)))return B?PA(n,e,I,B):Ig(n,e),rA(n,g,r,a),M(n,A,e),f=t,0;Zg(),C()}(A,I,a,255&g,e,r,255&B)}function dg(A,g,I,e,r,a,B){return!e&I>>>0>=4294967280|e&&(Zg(),C()),hg(A+16|0,A,g,I,e,r,a,B)}function bg(A,g){var I;b(A,g,I=g+120|0),b(A+40|0,g+40|0,g=g+80|0),b(A+80|0,g,I)}function kg(A){var g;return g=n[0|A]|n[A+1|0]<<8,A=n[A+2|0],l=A>>>16|0,g|A<<16}function Fg(){var A,g;return f=A=f-16|0,a[A+15|0]=0,g=0|E(1024,A+15|0,0),f=A+16|0,0|g}function Gg(A,g,I,e,r){var B;return f=B=f-416|0,function(A,g){var I,e=0,r=0;for(f=I=f-192|0,Mg(A),BA(I- -64|0,54,128),a[I+64|0]=54^n[0|g],e=1;a[0|(r=(I- -64|0)+e|0)]=n[0|r]^n[g+e|0],32!=(0|(e=e+1|0)););for(X(A,I- -64|0,128,0),Mg(A=A+208|0),BA(I- -64|0,92,128),a[I+64|0]=92^n[0|g],e=1;a[0|(r=(I- -64|0)+e|0)]=n[0|r]^n[g+e|0],32!=(0|(e=e+1|0)););X(A,I- -64|0,128,0),Eg(I- -64|0,128),Eg(I,64),f=I+192|0}(B,r),X(B,g,I,e),function(A,g){var I,e=0;f=I=f+-64|0,function(A,g){var I;f=I=f+-64|0,Hg(A,I),X(A=A+208|0,I,64,0),Hg(A,g),Eg(I,64),f=I- -64|0}(A,I),e=t[I+28>>2],A=t[I+24>>2],a[g+24|0]=A,a[g+25|0]=A>>>8,a[g+26|0]=A>>>16,a[g+27|0]=A>>>24,a[g+28|0]=e,a[g+29|0]=e>>>8,a[g+30|0]=e>>>16,a[g+31|0]=e>>>24,e=t[I+20>>2],A=t[I+16>>2],a[g+16|0]=A,a[g+17|0]=A>>>8,a[g+18|0]=A>>>16,a[g+19|0]=A>>>24,a[g+20|0]=e,a[g+21|0]=e>>>8,a[g+22|0]=e>>>16,a[g+23|0]=e>>>24,e=t[I+12>>2],A=t[I+8>>2],a[g+8|0]=A,a[g+9|0]=A>>>8,a[g+10|0]=A>>>16,a[g+11|0]=A>>>24,a[g+12|0]=e,a[g+13|0]=e>>>8,a[g+14|0]=e>>>16,a[g+15|0]=e>>>24,e=t[I+4>>2],A=t[I>>2],a[0|g]=A,a[g+1|0]=A>>>8,a[g+2|0]=A>>>16,a[g+3|0]=A>>>24,a[g+4|0]=e,a[g+5|0]=e>>>8,a[g+6|0]=e>>>16,a[g+7|0]=e>>>24,f=I- -64|0}(B,A),f=B+416|0,0}function mg(A,g,I,e){var r;return f=r=f-208|0,Mg(r),X(r,g,I,e),Hg(r,A),f=r+208|0,0}function Yg(A,g){var I=0;return(-1>>>(I=31&g)&A)<<I|((I=A)&-1<<(A=0-g&31))>>>A}function Hg(A,g){var I;f=I=f-704|0,function(A,g){var I,e=0;(I=t[A+72>>2]>>>3&127)>>>0<=111?q(80+(A+I|0)|0,35424,112-I|0):(q((e=A+80|0)+I|0,35424,128-I|0),D(A,e,g,g+640|0),BA(e,0,112)),Qg(A+192|0,A- -64|0,16),D(A,A+80|0,g,g+640|0)}(A,I),Qg(g,A,64),Eg(I,704),Eg(A,208),f=I+704|0}function Sg(A,g,I,e,r,a,B){1==(0|e)|e>>>0>1&&(Zg(),C()),XI[t[8957]](A,g,I,e,r,a,B)}function Ug(A,g,I,e,r,a){1==(0|e)|e>>>0>1&&(Zg(),C()),XI[t[8956]](A,g,I,e,r,1,0,a)}function Mg(A){t[A+64>>2]=0,t[A+68>>2]=0,t[A+72>>2]=0,t[A+76>>2]=0,q(A,34720,64)}function Ng(A,g,I){return I>>>0>=256&&(c(2016,2036,107,2089),C()),M(A,g,255&I)}function xg(){var A;f=A=f-16|0,a[A+15|0]=0,E(1062,A+15|0,0),f=A+16|0}function Pg(A){var g;return f=g=f-32|0,eA(g,A),A=ig(g,32),f=g+32|0,A}function Rg(A,g){var I;f=I=f-128|0,function(A,g){SA(A,g),SA(A+40|0,g+40|0),SA(A+80|0,g+80|0)}(I+8|0,g),Ag(A,I+8|0),f=I+128|0}function Jg(A,g){a[0|A]=g,a[A+1|0]=g>>>8,a[A+2|0]=g>>>16,a[A+3|0]=g>>>24}function Kg(A,g,I){CA(A,g,I),CA(A+40|0,g+40|0,I),CA(A+80|0,g+80|0,I)}function Lg(A){var g;return f=g=f-32|0,eA(g,A),f=g+32|0,1&a[0|g]}function Tg(A,g,I,e){return 0|tg(A|=0,g|=0,I|=0,e|=0)}function qg(A){a[A+32|0]=1,a[A+33|0]=0,a[A+34|0]=0,a[A+35|0]=0}function Xg(A){t[A>>2]=0,t[A+4>>2]=0,t[A+8>>2]=0,t[A+12>>2]=0}function Vg(A){a[0|A]=0,a[A+1|0]=0,a[A+2|0]=0,a[A+3|0]=0}function Wg(A,g,I){return 0|Ng(A|=0,g|=0,I|=0)}function jg(A,g,I){return 0|function(A,g,I){var e,r=0;return f=e=f-32|0,r=-1,$A(e,I,g)||(r=L(A,35552,e)),f=e+32|0,r}(A|=0,g|=0,I|=0)}function Og(A,g,I){return 0|$A(A|=0,g|=0,I|=0)}function Zg(){var A;(A=t[9105])&&XI[0|A](),s(),C()}function zg(A){HI(A),hI(A+40|0),hI(A+80|0),HI(A+120|0)}function $g(A,g,I,e,r,a){XI[t[8953]](A,g,I,e,r,0,0,a)}function AI(A,g,I,e,r,a){XI[t[8953]](A,g,I,e,r,1,0,a)}function gI(A,g){return A|=0,sg(g|=0,32),0|sI(A,g)}function II(A,g){return A=function(A,g){var I=0,e=0;A:{if(e=255&g){if(3&A)for(;;){if(!(I=n[0|A])|(0|I)==(255&g))break A;if(!(3&(A=A+1|0)))break}g:if(!((-1^(I=t[A>>2]))&I-16843009&-2139062144))for(e=o(e,16843009);;){if((-1^(I^=e))&I-16843009&-2139062144)break g;if(I=t[A+4>>2],A=A+4|0,I-16843009&(-1^I)&-2139062144)break}for(;(e=n[0|(I=A)])&&(A=I+1|0,(0|e)!=(255&g)););return I}return FA(A)+A|0}return A}(A,g),n[0|A]==(255&g)?A:0}function eI(A,g,I,e,r,a){return T(A,g,I,e,r,a,0),0}function rI(A,g,I,e,r,a,B){return nA(A,g,I,e,r,a,B)}function aI(A,g,I,e,r,a,B){return oA(A,g,I,e,r,a,B)}function BI(A,g,I,e,r,a,B){return vg(A,g,I,e,r,a,B)}function tI(A,g){Mg(A),g&&X(A,35728,34,0)}function nI(A,g,I,e,r){return wA(A,g,I,e,r,0)}function iI(A,g){return 0|sI(A|=0,g|=0)}function oI(A,g,I,e){XI[t[8955]](A,g,0,I,e)}function QI(A,g,I){XI[t[8954]](A,64,0,g,I)}function CI(A,g,I,e){return function(A,g,I,e){var r,a,B,t,n=0,i=0;return t=o(n=I>>>16|0,i=A>>>16|0),n=(65535&(i=((B=o(r=65535&I,a=65535&A))>>>16|0)+o(i,r)|0))+o(n,a)|0,A=(o(g,I)+t|0)+o(A,e)+(i>>>16)+(n>>>16)|0,l=A,65535&B|n<<16}(A,g,I,e)}function cI(A,g){return(255&(A^g))-1>>>31|0}function EI(A,g,I){!function(A,g,I){var e,r;f=e=f-128|0,hI(A),hI(A+40|0),HI(A+80|0),Kg(A,g,cI(I=I-((0-(r=(128&I)>>>7|0)&I)<<1)<<24>>24,1)),Kg(A,g+120|0,cI(I,2)),Kg(A,g+240|0,cI(I,3)),Kg(A,g+360|0,cI(I,4)),Kg(A,g+480|0,cI(I,5)),Kg(A,g+600|0,cI(I,6)),Kg(A,g+720|0,cI(I,7)),Kg(A,g+840|0,cI(I,8)),SA(e+8|0,A+40|0),SA(e+48|0,A),mA(e+88|0,A+80|0),Kg(A,e+8|0,r),f=e+128|0}(A,o(g,960)+3488|0,I)}function sI(A,g){return 0|XI[t[8951]](A,g)}function yI(A,g,I,e){XI[t[8948]](A,g,I,e)}function _I(A,g,I,e){return fI(A,g,I,e)}function hI(A){t[A>>2]=1,BA(A+4|0,0,36)}function fI(A,g,I,e){return rA(A,g,I,e)}function pI(A,g,I){return function(A,g,I){var e=0,r=0,a=0,B=0;return e=31&(a=B=63&I),a>>>0>=32?e=-1>>>e|0:(r=-1>>>e|0,e=(1<<e)-1<<32-e|-1>>>e),a=e&A,e=g&r,r=31&B,B>>>0>=32?(e=a<<r,B=0):(e=(1<<r)-1&a>>>32-r|e<<r,B=a<<r),a=e,I=31&(e=r=0-I&63),e>>>0>=32?(e=-1<<I,I=0):(e=(1<<I)-1&-1>>>32-I|-1<<I,I=-1<<I),A&=I,e&=g,g=31&r,r>>>0>=32?(I=0,A=e>>>g|0):(I=e>>>g|0,A=((1<<g)-1&e)<<32-g|A>>>g),l=I|a,A|B}(A,g,I)}function uI(A,g,I){return function(A,g,I){var e=0,r=0,a=0,B=0,t=0;return e=31&(B=63&I),B>>>0>=32?(r=-1<<e,t=0):(r=(1<<e)-1&-1>>>32-e|-1<<e,t=-1<<e),t&=A,e=g&r,a=31&B,B>>>0>=32?(r=0,B=e>>>a|0):(r=e>>>a|0,B=((1<<a)-1&e)<<32-a|t>>>a),t=r,a=31&(e=0-I&63),e>>>0>=32?(r=0,I=-1>>>a|0):(r=-1>>>a|0,I=(1<<a)-1<<32-a|-1>>>a),A&=I,g&=r,r=31&e,e>>>0>=32?(I=A<<r,A=0):(I=(1<<r)-1&A>>>32-r|g<<r,A<<=r),l=I|t,A|B}(A,g,I)}function lI(A){1!=(-7&A)&&(Zg(),C())}function wI(A,g){XI[t[8947]](A,g)}function DI(A,g){XI[t[8949]](A,g)}function vI(A,g){return jA(A,g,32)}function dI(A,g){return jA(A,g,16)}function bI(A,g,I,e){oI(A,g,I,e)}function kI(A,g){return Yg(A,g)}function FI(A,g){q(A,g,1024)}function GI(A){sg(A|=0,32)}function mI(A,g,I){!function(A,g,I){var e,r,a,B,t,i,o,Q,C,c,E,s,y=0,_=0,h=0,f=0,p=0,u=0,l=0,w=0,D=0,v=0,d=0,b=0,k=0,F=0,G=0,m=0,Y=0,H=0,S=0,U=0,M=0;for(e=n[0|I]|n[I+1|0]<<8|n[I+2|0]<<16|n[I+3|0]<<24,r=n[I+4|0]|n[I+5|0]<<8|n[I+6|0]<<16|n[I+7|0]<<24,a=n[I+8|0]|n[I+9|0]<<8|n[I+10|0]<<16|n[I+11|0]<<24,B=n[I+12|0]|n[I+13|0]<<8|n[I+14|0]<<16|n[I+15|0]<<24,t=n[I+16|0]|n[I+17|0]<<8|n[I+18|0]<<16|n[I+19|0]<<24,i=n[I+20|0]|n[I+21|0]<<8|n[I+22|0]<<16|n[I+23|0]<<24,o=n[I+24|0]|n[I+25|0]<<8|n[I+26|0]<<16|n[I+27|0]<<24,Q=n[I+28|0]|n[I+29|0]<<8|n[I+30|0]<<16|n[I+31|0]<<24,I=1634760805,f=e,p=r,G=a,u=B,k=857760878,l=C=n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24,w=c=n[g+4|0]|n[g+5|0]<<8|n[g+6|0]<<16|n[g+7|0]<<24,D=E=n[g+8|0]|n[g+9|0]<<8|n[g+10|0]<<16|n[g+11|0]<<24,b=s=n[g+12|0]|n[g+13|0]<<8|n[g+14|0]<<16|n[g+15|0]<<24,g=2036477234,_=t,v=1797285236,d=Q,h=o,y=i;u=kI(I+y|0,7)^u,D=kI(u+I|0,9)^D,m=kI(D+u|0,13)^y,S=kI(D+m|0,18),y=kI(f+k|0,7)^b,F=kI(y+k|0,9)^h,f=kI(y+F|0,13)^f,b=kI(F+f|0,18),d=kI(g+l|0,7)^d,p=kI(d+g|0,9)^p,l=kI(p+d|0,13)^l,U=kI(p+l|0,18),h=kI(_+v|0,7)^G,w=kI(h+v|0,9)^w,Y=kI(w+h|0,13)^_,M=kI(w+Y|0,18),f=kI((I^=S)+h|0,7)^f,p=kI(f+I|0,9)^p,G=kI(f+p|0,13)^h,I=kI(p+G|0,18)^I,l=kI((_=k^b)+u|0,7)^l,w=kI(l+_|0,9)^w,u=kI(w+l|0,13)^u,k=kI(w+u|0,18)^_,_=kI((g^=U)+y|0,7)^Y,D=kI(_+g|0,9)^D,b=kI(D+_|0,13)^y,g=kI(D+b|0,18)^g,y=kI((v^=M)+d|0,7)^m,h=kI(y+v|0,9)^F,d=kI(y+h|0,13)^d,v=kI(h+d|0,18)^v,F=H>>>0<18,H=H+2|0,F;);Jg(A,I+1634760805|0),Jg(A+4|0,f+e|0),Jg(A+8|0,p+r|0),Jg(A+12|0,G+a|0),Jg(A+16|0,u+B|0),Jg(A+20|0,k+857760878|0),Jg(A+24|0,l+C|0),Jg(A+28|0,w+c|0),Jg(A+32|0,D+E|0),Jg(A+36|0,b+s|0),Jg(A+40|0,g+2036477234|0),Jg(A+44|0,_+t|0),Jg(A+48|0,y+i|0),Jg(A+52|0,h+o|0),Jg(A+56|0,d+Q|0),Jg(A+60|0,v+1797285236|0)}(A,g,I)}function YI(A){BA(A,0,1024)}function HI(A){BA(A,0,40)}function SI(){return 16}function UI(){return 32}function MI(){return 24}function NI(){return-17}function xI(){return 64}function PI(){return 1}function RI(){return 2}function JI(){return 8}function KI(){return 0}function LI(){return-1}function TI(){return 3}r(g=n,1024,"InsgcmV0dXJuIE1vZHVsZS5nZXRSYW5kb21WYWx1ZSgpOyB9IgB7IGlmIChNb2R1bGUuZ2V0UmFuZG9tVmFsdWUgPT09IHVuZGVmaW5lZCkgeyB0cnkgeyB2YXIgd2luZG93XyA9ICdvYmplY3QnID09PSB0eXBlb2Ygd2luZG93ID8gd2luZG93IDogc2VsZjsgdmFyIGNyeXB0b18gPSB0eXBlb2Ygd2luZG93Xy5jcnlwdG8gIT09ICd1bmRlZmluZWQnID8gd2luZG93Xy5jcnlwdG8gOiB3aW5kb3dfLm1zQ3J5cHRvOyB2YXIgcmFuZG9tVmFsdWVzU3RhbmRhcmQgPSBmdW5jdGlvbigpIHsgdmFyIGJ1ZiA9IG5ldyBVaW50MzJBcnJheSgxKTsgY3J5cHRvXy5nZXRSYW5kb21WYWx1ZXMoYnVmKTsgcmV0dXJuIGJ1ZlswXSA+Pj4gMDsgfTsgcmFuZG9tVmFsdWVzU3RhbmRhcmQoKTsgTW9kdWxlLmdldFJhbmRvbVZhbHVlID0gcmFuZG9tVmFsdWVzU3RhbmRhcmQ7IH0gY2F0Y2ggKGUpIHsgdHJ5IHsgdmFyIGNyeXB0byA9IHJlcXVpcmUoJ2NyeXB0bycpOyB2YXIgcmFuZG9tVmFsdWVOb2RlSlMgPSBmdW5jdGlvbigpIHsgdmFyIGJ1ZiA9IGNyeXB0b1sncmFuZG9tQnl0ZXMnXSg0KTsgcmV0dXJuIChidWZbMF0gPDwgMjQgfCBidWZbMV0gPDwgMTYgfCBidWZbMl0gPDwgOCB8IGJ1ZlszXSkgPj4+IDA7IH07IHJhbmRvbVZhbHVlTm9kZUpTKCk7IE1vZHVsZS5nZXRSYW5kb21WYWx1ZSA9IHJhbmRvbVZhbHVlTm9kZUpTOyB9IGNhdGNoIChlKSB7IHRocm93ICdObyBzZWN1cmUgcmFuZG9tIG51bWJlciBnZW5lcmF0b3IgZm91bmQnOyB9IH0gfSB9AExpYnNvZGl1bURSR2J1Zl9sZW4gPD0gU0laRV9NQVgAcmFuZG9tYnl0ZXMvcmFuZG9tYnl0ZXMuYwByYW5kb21ieXRlcwBTLT5idWZsZW4gPD0gQkxBS0UyQl9CTE9DS0JZVEVTAGNyeXB0b19nZW5lcmljaGFzaC9ibGFrZTJiL3JlZi9ibGFrZTJiLXJlZi5jAGJsYWtlMmJfZmluYWwAAAAAAAAAAAjJvPNn5glqO6fKhIWuZ7sr+JT+cvNuPPE2HV869U+l0YLmrX9SDlEfbD4rjGgFm2u9Qfur2YMfeSF+ExnN4FtvdXRsZW4gPD0gVUlOVDhfTUFYAGNyeXB0b19nZW5lcmljaGFzaC9ibGFrZTJiL3JlZi9nZW5lcmljaGFzaF9ibGFrZTJiLmMAY3J5cHRvX2dlbmVyaWNoYXNoX2JsYWtlMmJfZmluYWwAAAAAAAAAtnhZ/4Vy0wC9bhX/DwpqACnAAQCY6Hn/vDyg/5lxzv8At+L+tA1I/wAAAAAAAAAAsKAO/tPJhv+eGI8Af2k1AGAMvQCn1/v/n0yA/mpl4f8e/AQAkgyu"),r(g,2224,"WfGy/grlpv973Sr+HhTUAFKAAwAw0fMAd3lA/zLjnP8AbsUBZxuQ"),r(g,2272,"hTuMAb3xJP/4JcMBYNw3ALdMPv/DQj0AMkykAeGkTP9MPaP/dT4fAFGRQP92QQ4AonPW/waKLgB85vT/CoqPADQawgC49EwAgY8pAb70E/97qnr/YoFEAHnVkwBWZR7/oWebAIxZQ//v5b4BQwu1AMbwif7uRbz/Q5fuABMqbP/lVXEBMkSH/xFqCQAyZwH/UAGoASOYHv8QqLkBOFno/2XS/AAp+kcAzKpP/w4u7/9QTe8AvdZL/xGN+QAmUEz/vlV1AFbkqgCc2NABw8+k/5ZCTP+v4RD/jVBiAUzb8gDGonIALtqYAJsr8f6boGj/M7ulAAIRrwBCVKAB9zoeACNBNf5F7L8ALYb1AaN73QAgbhT/NBelALrWRwDpsGAA8u82ATlZigBTAFT/iKBkAFyOeP5ofL4AtbE+//opVQCYgioBYPz2AJeXP/7vhT4AIDicAC2nvf+OhbMBg1bTALuzlv76qg7/0qNOACU0lwBjTRoA7pzV/9XA0QFJLlQAFEEpATbOTwDJg5L+qm8Y/7EhMv6rJsv/Tvd0ANHdmQCFgLIBOiwZAMknOwG9E/wAMeXSAXW7dQC1s7gBAHLbADBekwD1KTgAfQ3M/vStdwAs3SD+VOoUAPmgxgHsfur/L2Oo/qrimf9ms9gA4o16/3pCmf629YYA4+QZAdY56//YrTj/tefSAHeAnf+BX4j/bn4zAAKpt/8HgmL+RbBe/3QE4wHZ8pH/yq0fAWkBJ/8ur0UA5C86/9fgRf7POEX/EP6L/xfP1P/KFH7/X9Vg/wmwIQDIBc//8SqA/iMhwP/45cQBgRF4APtnl/8HNHD/jDhC/yji9f/ZRiX+rNYJ/0hDhgGSwNb/LCZwAES4S//OWvsAleuNALWqOgB09O8AXJ0CAGatYgDpiWABfzHLAAWblAAXlAn/03oMACKGGv/bzIgAhggp/+BTK/5VGfcAbX8A/qmIMADud9v/563VAM4S/v4Iugf/fgkHAW8qSABvNOz+YD+NAJO/f/7NTsD/DmrtAbvbTACv87v+aVmtAFUZWQGi85QAAnbR/iGeCQCLoy7/XUYoAGwqjv5v/I7/m9+QADPlp/9J/Jv/XnQM/5ig2v+c7iX/s+rP/8UAs/+apI0A4cRoAAojGf7R1PL/Yf3e/rhl5QDeEn8BpIiH/x7PjP6SYfMAgcAa/slUIf9vCk7/k1Gy/wQEGACh7tf/Bo0hADXXDv8ptdD/54udALPL3f//uXEAveKs/3FC1v/KPi3/ZkAI/06uEP6FdUT/"),r(g,3264,"AQ=="),r(g,3296,"JuiVj8KyJ7BFw/SJ8u+Y8NXfrAXTxjM5sTgCiG1T/AXHF2pwPU3YT7o8C3YNEGcPKiBT+iw5zMZOx/13kqwDeuz///////////////////////////////////////9/7f///////////////////////////////////////3/u////////////////////////////////////////f+3T9VwaYxJY1pz3ot753hQ="),r(g,3487,"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"),r(g,34460,"AQ=="),r(g,34496,"AQ=="),r(g,34528,"4Ot6fDtBuK4WVuP68Z/EatoJjeucMrH9hmIFFl9JuABfnJW8o1CMJLHQsVWcg+9bBERcxFgcjobYIk7d0J8RV+z///////////////////////////////////////9/7f///////////////////////////////////////3/u////////////////////////////////////////fw=="),r(g,34720,"CMm882fmCWo7p8qEha5nuyv4lP5y82488TYdXzr1T6XRguatf1IOUR9sPiuMaAWba71B+6vZgx95IX4TGc3gWyKuKNeYL4pCzWXvI5FEN3EvO03sz/vAtbzbiYGl27XpOLVI81vCVjkZ0AW28RHxWZtPGa+kgj+SGIFt2tVeHKtCAgOjmKoH2L5vcEUBW4MSjLLkTr6FMSTitP/Vw30MVW+Je/J0Xb5ysZYWO/6x3oA1Esclpwbcm5Qmac908ZvB0krxnsFpm+TjJU84hke+77XVjIvGncEPZZysd8yhDCR1AitZbyzpLYPkpm6qhHRK1PtBvdypsFy1UxGD2oj5dqvfZu5SUT6YEDK0LW3GMag/IfuYyCcDsOQO777Hf1m/wo+oPfML4MYlpwqTR5Gn1W+CA+BRY8oGcG4OCmcpKRT8L9JGhQq3JybJJlw4IRsu7SrEWvxtLE3fs5WdEw04U95jr4tUcwplqLJ3PLsKanbmru1HLsnCgTs1ghSFLHKSZAPxTKHov6IBMEK8S2YaqJGX+NBwi0vCML5UBqNRbMcYUu/WGeiS0RCpZVUkBpnWKiBxV4U1DvS40bsycKBqEMjQ0rgWwaQZU6tBUQhsNx6Z647fTHdIJ6hIm+G1vLA0Y1rJxbMMHDnLikHjSqrYTnPjY3dPypxbo7iy1vNvLmj8su9d7oKPdGAvF0NvY6V4cqvwoRR4yITsOWQaCALHjCgeYyP6/76Q6b2C3utsUKQVecay96P5vitTcuPyeHHGnGEm6s4+J8oHwsAhx7iG0R7r4M3WfdrqeNFu7n9PffW6bxdyqmfwBqaYyKLFfWMKrg35vgSYPxEbRxwTNQtxG4R9BCP1d9sokyTHQHuryjK8vskVCr6ePEwNEJzEZx1DtkI+y77UxUwqfmX8nCl/Wez61jqrb8tfF1hHSowZRGyA"),r(g,35568,"YjY0X3BvcyA8PSBiNjRfbGVuAHNvZGl1bS9jb2RlY3MuYwBzb2RpdW1fYmluMmJhc2U2NAAkYXJnb24yaWQAJGFyZ29uMmkAJHY9ACRtPQAsdD0ALHA9ACRhcmdvbjJpZCR2PQAkYXJnb24yaSR2PQAkYXJnb24yaWQkACRhcmdvbjJpJA=="),r(g,35728,"U2lnRWQyNTUxOSBubyBFZDI1NTE5IGNvbGxpc2lvbnMBADEuMC4xOA=="),r(g,35772,"UI5QAABAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACAAAAAkAAAAKAAAACwAAAAwAAAAN");var qI,XI=((qI=[null,yg,function(A,g,I,e,r){var a;return A|=0,f=a=f-16|0,yg(a,g|=0,I|=0,e|=0,r|=0),A=dI(A,a),f=a+16|0,0|A},function(A,g){return gA(A|=0,g|=0),0},function(A,g,I,e){return z(A|=0,g|=0,I|=0,e|=0),0},function(A,g){return O(A|=0,g|=0),0},function(A,g,I){A|=0,g|=0;var e,r=0,B=0;if(f=e=f-336|0,r=-1,!function(A){var g,I=0,e=0,r=0,B=0;for(a[11+(g=f-16|0)|0]=0,a[g+12|0]=0,a[g+13|0]=0,a[g+14|0]=0,t[g+8>>2]=0;;){for(r=n[A+e|0],I=0;a[0|(B=(g+8|0)+I|0)]=n[0|B]|r^n[(34464+(I<<5)|0)+e|0],7!=(0|(I=I+1|0)););if(31==(0|(e=e+1|0)))break}for(e=127&n[A+31|0],A=0,I=0;a[0|(r=(g+8|0)+I|0)]=n[0|r]|e^n[34495+(I<<5)|0],7!=(0|(I=I+1|0)););for(I=0;I=n[(g+8|0)+A|0]-1|I,7!=(0|(A=A+1|0)););return I>>>8&1}(I|=0)){for(r=0;a[A+r|0]=n[g+r|0],32!=(0|(r=r+1|0)););for(a[0|A]=248&n[0|A],a[A+31|0]=63&n[A+31|0]|64,N(e+288|0,I),hI(e+240|0),HI(e+192|0),SA(e+144|0,e+288|0),hI(e+96|0),I=254,g=0;r=g,B=I,AA(e+240|0,e+144|0,r^=g=n[(I>>>3|0)+A|0]>>>(7&I)&1),AA(e+192|0,e+96|0,r),I=I-1|0,yA(e+48|0,e+144|0,e+96|0),yA(e,e+240|0,e+192|0),_A(e+240|0,e+240|0,e+192|0),_A(e+192|0,e+144|0,e+96|0),b(e+96|0,e+48|0,e+240|0),b(e+192|0,e+192|0,e),k(e+48|0,e),k(e,e+240|0),_A(e+144|0,e+96|0,e+192|0),yA(e+192|0,e+96|0,e+192|0),b(e+240|0,e,e+48|0),yA(e,e,e+48|0),k(e+192|0,e+192|0),x(e+96|0,e),k(e+144|0,e+144|0),_A(e+48|0,e+48|0,e+96|0),b(e+96|0,e+288|0,e+192|0),b(e+192|0,e,e+48|0),B;);AA(e+240|0,e+144|0,g),AA(e+192|0,e+96|0,g),j(e+192|0,e+192|0),b(e+240|0,e+240|0,e+192|0),eA(A,e+240|0),r=0}return f=e+336|0,0|r},function(A,g){A|=0,g|=0;var I,e=0;for(f=I=f-208|0;a[A+e|0]=n[g+e|0],32!=(0|(e=e+1|0)););return a[0|A]=248&n[0|A],a[A+31|0]=63&n[A+31|0]|64,aA(I+48|0,A),function(A,g,I){var e;f=e=f-96|0,_A(e+48|0,I,g),yA(e,I,g),j(e,e),b(A,e+48|0,e),f=e+96|0}(I,I+88|0,I+128|0),eA(A,I),f=I+208|0,0},function(A,g,I,e,r){A|=0,e|=0,r|=0;var B,i=0;if(f=B=f-112|0,(g|=0)|(I|=0)){i=n[r+28|0]|n[r+29|0]<<8|n[r+30|0]<<16|n[r+31|0]<<24,t[B+24>>2]=n[r+24|0]|n[r+25|0]<<8|n[r+26|0]<<16|n[r+27|0]<<24,t[B+28>>2]=i,i=n[r+20|0]|n[r+21|0]<<8|n[r+22|0]<<16|n[r+23|0]<<24,t[B+16>>2]=n[r+16|0]|n[r+17|0]<<8|n[r+18|0]<<16|n[r+19|0]<<24,t[B+20>>2]=i,i=n[r+4|0]|n[r+5|0]<<8|n[r+6|0]<<16|n[r+7|0]<<24,t[B>>2]=n[0|r]|n[r+1|0]<<8|n[r+2|0]<<16|n[r+3|0]<<24,t[B+4>>2]=i,i=n[r+12|0]|n[r+13|0]<<8|n[r+14|0]<<16|n[r+15|0]<<24,t[B+8>>2]=n[r+8|0]|n[r+9|0]<<8|n[r+10|0]<<16|n[r+11|0]<<24,t[B+12>>2]=i,r=n[0|e]|n[e+1|0]<<8|n[e+2|0]<<16|n[e+3|0]<<24,e=n[e+4|0]|n[e+5|0]<<8|n[e+6|0]<<16|n[e+7|0]<<24,t[B+104>>2]=0,t[B+108>>2]=0,t[B+96>>2]=r,t[B+100>>2]=e;A:{if(!I&g>>>0>=64|I){for(;;){for(mI(A,B+96|0,B),r=8,e=1;e=n[0|(i=(B+96|0)+r|0)]+e|0,a[0|i]=e,e=e>>>8|0,16!=(0|(r=r+1|0)););if(A=A- -64|0,I=I-1|0,!(!(I=(g=g+-64|0)>>>0<4294967232?I+1|0:I)&g>>>0>63|I))break}if(!(g|I))break A}for(r=0,mI(B+32|0,B+96|0,B);a[A+r|0]=n[(B+32|0)+r|0],(0|g)!=(0|(r=r+1|0)););}Eg(B+32|0,64),Eg(B,32)}return f=B+112|0,0},function(A,g,I,e,r,B,i,o){A|=0,g|=0,r|=0,B|=0,i|=0,o|=0;var Q,C=0,c=0;if(f=Q=f-112|0,(I|=0)|(e|=0)){for(C=n[o+28|0]|n[o+29|0]<<8|n[o+30|0]<<16|n[o+31|0]<<24,t[Q+24>>2]=n[o+24|0]|n[o+25|0]<<8|n[o+26|0]<<16|n[o+27|0]<<24,t[Q+28>>2]=C,C=n[o+20|0]|n[o+21|0]<<8|n[o+22|0]<<16|n[o+23|0]<<24,t[Q+16>>2]=n[o+16|0]|n[o+17|0]<<8|n[o+18|0]<<16|n[o+19|0]<<24,t[Q+20>>2]=C,C=n[o+4|0]|n[o+5|0]<<8|n[o+6|0]<<16|n[o+7|0]<<24,t[Q>>2]=n[0|o]|n[o+1|0]<<8|n[o+2|0]<<16|n[o+3|0]<<24,t[Q+4>>2]=C,C=8,c=n[o+12|0]|n[o+13|0]<<8|n[o+14|0]<<16|n[o+15|0]<<24,t[Q+8>>2]=n[o+8|0]|n[o+9|0]<<8|n[o+10|0]<<16|n[o+11|0]<<24,t[Q+12>>2]=c,o=n[r+4|0]|n[r+5|0]<<8|n[r+6|0]<<16|n[r+7|0]<<24,t[Q+96>>2]=n[0|r]|n[r+1|0]<<8|n[r+2|0]<<16|n[r+3|0]<<24,t[Q+100>>2]=o;a[(Q+96|0)+C|0]=B,B=(255&i)<<24|B>>>8,i=i>>>8|0,16!=(0|(C=C+1|0)););if(!e&I>>>0>63|e)for(;;){for(C=0,mI(Q+32|0,Q+96|0,Q);a[A+C|0]=n[(Q+32|0)+C|0]^n[g+C|0],o=1,64!=(0|(C=C+1|0)););for(C=8;r=n[0|(B=(Q+96|0)+C|0)]+o|0,a[0|B]=r,o=r>>>8|0,16!=(0|(C=C+1|0)););if(g=g- -64|0,A=A- -64|0,e=e-1|0,!(!(e=(I=I+-64|0)>>>0<4294967232?e+1|0:e)&I>>>0>63|e))break}if(I|e)for(C=0,mI(Q+32|0,Q+96|0,Q);a[A+C|0]=n[(Q+32|0)+C|0]^n[g+C|0],(0|I)!=(0|(C=C+1|0)););Eg(Q+32|0,64),Eg(Q,32)}return f=Q+112|0,0},function(A,g,I,e,r){var a;return A|=0,e|=0,f=a=f+-64|0,(g|=0)|(I|=0)&&(iA(a,r|=0),HA(a,e,0),H(a,A=BA(A,0,g),A,g,I),Eg(a,64)),f=a- -64|0,0},function(A,g,I,e,r){var a;return A|=0,e|=0,f=a=f+-64|0,(g|=0)|(I|=0)&&(iA(a,r|=0),RA(a,e,0),H(a,A=BA(A,0,g),A,g,I),Eg(a,64)),f=a- -64|0,0},function(A,g,I,e,r,a,B,t){var n;return A|=0,g|=0,r|=0,B|=0,t|=0,f=n=f-80|0,(I|=0)|(e|=0)&&(Jg(n+8|0,a|=0),Jg(n+12|0,B),iA(n+16|0,t),HA(n+16|0,r,n+8|0),H(n+16|0,g,A,I,e),Eg(n+16|0,64)),f=n+80|0,0},function(A,g,I,e,r,a,B){var t;return A|=0,g|=0,r|=0,B|=0,f=t=f-80|0,(I|=0)|(e|=0)&&(Jg(t+12|0,a|=0),iA(t+16|0,B),RA(t+16|0,r,t+12|0),H(t+16|0,g,A,I,e),Eg(t+16|0,64)),f=t+80|0,0}]).grow=function(A){var g=this.length;return this.length=this.length+A,g},qI.set=function(A,g){this[A]=g},qI.get=function(A){return this[A]},qI);function VI(){return e.byteLength/65536|0}return{h:XI,i:function(){},j:function(A,g,I,e,r,a,B,t,n,i,o,Q){return 0|xA(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0,t|=0,n|=0,o|=0,Q|=0)},k:function(A,g,I,e,r,a,B,n,i,o,Q){return 0|function(A,g,I,e,r,a,B,n,i,o){if(!r&e>>>0<4294967280)return xA(A,A+e|0,0,I,e,r,a,B,n,i,o),g&&(r=(A=e+16|0)>>>0<16?r+1|0:r,t[g>>2]=A,t[g+4>>2]=r),0;Zg(),C()}(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0,n|=0,o|=0,Q|=0)},l:function(A,g,I,e,r,a,B,t,n,i,o,Q){return 0|bA(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0,t|=0,n|=0,o|=0,Q|=0)},m:function(A,g,I,e,r,a,B,n,i,o,Q){return 0|function(A,g,I,e,r,a,B,n,i,o){if(!r&e>>>0<4294967280)return bA(A,A+e|0,0,I,e,r,a,B,n,i,o),g&&(r=(A=e+16|0)>>>0<16?r+1|0:r,t[g>>2]=A,t[g+4>>2]=r),0;Zg(),C()}(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0,n|=0,o|=0,Q|=0)},n:function(A,g,I,e,r,a,B,t,n,i,o){return 0|kA(A|=0,I|=0,e|=0,r|=0,a|=0,B|=0,t|=0,n|=0,i|=0,o|=0)},o:function(A,g,I,e,r,a,B,n,i,o,Q){return 0|function(A,g,I,e,r,a,B,n,i,o){var Q=0;return Q=-1,!r&e>>>0>=16|r&&(Q=kA(A,I,e-16|0,r-(e>>>0<16)|0,(I+e|0)-16|0,a,B,n,i,o)),g&&(t[g>>2]=Q?0:e-16|0,t[g+4>>2]=Q?0:r-(e>>>0<16)|0),Q}(A|=0,g|=0,e|=0,r|=0,a|=0,B|=0,n|=0,i|=0,o|=0,Q|=0)},p:function(A,g,I,e,r,a,B,t,n,i,o){return 0|vA(A|=0,I|=0,e|=0,r|=0,a|=0,B|=0,t|=0,n|=0,i|=0,o|=0)},q:function(A,g,I,e,r,a,B,n,i,o,Q){return 0|function(A,g,I,e,r,a,B,n,i,o){var Q=0;return Q=-1,!r&e>>>0>=16|r&&(Q=vA(A,I,e-16|0,r-(e>>>0<16)|0,(I+e|0)-16|0,a,B,n,i,o)),g&&(t[g>>2]=Q?0:e-16|0,t[g+4>>2]=Q?0:r-(e>>>0<16)|0),Q}(A|=0,g|=0,e|=0,r|=0,a|=0,B|=0,n|=0,i|=0,o|=0,Q|=0)},r:UI,s:function(){return 12},t:KI,u:SI,v:NI,w:GI,x:UI,y:JI,z:KI,A:SI,B:NI,C:GI,D:function(A,g,I,e,r,a,B,t,n,i,o,Q){return 0|UA(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0,t|=0,n|=0,o|=0,Q|=0)},E:function(A,g,I,e,r,a,B,n,i,o,Q){return 0|function(A,g,I,e,r,a,B,n,i,o){if(!r&e>>>0<4294967280)return UA(A,A+e|0,0,I,e,r,a,B,n,i,o),g&&(r=(A=e+16|0)>>>0<16?r+1|0:r,t[g>>2]=A,t[g+4>>2]=r),0;Zg(),C()}(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0,n|=0,o|=0,Q|=0)},F:function(A,g,I,e,r,a,B,t,n,i,o){return 0|MA(A|=0,I|=0,e|=0,r|=0,a|=0,B|=0,t|=0,n|=0,i|=0,o|=0)},G:function(A,g,I,e,r,a,B,n,i,o,Q){return 0|function(A,g,I,e,r,a,B,n,i,o){var Q=0;return Q=-1,!r&e>>>0>=16|r&&(Q=MA(A,I,e-16|0,r-(e>>>0<16)|0,(I+e|0)-16|0,a,B,n,i,o)),g&&(t[g>>2]=Q?0:e-16|0,t[g+4>>2]=Q?0:r-(e>>>0<16)|0),Q}(A|=0,g|=0,e|=0,r|=0,a|=0,B|=0,n|=0,i|=0,o|=0,Q|=0)},H:UI,I:MI,J:KI,K:SI,L:NI,M:GI,N:UI,O:UI,P:function(A,g,I,e,r){return 0|Gg(A|=0,g|=0,I|=0,e|=0,r|=0)},Q:function(A,g,I,e,r){return 0|function(A,g,I,e,r){var a;return f=a=f-32|0,Gg(a,g,I,e,r),g=vI(A,a),I=zA(a,A,32),f=a+32|0,I|((0|A)==(0|a)?-1:g)}(A|=0,g|=0,I|=0,e|=0,r|=0)},R:GI,S:UI,T:UI,U:UI,V:UI,W:MI,X:SI,Y:NI,Z:function(A,g,I){return 0|function(A,g,I){var e,r=0;return f=e=f+-64|0,mg(e,I,32,0),I=t[e+28>>2],r=t[e+24>>2],a[g+24|0]=r,a[g+25|0]=r>>>8,a[g+26|0]=r>>>16,a[g+27|0]=r>>>24,a[g+28|0]=I,a[g+29|0]=I>>>8,a[g+30|0]=I>>>16,a[g+31|0]=I>>>24,I=t[e+20>>2],r=t[e+16>>2],a[g+16|0]=r,a[g+17|0]=r>>>8,a[g+18|0]=r>>>16,a[g+19|0]=r>>>24,a[g+20|0]=I,a[g+21|0]=I>>>8,a[g+22|0]=I>>>16,a[g+23|0]=I>>>24,I=t[e+12>>2],r=t[e+8>>2],a[g+8|0]=r,a[g+9|0]=r>>>8,a[g+10|0]=r>>>16,a[g+11|0]=r>>>24,a[g+12|0]=I,a[g+13|0]=I>>>8,a[g+14|0]=I>>>16,a[g+15|0]=I>>>24,I=t[e+4>>2],r=t[e>>2],a[0|g]=r,a[g+1|0]=r>>>8,a[g+2|0]=r>>>16,a[g+3|0]=r>>>24,a[g+4|0]=I,a[g+5|0]=I>>>8,a[g+6|0]=I>>>16,a[g+7|0]=I>>>24,Eg(e,64),A=sI(A,g),f=e- -64|0,A}(A|=0,g|=0,I|=0)},_:gI,$:jg,aa:function(A,g,I,e,r,a,B){return 0|rI(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0)},ba:function(A,g,I,e,r,a,B,t){return 0|hg(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0,t|=0)},ca:function(A,g,I,e,r,a){return 0|function(A,g,I,e,r,a){return!e&I>>>0>=4294967280|e&&(Zg(),C()),rI(A+16|0,A,g,I,e,r,a)}(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0)},da:function(A,g,I,e,r,a,B){return 0|dg(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0)},ea:function(A,g,I,e,r,a,B){return 0|aI(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0)},fa:function(A,g,I,e,r,a,B,t){return 0|fg(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0,t|=0)},ga:function(A,g,I,e,r,a){return 0|function(A,g,I,e,r,a){return!e&I>>>0>=16|e?aI(A,g+16|0,g,I-16|0,e-(I>>>0<16)|0,r,a):-1}(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0)},ha:function(A,g,I,e,r,a,B){return 0|ug(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0)},ia:function(A,g,I,e,r){return 0|function(A,g,I,e,r){var B,n=0;return f=B=f-96|0,n=-1,gI(B+32|0,B)||(wg(B- -64|0,B+32|0,r),n=dg(A+32|0,g,I,e,B- -64|0,r,B),g=t[B+60>>2],I=t[B+56>>2],a[A+24|0]=I,a[A+25|0]=I>>>8,a[A+26|0]=I>>>16,a[A+27|0]=I>>>24,a[A+28|0]=g,a[A+29|0]=g>>>8,a[A+30|0]=g>>>16,a[A+31|0]=g>>>24,g=t[B+52>>2],I=t[B+48>>2],a[A+16|0]=I,a[A+17|0]=I>>>8,a[A+18|0]=I>>>16,a[A+19|0]=I>>>24,a[A+20|0]=g,a[A+21|0]=g>>>8,a[A+22|0]=g>>>16,a[A+23|0]=g>>>24,g=t[B+44>>2],I=t[B+40>>2],a[A+8|0]=I,a[A+9|0]=I>>>8,a[A+10|0]=I>>>16,a[A+11|0]=I>>>24,a[A+12|0]=g,a[A+13|0]=g>>>8,a[A+14|0]=g>>>16,a[A+15|0]=g>>>24,g=t[B+36>>2],I=t[B+32>>2],a[0|A]=I,a[A+1|0]=I>>>8,a[A+2|0]=I>>>16,a[A+3|0]=I>>>24,a[A+4|0]=g,a[A+5|0]=g>>>8,a[A+6|0]=g>>>16,a[A+7|0]=g>>>24,Eg(B,32),Eg(B+32|0,32),Eg(B- -64|0,24)),f=B+96|0,n}(A|=0,g|=0,I|=0,e|=0,r|=0)},ja:function(A,g,I,e,r,a){return 0|function(A,g,I,e,r,a){var B,t=0;return f=B=f-32|0,t=-1,!e&I>>>0>=48|e&&(wg(B,g,r),t=ug(A,g+32|0,I-32|0,e-(I>>>0<32)|0,B,g,a)),f=B+32|0,t}(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0)},ka:function(){return 48},la:SI,ma:xI,na:UI,oa:SI,pa:xI,qa:UI,ra:function(){return 384},sa:function(A,g,I,e,r,a,B){return 0|BI(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0)},ta:Tg,ua:function(A,g,I,e){return 0|_I(A|=0,g|=0,I|=0,e|=0)},va:Wg,wa:GI,xa:xI,ya:function(A,g,I,e){return 0|mg(A|=0,g|=0,I|=0,e|=0)},za:SI,Aa:xI,Ba:JI,Ca:UI,Da:function(A,g,I,e,r,i){return 0|function(A,g,I,e,r,i){var o,Q;return f=o=f-32|0,Q=n[0|r]|n[r+1|0]<<8|n[r+2|0]<<16|n[r+3|0]<<24,r=n[r+4|0]|n[r+5|0]<<8|n[r+6|0]<<16|n[r+7|0]<<24,t[o+24>>2]=0,t[o+28>>2]=0,t[o+16>>2]=Q,t[o+20>>2]=r,cg(o,I,e),t[o+8>>2]=0,t[o+12>>2]=0,g-16>>>0>=49?(t[8960]=28,A=-1):(I=o+16|0,A=g-1>>>0>63?-1:function(A,g,I,e,r){var i,o=0;if(i=o=f,f=o=o-384&-64,!(!g|!A|(I-1&255)>>>0>=64))return function(A,g,I,e,r){var i;if(f=i=f-192|0,!(!I|(g-1&255)>>>0>=64))return B[i+130>>1]=257,a[i+129|0]=32,a[i+128|0]=g,Vg(i+128|4),cg(i+128|8,0,0),t[i+152>>2]=0,t[i+156>>2]=0,t[i+144>>2]=0,t[i+148>>2]=0,e?function(A,g){var I,e=0;e=n[g+4|0]|n[g+5|0]<<8|n[g+6|0]<<16|n[g+7|0]<<24,I=n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24,a[A+32|0]=I,a[A+33|0]=I>>>8,a[A+34|0]=I>>>16,a[A+35|0]=I>>>24,a[A+36|0]=e,a[A+37|0]=e>>>8,a[A+38|0]=e>>>16,a[A+39|0]=e>>>24,e=n[g+12|0]|n[g+13|0]<<8|n[g+14|0]<<16|n[g+15|0]<<24,g=n[g+8|0]|n[g+9|0]<<8|n[g+10|0]<<16|n[g+11|0]<<24,a[A+40|0]=g,a[A+41|0]=g>>>8,a[A+42|0]=g>>>16,a[A+43|0]=g>>>24,a[A+44|0]=e,a[A+45|0]=e>>>8,a[A+46|0]=e>>>16,a[A+47|0]=e>>>24}(i+128|0,e):(t[i+168>>2]=0,t[i+172>>2]=0,t[i+160>>2]=0,t[i+164>>2]=0),r?function(A,g){var I,e=0;e=n[g+4|0]|n[g+5|0]<<8|n[g+6|0]<<16|n[g+7|0]<<24,I=n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24,a[A+48|0]=I,a[A+49|0]=I>>>8,a[A+50|0]=I>>>16,a[A+51|0]=I>>>24,a[A+52|0]=e,a[A+53|0]=e>>>8,a[A+54|0]=e>>>16,a[A+55|0]=e>>>24,e=n[g+12|0]|n[g+13|0]<<8|n[g+14|0]<<16|n[g+15|0]<<24,g=n[g+8|0]|n[g+9|0]<<8|n[g+10|0]<<16|n[g+11|0]<<24,a[A+56|0]=g,a[A+57|0]=g>>>8,a[A+58|0]=g>>>16,a[A+59|0]=g>>>24,a[A+60|0]=e,a[A+61|0]=e>>>8,a[A+62|0]=e>>>16,a[A+63|0]=e>>>24}(i+128|0,r):(t[i+184>>2]=0,t[i+188>>2]=0,t[i+176>>2]=0,t[i+180>>2]=0),fA(A,i+128|0),BA(i+32|0,0,96),rA(g=A,A=q(i,I,32),128,0),Eg(A,128),void(f=A+192|0);Zg(),C()}(o,I,g,e,r),rA(o,0,0,0),M(o,A,I),f=i,0;Zg(),C()}(A,i,255&g,o,I)),f=o+32|0,A}(A|=0,g|=0,I|=0,e|=0,r|=0,i|=0)},Ea:GI,Fa:function(A,g,I){return A|=0,BI(g|=0,32,I|=0,32,0,0,0),0|iI(A,g)},Ga:function(A,g){return A|=0,sg(g|=0,32),0|iI(A,g)},Ha:function(A,g,I,e,r){g|=0,I|=0,r|=0;var B,t,i=0;if(t=i=f,f=i=i-512&-64,B=(A|=0)||g){if(A=-1,!Og(i+96|0,e|=0,r)){for(g=g||B,A=0,Tg(i+128|0,0,0,64),_I(i+128|0,i+96|0,32,0),Eg(i+96|0,32),_I(i+128|0,I,32,0),_I(i+128|0,r,32,0),Wg(i+128|0,i+32|0,64),Eg(i+128|0,384);I=(i+32|0)+A|0,a[A+B|0]=n[0|I],a[A+g|0]=n[I+32|0],32!=(0|(A=A+1|0)););Eg(i+32|0,64),A=0}return f=t,0|A}Zg(),C()},Ia:function(A,g,I,e,r){g|=0,I|=0,r|=0;var B,t,i=0;if(t=i=f,f=i=i-512&-64,B=(A|=0)||g){if(A=-1,!Og(i+96|0,e|=0,r)){for(g=g||B,A=0,Tg(i+128|0,0,0,64),_I(i+128|0,i+96|0,32,0),Eg(i+96|0,32),_I(i+128|0,r,32,0),_I(i+128|0,I,32,0),Wg(i+128|0,i+32|0,64),Eg(i+128|0,384);I=(i+32|0)+A|0,a[A+g|0]=n[0|I],a[A+B|0]=n[I+32|0],32!=(0|(A=A+1|0)););Eg(i+32|0,64),A=0}return f=t,0|A}Zg(),C()},Ja:UI,Ka:UI,La:UI,Ma:UI,Na:PI,Oa:RI,Pa:RI,Qa:SI,Ra:LI,Sa:KI,Ta:LI,Ua:SI,Va:function(){return 128},Wa:function(){return 35681},Xa:PI,Ya:LI,Za:function(){return 8192},_a:function(){return-2147483648},$a:RI,ab:function(){return 67108864},bb:TI,cb:function(){return 268435456},db:function(){return 4},eb:function(){return 1073741824},fb:function(A,g,I,e,r,a,B,n,i,o,Q){return 0|function(A,g,I,e,r,a,B,n,i,o,Q){switch(Q-1|0){case 0:return function(A,g,I,e,r,a,B,n,i,o){var Q,C;C=g,Q=BA(A,0,g),A=22;A:if(!I){if(!(!I&g>>>0<16)){if(a|i|o>>>0>2147483648)break A;if(!(!i&n>>>0<3|o>>>0<8192)){if(A=28,(0|e)==(0|Q))break A;return lA(n,o>>>10|0,1,e,r,B,16,Q,C,0,0,1)?-1:0}}A=28}return t[8960]=A,-1}(A,g,I,e,r,a,B,n,i,o);case 1:return function(A,g,I,e,r,a,B,n,i,o){var Q,C;C=g,Q=BA(A,0,g),A=22;A:if(!I){if(!(!I&g>>>0<16)){if(a|i|o>>>0>2147483648)break A;if(!(!(n|i)|o>>>0<8192)){if(A=28,(0|e)==(0|Q))break A;return lA(n,o>>>10|0,1,e,r,B,16,Q,C,0,0,2)?-1:0}}A=28}return t[8960]=A,-1}(A,g,I,e,r,a,B,n,i,o)}return t[8960]=28,-1}(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0,n|=0,i|=0,o|=0,Q|=0)},gb:function(A,g,I,e,r,a,B){return 0|JA(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0)},hb:function(A,g,I,e,r,a,B,n){return 0|function(A,g,I,e,r,a,B,n){switch(n-1|0){case 1:return JA(A,g,I,e,r,a,B);default:Zg(),C();case 0:}return function(A,g,I,e,r,a,B){var n;return f=n=f-16|0,A=BA(A,0,128),B>>>0<2147483649&&!(e|a)?B>>>0>8191&&!a&r>>>0>=3|0!=(0|a)?(sg(n,16),A=lA(r,B>>>10|0,1,g,I,n,16,0,32,A,128,1)?-1:0):(t[8960]=28,A=-1):(t[8960]=22,A=-1),f=n+16|0,A}(A,g,I,e,r,a,B)}(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0,B|=0,n|=0)},ib:function(A,g,I,e){return 0|function(A,g,I,e){return qA(A,35681,10)?qA(A,35692,9)?(t[8960]=28,-1):function(A,g,I,e){A:{if(1==(0|e)|e>>>0>1)t[8960]=22;else{if(!(A=EA(A,g,I,1)))break A;-35==(0|A)&&(t[8960]=28)}A=-1}return A}(A,g,I,e):function(A,g,I,e){A:{if(1==(0|e)|e>>>0>1)t[8960]=22;else{if(!(A=EA(A,g,I,2)))break A;-35==(0|A)&&(t[8960]=28)}A=-1}return A}(A,g,I,e)}(A|=0,g|=0,I|=0,e|=0)},jb:function(A,g,I,e){return 0|function(A,g,I,e){return qA(A,35681,10)?qA(A,35692,9)?(t[8960]=28,-1):pA(A,g,I,e,1):pA(A,g,I,e,2)}(A|=0,g|=0,I|=0,e|=0)},kb:iI,lb:Og,mb:UI,nb:UI,ob:UI,pb:MI,qb:SI,rb:NI,sb:GI,tb:rI,ub:function(A,g,I,e,r,a){return 0|function(A,g,I,e,r,a){return!e&I>>>0>=4294967280|e&&(Zg(),C()),nA(A+16|0,A,g,I,e,r,a),0}(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0)},vb:aI,wb:function(A,g,I,e,r,a){return 0|function(A,g,I,e,r,a){return!e&I>>>0>=16|e?oA(A,g+16|0,g,I-16|0,e-(I>>>0<16)|0,r,a):-1}(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0)},xb:GI,yb:function(A,g,I){return A|=0,I|=0,sg(g|=0,24),J(A,g,I),qg(A),I=n[g+16|0]|n[g+17|0]<<8|n[g+18|0]<<16|n[g+19|0]<<24,g=n[g+20|0]|n[g+21|0]<<8|n[g+22|0]<<16|n[g+23|0]<<24,a[A+44|0]=0,a[A+45|0]=0,a[A+46|0]=0,a[A+47|0]=0,a[A+48|0]=0,a[A+49|0]=0,a[A+50|0]=0,a[A+51|0]=0,a[A+36|0]=I,a[A+37|0]=I>>>8,a[A+38|0]=I>>>16,a[A+39|0]=I>>>24,a[A+40|0]=g,a[A+41|0]=g>>>8,a[A+42|0]=g>>>16,a[A+43|0]=g>>>24,0},zb:function(A,g,I){return J(A|=0,g|=0,I|=0),qg(A),I=n[g+16|0]|n[g+17|0]<<8|n[g+18|0]<<16|n[g+19|0]<<24,g=n[g+20|0]|n[g+21|0]<<8|n[g+22|0]<<16|n[g+23|0]<<24,a[A+44|0]=0,a[A+45|0]=0,a[A+46|0]=0,a[A+47|0]=0,a[A+48|0]=0,a[A+49|0]=0,a[A+50|0]=0,a[A+51|0]=0,a[A+36|0]=I,a[A+37|0]=I>>>8,a[A+38|0]=I>>>16,a[A+39|0]=I>>>24,a[A+40|0]=g,a[A+41|0]=g>>>8,a[A+42|0]=g>>>16,a[A+43|0]=g>>>24,0},Ab:K,Bb:function(A,g,I,e,r,B,i,o,Q,c){return 0|function(A,g,I,e,r,B,i,o,Q,c){var E,s=0;if(f=E=f-336|0,I&&(t[I>>2]=0,t[I+4>>2]=0),!B&r>>>0<4294967279)return bI(E+16|0,64,s=A+32|0,A),wI(E+80|0,E+16|0),Eg(E+16|0,64),yI(E+80|0,i,o,Q),yI(E+80|0,35712,0-o&15,0),BA(E+16|0,0,64),a[E+16|0]=c,eg(E+16|0,E+16|0,64,0,s,1,A),yI(E+80|0,E+16|0,64,0),a[0|g]=n[E+16|0],eg(i=g+1|0,e,r,B,s,2,A),yI(E+80|0,i,r,B),yI(E+80|0,35712,15&r,0),cg(E+8|0,o,Q),yI(E+80|0,E+8|0,8,0),cg(E+8|0,r- -64|0,B-((r>>>0<4294967232)-1|0)|0),yI(E+80|0,E+8|0,8,0),DI(E+80|0,g=r+i|0),Eg(E+80|0,256),lg(A+36|0,g),_g(s),(2&c||ig(s,4))&&K(A),I&&(B=(A=r+17|0)>>>0<17?B+1|0:B,t[I>>2]=A,t[I+4>>2]=B),f=E+336|0,0;Zg(),C()}(A|=0,g|=0,I|=0,e|=0,r|=0,B|=0,i|=0,o|=0,Q|=0,c|=0)},Cb:function(A,g,I,e,r,B,i,o,Q,c){return 0|function(A,g,I,e,r,B,i,o,Q,c){var E,s=0,y=0,_=0,h=0,p=0;f=E=f-352|0,I&&(t[I>>2]=0,t[I+4>>2]=0),e&&(a[0|e]=255),h=-1;A:{if(!(!i&B>>>0<17)){if(!(s=i-(B>>>0<17)|0)&(y=B-17|0)>>>0>=4294967279|s)break A;bI(E+32|0,64,_=A+32|0,A),wI(E+96|0,E+32|0),Eg(E+32|0,64),yI(E+96|0,o,Q,c),yI(E+96|0,35712,0-Q&15,0),BA(E+32|0,0,64),a[E+32|0]=n[0|r],eg(E+32|0,E+32|0,64,0,_,1,A),p=n[E+32|0],a[E+32|0]=n[0|r],yI(E+96|0,E+32|0,64,0),yI(E+96|0,o=r+1|0,y,s),yI(E+96|0,35712,B-1&15,0),cg(E+24|0,Q,c),yI(E+96|0,E+24|0,8,0),cg(E+24|0,r=B+47|0,i=r>>>0<47?i+1|0:i),yI(E+96|0,E+24|0,8,0),DI(E+96|0,E),Eg(E+96|0,256),zA(E,o+y|0,16)?Eg(E,16):(eg(g,o,y,s,_,2,A),lg(A+36|0,E),_g(_),(2&p||ig(_,4))&&K(A),I&&(t[I>>2]=y,t[I+4>>2]=s),h=0,e&&(a[0|e]=p))}return f=E+352|0,h}Zg(),C()}(A|=0,g|=0,I|=0,e|=0,r|=0,B|=0,i|=0,o|=0,Q|=0,c|=0)},Db:function(){return 52},Eb:function(){return 17},Fb:MI,Gb:UI,Hb:function(){return-18},Ib:KI,Jb:PI,Kb:RI,Lb:TI,Mb:JI,Nb:SI,Ob:function(A,g,I,e,r){return 0|function(A,g,I,e){var r=0,a=0,B=0,t=0,i=0,o=0,Q=0,C=0,c=0,E=0,s=0,y=0,_=0,h=0,f=0,p=0;if(r=1886610805^(B=n[0|e]|n[e+1|0]<<8|n[e+2|0]<<16|n[e+3|0]<<24),t=1936682341^(a=n[e+4|0]|n[e+5|0]<<8|n[e+6|0]<<16|n[e+7|0]<<24),i=1852142177^B,Q=1819895653^a,B=1852075885^(c=n[e+8|0]|n[e+9|0]<<8|n[e+10|0]<<16|n[e+11|0]<<24),a=1685025377^(e=n[e+12|0]|n[e+13|0]<<8|n[e+14|0]<<16|n[e+15|0]<<24),c^=2037671283,o=1952801890^e,(0|(e=(g+I|0)-(y=7&I)|0))!=(0|g)){for(;C=n[0|g]|n[g+1|0]<<8|n[g+2|0]<<16|n[g+3|0]<<24,E=n[g+4|0]|n[g+5|0]<<8|n[g+6|0]<<16|n[g+7|0]<<24,s=pI(B,a,13),_=l,h=1+(a=a+t|0)|0,t=a,f=pI(a=r+B|0,t=a>>>0<r>>>0?h:t,32),h=l,o=r=o^E,B=pI(c^=C,r,16),r=i+c|0,i=Q+o|0,c=Q=(i=r>>>0<c>>>0?i+1|0:i)^l,Q=pI(B^=r,Q,21),o=l,s=pI(a^=s,t^=_,17),p=l,t=i+t|0,i=r,t=pI(r=r+a|0,a=i>>>0>r>>>0?t+1|0:t,32),i=l,_=pI(s^=r,a^=p,13),p=l,h=1+(r=c+h|0)|0,c=r,B=(r=B+f|0)>>>0<B>>>0?h:c,s=c=r+s|0,a=B+a|0,a=pI(c,f=r>>>0>c>>>0?a+1|0:a,32),c=l,Q=pI(r^=Q,B^=o,16),B=i+B|0,B=(r=r+t|0)>>>0<t>>>0?B+1|0:B,t=a+(i=r^Q)|0,a=(o=c)+(c=B^l)|0,c=pI(i,c,21)^t,o=(h=t>>>0<i>>>0?a+1|0:a)^l,i=a=f^p,a=pI(Q=s^_,a,17),B=B+i|0,Q=(i=r+Q|0)>>>0<r>>>0?B+1|0:B,B=a^i,a=Q^l,r=t^C,t=E^h,i=pI(i,Q,32),Q=l,(0|e)!=(0|(g=g+8|0)););g=e}switch(e=I<<24,I=0,y-1|0){case 6:e|=n[g+6|0]<<16;case 5:e|=n[g+5|0]<<8;case 4:e|=n[g+4|0];case 3:C=(I=n[g+3|0])>>>8|0,I<<=24,e|=C;case 2:I|=(C=n[g+2|0])<<16,e|=E=C>>>16|0;case 1:I|=(C=n[g+1|0])<<8,e|=E=C>>>24|0;case 0:I=n[0|g]|I}return C=pI(B,a,13),E=l,g=a+t|0,y=pI(B=r+B|0,a=B>>>0<r>>>0?g+1|0:g,32),s=l,t=r=e^o,r=pI(g=I^c,r,16),t=t+Q|0,Q=i=(t=(o=g)>>>0>(g=g+i|0)>>>0?t+1|0:t)^l,i=pI(r^=g,i,21),c=l,C=pI(B^=C,a^=E,17),E=l,a=t+a|0,o=g,a=pI(g=g+B|0,B=o>>>0>g>>>0?a+1|0:a,32),t=l,C=pI(o=g^C,B^=E,13),E=l,_=1+(g=Q+s|0)|0,Q=g,B=(r=(g=r+y|0)>>>0<r>>>0?_:Q)+B|0,B=pI(o=Q=g+o|0,Q=g>>>0>Q>>>0?B+1|0:B,32),y=l,i=pI(g^=i,r^=c,16),r=t+r|0,r=(g=g+a|0)>>>0<a>>>0?r+1|0:r,a=g^i,i=t=r^l,t=pI(a,t,21),c=l,E=Q^=E,Q=pI(o^=C,Q,17),C=l,r=r+E|0,_=g,o=pI(g=g+o|0,r=_>>>0>g>>>0?r+1|0:r,32),E=l,C=pI(g^=Q,Q=r^C,13),s=l,_=g,i=1+(g=i+y|0)|0,r=g,e=Q+(e^(r=(g=B+a|0)>>>0<B>>>0?i:r))|0,I=pI(a=B=_+(I^=g)|0,B=I>>>0>B>>>0?e+1|0:e,32),i=l,t=pI(g^=t,e=r^c,16),e=e+E|0,e=(r=g)>>>0>(g=g+(255^o)|0)>>>0?e+1|0:e,r=g^t,Q=t=e^l,t=pI(r,t,21),c=l,o=B^=s,B=pI(a^=C,B,17),C=l,e=e+o|0,o=g,a=pI(g=g+a|0,e=o>>>0>g>>>0?e+1|0:e,32),o=l,E=pI(B^=g,C^=e,13),y=l,Q=1+(g=i+Q|0)|0,e=g,r=(e=(g=I+r|0)>>>0<I>>>0?Q:e)+C|0,i=r=g>>>0>(I=g+B|0)>>>0?r+1|0:r,r=pI(I,r,32),Q=l,t=pI(g^=t,e^=c,16),e=e+o|0,o=g,B=(g=g+a|0)^t,t=a=(e=o>>>0>g>>>0?e+1|0:e)^l,a=pI(B,a,21),c=l,o=i^=y,i=pI(I^=E,i,17),C=l,e=e+o|0,o=g,o=pI(g=g+I|0,I=o>>>0>g>>>0?e+1|0:e,32),E=l,y=pI(i^=g,C^=I,13),s=l,e=1+(g=t+Q|0)|0,I=g,r=(e=(g=r+B|0)>>>0<r>>>0?e:I)+C|0,t=r=g>>>0>(I=g+i|0)>>>0?r+1|0:r,r=pI(I,r,32),i=l,a=pI(g^=a,e^=c,16),e=e+E|0,Q=g,B=(g=g+o|0)^a,Q=a=(e=Q>>>0>g>>>0?e+1|0:e)^l,a=pI(B,a,21),c=l,o=t^=s,t=pI(I^=y,t,17),C=l,e=e+o|0,o=g,e=pI(g=g+I|0,I=o>>>0>g>>>0?e+1|0:e,32),o=l,C=I^=C,E=pI(t^=g,I,13),y=l,Q=1+(g=i+Q|0)|0,I=g,i=B=c^(r=(g=r+B|0)>>>0<r>>>0?Q:I),B=pI(I=g^a,B,16),a=i+o|0,o=I,B=pI((I=I+e|0)^B,(e=o>>>0>I>>>0?a+1|0:a)^l,21),a=l,r=r+C|0,Q=1+(e=e+(r=((o=g)>>>0>(g=g+t|0)>>>0?r+1|0:r)^y)|0)|0,o=e,I=(g=I+(e=g^E)|0)>>>0<I>>>0?Q:o,e=pI(e,r,17)^g^B,r=l^I^a,cg(A,pI(g,I,32)^e,l^r),0}(A|=0,g|=0,I|=0,r|=0)},Pb:function(A){sg(A|=0,16)},Qb:function(){return 208},Rb:xI,Sb:UI,Tb:UI,Ub:xI,Vb:function(){return-65},Wb:function(A,g,I){return 0|U(A|=0,g|=0,I|=0)},Xb:function(A,g){return 0|function(A,g){var I;return f=I=f-32|0,sg(I,32),U(A,g,I),Eg(I,32),f=I+32|0,0}(A|=0,g|=0)},Yb:function(A,g,I,e,r,a){return 0|function(A,g,I,e,r,a){var B,n;return f=B=f-16|0,n=I,I=e,eI(A,B+8|0,IA(A- -64|0,n,e),e,r,a),64!=t[B+8>>2]|t[B+12>>2]?(g&&(t[g>>2]=0,t[g+4>>2]=0),BA(A,0,I- -64|0),A=-1):(A=0,g&&(t[g>>2]=e- -64,t[g+4>>2]=r-((e>>>0<4294967232)-1|0))),f=B+16|0,A}(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0)},Zb:function(A,g,I,e,r,a){return 0|function(A,g,I,e,r,a){var B=0;A:{g:{if(!(!r&e>>>0<64||(r=r-1|0,!(r=(e=e+-64|0)>>>0<4294967232?r+1|0:r)&e>>>0>4294967231|r))){if(!nI(I,B=I- -64|0,e,r,a))break g;A&&BA(A,0,e)}if(I=-1,!g)break A;return t[g>>2]=0,t[g+4>>2]=0,-1}g&&(t[g>>2]=e,t[g+4>>2]=r),I=0,A&&IA(A,B,e)}return I}(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0)},_b:function(A,g,I,e,r,a){return 0|eI(A|=0,g|=0,I|=0,e|=0,r|=0,a|=0)},$b:function(A,g,I,e,r){return 0|nI(A|=0,g|=0,I|=0,e|=0,r|=0)},ac:function(A){return Mg(A|=0),0},bc:function(A,g,I,e){return 0|X(A|=0,g|=0,I|=0,e|=0)},cc:function(A,g,I,e){return 0|function(A,g,I,e){var r;return f=r=f+-64|0,Hg(A,r),A=T(g,I,r,64,0,e,1),f=r- -64|0,A}(A|=0,g|=0,I|=0,e|=0)},dc:function(A,g,I){return 0|function(A,g,I){var e;return f=e=f+-64|0,Hg(A,e),A=wA(g,e,64,0,I,1),f=e- -64|0,A}(A|=0,g|=0,I|=0)},ec:function(A,g){A|=0;var I,e=0;return f=I=f-256|0,e=-1,hA(g|=0)||sA(I+96|0,g)||function(A){var g;return f=g=f-160|0,function(A,g){var I,e=0;for(f=I=f-1760|0,Dg(I+480|0,g),Rg(I+320|0,g),pg(I,I+320|0),XA(I+320|0,I,I+480|0),pg(I+160|0,I+320|0),Dg(g=I+640|0,I+160|0),XA(I+320|0,I,g),pg(I+160|0,I+320|0),Dg(g=I+800|0,I+160|0),XA(I+320|0,I,g),pg(I+160|0,I+320|0),Dg(g=I+960|0,I+160|0),XA(I+320|0,I,g),pg(I+160|0,I+320|0),Dg(g=I+1120|0,I+160|0),XA(I+320|0,I,g),pg(I+160|0,I+320|0),Dg(g=I+1280|0,I+160|0),XA(I+320|0,I,g),pg(I+160|0,I+320|0),Dg(g=I+1440|0,I+160|0),XA(I+320|0,I,g),pg(I+160|0,I+320|0),Dg(I+1600|0,I+160|0),zg(A),g=252;Rg(I+320|0,A),e=g,(0|(g=a[g+34208|0]))>=1?(pg(I+160|0,I+320|0),XA(I+320|0,I+160|0,(I+480|0)+o((254&g)>>>1|0,160)|0)):(0|g)>-1||(pg(I+160|0,I+320|0),VA(I+320|0,I+160|0,(I+480|0)+o((0-g&254)>>>1|0,160)|0)),pg(A,I+320|0),g=e-1|0,e;);f=I+1760|0}(g,A),A=Pg(g),f=g+160|0,A}(I+96|0)&&(hI(I),yA(I,I,g=I+136|0),hI(I+48|0),_A(I+48|0,I+48|0,g),j(I,I),b(I+48|0,I+48|0,I),eA(A,I+48|0),e=0),f=I+256|0,0|e},fc:function(A,g){A|=0;var I,e=0;return f=I=f+-64|0,mg(I,g|=0,32,0),a[0|I]=248&n[0|I],a[I+31|0]=63&n[I+31|0]|64,g=t[I+20>>2],e=t[I+16>>2],a[A+16|0]=e,a[A+17|0]=e>>>8,a[A+18|0]=e>>>16,a[A+19|0]=e>>>24,a[A+20|0]=g,a[A+21|0]=g>>>8,a[A+22|0]=g>>>16,a[A+23|0]=g>>>24,g=t[I+12>>2],e=t[I+8>>2],a[A+8|0]=e,a[A+9|0]=e>>>8,a[A+10|0]=e>>>16,a[A+11|0]=e>>>24,a[A+12|0]=g,a[A+13|0]=g>>>8,a[A+14|0]=g>>>16,a[A+15|0]=g>>>24,g=t[I+4>>2],e=t[I>>2],a[0|A]=e,a[A+1|0]=e>>>8,a[A+2|0]=e>>>16,a[A+3|0]=e>>>24,a[A+4|0]=g,a[A+5|0]=g>>>8,a[A+6|0]=g>>>16,a[A+7|0]=g>>>24,g=t[I+28>>2],e=t[I+24>>2],a[A+24|0]=e,a[A+25|0]=e>>>8,a[A+26|0]=e>>>16,a[A+27|0]=e>>>24,a[A+28|0]=g,a[A+29|0]=g>>>8,a[A+30|0]=g>>>16,a[A+31|0]=g>>>24,Eg(I,64),f=I- -64|0,0},gc:Fg,hc:xg,ic:function(A){var g=0,I=0;if((A|=0)>>>0>=2){for(I=(0-A>>>0)%(A>>>0)|0;(g=Fg())>>>0<I>>>0;);A=(g>>>0)%(A>>>0)|0}else A=0;return 0|A},jc:sg,kc:function(A,g,I){bI(A|=0,g|=0,1784,I|=0)},lc:UI,mc:function(){var A=0,g=0;return(A=t[9097])&&(A=t[A+20>>2])&&(g=0|XI[0|A]()),0|g},nc:function(A,g,I){!function(A,g,I){1==(0|I)|I>>>0>1&&(c(1796,1816,197,1842),C()),sg(A,g)}(A|=0,g|=0,I|=0)},oc:function(A,g,I,e){A|=0,I|=0;var r=0,B=0,t=0;if(!((e|=0)>>>0>2147483646|e<<1>>>0>=(g|=0)>>>0)){if(g=0,e){for(;r=g<<1,B=(t=n[g+I|0])>>>4|0,a[r+A|0]=87+(B+(B+65526>>>8&217)|0),B=(1|r)+A|0,r=15&t,a[0|B]=22272+((r<<8)+(r+65526&55552)|0)>>>8,(0|e)!=(0|(g=g+1|0)););g=e<<1}else g=0;return a[g+A|0]=0,0|A}Zg(),C()},pc:function(A,g,I,e,r,B,i){A|=0,g|=0,I|=0,r|=0,B|=0,i|=0;var o=0,Q=0,C=0,c=0,E=0,s=0,y=0,_=0,h=0,f=0,p=0;A:if(e|=0){g:{I:{e:for(;;){for(Q=o;;){r:{if(!(255&((h=(65526+(y=(223&(s=n[I+Q|0]))-55&255)^y+65520)>>>8|0)|(C=65526+(f=48^s)>>>8|0)))){if(C=1,!r|255&E)break I;if(II(r,s))break r;o=Q;break A}if(g>>>0<=c>>>0){t[8960]=68,C=0;break I}if(o=y&h|C&f,255&E?(a[A+c|0]=o|p,c=c+1|0):p=o<<4,E^=-1,C=1,(o=Q+1|0)>>>0<e>>>0)continue e;break g}if(E=0,!((Q=Q+1|0)>>>0<e>>>0))break}break}o=(A=o+1|0)>>>0<e>>>0?e:A;break A}o=Q}255&E?(t[8960]=28,_=-1,o=o-1|0,c=0):C||(c=0,_=-1)}return i?t[i>>2]=I+o:(0|e)!=(0|o)&&(t[8960]=28,_=-1),B&&(t[B>>2]=c),0|_},qc:function(A,g){var I;return A|=0,lI(g|=0),A=o(I=(A>>>0)/3|0,-3)+A|0,o(4-(3-A&0-(g>>>1&1))|0,1&(A|A>>>1))+(I<<2|1)|0},rc:Z,sc:V,tc:function(){var A=0;return t[9104]?A=1:(t[9086]=0,function(){var A;f=A=f-16|0,Xg(A),t[A>>2]&&(Xg(A),BA(36348,0,40)),f=A+16|0}(),t[9085]=1,xg(),function(){var A=0;(0|(A=0|y(30)))>=1?t[8944]=A:A=t[8944],A>>>0<=15&&(Zg(),C()),sg(36400,16)}(),t[9104]=1,A=0),0|A},uc:function(A,g,I,e,r){A|=0,g|=0,I|=0,r|=0;var B,i=0,o=0,Q=0;f=B=f-16|0;A:{if(e|=0){if(Q=-1,(i=(i=e-1|0)-(o=i&e?(I>>>0)%(e>>>0)|0:I&i)|0)>>>0>=(-1^I)>>>0)break A;if(!((I=I+i|0)>>>0>=r>>>0))for(A&&(t[A>>2]=I+1),A=g+I|0,Q=0,a[B+15|0]=0,g=e>>>0>1?e:1,e=0;r=I=A-e|0,o=n[0|I]&n[B+15|0],I=(e^i)-1>>>24|0,a[0|r]=o|128&I,a[B+15|0]=I|n[B+15|0],(0|g)!=(0|(e=e+1|0)););}else Q=-1;return f=B+16|0,0|Q}Zg(),C()},vc:function(A,g,I,e){A|=0,g|=0,I|=0,e|=0;var r,a=0,B=0,i=0,o=0,Q=0;if(t[12+(r=f-16|0)>>2]=0,e-1>>>0<I>>>0){for(Q=(a=I-1|0)+g|0,I=0,g=0;o=((128^(B=n[Q-I|0]))-1&t[r+12>>2]-1&i-1)>>>8&1,t[r+12>>2]=t[r+12>>2]|0-o&I,g|=o,i|=B,(0|e)!=(0|(I=I+1|0)););t[A>>2]=a-t[r+12>>2],A=g-1|0}else A=-1;return 0|A},wc:function(){return 35762},xc:function(){return 10},yc:TI,zc:PI,Ac:function(){return 35840},Bc:d,Cc:m}}(A)}(YA)},instantiate:function(A,g){return{then:function(g){var I=new u.Module(A);g({instance:new u.Instance(I)})}}},RuntimeError:Error};function l(A,g,I,e){switch("*"===(I=I||"i8").charAt(I.length-1)&&(I="i32"),I){case"i1":case"i8":b[A>>0]=g;break;case"i16":F[A>>1]=g;break;case"i32":G[A>>2]=g;break;case"i64":nA=[g>>>0,(tA=g,+Math.abs(tA)>=1?tA>0?(0|Math.min(+Math.floor(tA/4294967296),4294967295))>>>0:~~+Math.ceil((tA-+(~~tA>>>0))/4294967296)>>>0:0)],G[A>>2]=nA[0],G[A+4>>2]=nA[1];break;case"float":m[A>>2]=g;break;case"double":Y[A>>3]=g;break;default:gA("invalid type for setValue: "+I)}}function w(A,g,I){switch("*"===(g=g||"i8").charAt(g.length-1)&&(g="i32"),g){case"i1":case"i8":return b[A>>0];case"i16":return F[A>>1];case"i32":case"i64":return G[A>>2];case"float":return m[A>>2];case"double":return Y[A>>3];default:gA("invalid type for getValue: "+g)}return null}h=[],"object"!=typeof u&&gA("no native wasm support detected");var D=!1;function v(A,g){A||gA("Assertion failed: "+g)}var d,b,k,F,G,m,Y,H="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function S(A,g,I){for(var e=g+I,r=g;A[r]&&!(r>=e);)++r;if(r-g>16&&A.subarray&&H)return H.decode(A.subarray(g,r));for(var a="";g<r;){var B=A[g++];if(128&B){var t=63&A[g++];if(192!=(224&B)){var n=63&A[g++];if((B=224==(240&B)?(15&B)<<12|t<<6|n:(7&B)<<18|t<<12|n<<6|63&A[g++])<65536)a+=String.fromCharCode(B);else{var i=B-65536;a+=String.fromCharCode(55296|i>>10,56320|1023&i)}}else a+=String.fromCharCode((31&B)<<6|t)}else a+=String.fromCharCode(B)}return a}function U(A,g){return A?S(k,A,g):""}function M(A,g){return A%g>0&&(A+=g-A%g),A}function N(A){d=A,r.HEAP8=b=new Int8Array(A),r.HEAP16=F=new Int16Array(A),r.HEAP32=G=new Int32Array(A),r.HEAPU8=k=new Uint8Array(A),r.HEAPU16=new Uint16Array(A),r.HEAPU32=new Uint32Array(A),r.HEAPF32=m=new Float32Array(A),r.HEAPF64=Y=new Float64Array(A)}var x,P=r.INITIAL_MEMORY||16777216;(p=r.wasmMemory?r.wasmMemory:new u.Memory({initial:P/65536,maximum:32768}))&&(d=p.buffer),P=d.byteLength,N(d);var R=[],J=[],K=[],L=[];function T(){if(r.preRun)for("function"==typeof r.preRun&&(r.preRun=[r.preRun]);r.preRun.length;)W(r.preRun.shift());EA(R)}function q(){EA(J)}function X(){EA(K)}function V(){if(r.postRun)for("function"==typeof r.postRun&&(r.postRun=[r.postRun]);r.postRun.length;)j(r.postRun.shift());EA(L)}function W(A){R.unshift(A)}function j(A){L.unshift(A)}J.push({func:function(){HA()}});var O=0,Z=null,z=null;function $(A){O++,r.monitorRunDependencies&&r.monitorRunDependencies(O)}function AA(A){if(O--,r.monitorRunDependencies&&r.monitorRunDependencies(O),0==O&&(null!==Z&&(clearInterval(Z),Z=null),z)){var g=z;z=null,g()}}function gA(A){throw r.onAbort&&r.onAbort(A),f(A+=""),D=!0,A="abort("+A+"). Build with -s ASSERTIONS=1 for more info.",new u.RuntimeError(A)}function IA(A,g){return String.prototype.startsWith?A.startsWith(g):0===A.indexOf(g)}r.preloadedImages={},r.preloadedAudios={};var eA="data:application/octet-stream;base64,";function rA(A){return IA(A,eA)}var aA="file://";function BA(A){return IA(A,aA)}var tA,nA,iA="<<< WASM_BINARY_FILE >>>";function oA(A){try{if(A==iA&&h)return new Uint8Array(h);var g=GA(A);if(g)return g;if(c)return c(A);throw"both async and sync fetching of the wasm failed"}catch(A){gA(A)}}function QA(){if(!h&&(t||n)){if("function"==typeof fetch&&!BA(iA))return fetch(iA,{credentials:"same-origin"}).then((function(A){if(!A.ok)throw"failed to load wasm binary file at '"+iA+"'";return A.arrayBuffer()})).catch((function(){return oA(iA)}));if(C)return new Promise((function(A,g){C(iA,(function(g){A(new Uint8Array(g))}),g)}))}return Promise.resolve().then((function(){return oA(iA)}))}function CA(){var A={a:YA};function g(A,g){var I=A.exports;r.asm=I,x=r.asm.h,AA()}function I(A){g(A.instance)}function e(g){return QA().then((function(g){return u.instantiate(g,A)})).then(g,(function(A){f("failed to asynchronously prepare wasm: "+A),gA(A)}))}if($(),r.instantiateWasm)try{return r.instantiateWasm(A,g)}catch(A){return f("Module.instantiateWasm callback failed with error: "+A),!1}return h||"function"!=typeof u.instantiateStreaming||rA(iA)||BA(iA)||"function"!=typeof fetch?e(I):fetch(iA,{credentials:"same-origin"}).then((function(g){return u.instantiateStreaming(g,A).then(I,(function(A){return f("wasm streaming compile failed: "+A),f("falling back to ArrayBuffer instantiation"),e(I)}))})),{}}rA(iA)||(iA=_(iA));var cA={1024:function(){return r.getRandomValue()},1062:function(){if(void 0===r.getRandomValue)try{var A="object"==typeof window?window:self,g=void 0!==A.crypto?A.crypto:A.msCrypto,I=function(){var A=new Uint32Array(1);return g.getRandomValues(A),A[0]>>>0};I(),r.getRandomValue=I}catch(A){try{var e=require("crypto"),a=function(){var A=e.randomBytes(4);return(A[0]<<24|A[1]<<16|A[2]<<8|A[3])>>>0};a(),r.getRandomValue=a}catch(A){throw"No secure random number generator found"}}}};function EA(A){for(;A.length>0;){var g=A.shift();if("function"!=typeof g){var I=g.func;"number"==typeof I?void 0===g.arg?x.get(I)():x.get(I)(g.arg):I(void 0===g.arg?null:g.arg)}else g(r)}}function sA(A,g,I,e){gA("Assertion failed: "+U(A)+", at: "+[g?U(g):"unknown filename",I,e?U(e):"unknown function"])}function yA(){gA()}function _A(A,g,I){var e=vA(g,I);return cA[A].apply(null,e)}function hA(A,g,I){k.copyWithin(A,g,g+I)}function fA(){return k.length}function pA(A){try{return p.grow(A-d.byteLength+65535>>>16),N(p.buffer),1}catch(A){}}function uA(A){A>>>=0;var g=fA(),I=2147483648;if(A>I)return!1;for(var e=1;e<=4;e*=2){var r=g*(1+.2/e);if(r=Math.min(r,A+100663296),pA(Math.min(I,M(Math.max(16777216,A,r),65536))))return!0}return!1}function lA(A){return G[SA()>>2]=A,A}function wA(A){switch(A){case 30:return 16384;case 85:return 131072;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:case 80:case 81:case 79:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return lA(28),-1}var DA=[];function vA(A,g){var I;for(DA.length=0,g>>=2;I=k[A++];){var e=I<105;e&&1&g&&g++,DA.push(e?Y[g++>>1]:G[g]),++g}return DA}var dA=!1;function bA(A){for(var g=[],I=0;I<A.length;I++){var e=A[I];e>255&&(dA&&v(!1,"Character code "+e+" ("+String.fromCharCode(e)+")  at offset "+I+" not in 0x00-0xFF."),e&=255),g.push(String.fromCharCode(e))}return g.join("")}var kA="function"==typeof atob?atob:function(A){var g,I,e,r,a,B,t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="",i=0;A=A.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{g=t.indexOf(A.charAt(i++))<<2|(r=t.indexOf(A.charAt(i++)))>>4,I=(15&r)<<4|(a=t.indexOf(A.charAt(i++)))>>2,e=(3&a)<<6|(B=t.indexOf(A.charAt(i++))),n+=String.fromCharCode(g),64!==a&&(n+=String.fromCharCode(I)),64!==B&&(n+=String.fromCharCode(e))}while(i<A.length);return n};function FA(A){if("boolean"==typeof i&&i){var g;try{g=Buffer.from(A,"base64")}catch(I){g=new Buffer(A,"base64")}return new Uint8Array(g.buffer,g.byteOffset,g.byteLength)}try{for(var I=kA(A),e=new Uint8Array(I.length),r=0;r<I.length;++r)e[r]=I.charCodeAt(r);return e}catch(A){throw new Error("Converting base64 string to bytes failed.")}}function GA(A){if(rA(A))return FA(A.slice(eA.length))}var mA,YA={b:sA,d:yA,c:_A,f:hA,g:uA,a:p,e:wA},HA=(CA(),r.___wasm_call_ctors=function(){return(HA=r.___wasm_call_ctors=r.asm.i).apply(null,arguments)}),SA=(r._crypto_aead_chacha20poly1305_encrypt_detached=function(){return(r._crypto_aead_chacha20poly1305_encrypt_detached=r.asm.j).apply(null,arguments)},r._crypto_aead_chacha20poly1305_encrypt=function(){return(r._crypto_aead_chacha20poly1305_encrypt=r.asm.k).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_encrypt_detached=function(){return(r._crypto_aead_chacha20poly1305_ietf_encrypt_detached=r.asm.l).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_encrypt=function(){return(r._crypto_aead_chacha20poly1305_ietf_encrypt=r.asm.m).apply(null,arguments)},r._crypto_aead_chacha20poly1305_decrypt_detached=function(){return(r._crypto_aead_chacha20poly1305_decrypt_detached=r.asm.n).apply(null,arguments)},r._crypto_aead_chacha20poly1305_decrypt=function(){return(r._crypto_aead_chacha20poly1305_decrypt=r.asm.o).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_decrypt_detached=function(){return(r._crypto_aead_chacha20poly1305_ietf_decrypt_detached=r.asm.p).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_decrypt=function(){return(r._crypto_aead_chacha20poly1305_ietf_decrypt=r.asm.q).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_keybytes=function(){return(r._crypto_aead_chacha20poly1305_ietf_keybytes=r.asm.r).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_npubbytes=function(){return(r._crypto_aead_chacha20poly1305_ietf_npubbytes=r.asm.s).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_nsecbytes=function(){return(r._crypto_aead_chacha20poly1305_ietf_nsecbytes=r.asm.t).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_abytes=function(){return(r._crypto_aead_chacha20poly1305_ietf_abytes=r.asm.u).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_messagebytes_max=function(){return(r._crypto_aead_chacha20poly1305_ietf_messagebytes_max=r.asm.v).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_keygen=function(){return(r._crypto_aead_chacha20poly1305_ietf_keygen=r.asm.w).apply(null,arguments)},r._crypto_aead_chacha20poly1305_keybytes=function(){return(r._crypto_aead_chacha20poly1305_keybytes=r.asm.x).apply(null,arguments)},r._crypto_aead_chacha20poly1305_npubbytes=function(){return(r._crypto_aead_chacha20poly1305_npubbytes=r.asm.y).apply(null,arguments)},r._crypto_aead_chacha20poly1305_nsecbytes=function(){return(r._crypto_aead_chacha20poly1305_nsecbytes=r.asm.z).apply(null,arguments)},r._crypto_aead_chacha20poly1305_abytes=function(){return(r._crypto_aead_chacha20poly1305_abytes=r.asm.A).apply(null,arguments)},r._crypto_aead_chacha20poly1305_messagebytes_max=function(){return(r._crypto_aead_chacha20poly1305_messagebytes_max=r.asm.B).apply(null,arguments)},r._crypto_aead_chacha20poly1305_keygen=function(){return(r._crypto_aead_chacha20poly1305_keygen=r.asm.C).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_encrypt_detached=function(){return(r._crypto_aead_xchacha20poly1305_ietf_encrypt_detached=r.asm.D).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_encrypt=function(){return(r._crypto_aead_xchacha20poly1305_ietf_encrypt=r.asm.E).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_decrypt_detached=function(){return(r._crypto_aead_xchacha20poly1305_ietf_decrypt_detached=r.asm.F).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_decrypt=function(){return(r._crypto_aead_xchacha20poly1305_ietf_decrypt=r.asm.G).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_keybytes=function(){return(r._crypto_aead_xchacha20poly1305_ietf_keybytes=r.asm.H).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_npubbytes=function(){return(r._crypto_aead_xchacha20poly1305_ietf_npubbytes=r.asm.I).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_nsecbytes=function(){return(r._crypto_aead_xchacha20poly1305_ietf_nsecbytes=r.asm.J).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_abytes=function(){return(r._crypto_aead_xchacha20poly1305_ietf_abytes=r.asm.K).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_messagebytes_max=function(){return(r._crypto_aead_xchacha20poly1305_ietf_messagebytes_max=r.asm.L).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_keygen=function(){return(r._crypto_aead_xchacha20poly1305_ietf_keygen=r.asm.M).apply(null,arguments)},r._crypto_auth_bytes=function(){return(r._crypto_auth_bytes=r.asm.N).apply(null,arguments)},r._crypto_auth_keybytes=function(){return(r._crypto_auth_keybytes=r.asm.O).apply(null,arguments)},r._crypto_auth=function(){return(r._crypto_auth=r.asm.P).apply(null,arguments)},r._crypto_auth_verify=function(){return(r._crypto_auth_verify=r.asm.Q).apply(null,arguments)},r._crypto_auth_keygen=function(){return(r._crypto_auth_keygen=r.asm.R).apply(null,arguments)},r._crypto_box_seedbytes=function(){return(r._crypto_box_seedbytes=r.asm.S).apply(null,arguments)},r._crypto_box_publickeybytes=function(){return(r._crypto_box_publickeybytes=r.asm.T).apply(null,arguments)},r._crypto_box_secretkeybytes=function(){return(r._crypto_box_secretkeybytes=r.asm.U).apply(null,arguments)},r._crypto_box_beforenmbytes=function(){return(r._crypto_box_beforenmbytes=r.asm.V).apply(null,arguments)},r._crypto_box_noncebytes=function(){return(r._crypto_box_noncebytes=r.asm.W).apply(null,arguments)},r._crypto_box_macbytes=function(){return(r._crypto_box_macbytes=r.asm.X).apply(null,arguments)},r._crypto_box_messagebytes_max=function(){return(r._crypto_box_messagebytes_max=r.asm.Y).apply(null,arguments)},r._crypto_box_seed_keypair=function(){return(r._crypto_box_seed_keypair=r.asm.Z).apply(null,arguments)},r._crypto_box_keypair=function(){return(r._crypto_box_keypair=r.asm._).apply(null,arguments)},r._crypto_box_beforenm=function(){return(r._crypto_box_beforenm=r.asm.$).apply(null,arguments)},r._crypto_box_detached_afternm=function(){return(r._crypto_box_detached_afternm=r.asm.aa).apply(null,arguments)},r._crypto_box_detached=function(){return(r._crypto_box_detached=r.asm.ba).apply(null,arguments)},r._crypto_box_easy_afternm=function(){return(r._crypto_box_easy_afternm=r.asm.ca).apply(null,arguments)},r._crypto_box_easy=function(){return(r._crypto_box_easy=r.asm.da).apply(null,arguments)},r._crypto_box_open_detached_afternm=function(){return(r._crypto_box_open_detached_afternm=r.asm.ea).apply(null,arguments)},r._crypto_box_open_detached=function(){return(r._crypto_box_open_detached=r.asm.fa).apply(null,arguments)},r._crypto_box_open_easy_afternm=function(){return(r._crypto_box_open_easy_afternm=r.asm.ga).apply(null,arguments)},r._crypto_box_open_easy=function(){return(r._crypto_box_open_easy=r.asm.ha).apply(null,arguments)},r._crypto_box_seal=function(){return(r._crypto_box_seal=r.asm.ia).apply(null,arguments)},r._crypto_box_seal_open=function(){return(r._crypto_box_seal_open=r.asm.ja).apply(null,arguments)},r._crypto_box_sealbytes=function(){return(r._crypto_box_sealbytes=r.asm.ka).apply(null,arguments)},r._crypto_generichash_bytes_min=function(){return(r._crypto_generichash_bytes_min=r.asm.la).apply(null,arguments)},r._crypto_generichash_bytes_max=function(){return(r._crypto_generichash_bytes_max=r.asm.ma).apply(null,arguments)},r._crypto_generichash_bytes=function(){return(r._crypto_generichash_bytes=r.asm.na).apply(null,arguments)},r._crypto_generichash_keybytes_min=function(){return(r._crypto_generichash_keybytes_min=r.asm.oa).apply(null,arguments)},r._crypto_generichash_keybytes_max=function(){return(r._crypto_generichash_keybytes_max=r.asm.pa).apply(null,arguments)},r._crypto_generichash_keybytes=function(){return(r._crypto_generichash_keybytes=r.asm.qa).apply(null,arguments)},r._crypto_generichash_statebytes=function(){return(r._crypto_generichash_statebytes=r.asm.ra).apply(null,arguments)},r._crypto_generichash=function(){return(r._crypto_generichash=r.asm.sa).apply(null,arguments)},r._crypto_generichash_init=function(){return(r._crypto_generichash_init=r.asm.ta).apply(null,arguments)},r._crypto_generichash_update=function(){return(r._crypto_generichash_update=r.asm.ua).apply(null,arguments)},r._crypto_generichash_final=function(){return(r._crypto_generichash_final=r.asm.va).apply(null,arguments)},r._crypto_generichash_keygen=function(){return(r._crypto_generichash_keygen=r.asm.wa).apply(null,arguments)},r._crypto_hash_bytes=function(){return(r._crypto_hash_bytes=r.asm.xa).apply(null,arguments)},r._crypto_hash=function(){return(r._crypto_hash=r.asm.ya).apply(null,arguments)},r._crypto_kdf_bytes_min=function(){return(r._crypto_kdf_bytes_min=r.asm.za).apply(null,arguments)},r._crypto_kdf_bytes_max=function(){return(r._crypto_kdf_bytes_max=r.asm.Aa).apply(null,arguments)},r._crypto_kdf_contextbytes=function(){return(r._crypto_kdf_contextbytes=r.asm.Ba).apply(null,arguments)},r._crypto_kdf_keybytes=function(){return(r._crypto_kdf_keybytes=r.asm.Ca).apply(null,arguments)},r._crypto_kdf_derive_from_key=function(){return(r._crypto_kdf_derive_from_key=r.asm.Da).apply(null,arguments)},r._crypto_kdf_keygen=function(){return(r._crypto_kdf_keygen=r.asm.Ea).apply(null,arguments)},r._crypto_kx_seed_keypair=function(){return(r._crypto_kx_seed_keypair=r.asm.Fa).apply(null,arguments)},r._crypto_kx_keypair=function(){return(r._crypto_kx_keypair=r.asm.Ga).apply(null,arguments)},r._crypto_kx_client_session_keys=function(){return(r._crypto_kx_client_session_keys=r.asm.Ha).apply(null,arguments)},r._crypto_kx_server_session_keys=function(){return(r._crypto_kx_server_session_keys=r.asm.Ia).apply(null,arguments)},r._crypto_kx_publickeybytes=function(){return(r._crypto_kx_publickeybytes=r.asm.Ja).apply(null,arguments)},r._crypto_kx_secretkeybytes=function(){return(r._crypto_kx_secretkeybytes=r.asm.Ka).apply(null,arguments)},r._crypto_kx_seedbytes=function(){return(r._crypto_kx_seedbytes=r.asm.La).apply(null,arguments)},r._crypto_kx_sessionkeybytes=function(){return(r._crypto_kx_sessionkeybytes=r.asm.Ma).apply(null,arguments)},r._crypto_pwhash_alg_argon2i13=function(){return(r._crypto_pwhash_alg_argon2i13=r.asm.Na).apply(null,arguments)},r._crypto_pwhash_alg_argon2id13=function(){return(r._crypto_pwhash_alg_argon2id13=r.asm.Oa).apply(null,arguments)},r._crypto_pwhash_alg_default=function(){return(r._crypto_pwhash_alg_default=r.asm.Pa).apply(null,arguments)},r._crypto_pwhash_bytes_min=function(){return(r._crypto_pwhash_bytes_min=r.asm.Qa).apply(null,arguments)},r._crypto_pwhash_bytes_max=function(){return(r._crypto_pwhash_bytes_max=r.asm.Ra).apply(null,arguments)},r._crypto_pwhash_passwd_min=function(){return(r._crypto_pwhash_passwd_min=r.asm.Sa).apply(null,arguments)},r._crypto_pwhash_passwd_max=function(){return(r._crypto_pwhash_passwd_max=r.asm.Ta).apply(null,arguments)},r._crypto_pwhash_saltbytes=function(){return(r._crypto_pwhash_saltbytes=r.asm.Ua).apply(null,arguments)},r._crypto_pwhash_strbytes=function(){return(r._crypto_pwhash_strbytes=r.asm.Va).apply(null,arguments)},r._crypto_pwhash_strprefix=function(){return(r._crypto_pwhash_strprefix=r.asm.Wa).apply(null,arguments)},r._crypto_pwhash_opslimit_min=function(){return(r._crypto_pwhash_opslimit_min=r.asm.Xa).apply(null,arguments)},r._crypto_pwhash_opslimit_max=function(){return(r._crypto_pwhash_opslimit_max=r.asm.Ya).apply(null,arguments)},r._crypto_pwhash_memlimit_min=function(){return(r._crypto_pwhash_memlimit_min=r.asm.Za).apply(null,arguments)},r._crypto_pwhash_memlimit_max=function(){return(r._crypto_pwhash_memlimit_max=r.asm._a).apply(null,arguments)},r._crypto_pwhash_opslimit_interactive=function(){return(r._crypto_pwhash_opslimit_interactive=r.asm.$a).apply(null,arguments)},r._crypto_pwhash_memlimit_interactive=function(){return(r._crypto_pwhash_memlimit_interactive=r.asm.ab).apply(null,arguments)},r._crypto_pwhash_opslimit_moderate=function(){return(r._crypto_pwhash_opslimit_moderate=r.asm.bb).apply(null,arguments)},r._crypto_pwhash_memlimit_moderate=function(){return(r._crypto_pwhash_memlimit_moderate=r.asm.cb).apply(null,arguments)},r._crypto_pwhash_opslimit_sensitive=function(){return(r._crypto_pwhash_opslimit_sensitive=r.asm.db).apply(null,arguments)},r._crypto_pwhash_memlimit_sensitive=function(){return(r._crypto_pwhash_memlimit_sensitive=r.asm.eb).apply(null,arguments)},r._crypto_pwhash=function(){return(r._crypto_pwhash=r.asm.fb).apply(null,arguments)},r._crypto_pwhash_str=function(){return(r._crypto_pwhash_str=r.asm.gb).apply(null,arguments)},r._crypto_pwhash_str_alg=function(){return(r._crypto_pwhash_str_alg=r.asm.hb).apply(null,arguments)},r._crypto_pwhash_str_verify=function(){return(r._crypto_pwhash_str_verify=r.asm.ib).apply(null,arguments)},r._crypto_pwhash_str_needs_rehash=function(){return(r._crypto_pwhash_str_needs_rehash=r.asm.jb).apply(null,arguments)},r._crypto_scalarmult_base=function(){return(r._crypto_scalarmult_base=r.asm.kb).apply(null,arguments)},r._crypto_scalarmult=function(){return(r._crypto_scalarmult=r.asm.lb).apply(null,arguments)},r._crypto_scalarmult_bytes=function(){return(r._crypto_scalarmult_bytes=r.asm.mb).apply(null,arguments)},r._crypto_scalarmult_scalarbytes=function(){return(r._crypto_scalarmult_scalarbytes=r.asm.nb).apply(null,arguments)},r._crypto_secretbox_keybytes=function(){return(r._crypto_secretbox_keybytes=r.asm.ob).apply(null,arguments)},r._crypto_secretbox_noncebytes=function(){return(r._crypto_secretbox_noncebytes=r.asm.pb).apply(null,arguments)},r._crypto_secretbox_macbytes=function(){return(r._crypto_secretbox_macbytes=r.asm.qb).apply(null,arguments)},r._crypto_secretbox_messagebytes_max=function(){return(r._crypto_secretbox_messagebytes_max=r.asm.rb).apply(null,arguments)},r._crypto_secretbox_keygen=function(){return(r._crypto_secretbox_keygen=r.asm.sb).apply(null,arguments)},r._crypto_secretbox_detached=function(){return(r._crypto_secretbox_detached=r.asm.tb).apply(null,arguments)},r._crypto_secretbox_easy=function(){return(r._crypto_secretbox_easy=r.asm.ub).apply(null,arguments)},r._crypto_secretbox_open_detached=function(){return(r._crypto_secretbox_open_detached=r.asm.vb).apply(null,arguments)},r._crypto_secretbox_open_easy=function(){return(r._crypto_secretbox_open_easy=r.asm.wb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_keygen=function(){return(r._crypto_secretstream_xchacha20poly1305_keygen=r.asm.xb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_init_push=function(){return(r._crypto_secretstream_xchacha20poly1305_init_push=r.asm.yb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_init_pull=function(){return(r._crypto_secretstream_xchacha20poly1305_init_pull=r.asm.zb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_rekey=function(){return(r._crypto_secretstream_xchacha20poly1305_rekey=r.asm.Ab).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_push=function(){return(r._crypto_secretstream_xchacha20poly1305_push=r.asm.Bb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_pull=function(){return(r._crypto_secretstream_xchacha20poly1305_pull=r.asm.Cb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_statebytes=function(){return(r._crypto_secretstream_xchacha20poly1305_statebytes=r.asm.Db).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_abytes=function(){return(r._crypto_secretstream_xchacha20poly1305_abytes=r.asm.Eb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_headerbytes=function(){return(r._crypto_secretstream_xchacha20poly1305_headerbytes=r.asm.Fb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_keybytes=function(){return(r._crypto_secretstream_xchacha20poly1305_keybytes=r.asm.Gb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_messagebytes_max=function(){return(r._crypto_secretstream_xchacha20poly1305_messagebytes_max=r.asm.Hb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_tag_message=function(){return(r._crypto_secretstream_xchacha20poly1305_tag_message=r.asm.Ib).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_tag_push=function(){return(r._crypto_secretstream_xchacha20poly1305_tag_push=r.asm.Jb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_tag_rekey=function(){return(r._crypto_secretstream_xchacha20poly1305_tag_rekey=r.asm.Kb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_tag_final=function(){return(r._crypto_secretstream_xchacha20poly1305_tag_final=r.asm.Lb).apply(null,arguments)},r._crypto_shorthash_bytes=function(){return(r._crypto_shorthash_bytes=r.asm.Mb).apply(null,arguments)},r._crypto_shorthash_keybytes=function(){return(r._crypto_shorthash_keybytes=r.asm.Nb).apply(null,arguments)},r._crypto_shorthash=function(){return(r._crypto_shorthash=r.asm.Ob).apply(null,arguments)},r._crypto_shorthash_keygen=function(){return(r._crypto_shorthash_keygen=r.asm.Pb).apply(null,arguments)},r._crypto_sign_statebytes=function(){return(r._crypto_sign_statebytes=r.asm.Qb).apply(null,arguments)},r._crypto_sign_bytes=function(){return(r._crypto_sign_bytes=r.asm.Rb).apply(null,arguments)},r._crypto_sign_seedbytes=function(){return(r._crypto_sign_seedbytes=r.asm.Sb).apply(null,arguments)},r._crypto_sign_publickeybytes=function(){return(r._crypto_sign_publickeybytes=r.asm.Tb).apply(null,arguments)},r._crypto_sign_secretkeybytes=function(){return(r._crypto_sign_secretkeybytes=r.asm.Ub).apply(null,arguments)},r._crypto_sign_messagebytes_max=function(){return(r._crypto_sign_messagebytes_max=r.asm.Vb).apply(null,arguments)},r._crypto_sign_seed_keypair=function(){return(r._crypto_sign_seed_keypair=r.asm.Wb).apply(null,arguments)},r._crypto_sign_keypair=function(){return(r._crypto_sign_keypair=r.asm.Xb).apply(null,arguments)},r._crypto_sign=function(){return(r._crypto_sign=r.asm.Yb).apply(null,arguments)},r._crypto_sign_open=function(){return(r._crypto_sign_open=r.asm.Zb).apply(null,arguments)},r._crypto_sign_detached=function(){return(r._crypto_sign_detached=r.asm._b).apply(null,arguments)},r._crypto_sign_verify_detached=function(){return(r._crypto_sign_verify_detached=r.asm.$b).apply(null,arguments)},r._crypto_sign_init=function(){return(r._crypto_sign_init=r.asm.ac).apply(null,arguments)},r._crypto_sign_update=function(){return(r._crypto_sign_update=r.asm.bc).apply(null,arguments)},r._crypto_sign_final_create=function(){return(r._crypto_sign_final_create=r.asm.cc).apply(null,arguments)},r._crypto_sign_final_verify=function(){return(r._crypto_sign_final_verify=r.asm.dc).apply(null,arguments)},r._crypto_sign_ed25519_pk_to_curve25519=function(){return(r._crypto_sign_ed25519_pk_to_curve25519=r.asm.ec).apply(null,arguments)},r._crypto_sign_ed25519_sk_to_curve25519=function(){return(r._crypto_sign_ed25519_sk_to_curve25519=r.asm.fc).apply(null,arguments)},r._randombytes_random=function(){return(r._randombytes_random=r.asm.gc).apply(null,arguments)},r._randombytes_stir=function(){return(r._randombytes_stir=r.asm.hc).apply(null,arguments)},r._randombytes_uniform=function(){return(r._randombytes_uniform=r.asm.ic).apply(null,arguments)},r._randombytes_buf=function(){return(r._randombytes_buf=r.asm.jc).apply(null,arguments)},r._randombytes_buf_deterministic=function(){return(r._randombytes_buf_deterministic=r.asm.kc).apply(null,arguments)},r._randombytes_seedbytes=function(){return(r._randombytes_seedbytes=r.asm.lc).apply(null,arguments)},r._randombytes_close=function(){return(r._randombytes_close=r.asm.mc).apply(null,arguments)},r._randombytes=function(){return(r._randombytes=r.asm.nc).apply(null,arguments)},r._sodium_bin2hex=function(){return(r._sodium_bin2hex=r.asm.oc).apply(null,arguments)},r._sodium_hex2bin=function(){return(r._sodium_hex2bin=r.asm.pc).apply(null,arguments)},r._sodium_base64_encoded_len=function(){return(r._sodium_base64_encoded_len=r.asm.qc).apply(null,arguments)},r._sodium_bin2base64=function(){return(r._sodium_bin2base64=r.asm.rc).apply(null,arguments)},r._sodium_base642bin=function(){return(r._sodium_base642bin=r.asm.sc).apply(null,arguments)},r._sodium_init=function(){return(r._sodium_init=r.asm.tc).apply(null,arguments)},r._sodium_pad=function(){return(r._sodium_pad=r.asm.uc).apply(null,arguments)},r._sodium_unpad=function(){return(r._sodium_unpad=r.asm.vc).apply(null,arguments)},r._sodium_version_string=function(){return(r._sodium_version_string=r.asm.wc).apply(null,arguments)},r._sodium_library_version_major=function(){return(r._sodium_library_version_major=r.asm.xc).apply(null,arguments)},r._sodium_library_version_minor=function(){return(r._sodium_library_version_minor=r.asm.yc).apply(null,arguments)},r._sodium_library_minimal=function(){return(r._sodium_library_minimal=r.asm.zc).apply(null,arguments)},r.___errno_location=function(){return(SA=r.___errno_location=r.asm.Ac).apply(null,arguments)});function UA(A){function g(){mA||(mA=!0,r.calledRun=!0,D||(q(),X(),r.onRuntimeInitialized&&r.onRuntimeInitialized(),V()))}A=A||B,O>0||(T(),O>0||(r.setStatus?(r.setStatus("Running..."),setTimeout((function(){setTimeout((function(){r.setStatus("")}),1),g()}),1)):g()))}if(r._malloc=function(){return(r._malloc=r.asm.Bc).apply(null,arguments)},r._free=function(){return(r._free=r.asm.Cc).apply(null,arguments)},r.setValue=l,r.getValue=w,r.UTF8ToString=U,z=function A(){mA||UA(),mA||(z=A)},r.run=UA,r.preInit)for("function"==typeof r.preInit&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();UA()}))};var I,r=void 0!==r?r:{},a={};for(I in r)r.hasOwnProperty(I)&&(a[I]=r[I]);var B=[],t=!1,n=!1,i=!1,o=!1;t="object"==typeof window,n="function"==typeof importScripts,i="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,o=!t&&!i&&!n;var Q,C,c,E,s,y="";function _(A){return r.locateFile?r.locateFile(A,y):y+A}i?(y=n?require("path").dirname(y)+"/":__dirname+"/",Q=function(A,g){var I=kA(A);return I?g?I:I.toString():(E||(E=require("fs")),s||(s=require("path")),A=s.normalize(A),E.readFileSync(A,g?null:"utf8"))},c=function(A){var g=Q(A,!0);return g.buffer||(g=new Uint8Array(g)),D(g.buffer),g},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),B=process.argv.slice(2),"undefined"!=typeof module&&(module.exports=r),r.inspect=function(){return"[Emscripten Module object]"}):o?("undefined"!=typeof read&&(Q=function(A){var g=kA(A);return g?vA(g):read(A)}),c=function(A){var g;return(g=kA(A))?g:"function"==typeof readbuffer?new Uint8Array(readbuffer(A)):(D("object"==typeof(g=read(A,"binary"))),g)},"undefined"!=typeof scriptArgs?B=scriptArgs:void 0!==arguments&&(B=arguments),"undefined"!=typeof print&&("undefined"==typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!=typeof printErr?printErr:print)):(t||n)&&(n?y=self.location.href:"undefined"!=typeof document&&document.currentScript&&(y=document.currentScript.src),y=0!==y.indexOf("blob:")?y.substr(0,y.lastIndexOf("/")+1):"",Q=function(A){try{var g=new XMLHttpRequest;return g.open("GET",A,!1),g.send(null),g.responseText}catch(g){var I=kA(A);if(I)return vA(I);throw g}},n&&(c=function(A){try{var g=new XMLHttpRequest;return g.open("GET",A,!1),g.responseType="arraybuffer",g.send(null),new Uint8Array(g.response)}catch(g){var I=kA(A);if(I)return I;throw g}}),C=function(A,g,I){var e=new XMLHttpRequest;e.open("GET",A,!0),e.responseType="arraybuffer",e.onload=function(){if(200==e.status||0==e.status&&e.response)g(e.response);else{var r=kA(A);r?g(r.buffer):I()}},e.onerror=I,e.send(null)}),r.print;var h,f,p=r.printErr||void 0;for(I in a)a.hasOwnProperty(I)&&(r[I]=a[I]);function u(A,g,I,e){switch("*"===(I=I||"i8").charAt(I.length-1)&&(I="i32"),I){case"i1":case"i8":d[A>>0]=g;break;case"i16":k[A>>1]=g;break;case"i32":F[A>>2]=g;break;case"i64":BA=[g>>>0,(aA=g,+Math.abs(aA)>=1?aA>0?(0|Math.min(+Math.floor(aA/4294967296),4294967295))>>>0:~~+Math.ceil((aA-+(~~aA>>>0))/4294967296)>>>0:0)],F[A>>2]=BA[0],F[A+4>>2]=BA[1];break;case"float":G[A>>2]=g;break;case"double":m[A>>3]=g;break;default:$("invalid type for setValue: "+I)}}function l(A,g,I){switch("*"===(g=g||"i8").charAt(g.length-1)&&(g="i32"),g){case"i1":case"i8":return d[A>>0];case"i16":return k[A>>1];case"i32":case"i64":return F[A>>2];case"float":return G[A>>2];case"double":return m[A>>3];default:$("invalid type for getValue: "+g)}return null}a=null,r.arguments&&(B=r.arguments),r.thisProgram&&r.thisProgram,r.quit&&r.quit,r.wasmBinary&&(h=r.wasmBinary),r.noExitRuntime&&r.noExitRuntime,"object"!=typeof WebAssembly&&$("no native wasm support detected");var w=!1;function D(A,g){A||$("Assertion failed: "+g)}var v,d,b,k,F,G,m,Y="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function H(A,g,I){for(var e=g+I,r=g;A[r]&&!(r>=e);)++r;if(r-g>16&&A.subarray&&Y)return Y.decode(A.subarray(g,r));for(var a="";g<r;){var B=A[g++];if(128&B){var t=63&A[g++];if(192!=(224&B)){var n=63&A[g++];if((B=224==(240&B)?(15&B)<<12|t<<6|n:(7&B)<<18|t<<12|n<<6|63&A[g++])<65536)a+=String.fromCharCode(B);else{var i=B-65536;a+=String.fromCharCode(55296|i>>10,56320|1023&i)}}else a+=String.fromCharCode((31&B)<<6|t)}else a+=String.fromCharCode(B)}return a}function S(A,g){return A?H(b,A,g):""}function U(A,g){return A%g>0&&(A+=g-A%g),A}function M(A){v=A,r.HEAP8=d=new Int8Array(A),r.HEAP16=k=new Int16Array(A),r.HEAP32=F=new Int32Array(A),r.HEAPU8=b=new Uint8Array(A),r.HEAPU16=new Uint16Array(A),r.HEAPU32=new Uint32Array(A),r.HEAPF32=G=new Float32Array(A),r.HEAPF64=m=new Float64Array(A)}r.INITIAL_MEMORY;var N,x=[],P=[],R=[],J=[];function K(){if(r.preRun)for("function"==typeof r.preRun&&(r.preRun=[r.preRun]);r.preRun.length;)X(r.preRun.shift());CA(x)}function L(){CA(P)}function T(){CA(R)}function q(){if(r.postRun)for("function"==typeof r.postRun&&(r.postRun=[r.postRun]);r.postRun.length;)V(r.postRun.shift());CA(J)}function X(A){x.unshift(A)}function V(A){J.unshift(A)}P.push({func:function(){mA()}});var W=0,j=null,O=null;function Z(A){W++,r.monitorRunDependencies&&r.monitorRunDependencies(W)}function z(A){if(W--,r.monitorRunDependencies&&r.monitorRunDependencies(W),0==W&&(null!==j&&(clearInterval(j),j=null),O)){var g=O;O=null,g()}}function $(A){throw r.onAbort&&r.onAbort(A),p(A+=""),w=!0,A="abort("+A+"). Build with -s ASSERTIONS=1 for more info.",new WebAssembly.RuntimeError(A)}function AA(A,g){return String.prototype.startsWith?A.startsWith(g):0===A.indexOf(g)}r.preloadedImages={},r.preloadedAudios={};var gA="data:application/octet-stream;base64,";function IA(A){return AA(A,gA)}var eA="file://";function rA(A){return AA(A,eA)}var aA,BA,tA="data:application/octet-stream;base64,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CiASfnwgCSALfnwiEUKAgIAQfCIUQhqHfCIiQoCAgAh8IiNCGYd8IhkgGUKAgIAQfCIZQoCAgOAPg30+AgggACASIBh+IA0gDn58IAkgEH58IAwgHH58IAsgF358IBNCGod8IhMgE0KAgIAIfCITQoCAgPAPg30+AhwgACAMIBp+IAkgFX58IBAgFn58IAogD358IAsgDX58IBlCGod8IgogCkKAgIAIfCIKQoCAgPAPg30+AgwgACAQIBJ+IA0gDX58IA4gD358IAkgG358IAwgF358IAsgA6wiDX58IBNCGYd8IgsgC0KAgIAQfCILQoCAgOAPg30+AiAgACAgICFCgICA8A+DfSAeIB9CgICAYIN9IApCGYd8IgpCgICAEHwiD0IaiHw+AhQgACAKIA9CgICA4A+DfT4CECAAIA4gEH4gGCAdfnwgEiAcfnwgCSAXfnwgDCANfnwgC0Iah3wiCSAJQoCAgAh8IglCgICA8A+DfT4CJCAAICIgI0KAgIDwD4N9IBEgFEKAgIBgg30gCUIZh0ITfnwiCUKAgIAQfCIMQhqIfD4CBCAAIAkgDEKAgIDgD4N9PgIACxAAIAAzAAAgADEAAkIQhoQL8wICAn8BfgJAIAJFDQAgACACaiIDQQFrIAE6AAAgACABOgAAIAJBA0kNACADQQJrIAE6AAAgACABOgABIANBA2sgAToAACAAIAE6AAIgAkEHSQ0AIANBBGsgAToAACAAIAE6AAMgAkEJSQ0AIABBACAAa0EDcSIEaiIDIAFB/wFxQYGChAhsIgE2AgAgAyACIARrQXxxIgRqIgJBBGsgATYCACAEQQlJDQAgAyABNgIIIAMgATYCBCACQQhrIAE2AgAgAkEMayABNgIAIARBGUkNACADIAE2AhggAyABNgIUIAMgATYCECADIAE2AgwgAkEQayABNgIAIAJBFGsgATYCACACQRhrIAE2AgAgAkEcayABNgIAIAQgA0EEcUEYciIEayICQSBJDQAgAa0iBUIghiAFhCEFIAMgBGohAQNAIAEgBTcDGCABIAU3AxAgASAFNwMIIAEgBTcDACABQSBqIQEgAkEgayICQR9LDQALCyAACwkAIAAgATcAAAuCBAEDfyACQYAETwRAIAAgASACEAQaIAAPCyAAIAJqIQMCQCAAIAFzQQNxRQRAAkAgAkEBSARAIAAhAgwBCyAAQQNxRQRAIAAhAgwBCyAAIQIDQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiADTw0BIAJBA3ENAAsLAkAgA0F8cSIEQcAASQ0AIAIgBEFAaiIFSw0AA0AgAiABKAIANgIAIAIgASgCBDYCBCACIAEoAgg2AgggAiABKAIMNgIMIAIgASgCEDYCECACIAEoAhQ2AhQgAiABKAIYNgIYIAIgASgCHDYCHCACIAEoAiA2AiAgAiABKAIkNgIkIAIgASgCKDYCKCACIAEoAiw2AiwgAiABKAIwNgIwIAIgASgCNDYCNCACIAEoAjg2AjggAiABKAI8NgI8IAFBQGshASACQUBrIgIgBU0NAAsLIAIgBE8NAQNAIAIgASgCADYCACABQQRqIQEgAkEEaiICIARJDQALDAELIANBBEkEQCAAIQIMAQsgACADQQRrIgRLBEAgACECDAELIAAhAgNAIAIgAS0AADoAACACIAEtAAE6AAEgAiABLQACOgACIAIgAS0AAzoAAyABQQRqIQEgAkEEaiICIARNDQALCyACIANJBEADQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiADRw0ACwsgAAvsAQESfyACKAIEIQMgASgCBCEEIAIoAgghBSABKAIIIQYgAigCDCEHIAEoAgwhCCACKAIQIQkgASgCECEKIAIoAhQhCyABKAIUIQwgAigCGCENIAEoAhghDiACKAIcIQ8gASgCHCEQIAIoAiAhESABKAIgIRIgAigCJCETIAEoAiQhFCAAIAIoAgAgASgCAGo2AgAgACATIBRqNgIkIAAgESASajYCICAAIA8gEGo2AhwgACANIA5qNgIYIAAgCyAMajYCFCAAIAkgCmo2AhAgACAHIAhqNgIMIAAgBSAGajYCCCAAIAMgBGo2AgQLGAEBf0HEnAIoAgAiAARAIAARDgALEAIAC0ABA38gACABIAFB+ABqIgIQCyAAQShqIAFBKGoiAyABQdAAaiIEEAsgAEHQAGogBCACEAsgAEH4AGogASADEAsL7AEBEn8gAigCBCEDIAEoAgQhBCACKAIIIQUgASgCCCEGIAIoAgwhByABKAIMIQggAigCECEJIAEoAhAhCiACKAIUIQsgASgCFCEMIAIoAhghDSABKAIYIQ4gAigCHCEPIAEoAhwhECACKAIgIREg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czYCFCABIAUgEHM2AhAgASAEIA9zNgIMIAEgAyANczYCCCABIAAgC3M2AgQgASAWIBdzNgIACykBAX8jAEGAAWsiAiQAIAJBCGogARDoAiAAIAJBCGoQOSACQYABaiQACzIBAX8gACABIAFB+ABqIgIQCyAAQShqIAFBKGogAUHQAGoiARALIABB0ABqIAEgAhALC68CARN/IAEoAgQhDCAAKAIEIQMgASgCCCENIAAoAgghBCABKAIMIQ4gACgCDCEFIAEoAhAhDyAAKAIQIQYgASgCFCEQIAAoAhQhByABKAIYIREgACgCGCEIIAEoAhwhEiAAKAIcIQkgASgCICETIAAoAiAhCiABKAIkIRQgACgCJCELIABBACACayICIAAoAgAiFSABKAIAc3EgFXM2AgAgACALIAsgFHMgAnFzNgIkIAAgCiAKIBNzIAJxczYCICAAIAkgCSAScyACcXM2AhwgACAIIAggEXMgAnFzNgIYIAAgByAHIBBzIAJxczYCFCAAIAYgBiAPcyACcXM2AhAgACAFIAUgDnMgAnFzNgIMIAAgBCAEIA1zIAJxczYCCCAAIAMgAyAMcyACcXM2AgQLJAEBfyMAQSBrIgEkACABIAAQLSABQSAQZSEAIAFBIGokACAAC6YEAgp/Dn4gACgCJCEEIAAoAiAhBSAAKAIcIQYgACgCGCEHIAAoAhQhAyACQhBaBEAgAC0AUEVBGHQhCCAAKAIEIglBBWytIRkgACgCCCIKQQVsrSEXIAAoAgwiC0EFbK0hFSAAKAIQIgxBBWytIRMgDK0hGiALrSEYIAqtIRYgCa0hFCAANQIAIRIDQCABKAADQQJ2Qf///x9xIAdqrSINIBh+IAEoAABB////H3EgA2qtIg4gGn58IAEoAAZBBHZB////H3EgBmqtIg8gFn58IAEoAAlBBnYgBWqtIhAgFH58IAQgCGogASgADEEIdmqtIhEgEn58IA0gFn4gDiAYfnwgDyAUfnwgECASfnwgESATfnwgDSAUfiAOIBZ+fCAPIBJ+fCAQIBN+fCARIBV+fCANIBJ+IA4gFH58IA8gE358IBAgFX58IBEgF358IA0gE34gDiASfnwgDyAVfnwgECAXfnwgESAZfnwiDUIaiEL/////D4N8Ig5CGohC/////w+DfCIPQhqIQv////8Pg3wiEEIaiEL/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aiAFIAYQDCAJQQhqIAYQESAJQdAAaiAJQQhqQggQDCAAIAMgBCAHIAgQogEgCUHQAGogACAEEAwgCUEIaiAEEBEgCUHQAGogCUEIakIIEAwgCUHQAGogARAjIAlB0ABqQYACEAkgAgRAIAJCEDcDAAsgCUHQAmokAEEACygAIAJCgICAgBBaBEAQFAALIAAgASACIANCASAEQfCXAigCABEVABoLFgAgAELAACABIAJB6JcCKAIAEREAGgsyACAAIAIEfyACKAAABUEACzYCMCAAIAEoAAA2AjQgACABKAAENgI4IAAgASgACDYCPAs9ACAAAn8gAgRAIAAgAigAADYCMCACKAAEDAELIABBADYCMEEACzYCNCAAIAEoAAA2AjggACABKAAENgI8CxkAIAAgASACIANCASAEQeSXAigCABEVABoLKAEBfyMAQRBrIgAkACAAQQA6AA9BpgggAEEPakEAEAEaIABBEGokAAtqAQN/IwBBEGsiAyQAIANBADoAD0F/IQUgACABIAJB2JcCKAIAEQMARQRAA0AgAyAAIARqLQAAIAMtAA9yOgAPIARBAWoiBEEgRw0AC0EAIAMtAA9BAWtBCHZBAXFrIQULIANBEGokACAFCxMAIAAgAUHAB2xBoBtqIAIQ5gILEAAgAEIANwIAIABCADcCCAsdACAAEDggAEEoahAdIABB0ABqEB0gAEH4AGoQOAuAAgEIfwNAIAAgAmogASACQQN2ai0AACACQQdxdkEBcToAACACQQFqIgJBgAJHDQALA0AgBCIBQQFqIQQCQCAAIAFqIgYtAABFDQAgBCECQQEhBSABQf4BSw0AA0ACQCAAIAJqIgMsAAAiB0UNACAHIAV0IgcgBiwAACIIaiIJQQ9MBEAgBiAJOgAAIANBADoAAAwBCyAIIAdrIgNBcUgNAiAGIAM6AAADQCAAIAJqIgMtAABFBEAgA0EBOgAADAILIANBADoAACACQf8BSSEDIAJBAWohAiADDQALCyAFQQVLDQEgBUEBaiIFIAFqIgJBgAJJDQALCyAEQYACRw0ACwuVAQEEfyMAQTBrIgUkACAAIAFBKGoiAyABEBMgAEEoaiIEIAMgARAWIABB0ABqIgMgACACQShqEAsgBCAEIAIQCyAAQfgAaiIGIAJB+ABqIAFB+ABqEAsgACABQdAAaiACQdAA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CSACQYAIaiQAC/ADAQJ/IwAiAyEEIANBwANrQUBxIgMkACAARSABRXJFBEAgA0FAa0EAQQBBwAAQPhogA0E8aiABKAIwEAogA0FAayADQTxqQgQQGBogA0E8aiABKAIEEAogA0FAayADQTxqQgQQGBogA0E8aiABKAIsEAogA0FAayADQTxqQgQQGBogA0E8aiABKAIoEAogA0FAayADQTxqQgQQGBogA0E8akETEAogA0FAayADQTxqQgQQGBogA0E8aiACEAogA0FAayADQTxqQgQQGBogA0E8aiABKAIMEAogA0FAayADQTxqQgQQGBoCQCABKAIIIgJFDQAgA0FAayACIAE1AgwQGBogAS0AOEEBcUUNACABKAIIIAEoAgwQCSABQQA2AgwLIANBPGogASgCFBAKIANBQGsgA0E8akIEEBgaIAEoAhAiAgRAIANBQGsgAiABNQIUEBgaCyADQTxqIAEoAhwQCiADQUBrIANBPGpCBBAYGgJAIAEoAhgiAkUNACADQUBrIAIgATUCHBAYGiABLQA4QQJxRQ0AIAEoAhggASgCHBAJIAFBADYCHAsgA0E8aiABKAIkEAogA0FAayADQTxqQgQQGBogASgCICICBEAgA0FAayACIAE1AiQQGBoLIANBQGsgAEHAABA9GgsgBCQAC68BAQN/IwBBEGsiAiQAQWohAwJAIABFIAFFcg0AIAFBCnQiBCABbkGACEcNACAAQQwQICIBNgIAIAFFDQAgAUIANwIAQYCYAiACQQxqIAQQsgEiATYCAAJAAkAgAQRAIAJBADYCDAwBCyACKAIMIgENAQsgACgCABAZIABBADYCAAwBCyAAKAIAIAE2AgAgACgCACABNgIEIAAoAgAgBDYCCEEAIQMLIAJBEGokACADC4cBAQJ/IwBB0ABrIgMkAEFnIQICQCAARSABRXINACAAIAAoAhRBA3QQICICNgIEIAJFBEBBaiECDAELIAAgACgCEBC8ASICBEAgACABKAI4EIMBDAELIAMgASAAKAIkELsBIANBQGtBCBAJIAMgABC6ASADQcgAEAlBACECCyADQdAAaiQAIAILkwEBBH8jAEEgayICJAACQCAARQ0AIAAoAhxFDQAgAiABNgIQQQEhBANAIAIgAzoAGEEAIQFBACEFIAQEQANAIAJBADYCHCACIAIpAxg3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ACAAIAEgAiADrSAErUIghoQgBSAGEGoLFwAgACABIAKtIAOtQiCGhCAEIAUQuwILFgAgACABKQAANwAwIAAgASkACDcAOAsYACAAIAEgAiADrSAErUIghoQgBSAGEGsLEwAgACABrSACrUIghoQgAxCSAgsTACAAIAEgAq0gA61CIIaEEJMCCyEAIAAgASACrSADrUIghoQgBK0gBa1CIIaEIAYgBxCUAgsfACAAIAEgAq0gA61CIIaEIAStIAWtQiCGhCAGEIwBCy0AIAAgAa0gAq1CIIaEIAMgBK0gBa1CIIaEIAYgB60gCK1CIIaEIAkgChCVAgsXACAAIAEgAq0gA61CIIaEIAQgBRCzAgsSACAAIAEgAq0gA61CIIaEEDQLEgAgACABIAKtIAOtQiCGhBAlCxkAIAAgASACIAOtIAStQiCGhCAFIAYQlAELFgAgACABKQAANwAgIAAgASkACDcAKAsXACAAIAEgAq0gA61CIIaEIAQgBRC1AgsVACAAIAEgAq0gA61CIIaEIAQQtgILGQAgACABIAKtIAOtQiCGhCAEIAUgBhCVAQsXACAAIAEgAq0gA61CIIaEIAQgBRC4AgsbACAAIAEgAiADrSAErUIghoQgBSAGIAcQlgELGAAgACABIAIgA60gBK1CIIaEIAUgBhBoCxkAIAAgASACrSADrUIghoQgBCAFIAYQlwELFwAgACABIAKtIAOtQiCGhCAEIAUQuQILGwAgACABIAIgA60gBK1CIIaEIAUgBiAHEJgBCxgAIAAgASACIAOtIAStQiCGhCAFIAYQaQsVACAAIAEgAq0gA61CIIaEIAQQwAILFQAgACABIAKtIAOtQiCGhCAEEJoBCyUAIAAgASADIAStIAWtQiCGhCAGIAetIAitQiCGhCAJIAoQyQILJQAgACACIAOtIAStQiCGhCAFIAYgB60gCK1CIIaEIAkgChCcAQslACAAIAEgAiADrSAErUIghoQgBSAGrSAHrUIghoQgCSAKEMsCCycAIAAgASACIAMgBK0gBa1CIIaEIAYgB60gCK1CIIaEIAogCxCdAQslACAAIAEgAyAErSAFrUIghoQgBiAHrSAIrUIghoQgCSAKEM8CCyUAIAAgAiADrSAErUIghoQgBSAGIAetIAitQiCGhCAJIAoQngELJQAgACABIAMgBK0gBa1CIIaEIAYgB60gCK1CIIaEIAkgChDQAgslACAAIAIgA60gBK1CIIaEIAUgBiAHrSAIrUIghoQgCSAKEJ8BCyUAIAAgASACIAOtIAStQiCGhCAFIAatIAetQiCGhCAJIAoQ0QILJwAgACABIAIgAyAErSAFrUIghoQgBiAHrSAIrUIghoQgCiALEKABCyUAIAAgASACIAOtIAStQiCGhCAFIAatIAetQiCGhCAJIAoQ0gILJwAgACABIAIgAyAErSAFrUIghoQgBiAHrSAIrUIghoQgCiALEKEBCwQAQQoLBgBBspcCCwsAIAAgASACEIICCw0AIAAgASACIAMQgwILCAAgABA1QQALCQAgACABEIgCCwsAIAAgASACEIoBCwUAQb9/CwUAQdABCywBAX8jAEFAaiIDJAAgACADECcgASADQsAAIAJBARCHASEAIANBQGskACAACy4BAX8jAEFAaiIEJAAgACAEECcgASACIARCwAAgA0EBEIkBIQAgBEFAayQAIAALewEBfwJAAkACQCADQsAAVA0AIANCQHwiA0K/////D1YNACACIAJBQGsiBSADIAQQhgFFDQEgAEUNACAAQQAgA6cQEBoLQX8hAiABRQ0BIAFCADcDAEF/DwsgAQRAIAEgAzcDAAtBACECIABFDQAgACAFIAOnEEcaCyACC3MBAX8jAEEQayIFJAAgACAFQQhqIABBQGsgAiADpyICEEcgAyAEEIgBGgJAIAUpAwhCwABSBEAgAQRAIAFCADcDAAsgAEEAIAJBQGsQEBpBfyEADAELQQAhACABRQ0AIAEgA0JAfTcDAAsgBUEQaiQAIAALbQEBfyMAQUBqIgIkACACIAFCIBA0GiACIAItAABB+AFxOgAAIAIgAi0AH0E/cUHAAHI6AB8gACACKQMQNwAQIAAgAikDCDcACCAAIAIpAwA3AAAgACACKQMYNwAYIAJBwAAQCSACQUBrJABBAAuGAQECfyMAQYACayICJABBfyEDAkAgARB1DQAgAkHgAGogARCuAQ0AIAJB4ABqEOUCRQ0AIAIQHSACIAIgAkGIAWoiARAWIAJBMGoQHSACQTBqIAJBMGogARATIAIgAhA6IAJBMGogAkEwaiACEAsgACACQTBqEC1BACEDCyACQYACaiQAIAMLLAEBfyMAQSBrIgIkACACQSAQHyAAIAEg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ASACQhB9IAMgBBBqBSAFCwslACACQvD///8PWgRAEBQACyAAQRBqIAAgASACIAMgBBBrGkEACwsAIAAgASACEL8CCy8AIAFCgICAgBBaBEBBACIAQYQOaiAAQZgOakHFASAAQbIOahAAAAsgACABpxAfCzMBAn8jAEEgayIDJABBfyEEIAMgAiABEKgBRQRAIABB4JUCIAMQbSEECyADQSBqJAAgBAtWAQF/IwBBQGoiAyQAIAMgAkIgEDQaIAEgAykDGDcAGCABIAMpAxA3ABAgASADKQMINwAIIAEgAykDADcAACADQcAAEAkgACABEHIhACADQUBrJAAgAAtAAQF/IwBBIGsiBCQAIAQgASACIAMQmgEaIAAgBBCAASEBIAQgAEEgEEUhAyAEQSBqJAAgA0F/IAEgACAERhtyC0MBAX8jAEFAaiICJAAgACACEMICIAEgAikDGDcAGCABIAIpAxA3ABAgASACKQMINwAIIAEgAikDADcAACACQUBrJAALNwEBfyMAQUBqIgIkACAAIAIQJyAAQdABaiIAIAJCwAAQHBogACABECcgAkHAABAJIAJBQGskAAvhAQEDfyMAQcABayICJAAgABA1IAJBQGtBNkGAARAQGiACIAEtAABBNnM6AEBBASEDA0AgAkFAayADaiIEIAQtAAAgASADai0AAHM6AAAgA0EBaiIDQSBHDQALIAAgAkFAa0KAARAcGiAAQdABaiIAEDUgAkFAa0HcAEGAARAQGiACIAEtAABB3ABzOgBAQQEhAwNAIAJBQGsgA2oiBCAELQAAIAEgA2otAABzOgAAIANBAWoiA0EgRw0ACyAAIAJBQGtCgAEQHBogAkFAa0GAARAJIAJBwAAQCSACQcABaiQAC2YBAX4gACkAACIBQjiGIAFCKIZCgICAgICAwP8Ag4QgAUIYhkKAgICAgOA/gyABQgiGQoCAgIDwH4OEhCABQgiIQoCAgPgPgyABQhiIQoCA/AeDhCABQiiIQoD+A4MgAUI4iISEhAsmAQJ/AkBBpJwCKAIAIgBFDQAgACgCFCIARQ0AIAARAQAhAQsgAQtkACAAIAFCKIZCgICAgICAwP8AgyABQjiGhCABQhiGQoCAgICA4D+DIAFCCIZCgICAgPAfg4SEIAFCCIhCgICA+A+DIAFCGIhCgID8B4OEIAFCKIhCgP4D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BiADakENEAggDXMiDSAGakESEAggBXMhBSAaQRJJIRAgGkECaiEaIBANAAsgACACQeXwwYsGahAKIABBBGogByASahAKIABBCGogCCATahAKIABBDGogESAUahAKIABBEGogCSAVahAKIABBFGogDkHuyIGZA2oQCiAAQRhqIAogG2oQCiAAQRxqIAsgHGoQCiAAQSBqIAwgHWoQCiAAQSRqIA8gHmoQCiAAQShqIAFBstqIywdqEAogAEEsaiAEIBZqEAogAEEwaiADIBdqEAogAEE0aiAGIBhqEAogAEE4aiANIBlqEAogAEE8aiAFQfTKgdkGahAKCzoBAX8jAEHgAGsiAyQAIANBMGogAiABEBMgAyACIAEQFiADIAMQOiAAIANBMGogAxALIANB4ABqJAALdgECfyMAQdABayICJAADQCAAIANqIAEgA2otAAA6AAAgA0EBaiIDQSBHDQALIAAgAC0AAEH4AXE6AAAgACAALQAfQT9xQcAAcjoAHyACQTBqIAAQdiACIAJB2ABqIAJBgAFqENwCIAAgAhAtIAJB0AFqJABBAAu9AwEMfiABNAIEIQIgATQCCCEDIAE0AgwhBCABNAIQIQUgATQCFCEGIAE0AhghByABNAIAIQsgACABNAIkQsK2B34iCCAIQoCAgAh8IghCgICA8A+DfSABNAIgQsK2B34gATQCHELCtgd+IglCgICACHwiCkIZh3wiDEKAgIAQfCINQhqIfD4CJCAAIAwgDUKAgIDgD4N9PgIgIAAgCSAKQoCAgPAPg30gB0LCtgd+IAZCwrYHfiIGQoCAgAh8IgdCGYd8IglCgICAEHwiCkIaiHw+AhwgACAJIApCgICA4A+DfT4CGCAAIAYgB0KAgIDwD4N9IAVCwrYHfiAEQsK2B34iBEKAgIAIfCIFQhmHfCIGQoCAgBB8IgdCGoh8PgIUIAAgBiAHQoCAgOAPg30+AhAgACAEIAVCgICA8A+DfSADQsK2B34gAkLCtgd+IgJCgICACHwiA0IZh3wiBEKAgIAQfCIFQhqIfD4CDCAAIAQgBUKAgIDgD4N9PgIIIAAgAiADQoCAgPAPg30gCEIZh0ITfiALQsK2B358IgJCgICAEHwiA0IaiHw+AgQgACACIANCgICA4A+DfT4CAAvcAQEFfyMAQRBrIgNBADYACyADQQA2AggDQCAAIAJqLQAAIQRBACEBA0AgA0EIaiABaiIFIAUtAAAgAUEFdEGgjQJqIAJqLQAAIARzcjoAACABQQFqIgFBB0cNAAsgAkEBaiICQR9HDQALIAAtAB9B/wBxIQJBACEAQQAhAQNAIANBCGogAWoiBCAELQAAIAIgAUEFdEG/jQJqLQAAc3I6AAAgAUEBaiIBQQdHDQALQQAhAQNAIANBCGogAGotAABBAWsgAXIhASAAQQFqIgBBB0cNAAsgAUEIdkEBcQvcBAEDfyMAQdACayIDJABBfyEEIAIQ3wJFBEBBACEEA0AgACAEaiABIARqLQAAOgAAIARBAWoiBEEgRw0ACyAAIAAtAABB+AFxOgAAIAAgAC0AH0E/cUHAAHI6AB8gA0GgAmogAhB7IANB8AFqEB0gA0HAAWoQOCADQZABaiADQaACahAsIANB4ABqEB1B/gEhAkEAIQQDQCADQfABaiADQZABaiAAIAIiBUEDdmotAAAgAkEHcXZBAXEiASAEcyIEEE4gA0HAAWogA0HgAGogBBBOIAJBAWshAiADQTBqIANBkAFqIANB4ABqEBYgAyADQfABaiADQcABahAWIANB8AFqIANB8AFqIANBwAFqEBMgA0HAAWogA0GQAWogA0HgAGoQEyADQeAAaiADQTBqIANB8AFqEAsgA0HAAWogA0HAAWogAxALIANBMGogAxAOIAMgA0HwAWoQDiADQZABaiADQeAAaiADQcABahATIANBwAFqIANB4ABqIANBwAFqEBYgA0HwAWogAyADQTBqEAsgAyADIANBMGoQFiADQcABaiADQcABahAOIANB4ABqIAMQ3gIgA0GQAWogA0GQAWoQDiADQTBqIANBMGogA0HgAGoQEyADQeAAaiADQaACaiADQcABahALIANBwAFqIAMgA0EwahALIAEhBCAFDQALIANB8AFqIANBkAFqIAEQTiADQcABaiADQeAAaiABEE4gA0HAAWogA0HAAWoQOiADQfABaiADQfABaiADQcABahALIAAgA0HwAWoQLUEAIQQLIANB0AJqJAAgBAtUAQV/QSAhAUEBIQIDQCAAIAFBAWsiAWotAAAiBCABQYAbai0AACIFa0EIdSACcSADQf8BcXIhAyAEIAVzQf//A2pBCHYgAnEhAiABDQALIANBAEcL6B4BOn4gARAPIRIg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CiAAIAtC////AIMgBEIVh3wiBkIKiDwAESAAIAZCAog8ABAgACAEQv///wCDIgdCAYYgBUIUiIQ8AA0gACAMQv///wCDIAZCFYd8IgRCDYg8ABQgACAEQgWIPAATIAAgBkL///8AgyIFQgaGIAdCD4iEPAAPIAAgDkL///8AgyAEQhWHfCIGPAAVIAAgBEIDhiAFQhKIhDwAEiAAIAZCCIg8ABYgACAPQv///wCDIAZCFYd8IgRCC4g8ABkgACAEQgOIPAAYIAAgEEL///8AgyAEQhWHfCIFQgaIPAAbIAAgBkIQiEIfgyAEQv///wCDIgRCBYaEPAAXIAAgDUL///8AgyAFQhWHfCIGQhGIPAAfIAAgBkIJiDwAHiAAIAZCAYg8AB0gACAFQv///wCDIgVCAoYgBEITiIQ8ABogACAGQgeGIAVCDoiEPAAcC1IBA38gAC0AH0F/c0H/AHEhAUEeIQIDQCABIAAgAmotAABBf3NyIQEgAkEBayIDIQIgAw0ACyABQf8BcUEBa0HsASAALQAAa3FBCHZBf3NBAXELjAQBAn8jAEHgDWsiAiQAIAJB4ANqIAEQGyACQcACaiABEE8gAiACQcACahAVIAJBwAJqIAIgAkHgA2oQGiACQaABaiACQcACahAVIAJBgAVqIgEgAkGgAWoQGyACQcACaiACIAEQGiACQaABaiACQcACahAVIAJBoAZqIgEgAkGgAWoQGyACQcACaiACIAEQGiACQaABaiACQcACahAVIAJBwAdqIgEgAkGgAWoQGyACQcACaiACIAEQGiACQaABaiACQcACahAVIAJB4AhqIgEgAkGgAWoQGyACQcACaiACIAEQGiACQaABaiACQcACahAVIAJBgApqIgEgAkGgAWoQGyACQcACaiACIAEQGiACQaABaiACQcACahAVIAJBoAtqIgEgAkGgAWoQGyACQcACaiACIAEQGiACQaABaiACQcACahAVIAJBwAxqIAJBoAFqEBsgABCrAUH8ASEBA0AgAkHAAmogABBPAkAgASIDQaCLAmosAAAiAUEBTgRAIAJBoAFqIAJBwAJqEBUgAkHAAmogAkGgAWogAkHgA2ogAUH+AXFBAXZBoAFsahAaDAELIAFBf0oNACACQaABaiACQcACahAVIAJBwAJqIAJBoAFqIAJB4ANqQQAgAWtB/gFx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/////////3/t////////////////////////////////////////f+7///////////////////////////////////////9/7dP1XBpjEljWnPei3vneFABBnxsL/PABEIU7jAG98ST/+CXDAWDcNwC3TD7/w0I9ADJMpAHhpEz/TD2j/3U+HwBRkUD/dkEOAKJz1v8Gii4AfOb0/wqKjwA0GsIAuPRMAIGPKQG+9BP/e6p6/2KBRAB51ZMAVmUe/6FnmwCMWUP/7+W+AUMLtQDG8In+7kW8/+pxPP8l/zn/RbK2/oDQswB2Gn3+AwfW//EyTf9Vy8X/04f6/xkwZP+71bT+EVhpAFPRngEFc2IABK48/qs3bv/ZtRH/FLyqAJKcZv5X1q7/cnqbAeksqgB/CO8B1uzqAK8F2wAxaj3/BkLQ/wJqbv9R6hP/12vA/0OX7gATKmz/5VVxATJEh/8RagkAMmcB/1ABqAEjmB7/EKi5AThZ6P9l0vwAKfpHAMyqT/8OLu//UE3vAL3WS/8RjfkAJlBM/75VdQBW5KoAnNjQAcPPpP+WQkz/r+EQ/41QYgFM2/IAxqJyAC7amACbK/H+m6Bo/7IJ/P5kbtQADgWnAOnvo/8cl50BZZIK//6eRv5H+eQAWB4yAEQ6oP+/GGgBgUKB/8AyVf8Is4r/JvrJAHNQoACD5nEAfViTAFpExwD9TJ4AHP92AHH6/gBCSy4A5torAOV4ugGURCsAiHzuAbtrxf9UNfb/M3T+/zO7pQACEa8AQlSgAfc6HgAjQTX+Rey/AC2G9QGje90AIG4U/zQXpQC61kcA6bBgAPLvNgE5WYoAUwBU/4igZABcjnj+aHy+ALWxPv/6KVUAmIIqAWD89gCXlz/+74U+ACA4nAAtp73/joWzAYNW0wC7s5b++qoO/0RxFf/eujv/QgfxAUUGSABWnGz+N6dZAG002/4NsBf/xCxq/++VR/+kjH3/n60BADMp5wCRPiEAim9dAblTRQCQcy4AYZcQ/xjkGgAx2eIAcUvq/sGZDP+2MGD/Dg0aAIDD+f5FwTsAhCVR/n1qPADW8KkBpONCANKjTgAlNJcAY00aAO6c1f/VwNEBSS5UABRBKQE2zk8AyYOS/qpvGP+xITL+qybL/073dADR3ZkAhYCyATosGQDJJzsBvRP8ADHl0gF1u3UAtbO4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ANW7ff/oLjz/vnQq/peyE/8zPu3+zOzBAMLoPACsIp3/vRC4/mcDX/+N6ST+KRkL/xXDpgB29S0AQ9WV/58MEv+7pOMBoBkFAAxOwwErxeEAMI4p/sSbPP/fxxIBkYicAPx1qf6R4u4A7xdrAG21vP/mcDH+Sart/+e34/9Q3BQAwmt/AX/NZQAuNMUB0qsk/1gDWv84l40AYLv//ypOyAD+RkYB9H2oAMxEigF810YAZkLI/hE05AB13I/+y/h7ADgSrv+6l6T/M+jQAaDkK//5HRkBRL4/AA0AAAAA/wAAAAD1AAAAAAAA+wAAAAAAAP0AAAAA8wAAAAAHAAAAAAADAAAAAPMAAAAABQAAAAAAAAAACwAAAAAACwAAAADzAAAAAAAA/QAAAAAA/wAAAAADAAAAAPUAAAAAAAAADwAAAAAA/wAAAAD/AAAAAAcAAAAABQBBnI0CCwEBAEHAjQILAQEAQeCNAgugAeDrenw7QbiuFlbj+vGfxGraCY3rnDKx/YZiBRZfSbgAX5yVvKNQjCSx0LFVnIPvWwREXMRYHI6G2CJO3dCfEVfs////////////////////////////////////////f+3///////////////////////////////////////9/7v///////////////////////////////////////38AQaCPAgvBBQjJvPNn5glqO6fKhIWuZ7sr+JT+cvNuPPE2HV869U+l0YLmrX9SDlEfbD4rjGgFm2u9Qfur2YMfeSF+ExnN4FsirijXmC+KQs1l7yORRDdxLztN7M/7wLW824mBpdu16Ti1SPNbwlY5GdAFtvER8VmbTxmvpII/khiBbdrVXhyrQgIDo5iqB9i+b3BFAVuDEoyy5E6+hTEk4rT/1cN9DFVviXvydF2+crGWFjv+sd6ANRLHJacG3JuUJmnPdPGbwdJK8Z7BaZvk4yVPOIZHvu+11YyLxp3BD2WcrHfMoQwkdQIrWW8s6S2D5KZuqoR0StT7Qb3cqbBctVMRg9qI+Xar32buUlE+mBAytC1txjGoPyH7mMgnA7DkDu++x39Zv8KPqD3zC+DGJacKk0eRp9VvggPgUWPKBnBuDgpnKSkU/C/SRoUKtycmySZcOCEbLu0qxFr8bSxN37OVnRMNOFPeY6+LVHMKZaiydzy7Cmp25q7tRy7JwoE7NYIUhSxykmQD8Uyh6L+iATBCvEtmGqiRl/jQcItLwjC+VAajUWzHGFLv1hnoktEQqWVVJAaZ1iogcVeFNQ70uNG7MnCgahDI0NK4FsGkGVOrQVEIbDcemeuO30x3SCeoSJvhtbywNGNaycWzDBw5y4pB40qq2E5z42N3T8qcW6O4stbzby5o/LLvXe6Cj3RgLxdDb2OleHKr8KEUeMiE7DlkGggCx4woHmMj+v++kOm9gt7rbFCkFXnGsvej+b4rU3Lj8nhxxpxhJurOPifKB8LAIce4htEe6+DN1n3a6njRbu5/T331um8Xcqpn8AammMiixX1jCq4N+b4EmD8RG0ccEzULcRuEfQQj9XfbKJMkx0B7q8oyvL7JFQq+njxMDRCcxGcdQ7ZCPsu+1MVMKn5l/Jwpf1ns+tY6q2/LXxdYR0qMGURsgABB8JUCC4UBYjY0X3BvcyA8PSBiNjRfbGVuAHNvZGl1bS9jb2RlY3MuYwBzb2RpdW1fYmluMmJhc2U2NAAkYXJnb24yaWQAJGFyZ29uMmkAJHY9ACRtPQAsdD0ALHA9ACRhcmdvbjJpZCR2PQAkYXJnb24yaSR2PQAkYXJnb24yaWQkACRhcmdvbjJpJABBkJcCCyhTaWdFZDI1NTE5IG5vIEVkMjU1MTkgY29sbGlzaW9ucwEAMS4wLjE4AEG8lwILOVCOUAAAQAAAAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQ==";function nA(A){try{if(A==tA&&h)return new Uint8Array(h);var g=kA(A);if(g)return g;if(c)return c(A);throw"both async and sync fetching of the wasm failed"}catch(A){$(A)}}function iA(){if(!h&&(t||n)){if("function"==typeof fetch&&!rA(tA))return fetch(tA,{credentials:"same-origin"}).then((function(A){if(!A.ok)throw"failed to load wasm binary file at '"+tA+"'";return A.arrayBuffer()})).catch((function(){return nA(tA)}));if(C)return new Promise((function(A,g){C(tA,(function(g){A(new Uint8Array(g))}),g)}))}return Promise.resolve().then((function(){return nA(tA)}))}function oA(){var A={a:GA};function g(A,g){var I=A.exports;r.asm=I,M((f=r.asm.g).buffer),N=r.asm.h,z()}function I(A){g(A.instance)}function e(g){return iA().then((function(g){return WebAssembly.instantiate(g,A)})).then(g,(function(A){p("failed to asynchronously prepare wasm: "+A),$(A)}))}if(Z(),r.instantiateWasm)try{return r.instantiateWasm(A,g)}catch(A){return p("Module.instantiateWasm callback failed with error: "+A),!1}return h||"function"!=typeof WebAssembly.instantiateStreaming||IA(tA)||rA(tA)||"function"!=typeof fetch?e(I):fetch(tA,{credentials:"same-origin"}).then((function(g){return WebAssembly.instantiateStreaming(g,A).then(I,(function(A){return p("wasm streaming compile failed: "+A),p("falling back to ArrayBuffer instantiation"),e(I)}))})),{}}IA(tA)||(tA=_(tA));var QA={1024:function(){return r.getRandomValue()},1062:function(){if(void 0===r.getRandomValue)try{var A="object"==typeof window?window:self,g=void 0!==A.crypto?A.crypto:A.msCrypto,I=function(){var A=new Uint32Array(1);return g.getRandomValues(A),A[0]>>>0};I(),r.getRandomValue=I}catch(A){try{var e=require("crypto"),a=function(){var A=e.randomBytes(4);return(A[0]<<24|A[1]<<16|A[2]<<8|A[3])>>>0};a(),r.getRandomValue=a}catch(A){throw"No secure random number generator found"}}}};function CA(A){for(;A.length>0;){var g=A.shift();if("function"!=typeof g){var I=g.func;"number"==typeof I?void 0===g.arg?N.get(I)():N.get(I)(g.arg):I(void 0===g.arg?null:g.arg)}else g(r)}}function cA(A,g,I,e){$("Assertion failed: "+S(A)+", at: "+[g?S(g):"unknown filename",I,e?S(e):"unknown function"])}function EA(){$()}function sA(A,g,I){var e=wA(g,I);return QA[A].apply(null,e)}function yA(A,g,I){b.copyWithin(A,g,g+I)}function _A(){return b.length}function hA(A){try{return f.grow(A-v.byteLength+65535>>>16),M(f.buffer),1}catch(A){}}function fA(A){A>>>=0;var g=_A(),I=2147483648;if(A>I)return!1;for(var e=1;e<=4;e*=2){var r=g*(1+.2/e);if(r=Math.min(r,A+100663296),hA(Math.min(I,U(Math.max(16777216,A,r),65536))))return!0}return!1}function pA(A){return F[YA()>>2]=A,A}function uA(A){switch(A){case 30:return 16384;case 85:return 131072;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:case 80:case 81:case 79:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return pA(28),-1}var lA=[];function wA(A,g){var I;for(lA.length=0,g>>=2;I=b[A++];){var e=I<105;e&&1&g&&g++,lA.push(e?m[g++>>1]:F[g]),++g}return lA}var DA=!1;function vA(A){for(var g=[],I=0;I<A.length;I++){var e=A[I];e>255&&(DA&&D(!1,"Character code "+e+" ("+String.fromCharCode(e)+")  at offset "+I+" not in 0x00-0xFF."),e&=255),g.push(String.fromCharCode(e))}return g.join("")}var dA="function"==typeof atob?atob:function(A){var g,I,e,r,a,B,t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="",i=0;A=A.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{g=t.indexOf(A.charAt(i++))<<2|(r=t.indexOf(A.charAt(i++)))>>4,I=(15&r)<<4|(a=t.indexOf(A.charAt(i++)))>>2,e=(3&a)<<6|(B=t.indexOf(A.charAt(i++))),n+=String.fromCharCode(g),64!==a&&(n+=String.fromCharCode(I)),64!==B&&(n+=String.fromCharCode(e))}while(i<A.length);return n};function bA(A){if("boolean"==typeof i&&i){var g;try{g=Buffer.from(A,"base64")}catch(I){g=new Buffer(A,"base64")}return new Uint8Array(g.buffer,g.byteOffset,g.byteLength)}try{for(var I=dA(A),e=new Uint8Array(I.length),r=0;r<I.length;++r)e[r]=I.charCodeAt(r);return e}catch(A){throw new Error("Converting base64 string to bytes failed.")}}function kA(A){if(IA(A))return bA(A.slice(gA.length))}var FA,GA={a:cA,c:EA,b:sA,e:yA,f:fA,d:uA},mA=(oA(),r.___wasm_call_ctors=function(){return(mA=r.___wasm_call_ctors=r.asm.i).apply(null,arguments)}),YA=(r._crypto_aead_chacha20poly1305_encrypt_detached=function(){return(r._crypto_aead_chacha20poly1305_encrypt_detached=r.asm.j).apply(null,arguments)},r._crypto_aead_chacha20poly1305_encrypt=function(){return(r._crypto_aead_chacha20poly1305_encrypt=r.asm.k).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_encrypt_detached=function(){return(r._crypto_aead_chacha20poly1305_ietf_encrypt_detached=r.asm.l).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_encrypt=function(){return(r._crypto_aead_chacha20poly1305_ietf_encrypt=r.asm.m).apply(null,arguments)},r._crypto_aead_chacha20poly1305_decrypt_detached=function(){return(r._crypto_aead_chacha20poly1305_decrypt_detached=r.asm.n).apply(null,arguments)},r._crypto_aead_chacha20poly1305_decrypt=function(){return(r._crypto_aead_chacha20poly1305_decrypt=r.asm.o).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_decrypt_detached=function(){return(r._crypto_aead_chacha20poly1305_ietf_decrypt_detached=r.asm.p).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_decrypt=function(){return(r._crypto_aead_chacha20poly1305_ietf_decrypt=r.asm.q).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_keybytes=function(){return(r._crypto_aead_chacha20poly1305_ietf_keybytes=r.asm.r).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_npubbytes=function(){return(r._crypto_aead_chacha20poly1305_ietf_npubbytes=r.asm.s).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_nsecbytes=function(){return(r._crypto_aead_chacha20poly1305_ietf_nsecbytes=r.asm.t).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_abytes=function(){return(r._crypto_aead_chacha20poly1305_ietf_abytes=r.asm.u).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_messagebytes_max=function(){return(r._crypto_aead_chacha20poly1305_ietf_messagebytes_max=r.asm.v).apply(null,arguments)},r._crypto_aead_chacha20poly1305_ietf_keygen=function(){return(r._crypto_aead_chacha20poly1305_ietf_keygen=r.asm.w).apply(null,arguments)},r._crypto_aead_chacha20poly1305_keybytes=function(){return(r._crypto_aead_chacha20poly1305_keybytes=r.asm.x).apply(null,arguments)},r._crypto_aead_chacha20poly1305_npubbytes=function(){return(r._crypto_aead_chacha20poly1305_npubbytes=r.asm.y).apply(null,arguments)},r._crypto_aead_chacha20poly1305_nsecbytes=function(){return(r._crypto_aead_chacha20poly1305_nsecbytes=r.asm.z).apply(null,arguments)},r._crypto_aead_chacha20poly1305_abytes=function(){return(r._crypto_aead_chacha20poly1305_abytes=r.asm.A).apply(null,arguments)},r._crypto_aead_chacha20poly1305_messagebytes_max=function(){return(r._crypto_aead_chacha20poly1305_messagebytes_max=r.asm.B).apply(null,arguments)},r._crypto_aead_chacha20poly1305_keygen=function(){return(r._crypto_aead_chacha20poly1305_keygen=r.asm.C).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_encrypt_detached=function(){return(r._crypto_aead_xchacha20poly1305_ietf_encrypt_detached=r.asm.D).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_encrypt=function(){return(r._crypto_aead_xchacha20poly1305_ietf_encrypt=r.asm.E).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_decrypt_detached=function(){return(r._crypto_aead_xchacha20poly1305_ietf_decrypt_detached=r.asm.F).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_decrypt=function(){return(r._crypto_aead_xchacha20poly1305_ietf_decrypt=r.asm.G).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_keybytes=function(){return(r._crypto_aead_xchacha20poly1305_ietf_keybytes=r.asm.H).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_npubbytes=function(){return(r._crypto_aead_xchacha20poly1305_ietf_npubbytes=r.asm.I).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_nsecbytes=function(){return(r._crypto_aead_xchacha20poly1305_ietf_nsecbytes=r.asm.J).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_abytes=function(){return(r._crypto_aead_xchacha20poly1305_ietf_abytes=r.asm.K).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_messagebytes_max=function(){return(r._crypto_aead_xchacha20poly1305_ietf_messagebytes_max=r.asm.L).apply(null,arguments)},r._crypto_aead_xchacha20poly1305_ietf_keygen=function(){return(r._crypto_aead_xchacha20poly1305_ietf_keygen=r.asm.M).apply(null,arguments)},r._crypto_auth_bytes=function(){return(r._crypto_auth_bytes=r.asm.N).apply(null,arguments)},r._crypto_auth_keybytes=function(){return(r._crypto_auth_keybytes=r.asm.O).apply(null,arguments)},r._crypto_auth=function(){return(r._crypto_auth=r.asm.P).apply(null,arguments)},r._crypto_auth_verify=function(){return(r._crypto_auth_verify=r.asm.Q).apply(null,arguments)},r._crypto_auth_keygen=function(){return(r._crypto_auth_keygen=r.asm.R).apply(null,arguments)},r._crypto_box_seedbytes=function(){return(r._crypto_box_seedbytes=r.asm.S).apply(null,arguments)},r._crypto_box_publickeybytes=function(){return(r._crypto_box_publickeybytes=r.asm.T).apply(null,arguments)},r._crypto_box_secretkeybytes=function(){return(r._crypto_box_secretkeybytes=r.asm.U).apply(null,arguments)},r._crypto_box_beforenmbytes=function(){return(r._crypto_box_beforenmbytes=r.asm.V).apply(null,arguments)},r._crypto_box_noncebytes=function(){return(r._crypto_box_noncebytes=r.asm.W).apply(null,arguments)},r._crypto_box_macbytes=function(){return(r._crypto_box_macbytes=r.asm.X).apply(null,arguments)},r._crypto_box_messagebytes_max=function(){return(r._crypto_box_messagebytes_max=r.asm.Y).apply(null,arguments)},r._crypto_box_seed_keypair=function(){return(r._crypto_box_seed_keypair=r.asm.Z).apply(null,arguments)},r._crypto_box_keypair=function(){return(r._crypto_box_keypair=r.asm._).apply(null,arguments)},r._crypto_box_beforenm=function(){return(r._crypto_box_beforenm=r.asm.$).apply(null,arguments)},r._crypto_box_detached_afternm=function(){return(r._crypto_box_detached_afternm=r.asm.aa).apply(null,arguments)},r._crypto_box_detached=function(){return(r._crypto_box_detached=r.asm.ba).apply(null,arguments)},r._crypto_box_easy_afternm=function(){return(r._crypto_box_easy_afternm=r.asm.ca).apply(null,arguments)},r._crypto_box_easy=function(){return(r._crypto_box_easy=r.asm.da).apply(null,arguments)},r._crypto_box_open_detached_afternm=function(){return(r._crypto_box_open_detached_afternm=r.asm.ea).apply(null,arguments)},r._crypto_box_open_detached=function(){return(r._crypto_box_open_detached=r.asm.fa).apply(null,arguments)},r._crypto_box_open_easy_afternm=function(){return(r._crypto_box_open_easy_afternm=r.asm.ga).apply(null,arguments)},r._crypto_box_open_easy=function(){return(r._crypto_box_open_easy=r.asm.ha).apply(null,arguments)},r._crypto_box_seal=function(){return(r._crypto_box_seal=r.asm.ia).apply(null,arguments)},r._crypto_box_seal_open=function(){return(r._crypto_box_seal_open=r.asm.ja).apply(null,arguments)},r._crypto_box_sealbytes=function(){return(r._crypto_box_sealbytes=r.asm.ka).apply(null,arguments)},r._crypto_generichash_bytes_min=function(){return(r._crypto_generichash_bytes_min=r.asm.la).apply(null,arguments)},r._crypto_generichash_bytes_max=function(){return(r._crypto_generichash_bytes_max=r.asm.ma).apply(null,arguments)},r._crypto_generichash_bytes=function(){return(r._crypto_generichash_bytes=r.asm.na).apply(null,arguments)},r._crypto_generichash_keybytes_min=function(){return(r._crypto_generichash_keybytes_min=r.asm.oa).apply(null,arguments)},r._crypto_generichash_keybytes_max=function(){return(r._crypto_generichash_keybytes_max=r.asm.pa).apply(null,arguments)},r._crypto_generichash_keybytes=function(){return(r._crypto_generichash_keybytes=r.asm.qa).apply(null,arguments)},r._crypto_generichash_statebytes=function(){return(r._crypto_generichash_statebytes=r.asm.ra).apply(null,arguments)},r._crypto_generichash=function(){return(r._crypto_generichash=r.asm.sa).apply(null,arguments)},r._crypto_generichash_init=function(){return(r._crypto_generichash_init=r.asm.ta).apply(null,arguments)},r._crypto_generichash_update=function(){return(r._crypto_generichash_update=r.asm.ua).apply(null,arguments)},r._crypto_generichash_final=function(){return(r._crypto_generichash_final=r.asm.va).apply(null,arguments)},r._crypto_generichash_keygen=function(){return(r._crypto_generichash_keygen=r.asm.wa).apply(null,arguments)},r._crypto_hash_bytes=function(){return(r._crypto_hash_bytes=r.asm.xa).apply(null,arguments)},r._crypto_hash=function(){return(r._crypto_hash=r.asm.ya).apply(null,arguments)},r._crypto_kdf_bytes_min=function(){return(r._crypto_kdf_bytes_min=r.asm.za).apply(null,arguments)},r._crypto_kdf_bytes_max=function(){return(r._crypto_kdf_bytes_max=r.asm.Aa).apply(null,arguments)},r._crypto_kdf_contextbytes=function(){return(r._crypto_kdf_contextbytes=r.asm.Ba).apply(null,arguments)},r._crypto_kdf_keybytes=function(){return(r._crypto_kdf_keybytes=r.asm.Ca).apply(null,arguments)},r._crypto_kdf_derive_from_key=function(){return(r._crypto_kdf_derive_from_key=r.asm.Da).apply(null,arguments)},r._crypto_kdf_keygen=function(){return(r._crypto_kdf_keygen=r.asm.Ea).apply(null,arguments)},r._crypto_kx_seed_keypair=function(){return(r._crypto_kx_seed_keypair=r.asm.Fa).apply(null,arguments)},r._crypto_kx_keypair=function(){return(r._crypto_kx_keypair=r.asm.Ga).apply(null,arguments)},r._crypto_kx_client_session_keys=function(){return(r._crypto_kx_client_session_keys=r.asm.Ha).apply(null,arguments)},r._crypto_kx_server_session_keys=function(){return(r._crypto_kx_server_session_keys=r.asm.Ia).apply(null,arguments)},r._crypto_kx_publickeybytes=function(){return(r._crypto_kx_publickeybytes=r.asm.Ja).apply(null,arguments)},r._crypto_kx_secretkeybytes=function(){return(r._crypto_kx_secretkeybytes=r.asm.Ka).apply(null,arguments)},r._crypto_kx_seedbytes=function(){return(r._crypto_kx_seedbytes=r.asm.La).apply(null,arguments)},r._crypto_kx_sessionkeybytes=function(){return(r._crypto_kx_sessionkeybytes=r.asm.Ma).apply(null,arguments)},r._crypto_pwhash_alg_argon2i13=function(){return(r._crypto_pwhash_alg_argon2i13=r.asm.Na).apply(null,arguments)},r._crypto_pwhash_alg_argon2id13=function(){return(r._crypto_pwhash_alg_argon2id13=r.asm.Oa).apply(null,arguments)},r._crypto_pwhash_alg_default=function(){return(r._crypto_pwhash_alg_default=r.asm.Pa).apply(null,arguments)},r._crypto_pwhash_bytes_min=function(){return(r._crypto_pwhash_bytes_min=r.asm.Qa).apply(null,arguments)},r._crypto_pwhash_bytes_max=function(){return(r._crypto_pwhash_bytes_max=r.asm.Ra).apply(null,arguments)},r._crypto_pwhash_passwd_min=function(){return(r._crypto_pwhash_passwd_min=r.asm.Sa).apply(null,arguments)},r._crypto_pwhash_passwd_max=function(){return(r._crypto_pwhash_passwd_max=r.asm.Ta).apply(null,arguments)},r._crypto_pwhash_saltbytes=function(){return(r._crypto_pwhash_saltbytes=r.asm.Ua).apply(null,arguments)},r._crypto_pwhash_strbytes=function(){return(r._crypto_pwhash_strbytes=r.asm.Va).apply(null,arguments)},r._crypto_pwhash_strprefix=function(){return(r._crypto_pwhash_strprefix=r.asm.Wa).apply(null,arguments)},r._crypto_pwhash_opslimit_min=function(){return(r._crypto_pwhash_opslimit_min=r.asm.Xa).apply(null,arguments)},r._crypto_pwhash_opslimit_max=function(){return(r._crypto_pwhash_opslimit_max=r.asm.Ya).apply(null,arguments)},r._crypto_pwhash_memlimit_min=function(){return(r._crypto_pwhash_memlimit_min=r.asm.Za).apply(null,arguments)},r._crypto_pwhash_memlimit_max=function(){return(r._crypto_pwhash_memlimit_max=r.asm._a).apply(null,arguments)},r._crypto_pwhash_opslimit_interactive=function(){return(r._crypto_pwhash_opslimit_interactive=r.asm.$a).apply(null,arguments)},r._crypto_pwhash_memlimit_interactive=function(){return(r._crypto_pwhash_memlimit_interactive=r.asm.ab).apply(null,arguments)},r._crypto_pwhash_opslimit_moderate=function(){return(r._crypto_pwhash_opslimit_moderate=r.asm.bb).apply(null,arguments)},r._crypto_pwhash_memlimit_moderate=function(){return(r._crypto_pwhash_memlimit_moderate=r.asm.cb).apply(null,arguments)},r._crypto_pwhash_opslimit_sensitive=function(){return(r._crypto_pwhash_opslimit_sensitive=r.asm.db).apply(null,arguments)},r._crypto_pwhash_memlimit_sensitive=function(){return(r._crypto_pwhash_memlimit_sensitive=r.asm.eb).apply(null,arguments)},r._crypto_pwhash=function(){return(r._crypto_pwhash=r.asm.fb).apply(null,arguments)},r._crypto_pwhash_str=function(){return(r._crypto_pwhash_str=r.asm.gb).apply(null,arguments)},r._crypto_pwhash_str_alg=function(){return(r._crypto_pwhash_str_alg=r.asm.hb).apply(null,arguments)},r._crypto_pwhash_str_verify=function(){return(r._crypto_pwhash_str_verify=r.asm.ib).apply(null,arguments)},r._crypto_pwhash_str_needs_rehash=function(){return(r._crypto_pwhash_str_needs_rehash=r.asm.jb).apply(null,arguments)},r._crypto_scalarmult_base=function(){return(r._crypto_scalarmult_base=r.asm.kb).apply(null,arguments)},r._crypto_scalarmult=function(){return(r._crypto_scalarmult=r.asm.lb).apply(null,arguments)},r._crypto_scalarmult_bytes=function(){return(r._crypto_scalarmult_bytes=r.asm.mb).apply(null,arguments)},r._crypto_scalarmult_scalarbytes=function(){return(r._crypto_scalarmult_scalarbytes=r.asm.nb).apply(null,arguments)},r._crypto_secretbox_keybytes=function(){return(r._crypto_secretbox_keybytes=r.asm.ob).apply(null,arguments)},r._crypto_secretbox_noncebytes=function(){return(r._crypto_secretbox_noncebytes=r.asm.pb).apply(null,arguments)},r._crypto_secretbox_macbytes=function(){return(r._crypto_secretbox_macbytes=r.asm.qb).apply(null,arguments)},r._crypto_secretbox_messagebytes_max=function(){return(r._crypto_secretbox_messagebytes_max=r.asm.rb).apply(null,arguments)},r._crypto_secretbox_keygen=function(){return(r._crypto_secretbox_keygen=r.asm.sb).apply(null,arguments)},r._crypto_secretbox_detached=function(){return(r._crypto_secretbox_detached=r.asm.tb).apply(null,arguments)},r._crypto_secretbox_easy=function(){return(r._crypto_secretbox_easy=r.asm.ub).apply(null,arguments)},r._crypto_secretbox_open_detached=function(){return(r._crypto_secretbox_open_detached=r.asm.vb).apply(null,arguments)},r._crypto_secretbox_open_easy=function(){return(r._crypto_secretbox_open_easy=r.asm.wb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_keygen=function(){return(r._crypto_secretstream_xchacha20poly1305_keygen=r.asm.xb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_init_push=function(){return(r._crypto_secretstream_xchacha20poly1305_init_push=r.asm.yb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_init_pull=function(){return(r._crypto_secretstream_xchacha20poly1305_init_pull=r.asm.zb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_rekey=function(){return(r._crypto_secretstream_xchacha20poly1305_rekey=r.asm.Ab).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_push=function(){return(r._crypto_secretstream_xchacha20poly1305_push=r.asm.Bb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_pull=function(){return(r._crypto_secretstream_xchacha20poly1305_pull=r.asm.Cb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_statebytes=function(){return(r._crypto_secretstream_xchacha20poly1305_statebytes=r.asm.Db).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_abytes=function(){return(r._crypto_secretstream_xchacha20poly1305_abytes=r.asm.Eb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_headerbytes=function(){return(r._crypto_secretstream_xchacha20poly1305_headerbytes=r.asm.Fb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_keybytes=function(){return(r._crypto_secretstream_xchacha20poly1305_keybytes=r.asm.Gb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_messagebytes_max=function(){return(r._crypto_secretstream_xchacha20poly1305_messagebytes_max=r.asm.Hb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_tag_message=function(){return(r._crypto_secretstream_xchacha20poly1305_tag_message=r.asm.Ib).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_tag_push=function(){return(r._crypto_secretstream_xchacha20poly1305_tag_push=r.asm.Jb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_tag_rekey=function(){return(r._crypto_secretstream_xchacha20poly1305_tag_rekey=r.asm.Kb).apply(null,arguments)},r._crypto_secretstream_xchacha20poly1305_tag_final=function(){return(r._crypto_secretstream_xchacha20poly1305_tag_final=r.asm.Lb).apply(null,arguments)},r._crypto_shorthash_bytes=function(){return(r._crypto_shorthash_bytes=r.asm.Mb).apply(null,arguments)},r._crypto_shorthash_keybytes=function(){return(r._crypto_shorthash_keybytes=r.asm.Nb).apply(null,arguments)},r._crypto_shorthash=function(){return(r._crypto_shorthash=r.asm.Ob).apply(null,arguments)},r._crypto_shorthash_keygen=function(){return(r._crypto_shorthash_keygen=r.asm.Pb).apply(null,arguments)},r._crypto_sign_statebytes=function(){return(r._crypto_sign_statebytes=r.asm.Qb).apply(null,arguments)},r._crypto_sign_bytes=function(){return(r._crypto_sign_bytes=r.asm.Rb).apply(null,arguments)},r._crypto_sign_seedbytes=function(){return(r._crypto_sign_seedbytes=r.asm.Sb).apply(null,arguments)},r._crypto_sign_publickeybytes=function(){return(r._crypto_sign_publickeybytes=r.asm.Tb).apply(null,arguments)},r._crypto_sign_secretkeybytes=function(){return(r._crypto_sign_secretkeybytes=r.asm.Ub).apply(null,arguments)},r._crypto_sign_messagebytes_max=function(){return(r._crypto_sign_messagebytes_max=r.asm.Vb).apply(null,arguments)},r._crypto_sign_seed_keypair=function(){return(r._crypto_sign_seed_keypair=r.asm.Wb).apply(null,arguments)},r._crypto_sign_keypair=function(){return(r._crypto_sign_keypair=r.asm.Xb).apply(null,arguments)},r._crypto_sign=function(){return(r._crypto_sign=r.asm.Yb).apply(null,arguments)},r._crypto_sign_open=function(){return(r._crypto_sign_open=r.asm.Zb).apply(null,arguments)},r._crypto_sign_detached=function(){return(r._crypto_sign_detached=r.asm._b).apply(null,arguments)},r._crypto_sign_verify_detached=function(){return(r._crypto_sign_verify_detached=r.asm.$b).apply(null,arguments)},r._crypto_sign_init=function(){return(r._crypto_sign_init=r.asm.ac).apply(null,arguments)},r._crypto_sign_update=function(){return(r._crypto_sign_update=r.asm.bc).apply(null,arguments)},r._crypto_sign_final_create=function(){return(r._crypto_sign_final_create=r.asm.cc).apply(null,arguments)},r._crypto_sign_final_verify=function(){return(r._crypto_sign_final_verify=r.asm.dc).apply(null,arguments)},r._crypto_sign_ed25519_pk_to_curve25519=function(){return(r._crypto_sign_ed25519_pk_to_curve25519=r.asm.ec).apply(null,arguments)},r._crypto_sign_ed25519_sk_to_curve25519=function(){return(r._crypto_sign_ed25519_sk_to_curve25519=r.asm.fc).apply(null,arguments)},r._randombytes_random=function(){return(r._randombytes_random=r.asm.gc).apply(null,arguments)},r._randombytes_stir=function(){return(r._randombytes_stir=r.asm.hc).apply(null,arguments)},r._randombytes_uniform=function(){return(r._randombytes_uniform=r.asm.ic).apply(null,arguments)},r._randombytes_buf=function(){return(r._randombytes_buf=r.asm.jc).apply(null,arguments)},r._randombytes_buf_deterministic=function(){return(r._randombytes_buf_deterministic=r.asm.kc).apply(null,arguments)},r._randombytes_seedbytes=function(){return(r._randombytes_seedbytes=r.asm.lc).apply(null,arguments)},r._randombytes_close=function(){return(r._randombytes_close=r.asm.mc).apply(null,arguments)},r._randombytes=function(){return(r._randombytes=r.asm.nc).apply(null,arguments)},r._sodium_bin2hex=function(){return(r._sodium_bin2hex=r.asm.oc).apply(null,arguments)},r._sodium_hex2bin=function(){return(r._sodium_hex2bin=r.asm.pc).apply(null,arguments)},r._sodium_base64_encoded_len=function(){return(r._sodium_base64_encoded_len=r.asm.qc).apply(null,arguments)},r._sodium_bin2base64=function(){return(r._sodium_bin2base64=r.asm.rc).apply(null,arguments)},r._sodium_base642bin=function(){return(r._sodium_base642bin=r.asm.sc).apply(null,arguments)},r._sodium_init=function(){return(r._sodium_init=r.asm.tc).apply(null,arguments)},r._sodium_pad=function(){return(r._sodium_pad=r.asm.uc).apply(null,arguments)},r._sodium_unpad=function(){return(r._sodium_unpad=r.asm.vc).apply(null,arguments)},r._sodium_version_string=function(){return(r._sodium_version_string=r.asm.wc).apply(null,arguments)},r._sodium_library_version_major=function(){return(r._sodium_library_version_major=r.asm.xc).apply(null,arguments)},r._sodium_library_version_minor=function(){return(r._sodium_library_version_minor=r.asm.yc).apply(null,arguments)},r._sodium_library_minimal=function(){return(r._sodium_library_minimal=r.asm.zc).apply(null,arguments)},r.___errno_location=function(){return(YA=r.___errno_location=r.asm.Ac).apply(null,arguments)});function HA(A){function g(){FA||(FA=!0,r.calledRun=!0,w||(L(),T(),r.onRuntimeInitialized&&r.onRuntimeInitialized(),q()))}A=A||B,W>0||(K(),W>0||(r.setStatus?(r.setStatus("Running..."),setTimeout((function(){setTimeout((function(){r.setStatus("")}),1),g()}),1)):g()))}if(r._malloc=function(){return(r._malloc=r.asm.Bc).apply(null,arguments)},r._free=function(){return(r._free=r.asm.Cc).apply(null,arguments)},r.setValue=u,r.getValue=l,r.UTF8ToString=S,O=function A(){FA||HA(),FA||(O=A)},r.run=HA,r.preInit)for("function"==typeof r.preInit&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();HA()})).catch((function(){return e.useBackupModule()})),g}"function"==typeof define&&define.amd?define(["exports"],g):"object"==typeof exports&&"string"!=typeof exports.nodeName?g(exports):A.libsodium=g(A.libsodium_mod||(A.commonJsStrict={}))}(this),function(A){function g(A,g){"use strict";var I,e=g.ready.then((function(){function e(){if(0!==I._sodium_init())throw new Error("libsodium was not correctly initialized.");for(var g=["crypto_aead_chacha20poly1305_decrypt","crypto_aead_chacha20poly1305_decrypt_detached","crypto_aead_chacha20poly1305_encrypt","crypto_aead_chacha20poly1305_encrypt_detached","crypto_aead_chacha20poly1305_ietf_decrypt","crypto_aead_chacha20poly1305_ietf_decrypt_detached","crypto_aead_chacha20poly1305_ietf_encrypt","crypto_aead_chacha20poly1305_ietf_encrypt_detached","crypto_aead_chacha20poly1305_ietf_keygen","crypto_aead_chacha20poly1305_keygen","crypto_aead_xchacha20poly1305_ietf_decrypt","crypto_aead_xchacha20poly1305_ietf_decrypt_detached","crypto_aead_xchacha20poly1305_ietf_encrypt","crypto_aead_xchacha20poly1305_ietf_encrypt_detached","crypto_aead_xchacha20poly1305_ietf_keygen","crypto_auth","crypto_auth_hmacsha256","crypto_auth_hmacsha256_keygen","crypto_auth_hmacsha256_verify","crypto_auth_hmacsha512","crypto_auth_hmacsha512_keygen","crypto_auth_hmacsha512_verify","crypto_auth_keygen","crypto_auth_verify","crypto_box_beforenm","crypto_box_curve25519xchacha20poly1305_keypair","crypto_box_curve25519xchacha20poly1305_seal","crypto_box_curve25519xchacha20poly1305_seal_open","crypto_box_detached","crypto_box_easy","crypto_box_easy_afternm","crypto_box_keypair","crypto_box_open_detached","crypto_box_open_easy","crypto_box_open_easy_afternm","crypto_box_seal","crypto_box_seal_open","crypto_box_seed_keypair","crypto_core_ed25519_add","crypto_core_ed25519_from_hash","crypto_core_ed25519_from_uniform","crypto_core_ed25519_is_valid_point","crypto_core_ed25519_random","crypto_core_ed25519_scalar_add","crypto_core_ed25519_scalar_complement","crypto_core_ed25519_scalar_invert","crypto_core_ed25519_scalar_mul","crypto_core_ed25519_scalar_negate","crypto_core_ed25519_scalar_random","crypto_core_ed25519_scalar_reduce","crypto_core_ed25519_scalar_sub","crypto_core_ed25519_sub","crypto_core_ristretto255_add","crypto_core_ristretto255_from_hash","crypto_core_ristretto255_is_valid_point","crypto_core_ristretto255_random","crypto_core_ristretto255_scalar_add","crypto_core_ristretto255_scalar_complement","crypto_core_ristretto255_scalar_invert","crypto_core_ristretto255_scalar_mul","crypto_core_ristretto255_scalar_negate","crypto_core_ristretto255_scalar_random","crypto_core_ristretto255_scalar_reduce","crypto_core_ristretto255_scalar_sub","crypto_core_ristretto255_sub","crypto_generichash","crypto_generichash_blake2b_salt_personal","crypto_generichash_final","crypto_generichash_init","crypto_generichash_keygen","crypto_generichash_update","crypto_hash","crypto_hash_sha256","crypto_hash_sha256_final","crypto_hash_sha256_init","crypto_hash_sha256_update","crypto_hash_sha512","crypto_hash_sha512_final","crypto_hash_sha512_init","crypto_hash_sha512_update","crypto_kdf_derive_from_key","crypto_kdf_keygen","crypto_kx_client_session_keys","crypto_kx_keypair","crypto_kx_seed_keypair","crypto_kx_server_session_keys","crypto_onetimeauth","crypto_onetimeauth_final","crypto_onetimeauth_init","crypto_onetimeauth_keygen","crypto_onetimeauth_update","crypto_onetimeauth_verify","crypto_pwhash","crypto_pwhash_scryptsalsa208sha256","crypto_pwhash_scryptsalsa208sha256_ll","crypto_pwhash_scryptsalsa208sha256_str","crypto_pwhash_scryptsalsa208sha256_str_verify","crypto_pwhash_str","crypto_pwhash_str_needs_rehash","crypto_pwhash_str_verify","crypto_scalarmult","crypto_scalarmult_base","crypto_scalarmult_ed25519","crypto_scalarmult_ed25519_base","crypto_scalarmult_ed25519_base_noclamp","crypto_scalarmult_ed25519_noclamp","crypto_scalarmult_ristretto255","crypto_scalarmult_ristretto255_base","crypto_secretbox_detached","crypto_secretbox_easy","crypto_secretbox_keygen","crypto_secretbox_open_detached","crypto_secretbox_open_easy","crypto_secretstream_xchacha20poly1305_init_pull","crypto_secretstream_xchacha20poly1305_init_push","crypto_secretstream_xchacha20poly1305_keygen","crypto_secretstream_xchacha20poly1305_pull","crypto_secretstream_xchacha20poly1305_push","crypto_secretstream_xchacha20poly1305_rekey","crypto_shorthash","crypto_shorthash_keygen","crypto_shorthash_siphashx24","crypto_sign","crypto_sign_detached","crypto_sign_ed25519_pk_to_curve25519","crypto_sign_ed25519_sk_to_curve25519","crypto_sign_ed25519_sk_to_pk","crypto_sign_ed25519_sk_to_seed","crypto_sign_final_create","crypto_sign_final_verify","crypto_sign_init","crypto_sign_keypair","crypto_sign_open","crypto_sign_seed_keypair","crypto_sign_update","crypto_sign_verify_detached","crypto_stream_chacha20","crypto_stream_chacha20_ietf_xor","crypto_stream_chacha20_ietf_xor_ic","crypto_stream_chacha20_keygen","crypto_stream_chacha20_xor","crypto_stream_chacha20_xor_ic","crypto_stream_keygen","crypto_stream_xchacha20_keygen","crypto_stream_xchacha20_xor","crypto_stream_xchacha20_xor_ic","randombytes_buf","randombytes_buf_deterministic","randombytes_close","randombytes_random","randombytes_set_implementation","randombytes_stir","randombytes_uniform","sodium_version_string"],e=[u,l,w,D,v,d,b,k,F,G,m,Y,H,S,U,M,N,x,P,R,J,K,L,T,q,X,V,W,j,O,Z,z,$,AA,gA,IA,eA,rA,aA,BA,tA,nA,iA,oA,QA,CA,cA,EA,sA,yA,_A,hA,fA,pA,uA,lA,wA,DA,vA,dA,bA,kA,FA,GA,mA,YA,HA,SA,UA,MA,NA,xA,PA,RA,JA,KA,LA,TA,qA,XA,VA,WA,jA,OA,ZA,zA,$A,Ag,gg,Ig,eg,rg,ag,Bg,tg,ng,ig,og,Qg,Cg,cg,Eg,sg,yg,_g,hg,fg,pg,ug,lg,wg,Dg,vg,dg,bg,kg,Fg,Gg,mg,Yg,Hg,Sg,Ug,Mg,Ng,xg,Pg,Rg,Jg,Kg,Lg,Tg,qg,Xg,Vg,Wg,jg,Og,Zg,zg,$g,AI,gI,II,eI,rI,aI,BI,tI,nI,iI,oI,QI,CI],r=0;r<e.length;r++)"function"==typeof I["_"+g[r]]&&(A[g[r]]=e[r]);var a=["SODIUM_LIBRARY_VERSION_MAJOR","SODIUM_LIBRARY_VERSION_MINOR","crypto_aead_chacha20poly1305_ABYTES","crypto_aead_chacha20poly1305_IETF_ABYTES","crypto_aead_chacha20poly1305_IETF_KEYBYTES","crypto_aead_chacha20poly1305_IETF_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_IETF_NPUBBYTES","crypto_aead_chacha20poly1305_IETF_NSECBYTES","crypto_aead_chacha20poly1305_KEYBYTES","crypto_aead_chacha20poly1305_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_NPUBBYTES","crypto_aead_chacha20poly1305_NSECBYTES","crypto_aead_chacha20poly1305_ietf_ABYTES","crypto_aead_chacha20poly1305_ietf_KEYBYTES","crypto_aead_chacha20poly1305_ietf_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_ietf_NPUBBYTES","crypto_aead_chacha20poly1305_ietf_NSECBYTES","crypto_aead_xchacha20poly1305_IETF_ABYTES","crypto_aead_xchacha20poly1305_IETF_KEYBYTES","crypto_aead_xchacha20poly1305_IETF_MESSAGEBYTES_MAX","crypto_aead_xchacha20poly1305_IETF_NPUBBYTES","crypto_aead_xchacha20poly1305_IETF_NSECBYTES","crypto_aead_xchacha20poly1305_ietf_ABYTES","crypto_aead_xchacha20poly1305_ietf_KEYBYTES","crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX","crypto_aead_xchacha20poly1305_ietf_NPUBBYTES","crypto_aead_xchacha20poly1305_ietf_NSECBYTES","crypto_auth_BYTES","crypto_auth_KEYBYTES","crypto_auth_hmacsha256_BYTES","crypto_auth_hmacsha256_KEYBYTES","crypto_auth_hmacsha512256_BYTES","crypto_auth_hmacsha512256_KEYBYTES","crypto_auth_hmacsha512_BYTES","crypto_auth_hmacsha512_KEYBYTES","crypto_box_BEFORENMBYTES","crypto_box_MACBYTES","crypto_box_MESSAGEBYTES_MAX","crypto_box_NONCEBYTES","crypto_box_PUBLICKEYBYTES","crypto_box_SEALBYTES","crypto_box_SECRETKEYBYTES","crypto_box_SEEDBYTES","crypto_box_curve25519xchacha20poly1305_BEFORENMBYTES","crypto_box_curve25519xchacha20poly1305_MACBYTES","crypto_box_curve25519xchacha20poly1305_MESSAGEBYTES_MAX","crypto_box_curve25519xchacha20poly1305_NONCEBYTES","crypto_box_curve25519xchacha20poly1305_PUBLICKEYBYTES","crypto_box_curve25519xchacha20poly1305_SEALBYTES","crypto_box_curve25519xchacha20poly1305_SECRETKEYBYTES","crypto_box_curve25519xchacha20poly1305_SEEDBYTES","crypto_box_curve25519xsalsa20poly1305_BEFORENMBYTES","crypto_box_curve25519xsalsa20poly1305_MACBYTES","crypto_box_curve25519xsalsa20poly1305_MESSAGEBYTES_MAX","crypto_box_curve25519xsalsa20poly1305_NONCEBYTES","crypto_box_curve25519xsalsa20poly1305_PUBLICKEYBYTES","crypto_box_curve25519xsalsa20poly1305_SECRETKEYBYTES","crypto_box_curve25519xsalsa20poly1305_SEEDBYTES","crypto_core_ed25519_BYTES","crypto_core_ed25519_HASHBYTES","crypto_core_ed25519_NONREDUCEDSCALARBYTES","crypto_core_ed25519_SCALARBYTES","crypto_core_ed25519_UNIFORMBYTES","crypto_core_hchacha20_CONSTBYTES","crypto_core_hchacha20_INPUTBYTES","crypto_core_hchacha20_KEYBYTES","crypto_core_hchacha20_OUTPUTBYTES","crypto_core_hsalsa20_CONSTBYTES","crypto_core_hsalsa20_INPUTBYTES","crypto_core_hsalsa20_KEYBYTES","crypto_core_hsalsa20_OUTPUTBYTES","crypto_core_ristretto255_BYTES","crypto_core_ristretto255_HASHBYTES","crypto_core_ristretto255_NONREDUCEDSCALARBYTES","crypto_core_ristretto255_SCALARBYTES","crypto_core_salsa2012_CONSTBYTES","crypto_core_salsa2012_INPUTBYTES","crypto_core_salsa2012_KEYBYTES","crypto_core_salsa2012_OUTPUTBYTES","crypto_core_salsa20_CONSTBYTES","crypto_core_salsa20_INPUTBYTES","crypto_core_salsa20_KEYBYTES","crypto_core_salsa20_OUTPUTBYTES","crypto_generichash_BYTES","crypto_generichash_BYTES_MAX","crypto_generichash_BYTES_MIN","crypto_generichash_KEYBYTES","crypto_generichash_KEYBYTES_MAX","crypto_generichash_KEYBYTES_MIN","crypto_generichash_blake2b_BYTES","crypto_generichash_blake2b_BYTES_MAX","crypto_generichash_blake2b_BYTES_MIN","crypto_generichash_blake2b_KEYBYTES","crypto_generichash_blake2b_KEYBYTES_MAX","crypto_generichash_blake2b_KEYBYTES_MIN","crypto_generichash_blake2b_PERSONALBYTES","crypto_generichash_blake2b_SALTBYTES","crypto_hash_BYTES","crypto_hash_sha256_BYTES","crypto_hash_sha512_BYTES","crypto_kdf_BYTES_MAX","crypto_kdf_BYTES_MIN","crypto_kdf_CONTEXTBYTES","crypto_kdf_KEYBYTES","crypto_kdf_blake2b_BYTES_MAX","crypto_kdf_blake2b_BYTES_MIN","crypto_kdf_blake2b_CONTEXTBYTES","crypto_kdf_blake2b_KEYBYTES","crypto_kx_PUBLICKEYBYTES","crypto_kx_SECRETKEYBYTES","crypto_kx_SEEDBYTES","crypto_kx_SESSIONKEYBYTES","crypto_onetimeauth_BYTES","crypto_onetimeauth_KEYBYTES","crypto_onetimeauth_poly1305_BYTES","crypto_onetimeauth_poly1305_KEYBYTES","crypto_pwhash_ALG_ARGON2I13","crypto_pwhash_ALG_ARGON2ID13","crypto_pwhash_ALG_DEFAULT","crypto_pwhash_BYTES_MAX","crypto_pwhash_BYTES_MIN","crypto_pwhash_MEMLIMIT_INTERACTIVE","crypto_pwhash_MEMLIMIT_MAX","crypto_pwhash_MEMLIMIT_MIN","crypto_pwhash_MEMLIMIT_MODERATE","crypto_pwhash_MEMLIMIT_SENSITIVE","crypto_pwhash_OPSLIMIT_INTERACTIVE","crypto_pwhash_OPSLIMIT_MAX","crypto_pwhash_OPSLIMIT_MIN","crypto_pwhash_OPSLIMIT_MODERATE","crypto_pwhash_OPSLIMIT_SENSITIVE","crypto_pwhash_PASSWD_MAX","crypto_pwhash_PASSWD_MIN","crypto_pwhash_SALTBYTES","crypto_pwhash_STRBYTES","crypto_pwhash_argon2i_BYTES_MAX","crypto_pwhash_argon2i_BYTES_MIN","crypto_pwhash_argon2i_SALTBYTES","crypto_pwhash_argon2i_STRBYTES","crypto_pwhash_argon2id_BYTES_MAX","crypto_pwhash_argon2id_BYTES_MIN","crypto_pwhash_argon2id_SALTBYTES","crypto_pwhash_argon2id_STRBYTES","crypto_pwhash_scryptsalsa208sha256_BYTES_MAX","crypto_pwhash_scryptsalsa208sha256_BYTES_MIN","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_INTERACTIVE","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MAX","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MIN","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_SENSITIVE","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_INTERACTIVE","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MAX","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MIN","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_SENSITIVE","crypto_pwhash_scryptsalsa208sha256_SALTBYTES","crypto_pwhash_scryptsalsa208sha256_STRBYTES","crypto_scalarmult_BYTES","crypto_scalarmult_SCALARBYTES","crypto_scalarmult_curve25519_BYTES","crypto_scalarmult_curve25519_SCALARBYTES","crypto_scalarmult_ed25519_BYTES","crypto_scalarmult_ed25519_SCALARBYTES","crypto_scalarmult_ristretto255_BYTES","crypto_scalarmult_ristretto255_SCALARBYTES","crypto_secretbox_KEYBYTES","crypto_secretbox_MACBYTES","crypto_secretbox_MESSAGEBYTES_MAX","crypto_secretbox_NONCEBYTES","crypto_secretbox_xchacha20poly1305_KEYBYTES","crypto_secretbox_xchacha20poly1305_MACBYTES","crypto_secretbox_xchacha20poly1305_MESSAGEBYTES_MAX","crypto_secretbox_xchacha20poly1305_NONCEBYTES","crypto_secretbox_xsalsa20poly1305_KEYBYTES","crypto_secretbox_xsalsa20poly1305_MACBYTES","crypto_secretbox_xsalsa20poly1305_MESSAGEBYTES_MAX","crypto_secretbox_xsalsa20poly1305_NONCEBYTES","crypto_secretstream_xchacha20poly1305_ABYTES","crypto_secretstream_xchacha20poly1305_HEADERBYTES","crypto_secretstream_xchacha20poly1305_KEYBYTES","crypto_secretstream_xchacha20poly1305_MESSAGEBYTES_MAX","crypto_secretstream_xchacha20poly1305_TAG_FINAL","crypto_secretstream_xchacha20poly1305_TAG_MESSAGE","crypto_secretstream_xchacha20poly1305_TAG_PUSH","crypto_secretstream_xchacha20poly1305_TAG_REKEY","crypto_shorthash_BYTES","crypto_shorthash_KEYBYTES","crypto_shorthash_siphash24_BYTES","crypto_shorthash_siphash24_KEYBYTES","crypto_shorthash_siphashx24_BYTES","crypto_shorthash_siphashx24_KEYBYTES","crypto_sign_BYTES","crypto_sign_MESSAGEBYTES_MAX","crypto_sign_PUBLICKEYBYTES","crypto_sign_SECRETKEYBYTES","crypto_sign_SEEDBYTES","crypto_sign_ed25519_BYTES","crypto_sign_ed25519_MESSAGEBYTES_MAX","crypto_sign_ed25519_PUBLICKEYBYTES","crypto_sign_ed25519_SECRETKEYBYTES","crypto_sign_ed25519_SEEDBYTES","crypto_stream_KEYBYTES","crypto_stream_MESSAGEBYTES_MAX","crypto_stream_NONCEBYTES","crypto_stream_chacha20_IETF_KEYBYTES","crypto_stream_chacha20_IETF_MESSAGEBYTES_MAX","crypto_stream_chacha20_IETF_NONCEBYTES","crypto_stream_chacha20_KEYBYTES","crypto_stream_chacha20_MESSAGEBYTES_MAX","crypto_stream_chacha20_NONCEBYTES","crypto_stream_chacha20_ietf_KEYBYTES","crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX","crypto_stream_chacha20_ietf_NONCEBYTES","crypto_stream_salsa2012_KEYBYTES","crypto_stream_salsa2012_MESSAGEBYTES_MAX","crypto_stream_salsa2012_NONCEBYTES","crypto_stream_salsa208_KEYBYTES","crypto_stream_salsa208_MESSAGEBYTES_MAX","crypto_stream_salsa208_NONCEBYTES","crypto_stream_salsa20_KEYBYTES","crypto_stream_salsa20_MESSAGEBYTES_MAX","crypto_stream_salsa20_NONCEBYTES","crypto_stream_xchacha20_KEYBYTES","crypto_stream_xchacha20_MESSAGEBYTES_MAX","crypto_stream_xchacha20_NONCEBYTES","crypto_stream_xsalsa20_KEYBYTES","crypto_stream_xsalsa20_MESSAGEBYTES_MAX","crypto_stream_xsalsa20_NONCEBYTES","crypto_verify_16_BYTES","crypto_verify_32_BYTES","crypto_verify_64_BYTES"];for(r=0;r<a.length;r++)"function"==typeof(t=I["_"+a[r].toLowerCase()])&&(A[a[r]]=t());var B=["SODIUM_VERSION_STRING","crypto_pwhash_STRPREFIX","crypto_pwhash_scryptsalsa208sha256_STRPREFIX"];for(r=0;r<B.length;r++){var t;"function"==typeof(t=I["_"+B[r].toLowerCase()])&&(A[B[r]]=I.UTF8ToString(t()))}}I=g;try{e();var r=new Uint8Array([98,97,108,108,115]),a=A.randombytes_buf(A.crypto_secretbox_NONCEBYTES),B=A.randombytes_buf(A.crypto_secretbox_KEYBYTES),t=A.crypto_secretbox_easy(r,a,B),n=A.crypto_secretbox_open_easy(t,a,B);if(A.memcmp(r,n))return}catch(A){if(null==I.useBackupModule)throw new Error("Both wasm and asm failed to load"+A)}I.useBackupModule(),e()}));function r(A){if("function"==typeof TextEncoder)return(new TextEncoder).encode(A);A=unescape(encodeURIComponent(A));for(var g=new Uint8Array(A.length),I=0,e=A.length;I<e;I++)g[I]=A.charCodeAt(I);return g}function a(A){if("function"==typeof TextDecoder)return new TextDecoder("utf-8",{fatal:!0}).decode(A);var g=8192,I=Math.ceil(A.length/g);if(I<=1)try{return decodeURIComponent(escape(String.fromCharCode.apply(null,A)))}catch(A){throw new TypeError("The encoded data was not valid.")}for(var e="",r=0,B=0;B<I;B++){var t=Array.prototype.slice.call(A,B*g+r,(B+1)*g+r);if(0!=t.length){var n,i=t.length,o=0;do{var Q=t[--i];Q>=240?(o=4,n=!0):Q>=224?(o=3,n=!0):Q>=192?(o=2,n=!0):Q<128&&(o=1,n=!0)}while(!n);for(var C=o-(t.length-i),c=0;c<C;c++)r--,t.pop();e+=a(t)}}return e}function B(A){A=p(null,A,"input");for(var g,I,e,r="",a=0;a<A.length;a++)e=87+(I=15&A[a])+(I-10>>8&-39)<<8|87+(g=A[a]>>>4)+(g-10>>8&-39),r+=String.fromCharCode(255&e)+String.fromCharCode(e>>>8);return r}var t={ORIGINAL:1,ORIGINAL_NO_PADDING:3,URLSAFE:5,URLSAFE_NO_PADDING:7};function n(A){if(null==A)return t.URLSAFE_NO_PADDING;if(A!==t.ORIGINAL&&A!==t.ORIGINAL_NO_PADDING&&A!==t.URLSAFE&&A!=t.URLSAFE_NO_PADDING)throw new Error("unsupported base64 variant");return A}function i(A,g){g=n(g),A=p(r,A,"input");var e,r=[],B=0|Math.floor(A.length/3),t=A.length-3*B,i=4*B+(0!==t?0==(2&g)?4:2+(t>>>1):0),o=new c(i+1),Q=E(A);return r.push(Q),r.push(o.address),0===I._sodium_bin2base64(o.address,o.length,Q,A.length,g)&&_(r,"conversion failed"),o.length=i,e=a(o.to_Uint8Array()),y(r),e}function o(A,g){var I=g||"uint8array";if(!Q(I))throw new Error(I+" output format is not available");if(A instanceof c){if("uint8array"===I)return A.to_Uint8Array();if("text"===I)return a(A.to_Uint8Array());if("hex"===I)return B(A.to_Uint8Array());if("base64"===I)return i(A.to_Uint8Array(),t.URLSAFE_NO_PADDING);throw new Error('What is output format "'+I+'"?')}if("object"==typeof A){for(var e=Object.keys(A),r={},n=0;n<e.length;n++)r[e[n]]=o(A[e[n]],I);return r}if("string"==typeof A)return A;throw new TypeError("Cannot format output")}function Q(A){for(var g=["uint8array","text","hex","base64"],I=0;I<g.length;I++)if(g[I]===A)return!0;return!1}function C(A){if(A){if("string"!=typeof A)throw new TypeError("When defined, the output format must be a string");if(!Q(A))throw new Error(A+" is not a supported output format")}}function c(A){this.length=A,this.address=s(A)}function E(A){var g=s(A.length);return I.HEAPU8.set(A,g),g}function s(A){var g=I._malloc(A);if(0===g)throw{message:"_malloc() failed",length:A};return g}function y(A){if(A)for(var g=0;g<A.length;g++)e=A[g],I._free(e);var e}function _(A,g){throw y(A),new Error(g)}function h(A,g){throw y(A),new TypeError(g)}function f(A,g,I){null==g&&h(A,I+" cannot be null or undefined")}function p(A,g,I){return f(A,g,I),g instanceof Uint8Array?g:"string"==typeof g?r(g):void h(A,"unsupported input type for "+I)}function u(A,g,e,r,a,B){var t=[];C(B);var n=null;null!=A&&(n=E(A=p(t,A,"secret_nonce")),A.length,t.push(n)),g=p(t,g,"ciphertext");var i,Q=I._crypto_aead_chacha20poly1305_abytes(),s=g.length;s<Q&&h(t,"ciphertext is too short"),i=E(g),t.push(i);var f=null,u=0;null!=e&&(f=E(e=p(t,e,"additional_data")),u=e.length,t.push(f)),r=p(t,r,"public_nonce");var l,w=0|I._crypto_aead_chacha20poly1305_npubbytes();r.length!==w&&h(t,"invalid public_nonce length"),l=E(r),t.push(l),a=p(t,a,"key");var D,v=0|I._crypto_aead_chacha20poly1305_keybytes();a.length!==v&&h(t,"invalid key length"),D=E(a),t.push(D);var d=new c(s-I._crypto_aead_chacha20poly1305_abytes()|0),b=d.address;if(t.push(b),0===I._crypto_aead_chacha20poly1305_decrypt(b,null,n,i,s,0,f,u,0,l,D)){var k=o(d,B);return y(t),k}_(t,"ciphertext cannot be decrypted using that key")}function l(A,g,e,r,a,B,t){var n=[];C(t);var i=null;null!=A&&(i=E(A=p(n,A,"secret_nonce")),A.length,n.push(i));var Q=E(g=p(n,g,"ciphertext")),s=g.length;n.push(Q),e=p(n,e,"mac");var f,u=0|I._crypto_box_macbytes();e.length!==u&&h(n,"invalid mac length"),f=E(e),n.push(f);var l=null,w=0;null!=r&&(l=E(r=p(n,r,"additional_data")),w=r.length,n.push(l)),a=p(n,a,"public_nonce");var D,v=0|I._crypto_aead_chacha20poly1305_npubbytes();a.length!==v&&h(n,"invalid public_nonce length"),D=E(a),n.push(D),B=p(n,B,"key");var d,b=0|I._crypto_aead_chacha20poly1305_keybytes();B.length!==b&&h(n,"invalid key length"),d=E(B),n.push(d);var k=new c(0|s),F=k.address;if(n.push(F),0===I._crypto_aead_chacha20poly1305_decrypt_detached(F,i,Q,s,0,f,l,w,0,D,d)){var G=o(k,t);return y(n),G}_(n,"ciphertext cannot be decrypted using that key")}function w(A,g,e,r,a,B){var t=[];C(B);var n=E(A=p(t,A,"message")),i=A.length;t.push(n);var Q=null,s=0;null!=g&&(Q=E(g=p(t,g,"additional_data")),s=g.length,t.push(Q));var f=null;null!=e&&(f=E(e=p(t,e,"secret_nonce")),e.length,t.push(f)),r=p(t,r,"public_nonce");var u,l=0|I._crypto_aead_chacha20poly1305_npubbytes();r.length!==l&&h(t,"invalid public_nonce length"),u=E(r),t.push(u),a=p(t,a,"key");var w,D=0|I._crypto_aead_chacha20poly1305_keybytes();a.length!==D&&h(t,"invalid key length"),w=E(a),t.push(w);var v=new c(i+I._crypto_aead_chacha20poly1305_abytes()|0),d=v.address;if(t.push(d),0===I._crypto_aead_chacha20poly1305_encrypt(d,null,n,i,0,Q,s,0,f,u,w)){var b=o(v,B);return y(t),b}_(t,"invalid usage")}function D(A,g,e,r,a,B){var t=[];C(B);var n=E(A=p(t,A,"message")),i=A.length;t.push(n);var Q=null,s=0;null!=g&&(Q=E(g=p(t,g,"additional_data")),s=g.length,t.push(Q));var f=null;null!=e&&(f=E(e=p(t,e,"secret_nonce")),e.length,t.push(f)),r=p(t,r,"public_nonce");var u,l=0|I._crypto_aead_chacha20poly1305_npubbytes();r.length!==l&&h(t,"invalid public_nonce length"),u=E(r),t.push(u),a=p(t,a,"key");var w,D=0|I._crypto_aead_chacha20poly1305_keybytes();a.length!==D&&h(t,"invalid key length"),w=E(a),t.push(w);var v=new c(0|i),d=v.address;t.push(d);var b=new c(0|I._crypto_aead_chacha20poly1305_abytes()),k=b.address;if(t.push(k),0===I._crypto_aead_chacha20poly1305_encrypt_detached(d,k,null,n,i,0,Q,s,0,f,u,w)){var F=o({ciphertext:v,mac:b},B);return y(t),F}_(t,"invalid usage")}function v(A,g,e,r,a,B){var t=[];C(B);var n=null;null!=A&&(n=E(A=p(t,A,"secret_nonce")),A.length,t.push(n)),g=p(t,g,"ciphertext");var i,Q=I._crypto_aead_chacha20poly1305_ietf_abytes(),s=g.length;s<Q&&h(t,"ciphertext is too short"),i=E(g),t.push(i);var f=null,u=0;null!=e&&(f=E(e=p(t,e,"additional_data")),u=e.length,t.push(f)),r=p(t,r,"public_nonce");var l,w=0|I._crypto_aead_chacha20poly1305_ietf_npubbytes();r.length!==w&&h(t,"invalid public_nonce length"),l=E(r),t.push(l),a=p(t,a,"key");var D,v=0|I._crypto_aead_chacha20poly1305_ietf_keybytes();a.length!==v&&h(t,"invalid key length"),D=E(a),t.push(D);var d=new c(s-I._crypto_aead_chacha20poly1305_ietf_abytes()|0),b=d.address;if(t.push(b),0===I._crypto_aead_chacha20poly1305_ietf_decrypt(b,null,n,i,s,0,f,u,0,l,D)){var k=o(d,B);return y(t),k}_(t,"ciphertext cannot be decrypted using that key")}function d(A,g,e,r,a,B,t){var n=[];C(t);var i=null;null!=A&&(i=E(A=p(n,A,"secret_nonce")),A.length,n.push(i));var Q=E(g=p(n,g,"ciphertext")),s=g.length;n.push(Q),e=p(n,e,"mac");var f,u=0|I._crypto_box_macbytes();e.length!==u&&h(n,"invalid mac length"),f=E(e),n.push(f);var l=null,w=0;null!=r&&(l=E(r=p(n,r,"additional_data")),w=r.length,n.push(l)),a=p(n,a,"public_nonce");var D,v=0|I._crypto_aead_chacha20poly1305_ietf_npubbytes();a.length!==v&&h(n,"invalid public_nonce length"),D=E(a),n.push(D),B=p(n,B,"key");var d,b=0|I._crypto_aead_chacha20poly1305_ietf_keybytes();B.length!==b&&h(n,"invalid key length"),d=E(B),n.push(d);var k=new c(0|s),F=k.address;if(n.push(F),0===I._crypto_aead_chacha20poly1305_ietf_decrypt_detached(F,i,Q,s,0,f,l,w,0,D,d)){var G=o(k,t);return y(n),G}_(n,"ciphertext cannot be decrypted using that key")}function b(A,g,e,r,a,B){var t=[];C(B);var n=E(A=p(t,A,"message")),i=A.length;t.push(n);var Q=null,s=0;null!=g&&(Q=E(g=p(t,g,"additional_data")),s=g.length,t.push(Q));var f=null;null!=e&&(f=E(e=p(t,e,"secret_nonce")),e.length,t.push(f)),r=p(t,r,"public_nonce");var u,l=0|I._crypto_aead_chacha20poly1305_ietf_npubbytes();r.length!==l&&h(t,"invalid public_nonce length"),u=E(r),t.push(u),a=p(t,a,"key");var w,D=0|I._crypto_aead_chacha20poly1305_ietf_keybytes();a.length!==D&&h(t,"invalid key length"),w=E(a),t.push(w);var v=new c(i+I._crypto_aead_chacha20poly1305_ietf_abytes()|0),d=v.address;if(t.push(d),0===I._crypto_aead_chacha20poly1305_ietf_encrypt(d,null,n,i,0,Q,s,0,f,u,w)){var b=o(v,B);return y(t),b}_(t,"invalid usage")}function k(A,g,e,r,a,B){var t=[];C(B);var n=E(A=p(t,A,"message")),i=A.length;t.push(n);var Q=null,s=0;null!=g&&(Q=E(g=p(t,g,"additional_data")),s=g.length,t.push(Q));var f=null;null!=e&&(f=E(e=p(t,e,"secret_nonce")),e.length,t.push(f)),r=p(t,r,"public_nonce");var u,l=0|I._crypto_aead_chacha20poly1305_ietf_npubbytes();r.length!==l&&h(t,"invalid public_nonce length"),u=E(r),t.push(u),a=p(t,a,"key");var w,D=0|I._crypto_aead_chacha20poly1305_ietf_keybytes();a.length!==D&&h(t,"invalid key length"),w=E(a),t.push(w);var v=new c(0|i),d=v.address;t.push(d);var b=new c(0|I._crypto_aead_chacha20poly1305_ietf_abytes()),k=b.address;if(t.push(k),0===I._crypto_aead_chacha20poly1305_ietf_encrypt_detached(d,k,null,n,i,0,Q,s,0,f,u,w)){var F=o({ciphertext:v,mac:b},B);return y(t),F}_(t,"invalid usage")}function F(A){var g=[];C(A);var e=new c(0|I._crypto_aead_chacha20poly1305_ietf_keybytes()),r=e.address;g.push(r),I._crypto_aead_chacha20poly1305_ietf_keygen(r);var a=o(e,A);return y(g),a}function G(A){var g=[];C(A);var e=new c(0|I._crypto_aead_chacha20poly1305_keybytes()),r=e.address;g.push(r),I._crypto_aead_chacha20poly1305_keygen(r);var a=o(e,A);return y(g),a}function m(A,g,e,r,a,B){var t=[];C(B);var n=null;null!=A&&(n=E(A=p(t,A,"secret_nonce")),A.length,t.push(n)),g=p(t,g,"ciphertext");var i,Q=I._crypto_aead_xchacha20poly1305_ietf_abytes(),s=g.length;s<Q&&h(t,"ciphertext is too short"),i=E(g),t.push(i);var f=null,u=0;null!=e&&(f=E(e=p(t,e,"additional_data")),u=e.length,t.push(f)),r=p(t,r,"public_nonce");var l,w=0|I._crypto_aead_xchacha20poly1305_ietf_npubbytes();r.length!==w&&h(t,"invalid public_nonce length"),l=E(r),t.push(l),a=p(t,a,"key");var D,v=0|I._crypto_aead_xchacha20poly1305_ietf_keybytes();a.length!==v&&h(t,"invalid key length"),D=E(a),t.push(D);var d=new c(s-I._crypto_aead_xchacha20poly1305_ietf_abytes()|0),b=d.address;if(t.push(b),0===I._crypto_aead_xchacha20poly1305_ietf_decrypt(b,null,n,i,s,0,f,u,0,l,D)){var k=o(d,B);return y(t),k}_(t,"ciphertext cannot be decrypted using that key")}function Y(A,g,e,r,a,B,t){var n=[];C(t);var i=null;null!=A&&(i=E(A=p(n,A,"secret_nonce")),A.length,n.push(i));var Q=E(g=p(n,g,"ciphertext")),s=g.length;n.push(Q),e=p(n,e,"mac");var f,u=0|I._crypto_box_macbytes();e.length!==u&&h(n,"invalid mac length"),f=E(e),n.push(f);var l=null,w=0;null!=r&&(l=E(r=p(n,r,"additional_data")),w=r.length,n.push(l)),a=p(n,a,"public_nonce");var D,v=0|I._crypto_aead_xchacha20poly1305_ietf_npubbytes();a.length!==v&&h(n,"invalid public_nonce length"),D=E(a),n.push(D),B=p(n,B,"key");var d,b=0|I._crypto_aead_xchacha20poly1305_ietf_keybytes();B.length!==b&&h(n,"invalid key length"),d=E(B),n.push(d);var k=new c(0|s),F=k.address;if(n.push(F),0===I._crypto_aead_xchacha20poly1305_ietf_decrypt_detached(F,i,Q,s,0,f,l,w,0,D,d)){var G=o(k,t);return y(n),G}_(n,"ciphertext cannot be decrypted using that key")}function H(A,g,e,r,a,B){var t=[];C(B);var n=E(A=p(t,A,"message")),i=A.length;t.push(n);var Q=null,s=0;null!=g&&(Q=E(g=p(t,g,"additional_data")),s=g.length,t.push(Q));var f=null;null!=e&&(f=E(e=p(t,e,"secret_nonce")),e.length,t.push(f)),r=p(t,r,"public_nonce");var u,l=0|I._crypto_aead_xchacha20poly1305_ietf_npubbytes();r.length!==l&&h(t,"invalid public_nonce length"),u=E(r),t.push(u),a=p(t,a,"key");var w,D=0|I._crypto_aead_xchacha20poly1305_ietf_keybytes();a.length!==D&&h(t,"invalid key length"),w=E(a),t.push(w);var v=new c(i+I._crypto_aead_xchacha20poly1305_ietf_abytes()|0),d=v.address;if(t.push(d),0===I._crypto_aead_xchacha20poly1305_ietf_encrypt(d,null,n,i,0,Q,s,0,f,u,w)){var b=o(v,B);return y(t),b}_(t,"invalid usage")}function S(A,g,e,r,a,B){var t=[];C(B);var n=E(A=p(t,A,"message")),i=A.length;t.push(n);var Q=null,s=0;null!=g&&(Q=E(g=p(t,g,"additional_data")),s=g.length,t.push(Q));var f=null;null!=e&&(f=E(e=p(t,e,"secret_nonce")),e.length,t.push(f)),r=p(t,r,"public_nonce");var u,l=0|I._crypto_aead_xchacha20poly1305_ietf_npubbytes();r.length!==l&&h(t,"invalid public_nonce length"),u=E(r),t.push(u),a=p(t,a,"key");var w,D=0|I._crypto_aead_xchacha20poly1305_ietf_keybytes();a.length!==D&&h(t,"invalid key length"),w=E(a),t.push(w);var v=new c(0|i),d=v.address;t.push(d);var b=new c(0|I._crypto_aead_xchacha20poly1305_ietf_abytes()),k=b.address;if(t.push(k),0===I._crypto_aead_xchacha20poly1305_ietf_encrypt_detached(d,k,null,n,i,0,Q,s,0,f,u,w)){var F=o({ciphertext:v,mac:b},B);return y(t),F}_(t,"invalid usage")}function U(A){var g=[];C(A);var e=new c(0|I._crypto_aead_xchacha20poly1305_ietf_keybytes()),r=e.address;g.push(r),I._crypto_aead_xchacha20poly1305_ietf_keygen(r);var a=o(e,A);return y(g),a}function M(A,g,e){var r=[];C(e);var a=E(A=p(r,A,"message")),B=A.length;r.push(a),g=p(r,g,"key");var t,n=0|I._crypto_auth_keybytes();g.length!==n&&h(r,"invalid key length"),t=E(g),r.push(t);var i=new c(0|I._crypto_auth_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_auth(Q,a,B,0,t))){var s=o(i,e);return y(r),s}_(r,"invalid usage")}function N(A,g,e){var r=[];C(e);var a=E(A=p(r,A,"message")),B=A.length;r.push(a),g=p(r,g,"key");var t,n=0|I._crypto_auth_hmacsha256_keybytes();g.length!==n&&h(r,"invalid key length"),t=E(g),r.push(t);var i=new c(0|I._crypto_auth_hmacsha256_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_auth_hmacsha256(Q,a,B,0,t))){var s=o(i,e);return y(r),s}_(r,"invalid usage")}function x(A){var g=[];C(A);var e=new c(0|I._crypto_auth_hmacsha256_keybytes()),r=e.address;g.push(r),I._crypto_auth_hmacsha256_keygen(r);var a=o(e,A);return y(g),a}function P(A,g,e){var r=[];A=p(r,A,"tag");var a,B=0|I._crypto_auth_hmacsha256_bytes();A.length!==B&&h(r,"invalid tag length"),a=E(A),r.push(a);var t=E(g=p(r,g,"message")),n=g.length;r.push(t),e=p(r,e,"key");var i,o=0|I._crypto_auth_hmacsha256_keybytes();e.length!==o&&h(r,"invalid key length"),i=E(e),r.push(i);var Q=0==(0|I._crypto_auth_hmacsha256_verify(a,t,n,0,i));return y(r),Q}function R(A,g,e){var r=[];C(e);var a=E(A=p(r,A,"message")),B=A.length;r.push(a),g=p(r,g,"key");var t,n=0|I._crypto_auth_hmacsha512_keybytes();g.length!==n&&h(r,"invalid key length"),t=E(g),r.push(t);var i=new c(0|I._crypto_auth_hmacsha512_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_auth_hmacsha512(Q,a,B,0,t))){var s=o(i,e);return y(r),s}_(r,"invalid usage")}function J(A){var g=[];C(A);var e=new c(0|I._crypto_auth_hmacsha512_keybytes()),r=e.address;g.push(r),I._crypto_auth_hmacsha512_keygen(r);var a=o(e,A);return y(g),a}function K(A,g,e){var r=[];A=p(r,A,"tag");var a,B=0|I._crypto_auth_hmacsha512_bytes();A.length!==B&&h(r,"invalid tag length"),a=E(A),r.push(a);var t=E(g=p(r,g,"message")),n=g.length;r.push(t),e=p(r,e,"key");var i,o=0|I._crypto_auth_hmacsha512_keybytes();e.length!==o&&h(r,"invalid key length"),i=E(e),r.push(i);var Q=0==(0|I._crypto_auth_hmacsha512_verify(a,t,n,0,i));return y(r),Q}function L(A){var g=[];C(A);var e=new c(0|I._crypto_auth_keybytes()),r=e.address;g.push(r),I._crypto_auth_keygen(r);var a=o(e,A);return y(g),a}function T(A,g,e){var r=[];A=p(r,A,"tag");var a,B=0|I._crypto_auth_bytes();A.length!==B&&h(r,"invalid tag length"),a=E(A),r.push(a);var t=E(g=p(r,g,"message")),n=g.length;r.push(t),e=p(r,e,"key");var i,o=0|I._crypto_auth_keybytes();e.length!==o&&h(r,"invalid key length"),i=E(e),r.push(i);var Q=0==(0|I._crypto_auth_verify(a,t,n,0,i));return y(r),Q}function q(A,g,e){var r=[];C(e),A=p(r,A,"publicKey");var a,B=0|I._crypto_box_publickeybytes();A.length!==B&&h(r,"invalid publicKey length"),a=E(A),r.push(a),g=p(r,g,"privateKey");var t,n=0|I._crypto_box_secretkeybytes();g.length!==n&&h(r,"invalid privateKey length"),t=E(g),r.push(t);var i=new c(0|I._crypto_box_beforenmbytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_box_beforenm(Q,a,t))){var s=o(i,e);return y(r),s}_(r,"invalid usage")}function X(A){var g=[];C(A);var e=new c(0|I._crypto_box_curve25519xchacha20poly1305_publickeybytes()),r=e.address;g.push(r);var a=new c(0|I._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),B=a.address;g.push(B),I._crypto_box_curve25519xchacha20poly1305_keypair(r,B);var t=o({publicKey:e,privateKey:a,keyType:"curve25519"},A);return y(g),t}function V(A,g,e){var r=[];C(e);var a=E(A=p(r,A,"message")),B=A.length;r.push(a),g=p(r,g,"publicKey");var t,n=0|I._crypto_box_curve25519xchacha20poly1305_publickeybytes();g.length!==n&&h(r,"invalid publicKey length"),t=E(g),r.push(t);var i=new c(B+I._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),Q=i.address;r.push(Q),I._crypto_box_curve25519xchacha20poly1305_seal(Q,a,B,0,t);var s=o(i,e);return y(r),s}function W(A,g,e,r){var a=[];C(r),A=p(a,A,"ciphertext");var B,t=I._crypto_box_curve25519xchacha20poly1305_sealbytes(),n=A.length;n<t&&h(a,"ciphertext is too short"),B=E(A),a.push(B),g=p(a,g,"publicKey");var i,Q=0|I._crypto_box_curve25519xchacha20poly1305_publickeybytes();g.length!==Q&&h(a,"invalid publicKey length"),i=E(g),a.push(i),e=p(a,e,"secretKey");var s,_=0|I._crypto_box_curve25519xchacha20poly1305_secretkeybytes();e.length!==_&&h(a,"invalid secretKey length"),s=E(e),a.push(s);var f=new c(n-I._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),u=f.address;a.push(u),I._crypto_box_curve25519xchacha20poly1305_seal_open(u,B,n,0,i,s);var l=o(f,r);return y(a),l}function j(A,g,e,r,a){var B=[];C(a);var t=E(A=p(B,A,"message")),n=A.length;B.push(t),g=p(B,g,"nonce");var i,Q=0|I._crypto_box_noncebytes();g.length!==Q&&h(B,"invalid nonce length"),i=E(g),B.push(i),e=p(B,e,"publicKey");var s,f=0|I._crypto_box_publickeybytes();e.length!==f&&h(B,"invalid publicKey length"),s=E(e),B.push(s),r=p(B,r,"privateKey");var u,l=0|I._crypto_box_secretkeybytes();r.length!==l&&h(B,"invalid privateKey length"),u=E(r),B.push(u);var w=new c(0|n),D=w.address;B.push(D);var v=new c(0|I._crypto_box_macbytes()),d=v.address;if(B.push(d),0==(0|I._crypto_box_detached(D,d,t,n,0,i,s,u))){var b=o({ciphertext:w,mac:v},a);return y(B),b}_(B,"invalid usage")}function O(A,g,e,r,a){var B=[];C(a);var t=E(A=p(B,A,"message")),n=A.length;B.push(t),g=p(B,g,"nonce");var i,Q=0|I._crypto_box_noncebytes();g.length!==Q&&h(B,"invalid nonce length"),i=E(g),B.push(i),e=p(B,e,"publicKey");var s,f=0|I._crypto_box_publickeybytes();e.length!==f&&h(B,"invalid publicKey length"),s=E(e),B.push(s),r=p(B,r,"privateKey");var u,l=0|I._crypto_box_secretkeybytes();r.length!==l&&h(B,"invalid privateKey length"),u=E(r),B.push(u);var w=new c(n+I._crypto_box_macbytes()|0),D=w.address;if(B.push(D),0==(0|I._crypto_box_easy(D,t,n,0,i,s,u))){var v=o(w,a);return y(B),v}_(B,"invalid usage")}function Z(A,g,e,r){var a=[];C(r);var B=E(A=p(a,A,"message")),t=A.length;a.push(B),g=p(a,g,"nonce");var n,i=0|I._crypto_box_noncebytes();g.length!==i&&h(a,"invalid nonce length"),n=E(g),a.push(n),e=p(a,e,"sharedKey");var Q,s=0|I._crypto_box_beforenmbytes();e.length!==s&&h(a,"invalid sharedKey length"),Q=E(e),a.push(Q);var f=new c(t+I._crypto_box_macbytes()|0),u=f.address;if(a.push(u),0==(0|I._crypto_box_easy_afternm(u,B,t,0,n,Q))){var l=o(f,r);return y(a),l}_(a,"invalid usage")}function z(A){var g=[];C(A);var e=new c(0|I._crypto_box_publickeybytes()),r=e.address;g.push(r);var a=new c(0|I._crypto_box_secretkeybytes()),B=a.address;if(g.push(B),0==(0|I._crypto_box_keypair(r,B))){var t={publicKey:o(e,A),privateKey:o(a,A),keyType:"x25519"};return y(g),t}_(g,"internal error")}function $(A,g,e,r,a,B){var t=[];C(B);var n=E(A=p(t,A,"ciphertext")),i=A.length;t.push(n),g=p(t,g,"mac");var Q,s=0|I._crypto_box_macbytes();g.length!==s&&h(t,"invalid mac length"),Q=E(g),t.push(Q),e=p(t,e,"nonce");var f,u=0|I._crypto_box_noncebytes();e.length!==u&&h(t,"invalid nonce length"),f=E(e),t.push(f),r=p(t,r,"publicKey");var l,w=0|I._crypto_box_publickeybytes();r.length!==w&&h(t,"invalid publicKey length"),l=E(r),t.push(l),a=p(t,a,"privateKey");var D,v=0|I._crypto_box_secretkeybytes();a.length!==v&&h(t,"invalid privateKey length"),D=E(a),t.push(D);var d=new c(0|i),b=d.address;if(t.push(b),0==(0|I._crypto_box_open_detached(b,n,Q,i,0,f,l,D))){var k=o(d,B);return y(t),k}_(t,"incorrect key pair for the given ciphertext")}function AA(A,g,e,r,a){var B=[];C(a),A=p(B,A,"ciphertext");var t,n=I._crypto_box_macbytes(),i=A.length;i<n&&h(B,"ciphertext is too short"),t=E(A),B.push(t),g=p(B,g,"nonce");var Q,s=0|I._crypto_box_noncebytes();g.length!==s&&h(B,"invalid nonce length"),Q=E(g),B.push(Q),e=p(B,e,"publicKey");var f,u=0|I._crypto_box_publickeybytes();e.length!==u&&h(B,"invalid publicKey length"),f=E(e),B.push(f),r=p(B,r,"privateKey");var l,w=0|I._crypto_box_secretkeybytes();r.length!==w&&h(B,"invalid privateKey length"),l=E(r),B.push(l);var D=new c(i-I._crypto_box_macbytes()|0),v=D.address;if(B.push(v),0==(0|I._crypto_box_open_easy(v,t,i,0,Q,f,l))){var d=o(D,a);return y(B),d}_(B,"incorrect key pair for the given ciphertext")}function gA(A,g,e,r){var a=[];C(r);var B=E(A=p(a,A,"ciphertext")),t=A.length;a.push(B),g=p(a,g,"nonce");var n,i=0|I._crypto_box_noncebytes();g.length!==i&&h(a,"invalid nonce length"),n=E(g),a.push(n),e=p(a,e,"sharedKey");var Q,s=0|I._crypto_box_beforenmbytes();e.length!==s&&h(a,"invalid sharedKey length"),Q=E(e),a.push(Q);var f=new c(t-I._crypto_box_macbytes()|0),u=f.address;if(a.push(u),0==(0|I._crypto_box_open_easy_afternm(u,B,t,0,n,Q))){var l=o(f,r);return y(a),l}_(a,"incorrect secret key for the given ciphertext")}function IA(A,g,e){var r=[];C(e);var a=E(A=p(r,A,"message")),B=A.length;r.push(a),g=p(r,g,"publicKey");var t,n=0|I._crypto_box_publickeybytes();g.length!==n&&h(r,"invalid publicKey length"),t=E(g),r.push(t);var i=new c(B+I._crypto_box_sealbytes()|0),Q=i.address;if(r.push(Q),0==(0|I._crypto_box_seal(Q,a,B,0,t))){var s=o(i,e);return y(r),s}_(r,"invalid usage")}function eA(A,g,e,r){var a=[];C(r),A=p(a,A,"ciphertext");var B,t=I._crypto_box_sealbytes(),n=A.length;n<t&&h(a,"ciphertext is too short"),B=E(A),a.push(B),g=p(a,g,"publicKey");var i,Q=0|I._crypto_box_publickeybytes();g.length!==Q&&h(a,"invalid publicKey length"),i=E(g),a.push(i),e=p(a,e,"privateKey");var s,f=0|I._crypto_box_secretkeybytes();e.length!==f&&h(a,"invalid privateKey length"),s=E(e),a.push(s);var u=new c(n-I._crypto_box_sealbytes()|0),l=u.address;if(a.push(l),0==(0|I._crypto_box_seal_open(l,B,n,0,i,s))){var w=o(u,r);return y(a),w}_(a,"incorrect key pair for the given ciphertext")}function rA(A,g){var e=[];C(g),A=p(e,A,"seed");var r,a=0|I._crypto_box_seedbytes();A.length!==a&&h(e,"invalid seed length"),r=E(A),e.push(r);var B=new c(0|I._crypto_box_publickeybytes()),t=B.address;e.push(t);var n=new c(0|I._crypto_box_secretkeybytes()),i=n.address;if(e.push(i),0==(0|I._crypto_box_seed_keypair(t,i,r))){var Q={publicKey:o(B,g),privateKey:o(n,g),keyType:"x25519"};return y(e),Q}_(e,"invalid usage")}function aA(A,g,e){var r=[];C(e),A=p(r,A,"p");var a,B=0|I._crypto_core_ed25519_bytes();A.length!==B&&h(r,"invalid p length"),a=E(A),r.push(a),g=p(r,g,"q");var t,n=0|I._crypto_core_ed25519_bytes();g.length!==n&&h(r,"invalid q length"),t=E(g),r.push(t);var i=new c(0|I._crypto_core_ed25519_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_core_ed25519_add(Q,a,t))){var s=o(i,e);return y(r),s}_(r,"input is an invalid element")}function BA(A,g){var e=[];C(g);var r=E(A=p(e,A,"r"));A.length,e.push(r);var a=new c(0|I._crypto_core_ed25519_bytes()),B=a.address;if(e.push(B),0==(0|I._crypto_core_ed25519_from_hash(B,r))){var t=o(a,g);return y(e),t}_(e,"invalid usage")}function tA(A,g){var e=[];C(g);var r=E(A=p(e,A,"r"));A.length,e.push(r);var a=new c(0|I._crypto_core_ed25519_bytes()),B=a.address;if(e.push(B),0==(0|I._crypto_core_ed25519_from_uniform(B,r))){var t=o(a,g);return y(e),t}_(e,"invalid usage")}function nA(A,g){var e=[];C(g),A=p(e,A,"repr");var r,a=0|I._crypto_core_ed25519_bytes();A.length!==a&&h(e,"invalid repr length"),r=E(A),e.push(r);var B=1==(0|I._crypto_core_ed25519_is_valid_point(r));return y(e),B}function iA(A){var g=[];C(A);var e=new c(0|I._crypto_core_ed25519_bytes()),r=e.address;g.push(r),I._crypto_core_ed25519_random(r);var a=o(e,A);return y(g),a}function oA(A,g,e){var r=[];C(e),A=p(r,A,"x");var a,B=0|I._crypto_core_ed25519_scalarbytes();A.length!==B&&h(r,"invalid x length"),a=E(A),r.push(a),g=p(r,g,"y");var t,n=0|I._crypto_core_ed25519_scalarbytes();g.length!==n&&h(r,"invalid y length"),t=E(g),r.push(t);var i=new c(0|I._crypto_core_ed25519_scalarbytes()),Q=i.address;r.push(Q),I._crypto_core_ed25519_scalar_add(Q,a,t);var s=o(i,e);return y(r),s}function QA(A,g){var e=[];C(g),A=p(e,A,"s");var r,a=0|I._crypto_core_ed25519_scalarbytes();A.length!==a&&h(e,"invalid s length"),r=E(A),e.push(r);var B=new c(0|I._crypto_core_ed25519_scalarbytes()),t=B.address;e.push(t),I._crypto_core_ed25519_scalar_complement(t,r);var n=o(B,g);return y(e),n}function CA(A,g){var e=[];C(g),A=p(e,A,"s");var r,a=0|I._crypto_core_ed25519_scalarbytes();A.length!==a&&h(e,"invalid s length"),r=E(A),e.push(r);var B=new c(0|I._crypto_core_ed25519_scalarbytes()),t=B.address;if(e.push(t),0==(0|I._crypto_core_ed25519_scalar_invert(t,r))){var n=o(B,g);return y(e),n}_(e,"invalid reciprocate")}function cA(A,g,e){var r=[];C(e),A=p(r,A,"x");var a,B=0|I._crypto_core_ed25519_scalarbytes();A.length!==B&&h(r,"invalid x length"),a=E(A),r.push(a),g=p(r,g,"y");var t,n=0|I._crypto_core_ed25519_scalarbytes();g.length!==n&&h(r,"invalid y length"),t=E(g),r.push(t);var i=new c(0|I._crypto_core_ed25519_scalarbytes()),Q=i.address;r.push(Q),I._crypto_core_ed25519_scalar_mul(Q,a,t);var s=o(i,e);return y(r),s}function EA(A,g){var e=[];C(g),A=p(e,A,"s");var r,a=0|I._crypto_core_ed25519_scalarbytes();A.length!==a&&h(e,"invalid s length"),r=E(A),e.push(r);var B=new c(0|I._crypto_core_ed25519_scalarbytes()),t=B.address;e.push(t),I._crypto_core_ed25519_scalar_negate(t,r);var n=o(B,g);return y(e),n}function sA(A){var g=[];C(A);var e=new c(0|I._crypto_core_ed25519_scalarbytes()),r=e.address;g.push(r),I._crypto_core_ed25519_scalar_random(r);var a=o(e,A);return y(g),a}function yA(A,g){var e=[];C(g),A=p(e,A,"sample");var r,a=0|I._crypto_core_ed25519_nonreducedscalarbytes();A.length!==a&&h(e,"invalid sample length"),r=E(A),e.push(r);var B=new c(0|I._crypto_core_ed25519_scalarbytes()),t=B.address;e.push(t),I._crypto_core_ed25519_scalar_reduce(t,r);var n=o(B,g);return y(e),n}function _A(A,g,e){var r=[];C(e),A=p(r,A,"x");var a,B=0|I._crypto_core_ed25519_scalarbytes();A.length!==B&&h(r,"invalid x length"),a=E(A),r.push(a),g=p(r,g,"y");var t,n=0|I._crypto_core_ed25519_scalarbytes();g.length!==n&&h(r,"invalid y length"),t=E(g),r.push(t);var i=new c(0|I._crypto_core_ed25519_scalarbytes()),Q=i.address;r.push(Q),I._crypto_core_ed25519_scalar_sub(Q,a,t);var s=o(i,e);return y(r),s}function hA(A,g,e){var r=[];C(e),A=p(r,A,"p");var a,B=0|I._crypto_core_ed25519_bytes();A.length!==B&&h(r,"invalid p length"),a=E(A),r.push(a),g=p(r,g,"q");var t,n=0|I._crypto_core_ed25519_bytes();g.length!==n&&h(r,"invalid q length"),t=E(g),r.push(t);var i=new c(0|I._crypto_core_ed25519_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_core_ed25519_sub(Q,a,t))){var s=o(i,e);return y(r),s}_(r,"input is an invalid element")}function fA(A,g,e){var r=[];C(e),A=p(r,A,"p");var a,B=0|I._crypto_core_ristretto255_bytes();A.length!==B&&h(r,"invalid p length"),a=E(A),r.push(a),g=p(r,g,"q");var t,n=0|I._crypto_core_ristretto255_bytes();g.length!==n&&h(r,"invalid q length"),t=E(g),r.push(t);var i=new c(0|I._crypto_core_ristretto255_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_core_ristretto255_add(Q,a,t))){var s=o(i,e);return y(r),s}_(r,"input is an invalid element")}function pA(A,g){var e=[];C(g);var r=E(A=p(e,A,"r"));A.length,e.push(r);var a=new c(0|I._crypto_core_ristretto255_bytes()),B=a.address;if(e.push(B),0==(0|I._crypto_core_ristretto255_from_hash(B,r))){var t=o(a,g);return y(e),t}_(e,"invalid usage")}function uA(A,g){var e=[];C(g),A=p(e,A,"repr");var r,a=0|I._crypto_core_ristretto255_bytes();A.length!==a&&h(e,"invalid repr length"),r=E(A),e.push(r);var B=1==(0|I._crypto_core_ristretto255_is_valid_point(r));return y(e),B}function lA(A){var g=[];C(A);var e=new c(0|I._crypto_core_ristretto255_bytes()),r=e.address;g.push(r),I._crypto_core_ristretto255_random(r);var a=o(e,A);return y(g),a}function wA(A,g,e){var r=[];C(e),A=p(r,A,"x");var a,B=0|I._crypto_core_ristretto255_scalarbytes();A.length!==B&&h(r,"invalid x length"),a=E(A),r.push(a),g=p(r,g,"y");var t,n=0|I._crypto_core_ristretto255_scalarbytes();g.length!==n&&h(r,"invalid y length"),t=E(g),r.push(t);var i=new c(0|I._crypto_core_ristretto255_scalarbytes()),Q=i.address;r.push(Q),I._crypto_core_ristretto255_scalar_add(Q,a,t);var s=o(i,e);return y(r),s}function DA(A,g){var e=[];C(g),A=p(e,A,"s");var r,a=0|I._crypto_core_ristretto255_scalarbytes();A.length!==a&&h(e,"invalid s length"),r=E(A),e.push(r);var B=new c(0|I._crypto_core_ristretto255_scalarbytes()),t=B.address;e.push(t),I._crypto_core_ristretto255_scalar_complement(t,r);var n=o(B,g);return y(e),n}function vA(A,g){var e=[];C(g),A=p(e,A,"s");var r,a=0|I._crypto_core_ristretto255_scalarbytes();A.length!==a&&h(e,"invalid s length"),r=E(A),e.push(r);var B=new c(0|I._crypto_core_ristretto255_scalarbytes()),t=B.address;if(e.push(t),0==(0|I._crypto_core_ristretto255_scalar_invert(t,r))){var n=o(B,g);return y(e),n}_(e,"invalid reciprocate")}function dA(A,g,e){var r=[];C(e),A=p(r,A,"x");var a,B=0|I._crypto_core_ristretto255_scalarbytes();A.length!==B&&h(r,"invalid x length"),a=E(A),r.push(a),g=p(r,g,"y");var t,n=0|I._crypto_core_ristretto255_scalarbytes();g.length!==n&&h(r,"invalid y length"),t=E(g),r.push(t);var i=new c(0|I._crypto_core_ristretto255_scalarbytes()),Q=i.address;r.push(Q),I._crypto_core_ristretto255_scalar_mul(Q,a,t);var s=o(i,e);return y(r),s}function bA(A,g){var e=[];C(g),A=p(e,A,"s");var r,a=0|I._crypto_core_ristretto255_scalarbytes();A.length!==a&&h(e,"invalid s length"),r=E(A),e.push(r);var B=new c(0|I._crypto_core_ristretto255_scalarbytes()),t=B.address;e.push(t),I._crypto_core_ristretto255_scalar_negate(t,r);var n=o(B,g);return y(e),n}function kA(A){var g=[];C(A);var e=new c(0|I._crypto_core_ristretto255_scalarbytes()),r=e.address;g.push(r),I._crypto_core_ristretto255_scalar_random(r);var a=o(e,A);return y(g),a}function FA(A,g){var e=[];C(g),A=p(e,A,"sample");var r,a=0|I._crypto_core_ristretto255_nonreducedscalarbytes();A.length!==a&&h(e,"invalid sample length"),r=E(A),e.push(r);var B=new c(0|I._crypto_core_ristretto255_scalarbytes()),t=B.address;e.push(t),I._crypto_core_ristretto255_scalar_reduce(t,r);var n=o(B,g);return y(e),n}function GA(A,g,e){var r=[];C(e),A=p(r,A,"x");var a,B=0|I._crypto_core_ristretto255_scalarbytes();A.length!==B&&h(r,"invalid x length"),a=E(A),r.push(a),g=p(r,g,"y");var t,n=0|I._crypto_core_ristretto255_scalarbytes();g.length!==n&&h(r,"invalid y length"),t=E(g),r.push(t);var i=new c(0|I._crypto_core_ristretto255_scalarbytes()),Q=i.address;r.push(Q),I._crypto_core_ristretto255_scalar_sub(Q,a,t);var s=o(i,e);return y(r),s}function mA(A,g,e){var r=[];C(e),A=p(r,A,"p");var a,B=0|I._crypto_core_ristretto255_bytes();A.length!==B&&h(r,"invalid p length"),a=E(A),r.push(a),g=p(r,g,"q");var t,n=0|I._crypto_core_ristretto255_bytes();g.length!==n&&h(r,"invalid q length"),t=E(g),r.push(t);var i=new c(0|I._crypto_core_ristretto255_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_core_ristretto255_sub(Q,a,t))){var s=o(i,e);return y(r),s}_(r,"input is an invalid element")}function YA(A,g,e,r){var a=[];C(r),f(a,A,"hash_length"),("number"!=typeof A||(0|A)!==A||A<0)&&h(a,"hash_length must be an unsigned integer");var B=E(g=p(a,g,"message")),t=g.length;a.push(B);var n=null,i=0;null!=e&&(n=E(e=p(a,e,"key")),i=e.length,a.push(n));var Q=new c(A|=0),s=Q.address;if(a.push(s),0==(0|I._crypto_generichash(s,A,B,t,0,n,i))){var u=o(Q,r);return y(a),u}_(a,"invalid usage")}function HA(A,g,e,r,a){var B=[];C(a),f(B,A,"subkey_len"),("number"!=typeof A||(0|A)!==A||A<0)&&h(B,"subkey_len must be an unsigned integer");var t=null,n=0;null!=g&&(t=E(g=p(B,g,"key")),n=g.length,B.push(t)),e=p(B,e,"id");var i,Q=0|I._crypto_generichash_blake2b_saltbytes();e.length!==Q&&h(B,"invalid id length"),i=E(e),B.push(i),r=p(B,r,"ctx");var s,u=0|I._crypto_generichash_blake2b_personalbytes();r.length!==u&&h(B,"invalid ctx length"),s=E(r),B.push(s);var l=new c(0|A),w=l.address;if(B.push(w),0==(0|I._crypto_generichash_blake2b_salt_personal(w,A,null,0,0,t,n,i,s))){var D=o(l,a);return y(B),D}_(B,"invalid usage")}function SA(A,g,e){var r=[];C(e),f(r,A,"state_address"),f(r,g,"hash_length"),("number"!=typeof g||(0|g)!==g||g<0)&&h(r,"hash_length must be an unsigned integer");var a=new c(g|=0),B=a.address;if(r.push(B),0==(0|I._crypto_generichash_final(A,B,g))){var t=(I._free(A),o(a,e));return y(r),t}_(r,"invalid usage")}function UA(A,g,e){var r=[];C(e);var a=null,B=0;null!=A&&(a=E(A=p(r,A,"key")),B=A.length,r.push(a)),f(r,g,"hash_length"),("number"!=typeof g||(0|g)!==g||g<0)&&h(r,"hash_length must be an unsigned integer");var t=new c(357).address;if(0==(0|I._crypto_generichash_init(t,a,B,g))){var n=t;return y(r),n}_(r,"invalid usage")}function MA(A){var g=[];C(A);var e=new c(0|I._crypto_generichash_keybytes()),r=e.address;g.push(r),I._crypto_generichash_keygen(r);var a=o(e,A);return y(g),a}function NA(A,g,e){var r=[];C(e),f(r,A,"state_address");var a=E(g=p(r,g,"message_chunk")),B=g.length;r.push(a),0!=(0|I._crypto_generichash_update(A,a,B))&&_(r,"invalid usage"),y(r)}function xA(A,g){var e=[];C(g);var r=E(A=p(e,A,"message")),a=A.length;e.push(r);var B=new c(0|I._crypto_hash_bytes()),t=B.address;if(e.push(t),0==(0|I._crypto_hash(t,r,a,0))){var n=o(B,g);return y(e),n}_(e,"invalid usage")}function PA(A,g){var e=[];C(g);var r=E(A=p(e,A,"message")),a=A.length;e.push(r);var B=new c(0|I._crypto_hash_sha256_bytes()),t=B.address;if(e.push(t),0==(0|I._crypto_hash_sha256(t,r,a,0))){var n=o(B,g);return y(e),n}_(e,"invalid usage")}function RA(A,g){var e=[];C(g),f(e,A,"state_address");var r=new c(0|I._crypto_hash_sha256_bytes()),a=r.address;if(e.push(a),0==(0|I._crypto_hash_sha256_final(A,a))){var B=(I._free(A),o(r,g));return y(e),B}_(e,"invalid usage")}function JA(A){var g=[];C(A);var e=new c(104).address;if(0==(0|I._crypto_hash_sha256_init(e))){var r=e;return y(g),r}_(g,"invalid usage")}function KA(A,g,e){var r=[];C(e),f(r,A,"state_address");var a=E(g=p(r,g,"message_chunk")),B=g.length;r.push(a),0!=(0|I._crypto_hash_sha256_update(A,a,B))&&_(r,"invalid usage"),y(r)}function LA(A,g){var e=[];C(g);var r=E(A=p(e,A,"message")),a=A.length;e.push(r);var B=new c(0|I._crypto_hash_sha512_bytes()),t=B.address;if(e.push(t),0==(0|I._crypto_hash_sha512(t,r,a,0))){var n=o(B,g);return y(e),n}_(e,"invalid usage")}function TA(A,g){var e=[];C(g),f(e,A,"state_address");var r=new c(0|I._crypto_hash_sha512_bytes()),a=r.address;if(e.push(a),0==(0|I._crypto_hash_sha512_final(A,a))){var B=(I._free(A),o(r,g));return y(e),B}_(e,"invalid usage")}function qA(A){var g=[];C(A);var e=new c(208).address;if(0==(0|I._crypto_hash_sha512_init(e))){var r=e;return y(g),r}_(g,"invalid usage")}function XA(A,g,e){var r=[];C(e),f(r,A,"state_address");var a=E(g=p(r,g,"message_chunk")),B=g.length;r.push(a),0!=(0|I._crypto_hash_sha512_update(A,a,B))&&_(r,"invalid usage"),y(r)}function VA(A,g,e,a,B){var t=[];C(B),f(t,A,"subkey_len"),("number"!=typeof A||(0|A)!==A||A<0)&&h(t,"subkey_len must be an unsigned integer"),f(t,g,"subkey_id"),("number"!=typeof g||(0|g)!==g||g<0)&&h(t,"subkey_id must be an unsigned integer"),"string"!=typeof e&&h(t,"ctx must be a string"),e=r(e+"\0"),null!=i&&e.length-1!==i&&h(t,"invalid ctx length");var n=E(e),i=e.length-1;t.push(n),a=p(t,a,"key");var Q,s=0|I._crypto_kdf_keybytes();a.length!==s&&h(t,"invalid key length"),Q=E(a),t.push(Q);var _=new c(0|A),u=_.address;t.push(u),I._crypto_kdf_derive_from_key(u,A,g,g>>>24>>>8,n,Q);var l=o(_,B);return y(t),l}function WA(A){var g=[];C(A);var e=new c(0|I._crypto_kdf_keybytes()),r=e.address;g.push(r),I._crypto_kdf_keygen(r);var a=o(e,A);return y(g),a}function jA(A,g,e,r){var a=[];C(r),A=p(a,A,"clientPublicKey");var B,t=0|I._crypto_kx_publickeybytes();A.length!==t&&h(a,"invalid clientPublicKey length"),B=E(A),a.push(B),g=p(a,g,"clientSecretKey");var n,i=0|I._crypto_kx_secretkeybytes();g.length!==i&&h(a,"invalid clientSecretKey length"),n=E(g),a.push(n),e=p(a,e,"serverPublicKey");var Q,s=0|I._crypto_kx_publickeybytes();e.length!==s&&h(a,"invalid serverPublicKey length"),Q=E(e),a.push(Q);var f=new c(0|I._crypto_kx_sessionkeybytes()),u=f.address;a.push(u);var l=new c(0|I._crypto_kx_sessionkeybytes()),w=l.address;if(a.push(w),0==(0|I._crypto_kx_client_session_keys(u,w,B,n,Q))){var D=o({sharedRx:f,sharedTx:l},r);return y(a),D}_(a,"invalid usage")}function OA(A){var g=[];C(A);var e=new c(0|I._crypto_kx_publickeybytes()),r=e.address;g.push(r);var a=new c(0|I._crypto_kx_secretkeybytes()),B=a.address;if(g.push(B),0==(0|I._crypto_kx_keypair(r,B))){var t={publicKey:o(e,A),privateKey:o(a,A),keyType:"x25519"};return y(g),t}_(g,"internal error")}function ZA(A,g){var e=[];C(g),A=p(e,A,"seed");var r,a=0|I._crypto_kx_seedbytes();A.length!==a&&h(e,"invalid seed length"),r=E(A),e.push(r);var B=new c(0|I._crypto_kx_publickeybytes()),t=B.address;e.push(t);var n=new c(0|I._crypto_kx_secretkeybytes()),i=n.address;if(e.push(i),0==(0|I._crypto_kx_seed_keypair(t,i,r))){var Q={publicKey:o(B,g),privateKey:o(n,g),keyType:"x25519"};return y(e),Q}_(e,"internal error")}function zA(A,g,e,r){var a=[];C(r),A=p(a,A,"serverPublicKey");var B,t=0|I._crypto_kx_publickeybytes();A.length!==t&&h(a,"invalid serverPublicKey length"),B=E(A),a.push(B),g=p(a,g,"serverSecretKey");var n,i=0|I._crypto_kx_secretkeybytes();g.length!==i&&h(a,"invalid serverSecretKey length"),n=E(g),a.push(n),e=p(a,e,"clientPublicKey");var Q,s=0|I._crypto_kx_publickeybytes();e.length!==s&&h(a,"invalid clientPublicKey length"),Q=E(e),a.push(Q);var f=new c(0|I._crypto_kx_sessionkeybytes()),u=f.address;a.push(u);var l=new c(0|I._crypto_kx_sessionkeybytes()),w=l.address;if(a.push(w),0==(0|I._crypto_kx_server_session_keys(u,w,B,n,Q))){var D=o({sharedRx:f,sharedTx:l},r);return y(a),D}_(a,"invalid usage")}function $A(A,g,e){var r=[];C(e);var a=E(A=p(r,A,"message")),B=A.length;r.push(a),g=p(r,g,"key");var t,n=0|I._crypto_onetimeauth_keybytes();g.length!==n&&h(r,"invalid key length"),t=E(g),r.push(t);var i=new c(0|I._crypto_onetimeauth_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_onetimeauth(Q,a,B,0,t))){var s=o(i,e);return y(r),s}_(r,"invalid usage")}function Ag(A,g){var e=[];C(g),f(e,A,"state_address");var r=new c(0|I._crypto_onetimeauth_bytes()),a=r.address;if(e.push(a),0==(0|I._crypto_onetimeauth_final(A,a))){var B=(I._free(A),o(r,g));return y(e),B}_(e,"invalid usage")}function gg(A,g){var e=[];C(g);var r=null;null!=A&&(r=E(A=p(e,A,"key")),A.length,e.push(r));var a=new c(144).address;if(0==(0|I._crypto_onetimeauth_init(a,r))){var B=a;return y(e),B}_(e,"invalid usage")}function Ig(A){var g=[];C(A);var e=new c(0|I._crypto_onetimeauth_keybytes()),r=e.address;g.push(r),I._crypto_onetimeauth_keygen(r);var a=o(e,A);return y(g),a}function eg(A,g,e){var r=[];C(e),f(r,A,"state_address");var a=E(g=p(r,g,"message_chunk")),B=g.length;r.push(a),0!=(0|I._crypto_onetimeauth_update(A,a,B))&&_(r,"invalid usage"),y(r)}function rg(A,g,e){var r=[];A=p(r,A,"hash");var a,B=0|I._crypto_onetimeauth_bytes();A.length!==B&&h(r,"invalid hash length"),a=E(A),r.push(a);var t=E(g=p(r,g,"message")),n=g.length;r.push(t),e=p(r,e,"key");var i,o=0|I._crypto_onetimeauth_keybytes();e.length!==o&&h(r,"invalid key length"),i=E(e),r.push(i);var Q=0==(0|I._crypto_onetimeauth_verify(a,t,n,0,i));return y(r),Q}function ag(A,g,e,r,a,B,t){var n=[];C(t),f(n,A,"keyLength"),("number"!=typeof A||(0|A)!==A||A<0)&&h(n,"keyLength must be an unsigned integer");var i=E(g=p(n,g,"password")),Q=g.length;n.push(i),e=p(n,e,"salt");var s,u=0|I._crypto_pwhash_saltbytes();e.length!==u&&h(n,"invalid salt length"),s=E(e),n.push(s),f(n,r,"opsLimit"),("number"!=typeof r||(0|r)!==r||r<0)&&h(n,"opsLimit must be an unsigned integer"),f(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&h(n,"memLimit must be an unsigned integer"),f(n,B,"algorithm"),("number"!=typeof B||(0|B)!==B||B<0)&&h(n,"algorithm must be an unsigned integer");var l=new c(0|A),w=l.address;if(n.push(w),0==(0|I._crypto_pwhash(w,A,0,i,Q,0,s,r,0,a,B))){var D=o(l,t);return y(n),D}_(n,"invalid usage")}function Bg(A,g,e,r,a,B){var t=[];C(B),f(t,A,"keyLength"),("number"!=typeof A||(0|A)!==A||A<0)&&h(t,"keyLength must be an unsigned integer");var n=E(g=p(t,g,"password")),i=g.length;t.push(n),e=p(t,e,"salt");var Q,s=0|I._crypto_pwhash_scryptsalsa208sha256_saltbytes();e.length!==s&&h(t,"invalid salt length"),Q=E(e),t.push(Q),f(t,r,"opsLimit"),("number"!=typeof r||(0|r)!==r||r<0)&&h(t,"opsLimit must be an unsigned integer"),f(t,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&h(t,"memLimit must be an unsigned integer");var u=new c(0|A),l=u.address;if(t.push(l),0==(0|I._crypto_pwhash_scryptsalsa208sha256(l,A,0,n,i,0,Q,r,0,a))){var w=o(u,B);return y(t),w}_(t,"invalid usage")}function tg(A,g,e,r,a,B,t){var n=[];C(t);var i=E(A=p(n,A,"password")),Q=A.length;n.push(i);var s=E(g=p(n,g,"salt")),u=g.length;n.push(s),f(n,e,"opsLimit"),("number"!=typeof e||(0|e)!==e||e<0)&&h(n,"opsLimit must be an unsigned integer"),f(n,r,"r"),("number"!=typeof r||(0|r)!==r||r<0)&&h(n,"r must be an unsigned integer"),f(n,a,"p"),("number"!=typeof a||(0|a)!==a||a<0)&&h(n,"p must be an unsigned integer"),f(n,B,"keyLength"),("number"!=typeof B||(0|B)!==B||B<0)&&h(n,"keyLength must be an unsigned integer");var l=new c(0|B),w=l.address;if(n.push(w),0==(0|I._crypto_pwhash_scryptsalsa208sha256_ll(i,Q,s,u,e,0,r,a,w,B))){var D=o(l,t);return y(n),D}_(n,"invalid usage")}function ng(A,g,e,r){var a=[];C(r);var B=E(A=p(a,A,"password")),t=A.length;a.push(B),f(a,g,"opsLimit"),("number"!=typeof g||(0|g)!==g||g<0)&&h(a,"opsLimit must be an unsigned integer"),f(a,e,"memLimit"),("number"!=typeof e||(0|e)!==e||e<0)&&h(a,"memLimit must be an unsigned integer");var n=new c(0|I._crypto_pwhash_scryptsalsa208sha256_strbytes()).address;if(a.push(n),0==(0|I._crypto_pwhash_scryptsalsa208sha256_str(n,B,t,0,g,0,e))){var i=I.UTF8ToString(n);return y(a),i}_(a,"invalid usage")}function ig(A,g,e){var a=[];C(e),"string"!=typeof A&&h(a,"hashed_password must be a string"),A=r(A+"\0"),null!=t&&A.length-1!==t&&h(a,"invalid hashed_password length");var B=E(A),t=A.length-1;a.push(B);var n=E(g=p(a,g,"password")),i=g.length;a.push(n);var o=0==(0|I._crypto_pwhash_scryptsalsa208sha256_str_verify(B,n,i,0));return y(a),o}function og(A,g,e,r){var a=[];C(r);var B=E(A=p(a,A,"password")),t=A.length;a.push(B),f(a,g,"opsLimit"),("number"!=typeof g||(0|g)!==g||g<0)&&h(a,"opsLimit must be an unsigned integer"),f(a,e,"memLimit"),("number"!=typeof e||(0|e)!==e||e<0)&&h(a,"memLimit must be an unsigned integer");var n=new c(0|I._crypto_pwhash_strbytes()).address;if(a.push(n),0==(0|I._crypto_pwhash_str(n,B,t,0,g,0,e))){var i=I.UTF8ToString(n);return y(a),i}_(a,"invalid usage")}function Qg(A,g,e,a){var B=[];C(a),"string"!=typeof A&&h(B,"hashed_password must be a string"),A=r(A+"\0"),null!=n&&A.length-1!==n&&h(B,"invalid hashed_password length");var t=E(A),n=A.length-1;B.push(t),f(B,g,"opsLimit"),("number"!=typeof g||(0|g)!==g||g<0)&&h(B,"opsLimit must be an unsigned integer"),f(B,e,"memLimit"),("number"!=typeof e||(0|e)!==e||e<0)&&h(B,"memLimit must be an unsigned integer");var i=0!=(0|I._crypto_pwhash_str_needs_rehash(t,g,0,e));return y(B),i}function Cg(A,g,e){var a=[];C(e),"string"!=typeof A&&h(a,"hashed_password must be a string"),A=r(A+"\0"),null!=t&&A.length-1!==t&&h(a,"invalid hashed_password length");var B=E(A),t=A.length-1;a.push(B);var n=E(g=p(a,g,"password")),i=g.length;a.push(n);var o=0==(0|I._crypto_pwhash_str_verify(B,n,i,0));return y(a),o}function cg(A,g,e){var r=[];C(e),A=p(r,A,"privateKey");var a,B=0|I._crypto_scalarmult_scalarbytes();A.length!==B&&h(r,"invalid privateKey length"),a=E(A),r.push(a),g=p(r,g,"publicKey");var t,n=0|I._crypto_scalarmult_bytes();g.length!==n&&h(r,"invalid publicKey length"),t=E(g),r.push(t);var i=new c(0|I._crypto_scalarmult_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_scalarmult(Q,a,t))){var s=o(i,e);return y(r),s}_(r,"weak public key")}function Eg(A,g){var e=[];C(g),A=p(e,A,"privateKey");var r,a=0|I._crypto_scalarmult_scalarbytes();A.length!==a&&h(e,"invalid privateKey length"),r=E(A),e.push(r);var B=new c(0|I._crypto_scalarmult_bytes()),t=B.address;if(e.push(t),0==(0|I._crypto_scalarmult_base(t,r))){var n=o(B,g);return y(e),n}_(e,"unknown error")}function sg(A,g,e){var r=[];C(e),A=p(r,A,"n");var a,B=0|I._crypto_scalarmult_ed25519_scalarbytes();A.length!==B&&h(r,"invalid n length"),a=E(A),r.push(a),g=p(r,g,"p");var t,n=0|I._crypto_scalarmult_ed25519_bytes();g.length!==n&&h(r,"invalid p length"),t=E(g),r.push(t);var i=new c(0|I._crypto_scalarmult_ed25519_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_scalarmult_ed25519(Q,a,t))){var s=o(i,e);return y(r),s}_(r,"invalid point or scalar is 0")}function yg(A,g){var e=[];C(g),A=p(e,A,"scalar");var r,a=0|I._crypto_scalarmult_ed25519_scalarbytes();A.length!==a&&h(e,"invalid scalar length"),r=E(A),e.push(r);var B=new c(0|I._crypto_scalarmult_ed25519_bytes()),t=B.address;if(e.push(t),0==(0|I._crypto_scalarmult_ed25519_base(t,r))){var n=o(B,g);return y(e),n}_(e,"scalar is 0")}function _g(A,g){var e=[];C(g),A=p(e,A,"scalar");var r,a=0|I._crypto_scalarmult_ed25519_scalarbytes();A.length!==a&&h(e,"invalid scalar length"),r=E(A),e.push(r);var B=new c(0|I._crypto_scalarmult_ed25519_bytes()),t=B.address;if(e.push(t),0==(0|I._crypto_scalarmult_ed25519_base_noclamp(t,r))){var n=o(B,g);return y(e),n}_(e,"scalar is 0")}function hg(A,g,e){var r=[];C(e),A=p(r,A,"n");var a,B=0|I._crypto_scalarmult_ed25519_scalarbytes();A.length!==B&&h(r,"invalid n length"),a=E(A),r.push(a),g=p(r,g,"p");var t,n=0|I._crypto_scalarmult_ed25519_bytes();g.length!==n&&h(r,"invalid p length"),t=E(g),r.push(t);var i=new c(0|I._crypto_scalarmult_ed25519_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_scalarmult_ed25519_noclamp(Q,a,t))){var s=o(i,e);return y(r),s}_(r,"invalid point or scalar is 0")}function fg(A,g,e){var r=[];C(e),A=p(r,A,"scalar");var a,B=0|I._crypto_scalarmult_ristretto255_scalarbytes();A.length!==B&&h(r,"invalid scalar length"),a=E(A),r.push(a),g=p(r,g,"element");var t,n=0|I._crypto_scalarmult_ristretto255_bytes();g.length!==n&&h(r,"invalid element length"),t=E(g),r.push(t);var i=new c(0|I._crypto_scalarmult_ristretto255_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_scalarmult_ristretto255(Q,a,t))){var s=o(i,e);return y(r),s}_(r,"result is identity element")}function pg(A,g){var e=[];C(g),A=p(e,A,"scalar");var r,a=0|I._crypto_core_ristretto255_scalarbytes();A.length!==a&&h(e,"invalid scalar length"),r=E(A),e.push(r);var B=new c(0|I._crypto_core_ristretto255_bytes()),t=B.address;if(e.push(t),0==(0|I._crypto_scalarmult_ristretto255_base(t,r))){var n=o(B,g);return y(e),n}_(e,"scalar is 0")}function ug(A,g,e,r){var a=[];C(r);var B=E(A=p(a,A,"message")),t=A.length;a.push(B),g=p(a,g,"nonce");var n,i=0|I._crypto_secretbox_noncebytes();g.length!==i&&h(a,"invalid nonce length"),n=E(g),a.push(n),e=p(a,e,"key");var Q,s=0|I._crypto_secretbox_keybytes();e.length!==s&&h(a,"invalid key length"),Q=E(e),a.push(Q);var f=new c(0|t),u=f.address;a.push(u);var l=new c(0|I._crypto_secretbox_macbytes()),w=l.address;if(a.push(w),0==(0|I._crypto_secretbox_detached(u,w,B,t,0,n,Q))){var D=o({mac:l,cipher:f},r);return y(a),D}_(a,"invalid usage")}function lg(A,g,e,r){var a=[];C(r);var B=E(A=p(a,A,"message")),t=A.length;a.push(B),g=p(a,g,"nonce");var n,i=0|I._crypto_secretbox_noncebytes();g.length!==i&&h(a,"invalid nonce length"),n=E(g),a.push(n),e=p(a,e,"key");var Q,s=0|I._crypto_secretbox_keybytes();e.length!==s&&h(a,"invalid key length"),Q=E(e),a.push(Q);var f=new c(t+I._crypto_secretbox_macbytes()|0),u=f.address;if(a.push(u),0==(0|I._crypto_secretbox_easy(u,B,t,0,n,Q))){var l=o(f,r);return y(a),l}_(a,"invalid usage")}function wg(A){var g=[];C(A);var e=new c(0|I._crypto_secretbox_keybytes()),r=e.address;g.push(r),I._crypto_secretbox_keygen(r);var a=o(e,A);return y(g),a}function Dg(A,g,e,r,a){var B=[];C(a);var t=E(A=p(B,A,"ciphertext")),n=A.length;B.push(t),g=p(B,g,"mac");var i,Q=0|I._crypto_secretbox_macbytes();g.length!==Q&&h(B,"invalid mac length"),i=E(g),B.push(i),e=p(B,e,"nonce");var s,f=0|I._crypto_secretbox_noncebytes();e.length!==f&&h(B,"invalid nonce length"),s=E(e),B.push(s),r=p(B,r,"key");var u,l=0|I._crypto_secretbox_keybytes();r.length!==l&&h(B,"invalid key length"),u=E(r),B.push(u);var w=new c(0|n),D=w.address;if(B.push(D),0==(0|I._crypto_secretbox_open_detached(D,t,i,n,0,s,u))){var v=o(w,a);return y(B),v}_(B,"wrong secret key for the given ciphertext")}function vg(A,g,e,r){var a=[];C(r),A=p(a,A,"ciphertext");var B,t=I._crypto_secretbox_macbytes(),n=A.length;n<t&&h(a,"ciphertext is too short"),B=E(A),a.push(B),g=p(a,g,"nonce");var i,Q=0|I._crypto_secretbox_noncebytes();g.length!==Q&&h(a,"invalid nonce length"),i=E(g),a.push(i),e=p(a,e,"key");var s,f=0|I._crypto_secretbox_keybytes();e.length!==f&&h(a,"invalid key length"),s=E(e),a.push(s);var u=new c(n-I._crypto_secretbox_macbytes()|0),l=u.address;if(a.push(l),0==(0|I._crypto_secretbox_open_easy(l,B,n,0,i,s))){var w=o(u,r);return y(a),w}_(a,"wrong secret key for the given ciphertext")}function dg(A,g,e){var r=[];C(e),A=p(r,A,"header");var a,B=0|I._crypto_secretstream_xchacha20poly1305_headerbytes();A.length!==B&&h(r,"invalid header length"),a=E(A),r.push(a),g=p(r,g,"key");var t,n=0|I._crypto_secretstream_xchacha20poly1305_keybytes();g.length!==n&&h(r,"invalid key length"),t=E(g),r.push(t);var i=new c(52).address;if(0==(0|I._crypto_secretstream_xchacha20poly1305_init_pull(i,a,t))){var o=i;return y(r),o}_(r,"invalid usage")}function bg(A,g){var e=[];C(g),A=p(e,A,"key");var r,a=0|I._crypto_secretstream_xchacha20poly1305_keybytes();A.length!==a&&h(e,"invalid key length"),r=E(A),e.push(r);var B=new c(52).address,t=new c(0|I._crypto_secretstream_xchacha20poly1305_headerbytes()),n=t.address;if(e.push(n),0==(0|I._crypto_secretstream_xchacha20poly1305_init_push(B,n,r))){var i={state:B,header:o(t,g)};return y(e),i}_(e,"invalid usage")}function kg(A){var g=[];C(A);var e=new c(0|I._crypto_secretstream_xchacha20poly1305_keybytes()),r=e.address;g.push(r),I._crypto_secretstream_xchacha20poly1305_keygen(r);var a=o(e,A);return y(g),a}function Fg(A,g,e,r){var a=[];C(r),f(a,A,"state_address"),g=p(a,g,"cipher");var B,t=I._crypto_secretstream_xchacha20poly1305_abytes(),n=g.length;n<t&&h(a,"cipher is too short"),B=E(g),a.push(B);var i=null,Q=0;null!=e&&(i=E(e=p(a,e,"ad")),Q=e.length,a.push(i));var _=new c(n-I._crypto_secretstream_xchacha20poly1305_abytes()|0),u=_.address;a.push(u);var l,w=(l=s(1),a.push(l),(w=0===I._crypto_secretstream_xchacha20poly1305_pull(A,u,0,l,B,n,0,i,Q)&&{tag:I.HEAPU8[l],message:_})&&{message:o(w.message,r),tag:w.tag});return y(a),w}function Gg(A,g,e,r,a){var B=[];C(a),f(B,A,"state_address");var t=E(g=p(B,g,"message_chunk")),n=g.length;B.push(t);var i=null,Q=0;null!=e&&(i=E(e=p(B,e,"ad")),Q=e.length,B.push(i)),f(B,r,"tag"),("number"!=typeof r||(0|r)!==r||r<0)&&h(B,"tag must be an unsigned integer");var s=new c(n+I._crypto_secretstream_xchacha20poly1305_abytes()|0),u=s.address;if(B.push(u),0==(0|I._crypto_secretstream_xchacha20poly1305_push(A,u,0,t,n,0,i,Q,0,r))){var l=o(s,a);return y(B),l}_(B,"invalid usage")}function mg(A,g){var e=[];return C(g),f(e,A,"state_address"),I._crypto_secretstream_xchacha20poly1305_rekey(A),y(e),!0}function Yg(A,g,e){var r=[];C(e);var a=E(A=p(r,A,"message")),B=A.length;r.push(a),g=p(r,g,"key");var t,n=0|I._crypto_shorthash_keybytes();g.length!==n&&h(r,"invalid key length"),t=E(g),r.push(t);var i=new c(0|I._crypto_shorthash_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_shorthash(Q,a,B,0,t))){var s=o(i,e);return y(r),s}_(r,"invalid usage")}function Hg(A){var g=[];C(A);var e=new c(0|I._crypto_shorthash_keybytes()),r=e.address;g.push(r),I._crypto_shorthash_keygen(r);var a=o(e,A);return y(g),a}function Sg(A,g,e){var r=[];C(e);var a=E(A=p(r,A,"message")),B=A.length;r.push(a),g=p(r,g,"key");var t,n=0|I._crypto_shorthash_siphashx24_keybytes();g.length!==n&&h(r,"invalid key length"),t=E(g),r.push(t);var i=new c(0|I._crypto_shorthash_siphashx24_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_shorthash_siphashx24(Q,a,B,0,t))){var s=o(i,e);return y(r),s}_(r,"invalid usage")}function Ug(A,g,e){var r=[];C(e);var a=E(A=p(r,A,"message")),B=A.length;r.push(a),g=p(r,g,"privateKey");var t,n=0|I._crypto_sign_secretkeybytes();g.length!==n&&h(r,"invalid privateKey length"),t=E(g),r.push(t);var i=new c(A.length+I._crypto_sign_bytes()|0),Q=i.address;if(r.push(Q),0==(0|I._crypto_sign(Q,null,a,B,0,t))){var s=o(i,e);return y(r),s}_(r,"invalid usage")}function Mg(A,g,e){var r=[];C(e);var a=E(A=p(r,A,"message")),B=A.length;r.push(a),g=p(r,g,"privateKey");var t,n=0|I._crypto_sign_secretkeybytes();g.length!==n&&h(r,"invalid privateKey length"),t=E(g),r.push(t);var i=new c(0|I._crypto_sign_bytes()),Q=i.address;if(r.push(Q),0==(0|I._crypto_sign_detached(Q,null,a,B,0,t))){var s=o(i,e);return y(r),s}_(r,"invalid usage")}function Ng(A,g){var e=[];C(g),A=p(e,A,"edPk");var r,a=0|I._crypto_sign_publickeybytes();A.length!==a&&h(e,"invalid edPk length"),r=E(A),e.push(r);var B=new c(0|I._crypto_scalarmult_scalarbytes()),t=B.address;if(e.push(t),0==(0|I._crypto_sign_ed25519_pk_to_curve25519(t,r))){var n=o(B,g);return y(e),n}_(e,"invalid key")}function xg(A,g){var e=[];C(g),A=p(e,A,"edSk");var r,a=0|I._crypto_sign_secretkeybytes();A.length!==a&&h(e,"invalid edSk length"),r=E(A),e.push(r);var B=new c(0|I._crypto_scalarmult_scalarbytes()),t=B.address;if(e.push(t),0==(0|I._crypto_sign_ed25519_sk_to_curve25519(t,r))){var n=o(B,g);return y(e),n}_(e,"invalid key")}function Pg(A,g){var e=[];C(g),A=p(e,A,"privateKey");var r,a=0|I._crypto_sign_secretkeybytes();A.length!==a&&h(e,"invalid privateKey length"),r=E(A),e.push(r);var B=new c(0|I._crypto_sign_publickeybytes()),t=B.address;if(e.push(t),0==(0|I._crypto_sign_ed25519_sk_to_pk(t,r))){var n=o(B,g);return y(e),n}_(e,"invalid key")}function Rg(A,g){var e=[];C(g),A=p(e,A,"privateKey");var r,a=0|I._crypto_sign_secretkeybytes();A.length!==a&&h(e,"invalid privateKey length"),r=E(A),e.push(r);var B=new c(0|I._crypto_sign_seedbytes()),t=B.address;if(e.push(t),0==(0|I._crypto_sign_ed25519_sk_to_seed(t,r))){var n=o(B,g);return y(e),n}_(e,"invalid key")}function Jg(A,g,e){var r=[];C(e),f(r,A,"state_address"),g=p(r,g,"privateKey");var a,B=0|I._crypto_sign_secretkeybytes();g.length!==B&&h(r,"invalid privateKey length"),a=E(g),r.push(a);var t=new c(0|I._crypto_sign_bytes()),n=t.address;if(r.push(n),0==(0|I._crypto_sign_final_create(A,n,null,a))){var i=(I._free(A),o(t,e));return y(r),i}_(r,"invalid usage")}function Kg(A,g,e,r){var a=[];C(r),f(a,A,"state_address"),g=p(a,g,"signature");var B,t=0|I._crypto_sign_bytes();g.length!==t&&h(a,"invalid signature length"),B=E(g),a.push(B),e=p(a,e,"publicKey");var n,i=0|I._crypto_sign_publickeybytes();e.length!==i&&h(a,"invalid publicKey length"),n=E(e),a.push(n);var o=0==(0|I._crypto_sign_final_verify(A,B,n));return y(a),o}function Lg(A){var g=[];C(A);var e=new c(208).address;if(0==(0|I._crypto_sign_init(e))){var r=e;return y(g),r}_(g,"internal error")}function Tg(A){var g=[];C(A);var e=new c(0|I._crypto_sign_publickeybytes()),r=e.address;g.push(r);var a=new c(0|I._crypto_sign_secretkeybytes()),B=a.address;if(g.push(B),0==(0|I._crypto_sign_keypair(r,B))){var t={publicKey:o(e,A),privateKey:o(a,A),keyType:"ed25519"};return y(g),t}_(g,"internal error")}function qg(A,g,e){var r=[];C(e),A=p(r,A,"signedMessage");var a,B=I._crypto_sign_bytes(),t=A.length;t<B&&h(r,"signedMessage is too short"),a=E(A),r.push(a),g=p(r,g,"publicKey");var n,i=0|I._crypto_sign_publickeybytes();g.length!==i&&h(r,"invalid publicKey length"),n=E(g),r.push(n);var Q=new c(t-I._crypto_sign_bytes()|0),s=Q.address;if(r.push(s),0==(0|I._crypto_sign_open(s,null,a,t,0,n))){var f=o(Q,e);return y(r),f}_(r,"incorrect signature for the given public key")}function Xg(A,g){var e=[];C(g),A=p(e,A,"seed");var r,a=0|I._crypto_sign_seedbytes();A.length!==a&&h(e,"invalid seed length"),r=E(A),e.push(r);var B=new c(0|I._crypto_sign_publickeybytes()),t=B.address;e.push(t);var n=new c(0|I._crypto_sign_secretkeybytes()),i=n.address;if(e.push(i),0==(0|I._crypto_sign_seed_keypair(t,i,r))){var Q={publicKey:o(B,g),privateKey:o(n,g),keyType:"ed25519"};return y(e),Q}_(e,"invalid usage")}function Vg(A,g,e){var r=[];C(e),f(r,A,"state_address");var a=E(g=p(r,g,"message_chunk")),B=g.length;r.push(a),0!=(0|I._crypto_sign_update(A,a,B))&&_(r,"invalid usage"),y(r)}function Wg(A,g,e){var r=[];A=p(r,A,"signature");var a,B=0|I._crypto_sign_bytes();A.length!==B&&h(r,"invalid signature length"),a=E(A),r.push(a);var t=E(g=p(r,g,"message")),n=g.length;r.push(t),e=p(r,e,"publicKey");var i,o=0|I._crypto_sign_publickeybytes();e.length!==o&&h(r,"invalid publicKey length"),i=E(e),r.push(i);var Q=0==(0|I._crypto_sign_verify_detached(a,t,n,0,i));return y(r),Q}function jg(A,g,e,r){var a=[];C(r),f(a,A,"outLength"),("number"!=typeof A||(0|A)!==A||A<0)&&h(a,"outLength must be an unsigned integer"),g=p(a,g,"key");var B,t=0|I._crypto_stream_chacha20_keybytes();g.length!==t&&h(a,"invalid key length"),B=E(g),a.push(B),e=p(a,e,"nonce");var n,i=0|I._crypto_stream_chacha20_noncebytes();e.length!==i&&h(a,"invalid nonce length"),n=E(e),a.push(n);var Q=new c(0|A),s=Q.address;a.push(s),I._crypto_stream_chacha20(s,A,0,n,B);var _=o(Q,r);return y(a),_}function Og(A,g,e,r){var a=[];C(r);var B=E(A=p(a,A,"input_message")),t=A.length;a.push(B),g=p(a,g,"nonce");var n,i=0|I._crypto_stream_chacha20_ietf_noncebytes();g.length!==i&&h(a,"invalid nonce length"),n=E(g),a.push(n),e=p(a,e,"key");var Q,s=0|I._crypto_stream_chacha20_ietf_keybytes();e.length!==s&&h(a,"invalid key length"),Q=E(e),a.push(Q);var f=new c(0|t),u=f.address;if(a.push(u),0===I._crypto_stream_chacha20_ietf_xor(u,B,t,0,n,Q)){var l=o(f,r);return y(a),l}_(a,"invalid usage")}function Zg(A,g,e,r,a){var B=[];C(a);var t=E(A=p(B,A,"input_message")),n=A.length;B.push(t),g=p(B,g,"nonce");var i,Q=0|I._crypto_stream_chacha20_ietf_noncebytes();g.length!==Q&&h(B,"invalid nonce length"),i=E(g),B.push(i),f(B,e,"nonce_increment"),("number"!=typeof e||(0|e)!==e||e<0)&&h(B,"nonce_increment must be an unsigned integer"),r=p(B,r,"key");var s,u=0|I._crypto_stream_chacha20_ietf_keybytes();r.length!==u&&h(B,"invalid key length"),s=E(r),B.push(s);var l=new c(0|n),w=l.address;if(B.push(w),0===I._crypto_stream_chacha20_ietf_xor_ic(w,t,n,0,i,e,s)){var D=o(l,a);return y(B),D}_(B,"invalid usage")}function zg(A){var g=[];C(A);var e=new c(0|I._crypto_stream_chacha20_keybytes()),r=e.address;g.push(r),I._crypto_stream_chacha20_keygen(r);var a=o(e,A);return y(g),a}function $g(A,g,e,r){var a=[];C(r);var B=E(A=p(a,A,"input_message")),t=A.length;a.push(B),g=p(a,g,"nonce");var n,i=0|I._crypto_stream_chacha20_noncebytes();g.length!==i&&h(a,"invalid nonce length"),n=E(g),a.push(n),e=p(a,e,"key");var Q,s=0|I._crypto_stream_chacha20_keybytes();e.length!==s&&h(a,"invalid key length"),Q=E(e),a.push(Q);var f=new c(0|t),u=f.address;if(a.push(u),0===I._crypto_stream_chacha20_xor(u,B,t,0,n,Q)){var l=o(f,r);return y(a),l}_(a,"invalid usage")}function AI(A,g,e,r,a){var B=[];C(a);var t=E(A=p(B,A,"input_message")),n=A.length;B.push(t),g=p(B,g,"nonce");var i,Q=0|I._crypto_stream_chacha20_noncebytes();g.length!==Q&&h(B,"invalid nonce length"),i=E(g),B.push(i),f(B,e,"nonce_increment"),("number"!=typeof e||(0|e)!==e||e<0)&&h(B,"nonce_increment must be an unsigned integer"),r=p(B,r,"key");var s,u=0|I._crypto_stream_chacha20_keybytes();r.length!==u&&h(B,"invalid key length"),s=E(r),B.push(s);var l=new c(0|n),w=l.address;if(B.push(w),0===I._crypto_stream_chacha20_xor_ic(w,t,n,0,i,e,0,s)){var D=o(l,a);return y(B),D}_(B,"invalid usage")}function gI(A){var g=[];C(A);var e=new c(0|I._crypto_stream_keybytes()),r=e.address;g.push(r),I._crypto_stream_keygen(r);var a=o(e,A);return y(g),a}function II(A){var g=[];C(A);var e=new c(0|I._crypto_stream_xchacha20_keybytes()),r=e.address;g.push(r),I._crypto_stream_xchacha20_keygen(r);var a=o(e,A);return y(g),a}function eI(A,g,e,r){var a=[];C(r);var B=E(A=p(a,A,"input_message")),t=A.length;a.push(B),g=p(a,g,"nonce");var n,i=0|I._crypto_stream_xchacha20_noncebytes();g.length!==i&&h(a,"invalid nonce length"),n=E(g),a.push(n),e=p(a,e,"key");var Q,s=0|I._crypto_stream_xchacha20_keybytes();e.length!==s&&h(a,"invalid key length"),Q=E(e),a.push(Q);var f=new c(0|t),u=f.address;if(a.push(u),0===I._crypto_stream_xchacha20_xor(u,B,t,0,n,Q)){var l=o(f,r);return y(a),l}_(a,"invalid usage")}function rI(A,g,e,r,a){var B=[];C(a);var t=E(A=p(B,A,"input_message")),n=A.length;B.push(t),g=p(B,g,"nonce");var i,Q=0|I._crypto_stream_xchacha20_noncebytes();g.length!==Q&&h(B,"invalid nonce length"),i=E(g),B.push(i),f(B,e,"nonce_increment"),("number"!=typeof e||(0|e)!==e||e<0)&&h(B,"nonce_increment must be an unsigned integer"),r=p(B,r,"key");var s,u=0|I._crypto_stream_xchacha20_keybytes();r.length!==u&&h(B,"invalid key length"),s=E(r),B.push(s);var l=new c(0|n),w=l.address;if(B.push(w),0===I._crypto_stream_xchacha20_xor_ic(w,t,n,0,i,e,0,s)){var D=o(l,a);return y(B),D}_(B,"invalid usage")}function aI(A,g){var e=[];C(g),f(e,A,"length"),("number"!=typeof A||(0|A)!==A||A<0)&&h(e,"length must be an unsigned integer");var r=new c(0|A),a=r.address;e.push(a),I._randombytes_buf(a,A);var B=o(r,g);return y(e),B}function BI(A,g,e){var r=[];C(e),f(r,A,"length"),("number"!=typeof A||(0|A)!==A||A<0)&&h(r,"length must be an unsigned integer"),g=p(r,g,"seed");var a,B=0|I._randombytes_seedbytes();g.length!==B&&h(r,"invalid seed length"),a=E(g),r.push(a);var t=new c(0|A),n=t.address;r.push(n),I._randombytes_buf_deterministic(n,A,a);var i=o(t,e);return y(r),i}function tI(A){C(A),I._randombytes_close()}function nI(A){C(A);var g=I._randombytes_random()>>>0;return y([]),g}function iI(A,g){var e=[];C(g);for(var r=I._malloc(24),a=0;a<6;a++)I.setValue(r+4*a,I.Runtime.addFunction(A[["implementation_name","random","stir","uniform","buf","close"][a]]),"i32");0!=(0|I._randombytes_set_implementation(r))&&_(e,"unsupported implementation"),y(e)}function oI(A){C(A),I._randombytes_stir()}function QI(A,g){var e=[];C(g),f(e,A,"upper_bound"),("number"!=typeof A||(0|A)!==A||A<0)&&h(e,"upper_bound must be an unsigned integer");var r=I._randombytes_uniform(A)>>>0;return y(e),r}function CI(){var A=I._sodium_version_string(),g=I.UTF8ToString(A);return y([]),g}return c.prototype.to_Uint8Array=function(){var A=new Uint8Array(this.length);return A.set(I.HEAPU8.subarray(this.address,this.address+this.length)),A},A.add=function(A,g){if(!(A instanceof Uint8Array&&g instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can added");var I=A.length,e=0,r=0;if(g.length!=A.length)throw new TypeError("Arguments must have the same length");for(r=0;r<I;r++)e>>=8,e+=A[r]+g[r],A[r]=255&e},A.base64_variants=t,A.compare=function(A,g){if(!(A instanceof Uint8Array&&g instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(A.length!==g.length)throw new TypeError("Only instances of identical length can be compared");for(var I=0,e=1,r=A.length;r-- >0;)I|=g[r]-A[r]>>8&e,e&=(g[r]^A[r])-1>>8;return I+I+e-1},A.from_base64=function(A,g){g=n(g);var e,r=[],a=new c(3*(A=p(r,A,"input")).length/4),B=E(A),t=s(4),i=s(4);return r.push(B),r.push(a.address),r.push(a.result_bin_len_p),r.push(a.b64_end_p),0!==I._sodium_base642bin(a.address,a.length,B,A.length,0,t,i,g)&&_(r,"invalid input"),I.getValue(i,"i32")-B!==A.length&&_(r,"incomplete input"),a.length=I.getValue(t,"i32"),e=a.to_Uint8Array(),y(r),e},A.from_hex=function(A){var g,e=[],r=new c((A=p(e,A,"input")).length/2),a=E(A),B=s(4);return e.push(a),e.push(r.address),e.push(r.hex_end_p),0!==I._sodium_hex2bin(r.address,r.length,a,A.length,0,0,B)&&_(e,"invalid input"),I.getValue(B,"i32")-a!==A.length&&_(e,"incomplete input"),g=r.to_Uint8Array(),y(e),g},A.from_string=r,A.increment=function(A){if(!(A instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be incremented");for(var g=256,I=0,e=A.length;I<e;I++)g>>=8,g+=A[I],A[I]=255&g},A.is_zero=function(A){if(!(A instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be checked");for(var g=0,I=0,e=A.length;I<e;I++)g|=A[I];return 0===g},A.libsodium=g,A.memcmp=function(A,g){if(!(A instanceof Uint8Array&&g instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(A.length!==g.length)throw new TypeError("Only instances of identical length can be compared");for(var I=0,e=0,r=A.length;e<r;e++)I|=A[e]^g[e];return 0===I},A.memzero=function(A){if(!(A instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be wiped");for(var g=0,I=A.length;g<I;g++)A[g]=0},A.output_formats=function(){return["uint8array","text","hex","base64"]},A.pad=function(A,g){if(!(A instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((g|=0)<=0)throw new Error("block size must be > 0");var e,r=[],a=s(4),B=1,t=0,n=0|A.length,i=new c(n+g);r.push(a),r.push(i.address);for(var o=i.address,Q=i.address+n+g;o<Q;o++)I.HEAPU8[o]=A[t],t+=B=1&~((65535&((n-=B)>>>48|n>>>32|n>>>16|n))-1>>16);return 0!==I._sodium_pad(a,i.address,A.length,g,i.length)&&_(r,"internal error"),i.length=I.getValue(a,"i32"),e=i.to_Uint8Array(),y(r),e},A.unpad=function(A,g){if(!(A instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((g|=0)<=0)throw new Error("block size must be > 0");var e=[],r=E(A),a=s(4);return e.push(r),e.push(a),0!==I._sodium_unpad(a,r,A.length,g)&&_(e,"unsupported/invalid padding"),A=(A=new Uint8Array(A)).subarray(0,I.getValue(a,"i32")),y(e),A},A.ready=e,A.symbols=function(){return Object.keys(A).sort()},A.to_base64=i,A.to_hex=B,A.to_string=a,A}var I="object"==typeof A.sodium&&"function"==typeof A.sodium.onload?A.sodium.onload:null;"function"==typeof define&&define.amd?define(["exports","libsodium"],g):"object"==typeof exports&&"string"!=typeof exports.nodeName?g(exports,require("libsodium")):A.sodium=g(A.commonJsStrict={},A.libsodium),I&&A.sodium.ready.then((function(){I(A.sodium)}))}(this);

A priv/static/robots.txt => priv/static/robots.txt +1 -0
@@ 0,0 1,1 @@
Allow: *

M test/db_test.exs => test/db_test.exs +1 -11
@@ 47,9 47,6 @@ defmodule DBTest do

      cred = Credential.tx_from_keypair_credential!(kp, %{powo: "my love forever"})

      require Logger
      Logger.info("Here's a claim for y'all #{inspect(cred, pretty: true)}")

      assert(Credential.verify(cred, pk))
    end)
  end


@@ 66,14 63,7 @@ defmodule DBTest do
    %{public: pk} = Crypto.server_keypair()
    pk64 = pk |> Crypto.show()
    DoAuth.Persistence.populate_do()
    # TODO: Make API for this!
    subject = from(c in Subject, where: c.claim["me"] == ^pk64) |> Repo.one()

    cred =
      from(c in Credential, where: c.subject_id == ^subject.id)
      |> Repo.one()
      |> Repo.preload(Credential.preload_credential())

    cred = Subject.by_claim_me(pk64) |> Credential.by_subject()
    assert(Credential.verify(cred, pk))
  end


M test/do_auth_test.exs => test/do_auth_test.exs +34 -0
@@ 161,6 161,40 @@
      )
    end

    defp salt() do
      <<100, 32, 150, 98, 22, 128, 99, 12, 9, 72, 154, 27, 204, 213, 183, 48>>
    end

    test "URLSAFE Base64 matches libsodium.js version" do
      # sodium.to_base64(salt, sodium.base64_variants["URLSAFE"])
      # "ZCCWYhaAYwwJSJobzNW3MA=="
      assert("ZCCWYhaAYwwJSJobzNW3MA==" == salt() |> DoAuth.Crypto.show())
    end

    test "mkey matches libsodium.js version" do
      # https://social.doma.dev/system/media_attachments/files/000/007/810/original/0b72a236b039d104.png?1621640300
      mkey = :enacl.pwhash("powo cutie", salt(), 4, 40960)

      assert("l1nP-RQlLUB981ym41E-YoxSa-qdN4kPdWje-s1U2jo=" == mkey |> Crypto.show())
    end

    test "proofless JSON is the same between JS and Elixir" do
      alias DoAuth.Credential

      cred_map =
        ~s({"@context":[],"credentialSubject":{"me":"oV4kXLoRS79WUk5rTbLxlsujYDWeAe7E6QeDyIWOYbA="},"id":"/chappy/tofu","issuanceDate":"2021-05-26T16:14:50Z","issuer":"did:doma:c5Cfk0Aw_SYXzIgvDO3QNumrD30E5o-Sd61n8bL4dTw=","proof":{"created":"2021-05-26T16:14:50Z","proofPurpose":"assertionMethod","signature":"tpjEnvT3PdSq8Z0I6Qii9z8x5nIE3f3nO9rqzaAdonDG9z5fyw_hWSMi1jjAGmMJtkJkvRpZ_hbU7C0WPwtMD1tbIkBjb250ZXh0IixbXV0sWyJjcmVkZW50aWFsU3ViamVjdCIsW1sibWUiLCJvVjRrWExvUlM3OVdVazVyVGJMeGxzdWpZRFdlQWU3RTZRZUR5SVdPWWJBPSJdXV0sWyJpc3N1YW5jZURhdGUiLCIyMDIxLTA1LTI2VDE2OjE0OjUwWiJdLFsiaXNzdWVyIiwiZGlkOmRvbWE6YzVDZmswQXdfU1lYeklndkRPM1FOdW1yRDMwRTVvLVNkNjFuOGJMNGRUdz0iXSxbInR5cGUiLFtdXV0=","type":"libsodium2021","verificationMethod":"did:doma:c5Cfk0Aw_SYXzIgvDO3QNumrD30E5o-Sd61n8bL4dTw="},"type":[]})
        |> Jason.decode!(keys: :atoms)

      cred = Credential.tx_import_tofu!(cred_map)

      assert(
        ~s([["@context",[]],["credentialSubject",[["me","oV4kXLoRS79WUk5rTbLxlsujYDWeAe7E6QeDyIWOYbA="]]],["issuanceDate","2021-05-26T16:14:50Z"],["issuer","did:doma:c5Cfk0Aw_SYXzIgvDO3QNumrD30E5o-Sd61n8bL4dTw="],["type",[]]]) ==
          Credential.proofless_json(cred)
      )

      assert(Credential.verify64(cred, cred.subject.claim["me"]))
    end

    @doc """
    Never run actual code with these cryptography params. Your hashes shall be
    extremely vulnerable to bruteforce if you do so.