diff --git a/README.md b/README.md index 82f153a..ab18986 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # [WIP] The Flow Framework -![logo](https://github.com/whiteboxio/flow/blob/master/flow.png) +![logo](https://github.com/whiteboxio/flow/blob/master/assets/flow.png) [![Build Status](https://travis-ci.com/awesome-flow/flow.svg?branch=master)](https://travis-ci.com/awesome-flow/flow) [![Coverage Status](https://coveralls.io/repos/github/awesome-flow/flow/badge.svg?branch=master)](https://coveralls.io/github/awesome-flow/flow?branch=master) @@ -83,8 +83,9 @@ link A to link B. In this case we say that A has an *outcoming connector*, an B has an *incoming connector*. Links come with the semantics of connectability: some of them can have outcoming -connectors only: we call them out-links, or *receivers* (this is where the data comes into the pipeline), and some can have -incoming connectors only: in-links, or *sinks* (where the data leaves the pipeline). A receiver is a link that +connectors only: we call them out-links, or *receivers* (this is where the data +comes into the pipeline), and some can have incoming connectors only: in-links, +or *sinks* (where the data leaves the pipeline). A receiver is a link that receives internal messages: a network listener, pub-sub client etc. They ingest messages into the pipeline. A sink has the opposite purpose: to send messages somewhere else. This is where the lifecycle of the message ends. An example diff --git a/flow.png b/assets/flow.png similarity index 100% rename from flow.png rename to assets/flow.png diff --git a/cmd/flowd/main.go b/cmd/flowd/main.go index b572bf2..cdcba04 100644 --- a/cmd/flowd/main.go +++ b/cmd/flowd/main.go @@ -8,11 +8,11 @@ import ( "github.com/awesome-flow/flow/pkg/cast" "github.com/awesome-flow/flow/pkg/types" - "github.com/awesome-flow/flow/pkg/admin" "github.com/awesome-flow/flow/pkg/cfg" "github.com/awesome-flow/flow/pkg/global" "github.com/awesome-flow/flow/pkg/metrics" "github.com/awesome-flow/flow/pkg/pipeline" + webapp "github.com/awesome-flow/flow/web/app" log "github.com/sirupsen/logrus" ) @@ -21,122 +21,134 @@ const ( ProgramName = "flowd" ) +func errorf(format string, args ...interface{}) { + log.Errorf("⚠️ "+format, args...) +} + +func infof(format string, args ...interface{}) { + log.Infof(format, args...) +} + +func fatalf(format string, args ...interface{}) { + log.Fatalf("❌ "+format, args...) +} + func main() { - log.Infof("Starting %s", ProgramName) + infof("Starting %s", ProgramName) - log.Infof("Initializing config repo") + infof("Initializing config repo") repo := cfg.NewRepository() repo.DefineSchema(cast.ConfigSchema) global.Store("config", repo) - log.Infof("Registering default provider") + infof("Registering default provider") if _, err := cfg.NewDefaultProvider(repo, 0); err != nil { - log.Errorf("⚠️ Failed to register default provider: %s", err) + errorf("Failed to register default provider: %s", err) } - log.Infof("Registering env provider") + infof("Registering env provider") if _, err := cfg.NewEnvProvider(repo, 10); err != nil { - log.Errorf("⚠️ Failed to register env provider: %s", err) + errorf("Failed to register env provider: %s", err) } if _, err := cfg.NewYamlProvider(repo, 20); err != nil { - log.Errorf("⚠️ Failed to register yaml provider: %s", err) + errorf("Failed to register yaml provider: %s", err) } - log.Infof("Registering cli provider") + infof("Registering cli provider") if _, err := cfg.NewCliProvider(repo, 30); err != nil { - log.Errorf("⚠️ Failed to register cli provider: %s", err) + errorf("Failed to register cli provider: %s", err) } - log.Infof("Initializing config providers") + infof("Initializing config providers") if err := repo.SetUp(); err != nil { - log.Errorf("⚠️ Failed to initialise config repo: %s", err) + errorf("Failed to initialise config repo: %s", err) } - log.Infof("Starting %s version %d, process ID: %d", + infof("Starting %s version %d, process ID: %d", ProgramName, MajVersion, os.Getpid()) - log.Infof("Initializing the pipeline") + infof("Initializing the pipeline") syscfgval, ok := repo.Get(types.NewKey("system")) if !ok { - log.Fatalf("❌ Failed to get system config") + fatalf("Failed to get system config") } syscfg := syscfgval.(types.CfgBlockSystem) if err := metrics.Initialize(&syscfg); err != nil { - log.Errorf("⚠️ Failed to initialize metrics module: %s", err) + errorf("Failed to initialize metrics module: %s", err) } compsval, ok := repo.Get(types.NewKey("components")) if !ok { - log.Fatalf("❌ Failed to get components config") + fatalf("Failed to get components config") } compscfg := compsval.(map[string]types.CfgBlockComponent) pplval, ok := repo.Get(types.NewKey("pipeline")) if !ok { - log.Fatalf("❌ Failed to get pipeline config") + fatalf("Failed to get pipeline config") } pplcfg := pplval.(map[string]types.CfgBlockPipeline) pipeline, pplErr := pipeline.NewPipeline(compscfg, pplcfg) if pplErr != nil { - log.Fatalf("❌ Failed to initialize the pipeline: %s", pplErr) + fatalf("Failed to initialize the pipeline: %s", pplErr) } global.Store("pipeline", pipeline) - log.Info("✅ Pipeline is successfully initialized") + infof("Pipeline is successfully initialized") if explanation, err := pipeline.Explain(); err != nil { - log.Errorf("⚠️ Failed to explain the pipeline: %s", err.Error()) + errorf("Failed to explain the pipeline: %s", err.Error()) } else { - log.Info("Pipeline GraphViz diagram (plot using https://www.planttext.com):") + infof("Pipeline GraphViz diagram (plot using https://www.planttext.com):") fmt.Println(explanation) } - log.Info("Activating the pipeline") + infof("Activating the pipeline") startErr := pipeline.Start() if startErr != nil { - log.Fatalf("❌ Failed to start the pipeline: %s", startErr) + fatalf("Failed to start the pipeline: %s", startErr) } - log.Info("✅️ Pipeline is successfully activated") + infof("Pipeline is successfully activated") - var adminmux *admin.HttpMux + var adminmux *webapp.HttpMux if syscfg.Admin.Enabled { var err error - log.Infof("Starting admin interface on %s", syscfg.Admin.BindAddr) - adminmux, err = admin.NewHttpMux(&syscfg) + infof("Starting admin interface on %s", syscfg.Admin.BindAddr) + adminmux, err = webapp.NewHttpMux(&syscfg) if err != nil { - log.Fatalf("❌ Failed to start admin interface: %s", err) + fatalf("Failed to start admin interface: %s", err) } } c := make(chan os.Signal, 1) signal.Notify(c, os.Interrupt) <-c - log.Info("Terminating the daemon") + infof("Terminating the daemon") if adminmux != nil { log.Info("Stopping admin interface") if err := adminmux.Stop(); err != nil { - log.Errorf("⚠️ Error while stopping admin interface: %s", err.Error()) + errorf("Error while stopping admin interface: %s", err.Error()) } - log.Infof("✅️ Done") + infof("Done") } - log.Infof("Stopping the pipeline") + infof("Stopping the pipeline") stopErr := pipeline.Stop() if stopErr != nil { - log.Fatalf("❌ Failed to stop the pipeline: %s", stopErr) + fatalf("Failed to stop the pipeline: %s", stopErr) } - log.Infof("✅️ Done") + infof("Done") - log.Infof("Stopping the config repo") + infof("Stopping the config repo") if repoErr := repo.TearDown(); repoErr != nil { - log.Fatalf("❌ Failed to tear down config repo: %s", repoErr) + fatalf("Failed to tear down config repo: %s", repoErr) } - log.Infof("✅️ Done") + infof("Done") os.Exit(0) } diff --git a/pkg/admin/agent/graphviz.go b/pkg/admin/agent/graphviz.go deleted file mode 100644 index 25ace86..0000000 --- a/pkg/admin/agent/graphviz.go +++ /dev/null @@ -1,87 +0,0 @@ -package agent - -import ( - "html/template" - "net/http" - - log "github.com/sirupsen/logrus" - - "github.com/awesome-flow/flow/pkg/global" - "github.com/awesome-flow/flow/pkg/pipeline" -) - -const GraphVizTemplate = ` - -
- - -` - -type GraphVizAgent struct { - tmpl *template.Template -} - -var graphvizagent *GraphVizAgent - -func NewGraphVizAgent() (*GraphVizAgent, error) { - tmpl, err := template.New("graphviz").Parse(GraphVizTemplate) - if err != nil { - return nil, err - } - return &GraphVizAgent{tmpl}, nil -} - -func (ga *GraphVizAgent) renderGraphViz(rw http.ResponseWriter, req *http.Request) { - pipelineitf, ok := global.Load("pipeline") - if !ok { - log.Errorf("Failed to fetch pipeline from the global registry") - rw.WriteHeader(http.StatusInternalServerError) - return - } - pipeline, ok := pipelineitf.(*pipeline.Pipeline) - if !ok { - log.Errorf("Failed to cast pipeline to the propper data type. Probably data corruption") - rw.WriteHeader(http.StatusInternalServerError) - return - } - - explanation, err := pipeline.Explain() - if err != nil { - log.Errorf("Failed to explain the pipeline: %s", err.Error()) - rw.WriteHeader(http.StatusInternalServerError) - return - } - - data := struct { - Title string - GraphViz string - }{ - Title: "Flowd pipeline render", - GraphViz: explanation, - } - rw.Header().Set("Content-Type", "text/html") - ga.tmpl.Execute(rw, data) -} - -func init() { - var err error - graphvizagent, err = NewGraphVizAgent() - if err != nil { - panic(err.Error()) - } - RegisterWebAgent( - NewDummyWebAgent( - "/pipeline/describe", - graphvizagent.renderGraphViz, - ), - ) -} diff --git a/pkg/admin/agent/index.go b/pkg/admin/agent/index.go deleted file mode 100644 index 2263c9a..0000000 --- a/pkg/admin/agent/index.go +++ /dev/null @@ -1,31 +0,0 @@ -package agent - -import ( - "fmt" - "net/http" - "sort" -) - -func init() { - RegisterWebAgent( - NewDummyWebAgent( - "/", - func(rw http.ResponseWriter, req *http.Request) { - sort.Sort(webAgents) - rw.WriteHeader(http.StatusOK) - rw.Write([]byte("

flowd admin interface

")) - }, - ), - ) -} diff --git a/pkg/admin/.keep b/web/.keep similarity index 100% rename from pkg/admin/.keep rename to web/.keep diff --git a/pkg/admin/agent/agent.go b/web/app/agent/agent.go similarity index 100% rename from pkg/admin/agent/agent.go rename to web/app/agent/agent.go diff --git a/pkg/admin/agent/config.go b/web/app/agent/config.go similarity index 74% rename from pkg/admin/agent/config.go rename to web/app/agent/config.go index 89e5cfa..dc680cc 100644 --- a/pkg/admin/agent/config.go +++ b/web/app/agent/config.go @@ -8,6 +8,11 @@ import ( "github.com/awesome-flow/flow/pkg/global" ) +type ConfigPage struct { + Title string + Config string +} + func init() { RegisterWebAgent( NewDummyWebAgent( @@ -20,15 +25,16 @@ func init() { return } cfgdata := repo.(*cfg.Repository).Explain() - data, err := json.Marshal(cfgdata) + js, err := json.Marshal(cfgdata) if err != nil { rw.WriteHeader(http.StatusInternalServerError) rw.Write([]byte(err.Error())) return } - rw.Header().Add("Content-Type", "application/json") - rw.WriteHeader(http.StatusOK) - rw.Write(data) + respondWith(rw, RespHtml, "config", &ConfigPage{ + Title: "Flow active config", + Config: string(js), + }) }, ), ) diff --git a/pkg/admin/agent/expvar.go b/web/app/agent/expvar.go similarity index 100% rename from pkg/admin/agent/expvar.go rename to web/app/agent/expvar.go diff --git a/web/app/agent/graphviz.go b/web/app/agent/graphviz.go new file mode 100644 index 0000000..0032072 --- /dev/null +++ b/web/app/agent/graphviz.go @@ -0,0 +1,48 @@ +package agent + +import ( + "net/http" + + log "github.com/sirupsen/logrus" + + "github.com/awesome-flow/flow/pkg/global" + "github.com/awesome-flow/flow/pkg/pipeline" +) + +type DescribePage struct { + Title string + GraphViz string +} + +func init() { + RegisterWebAgent( + NewDummyWebAgent( + "/pipeline/describe", + func(rw http.ResponseWriter, req *http.Request) { + pipelineitf, ok := global.Load("pipeline") + if !ok { + log.Errorf("Failed to fetch pipeline from the global registry") + rw.WriteHeader(http.StatusInternalServerError) + return + } + pipeline, ok := pipelineitf.(*pipeline.Pipeline) + if !ok { + log.Errorf("Failed to cast pipeline to the propper data type. Probably data corruption") + rw.WriteHeader(http.StatusInternalServerError) + return + } + + expl, err := pipeline.Explain() + if err != nil { + log.Errorf("Failed to explain the pipeline: %s", err.Error()) + rw.WriteHeader(http.StatusInternalServerError) + return + } + respondWith(rw, RespHtml, "graphviz", &DescribePage{ + Title: "Flow Pipeline", + GraphViz: expl, + }) + }, + ), + ) +} diff --git a/web/app/agent/index.go b/web/app/agent/index.go new file mode 100644 index 0000000..73b5d80 --- /dev/null +++ b/web/app/agent/index.go @@ -0,0 +1,102 @@ +package agent + +import ( + "bytes" + "encoding/json" + "fmt" + "html/template" + "net/http" +) + +var ( + tmpl *template.Template +) + +func init() { + var err error + tmpl, err = template.ParseFiles( + "web/template/layout.tmpl", + "web/template/page/config.tmpl", + "web/template/page/index.tmpl", + "web/template/page/graphviz.tmpl", + "web/template/page/pprof.tmpl", + ) + if err != nil { + panic(err.Error()) + } +} + +type Page struct { + Data interface{} + Body template.HTML +} + +type ResponseFormat uint8 + +const ( + RespHtml ResponseFormat = iota + RespJson +) + +const ( + HdrContentType = "Content-Type" + ContentTypeHtml = "text/html" + ContentTypeJson = "application/json" +) + +func respondWith(rw http.ResponseWriter, format ResponseFormat, tmplName string, data interface{}) error { + var err error + switch format { + case RespHtml: + err = respondWithHtml(rw, tmplName, data) + case RespJson: + err = respondWithJson(rw, data) + default: + err = fmt.Errorf("Unknown response format: %d", format) + } + if err != nil { + rw.WriteHeader(http.StatusInternalServerError) + rw.Write([]byte(fmt.Sprintf("Internal Server Error: %s", err))) + return err + } + return nil +} + +func respondWithHtml(rw http.ResponseWriter, tmplName string, data interface{}) error { + rw.Header().Add(HdrContentType, ContentTypeHtml) + bw := bytes.NewBuffer(nil) + if err := tmpl.ExecuteTemplate(bw, tmplName, data); err != nil { + return err + } + if err := tmpl.ExecuteTemplate(rw, "layout", &Page{Data: data, Body: template.HTML(bw.Bytes())}); err != nil { + return err + } + return nil +} + +func respondWithJson(rw http.ResponseWriter, data interface{}) error { + js, err := json.Marshal(data) + if err != nil { + return err + } + rw.Header().Add(HdrContentType, ContentTypeJson) + if _, err := rw.Write(js); err != nil { + return err + } + return nil +} + +type IndexPage struct { + Title string +} + +func init() { + RegisterWebAgent( + NewDummyWebAgent( + "/", + func(rw http.ResponseWriter, req *http.Request) { + respondWith(rw, RespHtml, "index", &IndexPage{Title: "Flow admin interface"}) + }, + ), + ) +} diff --git a/pkg/admin/agent/metrics.go b/web/app/agent/metrics.go similarity index 100% rename from pkg/admin/agent/metrics.go rename to web/app/agent/metrics.go diff --git a/pkg/admin/agent/pprof.go b/web/app/agent/pprof.go similarity index 69% rename from pkg/admin/agent/pprof.go rename to web/app/agent/pprof.go index 086df4a..de4d28d 100644 --- a/pkg/admin/agent/pprof.go +++ b/web/app/agent/pprof.go @@ -1,14 +1,22 @@ package agent import ( + "net/http" "net/http/pprof" ) +type PprofPage struct { + Title string +} + func init() { RegisterWebAgent( NewDummyWebAgent( "/pprof/", - pprof.Index, + //pprof.Index, + func(rw http.ResponseWriter, req *http.Request) { + respondWith(rw, RespHtml, "pprof", &PprofPage{Title: "pprof debug info"}) + }, ), ) diff --git a/web/app/agent/static.go b/web/app/agent/static.go new file mode 100644 index 0000000..7248e56 --- /dev/null +++ b/web/app/agent/static.go @@ -0,0 +1,20 @@ +package agent + +import ( + "net/http" +) + +func init() { + RegisterWebAgent( + &DummyWebAgent{ + "/static/", + http.StripPrefix("/static/", http.FileServer(http.Dir("./web/static"))), + }, + ) + RegisterWebAgent( + &DummyWebAgent{ + "/favicon.ico", + http.FileServer(http.Dir("./web/static/img")), + }, + ) +} diff --git a/pkg/admin/http.go b/web/app/http.go similarity index 93% rename from pkg/admin/http.go rename to web/app/http.go index 9e78bd5..d901c27 100644 --- a/pkg/admin/http.go +++ b/web/app/http.go @@ -1,11 +1,11 @@ -package admin +package app import ( "fmt" "net/http" - "github.com/awesome-flow/flow/pkg/admin/agent" "github.com/awesome-flow/flow/pkg/types" + "github.com/awesome-flow/flow/web/app/agent" log "github.com/sirupsen/logrus" ) diff --git a/web/static/.keep b/web/static/.keep new file mode 100644 index 0000000..e69de29 diff --git a/web/static/css/.keep b/web/static/css/.keep new file mode 100644 index 0000000..e69de29 diff --git a/web/static/css/bootstrap-4.3.1.css b/web/static/css/bootstrap-4.3.1.css new file mode 100644 index 0000000..92e3fe8 --- /dev/null +++ b/web/static/css/bootstrap-4.3.1.css @@ -0,0 +1,7 @@ +/*! + * Bootstrap v4.3.1 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors + * Copyright 2011-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem;font-weight:300;line-height:1.2}.display-2{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3{font-size:4.5rem;font-weight:300;line-height:1.2}.display-4{font-size:3.5rem;font-weight:300;line-height:1.2}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer::before{content:"\2014\00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code{font-size:87.5%;color:#e83e8c;word-break:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-ms-flex-order:-1;order:-1}.order-last{-ms-flex-order:13;order:13}.order-0{-ms-flex-order:0;order:0}.order-1{-ms-flex-order:1;order:1}.order-2{-ms-flex-order:2;order:2}.order-3{-ms-flex-order:3;order:3}.order-4{-ms-flex-order:4;order:4}.order-5{-ms-flex-order:5;order:5}.order-6{-ms-flex-order:6;order:6}.order-7{-ms-flex-order:7;order:7}.order-8{-ms-flex-order:8;order:8}.order-9{-ms-flex-order:9;order:9}.order-10{-ms-flex-order:10;order:10}.order-11{-ms-flex-order:11;order:11}.order-12{-ms-flex-order:12;order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-ms-flex-order:-1;order:-1}.order-sm-last{-ms-flex-order:13;order:13}.order-sm-0{-ms-flex-order:0;order:0}.order-sm-1{-ms-flex-order:1;order:1}.order-sm-2{-ms-flex-order:2;order:2}.order-sm-3{-ms-flex-order:3;order:3}.order-sm-4{-ms-flex-order:4;order:4}.order-sm-5{-ms-flex-order:5;order:5}.order-sm-6{-ms-flex-order:6;order:6}.order-sm-7{-ms-flex-order:7;order:7}.order-sm-8{-ms-flex-order:8;order:8}.order-sm-9{-ms-flex-order:9;order:9}.order-sm-10{-ms-flex-order:10;order:10}.order-sm-11{-ms-flex-order:11;order:11}.order-sm-12{-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-md-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-ms-flex-order:-1;order:-1}.order-md-last{-ms-flex-order:13;order:13}.order-md-0{-ms-flex-order:0;order:0}.order-md-1{-ms-flex-order:1;order:1}.order-md-2{-ms-flex-order:2;order:2}.order-md-3{-ms-flex-order:3;order:3}.order-md-4{-ms-flex-order:4;order:4}.order-md-5{-ms-flex-order:5;order:5}.order-md-6{-ms-flex-order:6;order:6}.order-md-7{-ms-flex-order:7;order:7}.order-md-8{-ms-flex-order:8;order:8}.order-md-9{-ms-flex-order:9;order:9}.order-md-10{-ms-flex-order:10;order:10}.order-md-11{-ms-flex-order:11;order:11}.order-md-12{-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-ms-flex-order:-1;order:-1}.order-lg-last{-ms-flex-order:13;order:13}.order-lg-0{-ms-flex-order:0;order:0}.order-lg-1{-ms-flex-order:1;order:1}.order-lg-2{-ms-flex-order:2;order:2}.order-lg-3{-ms-flex-order:3;order:3}.order-lg-4{-ms-flex-order:4;order:4}.order-lg-5{-ms-flex-order:5;order:5}.order-lg-6{-ms-flex-order:6;order:6}.order-lg-7{-ms-flex-order:7;order:7}.order-lg-8{-ms-flex-order:8;order:8}.order-lg-9{-ms-flex-order:9;order:9}.order-lg-10{-ms-flex-order:10;order:10}.order-lg-11{-ms-flex-order:11;order:11}.order-lg-12{-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-ms-flex-order:-1;order:-1}.order-xl-last{-ms-flex-order:13;order:13}.order-xl-0{-ms-flex-order:0;order:0}.order-xl-1{-ms-flex-order:1;order:1}.order-xl-2{-ms-flex-order:2;order:2}.order-xl-3{-ms-flex-order:3;order:3}.order-xl-4{-ms-flex-order:4;order:4}.order-xl-5{-ms-flex-order:5;order:5}.order-xl-6{-ms-flex-order:6;order:6}.order-xl-7{-ms-flex-order:7;order:7}.order-xl-8{-ms-flex-order:8;order:8}.order-xl-9{-ms-flex-order:9;order:9}.order-xl-10{-ms-flex-order:10;order:10}.order-xl-11{-ms-flex-order:11;order:11}.order-xl-12{-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered{border:1px solid #dee2e6}.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover{background-color:#9fcdff}.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover{background-color:#c8cbcf}.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover{background-color:#b1dfbb}.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover{background-color:#abdde5}.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover{background-color:#ffe8a1}.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover{background-color:#f1b0b7}.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover{background-color:#ececf6}.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover{background-color:#b9bbbe}.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:rgba(255,255,255,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding-top:.375rem;padding-bottom:.375rem;margin-bottom:0;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size]{height:auto}textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:center right calc(.375em + .1875rem);background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-control.is-valid~.valid-feedback,.form-control.is-valid~.valid-tooltip,.was-validated .form-control:valid~.valid-feedback,.was-validated .form-control:valid~.valid-tooltip{display:block}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc((1em + .75rem) * 3 / 4 + 1.75rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-select.is-valid~.valid-feedback,.custom-select.is-valid~.valid-tooltip,.was-validated .custom-select:valid~.valid-feedback,.was-validated .custom-select:valid~.valid-tooltip{display:block}.form-control-file.is-valid~.valid-feedback,.form-control-file.is-valid~.valid-tooltip,.was-validated .form-control-file:valid~.valid-feedback,.was-validated .form-control-file:valid~.valid-tooltip{display:block}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label::before,.was-validated .custom-control-input:valid~.custom-control-label::before{border-color:#28a745}.custom-control-input.is-valid~.valid-feedback,.custom-control-input.is-valid~.valid-tooltip,.was-validated .custom-control-input:valid~.valid-feedback,.was-validated .custom-control-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid:checked~.custom-control-label::before,.was-validated .custom-control-input:valid:checked~.custom-control-label::before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label::before,.was-validated .custom-control-input:valid:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label::before,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label::before{border-color:#28a745}.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid~.valid-feedback,.custom-file-input.is-valid~.valid-tooltip,.was-validated .custom-file-input:valid~.valid-feedback,.was-validated .custom-file-input:valid~.valid-tooltip{display:block}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");background-repeat:no-repeat;background-position:center right calc(.375em + .1875rem);background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-control.is-invalid~.invalid-feedback,.form-control.is-invalid~.invalid-tooltip,.was-validated .form-control:invalid~.invalid-feedback,.was-validated .form-control:invalid~.invalid-tooltip{display:block}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc((1em + .75rem) * 3 / 4 + 1.75rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-select.is-invalid~.invalid-feedback,.custom-select.is-invalid~.invalid-tooltip,.was-validated .custom-select:invalid~.invalid-feedback,.was-validated .custom-select:invalid~.invalid-tooltip{display:block}.form-control-file.is-invalid~.invalid-feedback,.form-control-file.is-invalid~.invalid-tooltip,.was-validated .form-control-file:invalid~.invalid-feedback,.was-validated .form-control-file:invalid~.invalid-tooltip{display:block}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label::before,.was-validated .custom-control-input:invalid~.custom-control-label::before{border-color:#dc3545}.custom-control-input.is-invalid~.invalid-feedback,.custom-control-input.is-invalid~.invalid-tooltip,.was-validated .custom-control-input:invalid~.invalid-feedback,.was-validated .custom-control-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid:checked~.custom-control-label::before,.was-validated .custom-control-input:invalid:checked~.custom-control-label::before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label::before{border-color:#dc3545}.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid~.invalid-feedback,.custom-file-input.is-invalid~.invalid-tooltip,.was-validated .custom-file-input:invalid~.invalid-feedback,.was-validated .custom-file-input:invalid~.invalid-tooltip{display:block}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin-bottom:0}.form-inline .form-group{display:-ms-flexbox;display:flex;-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center;margin-bottom:0}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;-ms-flex-negative:0;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-toggle::after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropleft .dropdown-toggle::after{display:none}.dropleft .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty::after{margin-left:0}.dropleft .dropdown-toggle::before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-ms-flex:1 1 auto;flex:1 1 auto}.btn-group-vertical>.btn:hover,.btn-group>.btn:hover{z-index:1}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus{z-index:1}.btn-toolbar{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropright .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropleft .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:center;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:-ms-flexbox;display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:-ms-inline-flexbox;display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;z-index:-1;opacity:0}.custom-control-input:checked~.custom-control-label::before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label::before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label::before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label::before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label::before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;pointer-events:none;content:"";background-color:#fff;border:#adb5bd solid 1px}.custom-control-label::after{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:"";background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label::before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label::before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label::after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label::after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label::after{background-color:#fff;-webkit-transform:translateX(.75rem);transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{position:relative;display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);margin-bottom:0}.custom-file-input{position:relative;z-index:2;width:100%;height:calc(1.5em + .75rem + 2px);margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label::after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]::after{content:attr(data-browse)}.custom-file-label{position:absolute;top:0;right:0;left:0;z-index:1;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label::after{position:absolute;top:0;right:0;bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);padding:.375rem .75rem;line-height:1.5;color:#495057;content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:calc(1rem + .4rem);padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:transparent;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label::before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label::before,.custom-file-label,.custom-select{transition:none}}.nav{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:.5rem 1rem}.navbar>.container,.navbar>.container-fluid{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a{color:rgba(0,0,0,.9)}.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.5);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:rgba(255,255,255,.5)}.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{-ms-flex:1 1 auto;flex:1 1 auto;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-right:-.625rem;margin-bottom:-.75rem;margin-left:-.625rem;border-bottom:0}.card-header-pills{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img{width:100%;border-radius:calc(.25rem - 1px)}.card-img-top{width:100%;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img-bottom{width:100%;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{-ms-flex-flow:row wrap;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{display:-ms-flexbox;display:flex;-ms-flex:1 0 0%;flex:1 0 0%;-ms-flex-direction:column;flex-direction:column;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{-webkit-column-count:3;-moz-column-count:3;column-count:3;-webkit-column-gap:1.25rem;-moz-column-gap:1.25rem;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:first-of-type) .card-header:first-child{border-radius:0}.accordion>.card:not(:first-of-type):not(:last-of-type){border-bottom:0;border-radius:0}.accordion>.card:first-of-type{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:last-of-type{border-top-left-radius:0;border-top-right-radius:0}.accordion>.card .card-header{margin-bottom:-1px}.breadcrumb{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:underline}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:-ms-flexbox;display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:2;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:1;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@-webkit-keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.progress{display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.media{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start}.media-body{-ms-flex:1;flex:1}.list-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;margin-bottom:-1px;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-horizontal{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}@media (min-width:576px){.list-group-horizontal-sm{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-sm .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-sm .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}}@media (min-width:768px){.list-group-horizontal-md{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-md .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-md .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}}@media (min-width:992px){.list-group-horizontal-lg{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-lg .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-lg .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}}@media (min-width:1200px){.list-group-horizontal-xl{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xl .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-xl .list-group-item:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-bottom-left-radius:0}}.list-group-flush .list-group-item{border-right:0;border-left:0;border-radius:0}.list-group-flush .list-group-item:last-child{margin-bottom:-1px}.list-group-flush:first-child .list-group-item:first-child{border-top:0}.list-group-flush:last-child .list-group-item:last-child{margin-bottom:0;border-bottom:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:transparent;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:rgba(255,255,255,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:rgba(255,255,255,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translate(0,-50px);transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{-webkit-transform:none;transform:none}.modal-dialog-scrollable{display:-ms-flexbox;display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{-ms-flex-negative:0;flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered::before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable::before{content:none}.modal-content{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:justify;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:.3rem;border-top-right-radius:.3rem}.modal-header .close{padding:1rem 1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.modal-footer{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;padding:1rem;border-top:1px solid #dee2e6;border-bottom-right-radius:.3rem;border-bottom-left-radius:.3rem}.modal-footer>:not(:first-child){margin-left:.25rem}.modal-footer>:not(:last-child){margin-right:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered::before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow::before,.bs-tooltip-top .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow::before,.bs-tooltip-right .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow::before,.bs-tooltip-bottom .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow::before,.bs-tooltip-left .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow{position:absolute;display:block;width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow::after,.popover .arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc((.5rem + 1px) * -1)}.bs-popover-auto[x-placement^=top]>.arrow::before,.bs-popover-top>.arrow::before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow::after,.bs-popover-top>.arrow::after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc((.5rem + 1px) * -1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow::before,.bs-popover-right>.arrow::before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow::after,.bs-popover-right>.arrow::after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc((.5rem + 1px) * -1)}.bs-popover-auto[x-placement^=bottom]>.arrow::before,.bs-popover-bottom>.arrow::before{top:0;border-width:0 .5rem .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow::after,.bs-popover-bottom>.arrow::after{top:1px;border-width:0 .5rem .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc((.5rem + 1px) * -1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow::before,.bs-popover-left>.arrow::before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow::after,.bs-popover-left>.arrow::after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{-ms-touch-action:pan-y;touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){-webkit-transform:translateX(100%);transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){-webkit-transform:translateX(-100%);transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;-webkit-transform:none;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:0s .6s opacity}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:content-box;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid currentColor;border-right-color:transparent;border-radius:50%;-webkit-animation:spinner-border .75s linear infinite;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;-webkit-animation:spinner-grow .75s linear infinite;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-right{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix::after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.857143%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-sm-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-md-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-md-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-md-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-lg-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-lg-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-lg-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-xl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-xl-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-xl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports ((position:-webkit-sticky) or (position:sticky)){.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:rgba(0,0,0,0)}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:rgba(255,255,255,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,::after,::before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}body{min-width:992px!important}.container{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} +/*# sourceMappingURL=bootstrap.min.css.map */ \ No newline at end of file diff --git a/web/static/css/jsonTree.css b/web/static/css/jsonTree.css new file mode 100644 index 0000000..98d4d16 --- /dev/null +++ b/web/static/css/jsonTree.css @@ -0,0 +1,110 @@ +/* + * JSON Tree Viewer + * http://github.com/summerstyle/jsonTreeViewer + * + * Copyright 2017 Vera Lobacheva (http://iamvera.com) + * Released under the MIT license (LICENSE.txt) + */ + +/* Background for the tree. May use for element */ +.jsontree_bg { + background: #FFF; +} + +/* Styles for the container of the tree (e.g. fonts, margins etc.) */ +.jsontree_tree { + /*margin-left: 30px;*/ + font-family: 'PT Mono', monospace; + font-size: 12px; +} + +/* Styles for a list of child nodes */ +.jsontree_child-nodes { + display: none; + margin-left: 35px; + margin-bottom: 5px; + line-height: 2; +} +.jsontree_node_expanded > .jsontree_value-wrapper > .jsontree_value > .jsontree_child-nodes { + display: block; +} + +/* Styles for labels */ +.jsontree_label-wrapper { + float: left; + margin-right: 8px; +} +.jsontree_label { + font-weight: normal; + vertical-align: top; + color: #000; + position: relative; + padding: 1px; + border-radius: 4px; + cursor: default; +} +.jsontree_node_marked > .jsontree_label-wrapper > .jsontree_label { + background: #fff2aa; +} + +/* Styles for values */ +.jsontree_value-wrapper { + display: block; + overflow: hidden; +} +.jsontree_node_complex > .jsontree_value-wrapper { + overflow: inherit; +} +.jsontree_value { + vertical-align: top; + display: inline; +} +.jsontree_value_null { + color: #777; + font-weight: bold; +} +.jsontree_value_string { + color: #025900; + font-weight: bold; +} +.jsontree_value_number { + color: #000E59; + font-weight: bold; +} +.jsontree_value_boolean { + color: #600100; + font-weight: bold; +} + +/* Styles for active elements */ +.jsontree_expand-button { + position: absolute; + top: 3px; + left: -15px; + display: block; + width: 11px; + height: 11px; + background-image: url('/static/img/icons.svg'); +} +.jsontree_node_expanded > .jsontree_label-wrapper > .jsontree_label > .jsontree_expand-button { + background-position: 0 -11px; +} +.jsontree_show-more { + cursor: pointer; +} +.jsontree_node_expanded > .jsontree_value-wrapper > .jsontree_value > .jsontree_show-more { + display: none; +} +.jsontree_node_empty > .jsontree_label-wrapper > .jsontree_label > .jsontree_expand-button, +.jsontree_node_empty > .jsontree_value-wrapper > .jsontree_value > .jsontree_show-more { + display: none !important; +} +.jsontree_node_complex > .jsontree_label-wrapper > .jsontree_label { + cursor: pointer; +} +.jsontree_node_empty > .jsontree_label-wrapper > .jsontree_label { + cursor: default !important; +} +.jsontree_node { + list-style-type: none; +} diff --git a/web/static/img/favicon-16x16.png b/web/static/img/favicon-16x16.png new file mode 100644 index 0000000..2495daf Binary files /dev/null and b/web/static/img/favicon-16x16.png differ diff --git a/web/static/img/favicon-32x32.png b/web/static/img/favicon-32x32.png new file mode 100644 index 0000000..f5de323 Binary files /dev/null and b/web/static/img/favicon-32x32.png differ diff --git a/web/static/img/favicon.ico b/web/static/img/favicon.ico new file mode 100644 index 0000000..ab6e558 Binary files /dev/null and b/web/static/img/favicon.ico differ diff --git a/web/static/img/icons.svg b/web/static/img/icons.svg new file mode 100644 index 0000000..cc8298a --- /dev/null +++ b/web/static/img/icons.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/web/static/img/logo.png b/web/static/img/logo.png new file mode 100644 index 0000000..e4838fc Binary files /dev/null and b/web/static/img/logo.png differ diff --git a/web/static/js/bootstrap-4.3.1.js b/web/static/js/bootstrap-4.3.1.js new file mode 100644 index 0000000..c4c0d1f --- /dev/null +++ b/web/static/js/bootstrap-4.3.1.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap v4.3.1 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("jquery"),require("popper.js")):"function"==typeof define&&define.amd?define(["exports","jquery","popper.js"],e):e((t=t||self).bootstrap={},t.jQuery,t.Popper)}(this,function(t,g,u){"use strict";function i(t,e){for(var n=0;nthis._items.length-1||t<0))if(this._isSliding)g(this._element).one(Q.SLID,function(){return e.to(t)});else{if(n===t)return this.pause(),void this.cycle();var i=ndocument.documentElement.clientHeight;!this._isBodyOverflowing&&t&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!t&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},t._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},t._checkScrollbar=function(){var t=document.body.getBoundingClientRect();this._isBodyOverflowing=t.left+t.right
',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent",sanitize:!0,sanitizeFn:null,whiteList:Ee},je="show",He="out",Re={HIDE:"hide"+De,HIDDEN:"hidden"+De,SHOW:"show"+De,SHOWN:"shown"+De,INSERTED:"inserted"+De,CLICK:"click"+De,FOCUSIN:"focusin"+De,FOCUSOUT:"focusout"+De,MOUSEENTER:"mouseenter"+De,MOUSELEAVE:"mouseleave"+De},xe="fade",Fe="show",Ue=".tooltip-inner",We=".arrow",qe="hover",Me="focus",Ke="click",Qe="manual",Be=function(){function i(t,e){if("undefined"==typeof u)throw new TypeError("Bootstrap's tooltips require Popper.js (https://popper.js.org/)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners()}var t=i.prototype;return t.enable=function(){this._isEnabled=!0},t.disable=function(){this._isEnabled=!1},t.toggleEnabled=function(){this._isEnabled=!this._isEnabled},t.toggle=function(t){if(this._isEnabled)if(t){var e=this.constructor.DATA_KEY,n=g(t.currentTarget).data(e);n||(n=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(e,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(g(this.getTipElement()).hasClass(Fe))return void this._leave(null,this);this._enter(null,this)}},t.dispose=function(){clearTimeout(this._timeout),g.removeData(this.element,this.constructor.DATA_KEY),g(this.element).off(this.constructor.EVENT_KEY),g(this.element).closest(".modal").off("hide.bs.modal"),this.tip&&g(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,(this._activeTrigger=null)!==this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},t.show=function(){var e=this;if("none"===g(this.element).css("display"))throw new Error("Please use show on visible elements");var t=g.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){g(this.element).trigger(t);var n=_.findShadowRoot(this.element),i=g.contains(null!==n?n:this.element.ownerDocument.documentElement,this.element);if(t.isDefaultPrevented()||!i)return;var o=this.getTipElement(),r=_.getUID(this.constructor.NAME);o.setAttribute("id",r),this.element.setAttribute("aria-describedby",r),this.setContent(),this.config.animation&&g(o).addClass(xe);var s="function"==typeof this.config.placement?this.config.placement.call(this,o,this.element):this.config.placement,a=this._getAttachment(s);this.addAttachmentClass(a);var l=this._getContainer();g(o).data(this.constructor.DATA_KEY,this),g.contains(this.element.ownerDocument.documentElement,this.tip)||g(o).appendTo(l),g(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new u(this.element,o,{placement:a,modifiers:{offset:this._getOffset(),flip:{behavior:this.config.fallbackPlacement},arrow:{element:We},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(t){t.originalPlacement!==t.placement&&e._handlePopperPlacementChange(t)},onUpdate:function(t){return e._handlePopperPlacementChange(t)}}),g(o).addClass(Fe),"ontouchstart"in document.documentElement&&g(document.body).children().on("mouseover",null,g.noop);var c=function(){e.config.animation&&e._fixTransition();var t=e._hoverState;e._hoverState=null,g(e.element).trigger(e.constructor.Event.SHOWN),t===He&&e._leave(null,e)};if(g(this.tip).hasClass(xe)){var h=_.getTransitionDurationFromElement(this.tip);g(this.tip).one(_.TRANSITION_END,c).emulateTransitionEnd(h)}else c()}},t.hide=function(t){var e=this,n=this.getTipElement(),i=g.Event(this.constructor.Event.HIDE),o=function(){e._hoverState!==je&&n.parentNode&&n.parentNode.removeChild(n),e._cleanTipClass(),e.element.removeAttribute("aria-describedby"),g(e.element).trigger(e.constructor.Event.HIDDEN),null!==e._popper&&e._popper.destroy(),t&&t()};if(g(this.element).trigger(i),!i.isDefaultPrevented()){if(g(n).removeClass(Fe),"ontouchstart"in document.documentElement&&g(document.body).children().off("mouseover",null,g.noop),this._activeTrigger[Ke]=!1,this._activeTrigger[Me]=!1,this._activeTrigger[qe]=!1,g(this.tip).hasClass(xe)){var r=_.getTransitionDurationFromElement(n);g(n).one(_.TRANSITION_END,o).emulateTransitionEnd(r)}else o();this._hoverState=""}},t.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},t.isWithContent=function(){return Boolean(this.getTitle())},t.addAttachmentClass=function(t){g(this.getTipElement()).addClass(Ae+"-"+t)},t.getTipElement=function(){return this.tip=this.tip||g(this.config.template)[0],this.tip},t.setContent=function(){var t=this.getTipElement();this.setElementContent(g(t.querySelectorAll(Ue)),this.getTitle()),g(t).removeClass(xe+" "+Fe)},t.setElementContent=function(t,e){"object"!=typeof e||!e.nodeType&&!e.jquery?this.config.html?(this.config.sanitize&&(e=Se(e,this.config.whiteList,this.config.sanitizeFn)),t.html(e)):t.text(e):this.config.html?g(e).parent().is(t)||t.empty().append(e):t.text(g(e).text())},t.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),t},t._getOffset=function(){var e=this,t={};return"function"==typeof this.config.offset?t.fn=function(t){return t.offsets=l({},t.offsets,e.config.offset(t.offsets,e.element)||{}),t}:t.offset=this.config.offset,t},t._getContainer=function(){return!1===this.config.container?document.body:_.isElement(this.config.container)?g(this.config.container):g(document).find(this.config.container)},t._getAttachment=function(t){return Pe[t.toUpperCase()]},t._setListeners=function(){var i=this;this.config.trigger.split(" ").forEach(function(t){if("click"===t)g(i.element).on(i.constructor.Event.CLICK,i.config.selector,function(t){return i.toggle(t)});else if(t!==Qe){var e=t===qe?i.constructor.Event.MOUSEENTER:i.constructor.Event.FOCUSIN,n=t===qe?i.constructor.Event.MOUSELEAVE:i.constructor.Event.FOCUSOUT;g(i.element).on(e,i.config.selector,function(t){return i._enter(t)}).on(n,i.config.selector,function(t){return i._leave(t)})}}),g(this.element).closest(".modal").on("hide.bs.modal",function(){i.element&&i.hide()}),this.config.selector?this.config=l({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},t._fixTitle=function(){var t=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==t)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},t._enter=function(t,e){var n=this.constructor.DATA_KEY;(e=e||g(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusin"===t.type?Me:qe]=!0),g(e.getTipElement()).hasClass(Fe)||e._hoverState===je?e._hoverState=je:(clearTimeout(e._timeout),e._hoverState=je,e.config.delay&&e.config.delay.show?e._timeout=setTimeout(function(){e._hoverState===je&&e.show()},e.config.delay.show):e.show())},t._leave=function(t,e){var n=this.constructor.DATA_KEY;(e=e||g(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusout"===t.type?Me:qe]=!1),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=He,e.config.delay&&e.config.delay.hide?e._timeout=setTimeout(function(){e._hoverState===He&&e.hide()},e.config.delay.hide):e.hide())},t._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},t._getConfig=function(t){var e=g(this.element).data();return Object.keys(e).forEach(function(t){-1!==Oe.indexOf(t)&&delete e[t]}),"number"==typeof(t=l({},this.constructor.Default,e,"object"==typeof t&&t?t:{})).delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),_.typeCheckConfig(be,t,this.constructor.DefaultType),t.sanitize&&(t.template=Se(t.template,t.whiteList,t.sanitizeFn)),t},t._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},t._cleanTipClass=function(){var t=g(this.getTipElement()),e=t.attr("class").match(Ne);null!==e&&e.length&&t.removeClass(e.join(""))},t._handlePopperPlacementChange=function(t){var e=t.instance;this.tip=e.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(t.placement))},t._fixTransition=function(){var t=this.getTipElement(),e=this.config.animation;null===t.getAttribute("x-placement")&&(g(t).removeClass(xe),this.config.animation=!1,this.hide(),this.show(),this.config.animation=e)},i._jQueryInterface=function(n){return this.each(function(){var t=g(this).data(Ie),e="object"==typeof n&&n;if((t||!/dispose|hide/.test(n))&&(t||(t=new i(this,e),g(this).data(Ie,t)),"string"==typeof n)){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.1"}},{key:"Default",get:function(){return Le}},{key:"NAME",get:function(){return be}},{key:"DATA_KEY",get:function(){return Ie}},{key:"Event",get:function(){return Re}},{key:"EVENT_KEY",get:function(){return De}},{key:"DefaultType",get:function(){return ke}}]),i}();g.fn[be]=Be._jQueryInterface,g.fn[be].Constructor=Be,g.fn[be].noConflict=function(){return g.fn[be]=we,Be._jQueryInterface};var Ve="popover",Ye="bs.popover",ze="."+Ye,Xe=g.fn[Ve],$e="bs-popover",Ge=new RegExp("(^|\\s)"+$e+"\\S+","g"),Je=l({},Be.Default,{placement:"right",trigger:"click",content:"",template:''}),Ze=l({},Be.DefaultType,{content:"(string|element|function)"}),tn="fade",en="show",nn=".popover-header",on=".popover-body",rn={HIDE:"hide"+ze,HIDDEN:"hidden"+ze,SHOW:"show"+ze,SHOWN:"shown"+ze,INSERTED:"inserted"+ze,CLICK:"click"+ze,FOCUSIN:"focusin"+ze,FOCUSOUT:"focusout"+ze,MOUSEENTER:"mouseenter"+ze,MOUSELEAVE:"mouseleave"+ze},sn=function(t){var e,n;function i(){return t.apply(this,arguments)||this}n=t,(e=i).prototype=Object.create(n.prototype),(e.prototype.constructor=e).__proto__=n;var o=i.prototype;return o.isWithContent=function(){return this.getTitle()||this._getContent()},o.addAttachmentClass=function(t){g(this.getTipElement()).addClass($e+"-"+t)},o.getTipElement=function(){return this.tip=this.tip||g(this.config.template)[0],this.tip},o.setContent=function(){var t=g(this.getTipElement());this.setElementContent(t.find(nn),this.getTitle());var e=this._getContent();"function"==typeof e&&(e=e.call(this.element)),this.setElementContent(t.find(on),e),t.removeClass(tn+" "+en)},o._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},o._cleanTipClass=function(){var t=g(this.getTipElement()),e=t.attr("class").match(Ge);null!==e&&0=this._offsets[o]&&("undefined"==typeof this._offsets[o+1]||t=0&&n0&&t-1 in e)}var E=function(e){var t,n,r,i,o,a,u,s,l,c,f,d,p,h,g,v,y,m,b,x="sizzle"+1*new Date,w=e.document,C=0,T=0,E=ae(),N=ae(),k=ae(),A=function(e,t){return e===t&&(f=!0),0},D={}.hasOwnProperty,S=[],L=S.pop,j=S.push,q=S.push,O=S.slice,P=function(e,t){for(var n=0,r=e.length;n+~]|"+I+")"+I+"*"),_=new RegExp("="+I+"*([^\\]'\"]*?)"+I+"*\\]","g"),U=new RegExp(M),V=new RegExp("^"+R+"$"),X={ID:new RegExp("^#("+R+")"),CLASS:new RegExp("^\\.("+R+")"),TAG:new RegExp("^("+R+"|[*])"),ATTR:new RegExp("^"+B),PSEUDO:new RegExp("^"+M),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+I+"*(even|odd|(([+-]|)(\\d*)n|)"+I+"*(?:([+-]|)"+I+"*(\\d+)|))"+I+"*\\)|)","i"),bool:new RegExp("^(?:"+H+")$","i"),needsContext:new RegExp("^"+I+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+I+"*((?:-\\d)?\\d*)"+I+"*\\)|)(?=[^-]|$)","i")},Q=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,G=/^[^{]+\{\s*\[native \w/,K=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,J=/[+~]/,Z=new RegExp("\\\\([\\da-f]{1,6}"+I+"?|("+I+")|.)","ig"),ee=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},te=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ne=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},re=function(){d()},ie=me(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{q.apply(S=O.call(w.childNodes),w.childNodes),S[w.childNodes.length].nodeType}catch(e){q={apply:S.length?function(e,t){j.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function oe(e,t,r,i){var o,u,l,c,f,h,y,m=t&&t.ownerDocument,C=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==C&&9!==C&&11!==C)return r;if(!i&&((t?t.ownerDocument||t:w)!==p&&d(t),t=t||p,g)){if(11!==C&&(f=K.exec(e)))if(o=f[1]){if(9===C){if(!(l=t.getElementById(o)))return r;if(l.id===o)return r.push(l),r}else if(m&&(l=m.getElementById(o))&&b(t,l)&&l.id===o)return r.push(l),r}else{if(f[2])return q.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return q.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!k[e+" "]&&(!v||!v.test(e))){if(1!==C)m=t,y=e;else if("object"!==t.nodeName.toLowerCase()){(c=t.getAttribute("id"))?c=c.replace(te,ne):t.setAttribute("id",c=x),u=(h=a(e)).length;while(u--)h[u]="#"+c+" "+ye(h[u]);y=h.join(","),m=J.test(e)&&ge(t.parentNode)||t}if(y)try{return q.apply(r,m.querySelectorAll(y)),r}catch(e){}finally{c===x&&t.removeAttribute("id")}}}return s(e.replace($,"$1"),t,r,i)}function ae(){var e=[];function t(n,i){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=i}return t}function ue(e){return e[x]=!0,e}function se(e){var t=p.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function le(e,t){var n=e.split("|"),i=n.length;while(i--)r.attrHandle[n[i]]=t}function ce(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function fe(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function de(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function pe(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ie(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function he(e){return ue(function(t){return t=+t,ue(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function ge(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}n=oe.support={},o=oe.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},d=oe.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!==p&&9===a.nodeType&&a.documentElement?(p=a,h=p.documentElement,g=!o(p),w!==p&&(i=p.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",re,!1):i.attachEvent&&i.attachEvent("onunload",re)),n.attributes=se(function(e){return e.className="i",!e.getAttribute("className")}),n.getElementsByTagName=se(function(e){return e.appendChild(p.createComment("")),!e.getElementsByTagName("*").length}),n.getElementsByClassName=G.test(p.getElementsByClassName),n.getById=se(function(e){return h.appendChild(e).id=x,!p.getElementsByName||!p.getElementsByName(x).length}),n.getById?(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&g)return t.getElementsByClassName(e)},y=[],v=[],(n.qsa=G.test(p.querySelectorAll))&&(se(function(e){h.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+I+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+I+"*(?:value|"+H+")"),e.querySelectorAll("[id~="+x+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+x+"+*").length||v.push(".#.+[+~]")}),se(function(e){e.innerHTML="";var t=p.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+I+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(n.matchesSelector=G.test(m=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&se(function(e){n.disconnectedMatch=m.call(e,"*"),m.call(e,"[s!='']:x"),y.push("!=",M)}),v=v.length&&new RegExp(v.join("|")),y=y.length&&new RegExp(y.join("|")),t=G.test(h.compareDocumentPosition),b=t||G.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},A=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e===p||e.ownerDocument===w&&b(w,e)?-1:t===p||t.ownerDocument===w&&b(w,t)?1:c?P(c,e)-P(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],u=[t];if(!i||!o)return e===p?-1:t===p?1:i?-1:o?1:c?P(c,e)-P(c,t):0;if(i===o)return ce(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)u.unshift(n);while(a[r]===u[r])r++;return r?ce(a[r],u[r]):a[r]===w?-1:u[r]===w?1:0},p):p},oe.matches=function(e,t){return oe(e,null,null,t)},oe.matchesSelector=function(e,t){if((e.ownerDocument||e)!==p&&d(e),t=t.replace(_,"='$1']"),n.matchesSelector&&g&&!k[t+" "]&&(!y||!y.test(t))&&(!v||!v.test(t)))try{var r=m.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return oe(t,p,null,[e]).length>0},oe.contains=function(e,t){return(e.ownerDocument||e)!==p&&d(e),b(e,t)},oe.attr=function(e,t){(e.ownerDocument||e)!==p&&d(e);var i=r.attrHandle[t.toLowerCase()],o=i&&D.call(r.attrHandle,t.toLowerCase())?i(e,t,!g):void 0;return void 0!==o?o:n.attributes||!g?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},oe.escape=function(e){return(e+"").replace(te,ne)},oe.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},oe.uniqueSort=function(e){var t,r=[],i=0,o=0;if(f=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(A),f){while(t=e[o++])t===e[o]&&(i=r.push(o));while(i--)e.splice(r[i],1)}return c=null,e},i=oe.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else while(t=e[r++])n+=i(t);return n},(r=oe.selectors={cacheLength:50,createPseudo:ue,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(Z,ee),e[3]=(e[3]||e[4]||e[5]||"").replace(Z,ee),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||oe.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&oe.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return X.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&U.test(n)&&(t=a(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(Z,ee).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+" "];return t||(t=new RegExp("(^|"+I+")"+e+"("+I+"|$)"))&&E(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=oe.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i.replace(W," ")+" ").indexOf(n)>-1:"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),u="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,s){var l,c,f,d,p,h,g=o!==a?"nextSibling":"previousSibling",v=t.parentNode,y=u&&t.nodeName.toLowerCase(),m=!s&&!u,b=!1;if(v){if(o){while(g){d=t;while(d=d[g])if(u?d.nodeName.toLowerCase()===y:1===d.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?v.firstChild:v.lastChild],a&&m){b=(p=(l=(c=(f=(d=v)[x]||(d[x]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]||[])[0]===C&&l[1])&&l[2],d=p&&v.childNodes[p];while(d=++p&&d&&d[g]||(b=p=0)||h.pop())if(1===d.nodeType&&++b&&d===t){c[e]=[C,p,b];break}}else if(m&&(b=p=(l=(c=(f=(d=t)[x]||(d[x]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]||[])[0]===C&&l[1]),!1===b)while(d=++p&&d&&d[g]||(b=p=0)||h.pop())if((u?d.nodeName.toLowerCase()===y:1===d.nodeType)&&++b&&(m&&((c=(f=d[x]||(d[x]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]=[C,b]),d===t))break;return(b-=i)===r||b%r==0&&b/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||oe.error("unsupported pseudo: "+e);return i[x]?i(t):i.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?ue(function(e,n){var r,o=i(e,t),a=o.length;while(a--)e[r=P(e,o[a])]=!(n[r]=o[a])}):function(e){return i(e,0,n)}):i}},pseudos:{not:ue(function(e){var t=[],n=[],r=u(e.replace($,"$1"));return r[x]?ue(function(e,t,n,i){var o,a=r(e,null,i,[]),u=e.length;while(u--)(o=a[u])&&(e[u]=!(t[u]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}}),has:ue(function(e){return function(t){return oe(e,t).length>0}}),contains:ue(function(e){return e=e.replace(Z,ee),function(t){return(t.textContent||t.innerText||i(t)).indexOf(e)>-1}}),lang:ue(function(e){return V.test(e||"")||oe.error("unsupported lang: "+e),e=e.replace(Z,ee).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===p.activeElement&&(!p.hasFocus||p.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:pe(!1),disabled:pe(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return Y.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:he(function(){return[0]}),last:he(function(e,t){return[t-1]}),eq:he(function(e,t,n){return[n<0?n+t:n]}),even:he(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:he(function(e,t,n){for(var r=n<0?n+t:n;++r1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function xe(e,t,n){for(var r=0,i=t.length;r-1&&(o[l]=!(a[l]=f))}}else y=we(y===a?y.splice(h,y.length):y),i?i(null,a,y,s):q.apply(a,y)})}function Te(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],u=a||r.relative[" "],s=a?1:0,c=me(function(e){return e===t},u,!0),f=me(function(e){return P(t,e)>-1},u,!0),d=[function(e,n,r){var i=!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):f(e,n,r));return t=null,i}];s1&&be(d),s>1&&ye(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),n,s0,i=e.length>0,o=function(o,a,u,s,c){var f,h,v,y=0,m="0",b=o&&[],x=[],w=l,T=o||i&&r.find.TAG("*",c),E=C+=null==w?1:Math.random()||.1,N=T.length;for(c&&(l=a===p||a||c);m!==N&&null!=(f=T[m]);m++){if(i&&f){h=0,a||f.ownerDocument===p||(d(f),u=!g);while(v=e[h++])if(v(f,a||p,u)){s.push(f);break}c&&(C=E)}n&&((f=!v&&f)&&y--,o&&b.push(f))}if(y+=m,n&&m!==y){h=0;while(v=t[h++])v(b,x,a,u);if(o){if(y>0)while(m--)b[m]||x[m]||(x[m]=L.call(s));x=we(x)}q.apply(s,x),c&&!o&&x.length>0&&y+t.length>1&&oe.uniqueSort(s)}return c&&(C=E,l=w),b};return n?ue(o):o}return u=oe.compile=function(e,t){var n,r=[],i=[],o=k[e+" "];if(!o){t||(t=a(e)),n=t.length;while(n--)(o=Te(t[n]))[x]?r.push(o):i.push(o);(o=k(e,Ee(i,r))).selector=e}return o},s=oe.select=function(e,t,n,i){var o,s,l,c,f,d="function"==typeof e&&e,p=!i&&a(e=d.selector||e);if(n=n||[],1===p.length){if((s=p[0]=p[0].slice(0)).length>2&&"ID"===(l=s[0]).type&&9===t.nodeType&&g&&r.relative[s[1].type]){if(!(t=(r.find.ID(l.matches[0].replace(Z,ee),t)||[])[0]))return n;d&&(t=t.parentNode),e=e.slice(s.shift().value.length)}o=X.needsContext.test(e)?0:s.length;while(o--){if(l=s[o],r.relative[c=l.type])break;if((f=r.find[c])&&(i=f(l.matches[0].replace(Z,ee),J.test(s[0].type)&&ge(t.parentNode)||t))){if(s.splice(o,1),!(e=i.length&&ye(s)))return q.apply(n,i),n;break}}}return(d||u(e,p))(i,t,!g,n,!t||J.test(e)&&ge(t.parentNode)||t),n},n.sortStable=x.split("").sort(A).join("")===x,n.detectDuplicates=!!f,d(),n.sortDetached=se(function(e){return 1&e.compareDocumentPosition(p.createElement("fieldset"))}),se(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||le("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),n.attributes&&se(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||le("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),se(function(e){return null==e.getAttribute("disabled")})||le(H,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),oe}(e);w.find=E,w.expr=E.selectors,w.expr[":"]=w.expr.pseudos,w.uniqueSort=w.unique=E.uniqueSort,w.text=E.getText,w.isXMLDoc=E.isXML,w.contains=E.contains,w.escapeSelector=E.escape;var N=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&w(e).is(n))break;r.push(e)}return r},k=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},A=w.expr.match.needsContext;function D(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var S=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function L(e,t,n){return g(t)?w.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?w.grep(e,function(e){return e===t!==n}):"string"!=typeof t?w.grep(e,function(e){return s.call(t,e)>-1!==n}):w.filter(t,e,n)}w.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?w.find.matchesSelector(r,e)?[r]:[]:w.find.matches(e,w.grep(t,function(e){return 1===e.nodeType}))},w.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(w(e).filter(function(){for(t=0;t1?w.uniqueSort(n):n},filter:function(e){return this.pushStack(L(this,e||[],!1))},not:function(e){return this.pushStack(L(this,e||[],!0))},is:function(e){return!!L(this,"string"==typeof e&&A.test(e)?w(e):e||[],!1).length}});var j,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(w.fn.init=function(e,t,n){var i,o;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(i="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:q.exec(e))||!i[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof w?t[0]:t,w.merge(this,w.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:r,!0)),S.test(i[1])&&w.isPlainObject(t))for(i in t)g(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return(o=r.getElementById(i[2]))&&(this[0]=o,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):g(e)?void 0!==n.ready?n.ready(e):e(w):w.makeArray(e,this)}).prototype=w.fn,j=w(r);var O=/^(?:parents|prev(?:Until|All))/,P={children:!0,contents:!0,next:!0,prev:!0};w.fn.extend({has:function(e){var t=w(e,this),n=t.length;return this.filter(function(){for(var e=0;e-1:1===n.nodeType&&w.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?w.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?s.call(w(e),this[0]):s.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(w.uniqueSort(w.merge(this.get(),w(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function H(e,t){while((e=e[t])&&1!==e.nodeType);return e}w.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return N(e,"parentNode")},parentsUntil:function(e,t,n){return N(e,"parentNode",n)},next:function(e){return H(e,"nextSibling")},prev:function(e){return H(e,"previousSibling")},nextAll:function(e){return N(e,"nextSibling")},prevAll:function(e){return N(e,"previousSibling")},nextUntil:function(e,t,n){return N(e,"nextSibling",n)},prevUntil:function(e,t,n){return N(e,"previousSibling",n)},siblings:function(e){return k((e.parentNode||{}).firstChild,e)},children:function(e){return k(e.firstChild)},contents:function(e){return D(e,"iframe")?e.contentDocument:(D(e,"template")&&(e=e.content||e),w.merge([],e.childNodes))}},function(e,t){w.fn[e]=function(n,r){var i=w.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=w.filter(r,i)),this.length>1&&(P[e]||w.uniqueSort(i),O.test(e)&&i.reverse()),this.pushStack(i)}});var I=/[^\x20\t\r\n\f]+/g;function R(e){var t={};return w.each(e.match(I)||[],function(e,n){t[n]=!0}),t}w.Callbacks=function(e){e="string"==typeof e?R(e):w.extend({},e);var t,n,r,i,o=[],a=[],u=-1,s=function(){for(i=i||e.once,r=t=!0;a.length;u=-1){n=a.shift();while(++u-1)o.splice(n,1),n<=u&&u--}),this},has:function(e){return e?w.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||s()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l};function B(e){return e}function M(e){throw e}function W(e,t,n,r){var i;try{e&&g(i=e.promise)?i.call(e).done(t).fail(n):e&&g(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}w.extend({Deferred:function(t){var n=[["notify","progress",w.Callbacks("memory"),w.Callbacks("memory"),2],["resolve","done",w.Callbacks("once memory"),w.Callbacks("once memory"),0,"resolved"],["reject","fail",w.Callbacks("once memory"),w.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},"catch":function(e){return i.then(null,e)},pipe:function(){var e=arguments;return w.Deferred(function(t){w.each(n,function(n,r){var i=g(e[r[4]])&&e[r[4]];o[r[1]](function(){var e=i&&i.apply(this,arguments);e&&g(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(t,r,i){var o=0;function a(t,n,r,i){return function(){var u=this,s=arguments,l=function(){var e,l;if(!(t=o&&(r!==M&&(u=void 0,s=[e]),n.rejectWith(u,s))}};t?c():(w.Deferred.getStackHook&&(c.stackTrace=w.Deferred.getStackHook()),e.setTimeout(c))}}return w.Deferred(function(e){n[0][3].add(a(0,e,g(i)?i:B,e.notifyWith)),n[1][3].add(a(0,e,g(t)?t:B)),n[2][3].add(a(0,e,g(r)?r:M))}).promise()},promise:function(e){return null!=e?w.extend(e,i):i}},o={};return w.each(n,function(e,t){var a=t[2],u=t[5];i[t[1]]=a.add,u&&a.add(function(){r=u},n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=a.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=o.call(arguments),a=w.Deferred(),u=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?o.call(arguments):n,--t||a.resolveWith(r,i)}};if(t<=1&&(W(e,a.done(u(n)).resolve,a.reject,!t),"pending"===a.state()||g(i[n]&&i[n].then)))return a.then();while(n--)W(i[n],u(n),a.reject);return a.promise()}});var $=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;w.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&$.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},w.readyException=function(t){e.setTimeout(function(){throw t})};var F=w.Deferred();w.fn.ready=function(e){return F.then(e)["catch"](function(e){w.readyException(e)}),this},w.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--w.readyWait:w.isReady)||(w.isReady=!0,!0!==e&&--w.readyWait>0||F.resolveWith(r,[w]))}}),w.ready.then=F.then;function z(){r.removeEventListener("DOMContentLoaded",z),e.removeEventListener("load",z),w.ready()}"complete"===r.readyState||"loading"!==r.readyState&&!r.documentElement.doScroll?e.setTimeout(w.ready):(r.addEventListener("DOMContentLoaded",z),e.addEventListener("load",z));var _=function(e,t,n,r,i,o,a){var u=0,s=e.length,l=null==n;if("object"===b(n)){i=!0;for(u in n)_(e,t,u,n[u],!0,o,a)}else if(void 0!==r&&(i=!0,g(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(w(e),n)})),t))for(;u1,null,!0)},removeData:function(e){return this.each(function(){J.remove(this,e)})}}),w.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=K.get(e,t),n&&(!r||Array.isArray(n)?r=K.access(e,t,w.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=w.queue(e,t),r=n.length,i=n.shift(),o=w._queueHooks(e,t),a=function(){w.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return K.get(e,n)||K.access(e,n,{empty:w.Callbacks("once memory").add(function(){K.remove(e,[t+"queue",n])})})}}),w.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]+)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ge.optgroup=ge.option,ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td;function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&D(e,t)?w.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n-1)i&&i.push(o);else if(l=w.contains(o.ownerDocument,o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}!function(){var e=r.createDocumentFragment().appendChild(r.createElement("div")),t=r.createElement("input");t.setAttribute("type","radio"),t.setAttribute("checked","checked"),t.setAttribute("name","t"),e.appendChild(t),h.checkClone=e.cloneNode(!0).cloneNode(!0).lastChild.checked,e.innerHTML="",h.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue}();var xe=r.documentElement,we=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Te=/^([^.]*)(?:\.(.+)|)/;function Ee(){return!0}function Ne(){return!1}function ke(){try{return r.activeElement}catch(e){}}function Ae(e,t,n,r,i,o){var a,u;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(u in t)Ae(e,u,n,r,t[u],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Ne;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return w().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=w.guid++)),e.each(function(){w.event.add(this,t,i,r,n)})}w.event={global:{},add:function(e,t,n,r,i){var o,a,u,s,l,c,f,d,p,h,g,v=K.get(e);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&w.find.matchesSelector(xe,i),n.guid||(n.guid=w.guid++),(s=v.events)||(s=v.events={}),(a=v.handle)||(a=v.handle=function(t){return"undefined"!=typeof w&&w.event.triggered!==t.type?w.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||"").match(I)||[""]).length;while(l--)p=g=(u=Te.exec(t[l])||[])[1],h=(u[2]||"").split(".").sort(),p&&(f=w.event.special[p]||{},p=(i?f.delegateType:f.bindType)||p,f=w.event.special[p]||{},c=w.extend({type:p,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&w.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=s[p])||((d=s[p]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(p,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,c):d.push(c),w.event.global[p]=!0)}},remove:function(e,t,n,r,i){var o,a,u,s,l,c,f,d,p,h,g,v=K.hasData(e)&&K.get(e);if(v&&(s=v.events)){l=(t=(t||"").match(I)||[""]).length;while(l--)if(u=Te.exec(t[l])||[],p=g=u[1],h=(u[2]||"").split(".").sort(),p){f=w.event.special[p]||{},d=s[p=(r?f.delegateType:f.bindType)||p]||[],u=u[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=d.length;while(o--)c=d[o],!i&&g!==c.origType||n&&n.guid!==c.guid||u&&!u.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(d.splice(o,1),c.selector&&d.delegateCount--,f.remove&&f.remove.call(e,c));a&&!d.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||w.removeEvent(e,p,v.handle),delete s[p])}else for(p in s)w.event.remove(e,p+t[l],n,r,!0);w.isEmptyObject(s)&&K.remove(e,"handle events")}},dispatch:function(e){var t=w.event.fix(e),n,r,i,o,a,u,s=new Array(arguments.length),l=(K.get(this,"events")||{})[t.type]||[],c=w.event.special[t.type]||{};for(s[0]=t,n=1;n=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n-1:w.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&u.push({elem:l,handlers:o})}return l=this,s\x20\t\r\n\f]*)[^>]*)\/>/gi,Se=/\s*$/g;function qe(e,t){return D(e,"table")&&D(11!==t.nodeType?t:t.firstChild,"tr")?w(e).children("tbody")[0]||e:e}function Oe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Pe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function He(e,t){var n,r,i,o,a,u,s,l;if(1===t.nodeType){if(K.hasData(e)&&(o=K.access(e),a=K.set(t,o),l=o.events)){delete a.handle,a.events={};for(i in l)for(n=0,r=l[i].length;n1&&"string"==typeof v&&!h.checkClone&&Le.test(v))return e.each(function(i){var o=e.eq(i);y&&(t[0]=v.call(this,i,o.html())),Re(o,t,n,r)});if(d&&(i=be(t,e[0].ownerDocument,!1,e,r),o=i.firstChild,1===i.childNodes.length&&(i=o),o||r)){for(s=(u=w.map(ve(i,"script"),Oe)).length;f")},clone:function(e,t,n){var r,i,o,a,u=e.cloneNode(!0),s=w.contains(e.ownerDocument,e);if(!(h.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||w.isXMLDoc(e)))for(a=ve(u),r=0,i=(o=ve(e)).length;r0&&ye(a,!s&&ve(e,"script")),u},cleanData:function(e){for(var t,n,r,i=w.event.special,o=0;void 0!==(n=e[o]);o++)if(Y(n)){if(t=n[K.expando]){if(t.events)for(r in t.events)i[r]?w.event.remove(n,r):w.removeEvent(n,r,t.handle);n[K.expando]=void 0}n[J.expando]&&(n[J.expando]=void 0)}}}),w.fn.extend({detach:function(e){return Be(this,e,!0)},remove:function(e){return Be(this,e)},text:function(e){return _(this,function(e){return void 0===e?w.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Re(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||qe(this,e).appendChild(e)})},prepend:function(){return Re(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=qe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(w.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return w.clone(this,e,t)})},html:function(e){return _(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Se.test(e)&&!ge[(pe.exec(e)||["",""])[1].toLowerCase()]){e=w.htmlPrefilter(e);try{for(;n=0&&(s+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-s-u-.5))),s}function et(e,t,n){var r=We(e),i=Fe(e,t,r),o="border-box"===w.css(e,"boxSizing",!1,r),a=o;if(Me.test(i)){if(!n)return i;i="auto"}return a=a&&(h.boxSizingReliable()||i===e.style[t]),("auto"===i||!parseFloat(i)&&"inline"===w.css(e,"display",!1,r))&&(i=e["offset"+t[0].toUpperCase()+t.slice(1)],a=!0),(i=parseFloat(i)||0)+Ze(e,t,n||(o?"border":"content"),a,r,i)+"px"}w.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Fe(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,u=Q(t),s=Ue.test(t),l=e.style;if(s||(t=Ke(u)),a=w.cssHooks[t]||w.cssHooks[u],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"==(o=typeof n)&&(i=ie.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n===n&&("number"===o&&(n+=i&&i[3]||(w.cssNumber[u]?"":"px")),h.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(s?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,u=Q(t);return Ue.test(t)||(t=Ke(u)),(a=w.cssHooks[t]||w.cssHooks[u])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Fe(e,t,r)),"normal"===i&&t in Xe&&(i=Xe[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),w.each(["height","width"],function(e,t){w.cssHooks[t]={get:function(e,n,r){if(n)return!_e.test(w.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?et(e,t,r):ue(e,Ve,function(){return et(e,t,r)})},set:function(e,n,r){var i,o=We(e),a="border-box"===w.css(e,"boxSizing",!1,o),u=r&&Ze(e,t,r,a,o);return a&&h.scrollboxSize()===o.position&&(u-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-Ze(e,t,"border",!1,o)-.5)),u&&(i=ie.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=w.css(e,t)),Je(e,n,u)}}}),w.cssHooks.marginLeft=ze(h.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Fe(e,"marginLeft"))||e.getBoundingClientRect().left-ue(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),w.each({margin:"",padding:"",border:"Width"},function(e,t){w.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+oe[r]+t]=o[r]||o[r-2]||o[0];return i}},"margin"!==e&&(w.cssHooks[e+t].set=Je)}),w.fn.extend({css:function(e,t){return _(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=We(e),i=t.length;a1)}}),w.fn.delay=function(t,n){return t=w.fx?w.fx.speeds[t]||t:t,n=n||"fx",this.queue(n,function(n,r){var i=e.setTimeout(n,t);r.stop=function(){e.clearTimeout(i)}})},function(){var e=r.createElement("input"),t=r.createElement("select").appendChild(r.createElement("option"));e.type="checkbox",h.checkOn=""!==e.value,h.optSelected=t.selected,(e=r.createElement("input")).value="t",e.type="radio",h.radioValue="t"===e.value}();var tt,nt=w.expr.attrHandle;w.fn.extend({attr:function(e,t){return _(this,w.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){w.removeAttr(this,e)})}}),w.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?w.prop(e,t,n):(1===o&&w.isXMLDoc(e)||(i=w.attrHooks[t.toLowerCase()]||(w.expr.match.bool.test(t)?tt:void 0)),void 0!==n?null===n?void w.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=w.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!h.radioValue&&"radio"===t&&D(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(I);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),tt={set:function(e,t,n){return!1===t?w.removeAttr(e,n):e.setAttribute(n,n),n}},w.each(w.expr.match.bool.source.match(/\w+/g),function(e,t){var n=nt[t]||w.find.attr;nt[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=nt[a],nt[a]=i,i=null!=n(e,t,r)?a:null,nt[a]=o),i}});var rt=/^(?:input|select|textarea|button)$/i,it=/^(?:a|area)$/i;w.fn.extend({prop:function(e,t){return _(this,w.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[w.propFix[e]||e]})}}),w.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&w.isXMLDoc(e)||(t=w.propFix[t]||t,i=w.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=w.find.attr(e,"tabindex");return t?parseInt(t,10):rt.test(e.nodeName)||it.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),h.optSelected||(w.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),w.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){w.propFix[this.toLowerCase()]=this});function ot(e){return(e.match(I)||[]).join(" ")}function at(e){return e.getAttribute&&e.getAttribute("class")||""}function ut(e){return Array.isArray(e)?e:"string"==typeof e?e.match(I)||[]:[]}w.fn.extend({addClass:function(e){var t,n,r,i,o,a,u,s=0;if(g(e))return this.each(function(t){w(this).addClass(e.call(this,t,at(this)))});if((t=ut(e)).length)while(n=this[s++])if(i=at(n),r=1===n.nodeType&&" "+ot(i)+" "){a=0;while(o=t[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(u=ot(r))&&n.setAttribute("class",u)}return this},removeClass:function(e){var t,n,r,i,o,a,u,s=0;if(g(e))return this.each(function(t){w(this).removeClass(e.call(this,t,at(this)))});if(!arguments.length)return this.attr("class","");if((t=ut(e)).length)while(n=this[s++])if(i=at(n),r=1===n.nodeType&&" "+ot(i)+" "){a=0;while(o=t[a++])while(r.indexOf(" "+o+" ")>-1)r=r.replace(" "+o+" "," ");i!==(u=ot(r))&&n.setAttribute("class",u)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):g(e)?this.each(function(n){w(this).toggleClass(e.call(this,n,at(this),t),t)}):this.each(function(){var t,i,o,a;if(r){i=0,o=w(this),a=ut(e);while(t=a[i++])o.hasClass(t)?o.removeClass(t):o.addClass(t)}else void 0!==e&&"boolean"!==n||((t=at(this))&&K.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":K.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&(" "+ot(at(n))+" ").indexOf(t)>-1)return!0;return!1}});var st=/\r/g;w.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=g(e),this.each(function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,w(this).val()):e)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=w.map(i,function(e){return null==e?"":e+""})),(t=w.valHooks[this.type]||w.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return(t=w.valHooks[i.type]||w.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(st,""):null==n?"":n}}}),w.extend({valHooks:{option:{get:function(e){var t=w.find.attr(e,"value");return null!=t?t:ot(w.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,u=a?null:[],s=a?o+1:i.length;for(r=o<0?s:a?o:0;r-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),w.each(["radio","checkbox"],function(){w.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=w.inArray(w(e).val(),t)>-1}},h.checkOn||(w.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),h.focusin="onfocusin"in e;var lt=/^(?:focusinfocus|focusoutblur)$/,ct=function(e){e.stopPropagation()};w.extend(w.event,{trigger:function(t,n,i,o){var a,u,s,l,c,d,p,h,y=[i||r],m=f.call(t,"type")?t.type:t,b=f.call(t,"namespace")?t.namespace.split("."):[];if(u=h=s=i=i||r,3!==i.nodeType&&8!==i.nodeType&&!lt.test(m+w.event.triggered)&&(m.indexOf(".")>-1&&(m=(b=m.split(".")).shift(),b.sort()),c=m.indexOf(":")<0&&"on"+m,t=t[w.expando]?t:new w.Event(m,"object"==typeof t&&t),t.isTrigger=o?2:3,t.namespace=b.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=i),n=null==n?[t]:w.makeArray(n,[t]),p=w.event.special[m]||{},o||!p.trigger||!1!==p.trigger.apply(i,n))){if(!o&&!p.noBubble&&!v(i)){for(l=p.delegateType||m,lt.test(l+m)||(u=u.parentNode);u;u=u.parentNode)y.push(u),s=u;s===(i.ownerDocument||r)&&y.push(s.defaultView||s.parentWindow||e)}a=0;while((u=y[a++])&&!t.isPropagationStopped())h=u,t.type=a>1?l:p.bindType||m,(d=(K.get(u,"events")||{})[t.type]&&K.get(u,"handle"))&&d.apply(u,n),(d=c&&u[c])&&d.apply&&Y(u)&&(t.result=d.apply(u,n),!1===t.result&&t.preventDefault());return t.type=m,o||t.isDefaultPrevented()||p._default&&!1!==p._default.apply(y.pop(),n)||!Y(i)||c&&g(i[m])&&!v(i)&&((s=i[c])&&(i[c]=null),w.event.triggered=m,t.isPropagationStopped()&&h.addEventListener(m,ct),i[m](),t.isPropagationStopped()&&h.removeEventListener(m,ct),w.event.triggered=void 0,s&&(i[c]=s)),t.result}},simulate:function(e,t,n){var r=w.extend(new w.Event,n,{type:e,isSimulated:!0});w.event.trigger(r,null,t)}}),w.fn.extend({trigger:function(e,t){return this.each(function(){w.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return w.event.trigger(e,t,n,!0)}}),h.focusin||w.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){w.event.simulate(t,e.target,w.event.fix(e))};w.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=K.access(r,t);i||r.addEventListener(e,n,!0),K.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=K.access(r,t)-1;i?K.access(r,t,i):(r.removeEventListener(e,n,!0),K.remove(r,t))}}});var ft=/\[\]$/,dt=/\r?\n/g,pt=/^(?:submit|button|image|reset|file)$/i,ht=/^(?:input|select|textarea|keygen)/i;function gt(e,t,n,r){var i;if(Array.isArray(t))w.each(t,function(t,i){n||ft.test(e)?r(e,i):gt(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==b(t))r(e,t);else for(i in t)gt(e+"["+i+"]",t[i],n,r)}w.param=function(e,t){var n,r=[],i=function(e,t){var n=g(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(e)||e.jquery&&!w.isPlainObject(e))w.each(e,function(){i(this.name,this.value)});else for(n in e)gt(n,e[n],t,i);return r.join("&")},w.fn.extend({serialize:function(){return w.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=w.prop(this,"elements");return e?w.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!w(this).is(":disabled")&&ht.test(this.nodeName)&&!pt.test(e)&&(this.checked||!de.test(e))}).map(function(e,t){var n=w(this).val();return null==n?null:Array.isArray(n)?w.map(n,function(e){return{name:t.name,value:e.replace(dt,"\r\n")}}):{name:t.name,value:n.replace(dt,"\r\n")}}).get()}}),w.fn.extend({wrapAll:function(e){var t;return this[0]&&(g(e)&&(e=e.call(this[0])),t=w(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return g(e)?this.each(function(t){w(this).wrapInner(e.call(this,t))}):this.each(function(){var t=w(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=g(e);return this.each(function(n){w(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){w(this).replaceWith(this.childNodes)}),this}}),w.expr.pseudos.hidden=function(e){return!w.expr.pseudos.visible(e)},w.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},h.createHTMLDocument=function(){var e=r.implementation.createHTMLDocument("").body;return e.innerHTML="
",2===e.childNodes.length}(),w.parseHTML=function(e,t,n){if("string"!=typeof e)return[];"boolean"==typeof t&&(n=t,t=!1);var i,o,a;return t||(h.createHTMLDocument?((i=(t=r.implementation.createHTMLDocument("")).createElement("base")).href=r.location.href,t.head.appendChild(i)):t=r),o=S.exec(e),a=!n&&[],o?[t.createElement(o[1])]:(o=be([e],t,a),a&&a.length&&w(a).remove(),w.merge([],o.childNodes))},w.offset={setOffset:function(e,t,n){var r,i,o,a,u,s,l,c=w.css(e,"position"),f=w(e),d={};"static"===c&&(e.style.position="relative"),u=f.offset(),o=w.css(e,"top"),s=w.css(e,"left"),(l=("absolute"===c||"fixed"===c)&&(o+s).indexOf("auto")>-1)?(a=(r=f.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(s)||0),g(t)&&(t=t.call(e,n,w.extend({},u))),null!=t.top&&(d.top=t.top-u.top+a),null!=t.left&&(d.left=t.left-u.left+i),"using"in t?t.using.call(e,d):f.css(d)}},w.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){w.offset.setOffset(this,e,t)});var t,n,r=this[0];if(r)return r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===w.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===w.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=w(e).offset()).top+=w.css(e,"borderTopWidth",!0),i.left+=w.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-w.css(r,"marginTop",!0),left:t.left-i.left-w.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===w.css(e,"position"))e=e.offsetParent;return e||xe})}}),w.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n="pageYOffset"===t;w.fn[e]=function(r){return _(this,function(e,r,i){var o;if(v(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i},e,r,arguments.length)}}),w.each(["top","left"],function(e,t){w.cssHooks[t]=ze(h.pixelPosition,function(e,n){if(n)return n=Fe(e,t),Me.test(n)?w(e).position()[t]+"px":n})}),w.each({Height:"height",Width:"width"},function(e,t){w.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){w.fn[r]=function(i,o){var a=arguments.length&&(n||"boolean"!=typeof i),u=n||(!0===i||!0===o?"margin":"border");return _(this,function(t,n,i){var o;return v(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?w.css(t,n,u):w.style(t,n,i,u)},t,a?i:void 0,a)}})}),w.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){w.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),w.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),w.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),w.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),g(e))return r=o.call(arguments,2),i=function(){return e.apply(t||this,r.concat(o.call(arguments)))},i.guid=e.guid=e.guid||w.guid++,i},w.holdReady=function(e){e?w.readyWait++:w.ready(!0)},w.isArray=Array.isArray,w.parseJSON=JSON.parse,w.nodeName=D,w.isFunction=g,w.isWindow=v,w.camelCase=Q,w.type=b,w.now=Date.now,w.isNumeric=function(e){var t=w.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},"function"==typeof define&&define.amd&&define("jquery",[],function(){return w});var vt=e.jQuery,yt=e.$;return w.noConflict=function(t){return e.$===w&&(e.$=yt),t&&e.jQuery===w&&(e.jQuery=vt),w},t||(e.jQuery=e.$=w),w}); diff --git a/web/static/js/jsonTree.js b/web/static/js/jsonTree.js new file mode 100644 index 0000000..51bbf01 --- /dev/null +++ b/web/static/js/jsonTree.js @@ -0,0 +1,819 @@ +/** + * JSON Tree library (a part of jsonTreeViewer) + * http://github.com/summerstyle/jsonTreeViewer + * + * Copyright 2017 Vera Lobacheva (http://iamvera.com) + * Released under the MIT license (LICENSE.txt) + */ + +var jsonTree = (function() { + + /* ---------- Utilities ---------- */ + var utils = { + + /* + * Returns js-"class" of value + * + * @param val {any type} - value + * @returns {string} - for example, "[object Function]" + */ + getClass : function(val) { + return Object.prototype.toString.call(val); + }, + + /** + * Checks for a type of value (for valid JSON data types). + * In other cases - throws an exception + * + * @param val {any type} - the value for new node + * @returns {string} ("object" | "array" | "null" | "boolean" | "number" | "string") + */ + getType : function(val) { + if (val === null) { + return 'null'; + } + + switch (typeof val) { + case 'number': + return 'number'; + + case 'string': + return 'string'; + + case 'boolean': + return 'boolean'; + } + + switch(utils.getClass(val)) { + case '[object Array]': + return 'array'; + + case '[object Object]': + return 'object'; + } + + throw new Error('Bad type: ' + utils.getClass(val)); + }, + + /** + * Applies for each item of list some function + * and checks for last element of the list + * + * @param obj {Object | Array} - a list or a dict with child nodes + * @param func {Function} - the function for each item + */ + forEachNode : function(obj, func) { + var type = utils.getType(obj), + isLast; + + switch (type) { + case 'array': + isLast = obj.length - 1; + + obj.forEach(function(item, i) { + func(i, item, i === isLast); + }); + + break; + + case 'object': + var keys = Object.keys(obj).sort(); + + isLast = keys.length - 1; + + keys.forEach(function(item, i) { + func(item, obj[item], i === isLast); + }); + + break; + } + + }, + + /** + * Implements the kind of an inheritance by + * using parent prototype and + * creating intermediate constructor + * + * @param Child {Function} - a child constructor + * @param Parent {Function} - a parent constructor + */ + inherits : (function() { + var F = function() {}; + + return function(Child, Parent) { + F.prototype = Parent.prototype; + Child.prototype = new F(); + Child.prototype.constructor = Child; + }; + })(), + + /* + * Checks for a valid type of root node* + * + * @param {any type} jsonObj - a value for root node + * @returns {boolean} - true for an object or an array, false otherwise + */ + isValidRoot : function(jsonObj) { + switch (utils.getType(jsonObj)) { + case 'object': + case 'array': + return true; + default: + return false; + } + }, + + /** + * Extends some object + */ + extend : function(targetObj, sourceObj) { + for (var prop in sourceObj) { + if (sourceObj.hasOwnProperty(prop)) { + targetObj[prop] = sourceObj[prop]; + } + } + } + }; + + + /* ---------- Node constructors ---------- */ + + /** + * The factory for creating nodes of defined type. + * + * ~~~ Node ~~~ is a structure element of an onject or an array + * with own label (a key of an object or an index of an array) + * and value of any json data type. The root object or array + * is a node without label. + * {... + * [+] "label": value, + * ...} + * + * Markup: + *
  • + * + * + * + * "label" + * + * : + * + * <(div|span) class="jsontree_value jsontree_value_(object|array|boolean|null|number|string)"> + * ... + * + *
  • + * + * @param label {string} - key name + * @param val {Object | Array | string | number | boolean | null} - a value of node + * @param isLast {boolean} - true if node is last in list of siblings + * + * @return {Node} + */ + function Node(label, val, isLast) { + var nodeType = utils.getType(val); + + if (nodeType in Node.CONSTRUCTORS) { + return new Node.CONSTRUCTORS[nodeType](label, val, isLast); + } else { + throw new Error('Bad type: ' + utils.getClass(val)); + } + } + + Node.CONSTRUCTORS = { + 'boolean' : NodeBoolean, + 'number' : NodeNumber, + 'string' : NodeString, + 'null' : NodeNull, + 'object' : NodeObject, + 'array' : NodeArray + }; + + + /* + * The constructor for simple types (string, number, boolean, null) + * {... + * [+] "label": value, + * ...} + * value = string || number || boolean || null + * + * Markup: + *
  • + * + * "age" + * : + * + * 25 + * , + *
  • + * + * @abstract + * @param label {string} - key name + * @param val {string | number | boolean | null} - a value of simple types + * @param isLast {boolean} - true if node is last in list of parent childNodes + */ + function _NodeSimple(label, val, isLast) { + if (this.constructor === _NodeSimple) { + throw new Error('This is abstract class'); + } + + var self = this, + el = document.createElement('li'), + labelEl, + template = function(label, val) { + var str = '\ + \ + "' + + label + + '" : \ + \ + \ + ' + + val + + '' + + (!isLast ? ',' : '') + + ''; + + return str; + }; + + self.label = label; + self.isComplex = false; + + el.classList.add('jsontree_node'); + el.innerHTML = template(label, val); + + self.el = el; + + labelEl = el.querySelector('.jsontree_label'); + + labelEl.addEventListener('click', function(e) { + if (e.altKey) { + self.toggleMarked(); + return; + } + + if (e.shiftKey) { + document.getSelection().removeAllRanges(); + alert(self.getJSONPath()); + return; + } + }, false); + } + + _NodeSimple.prototype = { + constructor : _NodeSimple, + + /** + * Mark node + */ + mark : function() { + this.el.classList.add('jsontree_node_marked'); + }, + + /** + * Unmark node + */ + unmark : function() { + this.el.classList.remove('jsontree_node_marked'); + }, + + /** + * Mark or unmark node + */ + toggleMarked : function() { + this.el.classList.toggle('jsontree_node_marked'); + }, + + /** + * Expands parent node of this node + * + * @param isRecursive {boolean} - if true, expands all parent nodes + * (from node to root) + */ + expandParent : function(isRecursive) { + if (!this.parent) { + return; + } + + this.parent.expand(); + this.parent.expandParent(isRecursive); + }, + + /** + * Returns JSON-path of this + * + * @param isInDotNotation {boolean} - kind of notation for returned json-path + * (by default, in bracket notation) + * @returns {string} + */ + getJSONPath : function(isInDotNotation) { + if (this.isRoot) { + return "$"; + } + + var currentPath; + + if (this.parent.type === 'array') { + currentPath = "[" + this.label + "]"; + } else { + currentPath = isInDotNotation ? "." + this.label : "['" + this.label + "']"; + } + + return this.parent.getJSONPath(isInDotNotation) + currentPath; + } + }; + + + /* + * The constructor for boolean values + * {... + * [+] "label": boolean, + * ...} + * boolean = true || false + * + * @constructor + * @param label {string} - key name + * @param val {boolean} - value of boolean type, true or false + * @param isLast {boolean} - true if node is last in list of parent childNodes + */ + function NodeBoolean(label, val, isLast) { + this.type = "boolean"; + + _NodeSimple.call(this, label, val, isLast); + } + utils.inherits(NodeBoolean,_NodeSimple); + + + /* + * The constructor for number values + * {... + * [+] "label": number, + * ...} + * number = 123 + * + * @constructor + * @param label {string} - key name + * @param val {number} - value of number type, for example 123 + * @param isLast {boolean} - true if node is last in list of parent childNodes + */ + function NodeNumber(label, val, isLast) { + this.type = "number"; + + _NodeSimple.call(this, label, val, isLast); + } + utils.inherits(NodeNumber,_NodeSimple); + + + /* + * The constructor for string values + * {... + * [+] "label": string, + * ...} + * string = "abc" + * + * @constructor + * @param label {string} - key name + * @param val {string} - value of string type, for example "abc" + * @param isLast {boolean} - true if node is last in list of parent childNodes + */ + function NodeString(label, val, isLast) { + this.type = "string"; + + _NodeSimple.call(this, label, '"' + val + '"', isLast); + } + utils.inherits(NodeString,_NodeSimple); + + + /* + * The constructor for null values + * {... + * [+] "label": null, + * ...} + * + * @constructor + * @param label {string} - key name + * @param val {null} - value (only null) + * @param isLast {boolean} - true if node is last in list of parent childNodes + */ + function NodeNull(label, val, isLast) { + this.type = "null"; + + _NodeSimple.call(this, label, val, isLast); + } + utils.inherits(NodeNull,_NodeSimple); + + + /* + * The constructor for complex types (object, array) + * {... + * [+] "label": value, + * ...} + * value = object || array + * + * Markup: + *
  • + * + * + * + * "label" + * + * : + * + *
    + * { + *
      + * } + * , + *
    + *
  • + * + * @abstract + * @param label {string} - key name + * @param val {Object | Array} - a value of complex types, object or array + * @param isLast {boolean} - true if node is last in list of parent childNodes + */ + function _NodeComplex(label, val, isLast) { + if (this.constructor === _NodeComplex) { + throw new Error('This is abstract class'); + } + + var self = this, + el = document.createElement('li'), + template = function(label, sym) { + var comma = (!isLast) ? ',' : '', + str = '\ +
    \ +
    \ + ' + sym[0] + '\ + \ +
      \ + ' + sym[1] + '' + + '
      ' + comma + + '
      '; + + if (label !== null) { + str = '\ + \ + ' + + '' + + '"' + label + + '" : \ + ' + str; + } + + return str; + }, + childNodesUl, + labelEl, + moreContentEl, + childNodes = []; + + self.label = label; + self.isComplex = true; + + el.classList.add('jsontree_node'); + el.classList.add('jsontree_node_complex'); + el.innerHTML = template(label, self.sym); + + childNodesUl = el.querySelector('.jsontree_child-nodes'); + + if (label !== null) { + labelEl = el.querySelector('.jsontree_label'); + moreContentEl = el.querySelector('.jsontree_show-more'); + + labelEl.addEventListener('click', function(e) { + if (e.altKey) { + self.toggleMarked(); + return; + } + + if (e.shiftKey) { + document.getSelection().removeAllRanges(); + alert(self.getJSONPath()); + return; + } + + self.toggle(e.ctrlKey || e.metaKey); + }, false); + + moreContentEl.addEventListener('click', function(e) { + self.toggle(e.ctrlKey || e.metaKey); + }, false); + + self.isRoot = false; + } else { + self.isRoot = true; + self.parent = null; + + el.classList.add('jsontree_node_expanded'); + } + + self.el = el; + self.childNodes = childNodes; + self.childNodesUl = childNodesUl; + + utils.forEachNode(val, function(label, node, isLast) { + self.addChild(new Node(label, node, isLast)); + }); + + self.isEmpty = !Boolean(childNodes.length); + if (self.isEmpty) { + el.classList.add('jsontree_node_empty'); + } + } + + utils.inherits(_NodeComplex, _NodeSimple); + + utils.extend(_NodeComplex.prototype, { + constructor : _NodeComplex, + + /* + * Add child node to list of child nodes + * + * @param child {Node} - child node + */ + addChild : function(child) { + this.childNodes.push(child); + this.childNodesUl.appendChild(child.el); + child.parent = this; + }, + + /* + * Expands this list of node child nodes + * + * @param isRecursive {boolean} - if true, expands all child nodes + */ + expand : function(isRecursive){ + if (this.isEmpty) { + return; + } + + if (!this.isRoot) { + this.el.classList.add('jsontree_node_expanded'); + } + + if (isRecursive) { + this.childNodes.forEach(function(item, i) { + if (item.isComplex) { + item.expand(isRecursive); + } + }); + } + }, + + /* + * Collapses this list of node child nodes + * + * @param isRecursive {boolean} - if true, collapses all child nodes + */ + collapse : function(isRecursive) { + if (this.isEmpty) { + return; + } + + if (!this.isRoot) { + this.el.classList.remove('jsontree_node_expanded'); + } + + if (isRecursive) { + this.childNodes.forEach(function(item, i) { + if (item.isComplex) { + item.collapse(isRecursive); + } + }); + } + }, + + /* + * Expands collapsed or collapses expanded node + * + * @param {boolean} isRecursive - Expand all child nodes if this node is expanded + * and collapse it otherwise + */ + toggle : function(isRecursive) { + if (this.isEmpty) { + return; + } + + this.el.classList.toggle('jsontree_node_expanded'); + + if (isRecursive) { + var isExpanded = this.el.classList.contains('jsontree_node_expanded'); + + this.childNodes.forEach(function(item, i) { + if (item.isComplex) { + item[isExpanded ? 'expand' : 'collapse'](isRecursive); + } + }); + } + }, + + /** + * Find child nodes that match some conditions and handle it + * + * @param {Function} matcher + * @param {Function} handler + * @param {boolean} isRecursive + */ + findChildren : function(matcher, handler, isRecursive) { + if (this.isEmpty) { + return; + } + + this.childNodes.forEach(function(item, i) { + if (matcher(item)) { + handler(item); + } + + if (item.isComplex && isRecursive) { + item.findChildren(matcher, handler, isRecursive); + } + }); + } + }); + + + /* + * The constructor for object values + * {... + * [+] "label": object, + * ...} + * object = {"abc": "def"} + * + * @constructor + * @param label {string} - key name + * @param val {Object} - value of object type, {"abc": "def"} + * @param isLast {boolean} - true if node is last in list of siblings + */ + function NodeObject(label, val, isLast) { + this.sym = ['{', '}']; + this.type = "object"; + + _NodeComplex.call(this, label, val, isLast); + } + utils.inherits(NodeObject,_NodeComplex); + + + /* + * The constructor for array values + * {... + * [+] "label": array, + * ...} + * array = [1,2,3] + * + * @constructor + * @param label {string} - key name + * @param val {Array} - value of array type, [1,2,3] + * @param isLast {boolean} - true if node is last in list of siblings + */ + function NodeArray(label, val, isLast) { + this.sym = ['[', ']']; + this.type = "array"; + + _NodeComplex.call(this, label, val, isLast); + } + utils.inherits(NodeArray, _NodeComplex); + + + /* ---------- The tree constructor ---------- */ + + /* + * The constructor for json tree. + * It contains only one Node (Array or Object), without property name. + * CSS-styles of .tree define main tree styles like font-family, + * font-size and own margins. + * + * Markup: + *
        + * {Node} + *
      + * + * @constructor + * @param jsonObj {Object | Array} - data for tree + * @param domEl {DOMElement} - DOM-element, wrapper for tree + */ + function Tree(jsonObj, domEl) { + this.wrapper = document.createElement('ul'); + this.wrapper.className = 'jsontree_tree clearfix'; + + this.rootNode = null; + + this.sourceJSONObj = jsonObj; + + this.loadData(jsonObj); + this.appendTo(domEl); + } + + Tree.prototype = { + constructor : Tree, + + /** + * Fill new data in current json tree + * + * @param {Object | Array} jsonObj - json-data + */ + loadData : function(jsonObj) { + if (!utils.isValidRoot(jsonObj)) { + alert('The root should be an object or an array'); + return; + } + + this.sourceJSONObj = jsonObj; + + this.rootNode = new Node(null, jsonObj, 'last'); + this.wrapper.innerHTML = ''; + this.wrapper.appendChild(this.rootNode.el); + }, + + /** + * Appends tree to DOM-element (or move it to new place) + * + * @param {DOMElement} domEl + */ + appendTo : function(domEl) { + domEl.appendChild(this.wrapper); + }, + + /** + * Expands all tree nodes (objects or arrays) recursively + * + * @param {Function} filterFunc - 'true' if this node should be expanded + */ + expand : function(filterFunc) { + if (this.rootNode.isComplex) { + if (typeof filterFunc == 'function') { + this.rootNode.childNodes.forEach(function(item, i) { + if (item.isComplex && filterFunc(item)) { + item.expand(); + } + }); + } else { + this.rootNode.expand('recursive'); + } + } + }, + + /** + * Collapses all tree nodes (objects or arrays) recursively + */ + collapse : function() { + if (typeof this.rootNode.collapse === 'function') { + this.rootNode.collapse('recursive'); + } + }, + + /** + * Returns the source json-string (pretty-printed) + * + * @param {boolean} isPrettyPrinted - 'true' for pretty-printed string + * @returns {string} - for exemple, '{"a":2,"b":3}' + */ + toSourceJSON : function(isPrettyPrinted) { + if (!isPrettyPrinted) { + return JSON.stringify(this.sourceJSONObj); + } + + var DELIMETER = "[%^$#$%^%]", + jsonStr = JSON.stringify(this.sourceJSONObj, null, DELIMETER); + + jsonStr = jsonStr.split("\n").join("
      "); + jsonStr = jsonStr.split(DELIMETER).join("    "); + + return jsonStr; + }, + + /** + * Find all nodes that match some conditions and handle it + */ + findAndHandle : function(matcher, handler) { + this.rootNode.findChildren(matcher, handler, 'isRecursive'); + }, + + /** + * Unmark all nodes + */ + unmarkAll : function() { + this.rootNode.findChildren(function(node) { + return true; + }, function(node) { + node.unmark(); + }, 'isRecursive'); + } + }; + + + /* ---------- Public methods ---------- */ + return { + /** + * Creates new tree by data and appends it to the DOM-element + * + * @param jsonObj {Object | Array} - json-data + * @param domEl {DOMElement} - the wrapper element + * @returns {Tree} + */ + create : function(jsonObj, domEl) { + return new Tree(jsonObj, domEl); + } + }; +})(); diff --git a/web/static/js/popper-1.14.7.js b/web/static/js/popper-1.14.7.js new file mode 100644 index 0000000..94a5c26 --- /dev/null +++ b/web/static/js/popper-1.14.7.js @@ -0,0 +1,5 @@ +/* + Copyright (C) Federico Zivolo 2019 + Distributed under the MIT License (license terms are at http://opensource.org/licenses/MIT). + */(function(e,t){'object'==typeof exports&&'undefined'!=typeof module?module.exports=t():'function'==typeof define&&define.amd?define(t):e.Popper=t()})(this,function(){'use strict';function e(e){return e&&'[object Function]'==={}.toString.call(e)}function t(e,t){if(1!==e.nodeType)return[];var o=e.ownerDocument.defaultView,n=o.getComputedStyle(e,null);return t?n[t]:n}function o(e){return'HTML'===e.nodeName?e:e.parentNode||e.host}function n(e){if(!e)return document.body;switch(e.nodeName){case'HTML':case'BODY':return e.ownerDocument.body;case'#document':return e.body;}var i=t(e),r=i.overflow,p=i.overflowX,s=i.overflowY;return /(auto|scroll|overlay)/.test(r+s+p)?e:n(o(e))}function r(e){return 11===e?pe:10===e?se:pe||se}function p(e){if(!e)return document.documentElement;for(var o=r(10)?document.body:null,n=e.offsetParent||null;n===o&&e.nextElementSibling;)n=(e=e.nextElementSibling).offsetParent;var i=n&&n.nodeName;return i&&'BODY'!==i&&'HTML'!==i?-1!==['TH','TD','TABLE'].indexOf(n.nodeName)&&'static'===t(n,'position')?p(n):n:e?e.ownerDocument.documentElement:document.documentElement}function s(e){var t=e.nodeName;return'BODY'!==t&&('HTML'===t||p(e.firstElementChild)===e)}function d(e){return null===e.parentNode?e:d(e.parentNode)}function a(e,t){if(!e||!e.nodeType||!t||!t.nodeType)return document.documentElement;var o=e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING,n=o?e:t,i=o?t:e,r=document.createRange();r.setStart(n,0),r.setEnd(i,0);var l=r.commonAncestorContainer;if(e!==l&&t!==l||n.contains(i))return s(l)?l:p(l);var f=d(e);return f.host?a(f.host,t):a(e,d(t).host)}function l(e){var t=1=o.clientWidth&&n>=o.clientHeight}),l=0a[e]&&!t.escapeWithReference&&(n=Q(f[o],a[e]-('right'===e?f.width:f.height))),le({},o,n)}};return l.forEach(function(e){var t=-1===['left','top'].indexOf(e)?'secondary':'primary';f=fe({},f,m[t](e))}),e.offsets.popper=f,e},priority:['left','right','top','bottom'],padding:5,boundariesElement:'scrollParent'},keepTogether:{order:400,enabled:!0,fn:function(e){var t=e.offsets,o=t.popper,n=t.reference,i=e.placement.split('-')[0],r=Z,p=-1!==['top','bottom'].indexOf(i),s=p?'right':'bottom',d=p?'left':'top',a=p?'width':'height';return o[s]r(n[s])&&(e.offsets.popper[d]=r(n[s])),e}},arrow:{order:500,enabled:!0,fn:function(e,o){var n;if(!K(e.instance.modifiers,'arrow','keepTogether'))return e;var i=o.element;if('string'==typeof i){if(i=e.instance.popper.querySelector(i),!i)return e;}else if(!e.instance.popper.contains(i))return console.warn('WARNING: `arrow.element` must be child of its popper element!'),e;var r=e.placement.split('-')[0],p=e.offsets,s=p.popper,d=p.reference,a=-1!==['left','right'].indexOf(r),l=a?'height':'width',f=a?'Top':'Left',m=f.toLowerCase(),h=a?'left':'top',c=a?'bottom':'right',u=S(i)[l];d[c]-us[c]&&(e.offsets.popper[m]+=d[m]+u-s[c]),e.offsets.popper=g(e.offsets.popper);var b=d[m]+d[l]/2-u/2,w=t(e.instance.popper),y=parseFloat(w['margin'+f],10),E=parseFloat(w['border'+f+'Width'],10),v=b-e.offsets.popper[m]-y-E;return v=ee(Q(s[l]-u,v),0),e.arrowElement=i,e.offsets.arrow=(n={},le(n,m,$(v)),le(n,h,''),n),e},element:'[x-arrow]'},flip:{order:600,enabled:!0,fn:function(e,t){if(W(e.instance.modifiers,'inner'))return e;if(e.flipped&&e.placement===e.originalPlacement)return e;var o=v(e.instance.popper,e.instance.reference,t.padding,t.boundariesElement,e.positionFixed),n=e.placement.split('-')[0],i=T(n),r=e.placement.split('-')[1]||'',p=[];switch(t.behavior){case ge.FLIP:p=[n,i];break;case ge.CLOCKWISE:p=G(n);break;case ge.COUNTERCLOCKWISE:p=G(n,!0);break;default:p=t.behavior;}return p.forEach(function(s,d){if(n!==s||p.length===d+1)return e;n=e.placement.split('-')[0],i=T(n);var a=e.offsets.popper,l=e.offsets.reference,f=Z,m='left'===n&&f(a.right)>f(l.left)||'right'===n&&f(a.left)f(l.top)||'bottom'===n&&f(a.top)f(o.right),g=f(a.top)f(o.bottom),b='left'===n&&h||'right'===n&&c||'top'===n&&g||'bottom'===n&&u,w=-1!==['top','bottom'].indexOf(n),y=!!t.flipVariations&&(w&&'start'===r&&h||w&&'end'===r&&c||!w&&'start'===r&&g||!w&&'end'===r&&u);(m||b||y)&&(e.flipped=!0,(m||b)&&(n=p[d+1]),y&&(r=z(r)),e.placement=n+(r?'-'+r:''),e.offsets.popper=fe({},e.offsets.popper,D(e.instance.popper,e.offsets.reference,e.placement)),e=P(e.instance.modifiers,e,'flip'))}),e},behavior:'flip',padding:5,boundariesElement:'viewport'},inner:{order:700,enabled:!1,fn:function(e){var t=e.placement,o=t.split('-')[0],n=e.offsets,i=n.popper,r=n.reference,p=-1!==['left','right'].indexOf(o),s=-1===['top','left'].indexOf(o);return i[p?'left':'top']=r[o]-(s?i[p?'width':'height']:0),e.placement=T(t),e.offsets.popper=g(i),e}},hide:{order:800,enabled:!0,fn:function(e){if(!K(e.instance.modifiers,'hide','preventOverflow'))return e;var t=e.offsets.reference,o=C(e.instance.modifiers,function(e){return'preventOverflow'===e.name}).boundaries;if(t.bottomo.right||t.top>o.bottom||t.rightwindow.devicePixelRatio||!me),c='bottom'===o?'top':'bottom',g='right'===n?'left':'right',b=H('transform');if(d='bottom'==c?'HTML'===l.nodeName?-l.clientHeight+h.bottom:-f.height+h.bottom:h.top,s='right'==g?'HTML'===l.nodeName?-l.clientWidth+h.right:-f.width+h.right:h.left,a&&b)m[b]='translate3d('+s+'px, '+d+'px, 0)',m[c]=0,m[g]=0,m.willChange='transform';else{var w='bottom'==c?-1:1,y='right'==g?-1:1;m[c]=d*w,m[g]=s*y,m.willChange=c+', '+g}var E={"x-placement":e.placement};return e.attributes=fe({},E,e.attributes),e.styles=fe({},m,e.styles),e.arrowStyles=fe({},e.offsets.arrow,e.arrowStyles),e},gpuAcceleration:!0,x:'bottom',y:'right'},applyStyle:{order:900,enabled:!0,fn:function(e){return j(e.instance.popper,e.styles),V(e.instance.popper,e.attributes),e.arrowElement&&Object.keys(e.arrowStyles).length&&j(e.arrowElement,e.arrowStyles),e},onLoad:function(e,t,o,n,i){var r=L(i,t,e,o.positionFixed),p=O(o.placement,r,t,e,o.modifiers.flip.boundariesElement,o.modifiers.flip.padding);return t.setAttribute('x-placement',p),j(t,{position:o.positionFixed?'fixed':'absolute'}),o},gpuAcceleration:void 0}}},ue}); +//# sourceMappingURL=popper.min.js.map diff --git a/web/static/js/viz.js b/web/static/js/viz.js new file mode 100644 index 0000000..0aa9f5f --- /dev/null +++ b/web/static/js/viz.js @@ -0,0 +1,9 @@ +function Ub(nr){throw nr}var cc=void 0,wc=!0,xc=null,ee=!1;function bk(){return(function(){})} + + + +("undefined"!==typeof exports&&exports!==xc?exports:this).Viz=(function(nr,rQa){function ck(a,b){var i=16;if(b>1]=r;break;case"i32":a[x>>2]=r;break;case"i64":ji=[r>>>0,Math.min(Math.floor(r/4294967296),4294967295)];a[x>>2]=ji[0];a[x+4>>2]=ji[1];break;case"float":ib[x>>2]=r;break;case"double":f[0]=r;a[x>>2]=b[0];a[x+4>>2]=b[1];break;default:Yg("invalid type for setValue: "+i)}}function ki(x,r){r=r||"i8";"*"===r.charAt(r.length-1)&&(r="i32");switch(r){case"i1":return m[x];case"i8":return m[x];case"i16":return D[x>>1];case"i32":return a[x>>2];case"i64":return a[x>>2];case"float":return ib[x>>2];case"double":return b[0]=a[x>>2],b[1]=a[x+4>>2],f[0];default:Yg("invalid type for setValue: "+r)}return xc}function d(a,b,i,g){var q,Xa;"number"===typeof a?(q=wc,Xa=a):(q=ee,Xa=a.length);var d="string"===typeof b?b:xc,i=i==cC?g:[Gb,Qa.fa,Qa.Ba][i===cc?c:i](Math.max(Xa,d?1:b.length));if(q){return li(i,Xa),i}for(q=0;q=b?2*Math.abs(1<=a){return a}var i=32>=b?Math.abs(1<=i&&(32>=b||a>i)){a=-2*i+a}return a}function pr(a){Zg++;K.monitorRunDependencies&&K.monitorRunDependencies(Zg);a?(Ae(!ek[a]),ek[a]=1,fk===xc&&"undefined"!==typeof setInterval&&(fk=setInterval((function(){var a=ee,b;for(b in ek){a||(a=wc,K.n("still waiting on run dependencies:")),K.n("dependency: "+b)}a&&K.n("(end of list)")}),6e3))):K.n("warning: run dependency added without ID")}function rn(a){Zg--;K.monitorRunDependencies&&K.monitorRunDependencies(Zg);a?(Ae(ek[a]),delete ek[a]):K.n("warning: run dependency removed without ID");0==Zg&&(fk!==xc&&(clearInterval(fk),fk=xc),eC||qr())}function td(a,b,i){for(var g=0;gXa?1:-1}}return 0}function ka(a,b){return td(a,b,gk)}function Ve(a,b,i){for(var g=0;gXa?1:-1}}return 0}function tf(b,r,i){if(20<=i&&r%2==b%2){if(r%4==b%4){for(i=r+i;r%4;){m[b++]=m[r++]}for(var r=r>>2,b=b>>2,g=i>>2;r>=1;b>>=1;for(g=i>>1;r>2]=b}function fC(a,b,i){var g=Q.a[a];if(g){if(g.q){if(0>i){return Ea(va.i),-1}if(g.object.d){if(g.object.l){for(var q=0;qi||0>q){Ea(va.i),b=-1}else{for(var d=a.object.b;d.length>2],b[1]=a[r+(q+4)>>2],f[0]):"i64"==x?i=[a[r+q>>2],a[r+(q+4)>>2]]:(x="i32",i=a[r+q>>2]);q+=Qa.W(x);return i}for(var g=x,q=0,Xa=[],d,c;;){var n=g;d=m[g];if(0===d){break}c=m[g+1];if(37==d){var z=ee,h=ee,e=ee,j=ee;a:for(;;){switch(c){case 43:z=wc;break;case 45:h=wc;break;case 35:e=wc;break;case 48:if(j){break a}else{j=wc;break};default:break a}g++;c=m[g+1]}var t=0;if(42==c){t=i("i32"),g++,c=m[g+1]}else{for(;48<=c&&57>=c;){t=10*t+(c-48),g++,c=m[g+1]}}var u=ee;if(46==c){var w=0,u=wc;g++;c=m[g+1];if(42==c){w=i("i32"),g++}else{for(;;){c=m[g+1];if(48>c||57=A&&(d=(n?dC:or)(d&Math.pow(256,A)-1,8*A));var P=Math.abs(d),n="";if(100==c||105==c){C=8==A&&hk?hk.stringify(B[0],B[1],xc):dC(d,8*A).toString(10)}else{if(117==c){C=8==A&&hk?hk.stringify(B[0],B[1],wc):or(d,8*A).toString(10),d=Math.abs(d)}else{if(111==c){C=(e?"0":"")+P.toString(8)}else{if(120==c||88==c){n=e?"0x":"";if(8==A&&hk){C=(B[1]>>>0).toString(16)+(B[0]>>>0).toString(16)}else{if(0>d){d=-d;C=(P-1).toString(16);B=[];for(e=0;ed?"-"+n:"+"+n);n.length+C.lengthA&&-4<=A?(c=(103==c?"f":"F").charCodeAt(0),w-=A+1):(c=(103==c?"e":"E").charCodeAt(0),w--),A=Math.min(w,20)}if(101==c||69==c){C=d.toExponential(A),/[eE][-+]\d$/.test(C)&&(C=C.slice(0,-1)+"0"+C.slice(-1))}else{if(102==c||70==c){C=d.toFixed(A)}}n=C.split("e");if(u&&!e){for(;1A++;){n[0]+="0"}}C=n[0]+(1d?"-":"")+"inf",j=ee}}for(;C.lengthc&&(C=C.toUpperCase());C.split("").forEach((function(a){Xa.push(a.charCodeAt(0))}))}else{if(115==c){z=i("i8*")||tQa;j=Ba(z);u&&(j=Math.min(j,w));if(!h){for(;j>2]=Xa.length}else{if(37==c){Xa.push(d)}else{for(e=n;ei&&(i+=256);for(var q=b>>2,c=g>>2,d=i|i<<8|i<<16|i<<24;q>2],z=z+Qa.W("void*");a[e>>2]=q;k+=2}else{for(;;){h=r();if(0==h){return n}if(!(h in He.whiteSpace)){break}}i();if("%"===x[k]){k++;for(var j=k;48<=x[k].charCodeAt(0)&&57>=x[k].charCodeAt(0);){k++}var t;k!=j&&(t=parseInt(x.slice(j,k),10));var u=j=ee,w=ee;"l"==x[k]?(j=wc,k++,"l"==x[k]&&(w=wc,k++)):"h"==x[k]&&(u=wc,k++);var A=x[k];k++;var B=0,e=[];if("f"==A){B=0;for(h=r();0=h||C&&45==h)||"x"===A&&(48<=h&&57>=h||97<=h&&102>=h||65<=h&&70>=h))&&(k>=x.length||h!==x[k].charCodeAt(0))){e.push(String.fromCharCode(h)),h=r(),B++,C=ee}else{break}}i()}if(0===e.length){return 0}h=e.join("");e=a[g+z>>2];z+=Qa.W("void*");switch(A){case"d":;case"u":;case"i":u?D[e>>1]=parseInt(h,10):w?(ji=[parseInt(h,10)>>>0,Math.min(Math.floor(parseInt(h,10)/4294967296),4294967295)],a[e>>2]=ji[0],a[e+4>>2]=ji[1]):a[e>>2]=parseInt(h,10);break;case"x":a[e>>2]=parseInt(h,16);break;case"f":j?(f[0]=parseFloat(h),a[e>>2]=b[0],a[e+4>>2]=b[1]):ib[e>>2]=parseFloat(h);break;case"s":j=Nd(h);for(u=0;u=h){break a}h=r()}i(h)}else{if(h=r(),x[k].charCodeAt(0)!==h){i(h);break a}}k++}}}return n}function Cd(a,b,i){var g=0;return He(b,(function(){return m[a+g++]}),(function(){g--}),i)}function he(a,b){rr||(rr=Gb(4));var i;a:{i=a;var g=rr,q,c,d,f;if(0==i&&0==(i=ki(g,"i8*"))){i=0}else{b:for(;;){c=ki(i++,"i8");for(q=b;0!=(d=ki(q++,"i8"));){if(c==d){continue b}}break}if(0==c){dk(g,0,"i8*"),i=0}else{for(f=i-1;;){c=ki(i++,"i8");q=b;do{if((d=ki(q++,"i8"))==c){0==c?i=0:dk(i-1,0,"i8");dk(g,i,"i8*");i=f;break a}}while(0!=d)}Yg("strtok_r error!");i=cc}}}return i}function ah(a){return a in{32:0,9:0,10:0,11:0,12:0,13:0}}function Rf(a,b){var i=0;do{m[a+i]=m[b+i],i++}while(0!=m[b+(i-1)])}function uf(a,b){var i=Ba(a),g=0;do{m[a+i+g]=m[b+g],g++}while(0!=m[b+(g-1)])}function Jc(a,b){a--;do{a++;var i=m[a];if(i==b){return a}}while(i);return 0}function wg(b,r){for(var i=b;ah(m[b]);){b++}var g=1;45==m[b]?(g=-1,b++):43==m[b]&&b++;for(var q,c=0,d=ee;;){q=m[b];if(!(48<=q&&57>=q)){break}d=wc;c=10*c+q-48;b++}var f=ee;if(46==m[b]){b++;for(var n=.1;;){q=m[b];if(!(48<=q&&57>=q)){break}f=wc;c+=n*(q-48);n/=10;b++}}if(!d&&!f){return r&&(a[r>>2]=i),0}q=m[b];if(101==q||69==q){b++;i=0;d=ee;q=m[b];45==q?(d=wc,b++):43==q&&b++;for(q=m[b];48<=q&&57>=q;){i=10*i+q-48,b++,q=m[b]}d&&(i=-i);c*=Math.pow(10,i)}r&&(a[r>>2]=b);return c*g}function bh(a){for(;ah(m[a]);){a++}var b=1;45==m[a]?(b=-1,a++):43==m[a]&&a++;var i=10;!i&&48==m[a]&&(120==m[a+1]||88==m[a+1]?(i=16,a+=2):(i=8,a++));i||(i=10);for(var g,q=0;0!=(g=m[a])&&!(g=parseInt(String.fromCharCode(g),i),isNaN(g));){q=q*i+g,a++}q*=b;if(2147483647q){q=2147483647i||0>g){return Ea(va.i),-1}for(a=0;q.g.length&&0i){return Ea(va.i),-1}if(g.object.d){if(g.object.input){for(a=0;g.g.length&&0=a);return 0}function vQa(a){a=Oe(a);a=Q.o(a);return a===xc?-1:!a.v?(Ea(va.h),-1):0}function jk(a,b){for(var i=ee,g,q=0;63>q;q++){g=i?0:m[b+q],m[a+q]=g,i=i||0==m[b+q]}}function tn(a,b,i,g,q){for(var q=J[q],c=0,d,f,n;c>>1,n=b+d*g,f=q(a,n),0>f){i=d}else{if(0=a?a-65+97:a}function S(){Ub("abort() at "+Error().stack)}function kk(a,b){var i=or(a&255);m[kk.c]=i;return-1==fC(b,kk.c,1)?(Q.a[b]&&(Q.a[b].error=wc),-1):i}function pi(a,b){return Math.sqrt(a*a+b*b)}function wQa(b,r,i){var g=a[i>>2],q=r&3,i=0!=q,q=1!=q,c=Boolean(r&512),d=Boolean(r&2048),f=Boolean(r&1024),n=Boolean(r&8),b=Q.D(Oe(b));if(!b.L){return Ea(b.error),-1}if(r=b.object||xc){if(c&&d){return Ea(va.ha),-1}if((i||c||f)&&r.e){return Ea(va.N),-1}if(q&&!r.v||i&&!r.write){return Ea(va.h),-1}if(f&&!r.d){r.b=[]}else{if(!Q.ua(r)){return Ea(va.r),-1}}b=b.path}else{if(!c){return Ea(va.O),-1}if(!b.u.write){return Ea(va.h),-1}r=Q.S(b.u,b.name,[],g&256,g&128);b=b.ba+"/"+b.name}g=Q.a.length;if(r.e){i=0;jC&&(i=Gb(jC.A));var q=[],h;for(h in r.b){q.push(h)}Q.a[g]={path:b,object:r,position:-2,p:wc,q:ee,K:ee,error:ee,f:ee,g:[],b:q,qa:i}}else{Q.a[g]={path:b,object:r,position:0,p:q,q:i,K:n,error:ee,f:ee,g:[]}}return g}function qi(a,b){var i,b=Oe(b);if("r"==b[0]){i=-1!=b.indexOf("+")?2:0}else{if("w"==b[0]){i=-1!=b.indexOf("+")?2:1,i|=1536}else{if("a"==b[0]){i=-1!=b.indexOf("+")?2:1,i|=512,i|=8}else{return Ea(va.i),0}}}i=wQa(a,i,d([511,0,0,0],"i32",$g));return-1==i?0:i}function ri(a){Q.a[a]||Ea(va.j);Q.a[a]?(Q.a[a].qa&&G(Q.a[a].qa),Q.a[a]=xc):Ea(va.j)}function un(a,b){var i=0,g;do{i||(g=a,i=b);var q=m[a++],c=m[i++];if(0==c){return g}c!=q&&(a=g+1,i=0)}while(q);return 0}function kC(b,r){if(Q.a[b]){var i=Nd(Q.a[b].path);i=d(i,"i8",$g);i=Q.o(Oe(i),cc);if(i!==xc&&Q.ua(i)){var g=xQa;a[r+g.yb>>2]=1;a[r+g.Bb>>2]=0;a[r+g.ub>>2]=0;a[r+g.qb>>2]=4096;a[r+g.vb>>2]=i.$;var q=Math.floor(i.timestamp/1e3);if(g.ea===cc){g.ea=g.pb.Da;g.za=g.xb.Da;g.ya=g.sb.Da;var c=1e3*(i.timestamp%1e3);a[r+g.pb.Ca>>2]=c;a[r+g.xb.Ca>>2]=c;a[r+g.sb.Ca>>2]=c}a[r+g.ea>>2]=q;a[r+g.za>>2]=q;a[r+g.ya>>2]=q;var l=0,f=q=0,n=c=0;i.d?(c=n=i.$,q=f=0,l=8192):(c=1,n=0,i.e?(q=4096,f=1,l=16384):(l=i.b||i.link,q=l.length,f=Math.ceil(l.length/4096),l=i.link===cc?32768:40960));a[r+g.tb>>2]=c;a[r+g.zb>>2]=n;a[r+g.Ab>>2]=q;a[r+g.rb>>2]=f;i.v&&(l|=365);i.write&&(l|=146);a[r+g.wb>>2]=l}}else{Ea(va.j)}}function xg(a,b,i){if(Q.a[a]&&!Q.a[a].object.d){var g=Q.a[a];1===i?b+=g.position:2===i&&(b+=g.object.b.length);0>b?(Ea(va.i),i=-1):(g.g=[],i=g.position=b)}else{Ea(va.j),i=-1}-1!=i&&(Q.a[a].f=ee)}function lC(a,b,i,g){i*=b;if(0==i){return 0}a=sr(g,a,i);g=Q.a[g];if(-1==a){return g&&(g.error=wc),0}a>2]=r,ur=d([i],"i8**",c)):(i=a[ur>>2],r=a[i>>2]);var g=[],q=0,Xa;for(Xa in b){if("string"===typeof b[Xa]){var l=Xa+"="+b[Xa];g.push(l);q+=l.length}}1024>2]=r;r+=l.length+1}a[i+4*g.length>>2]=0}function lk(a){if(0===a){return 0}a=Oe(a);if(!Ee.hasOwnProperty(a)){return 0}lk.c&&G(lk.c);lk.c=d(Nd(Ee[a]),"i8",sn);return lk.c}function mk(a){0!==a&&li(a,yQa.A)}function si(a){si.buffer||(si.buffer=Gb(256));var b=si.buffer;if(a in vr){if(255=a||97<=a&&122>=a||65<=a&&90>=a}function ti(a){return 97<=a&&122>=a||65<=a&&90>=a}function zQa(a){if(Q.a[a]){return a=Q.a[a],a.object.d?(Ea(va.Fa),-1):a.position}Ea(va.j);return-1}function vn(a,b,i){var g=Q.o(b||"/tmp");if(!g||!g.e){if(b="/tmp",g=Q.o(b),!g||!g.e){return 0}}i=i||"file";do{i+=String.fromCharCode(65+Math.floor(25*Math.random()))}while(i in g.b);b=b+"/"+i;vn.buffer||(vn.buffer=Gb(256));a||(a=vn.buffer);for(g=0;g>12<<12,b.Oa=wc,Ie.Eb=We);b=We;0!=a&&Qa.Ba(a);return b}function pC(){return a[pC.La>>2]}function qC(b){var r;r=(b+8|0)>>2;var b=a[r]>>2,i=a[b];if(0!=(i&4096|0)){var g=a[b+1];return g}var q=0==(i&3|0);a:do{if(q){if(0!=(i&112|0)){g=a[b+2]}else{var c=a[b+1];if(0==(c|0)){g=0}else{var d=c+4|0,f=a[d>>2],n=0==(f|0);b:do{if(n){var h=c,e=a[c>>2]}else{for(var s=c,j=d,t=f;;){var m=t|0;a[j>>2]=a[m>>2];a[m>>2]=s;j=t+4|0;m=a[j>>2];if(0==(m|0)){h=t;e=s;break b}else{s=t,t=m}}}}while(0);if(0==(e|0)){g=h}else{c=h|0;for(f=e;;){d=a[f+4>>2];if(0==(d|0)){c=f}else{for(;!(n=d|0,a[f+4>>2]=a[n>>2],a[n>>2]=f,n=a[d+4>>2],0==(n|0));){f=d,d=n}c=a[c>>2]=d}c|=0;d=a[c>>2];if(0==(d|0)){g=h;break a}else{f=d}}}}}}else{if(d=a[b+2],f=a[b+3],c=(f<<2)+d|0,0<(f|0)){for(n=f=0;;){s=a[d>>2];if(0!=(s|0)){0==(f|0)?f=n=s:a[f>>2]=s;for(;!(s=a[f>>2],0==(s|0));){f=s}a[d>>2]=f}d=d+4|0;if(d>>>0>=c>>>0){g=n;break a}}}else{g=0}}}while(0);a[a[r]+4>>2]=g;h=a[r]|0;a[h>>2]|=4096;return g}function rC(b,r){var i=h;if(0==(a[qa+12>>2]|0)){a[qa>>2]=288;a[qa+4>>2]=304;a[qa+8>>2]=184;m[qa+31|0]=1;var g;g=xn(sC|0,0);a[qa+12>>2]=g;g=(g+40|0)>>2;0!=(a[ui(a[a[g]+4>>2]|0,wr|0,Y|0)+8>>2]|0)&&S();var q=ui(a[a[g]+4>>2]|0,vi|0,Y|0);1!=(a[q+8>>2]|0)&&S();m[q+12|0]=0;g=ui(a[a[g]+4>>2]|0,wi|0,Y|0);2==(a[g+8>>2]|0)?m[g+12|0]=0:S()}else{288==(a[qa>>2]|0)&304==(a[qa+4>>2]|0)&184==(a[qa+8>>2]|0)||la(0,tC|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j))}h=i;xi(0,dh|0,yg|0);i=fa(340);g=i>>2;0!=(i|0)&&(a[g]=nk|0,a[g+4]=94,a[g+8]=0,a[g+9]=1);g=a[i+32>>2];if(0!=(g|0)&&(q=a[g>>2],0!=(q|0))){for(;!(103==m[q]<<24>>24&&0!=(un(q,uC|0)|0)&&xr(i,a[g+4>>2]),g=g+8|0,q=a[g>>2],0==(q|0));){}}m[i+44|0]=0;g=eh(i,2,yr|0);0!=(g|0)&&(a[i+132>>2]=a[a[g+16>>2]+12>>2]);xr(i,yn);xr(i,zn);g=a[qa+32>>2];a[qa+32>>2]=22;vC(b);zr();a[qa+32>>2]=g;g=a[qa+16>>2];An(i,g,ok|0);var c=a[zg>>2],d,q=a[g+32>>2];wC(i,r);var f=a[i+124>>2];d=f>>2;a[d+14]=Bn(f,a[d+13]);0==(a[q+44>>2]|0)&&0==(a[d+37]&67108864|0)?Lc(Ar|0,20,1,a[oa>>2]):(a[d+9]=c,0==(c|0)&&(c=f+148|0,a[c>>2]|=134217728),Br(i,q),Cr(f),Dr(i));q=g+176|0;f=a[q>>2];0!=(f|0)&&(J[f](g),a[q>>2]=0);q=g+44|0;0!=(a[q>>2]|0)&&(xC(g),a[q>>2]=0,a[a[g+32>>2]+44>>2]=0);Sf(g);g=a[yi>>2];0!=(g|0)&&(Kc(g),a[yi>>2]=0);g=a[i+52>>2];q=0==(g|0);b:do{if(!q){for(f=g;;){if(c=a[f+4>>2],G(f),0==(c|0)){break b}else{f=c}}}}while(0);q=a[i+100>>2];f=0==(q|0);b:do{if(!f){c=q;for(g=c>>2;;){if(d=a[g],G(a[g+1]),G(a[g+2]),G(c),0==(d|0)){break b}else{c=d,g=c>>2}}}}while(0);Dr(i);g=a[i+40>>2];0!=(g|0)&&G(g);g=a[i+48>>2];0!=(g|0)&&G(g);G(i)}function Kc(b){var r=b>>2;if(0==(b|0)||0<(a[r+6]|0)){return-1}var i=a[r+1],g=i+32|0,q=a[g>>2];if(0==(q|0)){q=0}else{if(q=J[q](b,2,0,i),0>(q|0)){return-1}}0!=(a[r+7]|0)&&yC(b,0);if(q=0==(q|0)){J[a[a[r+4]>>2]](b,0,64);if(0<(rc(b)|0)){return-1}var c=b+8|0,d=a[c>>2],f=b+12|0;0<(a[d+12>>2]|0)?(J[a[f>>2]](b,a[d+8>>2],0,i),c=a[c>>2]):c=d;J[a[f>>2]](b,c,0,i)}f=a[r+5];if(0==(f|0)){G(b)}else{if(q&1==(f|0)){J[a[r+3]](b,b,0,i)}}r=a[g>>2];if(0==(r|0)){return 0}J[r](b,6,0,i);return 0}function pk(b,r,i){var g,q;q=(b+4|0)>>2;var c=a[q];if(0==(c|0)){a[q]=r;c=a[r+28>>2];a[b+12>>2]=0==(c|0)?144:c;var d;return r}if(0==(r|0)){return c}var f=a[a[b+16>>2]>>2];g=(b+8|0)>>2;0!=(a[a[g]>>2]&4096|0)&&Ag(b,0);var n=a[c+32>>2];if(0!=(n|0)&&0>(J[n](b,3,r,c)|0)){return 0}a[q]=r;q=a[r+28>>2];a[b+12>>2]=0==(q|0)?144:q;q=a[a[g]>>2];if(0!=(q&112|0)){return c}if(0==(q&2|0)){if(0==(q&3|0)){if(0!=(i&1|0)){return c}}else{if(3==(i&3|0)){return c}}}else{if(0!=(i&2|0)){return c}}q=qC(b);n=a[g]|0;a[n>>2]&=-4097;a[a[g]+4>>2]=0;a[a[g]+16>>2]=0;g=a[g]>>2;n=0==(a[g]&3|0);a:do{if(!n){var h=a[g+2],e=a[g+3],s=(e<<2)+h|0;if(0<(e|0)){for(;;){if(e=h+4|0,a[h>>2]=0,e>>>0>>0){h=e}else{break a}}}}}while(0);if(0==(q|0)){return c}g=r+8|0;n=r+4|0;s=r|0;h=r+24|0;if(0==(i&2|0)){i=q>>2}else{for(r=q;;){if(i=a[r>>2],J[f](b,r,32),0==(i|0)){d=c;break}else{r=i}}return d}for(;;){var e=a[i],j=a[g>>2],t=a[n>>2],j=(0>(j|0)?a[i+2]:q+ -j|0)+a[s>>2]|0,j=0>(t|0)?a[j>>2]:j,m=a[h>>2],t=0==(m|0)?Cn(0,j,t):J[m](b,j,r);a[i+1]=t;J[f](b,q,32);if(0==(e|0)){d=c;break}else{q=e,i=q>>2}}return d}function zC(b,r,i){var g,q,c,d,f,n,h,e,s,j,t,m,w,A=b>>2,B;w=(b+8|0)>>2;0!=(a[a[w]>>2]&4096|0)&&Ag(b,0);var C=a[A+1];m=C>>2;var P=a[m],T=a[m+1];t=(C+8|0)>>2;var gb=a[t],$e=a[m+5];j=(b+20|0)>>2;a[j]&=-32769;var M=0==(r|0);a:do{if(M){if(0==(i&24|0)){var X=a[w];s=X>>2;if(1>(a[s+4]|0)){var O=0;return O}if(0==(i&448|0)){return O=0}var y=a[s+2],Da=a[s+3],ia=(Da<<2)+y|0,D=0<(Da|0);if(0==(i&64|0)){b:do{if(D){var F=0==(i&256|0);c:do{if(F){for(var Tf=y;;){var sc=Tf+4|0,E=a[Tf>>2],G=0==(E|0);if(sc>>>0>>0&G){Tf=sc}else{var H=E,hc=G;break c}}}else{for(var ca=ia;;){var I=ca-4|0,K=a[I>>2],zb=0==(K|0);if(y>>>0>>0&zb){ca=I}else{H=K;hc=zb;break c}}}}while(0);if(hc|F){var ja=hc?0:H}else{for(var aa=H;;){var da=a[aa>>2];if(0==(da|0)){ja=aa;break b}else{aa=da}}}}else{ja=0}}while(0);var ea=X+20|0;a[ea>>2]=a[ea>>2]+1|0;a[a[w]+4>>2]=ja;return 0==(ja|0)?O=0:O=0>(gb|0)?a[ja+8>>2]:ja+ -gb|0}if(D){for(var xa=C+16|0,L=b+12|0,Od=0>(gb|0),ha=-gb|0,ga=y;;){var N=a[ga>>2];a[ga>>2]=0;var Rb=a[xa>>2];if(0==(Rb|0)){if(!(-1<(a[t]|0)|0==(N|0))){var Xe=N,tb=Rb;B=121}}else{0!=(N|0)&&(Xe=N,tb=Rb,B=121)}b:do{if(121==B){for(;;){B=0;var ya=a[Xe>>2];if(0!=(tb|0)){J[tb](b,Od?a[Xe+8>>2]:Xe+ha|0,C)}if(0>(a[t]|0)){J[a[L>>2]](b,Xe,0,C)}if(0==(ya|0)){break b}Xe=ya;tb=a[xa>>2]}}}while(0);var Uf=ga+4|0;if(Uf>>>0>>0){ga=Uf}else{break}}var wa=a[w]}else{wa=X}a[wa+4>>2]=0;a[a[w]+16>>2]=0;return O=a[a[w]+20>>2]=0}}else{var Ab=2==(a[a[A+4]+4>>2]|0);b:do{if(Ab){if(0==(i&4098|0)){B=150}else{if(0==(J[a[A]](b,r,4)|0)){return O=0}e=a[w]>>2;for(var Fa=a[e+1],Ga=((a[e+3]-1&a[Fa+4>>2])<<2)+a[e+2]|0,Bg=0>(gb|0),ta=-gb|0,Ka=Ga,za=0,ma=0;;){var pa=a[Ka>>2];if(0==(pa|0)){var wf=Ga,Ha=Fa;h=Ha>>2;var Ra=za;break b}if(((Bg?a[pa+8>>2]:pa+ta|0)|0)==(r|0)){wf=Ga;Ha=pa;h=Ha>>2;Ra=ma;break b}Ka=pa|0;za=(pa|0)==(Fa|0)?ma:za;ma=pa}}}else{B=150}}while(0);b:do{if(150==B){var W=0==(i&2565|0);c:do{if(W){if(0!=(i&1056|0)){var BC=0>(gb|0)?a[r+8>>2]:r+ -gb|0,La=BC+P|0,Vf=BC,Ya=r,Q=0>(T|0)?a[La>>2]:La,Za=a[r+4>>2]}else{n=a[w]>>2;var S=a[n+1];do{if(0!=(S|0)&&((0>(gb|0)?a[S+8>>2]:S+ -gb|0)|0)==(r|0)){var ab=a[S+4>>2],$a=r,jb=((a[n+3]-1&ab)<<2)+a[n+2]|0,Ca=S,Ia=0,eb=ab;B=192;break c}}while(0);var ub=r+P|0,Sa=0>(T|0)?a[ub>>2]:ub,U=a[m+6];0==(U|0)?(Vf=r,Q=Sa,Za=Cn(0,Sa,T)):(Vf=r,Q=Sa,Za=J[U](b,Sa,C))}}else{if(0==(i&512|0)){var ua=r+P|0,Oa=0>(T|0)?a[ua>>2]:ua}else{Oa=r}var Wa=a[m+6];0==(Wa|0)?(Vf=r,Q=Oa,Za=Cn(0,Oa,T)):(Vf=r,Q=Oa,Za=J[Wa](b,Oa,C))}B=175}while(0);c:do{if(175==B){var pb=a[w],ob=a[pb+12>>2];if(1>(ob|0)){var bb=0}else{var qb=((ob-1&Za)<<2)+a[pb+8>>2]|0,bb=a[qb>>2],V=qb}var kb=0>(gb|0),Y=0>(T|0),vb=0==($e|0),xb=1>(T|0),la=-gb|0,nb=bb;f=nb>>2;for(var rb=0;;){if(0==(nb|0)){var lb=Za,Ta=rb,cb=Ya,fb=0;d=fb>>2;var Ua=V;c=Ua>>2;var sb=Vf,Na=0;break c}if((Za|0)==(a[f+1]|0)){var R=(kb?a[f+2]:nb+la|0)+P|0,Db=Y?a[R>>2]:R;if(0==((vb?xb?ka(Q,Db):Ve(Q,Db,T):J[$e](b,Q,Db,C))|0)){var $a=Vf,jb=V,Ca=nb,Ob=Ya,Ia=rb,eb=Za;B=192;break c}}rb=nb;nb=a[f];f=nb>>2}}}while(0);192==B&&(0==(Ca|0)?(lb=eb,Ta=Ia,cb=Ob,fb=0,d=fb>>2,Ua=jb,c=Ua>>2,sb=$a,Na=0):(a[j]|=32768,lb=eb,Ta=Ia,cb=Ob,fb=Ca,d=fb>>2,Ua=jb,c=Ua>>2,sb=$a,Na=1));if(0!=(i&1540|0)){if(!Na){return O=0}if(0!=(Ta|0)){var Eb=a[w];if(0!=(a[Eb>>2]&1|0)&&1>(a[Eb+20>>2]|0)){var $=fb|0;a[Ta>>2]=a[$>>2];a[$>>2]=a[c];a[c]=fb}}a[a[w]+4>>2]=fb;return O=0>(gb|0)?a[d+2]:fb+ -gb|0}var Bb=0==(i&2049|0);c:do{if(Bb){var Ja=0==(i&8|0);d:do{if(Ja){if(0!=(i&16|0)){if(!(Na&0==(Ta|0))){var fa=Ta;B=251;break}var Z=a[c];if((Z|0)!=(fb|0)){for(var sa=Z;;){var CC=a[sa>>2];if((CC|0)==(fb|0)){fa=sa;B=251;break d}else{sa=CC}}}for(var DC=a[w],Wf=a[DC+8>>2],ic=Ua;;){var ra=ic-4|0;if(ra>>>0>>0){B=247;break}var ba=a[ra>>2];if(0==(ba|0)){ic=ra}else{var qa=ba;B=249;break}}if(247==B){a[DC+4>>2]=0;break a}else{if(249==B){for(;;){B=0;var na=a[qa>>2];if(0==(na|0)){var oa=qa;B=250;break d}else{qa=na,B=249}}}}}if(0==(i&32|0)){wf=Ua;Ha=fb;h=Ha>>2;Ra=Ta;break b}if(!Na){var pc=sb,Wc=cb;break c}if(0!=(a[a[w]>>2]&2|0)){pc=sb;Wc=cb;break c}var Vb=a[m+4];if(0!=(Vb|0)){J[Vb](b,sb,C)}if(0>(a[t]|0)){J[a[A+3]](b,cb,0,C)}return O=0>(gb|0)?a[d+2]:fb+ -gb|0}if(Na){var Xd=a[d];if(0!=(Xd|0)){oa=Xd,B=250}else{q=a[w]>>2;for(var Ba=(a[q+3]<<2)+a[q+2]|0,Ea=Ua;;){var Aa=Ea+4|0;if(Aa>>>0>=Ba>>>0){break}var Cb=a[Aa>>2];if(0==(Cb|0)){Ea=Aa}else{oa=Cb;B=250;break d}}a[q+1]=0;break a}}else{fa=Ta,B=251}}while(0);if(250==B){var Ma=a[a[w]+4>>2]=oa}else{if(251==B){if(a[a[w]+4>>2]=fa,0==(fa|0)){break a}else{Ma=fa}}}var lc=a[w]|0;a[lc>>2]|=8192;return O=0>(gb|0)?a[Ma+8>>2]:Ma+ -gb|0}if(Na){var wb=a[w];if(0!=(a[wb>>2]&1|0)){return a[wb+4>>2]=fb,O=0>(gb|0)?a[d+2]:fb+ -gb|0}}var Jd=C+12|0,va=a[Jd>>2];if(0==(va|0)){var Hc=sb}else{if(0==(i&1|0)){Hc=sb}else{var Pa=J[va](b,sb,C);if(0==(Pa|0)){return O=0}Hc=Pa}}if(-1<(gb|0)){var oe=Hc+gb|0}else{var Qa=J[a[A+3]](b,0,12,C);if(0!=(Qa|0)){a[Qa+8>>2]=Hc,oe=Qa}else{if(0==(a[Jd>>2]|0)){return O=0}var Qb=a[m+4];if(0==(Qb|0)||0==(i&1|0)){return O=0}J[Qb](b,Hc,C);return O=0}}a[oe+4>>2]=lb;pc=Hc;Wc=oe}while(0);var tc=a[w]+16|0,Sc=a[tc>>2]+1|0;a[tc>>2]=Sc;var Gb=a[w],Va=a[Gb+12>>2];if((Sc|0)>(Va<<1|0)){if(1>(a[Gb+20>>2]|0)){Er(b);var hb=a[w],rd=hb,oc=a[hb+12>>2]}else{var rd=Gb,oc=Va}}else{rd=Gb,oc=Va}if(0!=(oc|0)){var ib=((oc-1&lb)<<2)+a[rd+8>>2]|0;if(Na){var Ib=fb|0;a[Wc>>2]=a[Ib>>2];a[Ib>>2]=Wc}else{a[Wc>>2]=a[ib>>2],a[ib>>2]=Wc}a[a[w]+4>>2]=Wc;return O=pc}var ve=rd+16|0;a[ve>>2]=a[ve>>2]-1|0;var Rd=a[m+4];if(0!=(Rd|0)&&0!=(i&1|0)){J[Rd](b,pc,C)}if(0<=(a[t]|0)){return O=0}J[a[m+7]](b,Wc,0,C);return O=0}}while(0);if(0==(Ha|0)){return O=0}do{if(0==(Ra|0)){var Bc=a[wf>>2];if((Bc|0)==(Ha|0)){var Sd=a[h],fd=a[wf>>2]=Sd}else{for(var yb=Bc;;){var yc=yb|0,Nb=a[yc>>2];if((Nb|0)==(Ha|0)){break}else{yb=Nb}}a[yc>>2]=a[h];fd=yb}}else{a[Ra>>2]=a[h],fd=Ra}}while(0);var Hb=0>(gb|0)?a[h+2]:Ha+ -gb|0,Tc=a[w]+16|0;a[Tc>>2]=a[Tc>>2]-1|0;a[a[w]+4>>2]=fd;var mb=a[m+4];if(0!=(mb|0)&&0!=(i&2|0)){J[mb](b,Hb,C)}if(0<=(a[t]|0)){return O=Hb}J[a[A+3]](b,Ha,0,C);return O=Hb}}while(0);var Mc=a[w]+20|0,id=a[Mc>>2]-1|0;a[Mc>>2]=id;0>(id|0)&&(a[a[w]+20>>2]=0);g=a[w]>>2;if((a[g+4]|0)<=(a[g+3]<<1|0)||1<=(a[g+5]|0)){return O=0}Er(b);return O=0}function Er(b){var r,i,g=h;h+=4;var q;i=g>>2;r=(b+8|0)>>2;var c=a[r],d=c+24|0;if(!(0<(a[d>>2]|0)&&0<(a[c+12>>2]|0))){a[d>>2]=0;a[i]=a[a[r]+12>>2];c=b+4|0;d=a[c>>2];do{if(0==(d|0)){q=325}else{var f=a[d+32>>2];if(0==(f|0)){q=325}else{if(0<(J[f](b,7,g,d)|0)){f=a[i];do{if(0>(f|0)){a[a[r]+24>>2]=1;if(0<(a[a[r]+12>>2]|0)){h=g;return}var n=a[i]}else{for(n=2;;){if((n|0)<(f|0)){n<<=1}else{break}}a[i]=n}}while(0);if(1>(n|0)){q=329}else{var z=n,e=a[r]}}else{q=325}}}}while(0);325==q&&(a[i]=0,q=329);a:do{if(329==q){d=a[r];f=a[d+12>>2];n=0==(f|0)?256:f;a[i]=n;var f=d+16|0,s=n<<1;if((a[f>>2]|0)>(s|0)){for(n=s;;){if(a[i]=n,s=n<<1,(a[f>>2]|0)>(s|0)){n=s}else{z=n;e=d;break a}}}else{z=n,e=d}}}while(0);q=a[e+12>>2];if((z|0)!=(q|0)&&(b=J[a[b+12>>2]](b,0==(q|0)?0:a[e+8>>2],z<<2,a[c>>2]),0!=(b|0))){q=a[r];e=a[q+12>>2];z=(e<<2)+b|0;a[q+8>>2]=b;a[a[r]+12>>2]=a[i];r=a[i]-1|0;e=(r|0)<(e|0);a:do{if(!e){for(q=(r<<2)+b|0;;){if(a[q>>2]=0,q=q-4|0,q>>>0>>0){break a}}}}while(0);if(b>>>0>>0){for(r=b;;){e=a[r>>2];q=0;a:for(;;){c=0==(q|0);d=q|0;for(f=e;;){if(0==(f|0)){break a}var n=f|0,s=a[n>>2],j=((a[i]-1&a[f+4>>2])<<2)+b|0;if((j|0)==(r|0)){e=s;q=f;continue a}c?a[r>>2]=s:a[d>>2]=s;a[n>>2]=a[j>>2];a[j>>2]=f;f=s}}r=r+4|0;if(r>>>0>=z>>>0){break}}}}}h=g}function FC(b,r,i){var g,q,c,d,f,n;d=(b+8|0)>>2;0!=(a[a[d]>>2]&4096|0)&&Ag(b,0);var h=a[b+4>>2];q=h>>2;var e=a[q],s=a[q+1];n=(h+8|0)>>2;var j=a[n],m=a[q+5];f=(b+20|0)>>2;a[f]&=-32769;do{if(0==(r|0)){if(0!=(i&384|0)){d=a[d]>>2;b=a[d+2];if(0==(b|0)){var u=0;return u}if(0==(i&256|0)){d=a[d+1]=b}else{i=a[b+4>>2];a[d+1]=i;if(0==(i|0)){return u=0}d=i}return u=0>(j|0)?a[d+8>>2]:d+ -j|0}if(0!=(i&4098|0)){g=a[d];if(0!=(a[g>>2]&144|0)){return u=0}g=a[g+8>>2];if(0==(g|0)){u=0}else{var w=g;c=w>>2;break}return u}if(0==(i&64|0)){return u=0}i=h+16|0;q=a[i>>2];0==(q|0)?0>(a[n]|0)&&(g=372):g=372;a:do{if(372==g&&(m=a[a[d]+8>>2],0!=(m|0))){f=b+12|0;e=0>(j|0);s=-j|0;for(u=q;;){w=a[m>>2];if(0!=(u|0)){J[u](b,e?a[m+8>>2]:m+s|0,h)}if(0>(a[n]|0)){J[a[f>>2]](b,m,0,h)}if(0==(w|0)){break a}m=w;u=a[i>>2]}}}while(0);a[a[d]+4>>2]=0;a[a[d]+8>>2]=0;u=a[a[d]+16>>2]=0}else{if(0==(i&2049|0)){w=a[d];do{if(0==(i&512|0)){c=a[w+4>>2];if(0!=(c|0)&&((0>(j|0)?a[c+8>>2]:c+ -j|0)|0)==(r|0)){var A=c;break}g=r+e|0;var B=0>(s|0)?a[g>>2]:g}else{B=r}g=428}while(0);a:do{if(428==g){g=0>(j|0);c=0>(s|0);for(var r=0==(m|0),A=1>(s|0),C=-j|0,w=w+8|0;;){w=a[w>>2];if(0==(w|0)){u=0;break}var P=(g?a[w+8>>2]:w+C|0)+e|0,P=c?a[P>>2]:P;if(0==((r?A?ka(B,P):Ve(B,P,s):J[m](b,B,P,h))|0)){A=w;break a}else{w|=0}}return u}}while(0);if(0==(A|0)){return u=0}a[f]|=32768;if(0!=(i&4098|0)){w=A;c=w>>2;break}if(0==(i&8|0)){if(0==(i&16|0)){i=A}else{if(i=a[d],(A|0)!=(a[i+8>>2]|0)){i=a[A+4>>2]}else{return u=a[i+4>>2]=0}}}else{i=a[A>>2]}a[a[d]+4>>2]=i;return 0==(i|0)?u=0:u=0>(j|0)?a[i+8>>2]:i+ -j|0}n=h+12|0;f=a[n>>2];if(0==(f|0)){f=r}else{if(0==(i&1|0)){f=r}else{if(f=J[f](b,r,h),0==(f|0)){return u=0}}}if(-1<(j|0)){h=f+j|0,b=h>>2}else{if(e=J[a[b+12>>2]](b,0,12,h),0!=(e|0)){a[e+8>>2]=f,h=e,b=h>>2}else{if(0==(a[n>>2]|0)){return u=0}j=a[q+4];if(0==(j|0)||0==(i&1|0)){return u=0}J[j](b,f,h);return u=0}}n=h;f=a[d];q=f>>2;e=a[q];0==(e&128|0)?0==(e&16|0)?g=0==(e&32|0)?411:407:(e=a[q+1],s=0!=(e|0),0==(i&8192|0)?s?(e|0)==(a[q+2]|0)?g=407:(i=e+4|0,s=a[i>>2],a[b+1]=s,a[s>>2]=n,a[b]=e,a[i>>2]=h):g=407:s?(i=e|0,s=a[i>>2],0==(s|0)?g=411:(a[b]=s,a[s+4>>2]=h,a[b+1]=e,a[i>>2]=n)):g=411):g=0==(i&8192|0)?407:411;407==g?(q=a[q+2],i=h,a[i>>2]=q,0==(q|0)?a[b+1]=n:(q=q+4|0,a[b+1]=a[q>>2],a[q>>2]=h),a[a[d]+8>>2]=i):411==g&&(i=f+8|0,q=a[i>>2],0==(q|0)?(q=h,a[i>>2]=q,a[b+1]=n,i=q):(q=i=q+4|0,a[a[q>>2]>>2]=n,a[b+1]=a[q>>2],i=a[i>>2]=h),a[i>>2]=0);i=a[d];q=i+16|0;g=a[q>>2];-1<(g|0)?(a[q>>2]=g+1|0,d=a[d]):d=i;a[d+4>>2]=n;u=0>(j|0)?a[b+2]:h+ -j|0}return u}while(0);g=(w|0)>>2;f=a[g];0==(f|0)?f=0:(a[f+4>>2]=a[c+1],f=a[g]);s=a[d]+8|0;e=a[s>>2];(w|0)==(e|0)?(a[s>>2]=f|0,f=a[a[d]+8>>2],0!=(f|0)&&(a[f+4>>2]=a[c+1])):(s=w+4|0,a[a[s>>2]>>2]=f,f=e+4|0,(w|0)==(a[f>>2]|0)&&(a[f>>2]=a[s>>2]));f=a[d]+4|0;a[f>>2]=(w|0)==(a[f>>2]|0)?a[g]:0;d=a[d]+16|0;a[d>>2]=a[d>>2]-1|0;j=0>(j|0)?a[c+2]:w+ -j|0;d=a[q+4];if(0!=(d|0)&&0!=(i&2|0)){J[d](b,j,h)}if(0<=(a[n]|0)){return j}J[a[b+12>>2]](b,w,0,h);return j}function Cn(a,b,i){if(1>(i|0)){var i=m[b],g=0==i<<24>>24;a:do{if(g){var q=b,c=a}else{for(var d=b,f=a,n=i;;){var h=m[d+1|0],f=17109811*(((n&255)<<8)+f+(h&255))|0,d=d+(0!=h<<24>>24?2:1)|0,h=m[d];if(0==h<<24>>24){q=d;c=f;break a}else{n=h}}}}while(0);a=c+(q-b|0)|0;return 17109811*a|0}c=i-1|0;q=b+c|0;c=0<(c|0);a:do{if(c){f=b;for(h=a;;){if(h=17109811*(((m[f]&255)<<8)+(m[f+1|0]&255)+h)|0,f=f+2|0,f>>>0>=q>>>0){g=f;d=h;break a}}}else{g=b,d=a}}while(0);if(g>>>0>q>>>0){return a=d+i|0,17109811*a|0}a=17109811*(((m[g]&255)<<8)+d)|0;a=a+i|0;return 17109811*a|0}function Nc(b,r){var i,g,q,c,d,f=h;h+=4;var n;d=f>>2;if(0==(b|0)|0==(r|0)){return h=f,0}var z=Gb(40);c=z>>2;if(0==(z|0)){return h=f,0}a[c]=0;a[c+4]=0;a[c+1]=0;pk(z,b,0);q=(z+20|0)>>2;c=b+32|0;a[q]=0;a[q+1]=0;a[q+2]=0;a[q+3]=0;a[q+4]=0;q=a[c>>2];if(0==(q|0)){i=z,n=566}else{if(a[d]=0,q=J[q](z,1,f,b),0>(q|0)){var e=z;n=567}else{if(0<(q|0)){if(q=a[d],0!=(q|0)){if(0==(a[r+4>>2]&a[q>>2]|0)){e=z,n=567}else{var s=z;g=s>>2;var j=q}}else{if(n=b+28|0,0==(a[n>>2]|0)){e=z,n=567}else{G(z);n=J[a[n>>2]](0,0,40,b);i=n>>2;if(0==(n|0)){return h=f,0}a[i]=0;a[i+4]=0;a[i+1]=0;pk(n,b,0);a[i+5]=1;a[i+6]=0;a[i+8]=0;a[i+7]=0;i=n;n=566}}}else{i=z,n=566}}}566==n&&(z=J[a[i+12>>2]](i,0,28,b),a[d]=z,0==(z|0)?(e=i,n=567):(a[z>>2]=a[r+4>>2],a[a[d]+4>>2]=0,a[a[d]+8>>2]=0,a[a[d]+20>>2]=0,a[a[d]+16>>2]=0,a[a[d]+12>>2]=0,a[a[d]+24>>2]=0,s=i,g=s>>2,j=a[d]));if(567==n){return G(e),h=f,0}a[g+2]=j;a[g]=a[r>>2];a[g+4]=r;g=a[c>>2];if(0==(g|0)){return h=f,s}J[g](s,5,s,b);h=f;return s}function rc(b){var r,i;i=(b+8|0)>>2;r=a[i];0!=(a[r>>2]&4096|0)&&(Ag(b,0),r=a[i]);b=r>>2;r=(r+16|0)>>2;do{if(0>(a[r]|0)){var g=a[b];if(0!=(g&12|0)){a[r]=Fr(a[b+1])}else{if(0!=(g&112|0)){var g=a[b+2],q=0==(g|0);a:do{if(q){var c=0}else{for(var d=0,f=g;;){if(d=d+1|0,f=a[f>>2],0==(f|0)){c=d;break a}}}}while(0);a[r]=c}}}}while(0);return a[a[i]+16>>2]}function Fr(b){return 0==(b|0)?0:Fr(a[b+4>>2])+Fr(a[b>>2])+1|0}function GC(b,r,i){var g,q,c,d,f,n,z,e,s,j,m,u,w,A,B,C,P=h;h+=128;var T;C=P>>2;B=P+8>>2;A=(b+8|0)>>2;var gb=a[A];if(0==(a[gb>>2]&4096|0)){var $e=gb}else{Ag(b,0),$e=a[A]}var M=a[b+4>>2];w=M>>2;var X=a[w],O=a[w+1];u=(M+8|0)>>2;var y=a[u],Da=a[w+5];m=(b+20|0)>>2;a[m]&=-32769;var ia=a[$e+4>>2];if(0==(r|0)){if(0==(ia|0)){var D=0;h=P;return D}if(0==(i&448|0)){return D=0,h=P,D}if(0==(i&64|0)){var F=0==(i&256|0);a:do{if(F){var Tf=ia+4|0,sc=a[Tf>>2];if(0==(sc|0)){var E=ia}else{for(var G=ia,H=Tf,hc=sc;;){var ca=hc|0;a[H>>2]=a[ca>>2];a[ca>>2]=G;var I=hc+4|0,K=a[I>>2];if(0==(K|0)){E=hc;break a}else{G=hc,H=I,hc=K}}}}else{var zb=ia|0,ja=a[zb>>2];if(0==(ja|0)){E=ia}else{for(var aa=ia,da=zb,ea=ja;;){var xa=ea+4|0;a[da>>2]=a[xa>>2];a[xa>>2]=aa;var L=ea|0,N=a[L>>2];if(0==(N|0)){E=ea;break a}else{aa=ea,da=L,ea=N}}}}}while(0);a[a[A]+4>>2]=E;D=0>(y|0)?a[E+8>>2]:E+ -y|0;h=P;return D}var ha=M+16|0;if(0==(a[ha>>2]|0)){if(0>(a[u]|0)){T=599}else{var ga=$e}}else{T=599}if(599==T){for(var Zd=b+12|0,Rb=0>(y|0),Xe=-y|0,tb=ia;;){var ya=tb+4|0,Uf=a[ya>>2];if(0!=(Uf|0)){var wa=Uf|0;a[ya>>2]=a[wa>>2];a[wa>>2]=tb;tb=Uf}else{var Ab=a[tb>>2],Fa=a[ha>>2];if(0!=(Fa|0)){J[Fa](b,Rb?a[tb+8>>2]:tb+Xe|0,M)}if(0>(a[u]|0)){J[a[Zd>>2]](b,tb,0,M)}if(0==(Ab|0)){break}else{tb=Ab}}}ga=a[A]}a[ga+16>>2]=0;D=a[a[A]+4>>2]=0;h=P;return D}j=(b+16|0)>>2;var Ga=8==(a[a[j]+4>>2]|0);a:do{if(Ga){if(0==(i&4098|0)){T=637}else{for(var Bg=0>(O|0),ta=r+X|0,Ka=Bg?a[ta>>2]:ta,za=b,ma=0==(Da|0),pa=1>(O|0),wf=J[a[za>>2]](b,r,4);;){if(0==(wf|0)){T=637;break a}var Ha=wf+X|0,Ra=Bg?a[Ha>>2]:Ha;if(0!=((ma?pa?ka(Ka,Ra):Ve(Ka,Ra,O):J[Da](b,Ka,Ra,M))|0)){T=637;break a}if((wf|0)==(r|0)){break}wf=J[a[za>>2]](b,wf,8)}var W=a[a[A]+4>>2];a[C]=a[W+4>>2];a[C+1]=a[W>>2];var Q=W,La=P;T=779}}else{T=637}}while(0);a:do{if(637==T){if(0==(i&2565|0)){if(0!=(i&32|0)){var S=r,Ya=0>(y|0)?a[r+8>>2]:r+ -y|0,U=Ya+X|0,Za=0>(O|0)?a[U>>2]:U;if(0==(ia|0)){var V=P,ab=P,$a=S,jb=Ya;T=799}else{var Ca=Ya,Ia=S,eb=Za;T=656}}else{if(0==(ia|0)){ab=V=P,jb=r,T=799}else{if(((0>(y|0)?a[ia+8>>2]:ia+ -y|0)|0)==(r|0)){var ub=r,Sa=ia,Y=P,ua=P;T=736}else{var Oa=r+X|0;0>(O|0)?(Ca=r,eb=a[Oa>>2]):(Ca=r,eb=Oa);T=656}}}}else{if(0==(i&512|0)){var Wa=r+X|0,pb=0>(O|0)?a[Wa>>2]:Wa}else{pb=r}0==(ia|0)?(ab=V=P,jb=r,T=799):(Ca=r,eb=pb,T=656)}b:do{if(656==T){var ob=4==(a[a[j]+4>>2]|0);c:do{if(ob){var bb=a[a[A]+24>>2];if(0==(bb|0)){var qb=ia,R=P,kb=P}else{if(0==(i&516|0)){qb=ia,kb=R=P}else{for(var la=0>(y|0),vb=0>(O|0),xb=0==(Da|0),$=1>(O|0),nb=-y|0,rb=0,lb=ia;;){if((rb|0)>=(bb|0)){T=661;break}var Ta=(la?a[lb+8>>2]:lb+nb|0)+X|0,cb=vb?a[Ta>>2]:Ta,fb=xb?$?ka(eb,cb):Ve(eb,cb,O):J[Da](b,eb,cb,M);if(0==(fb|0)){T=673;break}a[(rb<<2>>2)+B]=fb;var Ua=a[(0>(fb|0)?lb+4|0:lb|0)>>2];if(0==(Ua|0)){D=0;T=825;break}else{rb=rb+1|0,lb=Ua}}if(673==T){return D=la?a[lb+8>>2]:lb+nb|0,h=P,D}if(661==T){if(0<(bb|0)){var sb=P;s=sb>>2;var Na=P;e=Na>>2;for(var Fb=ia,Db=0;;){if(0>(a[(Db<<2>>2)+B]|0)){var Ob=Fb+4|0,Eb=a[Ob>>2];if(0>(a[((Db|1)<<2>>2)+B]|0)){var fa=Eb|0;a[Ob>>2]=a[fa>>2];a[fa>>2]=Fb;a[e+1]=Eb;var Bb=Eb+4|0,Ja=Eb,Z=sb}else{a[s]=Eb,a[e+1]=Fb,Bb=Eb|0,Ja=Fb,Z=Eb}}else{var sa=Fb|0,xf=a[sa>>2];if(0<(a[((Db|1)<<2>>2)+B]|0)){var ra=xf+4|0;a[sa>>2]=a[ra>>2];a[ra>>2]=Fb;a[s]=xf;Bb=xf|0;Ja=Na;Z=xf}else{a[e+1]=xf,a[s]=Fb,Bb=xf+4|0,Ja=xf,Z=Fb}}var qa=a[Bb>>2],ba=Db+2|0;if((ba|0)<(bb|0)){sb=Z,s=sb>>2,Na=Ja,e=Na>>2,Fb=qa,Db=ba}else{qb=qa;R=Ja;kb=Z;break c}}}else{qb=ia,kb=R=P}}else{if(825==T){return h=P,D}}}}}else{qb=ia,kb=R=P}}while(0);var ic=0>(y|0),na=0>(O|0),oa=0!=(Da|0),Ba=1>(O|0),Ea=-y|0,Aa=qb,pc=R,Wc=kb;z=Wc>>2;c:for(;;){var Vb=Aa,Xd=pc;for(n=Xd>>2;;){var Cb=(ic?a[Vb+8>>2]:Vb+Ea|0)+X|0,Ma=na?a[Cb>>2]:Cb,wb=oa?J[Da](b,eb,Ma,M):Ba?ka(eb,Ma):Ve(eb,Ma,O);if(0==(wb|0)){var ub=Ca,va=Ia,Sa=Vb,Y=Xd,ua=Wc;T=736;break b}if(0<=(wb|0)){break}var Pa=Vb+4|0,lc=a[Pa>>2];f=lc>>2;if(0==(lc|0)){T=718;break c}var Gb=(ic?a[f+2]:lc+Ea|0)+X|0,Jd=na?a[Gb>>2]:Gb,Qa=oa?J[Da](b,eb,Jd,M):Ba?ka(eb,Jd):Ve(eb,Jd,O);if(0<=(Qa|0)){T=715;break}var Hc=lc|0;a[Pa>>2]=a[Hc>>2];a[Hc>>2]=Vb;a[n+1]=lc;var Va=a[f+1];if(0==(Va|0)){V=Wc;ab=lc;$a=Ia;jb=Ca;T=799;break b}else{Vb=Va,Xd=lc,n=Xd>>2}}if(715==T){T=0;if(0==(Qa|0)){T=716;break}a[z]=lc;a[n+1]=Vb;var oe=a[f];if(0==(oe|0)){V=lc;ab=Vb;$a=Ia;jb=Ca;T=799;break b}else{Aa=oe;pc=Vb;Wc=lc;z=Wc>>2;continue}}var hb=Vb|0,Qb=a[hb>>2];d=Qb>>2;if(0==(Qb|0)){T=735;break}var tc=(ic?a[d+2]:Qb+Ea|0)+X|0,Sc=na?a[tc>>2]:tc,ib=oa?J[Da](b,eb,Sc,M):Ba?ka(eb,Sc):Ve(eb,Sc,O);if(0<(ib|0)){var Ib=Qb+4|0;a[hb>>2]=a[Ib>>2];a[Ib>>2]=Vb;a[z]=Qb;var yb=a[d];if(0==(yb|0)){V=Qb;ab=Xd;$a=Ia;jb=Ca;T=799;break b}else{Aa=yb;pc=Xd;Wc=Qb;z=Wc>>2;continue}}if(0==(ib|0)){T=733;break}a[n+1]=Qb;a[z]=Vb;var rd=a[d+1];if(0==(rd|0)){V=Vb;ab=Qb;$a=Ia;jb=Ca;T=799;break b}else{Aa=rd,pc=Qb,Wc=Vb,z=Wc>>2}}733==T?(a[z]=Vb,ub=Ca,va=Ia,Sa=Qb,Y=Xd,ua=Vb,T=736):716==T?(a[n+1]=Vb,ub=Ca,va=Ia,Sa=lc,Y=Vb,ua=Wc,T=736):718==T?(a[n+1]=Vb,V=Wc,ab=Vb,$a=Ia,jb=Ca,T=799):735==T&&(V=a[z]=Vb,ab=Xd,$a=Ia,jb=Ca,T=799)}}while(0);do{if(736==T){if(0==(Sa|0)){V=ua,ab=Y,$a=va,jb=ub,T=799}else{if(a[m]|=32768,c=(Sa+4|0)>>2,a[ua>>2]=a[c],q=(Sa|0)>>2,a[Y+4>>2]=a[q],0!=(i&516|0)){var oc=Sa;g=oc>>2}else{if(0!=(i&8|0)){var Hb=P|0;a[c]=a[Hb>>2];a[q]=0;a[Hb>>2]=Sa;var Nb=Y,ve=ub;T=766}else{if(0!=(i&16|0)){var Rd=P+4|0;a[q]=a[Rd>>2];a[c]=0;a[Rd>>2]=Sa;var Bc=Y,Sd=ub;T=773}else{if(0!=(i&4098|0)){Q=Sa;La=Y;T=779;break a}if(0!=(i&2049|0)){if(0!=(a[a[j]+4>>2]&4|0)){oc=Sa,g=oc>>2}else{a[c]=0;var fd=P+4|0;a[q]=a[fd>>2];a[fd>>2]=Sa;var mb=Y,yc=Sa,db=ub;T=806}}else{if(0==(i&32|0)){return D=0,h=P,D}if(0==(a[a[j]+4>>2]&4|0)){a[va+4>>2]=0;var Lb=P+4|0;a[va>>2]=a[Lb>>2];a[Lb>>2]=va;var Tc=a[A]+16|0;a[Tc>>2]=a[Tc>>2]+1|0}else{var $b=a[w+4];if(0!=($b|0)){J[$b](b,ub,M)}if(0>(a[u]|0)){J[a[b+12>>2]](b,va,0,M)}}oc=Sa;g=oc>>2}}}}}}}while(0);do{if(799==T){if(a[ab+4>>2]=0,a[V>>2]=0,0!=(i&8|0)){Nb=ab,ve=jb,T=766}else{if(0!=(i&16|0)){Bc=ab,Sd=jb,T=773}else{if(0!=(i&516|0)){var Mc=jb,id=ab;break a}if(0!=(i&2049|0)){mb=ab,yc=0,db=jb,T=806}else{if(0==(i&32|0)){Mc=0;id=ab;break a}var Pb=a[A]+16|0;a[Pb>>2]=a[Pb>>2]+1|0;oc=$a;g=oc>>2}}}}}while(0);do{if(806==T){var Jb=M+12|0,Yb=a[Jb>>2],mf=0==(Yb|0)?db:0==(i&1|0)?db:J[Yb](b,db,M);if(0==(mf|0)){var nf=yc}else{if(-1<(y|0)){nf=mf+y|0}else{var Kb=J[a[b+12>>2]](b,0,12,M),af=Kb;if(0!=(Kb|0)){a[Kb+8>>2]=mf}else{if(0!=(a[Jb>>2]|0)){var yf=a[w+4];if(0!=(yf|0)&&0!=(i&1|0)){J[yf](b,mf,M)}}}nf=af}}if(0==(nf|0)){Mc=mf;id=mb;break a}var Td=a[A]+16|0,Fe=a[Td>>2];-1<(Fe|0)&&(a[Td>>2]=Fe+1|0);oc=nf;g=oc>>2}else{if(766==T){var gf=P+4|0,fe=a[gf>>2];if(0==(fe|0)){Mc=ve;id=Nb;break a}var fh=fe+4|0,df=a[fh>>2],jd=0==(df|0);b:do{if(jd){var md=fe,je=a[fe>>2]}else{for(var Qe=fe,Xf=fh,Uc=df;;){var bf=Uc|0;a[Xf>>2]=a[bf>>2];a[bf>>2]=Qe;var rk=Uc+4|0,Mb=a[rk>>2];if(0==(Mb|0)){md=Uc;je=Qe;break b}else{Qe=Uc,Xf=rk,Uc=Mb}}}}while(0);a[gf>>2]=je;oc=md;g=oc>>2}else{if(773==T){var Wb=P|0,ef=a[Wb>>2];if(0==(ef|0)){Mc=Sd;id=Bc;break a}var kd=ef|0,Tb=a[kd>>2],En=0==(Tb|0);b:do{if(En){var sk=ef,HC=a[ef+4>>2]}else{for(var Gr=ef,nd=kd,zd=Tb;;){var cf=zd+4|0;a[nd>>2]=a[cf>>2];a[cf>>2]=Gr;var uc=zd|0,ec=a[uc>>2];if(0==(ec|0)){sk=zd;HC=Gr;break b}else{Gr=zd,nd=uc,zd=ec}}}}while(0);a[Wb>>2]=HC;oc=sk;g=oc>>2}}}}while(0);a[g+1]=a[C];a[g]=a[C+1];var zi=0==(a[a[j]+4>>2]&8|0);b:do{if(zi){var we=oc}else{if(0==(i&516|0)){we=oc}else{for(var pe=0>(y|0),IC=0>(O|0),Kd=(pe?a[g+2]:oc+ -y|0)+X|0,Dd=IC?a[Kd>>2]:Kd,bc=0==(Da|0),rc=1>(O|0),Ye=-y|0,Ad=oc;;){var Ud=Ad+4|0,Vd=a[Ud>>2];if(0==(Vd|0)){we=Ad;break b}var jc=Vd|0,mc=a[jc>>2],gd=0==(mc|0);c:do{if(gd){var ud=Vd,Zb=jc}else{for(var qc=Vd,of=jc,Sb=mc;;){var kc=Sb+4|0;a[of>>2]=a[kc>>2];a[kc>>2]=qc;var Xb=Sb|0,Ac=a[Xb>>2];if(0==(Ac|0)){ud=Sb;Zb=Xb;break c}else{qc=Sb,of=Xb,Sb=Ac}}}}while(0);var ac=Ud|0;a[ac>>2]=ud;var dc=(pe?a[ud+8>>2]:ud+Ye|0)+X|0,fc=IC?a[dc>>2]:dc;if(0!=((bc?rc?ka(Dd,fc):Ve(Dd,fc,O):J[Da](b,Dd,fc,M))|0)){we=Ad;break b}a[ac>>2]=a[Zb>>2];a[Zb>>2]=Ad;Ad=ud}}}}while(0);a[a[A]+4>>2]=we;D=0>(y|0)?a[we+8>>2]:we+ -y|0;h=P;return D}}while(0);if(779==T){var nc=0>(y|0)?a[Q+8>>2]:Q+ -y|0,gc=a[w+4];if(0!=(gc|0)&&0!=(i&2|0)){J[gc](b,nc,M)}if(0>(a[u]|0)){J[a[b+12>>2]](b,Q,0,M)}var $c=a[A]+16|0,zc=a[$c>>2]-1|0;a[$c>>2]=zc;0>(zc|0)&&(a[a[A]+16>>2]=-1);Mc=nc;id=La}for(var Cc=id;;){var Ic=Cc+4|0,vc=a[Ic>>2];if(0==(vc|0)){break}else{Cc=vc}}a[Ic>>2]=a[C];a[a[A]+4>>2]=a[C+1];D=0!=(i&2|0)?Mc:0;h=P;return D}function Ag(b,r){var i,g=a[a[b+16>>2]>>2];i=(b+8|0)>>2;var q=a[i],c=q|0,d=a[c>>2],f=d&4096;if(0==(r|0)){if(0==(f|0)){var n;return-1}q=a[q+4>>2]}else{if(0==(a[q+16>>2]|0)){f=0,q=r}else{return-1}}a[c>>2]=d&-4097;d=a[i];c=a[d>>2];if(0==(c&3|0)){n=d+4|0;0==(c&12|0)?(a[n>>2]=0,a[a[i]+8>>2]=q|0):a[n>>2]=q;if(0!=(f|0)){return 0}a[a[i]+16>>2]=-1;return 0}a[d+4>>2]=0;i=a[i]>>2;if(0==(f|0)){a[i+4]=0;if(0==(q|0)){return 0}for(;;){if(i=a[q>>2],J[g](b,q,32),0==(i|0)){n=0;break}else{q=i}}return n}f=a[i+2];i=a[i+3];g=(i<<2)+f|0;if(0<(i|0)){i=f}else{return 0}for(;;){if(f=a[i>>2],0!=(f|0)&&(a[i>>2]=q,q=f|0,f=a[q>>2],a[q>>2]=0,q=f),i=i+4|0,i>>>0>=g>>>0){n=0;break}}return n}function yC(b,r){var i,g=b>>2;0!=(a[a[g+2]>>2]&4096|0)&&Ag(b,0);var q=0!=(r|0);if(q){if(0!=(a[a[r+8>>2]>>2]&4096|0)&&Ag(r,0),(a[r+16>>2]|0)==(a[g+4]|0)){var c=r}else{var d;return 0}}else{c=0}for(;0!=(c|0);){if((c|0)==(b|0)){d=0;i=896;break}c=a[c+28>>2]}if(896==i){return d}i=(b+28|0)>>2;c=a[i];0!=(c|0)&&(d=c+24|0,a[d>>2]=a[d>>2]-1|0);a[g+8]=0;a[i]=0;q?(a[i]=r,a[g]=372,g=r+24|0,a[g>>2]=a[g>>2]+1|0,d=r):(a[g]=a[a[g+4]>>2],d=c);return d}function JC(b,r,i){var g,q,c;if(0!=(i&99|0)){var d=J[a[a[b+16>>2]>>2]](b,r,i);return d}q=0==(i&516|0);a:do{if(q){var f=a[b+16>>2],n=0==(a[f+4>>2]&12|0);do{if(0==(i&384|0)){if(n){if(0==(i&24|0)){return d=0}q=(b+32|0)>>2;var h=a[q];if(0==(h|0)){var e=b;c=931}else{var s=a[a[h+4>>2]+8>>2];g=a[a[h+8>>2]+4>>2];if(((0>(s|0)?a[g+8>>2]:g+ -s|0)|0)==(r|0)){var j=r,m=h}else{e=b,c=931}}do{if(931==c){for(;;){c=0;if(0==(e|0)){break}var u=J[a[a[e+16>>2]>>2]](e,r,4);if(0!=(u|0)){c=933;break}e=a[e+28>>2]}if(933==c){a[q]=e,j=u,m=e}else{return d=a[q]=0}}}while(0);var h=0==(i&8|0),w=J[a[a[m+16>>2]>>2]](m,j,i),s=m;b:for(;;){for(g=s+16|0;0!=(w|0);){var A=b;for(;;){if((A|0)==(s|0)){d=w;c=949;break b}if(0!=(J[a[a[A+16>>2]>>2]](A,w,4)|0)){break}A=a[A+28>>2]}w=J[a[a[g>>2]>>2]](s,w,i)}s=a[s+28>>2];a[q]=s;if(0==(s|0)){d=0;c=955;break}g=a[a[s+16>>2]>>2];w=h?J[g](s,0,256):J[g](s,0,128)}if(955==c||949==c){return d}}}else{if(n){f=b;break a}}}while(0);if(0==(i&408|0)){return d=0}var B=0==(b|0);b:do{if(B){var C=0,P=0}else{c=0!=(i&136|0);d=0!=(i&272|0);e=0;j=b;u=m=0;for(q=f;;){q=J[a[q>>2]](j,r,i);do{if(0==(q|0)){n=u,h=m,s=e}else{n=a[j+4>>2];g=n>>2;h=a[g+1];s=a[g+5];g=q+a[g]|0;g=0>(h|0)?a[g>>2]:g;if(0!=(m|0)&&(n=0==(s|0)?1>(h|0)?ka(g,u):Ve(g,u,h):J[s](j,g,u,n),!(c&0>(n|0)|d&0<(n|0)))){n=u;h=m;s=e;break}n=g;h=q;s=j}}while(0);q=a[j+28>>2];if(0==(q|0)){C=s;P=h;break b}e=s;j=q;m=h;u=n;q=a[q+16>>2]}}}while(0);a[b+32>>2]=C;return d=P}f=b}while(0);for(;;){if(0==(f|0)){B=0;break}C=J[a[a[f+16>>2]>>2]](f,r,i);if(0!=(C|0)){B=C;break}f=a[f+28>>2]}a[b+32>>2]=f;return B}function Gn(b,r){for(var i=b|0,g=b+32|0,q=J[a[i>>2]](b,0,128);0!=(q|0);){var c=a[g>>2],d=J[a[i>>2]](b,q,8);if(0>(J[r](0==(c|0)?b:c,q,0)|0)){break}else{q=d}}}function tk(b,r,i){var g,q=r>>2,c=h;h+=8;var d=c+4;a[q]=0;var f=b+16|0,n=a[a[a[f>>2]+20>>2]>>2]>>>4&1;a[i>>2]=n;var e=a[Hr>>2],p=0==(e|0);a:do{if(p){g=n}else{var s=mb(b|0,a[e+8>>2]),j=m[s];if(0==j<<24>>24){g=n}else{var t=Ai|0;for(g=t>>2;;){var u=a[g];if(0==(u|0)){g=n;break a}if(j<<24>>24==m[u]<<24>>24&&0==(ka(s,u)|0)){break}t=t+12|0;g=t>>2}a[q]=a[g+1];g=a[g+2];a[i>>2]=g}}}while(0);n=a[Ir>>2];0!=(n|0)&1==(g|0)&&(n=mb(b|0,a[n+8>>2]),0!=m[n]<<24>>24&&KC(n,i));n=a[Jr>>2];0!=(n|0)&&1==(a[q]|0)&&(n=mb(b|0,a[n+8>>2]),0!=m[n]<<24>>24&&KC(n,r));0!=m[b+161|0]<<24>>24&&(b=a[b+12>>2],tk(Kr(a[b+20>>2],b,a[f>>2]),c,d),a[i>>2]|=a[c>>2],a[q]|=a[d>>2]);h=c}function KC(b,r){var i=h;h+=4;a[r>>2]=0;if(0!=m[b]<<24>>24){for(var g=b,q=0;;){a[i>>2]=0;var c=g,g=i,d=cc,f=h;h+=4;d=f>>2;a[d]=0;var n=Lr(c,Mr|0,f);if((n|0)==(c|0)){for(;!(n=Lr(c,gh|0,f),(c|0)==(n|0));){c=n}c=Lr(c,xe|0,f)}else{c=n}n=a[d];0!=(n|0)&0==(n&7|0)&&(n|=1,a[d]=n);d=n;n=a[g>>2];d|=n;a[g>>2]=d;h=f;g=c;a[r>>2]|=a[i>>2]<<(q<<3);q=q+1|0;if(!(0!=m[g]<<24>>24&4>(q|0))){break}}}h=i}function Cg(x,r){for(var i,g=r&7,q=Bi|0;;){if(0==(a[q+12>>2]|0)){var c=0;break}if((g|0)==(a[q>>2]|0)){i=989;break}else{q=q+16|0}}989==i&&(c=q+4|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]));g=r>>>8&7;for(q=Bi|0;;){if(0==(a[q+12>>2]|0)){var d=c;break}if((g|0)==(a[q>>2]|0)){i=993;break}else{q=q+16|0}}993==i&&(d=q+4|0,d=c+(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]));c=r>>>16&7;for(g=Bi|0;;){if(0==(a[g+12>>2]|0)){var k=d;break}if((c|0)==(a[g>>2]|0)){i=997;break}else{g=g+16|0}}997==i&&(k=g+4|0,k=d+(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]));d=r>>>24&7;for(c=Bi|0;;){if(0==(a[c+12>>2]|0)){var n=k;i=1003;break}if((d|0)==(a[c>>2]|0)){break}else{c=c+16|0}}if(1003==i){return i=10*n,k=a[uk>>2],k=Xb(x|0,k,1,0),i*k}i=c+4|0;n=k+(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);i=10*n;k=a[uk>>2];k=Xb(x|0,k,1,0);return i*k}function Hn(x,r,i,g,q,c){var d,k,n,e,p=h;h+=80;d=p+8;var s=p+72,x=Cg(x,c),x=x*x;f[0]=x;a[s>>2]=b[0];a[s+4>>2]=b[1];a[q+12>>2]=c;c=g+3|0;k=(c<<4)+r|0;q=(q+32|0)>>2;n=k>>2;a[q]=a[n];a[q+1]=a[n+1];a[q+2]=a[n+2];a[q+3]=a[n+3];(g|0)>(i|0)&&(i=(g<<4)+r|0,k|=0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=(g<<4)+r+8|0,c=(c<<4)+r+8|0,c=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])-(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),g=i*i+c*c>2;n=((g<<4)+r|0)>>2;a[e]=a[n];a[e+1]=a[n+1];a[e+2]=a[n+2];a[e+3]=a[n+3];k=(d+32|0)>>2;i=((g+1<<4)+r|0)>>2;a[k]=a[i];a[k+1]=a[i+1];a[k+2]=a[i+2];a[k+3]=a[i+3];c=(d+16|0)>>2;x=((g+2<<4)+r|0)>>2;a[c]=a[x];a[c+1]=a[x+1];a[c+2]=a[x+2];a[c+3]=a[x+3];var j=d|0;d>>=2;a[d]=a[q];a[d+1]=a[q+1];a[d+2]=a[q+2];a[d+3]=a[q+3];a[p>>2]=j;a[p+4>>2]=s;vk(p,338,j,1);a[n]=a[e];a[n+1]=a[e+1];a[n+2]=a[e+2];a[n+3]=a[e+3];a[i]=a[k];a[i+1]=a[k+1];a[i+2]=a[k+2];a[i+3]=a[k+3];a[x]=a[c];a[x+1]=a[c+1];a[x+2]=a[c+2];a[x+3]=a[c+3];r=((g+3<<4)+r|0)>>2;a[r]=a[d];a[r+1]=a[d+1];a[r+2]=a[d+2];a[r+3]=a[d+3];h=p;return g}function In(x,r,i,g,q,c){var d,k,n,e=h;h+=80;var p=e+8,s=e+72,x=Cg(x,c),x=x*x;f[0]=x;a[s>>2]=b[0];a[s+4>>2]=b[1];a[q+8>>2]=c;c=(i<<4)+r|0;q=(q+16|0)>>2;d=c>>2;a[q]=a[d];a[q+1]=a[d+1];a[q+2]=a[d+2];a[q+3]=a[d+3];if((g|0)>(i|0)){c|=0;g=i+3|0;d=(g<<4)+r|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])-(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);d=(i<<4)+r+8|0;k=(g<<4)+r+8|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);var j=c*c+d*d>2;k=((j+3<<4)+r|0)>>2;a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];d=(p+16|0)>>2;c=((j+2<<4)+r|0)>>2;a[d]=a[c];a[d+1]=a[c+1];a[d+2]=a[c+2];a[d+3]=a[c+3];g=(p+32|0)>>2;x=((j+1<<4)+r|0)>>2;a[g]=a[x];a[g+1]=a[x+1];a[g+2]=a[x+2];a[g+3]=a[x+3];var m=p+48|0,i=m>>2;a[i]=a[q];a[i+1]=a[q+1];a[i+2]=a[q+2];a[i+3]=a[q+3];a[e>>2]=m;a[e+4>>2]=s;vk(e,338,p|0,0);r=((j<<4)+r|0)>>2;a[r]=a[i];a[r+1]=a[i+1];a[r+2]=a[i+2];a[r+3]=a[i+3];a[x]=a[g];a[x+1]=a[g+1];a[x+2]=a[g+2];a[x+3]=a[g+3];a[c]=a[d];a[c+1]=a[d+1];a[c+2]=a[d+2];a[c+3]=a[d+3];a[k]=a[n];a[k+1]=a[n+1];a[k+2]=a[n+2];a[k+3]=a[n+3];h=e;return j}function LC(x,r,i,g,q,c,d){var k,n,h,e,s,j,m;n=0!=(c|0);m=0==(d|0);if(n&(m^1)&(g|0)==(i|0)){h=(g<<4)+r|0;var i=h|0,u=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),i=(g<<4)+r+8|0;j=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);n=g+3|0;k=(n<<4)+r|0;m=(k|0)>>2;i=(b[0]=a[m],b[1]=a[m+1],f[0]);s=((n<<4)+r+8|0)>>2;n=(b[0]=a[s],b[1]=a[s+1],f[0]);e=Cg(x,c);var x=Cg(x,d),w=u-i,A=j-n,w=$c(w*w+A*A);x+e>2]=b[0];a[B+4>>2]=b[1];e=(A<<4)+r+8|0;f[0]=w;a[e>>2]=b[0];a[e+4>>2]=b[1];h>>=2;j>>=2;a[h]=a[j];a[h+1]=a[j+1];a[h+2]=a[j+2];a[h+3]=a[j+3];f[0]=x;a[m]=b[0];a[m+1]=b[1];f[0]=u;a[s]=b[0];a[s+1]=b[1];r=((g+2<<4)+r|0)>>2;g=k>>2;a[r]=a[g];a[r+1]=a[g+1];a[r+2]=a[g+2];a[r+3]=a[g+3];a[q+12>>2]=d;r=q+32|0;d=q+40|0;a[q+8>>2]=c;f[0]=i;a[r>>2]=b[0];a[r+4>>2]=b[1];f[0]=n;a[d>>2]=b[0];a[d+4>>2]=b[1]}else{if(!m){w=Cg(x,d);k=(g<<4)+r|0;u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);k=(g<<4)+r+8|0;j=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);m=g+3|0;h=(m<<4)+r|0;s=(h|0)>>2;k=(b[0]=a[s],b[1]=a[s+1],f[0]);e=((m<<4)+r+8|0)>>2;m=(b[0]=a[e],b[1]=a[e+1],f[0]);A=u-k;B=j-m;A=.9*$c(A*A+B*B);w=w>2]=b[0];a[P+4>>2]=b[1];u=(C<<4)+r+8|0;f[0]=j;a[u>>2]=b[0];a[u+4>>2]=b[1];f[0]=A;a[s]=b[0];a[s+1]=b[1];f[0]=B;a[e]=b[0];a[e+1]=b[1];g=((g+2<<4)+r|0)>>2;h>>=2;a[g]=a[h];a[g+1]=a[h+1];a[g+2]=a[h+2];a[g+3]=a[h+3];a[q+12>>2]=d;d=q+32|0;f[0]=k;a[d>>2]=b[0];a[d+4>>2]=b[1];d=q+40|0;f[0]=m;a[d>>2]=b[0];a[d+4>>2]=b[1];k=w}n&&(h=Cg(x,c),n=(i<<4)+r|0,d=n|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),g=(i<<4)+r+8|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),m=i+3|0,x=(m<<4)+r|0,x=(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0]),m=(m<<4)+r+8|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),s=d-x,u=g-m,s=.9*$c(s*s+u*u),g==m?(h=d>2]=b[0],a[j+4>>2]=b[1],h=(u<<4)+r+8|0,f[0]=s,a[h>>2]=b[0],a[h+4>>2]=b[1],n>>=2,k>>=2,a[n]=a[k],a[n+1]=a[k+1],a[n+2]=a[k+2],a[n+3]=a[k+3],i=i+2|0,n=(i<<4)+r|0,f[0]=x,a[n>>2]=b[0],a[n+4>>2]=b[1],r=(i<<4)+r+8|0,f[0]=m,a[r>>2]=b[0],a[r+4>>2]=b[1],a[q+8>>2]=c,c=q+16|0,f[0]=d,a[c>>2]=b[0],a[c+4>>2]=b[1],q=q+24|0,f[0]=g,a[q>>2]=b[0],a[q+4>>2]=b[1])}}function hh(x,r,i,g,q,c){var g=g-r,q=q-i,c=10*c/($c(g*g+q*q)+1e-4),d=(g+(0<=g?1e-4:-1e-4))*c,k=(q+(0<=q?1e-4:-1e-4))*c,n=.5*d,q=.5*k,g=r-q,c=i-n,q=q+r,n=n+i,h=g+d,e=c+k,s=q+d,d=n+k,i=h>s?h:s,i=q>i?q:i,r=e>d?e:d,r=n>r?n:r,h=h>2]=b[0];a[e+4>>2]=b[1];q=x+8|0;f[0]=c>2]=b[0];a[q+4>>2]=b[1];q=x+16|0;f[0]=g>i?g:i;a[q>>2]=b[0];a[q+4>>2]=b[1];x=x+24|0;f[0]=c>r?c:r;a[x>>2]=b[0];a[x+4>>2]=b[1]}function Ci(x,r,i,g,q,c,d,k,n){var e,p=h;h+=16;var s;e=(a[x+16>>2]+12|0)>>2;var j=a[e];a[e]=r;Ke(x,a[a[x>>2]+296>>2]);for(var r=q-i,q=c-g,m=10/($c(r*r+q*q)+1e-4),c=(r+(0<=r?1e-4:-1e-4))*m,r=(q+(0<=q?1e-4:-1e-4))*m,q=p|0,m=p+8|0,u=0,w=i,A=g;;){if(4<=(u|0)){s=1054;break}var B=n>>(u<<3)&255;if(0==(B|0)){s=1053;break}for(var g=p,i=x,C=c,P=r,T=d,gb=k,$e=cc,M=B&7,y=Bi|0;;){var O=a[y>>2];if(0==(O|0)){var D=w,Da=A;break}if((M|0)==(O|0)){$e=1058;break}else{y=y+16|0}}1058==$e&&(D=y+4|0,D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])*T,Da=D*C,P*=D,J[a[y+12>>2]](i,w,A,Da,P,T,gb,B),D=Da+w,Da=P+A);i=g|0;f[0]=D;a[i>>2]=b[0];a[i+4>>2]=b[1];g=g+8|0;f[0]=Da;a[g>>2]=b[0];a[g+4>>2]=b[1];u=u+1|0;w=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);A=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0])}1053==s?(a[e]=j,h=p):1054==s&&(a[e]=j,h=p)}function MC(x,r,i,g,q,c,d,k){var n,e,c=h;h+=80;var d=4>2;0==(k&16|0)?(f[0]=g,a[e]=b[0],a[e+1]=b[1],e=c+72|0,f[0]=q,a[e>>2]=b[0],a[e+4>>2]=b[1],e=c>>2,n>>=2,a[e]=a[n],a[e+1]=a[n+1],a[e+2]=a[n+2],a[e+3]=a[n+3],n=c+16|0,f[0]=g-p,a[n>>2]=b[0],a[n+4>>2]=b[1],n=c+24|0,f[0]=q-d,a[n>>2]=b[0],a[n+4>>2]=b[1],n=c+32|0,f[0]=r,a[n>>2]=b[0],a[n+4>>2]=b[1],r=c+40|0,f[0]=i,a[r>>2]=b[0],a[r+4>>2]=b[1],i=c+48|0,f[0]=g+p,a[i>>2]=b[0],a[i+4>>2]=b[1],i=c+56|0,f[0]=q+d,a[i>>2]=b[0],a[i+4>>2]=b[1]):(f[0]=r,a[e]=b[0],a[e+1]=b[1],e=c+72|0,f[0]=i,a[e>>2]=b[0],a[e+4>>2]=b[1],e=c>>2,n>>=2,a[e]=a[n],a[e+1]=a[n+1],a[e+2]=a[n+2],a[e+3]=a[n+3],n=c+16|0,f[0]=r-p,a[n>>2]=b[0],a[n+4>>2]=b[1],n=c+24|0,f[0]=i-d,a[n>>2]=b[0],a[n+4>>2]=b[1],n=c+32|0,f[0]=g,a[n>>2]=b[0],a[n+4>>2]=b[1],g=c+40|0,f[0]=q,a[g>>2]=b[0],a[g+4>>2]=b[1],q=c+48|0,f[0]=p+r,a[q>>2]=b[0],a[q+4>>2]=b[1],r=c+56|0,f[0]=d+i,a[r>>2]=b[0],a[r+4>>2]=b[1]);0!=(k&32|0)?zc(x,c|0,3,(k>>>3&1^1)&255):0==(k&64|0)?zc(x,c+16|0,3,(k>>>3&1^1)&255):zc(x,c+32|0,3,(k>>>3&1^1)&255);h=c}function NC(x,r,i,g,q,c,d,k){var n,e,p,s=h;h+=144;var j=4*c,m=k&16,j=j>=d|0==(m|0)?.45:.45*(d/j);if(1>2;0==(u|0)?(f[0]=n,a[p]=b[0],a[p+1]=b[1],n=s+136|0,f[0]=e,a[n>>2]=b[0],a[n+4>>2]=b[1],e=s>>2,n=A>>2,a[e]=a[n],a[e+1]=a[n+1],a[e+2]=a[n+2],a[e+3]=a[n+3],e=s+16|0,f[0]=r-m,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+24|0,f[0]=i-j,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+32|0,f[0]=w-d,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+40|0,f[0]=g-c,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+48|0,f[0]=r,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+56|0,f[0]=i,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+64|0,f[0]=r,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+72|0,f[0]=i,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+80|0,f[0]=r,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+88|0,f[0]=i,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+96|0,f[0]=w+d,a[e>>2]=b[0],a[e+4>>2]=b[1],d=s+104|0,f[0]=g+c,a[d>>2]=b[0],a[d+4>>2]=b[1],c=s+112|0,f[0]=m+r,a[c>>2]=b[0],a[c+4>>2]=b[1],m=s+120|0,f[0]=j+i):(f[0]=r,a[p]=b[0],a[p+1]=b[1],r=s+136|0,f[0]=i,a[r>>2]=b[0],a[r+4>>2]=b[1],i=s>>2,r=A>>2,a[i]=a[r],a[i+1]=a[r+1],a[i+2]=a[r+2],a[i+3]=a[r+3],i=s+16|0,f[0]=n-m,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+24|0,f[0]=e-j,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+32|0,f[0]=w-d,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+40|0,f[0]=g-c,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+48|0,f[0]=n-d,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+56|0,f[0]=e-c,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+64|0,f[0]=n,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+72|0,f[0]=e,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+80|0,f[0]=n+d,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+88|0,f[0]=e+c,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+96|0,f[0]=w+d,a[i>>2]=b[0],a[i+4>>2]=b[1],d=s+104|0,f[0]=g+c,a[d>>2]=b[0],a[d+4>>2]=b[1],c=s+112|0,f[0]=n+m,a[c>>2]=b[0],a[c+4>>2]=b[1],m=s+120|0,f[0]=e+j);a[m>>2]=b[0];a[m+4>>2]=b[1];0!=(k&32|0)?zc(x,q,6,1):0==(k&64|0)?zc(x,q,9,1):zc(x,s+48|0,6,1);h=s}function OC(x,r,i,g,q,c,d,k){var n,e,p,s,j,m=h;h+=64;var u=r+g,w=i+q,A=.2*g+r,B=.2*q+i,C=.6*g+r,P=.6*q+i,T=m|0;j=(m|0)>>2;f[0]=A-q;a[j]=b[0];a[j+1]=b[1];s=(m+8|0)>>2;f[0]=B+g;a[s]=b[0];a[s+1]=b[1];p=(m+16|0)>>2;f[0]=A+q;a[p]=b[0];a[p+1]=b[1];e=(m+24|0)>>2;f[0]=B-g;a[e]=b[0];a[e+1]=b[1];n=(m+32|0)>>2;f[0]=C+q;a[n]=b[0];a[n+1]=b[1];d=(m+40|0)>>2;f[0]=P-g;a[d]=b[0];a[d+1]=b[1];c=(m+48|0)>>2;f[0]=C-q;a[c]=b[0];a[c+1]=b[1];q=(m+56|0)>>2;f[0]=P+g;a[q]=b[0];a[q+1]=b[1];0==(k&32|0)?0!=(k&64|0)&&(f[0]=A,a[p]=b[0],a[p+1]=b[1],f[0]=B,a[e]=b[0],a[e+1]=b[1],f[0]=C,a[n]=b[0],a[n+1]=b[1],f[0]=P,a[d]=b[0],a[d+1]=b[1]):(f[0]=A,a[j]=b[0],a[j+1]=b[1],f[0]=B,a[s]=b[0],a[s+1]=b[1],f[0]=C,a[c]=b[0],a[c+1]=b[1],f[0]=P,a[q]=b[0],a[q+1]=b[1]);zc(x,T,4,1);f[0]=r;a[j]=b[0];a[j+1]=b[1];f[0]=i;a[s]=b[0];a[s+1]=b[1];f[0]=u;a[p]=b[0];a[p+1]=b[1];f[0]=w;a[e]=b[0];a[e+1]=b[1];Gd(x,T,2);h=m}function PC(x,r,i,g,q,c,d,k){var n,e,p,s,j,m,u,c=h;h+=64;n=-.4*q;var d=.4*g,w=.8*g+r,A=.8*q+i,g=r+g,B=i+q,C=c|0;u=(c|0)>>2;f[0]=n+r;a[u]=b[0];a[u+1]=b[1];m=(c+8|0)>>2;f[0]=d+i;a[m]=b[0];a[m+1]=b[1];j=(c+16|0)>>2;f[0]=r-n;a[j]=b[0];a[j+1]=b[1];s=(c+24|0)>>2;f[0]=i-d;a[s]=b[0];a[s+1]=b[1];p=(c+32|0)>>2;f[0]=w-n;a[p]=b[0];a[p+1]=b[1];e=(c+40|0)>>2;f[0]=A-d;a[e]=b[0];a[e+1]=b[1];q=(c+48|0)>>2;f[0]=w+n;a[q]=b[0];a[q+1]=b[1];n=(c+56|0)>>2;f[0]=A+d;a[n]=b[0];a[n+1]=b[1];0==(k&32|0)?0!=(k&64|0)&&(f[0]=r,a[j]=b[0],a[j+1]=b[1],f[0]=i,a[s]=b[0],a[s+1]=b[1],f[0]=w,a[p]=b[0],a[p+1]=b[1],f[0]=A,a[e]=b[0],a[e+1]=b[1]):(f[0]=r,a[u]=b[0],a[u+1]=b[1],f[0]=i,a[m]=b[0],a[m+1]=b[1],f[0]=w,a[q]=b[0],a[q+1]=b[1],f[0]=A,a[n]=b[0],a[n+1]=b[1]);zc(x,C,4,(k>>>3&1^1)&255);f[0]=w;a[u]=b[0];a[u+1]=b[1];f[0]=A;a[m]=b[0];a[m+1]=b[1];f[0]=g;a[j]=b[0];a[j+1]=b[1];f[0]=B;a[s]=b[0];a[s+1]=b[1];Gd(x,C,2);h=c}function QC(x,r,i,g,q,c,d,k){c=h;h+=80;var n=-q/3,e=g/3,p=.5*g+r,s=.5*q+i,d=c|0,j=c+64|0,m=j|0;f[0]=r+g;a[m>>2]=b[0];a[m+4>>2]=b[1];g=c+72|0;f[0]=i+q;a[g>>2]=b[0];a[g+4>>2]=b[1];q=c>>2;g=j>>2;a[q]=a[g];a[q+1]=a[g+1];a[q+2]=a[g+2];a[q+3]=a[g+3];q=c+16|0;f[0]=p+n;a[q>>2]=b[0];a[q+4>>2]=b[1];q=c+24|0;f[0]=s+e;a[q>>2]=b[0];a[q+4>>2]=b[1];q=c+32|0;g=q|0;f[0]=r;a[g>>2]=b[0];a[g+4>>2]=b[1];r=c+40|0;f[0]=i;a[r>>2]=b[0];a[r+4>>2]=b[1];i=c+48|0;f[0]=p-n;a[i>>2]=b[0];a[i+4>>2]=b[1];i=c+56|0;f[0]=s-e;a[i>>2]=b[0];a[i+4>>2]=b[1];0!=(k&32|0)?zc(x,q,3,(k>>>3&1^1)&255):(i=(k>>>3&1^1)&255,0==(k&64|0)?zc(x,d,4,i):zc(x,d,3,i));h=c}function Lr(b,r,i){for(var g;;){var q=a[r>>2];if(0==(q|0)){var c=b;g=1124;break}var d=Ba(q);if(0==(td(b,q,d)|0)){break}else{r=r+8|0}}if(1124==g){return c}a[i>>2]|=a[r+4>>2];return b+d|0}function RC(x){var r,i=h;h+=52;r=i>>2;var g=V(x|0,Di|0);if(0==(g|0)||0==m[g]<<24>>24){return h=i,0}0!=m[ld]<<24>>24&&mk(ih);var q=DQa(g,0,80);0==(q|0)&&(la(0,SC|0,(j=h,h+=4,a[j>>2]=a[x+12>>2],j)),la(3,TC|0,(j=h,h+=4,a[j>>2]=g,j)));if(0==m[ld]<<24>>24){return r=q,h=i,r}x=Jn();EQa(q,i);Va(a[oa>>2],UC|0,(j=h,h+=12,a[j>>2]=a[r],f[0]=x,a[j+4>>2]=b[0],a[j+8>>2]=b[1],j));x=a[r+3];Va(a[oa>>2],VC|0,(j=h,h+=8,a[j>>2]=a[r+2],a[j+4>>2]=x,j));x=a[r+5];Va(a[oa>>2],WC|0,(j=h,h+=8,a[j>>2]=a[r+4],a[j+4>>2]=x,j));x=a[r+7];Va(a[oa>>2],XC|0,(j=h,h+=8,a[j>>2]=a[r+6],a[j+4>>2]=x,j));Va(a[oa>>2],YC|0,(j=h,h+=4,a[j>>2]=a[r+1],j));Va(a[oa>>2],ZC|0,(j=h,h+=4,a[j>>2]=a[r+8],j));r=q;h=i;return r}function wk(x){var r,i=h,g=fa(244);r=g>>2;0==(g|0)&&la(1,$C|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));var q=x+16|0,x=a[q>>2];a[r]=x;a[q>>2]=g;if(0==(x|0)){a[r+22]=3,a[r+23]=0,r=g+96|0,f[0]=1,a[r>>2]=b[0],a[r+4>>2]=b[1]}else{for(var q=(x+16|0)>>2,c=(g+16|0)>>2,d=q+9;q>2;c=(g+52|0)>>2;for(d=q+9;q>2];a[r+23]=a[x+92>>2];r=x+96|0;r=(b[0]=a[r>>2],b[1]=a[r+4>>2],f[0]);x=g+96|0;f[0]=r;a[x>>2]=b[0];a[x+4>>2]=b[1]}h=i;return g}function Ei(b){var r=b+16|0,i=a[r>>2],b=i>>2;0==(i|0)&&sa(Fi|0,110,aD|0,Nr|0);G(a[b+38]);G(a[b+37]);G(a[b+39]);G(a[b+40]);G(a[b+41]);G(a[b+42]);G(a[b+43]);G(a[b+44]);G(a[b+45]);G(a[b+46]);G(a[b+47]);G(a[b+48]);G(a[b+49]);G(a[b+53]);G(a[b+56]);G(a[b+55]);a[r>>2]=a[b];G(i)}function Or(b,r,i,g,q,c,d){var f,n=a[b+16>>2];f=n>>2;b=a[b+148>>2];0==(b&32768|0)|0==(r|0)||(a[f+33]=r);0==(b&65536|0)?r=0:(a[f+38]=ec(c,d),0==(i|0)?r=0:0==m[i]<<24>>24?r=0:(a[f+37]=ec(i,d),r=1));i=0==(b&4194304|0);a:do{if(i){c=r}else{do{if(0!=(g|0)&&0!=m[g]<<24>>24){a[f+42]=ec(g,d);g=n+200|0;a[g>>2]|=1;c=1;break a}}while(0);c=a[f+33];0==(c|0)?c=r:(a[f+42]=Hb(c),c=1)}}while(0);if(0==(b&8388608|0)|0==(q|0)||0==m[q]<<24>>24){return c}a[f+46]=ec(q,d);return 1}function Kn(b,r,i){var g=h;h+=32;var b=a[a[a[a[b>>2]+128>>2]+44>>2]+92>>2],q=V(r,Pr|0);if(0!=(q|0)&&0!=m[q]<<24>>24){return h=g,q}q=a[r>>2]<<28>>28;if(1==(q|0)){var c=jh|0,d=a[r+16>>2]}else{2==(q|0)?(c=Dg|0,d=a[r+20>>2]):3==(q|0)&&(c=Yf|0,d=a[a[r+36>>2]+16>>2])}if(0==(b|0)){r=(i+4|0)>>2,b=i+8|0}else{db(i,b);var q=i+4|0,r=q>>2,f=a[r],b=i+8|0;f>>>0>2]>>>0||(na(i,1),f=a[r]);a[r]=f+1|0;m[f]=95;r=q>>2}db(i,c);c=g|0;Ma(c,bD|0,(j=h,h+=4,a[j>>2]=d,j));db(i,c);d=a[r];d>>>0>2]>>>0||(na(i,1),d=a[r]);m[d]=0;i=a[i>>2];a[r]=i;h=g;return i}function Ln(b,r){var i,g,q,c,d=h;c=r>>2;r=h;h+=32;a[r>>2]=a[c];a[r+4>>2]=a[c+1];a[r+8>>2]=a[c+2];a[r+12>>2]=a[c+3];a[r+16>>2]=a[c+4];a[r+20>>2]=a[c+5];a[r+24>>2]=a[c+6];a[r+28>>2]=a[c+7];i=a[b+16>>2];q=i>>2;c=a[b+148>>2];if(0!=(c&4259840|0)){var f=0!=(c&131072|0);g=i+204|0;f?(a[g>>2]=0,a[q+52]=2):(a[g>>2]=2,a[q+52]=4);g=i+212|0;G(a[g>>2]);q=fa(a[q+52]<<4);i=q>>2;a[g>>2]=q;g=r>>2;a[i]=a[g];a[i+1]=a[g+1];a[i+2]=a[g+2];a[i+3]=a[g+3];g=(q+16|0)>>2;i=(r+16|0)>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];0==(c&8192|0)&&Re(b,q,q,2);f||Mn(q)}h=d}function xk(x,r){var i,g,q,c,d=h;h+=144;q=d+64;g=d+128;c=r|0;var k=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);c=(x+16|0)>>2;var n=(b[0]=a[c],b[1]=a[c+1],f[0]),e=k>n;if(!e&&(i=x|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),k>=i)){var p=r+8|0,s=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),p=x+24|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]);if(s<=p){var j=x+8|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);if(s>=j&&(s=r+16|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),!(s>n|s>2],b[1]=a[s+4>>2],f[0]),!(s>p|s>2],b[1]=a[s+4>>2],f[0]),!(s>n|s>2],b[1]=a[s+4>>2],f[0]),!(s>p|s>2],b[1]=a[s+4>>2],f[0]),!(s>n|s>2],b[1]=a[i+4>>2],f[0]),!(i>p|i>2;g=(x+8|0)>>2;i=(x|0)>>2;if(e){f[0]=k,a[c]=b[0],a[c+1]=b[1]}else{if(k<(b[0]=a[i],b[1]=a[i+1],f[0])){f[0]=k,a[i]=b[0],a[i+1]=b[1]}k=n}n=r+8|0;n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);e=(b[0]=a[q],b[1]=a[q+1],f[0]);if(n>e){f[0]=n,a[q]=b[0],a[q+1]=b[1]}else{if(n<(b[0]=a[g],b[1]=a[g+1],f[0])){f[0]=n,a[g]=b[0],a[g+1]=b[1]}n=e}e=r+16|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(e>k){f[0]=e,a[c]=b[0],a[c+1]=b[1],k=e}else{if(e<(b[0]=a[i],b[1]=a[i+1],f[0])){f[0]=e,a[i]=b[0],a[i+1]=b[1]}}e=r+24|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(e>n){f[0]=e,a[q]=b[0],a[q+1]=b[1],n=e}else{if(e<(b[0]=a[g],b[1]=a[g+1],f[0])){f[0]=e,a[g]=b[0],a[g+1]=b[1]}}e=r+32|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(e>k){f[0]=e,a[c]=b[0],a[c+1]=b[1],k=e}else{if(e<(b[0]=a[i],b[1]=a[i+1],f[0])){f[0]=e,a[i]=b[0],a[i+1]=b[1]}}e=r+40|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(e>n){f[0]=e,a[q]=b[0],a[q+1]=b[1],n=e}else{if(e<(b[0]=a[g],b[1]=a[g+1],f[0])){f[0]=e,a[g]=b[0],a[g+1]=b[1]}}e=r+48|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(e>k){f[0]=e,a[c]=b[0],a[c+1]=b[1]}else{if(e<(b[0]=a[i],b[1]=a[i+1],f[0])){f[0]=e,a[i]=b[0],a[i+1]=b[1]}}c=r+56|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);if(c>n){f[0]=c,a[q]=b[0],a[q+1]=b[1]}else{if(c<(b[0]=a[g],b[1]=a[g+1],f[0])){f[0]=c,a[g]=b[0],a[g+1]=b[1]}}}h=d}function cD(x){var r=x|0,r=(b[0]=a[r>>2],b[1]=a[r+4>>2],f[0]),i=x+8|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),g=x+48|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),q=x+56|0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),c=x+16|0,d=x+24|0,c=dD(r,i,g,q,(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])),d=x+32|0,x=x+40|0;return 4>c&4>dD(r,i,g,q,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0]))&1}function Qr(b){var r=a[b+192>>2];-1<(r|0)?(r|0)<(a[b+160>>2]|0)?(r=a[b+196>>2],b=-1<(r|0)?(r|0)<(a[b+164>>2]|0):0):b=0:b=0;return b&1}function Rr(x,r){var i,g,q=x>>2;i=a[q+37];var c=x+348|0,d=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),c=x+424|0;g=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);var c=d*g/72,k=x+480|0;f[0]=c;a[k>>2]=b[0];a[k+4>>2]=b[1];var k=x+432|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),d=d*k/72,n=x+488|0;f[0]=d;a[n>>2]=b[0];a[n+4>>2]=b[1];n=x+512|0;f[0]=g/72;a[n>>2]=b[0];a[n+4>>2]=b[1];k/=72;g=(x+520|0)>>2;f[0]=k;a[g]=b[0];a[g+1]=b[1];0!=(i&4096|a[Ic>>2]|0)&&(f[0]=-1*k,a[g]=b[0],a[g+1]=b[1]);g=a[q+110]>>>0;0==(a[q+89]|0)?(k=x+360|0,f[0]=g/c,a[k>>2]=b[0],a[k+4>>2]=b[1],c=x+368|0,f[0]=(a[q+111]>>>0)/d,a[c>>2]=b[0],a[c+4>>2]=b[1]):(k=x+368|0,f[0]=g/d,a[k>>2]=b[0],a[k+4>>2]=b[1],d=x+360|0,f[0]=(a[q+111]>>>0)/c,a[d>>2]=b[0],a[d+4>>2]=b[1]);q=r|0;yk(x,jc(q,$(q,Nn|0),Y|0));q=wk(x)>>2;a[q+1]=0;a[q+2]=r;a[q+3]=0;Sr(x,a[r+48>>2],r|0);c=a[x>>2];q=a[x+60>>2];if(0!=(q|0)){d=a[q+8>>2];if(0!=(d|0)){J[d](x)}d=V(r|0,zk|0);if(0!=(d|0)&&0!=m[d]<<24>>24&&(c=c+300|0,Tr(a[x+68>>2],d,c),q=a[q+92>>2],0!=(q|0))){J[q](x,c)}}0!=(i&2|0)&&eD(x,r);i=ra(r);q=0==(i|0);a:do{if(!q){for(c=i;;){if(m[c+132|0]=0,c=ba(r,c),0==(c|0)){break a}}}}while(0);i=h;q=a[a[x>>2]+280>>2];c=x+152|0;a[c>>2]=q;1<(q|0)&&0==(a[x+148>>2]&64|0)&&(la(0,fD|0,(j=h,h+=4,a[j>>2]=a[x+52>>2],j)),a[c>>2]=1);a[x+156>>2]=1;h=i;i=(x+152|0)>>2;c=a[i];q=x+156|0;if(0!=((a[q>>2]|0)<=(c|0)&1)<<24>>24){for(;;){1<(c|0)&&(c=a[x+60>>2],0!=(c|0)&&(c=a[c+16>>2],0!=(c|0)&&(d=a[x+156>>2],J[c](x,a[a[a[x>>2]+276>>2]+(d<<2)>>2],d,a[x+152>>2]))));c=x+168|0;d=x+192|0;g=a[c+4>>2];a[d>>2]=a[c>>2];a[d+4>>2]=g;c=0==Qr(x)<<24>>24;a:do{if(!c){for(;;){if(gD(x,r),hD(x),0==Qr(x)<<24>>24){break a}}}}while(0);if(1<(a[i]|0)&&(c=a[x+60>>2],0!=(c|0)&&(c=a[c+20>>2],0!=(c|0)))){J[c](x)}c=x+156|0;a[c>>2]=a[c>>2]+1|0;c=a[i];if(0==((a[q>>2]|0)<=(c|0)&1)<<24>>24){break}}}i=a[x+60>>2];if(0!=(i|0)&&(i=a[i+12>>2],0!=(i|0))){J[i](x)}i=a[x+76>>2];if(0!=(i|0)&&(i=a[i+4>>2],0!=(i|0))){J[i](x)}iD(x);Ei(x)}function eD(a,b){$b(a,qe|0);var i=b|0,g=V(i,zk|0);0!=(g|0)&&0!=m[g]<<24>>24&&$b(a,g);i=V(i,Eg|0);0!=(i|0)&&0!=m[i]<<24>>24&&Pa(a,i);jD(a,b);i=ra(b);if(0!=(i|0)){for(;;){var g=i|0,q=V(g,kh|0);0!=(q|0)&&0!=m[q]<<24>>24&&Pa(a,q);q=V(g,Ak|0);0!=(q|0)&&0!=m[q]<<24>>24&&$b(a,q);g=V(g,Eg|0);0!=(g|0)&&0!=m[g]<<24>>24&&Pa(a,g);g=Ib(b,i);q=0==(g|0);a:do{if(!q){for(var c=g;;){var d=c|0,f=V(d,kh|0);do{if(0!=(f|0)&&0!=m[f]<<24>>24){if(0==(Jc(f,58)|0)){Pa(a,f)}else{var n=Hb(f),h=he(n,zf|0),e=0==(h|0);b:do{if(!e){for(var j=h;;){if(0!=m[j]<<24>>24&&Pa(a,j),j=he(0,zf|0),0==(j|0)){break b}}}}while(0);G(n)}}}while(0);d=V(d,Eg|0);0!=(d|0)&&0!=m[d]<<24>>24&&Pa(a,d);c=yb(b,c);if(0==(c|0)){break a}}}}while(0);i=ba(b,i);if(0==(i|0)){break}}}}function gD(b,r){var i,g,q,c=a[b+16>>2];q=c>>2;var d=a[b+148>>2];Bk(V(r|0,lh|0));kD(b);var f=a[b+60>>2];if(0!=(f|0)&&(f=a[f+24>>2],0!=(f|0))){J[f](b)}Pa(b,Ac|0);$b(b,qe|0);if(0!=(d&4259840|0)&&!(0==(a[q+37]|0)&&0==(a[q+50]&1|0))){if(0==(d&655360|0)){var n=0,f=0}else{var n=d&131072,h=n>>>16^2,f=h+2|0;a[q+51]=h;h=fa(f<<4);g=h>>2;i=(b+284|0)>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];g=(h+16|0)>>2;i=(b+300|0)>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];0==(n|0)&&Mn(h);n=h}0==(d&8192|0)&&Re(b,n,n,f);a[q+53]=n;a[q+52]=f}0!=(d&32768|0)&&(f=a[r+48>>2],0!=(f|0)&&(a[q+33]=a[f>>2]));f=0!=(d&4|0);f||(c=c+148|0,0==(a[c>>2]|0)&&0==(a[q+50]&1|0)||(Ln(b,b+252|0),ad(b,a[c>>2],a[q+42],a[q+46],a[q+38])));if(1==(a[b+152>>2]|0)){var e,n=V(r|0,zk|0);0==(n|0)?(c=1,n=hf|0):(h=0==m[n]<<24>>24,c=h&1,n=h?hf|0:n);h=a[b+148>>2];i=116==m[n]<<24>>24;if(0==(h&256|0)){var j=i?0==(ka(n,On|0)|0)?hf|0:n:n;e=2410}else{i?0!=(ka(n,On|0)|0)&&(j=n,e=2410):(j=n,e=2410)}2410==e&&0==(h&33554432|0)|0==(c|0)&&($b(b,j),Pa(b,j),mh(b,b+252|0,1));e=a[a[r+44>>2]+88>>2];0!=(e|0)&&lD(b,e)}e=a[r+48>>2];0!=(e|0)&&Fg(b,4,e);if(!f){if(0==(a[q+37]|0)&&0==(a[q+50]&1|0)){Ur(b,r,d);mD(b);return}Se(b)}Ur(b,r,d);mD(b)}function hD(b){var r,i=b>>2,g=h;h+=16;var q=g+8;r=b+192|0;var c=r|0,d=b+196|0,f=a[d>>2],n=a[i+47];a[g>>2]=a[i+46]+a[c>>2]|0;a[g+4>>2]=n+f|0;r>>=2;n=a[g>>2];f=a[g+4>>2];a[r]=n;a[r+1]=f;0==Qr(b)<<24>>24&&(b=a[i+45],0==(b|0)?(c=a[i+43],a[d>>2]=c,d=n):(d=a[i+42],a[c>>2]=d,c=f),a[q>>2]=a[i+44]+d|0,a[q+4>>2]=b+c|0,i=a[q+4>>2],a[r]=a[q>>2],a[r+1]=i);h=g}function nD(b){var r=a[yi>>2];0==(r|0)&&(r=Nc(oD,a[Pn>>2]),a[yi>>2]=r);if(0!=(J[a[r>>2]](r,b,4)|0)){return 0}var r=a[yi>>2],i=a[r>>2],b=Dc(b);J[i](r,b,1);return 1}function Ck(x,r,i){var g,q,c,d,k,n=h;h+=68;k=n>>2;var e=n+4,p=r+208|0;if(1<=(a[p>>2]|0)){var j=r+212|0,v=0!=(i&4|0),t=x+16|0,u=0==(i&8|0),w=e|0;d=e>>2;for(var A=e+32|0,r=A>>2,A=A|0,B=e+16|0,C=e+8|0,P=e+24|0,T=e|0,gb=e+48|0,$e=e+40|0,e=e+56|0,M=1;;){var y=a[a[j>>2]+(M<<2)>>2];do{c=x;q=y;var O=2>(a[c+152>>2]|0);a:do{if(O){var D=1}else{if(g=q|0,g=jc(g,$(g,Qn|0),Y|0),0!=Gi(c,g)<<24>>24){D=1}else{if(0!=m[g]<<24>>24){D=0}else{g=q;for(var Da=ra(g);;){if(0==(Da|0)){D=0;break a}if(0!=pD(c,q,Da)<<24>>24){D=1;break a}Da=ba(g,Da)}}}}}while(0);if(0!=D<<24>>24){v&&Ck(x,y,i);c=x;q=y;O=cc;O=wk(c)>>2;a[O+1]=1;a[O+2]=q;a[O+3]=1;Sr(c,a[q+48>>2],q|0);q=a[c+60>>2];if(0!=(q|0)&&(q=a[q+32>>2],0!=(q|0))){J[q](c)}q=a[t>>2];c=q>>2;q=(q+148|0)>>2;O=0==(a[q]|0)?0!=(a[c+50]&1|0):1;g=y|0;Bk(V(g,lh|0));v|O^1||(Ln(x,y+52|0),ad(x,a[q],a[c+42],a[c+46],a[c+38]));a[k]=0;var Da=n,ia=cc,Je=V(y|0,Rn|0),F=0==(Je|0);a:do{if(F){var E=0,sc=0}else{if(0==m[Je]<<24>>24){sc=E=0}else{nh(Je);for(var G=Cc|0,lf=0;;){for(;;){var H=a[G>>2];if(0==(H|0)){E=lf;sc=Cc|0;break a}if(0==(ka(H,Hi|0)|0)){ia=1489;break}if(0==(ka(H,Vr|0)|0)){var hc=G;break}else{G=G+4|0}}if(1489==ia){ia=0,G=G+4|0,lf|=1}else{for(;;){var H=hc+4|0,ca=a[H>>2];a[hc>>2]=ca;if(0==(ca|0)){break}else{hc=H}}lf|=2}}}}}while(0);a[Da>>2]=E;Da=sc;0==(Da|0)?Da=0:(Ke(x,Da),Da=a[k]&1);ia=m[y+148|0]&255;0==(ia&1|0)?0!=(ia&2|0)?(ia=Aa(g,a[Wr>>2],Dk|0),Je=1,F=Aa(g,a[Xr>>2],Ek|0)):0!=(ia&8|0)?(ia=Aa(g,a[qD>>2],Fk|0),Je=1,F=Aa(g,a[rD>>2],Gk|0)):0!=(ia&4|0)?(ia=Aa(g,a[sD>>2],Hk|0),Je=1,F=Aa(g,a[tD>>2],Ik|0)):(ia=V(g,kh|0),Je=0==(ia|0)?0:0==m[ia]<<24>>24?0:ia,ia=V(g,uD|0),ia=0==(ia|0)?Je:0==m[ia]<<24>>24?Je:ia,F=V(g,Ak|0),F=0==(F|0)?Je:0==m[F]<<24>>24?Je:F,0!=(Da|0)?Je=Da:(Da=V(g,zk|0),0==(Da|0)?Je=0:(lf=0==m[Da]<<24>>24,Je=lf&1^1,F=lf?F:Da))):(ia=Aa(g,a[Wr>>2],Jk|0),Je=1,F=Aa(g,a[Xr>>2],Kk|0));Da=0==(ia|0)?Ac|0:ia;ia=0==(F|0)?qe|0:F;F=a[Yr>>2];0!=(F|0)&&(lf=mb(g,a[F+8>>2]),0!=(lf|0)&&0!=m[lf]<<24>>24&&Zr(x,Xb(g,F,1,0)));F=a[k];0==(F&2|0)?(Pa(x,Da),$b(x,ia),0!=(Zf(g,a[Sn>>2],1)|0)?mh(x,y+52|0,Je&255):0!=(Je|0)&&((ia|0)!=(Da|0)&&Pa(x,ia),mh(x,y+52|0,Je&255))):0!=(Zf(g,a[Sn>>2],1)|Je|0)&&(g=(y+52|0)>>2,a[d]=a[g],a[d+1]=a[g+1],a[d+2]=a[g+2],a[d+3]=a[g+3],g=(y+68|0)>>2,a[r]=a[g],a[r+1]=a[g+1],a[r+2]=a[g+2],a[r+3]=a[g+3],g=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),f[0]=g,a[B>>2]=b[0],a[B+4>>2]=b[1],g=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),f[0]=g,a[P>>2]=b[0],a[P+4>>2]=b[1],g=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),f[0]=g,a[gb>>2]=b[0],a[gb+4>>2]=b[1],g=(b[0]=a[$e>>2],b[1]=a[$e+4>>2],f[0]),f[0]=g,a[e>>2]=b[0],a[e+4>>2]=b[1],Ii(x,ia,Da,w,4,F,F&1));g=a[y+48>>2];0!=(g|0)&&Fg(x,5,g);O&&(v&&(Ln(x,y+52|0),ad(x,a[q],a[c+42],a[c+46],a[c+38])),Se(x));a:do{if(!u&&(c=y,q=ra(c),0!=(q|0))){for(;;){oh(x,q);O=Ib(c,q);g=0==(O|0);b:do{if(!g){for(Da=O;;){if(Ji(x,Da),Da=yb(c,Da),0==(Da|0)){break b}}}}while(0);q=ba(c,q);if(0==(q|0)){break a}}}}while(0);c=x;q=a[c+60>>2];if(0!=(q|0)&&(q=a[q+36>>2],0!=(q|0))){J[q](c)}Ei(c);v||Ck(x,y,i)}}while(0);M=M+1|0;if((M|0)>(a[p>>2]|0)){break}}}h=n}function oh(b,r){var i=a[b>>2],g=r+24|0,q;if(q=0!=(a[g>>2]|0)){if(q=0!=pD(b,a[r+20>>2],r)<<24>>24){var c,d;q=h;d=(b+252|0)>>2;c=h;h+=32;a[c>>2]=a[d];a[c+4>>2]=a[d+1];a[c+8>>2]=a[d+2];a[c+12>>2]=a[d+3];a[c+16>>2]=a[d+4];a[c+20>>2]=a[d+5];a[c+24>>2]=a[d+6];a[c+28>>2]=a[d+7];c=ph(r+64|0,c)&255;h=q;q=0!=c<<24>>24}}if(q&&(q=r+132|0,i=a[i+28>>2],(m[q]<<24>>24|0)!=(i|0))){m[q]=i&255;yk(b,a[r+12>>2]);i=r|0;q=jc(i,a[$r>>2],Y|0);0!=m[q]<<24>>24&&yk(b,q);i=jc(i,a[Ki>>2],Y|0);q=0==m[i]<<24>>24;a:do{if(!q){nh(i);for(q=Cc|0;;){i=q+4|0;q=a[q>>2];if(0==(q|0)){break a}if(105!=m[q]<<24>>24){q=i}else{if(0==(ka(q,qh|0)|0)){break}else{q=i}}}return}}while(0);vD(b,r);J[a[a[a[g>>2]+4>>2]+20>>2]](b,r);g=a[r+124>>2];0!=(g|0)&&Fg(b,10,g);g=a[b+60>>2];if(0!=(g|0)&&(g=a[g+60>>2],0!=(g|0))){J[g](b)}Ei(b)}}function Ji(b,r){var i,g,q=h;g=(b+252|0)>>2;i=h;h+=32;a[i>>2]=a[g];a[i+4>>2]=a[g+1];a[i+8>>2]=a[g+2];a[i+12>>2]=a[g+3];a[i+16>>2]=a[g+4];a[i+20>>2]=a[g+5];a[i+24>>2]=a[g+6];a[i+28>>2]=a[g+7];var c;g=a[r+24>>2];if(0==(g|0)){c=1823}else{if(0==(ph(g+8|0,i)|0)){c=1823}else{var d=1}}1823==c&&(c=a[r+108>>2],0!=(c|0)&&0!=as(c,i)<<24>>24?d=1:(c=a[r+120>>2],d=0!=(c|0)&&0!=as(c,i)<<24>>24?1:0));h=q;if(0!=d<<24>>24){i=(r+12|0)>>2;q=2>(a[b+152>>2]|0);a:do{if(q){var f=1}else{if(c=jc(r|0,a[Tn>>2],Y|0),0!=Gi(b,c)<<24>>24){f=1}else{if(0!=m[c]<<24>>24){f=0}else{c=r+16|0;d=r+12|0;for(g=0;;){if(2<=(g|0)){f=0;break a}var n=jc(a[(1>(g|0)?c:d)>>2]|0,a[Un>>2],Y|0);if(0==m[n]<<24>>24){f=1;break a}if(0==Gi(b,n)<<24>>24){g=g+1|0}else{f=1;break a}}}}}}while(0);if(0!=f<<24>>24){q=r+16|0;f=Gb(Ba(a[a[q>>2]+12>>2])+Ba(a[a[i]+12>>2])+3|0);Rf(f,a[a[q>>2]+12>>2]);q=f+Ba(f)|0;0==(a[a[a[i]+20>>2]>>2]&16|0)?(m[q]=m[Af|0],m[q+1]=m[(Af|0)+1],m[q+2]=m[(Af|0)+2]):(m[q]=m[Bf|0],m[q+1]=m[(Bf|0)+1],m[q+2]=m[(Bf|0)+2]);uf(f,a[a[i]+12>>2]);yk(b,f);G(f);f=r|0;i=jc(f,a[bs>>2],Y|0);0!=m[i]<<24>>24&&yk(b,i);f=jc(f,a[Vn>>2],Y|0);i=0==m[f]<<24>>24;a:do{if(i){q=0}else{nh(f);for(i=Cc|0;;){f=i+4|0;i=a[i>>2];if(0==(i|0)){q=Cc|0;break a}if(105!=m[i]<<24>>24){i=f}else{if(0==(ka(i,qh|0)|0)){break}else{i=f}}}return}}while(0);wD(b,r,q);xD(b,r,q);yD(b)}}}function nh(b){var r,i=h;h+=148;var g,q=i+128,c=i+132;m[cs]||(fc(Ec,128,zD|0),m[cs]=1);fc(c,128,i|0);a[q>>2]=b;r=(c+4|0)>>2;var d=c+8|0,f=c|0,n=0,e=0;a:for(;;){for(var p=n;;){for(var n=q,s=c,v=cc,t=a[n>>2];;){v=m[t];if(0==v<<24>>24){var u=0;break}if(0==(ah(v<<24>>24)|0)&&(v=m[t],44!=v<<24>>24)){u=v;break}t=t+1|0}var w=u<<24>>24;b:do{if(40==(w|0)||41==(w|0)){var A=w,B=t+1|0}else{if(0==(w|0)){A=0,B=t}else{if(0!=AD(w)<<24>>24){A=1,B=t}else{for(var v=(s+4|0)>>2,C=s+8|0,P=t,T=u;;){var gb=a[v];gb>>>0>2]>>>0||(na(s,1),gb=a[v]);a[v]=gb+1|0;m[gb]=T;P=P+1|0;T=m[P];if(0!=AD(T<<24>>24)<<24>>24){A=1;B=P;break b}}}}}}while(0);a[n>>2]=B;n=A;if(0==(n|0)){g=1553;break a}else{if(41==(n|0)){if(0==p<<24>>24){g=1541;break a}else{p=0}}else{if(40==(n|0)){if(0==p<<24>>24){p=1}else{g=1539;break a}}else{break}}}}if(0==p<<24>>24){if(63==(e|0)){g=1544;break}n=a[Ec+4>>2];n>>>0>2]>>>0||(na(Ec,1),n=a[Ec+4>>2]);a[Ec+4>>2]=n+1|0;m[n]=0;a[Cc+(e<<2)>>2]=a[Ec+4>>2];e=e+1|0}n=a[r];n>>>0>2]>>>0||(na(c,1),n=a[r]);m[n]=0;n=a[f>>2];a[r]=n;db(Ec,n);n=a[Ec+4>>2];n>>>0>2]>>>0||(na(Ec,1),n=a[Ec+4>>2]);a[Ec+4>>2]=n+1|0;m[n]=0;n=p}if(1544==g){return la(0,BD|0,(j=h,h+=4,a[j>>2]=b,j)),a[Cc+252>>2]=0,uc(c),h=i,Cc|0}if(1539==g){return la(1,CD|0,(j=h,h+=4,a[j>>2]=b,j)),a[Cc>>2]=0,uc(c),h=i,Cc|0}if(1553==g){if(0!=p<<24>>24){return la(1,DD|0,(j=h,h+=4,a[j>>2]=b,j)),a[Cc>>2]=0,uc(c),h=i,Cc|0}a[Cc+(e<<2)>>2]=0;uc(c);b=a[Ec+4>>2];b>>>0>2]>>>0||(na(Ec,1),b=a[Ec+4>>2]);m[b]=0;a[Ec+4>>2]=a[Ec>>2];h=i;return Cc|0}if(1541==g){return la(1,ED|0,(j=h,h+=4,a[j>>2]=b,j)),a[Cc>>2]=0,uc(c),h=i,Cc|0}}function Gg(b){var r=a[Wn>>2];0!=(b|0)?(a[Wn>>2]=r+1|0,0==(r|0)&&(b=Hb(mi()),a[ds>>2]=b,mi())):0<(r|0)&&(b=r-1|0,a[Wn>>2]=b,0==(b|0)&&(mi(),G(a[ds>>2])))}function Br(x,r){var i,g,q,c,d=h,k;c=(r+44|0)>>2;if(0==(a[c]|0)){return la(1,FD|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),h=d,-1}q=ra(r);if(0!=(q|0)){for(;;){var n=r,e=q,p=e+32|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),s=e+104|0,s=p-(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);g=e+64|0;f[0]=s;a[g>>2]=b[0];a[g+4>>2]=b[1];s=e+40|0;s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);g=e+96|0;g=.5*(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);var v=e+72|0;f[0]=s-g;a[v>>2]=b[0];a[v+4>>2]=b[1];v=e+112|0;p+=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]);v=e+80|0;f[0]=p;a[v>>2]=b[0];a[v+4>>2]=b[1];p=e+88|0;f[0]=s+g;a[p>>2]=b[0];a[p+4>>2]=b[1];e=Ib(n,e);if(0!=(e|0)){for(;!(p=a[e+24>>2],0!=(p|0)&&GD(p),e=yb(n,e),0==(e|0));){}}q=ba(r,q);if(0==(q|0)){break}}}HD(x,r);q=x+272|0;n=a[q>>2];0!=(n|0)&&(G(n),a[q>>2]=0);q=(x+276|0)>>2;n=a[q];0!=(n|0)&&(G(n),a[q]=0);n=V(r|0,ID|0);0==(n|0)?(a[q]=0,a[x+280>>2]=1):a[x+280>>2]=JD(x,r,n);a[x+104>>2]=Oc|0;a[x+108>>2]=a[KD>>2];Gg(1);n=x+56|0;e=x|0;p=x+156|0;q=(x+164|0)>>2;s=x+28|0;g=a[x+120>>2];v=a[x+124>>2]=g;for(g=v>>2;;){if(0==(v|0)){k=1616;break}k=a[n>>2];0==(k|0)?(a[g+5]=0,a[g+6]=0):(a[g+5]=a[k+8>>2],a[g+6]=a[a[n>>2]+12>>2]);var t=v+12|0;a[t>>2]=e;a[g+7]=a[p>>2];if(0==(a[c]|0)){k=1597;break}i=(v+52|0)>>2;k=Bn(v,a[i]);a[g+14]=k;if(21==(k|0)){k=v+148|0,a[k>>2]|=1}else{if(24==(k|0)){k=v+148|0,a[k>>2]|=520}else{if(999==(k|0)){k=1599;break}else{k=v+148|0;var u=a,w=k>>2,A;a:{A=V(r|0,LD|0);if(0!=(A|0)){var B=m[A];if(110==B<<24>>24){if(0==(ka(A+1|0,MD|0)|0)){A=1;break a}}else{if(101==B<<24>>24&&0==(ka(A+1|0,ND|0)|0)){A=16;break a}}}A=0}u[w]=A|a[k>>2]}}}u=a[q];w=0==(u|0);a:do{if(!w){do{if(0!=(a[u+148>>2]&32|0)&&0==(ka(a[i],a[u+52>>2])|0)){k=a[Xn>>2];if(0==(k|0)){k=1610;break a}a[k+8>>2]=v;a[g+9]=a[k+36>>2];k=1612;break a}}while(0);Cr(u);a[q]=0;a[s>>2]=0}a[Xn>>2]=0;k=1610}while(0);if(1610==k){k=0;u=v;w=a[u+60>>2];if(0==(OD(u)|0)){if(0!=(w|0)&&(w=a[w>>2],0!=(w|0))){J[w](u)}u=0}else{u=1}0==(u|0)&&(a[q]=v,k=1612)}1612==k&&(k=0,a[g+2]=0,a[g+26]=PD,u=v,w=A=cc,A=a[u>>2],0!=m[A+264|0]<<24>>24?(w=(u+236|0)>>2,A=(A+188|0)>>2,a[w]=a[A],a[w+1]=a[A+1],a[w+2]=a[A+2],a[w+3]=a[A+3]):(300==(a[u+56>>2]|0)?(w=a[u+68>>2]+4|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),A=u+244|0,f[0]=w,a[A>>2]=b[0],a[A+4>>2]=b[1],u=u+236|0,f[0]=w):(w=u+244|0,f[0]=4,a[w>>2]=b[0],a[w+4>>2]=b[1],u=u+236|0,f[0]=4),a[u>>2]=b[0],a[u+4>>2]=b[1]),u=v,w=A=A=w=w=cc,A=a[u>>2],0!=m[A+265|0]<<24>>24?(w=(u+408|0)>>2,A=(A+172|0)>>2,a[w]=a[A],a[w+1]=a[A+1],a[w+2]=a[A+2],a[w+3]=a[A+3]):(w=a[u+56>>2],300==(w|0)?(A=(u+408|0)>>2,w=(a[u+84>>2]+4|0)>>2,a[A]=a[w],a[A+1]=a[w+1],a[A+2]=a[w+2],a[A+3]=a[w+3]):2==(w|0)||3==(w|0)||4==(w|0)||22==(w|0)||21==(w|0)||30==(w|0)?(w=u+416|0,f[0]=36,a[w>>2]=b[0],a[w+4>>2]=b[1],u=u+408|0,f[0]=36,a[u>>2]=b[0],a[u+4>>2]=b[1]):(w=(u+408|0)>>2,a[w]=0,a[w+1]=0,a[w+2]=0,a[w+3]=0)),w=a[c]+24|0,u=v,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),A=B=B=A=cc,B=a[a[u>>2]+164>>2],0!=w?(A=u+432|0,f[0]=w,a[A>>2]=b[0],a[A+4>>2]=b[1],u=u+424|0,f[0]=w,a[u>>2]=b[0],a[u+4>>2]=b[1]):0!=(B|0)&&0!=m[B+124|0]<<24>>24?(A=(u+424|0)>>2,B=(B+108|0)>>2,a[A]=a[B],a[A+1]=a[B+1],a[A+2]=a[B+2],a[A+3]=a[B+3]):(w=u+424|0,300==(a[u+56>>2]|0)?(B=w>>2,A=(a[u+84>>2]+36|0)>>2,a[B]=a[A],a[B+1]=a[A+1],a[B+2]=a[A+2],a[B+3]=a[A+3]):(u=u+432|0,f[0]=96,a[u>>2]=b[0],a[u+4>>2]=b[1],u=w|0,f[0]=96,a[u>>2]=b[0],a[u+4>>2]=b[1])),QD(v,r),RD(v,r),0==(a[g+37]&128|0)&&(a[a[t>>2]+20>>2]=a[Yn>>2],Rr(v,r)),a[Xn>>2]=v);g=cc;g=(x+124|0)>>2;v=a[g];t=a[v+4>>2];0!=(t|0)&&(u=t+52|0,0==(a[u>>2]|0)&&(a[u>>2]=a[v+52>>2]));v=a[g]=t;g=v>>2}if(1597==k){return la(1,SD|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Gg(0),h=d,-1}if(1599==k){return la(1,TD|0,(j=h,h+=4,a[j>>2]=a[i],j)),Gg(0),h=d,-1}if(1616==k){return Gg(0),h=d,0}}function HD(x,r){var i,g,q,c,d,k,n=x>>2,e=h;h+=16;d=e>>2;q=e+8;g=q>>2;a[n+32]=r;c=x+265|0;m[c]=0;i=r|0;k=V(i,Zn|0);if(0!=(k|0)){var p=Cd(k,Lk|0,(j=h,h+=8,a[j>>2]=e,a[j+4>>2]=q,j));if(0<(p|0)){var s=72*(b[0]=a[d],b[1]=a[d+1],f[0]);k=(x+180|0)>>2;f[0]=s;a[k]=b[0];a[k+1]=b[1];var v=x+172|0;f[0]=s;a[v>>2]=b[0];a[v+4>>2]=b[1];1<(p|0)&&(p=72*(b[0]=a[g],b[1]=a[g+1],f[0]),f[0]=p,a[k]=b[0],a[k+1]=b[1]);m[c]=1}}c=x+264|0;m[c]=0;k=V(i,UD|0);0!=(k|0)&&(q=Cd(k,Lk|0,(j=h,h+=8,a[j>>2]=e,a[j+4>>2]=q,j)),0<(q|0)&&(k=72*(b[0]=a[d],b[1]=a[d+1],f[0]),d=(x+196|0)>>2,f[0]=k,a[d]=b[0],a[d+1]=b[1],p=x+188|0,f[0]=k,a[p>>2]=b[0],a[p+4>>2]=b[1],1<(q|0)&&(g=72*(b[0]=a[g],b[1]=a[g+1],f[0]),f[0]=g,a[d]=b[0],a[d+1]=b[1]),m[c]=1));d=x+266|0;m[d]=0;g=(r+44|0)>>2;c=(x+204|0)>>2;q=(a[g]+48|0)>>2;a[c]=a[q];a[c+1]=a[q+1];a[c+2]=a[q+2];a[c+3]=a[q+3];q=a[g];c=q+48|0;.001<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])?(c=q+56|0,.001<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])?(m[d]=1,g=a[g]):g=q):g=q;a[n+65]=0==m[g+81|0]<<24>>24?0:90;g=x+168|0;a[g>>2]=VD|0;i=V(i,WD|0);0!=(i|0)&&0!=m[i]<<24>>24&&(a[g>>2]=i);g=(x+228|0)>>2;i=(r+52|0)>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];a[g+4]=a[i+4];a[g+5]=a[i+5];a[g+6]=a[i+6];a[g+7]=a[i+7];i=r+32|0;g=$(a[i>>2]|0,es|0);a[Sn>>2]=g;i=$(a[i>>2]|0,$n|0);a[Yr>>2]=i;i=r+40|0;a[n+71]=Aa(a[a[i>>2]>>2]|0,a[ao>>2],Li|0);i=Xb(a[a[i>>2]>>2]|0,a[bo>>2],14,1);g=x+288|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];a[n+74]=co|0;a[n+40]=a[r+12>>2];h=e}function QD(x,r){var i,g,q,c,d,k=h;h+=40;d=k>>2;var n=k+8;c=n>>2;var e=k+16;q=e>>2;var p=k+24;i=p>>2;var s=k+32;g=s>>2;var v=a[x>>2],t=v+244|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),u=v+252|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),w=v+228|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),A=v+236|0,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),B=x+236|0,C=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),B=w-C,P=x+204|0;f[0]=B;a[P>>2]=b[0];a[P+4>>2]=b[1];var P=x+244|0,T=(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]),P=A-T,gb=x+212|0;f[0]=P;a[gb>>2]=b[0];a[gb+4>>2]=b[1];C=t+C;gb=x+220|0;f[0]=C;a[gb>>2]=b[0];a[gb+4>>2]=b[1];T=u+T;gb=x+228|0;f[0]=T;a[gb>>2]=b[0];a[gb+4>>2]=b[1];B=C-B;P=T-P;f[0]=1;a[q]=b[0];a[q+1]=b[1];C=a[r+44>>2];T=C+64|0;T=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]);.001>2],b[1]=a[gb+4>>2],f[0]),.001>24&T>B&gb>P)?C=1:(C=T/B,T=gb/P,C=C>2]=a[v+260>>2];v=B*C;f[0]=v;a[d]=b[0];a[d+1]=b[1];w=P*C;f[0]=w;a[c]=b[0];a[c+1]=b[1];A=V(r|0,XD|0);0==(A|0)?(g=u,i=(x+360|0)>>2,f[0]=v,a[i]=b[0],a[i+1]=b[1],i=(x+368|0)>>2,f[0]=w,a[i]=b[0],a[i+1]=b[1],i=(x+348|0)>>2,f[0]=C,a[i]=b[0],a[i+1]=b[1],i=(x+332|0)>>2,f[0]=t):(v=Gb(Ba(A)+1|0),t=Gb(Ba(A)+1|0),4==(Cd(A,YD|0,(j=h,h+=16,a[j>>2]=k,a[j+4>>2]=n,a[j+8>>2]=e,a[j+12>>2]=v,j))|0)?(n=Mi(a[r+32>>2],v),0!=(n|0)&&(n=n+24|0,e=n+8|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),f[0]=e,a[i]=b[0],a[i+1]=b[1],n=n+16|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),f[0]=n,a[g]=b[0],a[g+1]=b[1])):4!=(Cd(A,ZD|0,(j=h,h+=20,a[j>>2]=k,a[j+4>>2]=n,a[j+8>>2]=e,a[j+12>>2]=v,a[j+16>>2]=t,j))|0)?Cd(A,$D|0,(j=h,h+=20,a[j>>2]=k,a[j+4>>2]=n,a[j+8>>2]=e,a[j+12>>2]=p,a[j+16>>2]=s,j)):(n=Mi(a[r+32>>2],v),0!=(n|0)&&(n=n+24|0,e=n+8|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),f[0]=e,a[i]=b[0],a[i+1]=b[1],n=n+16|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),f[0]=n,a[g]=b[0],a[g+1]=b[1])),G(v),G(t),d=(b[0]=a[d],b[1]=a[d+1],f[0]),c=(b[0]=a[c],b[1]=a[c+1],f[0]),n=(b[0]=a[q],b[1]=a[q+1],f[0]),q=(b[0]=a[i],b[1]=a[i+1],f[0]),g=(b[0]=a[g],b[1]=a[g+1],f[0]),i=(x+360|0)>>2,f[0]=d,a[i]=b[0],a[i+1]=b[1],i=(x+368|0)>>2,f[0]=c,a[i]=b[0],a[i+1]=b[1],i=(x+348|0)>>2,f[0]=n,a[i]=b[0],a[i+1]=b[1],i=(x+332|0)>>2,f[0]=q);a[i]=b[0];a[i+1]=b[1];i=x+340|0;i>>=2;f[0]=g;a[i]=b[0];a[i+1]=b[1];h=k}function AD(a){return 40==(a|0)||41==(a|0)||44==(a|0)||0==(a|0)?1:0}function Mk(x,r,i){var g=x|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];x=x+8|0;f[0]=r;a[x>>2]=b[0];a[x+4>>2]=b[1]}function eo(b,r,i){i=i<<24>>24;66==(i|0)?(r=0,i=1):82==(i|0)?(a[r+168>>2]=a[r+160>>2]-1|0,r=-1,i=0):84==(i|0)?(a[r+172>>2]=a[r+164>>2]-1|0,r=0,i=-1):(r=76==(i|0)?1:0,i=0);a[b>>2]=r;a[b+4>>2]=i}function fo(b,r,i){a[b>>2]=i;a[b+4>>2]=r}function RD(x,r){var i,g,q,c,d,k,n,e=x>>2,p=h;h+=128;var s,v=p+16,t=p+24,u=p+32,w=p+40,A=p+48,B=p+64,C=p+80,P=p+96,T=p+112,gb=p+120,y=a[e],M=x+360|0,X=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]),O=x+368|0,D=(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]);n=(x+356|0)>>2;if(0==(a[n]|0)){var Da=X,ia=D}else{Mk(p,X,D);var F=p|0,E=p+8|0,Da=(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0]),ia=(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0])}var G=x+408|0,sc=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0]),J=x+416|0,H=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0]);if(0==m[y+266|0]<<24>>24){s=1737}else{if(0==(a[e+37]&32|0)){s=1737}else{var I=y+204|0,hc=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0])-2*sc,ca=y+212|0,K=(b[0]=a[ca>>2],b[1]=a[ca+4>>2],f[0])-2*H;if(1e-4>hc){var L=a[e+40]=1}else{var zb=Da/hc&-1,ja=x+160|0;a[ja>>2]=zb;if(1e-4>2]=aa}else{L=zb}}if(1e-4>K){var da=a[e+41]=1}else{var ea=ia/K&-1,xa=x+164|0;a[xa>>2]=ea;if(1e-4>2]=N}else{da=ea}}a[e+50]=da*L|0;var Od=hc,ha=K,ga=Da>2],b[1]=a[ya+4>>2],f[0])-2*sc,wa=0>Uf?0:Uf,Ab=tb+28|0,Fa=(b[0]=a[Ab>>2],b[1]=a[Ab+4>>2],f[0])-2*H;0>Fa?(Rb=wa,Xe=0):(Rb=wa,Xe=Fa)}a[e+50]=1;a[e+41]=1;a[e+40]=1;var Ga=Rb>2;var Bg=(Od+2*sc)*(b[0]=a[k],b[1]=a[k+1],f[0])/72;a[e+110]=(0>Bg?Bg-.5:Bg+.5)&-1;d=(x+432|0)>>2;var ta=(ha+2*H)*(b[0]=a[d],b[1]=a[d+1],f[0])/72;a[e+111]=(0>ta?ta-.5:ta+.5)&-1;var Ka=x+176|0;c=(y+168|0)>>2;q=(x+168|0)>>2;a[q]=0;a[q+1]=0;a[q+2]=0;a[q+3]=0;a[q+4]=0;a[q+5]=0;eo(v,x,m[a[c]]);var za=v|0;g=za>>2;var ma=v+4|0;i=ma>>2;var pa=a[i],Q=Ka|0;a[Q>>2]=a[g];var Ha=Ka+4|0;a[Ha>>2]=pa;eo(t,x,m[a[c]+1|0]);var Ra=x+184|0,W=a[t>>2],V=a[t+4>>2];a[Ra>>2]=W;a[Ra+4>>2]=V;var La=W+a[Ka>>2]|0;if(1==((-1<(La|0)?La:-La|0)|0)){var S=V+a[e+45]|0;if(1!=((-1<(S|0)?S:-S|0)|0)){s=1750}}else{s=1750}if(1750==s){eo(u,x,66);var Ya=a[u+4>>2];a[Ka>>2]=a[u>>2];a[Ka+4>>2]=Ya;eo(w,x,76);var Y=a[w+4>>2],za=Ra|0;g=za>>2;a[g]=a[w>>2];ma=Ra+4|0;i=ma>>2;a[i]=Y;la(0,aE|0,(j=h,h+=4,a[j>>2]=a[c],j))}if(0==m[a[r+44>>2]+82|0]<<24>>24){var Za=0,U=0}else{var ab=Od>ga?.5*(Od-ga):0;ha>Zd?(Za=ab,U=.5*(ha-Zd)):(Za=ab,U=0)}if(0==(a[n]|0)){var $a=ga,jb=Zd,Ca=sc,Ia=H,eb=Za,ub=U}else{Mk(A,ga,Zd);var Sa=A|0,R=(b[0]=a[Sa>>2],b[1]=a[Sa+4>>2],f[0]),ua=A+8|0,Oa=(b[0]=a[ua>>2],b[1]=a[ua+4>>2],f[0]);Mk(B,Od,ha);Mk(C,sc,H);var Wa=C|0,pb=(b[0]=a[Wa>>2],b[1]=a[Wa+4>>2],f[0]),ob=C+8|0,bb=(b[0]=a[ob>>2],b[1]=a[ob+4>>2],f[0]);Mk(P,Za,U);var qb=P|0,$=P+8|0,$a=R,jb=Oa,Ca=pb,Ia=bb,eb=(b[0]=a[qb>>2],b[1]=a[qb+4>>2],f[0]),ub=(b[0]=a[$>>2],b[1]=a[$+4>>2],f[0])}var kb=Ca+eb,fa=x+376|0;f[0]=kb;a[fa>>2]=b[0];a[fa+4>>2]=b[1];var vb=Ia+ub,xb=x+384|0;f[0]=vb;a[xb>>2]=b[0];a[xb+4>>2]=b[1];var Z=kb+$a,nb=x+392|0;f[0]=Z;a[nb>>2]=b[0];a[nb+4>>2]=b[1];var rb=vb+jb,lb=x+400|0;f[0]=rb;a[lb>>2]=b[0];a[lb+4>>2]=b[1];var Ta=x+348|0,cb=(b[0]=a[Ta>>2],b[1]=a[Ta+4>>2],f[0]),fb=x+316|0;f[0]=$a/cb;a[fb>>2]=b[0];a[fb+4>>2]=b[1];var Ua=x+324|0;f[0]=jb/cb;a[Ua>>2]=b[0];a[Ua+4>>2]=b[1];var sb=(b[0]=a[k],b[1]=a[k+1],f[0]),Na=kb*sb/72,Fb=(0>Na?Na-.5:Na+.5)&-1,Db=x+448|0;a[Db>>2]=Fb;var Ob=(b[0]=a[d],b[1]=a[d+1],f[0]),Eb=vb*Ob/72,ka=(0>Eb?Eb-.5:Eb+.5)&-1;a[e+113]=ka;var Bb=Z*sb/72,Ja=x+456|0,sa=Ja|0;a[sa>>2]=(0>Bb?Bb-.5:Bb+.5)&-1;var ra=rb*Ob/72,xf=x+460|0;a[xf>>2]=(0>ra?ra-.5:ra+.5)&-1;if(0!=(a[n]|0)){fo(T,Fb,ka);var qa=a[T+4>>2];a[Db>>2]=a[T>>2];a[Db+4>>2]=qa;fo(gb,a[sa>>2],a[xf>>2]);za=gb|0;g=za>>2;ma=gb+4|0;i=ma>>2;var ba=a[i],Q=Ja|0;a[Q>>2]=a[g];Ha=Ja+4|0;a[Ha>>2]=ba}h=p}function JD(b,r,i){var g=V(r|0,bE|0),r=(b+268|0)>>2;a[r]=0==(g|0)?cE|0:g;i=Hb(i);a[b+272>>2]=i;g=he(i,a[r]);if(0==(g|0)){return 0}for(var b=(b+276|0)>>2,q=i=0;;){var c=i+1|0;if((c|0)>(q|0)){var q=q+128|0,d=a[b],d=0==(d|0)?Cb(q<<2):wb(d,q<<2);a[b]=d}else{d=a[b]}a[d+(c<<2)>>2]=g;g=he(0,a[r]);if(0==(g|0)){break}else{i=c}}if(0==(c|0)){return 0}r=wb(a[b],(c<<2)+8|0);a[b]=r;a[r>>2]=0;a[a[b]+(i+2<<2)>>2]=0;return c}function GD(x){var r,i,g,q,c,d,k,n=h;h+=128;var e=n+32,p=n+64,j=n+96;k=(x+4|0)>>2;0<(a[k]|0)||sa(Fi|0,3408,dE|0,eE|0);var m=x|0,t=a[m>>2];d=t>>2;var u=a[d],w=a[d+1],A=a[d+2],B=a[d+3],C=t+16|0,P=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),T=t+24|0,gb=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),y=t+32|0,M=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),X=t+40|0,O=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]);fs(n,t);var D=n|0,Da=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),ia=n+8|0,F=(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0]),E=n+16|0,G=(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0]),sc=n+24|0,J=(b[0]=a[sc>>2],b[1]=a[sc+4>>2],f[0]);if(0<(a[k]|0)){for(var H=e|0,I=e+8|0,hc=e+16|0,ca=e+24|0,K=j|0,L=j+8|0,zb=j+16|0,ja=j+24|0,aa=p|0,da=p+8|0,ea=p+16|0,xa=p+24|0,N=J,Od=G,ha=F,ga=Da,Zd=0,Rb=u,Xe=w,tb=A,ya=B,Q=P,wa=gb,Ab=M,Fa=O;;){if(0<(Zd|0)){var Ga=a[m>>2];r=Ga>>2;var W=Ga+48*Zd|0,ta=a[W>>2],Ka=a[r+(12*Zd|0)+1],za=a[r+(12*Zd|0)+2],ma=a[r+(12*Zd|0)+3],pa=Ga+48*Zd+16|0,S=(b[0]=a[pa>>2],b[1]=a[pa+4>>2],f[0]),Ha=Ga+48*Zd+24|0,Ra=(b[0]=a[Ha>>2],b[1]=a[Ha+4>>2],f[0]),V=Ga+48*Zd+32|0,U=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]),La=Ga+48*Zd+40|0,Y=(b[0]=a[La>>2],b[1]=a[La+4>>2],f[0]);fs(e,W);var Ya=(b[0]=a[H>>2],b[1]=a[H+4>>2],f[0]),R=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0]),Za=(b[0]=a[hc>>2],b[1]=a[hc+4>>2],f[0]),la=(b[0]=a[ca>>2],b[1]=a[ca+4>>2],f[0]),ab=gaZa?Od:Za,Ca=N>la?N:la,Ia=ta,eb=Ka,ub=za,Sa=ma,$=S,ua=Ra,Oa=U,Wa=Y}else{ab=ga,$a=ha,jb=Od,Ca=N,Ia=Rb,eb=Xe,ub=tb,Sa=ya,$=Q,ua=wa,Oa=Ab,Wa=Fa}if(0==(ub|0)){var pb=ab,ob=$a,bb=jb,qb=Ca}else{var fa=Ia|0,kb=Ia+8|0;hh(p,$,ua,(b[0]=a[fa>>2],b[1]=a[fa+4>>2],f[0]),(b[0]=a[kb>>2],b[1]=a[kb+4>>2],f[0]),1);var Z=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),vb=(b[0]=a[da>>2],b[1]=a[da+4>>2],f[0]),xb=(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0]),ka=(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]),pb=abxb?jb:xb,qb=Ca>ka?Ca:ka}if(0==(Sa|0)){var nb=pb,rb=ob,lb=bb,Ta=qb}else{var cb=eb-1|0,fb=(cb<<4)+Ia|0,Ua=(cb<<4)+Ia+8|0;hh(j,Oa,Wa,(b[0]=a[fb>>2],b[1]=a[fb+4>>2],f[0]),(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0]),1);var sb=(b[0]=a[K>>2],b[1]=a[K+4>>2],f[0]),Na=(b[0]=a[L>>2],b[1]=a[L+4>>2],f[0]),Fb=(b[0]=a[zb>>2],b[1]=a[zb+4>>2],f[0]),Db=(b[0]=a[ja>>2],b[1]=a[ja+4>>2],f[0]),nb=pbFb?bb:Fb,Ta=qb>Db?qb:Db}var Ob=Zd+1|0;if((Ob|0)<(a[k]|0)){N=Ta,Od=lb,ha=rb,ga=nb,Zd=Ob,Rb=Ia,Xe=eb,tb=ub,ya=Sa,Q=$,wa=ua,Ab=Oa,Fa=Wa}else{Eb=Ta;ne=lb;Bb=rb;Ja=nb;break}}ra=x+8|0;c=ra>>2;f[0]=Ja;a[c]=b[0];a[c+1]=b[1];qa=x+16|0;q=qa>>2;f[0]=Bb;a[q]=b[0];a[q+1]=b[1];ba=x+24|0;g=ba>>2;f[0]=ne;a[g]=b[0];a[g+1]=b[1];na=x+32|0}else{var Eb=J,ne=G,Bb=F,Ja=Da,ra=x+8|0;c=ra>>2;f[0]=Ja;a[c]=b[0];a[c+1]=b[1];var qa=x+16|0;q=qa>>2;f[0]=Bb;a[q]=b[0];a[q+1]=b[1];var ba=x+24|0;g=ba>>2;f[0]=ne;a[g]=b[0];a[g+1]=b[1];var na=x+32|0}i=na>>2;f[0]=Eb;a[i]=b[0];a[i+1]=b[1];h=n}function fs(x,r){var i=h,g=r,r=h;h+=48;for(var g=g>>2,q=r>>2,c=g+12;g>2];0<(g|0)||sa(Fi|0,3382,gs|0,fE|0);1!=(g%3|0)&&sa(Fi|0,3383,gs|0,gE|0);var q=a[r>>2],c=q|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d=q+8|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),k=1<(g|0);a:do{if(k){for(var n=c,e=d,p=c,j=d,m=1;;){var t=(m<<4)+q|0,u=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),t=(m<<4)+q+8|0,w=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),t=m+1|0,A=(t<<4)+q|0,B=(t<<4)+q+8|0,t=m+2|0,u=.5*(u+(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])),w=.5*(w+(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0])),n=nu?p:u,j=j>w?j:w,u=(t<<4)+q|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),t=(t<<4)+q+8|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),n=nu?p:u,j=j>t?j:t,m=m+3|0;if((m|0)>=(g|0)){var C=n,P=e,T=p,gb=j;break a}}}else{C=c,P=d,T=c,gb=d}}while(0);g=x|0;f[0]=C;a[g>>2]=b[0];a[g+4>>2]=b[1];C=x+8|0;f[0]=P;a[C>>2]=b[0];a[C+4>>2]=b[1];P=x+16|0;f[0]=T;a[P>>2]=b[0];a[P+4>>2]=b[1];T=x+24|0;f[0]=gb;a[T>>2]=b[0];a[T+4>>2]=b[1];h=i}function wD(x,r,i){var g,q,c,d=r>>2,k=h;h+=156;var n;c=k>>2;var e=k+4,p=k+8,j=k+12,v=k+28,t=a[x+148>>2];a[c]=0;a[e>>2]=0;a[p>>2]=0;var u=wk(x);q=u>>2;a[q+1]=3;a[q+2]=r;a[q+3]=9;0!=(i|0)&&0!=(a[d+6]|0)&&Ke(x,i);var w=a[hs>>2];if(0!=(w|0)){var A=r|0,B=mb(A,a[w+8>>2]);0!=(B|0)&&0!=m[B]<<24>>24&&Zr(x,Xb(A,w,1,0))}if(0!=(t&16777216|0)){var C=a[d+4];if(2<(D[a[C+20>>2]+206>>1]&65535)){var P=a[C+148>>2]+16|0,T=72*(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]),gb=u+116|0;f[0]=(0>T?T-.5:T+.5)&-1|0;a[gb>>2]=b[0];a[gb+4>>2]=b[1];var y=a[a[d+3]+148>>2]+16|0,M=72*(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),X=u+124|0;f[0]=(0>M?M-.5:M+.5)&-1|0;a[X>>2]=b[0];a[X+4>>2]=b[1]}else{g=(u+116|0)>>2,a[g]=0,a[g+1]=0,a[g+2]=0,a[g+3]=0}}if(0!=(t&32768|0)){var O=a[d+27];if(0==(O|0)){var Dn=a[q+33]}else{var Da=a[O>>2],Dn=a[q+33]=Da}var ia=u+136|0;a[ia>>2]=Dn;var F=u+144|0;a[F>>2]=Dn;var E=u+140|0;a[E>>2]=Dn;var Tf=a[d+30];0!=(Tf|0)&&(a[ia>>2]=a[Tf>>2]);var sc=a[d+29];0!=(sc|0)&&(a[E>>2]=a[sc>>2]);var AC=a[d+28];0!=(AC|0)&&(a[F>>2]=a[AC>>2])}var H=0==(t&65536|0);a:do{if(H){var I=0}else{fc(j,128,v|0);var hc=r|0;a[q+38]=ec(Kn(x,hc,j),hc);uc(j);var ca=V(hc,Ni|0);if(0==(ca|0)){n=1867}else{if(0==m[ca]<<24>>24){n=1867}else{var K=ca;n=1869}}if(1867==n){var L=V(hc,Oi|0);if(0==(L|0)){var zb=0}else{0==m[L]<<24>>24?zb=0:(K=L,n=1869)}}1869==n&&(zb=ec(K,hc));var ja=V(hc,hE|0);if(0==(ja|0)){n=1872}else{if(0==m[ja]<<24>>24){n=1872}else{var aa=ja;n=1874}}if(1872==n){var da=V(hc,iE|0);0!=(da|0)&&0!=m[da]<<24>>24?(aa=da,n=1874):0!=(zb|0)&&(a[q+37]=Hb(zb))}1874==n&&(a[q+37]=ec(aa,hc));var ea=V(hc,jE|0);if(0==(ea|0)){n=1879}else{if(0==m[ea]<<24>>24){n=1879}else{var xa=ea;n=1881}}if(1879==n){var N=V(hc,kE|0);0!=(N|0)&&0!=m[N]<<24>>24?(xa=N,n=1881):0!=(zb|0)&&(a[q+39]=Hb(zb))}1881==n&&(a[q+39]=ec(xa,hc));var Od=V(hc,lE|0);if(0==(Od|0)){n=1886}else{if(0==m[Od]<<24>>24){n=1886}else{var ha=Od;n=1888}}if(1886==n){var ga=V(hc,mE|0);0!=(ga|0)&&0!=m[ga]<<24>>24?(ha=ga,n=1888):0!=(zb|0)&&(a[q+40]=Hb(zb))}if(1888==n){a[q+40]=ec(ha,hc);var Zd=u+200|0;a[Zd>>2]|=128}var Rb=V(hc,nE|0);if(0==(Rb|0)){n=1893}else{if(0==m[Rb]<<24>>24){n=1893}else{var Q=Rb}}do{if(1893==n){var tb=V(hc,oE|0);if(0!=(tb|0)&&0!=m[tb]<<24>>24){Q=tb}else{if(0==(zb|0)){I=0;break a}a[q+41]=Hb(zb);I=zb;break a}}}while(0);a[q+41]=ec(Q,hc);var ya=u+200|0;a[ya>>2]|=256;I=zb}}while(0);var W=0==(t&8388608|0);a:do{if(W){var wa=0}else{var Ab=r|0,Fa=V(Ab,is|0),Ga=0==(Fa|0)?0:0==m[Fa]<<24>>24?0:ec(Fa,Ab),S=V(Ab,pE|0);if(0==(S|0)){n=1905}else{if(0==m[S]<<24>>24){n=1905}else{var ta=u+200|0;a[ta>>2]|=64;a[q+46]=ec(S,Ab)}}1905==n&&0!=(Ga|0)&&(a[q+46]=Hb(Ga));var Ka=V(Ab,qE|0);0==(Ka|0)?n=1910:0==m[Ka]<<24>>24?n=1910:a[q+47]=ec(Ka,Ab);1910==n&&0!=(Ga|0)&&(a[q+47]=Hb(Ga));var za=V(Ab,rE|0);if(0==(za|0)){n=1915}else{if(0==m[za]<<24>>24){n=1915}else{a[q+48]=ec(za,Ab);var ma=u+200|0;a[ma>>2]|=16}}1915==n&&0!=(Ga|0)&&(a[q+48]=Hb(Ga));var pa=V(Ab,sE|0);do{if(0!=(pa|0)&&0!=m[pa]<<24>>24){var U=u+200|0;a[U>>2]|=32;a[q+49]=ec(pa,Ab);wa=Ga;break a}}while(0);0==(Ga|0)?wa=0:(a[q+49]=Hb(Ga),wa=Ga)}}while(0);var Ha=0==(t&4194304|0);a:do{if(!Ha){var Ra=r|0,Y=V(Ra,Pi|0);if(0==(Y|0)){n=1925}else{if(0==m[Y]<<24>>24){n=1925}else{var R=Y;n=1927}}if(1925==n){var La=V(Ra,tE|0);if(0!=(La|0)&&0!=m[La]<<24>>24){R=La,n=1927}else{var la=a[q+33];0!=(la|0)&&(a[q+42]=Hb(la))}}if(1927==n){a[q+42]=ec(R,Ra);var Ya=u+200|0;a[Ya>>2]|=1}var $=V(Ra,uE|0);if(0==($|0)){n=1933}else{if(0==m[$]<<24>>24){n=1933}else{a[q+43]=ec($,Ra);var Za=u+200|0;a[Za>>2]|=8}}if(1933==n){var fa=a[q+33];0!=(fa|0)&&(a[q+43]=Hb(fa))}var ab=V(Ra,vE|0);if(0==(ab|0)){n=1938}else{if(0==m[ab]<<24>>24){n=1938}else{a[q+44]=ec(ab,Ra);var $a=u+200|0;a[$a>>2]|=2}}if(1938==n){var jb=a[q+35];0!=(jb|0)&&(a[q+44]=Hb(jb))}var Ca=V(Ra,wE|0);do{if(0!=(Ca|0)&&0!=m[Ca]<<24>>24){a[q+45]=ec(Ca,Ra);var Ia=u+200|0;a[Ia>>2]|=4;break a}}while(0);var eb=a[q+36];0!=(eb|0)&&(a[q+45]=Hb(eb))}}while(0);G(I);G(wa);do{if(0!=(t&4259840|0)){var ub=a[d+6];if(0!=(ub|0)&&!(0==(a[q+37]|0)&&0==(a[q+42]|0))&&0!=(t&524288|0)){var Sa=a[x+16>>2]+96|0,Z=.5*(b[0]=a[Sa>>2],b[1]=a[Sa+4>>2],f[0]),ua=2>2];if(0<(Oa|0)){for(var Wa=ub|0,pb=0;;){xE(k,e,p,a[Wa>>2]+48*pb|0,ua);var ob=pb+1|0;if((ob|0)==(Oa|0)){break}else{pb=ob}}var bb=a[p>>2],qb=a[e>>2]}else{qb=bb=0}a[q+54]=bb;a[q+55]=qb;if(0==(t&8192|0)){var ka=0<(bb|0);a:do{if(ka){for(var kb=0,sa=0;;){var vb=a[qb+(kb<<2)>>2]+sa|0,xb=kb+1|0;if((xb|0)<(bb|0)){kb=xb,sa=vb}else{var hd=vb;break a}}}else{hd=0}}while(0);var nb=a[c];Re(x,nb,nb,hd);var rb=nb}else{rb=a[c]}a[q+56]=rb;a[q+51]=2;a[q+53]=rb;a[q+52]=a[qb>>2]}}}while(0);var lb=a[x+60>>2];if(0!=(lb|0)){var Ta=a[lb+64>>2];if(0!=(Ta|0)){J[Ta](x)}}var cb=a[q+37];0==(cb|0)&&0==(a[q+50]&1|0)||ad(x,cb,a[q+42],a[q+46],a[q+38]);h=k}function xD(x,r,i){var g,q,c,d,k,n,e,p,j,v,t,u,w,A,B,C,P=h;h+=64;var T,gb=P+16,y=P+32,M=P+48,X=a[x+16>>2]+96|0,O=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]),D=r|0;Bk(V(D,lh|0));C=(r+24|0)>>2;if(0!=(a[C]|0)){for(var Da=Xb(D,a[uk>>2],1,0),ia=jc(D,a[go>>2],Y|0),F=ia,E=0,J=0;;){var sc=m[F];if(58==sc<<24>>24){var H=E+1|0,I=J}else{if(44==sc<<24>>24){H=E,I=J+1|0}else{if(0==sc<<24>>24){break}else{H=E,I=J}}}F=F+1|0;E=H;J=I}var K=0==(E|0);if(0==(J|0)|K){var hc=ia}else{if(0!=(yE(x,r,i,ia,E+1|0,Da,O)|0)){hc=Ac|0}else{h=P;return}}var ca=r+127|0,L=m[ca]&255;if(0==(L&1|0)){if(0!=(L&2|0)){var N=Aa(D,a[zE>>2],ho(hc,Dk|0)),zb=Aa(D,a[AE>>2],Ek|0);T=1982}else{if(0!=(L&8|0)){N=Aa(D,a[BE>>2],ho(hc,Fk|0)),zb=Aa(D,a[CE>>2],Gk|0),T=1982}else{if(0==(L&4|0)){var ja=hc}else{N=Aa(D,a[DE>>2],ho(hc,Hk|0)),zb=Aa(D,a[EE>>2],Ik|0),T=1982}}}}else{N=Aa(D,a[FE>>2],ho(hc,Jk|0)),zb=Aa(D,a[GE>>2],Kk|0),T=1982}1982==T&&((N|0)!=(hc|0)&&Pa(x,N),(zb|0)!=(hc|0)&&$b(x,zb),ja=N);if(K){0==(m[ca]&3)<<24>>24&&(0==m[ja]<<24>>24?(Pa(x,Ac|0),$b(x,Ac|0)):(Pa(x,ja),$b(x,ja)));var aa=a[C];if(0<(a[aa+4>>2]|0)){for(var da=x+148|0,ea=0==(i|0),xa=0,Q=aa;;){var Od=a[Q>>2];B=Od>>2;var ha=a[B+(12*xa|0)],ga=a[B+(12*xa|0)+1],Zd=a[B+(12*xa|0)+2],Rb=a[B+(12*xa|0)+3],W=Od+48*xa+16|0,tb=(b[0]=a[W>>2],b[1]=a[W+4>>2],f[0]),ya=Od+48*xa+24|0,S=(b[0]=a[ya>>2],b[1]=a[ya+4>>2],f[0]),wa=Od+48*xa+32|0,Ab=(b[0]=a[wa>>2],b[1]=a[wa+4>>2],f[0]),Fa=Od+48*xa+40|0,Ga=(b[0]=a[Fa>>2],b[1]=a[Fa+4>>2],f[0]);if(0==(a[da>>2]&16384|0)){$f(x,ha,ga,0,0,0);if(0!=(Zd|0)){var U=ha|0,ta=ha+8|0;Ci(x,2,tb,S,(b[0]=a[U>>2],b[1]=a[U+4>>2],f[0]),(b[0]=a[ta>>2],b[1]=a[ta+4>>2],f[0]),Da,O,Zd)}if(0!=(Rb|0)){var Ka=ga-1|0,za=(Ka<<4)+ha|0,ma=(Ka<<4)+ha+8|0;Ci(x,3,Ab,Ga,(b[0]=a[za>>2],b[1]=a[za+4>>2],f[0]),(b[0]=a[ma>>2],b[1]=a[ma+4>>2],f[0]),Da,O,Rb)}1<(a[a[C]+4>>2]|0)&&(0==(Rb|Zd|0)|ea||Ke(x,i))}else{$f(x,ha,ga,Zd,Rb,0)}var pa=xa+1|0,R=a[C];if((pa|0)<(a[R+4>>2]|0)){xa=pa,Q=R}else{break}}}}else{var Ha=a[a[C]+4>>2],Ra=48*Ha|0,la=Gb(Ra);A=la>>2;var $=Gb(Ra);w=$>>2;var La=.5*(E+2|0),fa=0<(Ha|0);a:do{if(fa){u=M>>2;t=P>>2;v=y>>2;j=gb>>2;for(var Ya=0,Z=0,Za=0;;){var ka=a[a[C]>>2];p=ka>>2;var ab=a[p+(12*Za|0)],$a=a[p+(12*Za|0)+1],jb=a[p+(12*Za|0)+2],Ca=a[p+(12*Za|0)+3],Ia=ka+48*Za+16|0,eb=(b[0]=a[Ia>>2],b[1]=a[Ia+4>>2],f[0]),ub=ka+48*Za+24|0,Sa=(b[0]=a[ub>>2],b[1]=a[ub+4>>2],f[0]),sa=ka+48*Za+32|0,ua=(b[0]=a[sa>>2],b[1]=a[sa+4>>2],f[0]),Oa=ka+48*Za+40|0,Wa=(b[0]=a[Oa>>2],b[1]=a[Oa+4>>2],f[0]);a[A+(12*Za|0)+1]=$a;a[w+(12*Za|0)+1]=$a;var pb=$a<<4,ob=Gb(pb);a[A+(12*Za|0)]=ob;var bb=Gb(pb);a[w+(12*Za|0)]=bb;var qb=ab|0,ra=(b[0]=a[qb>>2],b[1]=a[qb+4>>2],f[0]),kb=ab+8|0,ie=(b[0]=a[kb>>2],b[1]=a[kb+4>>2],f[0]),vb=$a-1|0,xb=0<(vb|0);b:do{if(xb){for(var hd=Ya,nb=Z,rb=ra,lb=ie,Ta=0;;){var cb=Ta+1|0,fb=(cb<<4)+ab|0,Ua=(b[0]=a[fb>>2],b[1]=a[fb+4>>2],f[0]),sb=(cb<<4)+ab+8|0,Na=(b[0]=a[sb>>2],b[1]=a[sb+4>>2],f[0]),Fb=(Ta<<4)+ob|0;0==(Ta|0)?(js(P,rb,lb,Ua,Na),e=Fb>>2,a[e]=a[t],a[e+1]=a[t+1],a[e+2]=a[t+2],a[e+3]=a[t+3]):(js(gb,hd,nb,Ua,Na),n=Fb>>2,a[n]=a[j],a[n+1]=a[j+1],a[n+2]=a[j+2],a[n+3]=a[j+3]);var Db=Ta+2|0,Ob=(Db<<4)+ab|0,Eb=(b[0]=a[Ob>>2],b[1]=a[Ob+4>>2],f[0]),ne=(Db<<4)+ab+8|0,Bb=(b[0]=a[ne>>2],b[1]=a[ne+4>>2],f[0]),Ja=Ta+3|0,qa=(Ja<<4)+ab|0,ba=(b[0]=a[qa>>2],b[1]=a[qa+4>>2],f[0]),na=(Ja<<4)+ab+8|0,oa=(b[0]=a[na>>2],b[1]=a[na+4>>2],f[0]),Ba=(cb<<4)+ob|0,Wf=(Db<<4)+ob|0,ic=y,Ea=rb,va=lb,Cb=ba,Ma=oa,wb=Ua-Eb,pc=Na-Bb,Wc=$c(wb*wb+pc*pc);if(1e-4>Wc){var Vb=Ea-Cb,Xd=va-Ma,Qa=$c(Vb*Vb+Xd*Xd+1e-4),Va=Vb,hb=Xd}else{Qa=Wc,Va=wb,hb=pc}var ib=2/Qa,Ib=ib*-Va,lc=ic|0;f[0]=hb*ib;a[lc>>2]=b[0];a[lc+4>>2]=b[1];var yb=ic+8|0;f[0]=Ib;a[yb>>2]=b[0];a[yb+4>>2]=b[1];k=Wf>>2;a[k]=a[v];a[k+1]=a[v+1];a[k+2]=a[v+2];a[k+3]=a[v+3];d=Ba>>2;a[d]=a[v];a[d+1]=a[v+1];a[d+2]=a[v+2];a[d+3]=a[v+3];var Jd=Fb|0,Nb=rb-La*(b[0]=a[Jd>>2],b[1]=a[Jd+4>>2],f[0]),Hc=(Ta<<4)+bb|0;f[0]=Nb;a[Hc>>2]=b[0];a[Hc+4>>2]=b[1];var mb=(Ta<<4)+ob+8|0,oe=lb-La*(b[0]=a[mb>>2],b[1]=a[mb+4>>2],f[0]),db=(Ta<<4)+bb+8|0;f[0]=oe;a[db>>2]=b[0];a[db+4>>2]=b[1];var Qb=Ba|0,tc=Ua-La*(b[0]=a[Qb>>2],b[1]=a[Qb+4>>2],f[0]),Sc=(cb<<4)+bb|0;f[0]=tc;a[Sc>>2]=b[0];a[Sc+4>>2]=b[1];var Lb=(cb<<4)+ob+8|0,Pb=Na-La*(b[0]=a[Lb>>2],b[1]=a[Lb+4>>2],f[0]),Jb=(cb<<4)+bb+8|0;f[0]=Pb;a[Jb>>2]=b[0];a[Jb+4>>2]=b[1];var rd=Wf|0,oc=Eb-La*(b[0]=a[rd>>2],b[1]=a[rd+4>>2],f[0]),EC=(Db<<4)+bb|0;f[0]=oc;a[EC>>2]=b[0];a[EC+4>>2]=b[1];var qk=(Db<<4)+ob+8|0,ve=Bb-La*(b[0]=a[qk>>2],b[1]=a[qk+4>>2],f[0]),Rd=(Db<<4)+bb+8|0;f[0]=ve;a[Rd>>2]=b[0];a[Rd+4>>2]=b[1];if((Ja|0)<(vb|0)){hd=Eb,nb=Bb,rb=ba,lb=oa,Ta=Ja}else{var Bc=Eb,Sd=Bb,fd=ba,Kb=oa,yc=Ja;break b}}}else{Bc=Ya,Sd=Z,fd=ra,Kb=ie,yc=0}}while(0);var Yb=(yc<<4)+ob|0;js(M,Bc,Sd,fd,Kb);c=Yb>>2;a[c]=a[u];a[c+1]=a[u+1];a[c+2]=a[u+2];a[c+3]=a[u+3];var Mb=Yb|0,Tc=fd-La*(b[0]=a[Mb>>2],b[1]=a[Mb+4>>2],f[0]),Wb=(yc<<4)+bb|0;f[0]=Tc;a[Wb>>2]=b[0];a[Wb+4>>2]=b[1];var Mc=(yc<<4)+ob+8|0,id=Kb-La*(b[0]=a[Mc>>2],b[1]=a[Mc+4>>2],f[0]),Tb=(yc<<4)+bb+8|0;f[0]=id;a[Tb>>2]=b[0];a[Tb+4>>2]=b[1];var Sb=Za+1|0;if((Sb|0)==(Ha|0)){var uc=Wa,mf=ua,nf=Sa,ec=eb,af=Ca,yf=jb,Td=vb,Fe=ab;break a}else{Ya=Bc,Z=Sd,Za=Sb}}}}while(0);var gf=Hb(ja),fe=he(gf,zf|0),fh=0==(fe|0);a:do{if(fh){var df=ja,jd=ja}else{for(var md=ja,je=ja,Qe=ja,Xf=fe,Uc=0;;){var bf=0==m[Xf]<<24>>24?Ac|0:Xf;if((bf|0)==(md|0)){var rk=md}else{0==(m[ca]&3)<<24>>24&&(Pa(x,bf),$b(x,bf)),rk=bf}var Zb=0==(Uc|0),mc=Zb?bf:Qe,ef=1==(Uc|0)?bf:Zb?bf:je;b:do{if(fa){for(var kd=0;;){var qc=a[w+(12*kd|0)],En=a[A+(12*kd|0)],sk=$+48*kd+4|0,kc=a[sk>>2],bc=0<(kc|0);c:do{if(bc){for(var nd=0;;){var zd=(nd<<4)+En|0;q=((nd<<4)+qc|0)>>2;var cf=(b[0]=a[zd>>2],b[1]=a[zd+4>>2],f[0])+(b[0]=a[q],b[1]=a[q+1],f[0]);f[0]=cf;a[q]=b[0];a[q+1]=b[1];var rc=(nd<<4)+En+8|0;g=((nd<<4)+qc+8|0)>>2;var fc=(b[0]=a[rc>>2],b[1]=a[rc+4>>2],f[0])+(b[0]=a[g],b[1]=a[g+1],f[0]);f[0]=fc;a[g]=b[0];a[g+1]=b[1];var zi=nd+1|0,we=a[sk>>2];if((zi|0)<(we|0)){nd=zi}else{var pe=we;break c}}}else{pe=kc}}while(0);$f(x,qc,pe,0,0,0);var ac=kd+1|0;if((ac|0)==(Ha|0)){break b}else{kd=ac}}}}while(0);var Kd=he(0,zf|0);if(0==(Kd|0)){df=ef;jd=mc;break a}else{md=rk,je=ef,Qe=mc,Xf=Kd,Uc=Uc+1|0}}}}while(0);if(0==(yf|0)){var Dd=0}else{if(0==(df|0)){var dc=0}else{0==(m[ca]&3)<<24>>24&&(Pa(x,df),$b(x,df)),dc=df}var nc=Fe|0,Ye=Fe+8|0;Ci(x,2,ec,nf,(b[0]=a[nc>>2],b[1]=a[nc+4>>2],f[0]),(b[0]=a[Ye>>2],b[1]=a[Ye+4>>2],f[0]),Da,O,yf);Dd=dc}if(0!=(af|0)){(Dd|0)!=(jd|0)&&0==(m[ca]&3)<<24>>24&&(Pa(x,jd),$b(x,jd));var Ad=(Td<<4)+Fe|0,Ud=(Td<<4)+Fe+8|0;Ci(x,3,mf,uc,(b[0]=a[Ad>>2],b[1]=a[Ad+4>>2],f[0]),(b[0]=a[Ud>>2],b[1]=a[Ud+4>>2],f[0]),Da,O,af)}G(gf);a:do{if(fa){for(var Vd=0;;){G(a[A+(12*Vd|0)]);G(a[w+(12*Vd|0)]);var gc=Vd+1|0;if((gc|0)==(Ha|0)){break a}else{Vd=gc}}}}while(0);G(la);G($)}}h=P}function yD(x){var r,i,g,q,c=a[x+16>>2];r=c>>2;var d=a[r+2];g=c+148|0;0==(a[g>>2]|0)?0!=(a[r+50]&1|0)&&(q=2041):q=2041;a:do{if(2041==q){Se(x);i=c+216|0;var k=a[i>>2];if(0!=(k|0)){var n=c+220|0;if(1<(k|0)){for(var e=a[n>>2],k=c+208|0,h=c+224|0,j=c+212|0,m=c+168|0,t=c+184|0,u=c+152|0,w=1,A=a[e>>2];;){if(a[k>>2]=a[e+(w<<2)>>2],a[j>>2]=(A<<4)+a[h>>2]|0,ad(x,a[g>>2],a[m>>2],a[t>>2],a[u>>2]),Se(x),e=a[n>>2],A=a[e+(w<<2)>>2]+A|0,w=w+1|0,(w|0)>=(a[i>>2]|0)){break a}}}}}}while(0);a[r+52]=0;a[r+53]=0;q=(d+24|0)>>2;g=a[q];0==(g|0)?r=c+200|0:(g=a[g>>2],n=a[g>>2],0==(a[g+8>>2]|0)?(i=n|0,n=n+8|0):(i=g+16|0,n=g+24|0),g=c+200|0,k=a[g>>2],HE(x,(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),k<<24>>31&255,a[r+40],k<<30>>31&255),i=a[q],n=a[i+4>>2]-1|0,k=a[i>>2],i=k>>2,0==(a[i+(12*n|0)+3]|0)?(k=a[i+(12*n|0)],n=a[i+(12*n|0)+1]-1|0,i=(n<<4)+k|0,n=(n<<4)+k+8|0):(i=k+48*n+32|0,n=k+48*n+40|0),k=a[g>>2],HE(x,(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),k<<23>>31&255,a[r+41],k<<29>>31&255),r=g);g=r>>2;j=a[d+108>>2];m=a[g]<<28>>31;h=c+156|0;t=a[h>>2];k=c+172|0;u=a[k>>2];n=c+188|0;w=a[n>>2];r=(c+152|0)>>2;A=a[r];i=d|0;e=0==re(jc(i,a[io>>2],Ze|0))<<24>>24?0:a[q];Qi(x,j,11,m,t,u,w,A,e);j=a[d+120>>2];m=a[g]<<28>>31;h=a[h>>2];k=a[k>>2];n=a[n>>2];t=a[r];0==re(jc(i,a[io>>2],Ze|0))<<24>>24?Qi(x,j,11,m,h,k,n,t,0):(q=a[q],Qi(x,j,11,m,h,k,n,t,q));q=a[(d+112|0)>>2];i=a[g];i=i<<29>>31;n=a[(c+164|0)>>2];k=a[(c+180|0)>>2];h=a[(c+196|0)>>2];j=a[r];Qi(x,q,7,i,n,k,h,j,0);d=a[(d+116|0)>>2];q=a[g];q=q<<30>>31;g=a[(c+160|0)>>2];i=a[(c+176|0)>>2];c=a[(c+192|0)>>2];r=a[r];Qi(x,d,6,q,g,i,c,r,0);c=a[x+60>>2];if(0!=(c|0)&&(c=a[c+68>>2],0!=(c|0))){J[c](x)}Ei(x)}function HE(b,r,i,g,q,c){var d=a[b+16>>2],g=0==g<<24>>24?a[d+148>>2]:q;0==c<<24>>24&&0==(g|0)&0==(a[d+200>>2]&1|0)||IE(b,r,i)}function Qi(b,r,i,g,q,c,d,f,n){var e=h,p=a[b+148>>2];if(0!=(r|0)){if(0==(f|0)){f=0}else{var s=fa(Ba(f)+11|0);if(11==(i|0)){var m=dh|0}else{7==(i|0)?m=ks|0:6==(i|0)?m=ls|0:sa(Fi|0,2201,JE|0,vd|0)}Ma(s,KE|0,(j=h,h+=8,a[j>>2]=f,a[j+4>>2]=m,j));f=s}var s=b+16|0,t=a[s>>2]+12|0,m=a[t>>2];a[t>>2]=i;g=0==(q|0)&0==(g|0);!g&&0==(p&4|0)&&(ms(b,r),ad(b,q,c,d,f));Fg(b,i,r);0!=(n|0)&&LE(b,r,n);g||(0!=(p&4|0)&&(ms(b,r),ad(b,q,c,d,f)),Se(b));0!=(f|0)&&G(f);a[a[s>>2]+12>>2]=m}h=e}function ME(x,r,i){var g=x|0;f[0]=r;a[g>>2]=b[0];a[g+4>>2]=b[1];x=x+8|0;f[0]=i;a[x>>2]=b[0];a[x+4>>2]=b[1]}function ms(x,r){var i,g,q,c,d;i=a[x+16>>2];d=i>>2;var k=a[x+148>>2];if(0!=(k&4259840|0)){var n=0!=(k&131072|0);g=i+204|0;n?(a[g>>2]=0,a[d+52]=2):(a[g>>2]=2,a[d+52]=4);i=i+212|0;G(a[i>>2]);d=fa(a[d+52]<<4);a[i>>2]=d;c=(r+56|0)>>2;q=(r+24|0)>>2;i=(b[0]=a[c],b[1]=a[c+1],f[0])-.5*(b[0]=a[q],b[1]=a[q+1],f[0]);f[0]=i;a[d>>2]=b[0];a[d+4>>2]=b[1];g=(r+64|0)>>2;i=(r+32|0)>>2;var e=(b[0]=a[g],b[1]=a[g+1],f[0])-.5*(b[0]=a[i],b[1]=a[i+1],f[0]),h=d+8|0;f[0]=e;a[h>>2]=b[0];a[h+4>>2]=b[1];q=(b[0]=a[c],b[1]=a[c+1],f[0])+.5*(b[0]=a[q],b[1]=a[q+1],f[0]);c=d+16|0;f[0]=q;a[c>>2]=b[0];a[c+4>>2]=b[1];i=(b[0]=a[g],b[1]=a[g+1],f[0])+.5*(b[0]=a[i],b[1]=a[i+1],f[0]);g=d+24|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];0==(k&8192|0)&&Re(x,d,d,2);n||Mn(d)}}function LE(x,r,i){var g,q,c,d,k,n,e=h;h+=96;c=e+48;q=e+64;g=e+80;for(n=a[r>>2];;){var p=m[n];if(0==p<<24>>24){k=2112;break}if(0==(ah(p&255)|0)){break}else{n=n+1|0}}2112!=k&&0!=m[n]<<24>>24&&(k=r+24|0,p=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=r+32|0,d=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=(r+56|0)>>2,k=(r+64|0)>>2,ME(c,(b[0]=a[n],b[1]=a[n+1],f[0])+.5*p,(b[0]=a[k],b[1]=a[k+1],f[0])-.5*d),d=e>>2,c>>=2,a[d]=a[c],a[d+1]=a[c+1],a[d+2]=a[c+2],a[d+3]=a[c+3],c=e|0,d=e+8|0,ME(q,(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])-p,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])),c=(e+16|0)>>2,q>>=2,a[c]=a[q],a[c+1]=a[q+1],a[c+2]=a[q+2],a[c+3]=a[q+3],NE(g,i,(b[0]=a[n],b[1]=a[n+1],f[0]),(b[0]=a[k],b[1]=a[k+1],f[0])),i=(e+32|0)>>2,g>>=2,a[i]=a[g],a[i+1]=a[g+1],a[i+2]=a[g+2],a[i+3]=a[g+3],Ke(x,a[a[x>>2]+296>>2]),Pa(x,a[r+8>>2]),Gd(x,e|0,3));h=e}function IE(x,r,i){var g,q=a[x+16>>2];g=q>>2;var c=a[x+148>>2];if(0!=(c&4259840|0)){var d=0!=(c&131072|0),k=q+204|0;d?(a[k>>2]=0,a[g+52]=2):(a[k>>2]=2,a[g+52]=4);q=q+212|0;G(a[q>>2]);g=fa(a[g+52]<<4);a[q>>2]=g;f[0]=r-3;a[g>>2]=b[0];a[g+4>>2]=b[1];q=g+8|0;f[0]=i-3;a[q>>2]=b[0];a[q+4>>2]=b[1];q=g+16|0;f[0]=r+3;a[q>>2]=b[0];a[q+4>>2]=b[1];r=g+24|0;f[0]=i+3;a[r>>2]=b[0];a[r+4>>2]=b[1];0==(c&8192|0)&&Re(x,g,g,2);d||Mn(g)}}function yE(x,r,i,g,q,c,d){var k=h;h+=196;var n=k+48,e=k+96,p=k+144,s=k+192,g=OE(g,q,s);if(1<(g|0)){var q=a[r+16>>2],m=0!=(a[a[q+20>>2]>>2]&16|0)?ns|0:os|0,t=a[a[r+12>>2]+12>>2];la(3,PE|0,(j=h,h+=12,a[j>>2]=a[q+12>>2],a[j+4>>2]=m,a[j+8>>2]=t,j));if(2==(g|0)){return h=k,1}}else{if(1==(g|0)){return h=k,1}}g=(r+24|0)>>2;q=a[g];m=0<(a[q+4>>2]|0);a:do{if(m){for(var t=k,u=k+8|0,w=k+12|0,A=0==(i|0),B=k+4|0,C=k|0,P=k+32|0,T=k+40|0,gb=k+16|0,y=k+24|0,M=e|0,X=e+4|0,O=n,D=p,Da=n|0,ia=p|0,F=p+4|0,E=a[s>>2],r=(E+4|0)>>2,J=0,sc=q;;){for(var H,I=(a[sc>>2]+48*J|0)>>2,K=t>>2,hc=I+12;I>2],L=0==(ca|0);b:do{if(L){var N=H}else{for(var zb=H,ja=sc,aa=ca;;){Pa(x,aa);aa=ja+4|0;I=ib[aa>>2];if((ja|0)==(a[r]|0)){ps(k,I,e,p),aa=a[M>>2],$f(x,aa,a[X>>2],0,0,0)}else{if(1>I){I=D>>2;K=O>>2;for(hc=I+12;I>2],e,p);G(a[Da>>2]);aa=a[M>>2];$f(x,aa,a[X>>2],0,0,0)}else{zb=a[ja>>2],aa=a[ia>>2],$f(x,aa,a[F>>2],0,0,0)}}G(aa);ja=ja+8|0;aa=a[ja>>2];if(0==(aa|0)){N=zb;break b}}}}while(0);sc=a[u>>2];H=0==(sc|0);H||(Pa(x,a[a[r]>>2]),$b(x,a[a[r]>>2]),zb=a[C>>2],ca=(b[0]=a[gb>>2],b[1]=a[gb+4>>2],f[0]),L=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),ja=zb|0,zb=zb+8|0,Ci(x,2,ca,L,(b[0]=a[ja>>2],b[1]=a[ja+4>>2],f[0]),(b[0]=a[zb>>2],b[1]=a[zb+4>>2],f[0]),c,d,sc));sc=a[w>>2];0==(sc|0)?ca=0:(Pa(x,N),$b(x,N),zb=a[B>>2]-1|0,aa=a[C>>2],ca=(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]),L=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),ja=(zb<<4)+aa|0,zb=(zb<<4)+aa+8|0,Ci(x,3,ca,L,(b[0]=a[ja>>2],b[1]=a[ja+4>>2],f[0]),(b[0]=a[zb>>2],b[1]=a[zb+4>>2],f[0]),c,d,sc),ca=sc);L=a[g];ja=a[L+4>>2];do{if(1<(ja|0)){if(H){if(0==(ca|0)|A){sc=L;zb=ja;break}}else{if(A){sc=L;zb=ja;break}}Ke(x,i);sc=zb=a[g];zb=a[zb+4>>2]}else{sc=L,zb=ja}}while(0);J=J+1|0;if((J|0)<(zb|0)){H=N}else{var da=E;break a}}}else{da=a[s>>2]}}while(0);G(da);h=k;return 0}function ho(b,r){for(var i=1,g=b;;){var q=m[g];if(0==q<<24>>24){break}else{i=58==q<<24>>24?i+1|0:i}g=g+1|0}g=(Ba(r)+1)*i|0;(a[qs>>2]|0)<(g|0)&&(g=g+10|0,a[qs>>2]=g,g=mc(a[Ri>>2],g),a[Ri>>2]=g);Rf(a[Ri>>2],r);i=i-1|0;g=a[Ri>>2];if(0==(i|0)){var c;return g}for(;;){if(q=g+Ba(g)|0,Pb=58,m[q]=Pb&255,Pb>>=8,m[q+1]=Pb&255,uf(g,r),i=i-1|0,g=a[Ri>>2],0==(i|0)){c=g;break}}return c}function js(x,r,i,g,q){r-=g;q=i-q;i=2/$c(r*r+q*q+1e-4);g=x|0;f[0]=q*i;a[g>>2]=b[0];a[g+4>>2]=b[1];x=x+8|0;f[0]=i*-r;a[x>>2]=b[0];a[x+4>>2]=b[1]}function OE(b,r,i){var g,q=h,c,d=fa(8);g=(r<<3)+8|0;fa(g);var f=Hb(b);a[d>>2]=f;var n=fa(g);g=n>>2;a[d+4>>2]=n;var e=n=0,p=0,f=he(f,zf|0);a:for(;0!=(f|0);){var s=r-1|0;do{if((p|0)==(s|0)){if(1>e){var v=Jc(f,44);0!=(v|0)&&(m[v]=0);a[(p<<3>>2)+g]=f;ib[((p<<3)+4>>2)+g]=1;v=n;t=r;u=e;w=p+1|0}else{var v=n,t=r,u=e,w=p}}else{w=f;t=e;v=h;h+=4;u=Jc(w,44);0==(u|0)?(la(1,QE|0,(j=h,h+=4,a[j>>2]=w,j)),t=-1):(w=u+1|0,m[u]=0,u=wg(w,v),t=(a[v>>2]|0)!=(w|0)&&u>=t&1>=u?u:-1);h=v;u=t;if(0>u){c=2180;break a}e>2)+g]=f,ib[((p<<3)+4>>2)+g]=(u-e)/(1-e),v=n,t=r,w=p+1|0):(m[Nk]?v=n:(la(0,RE|0,(j=h,h+=4,a[j>>2]=b,j)),m[Nk]=1,v=3),t=s,u=e,w=p)}}while(0);n=v;r=t;e=u;p=w;f=he(0,zf|0)}if(2180==c){return m[Nk]?b=1:(la(1,SE|0,(j=h,h+=4,a[j>>2]=b,j)),m[Nk]=1,b=2),TE(d),h=q,b}0==(p|0)?(TE(d),d=1):(a[i>>2]=d,d=n);h=q;return d}function ps(x,r,i,g){var q,c,d,k,n,e=h;h+=32;var p=e+16,j=a[x+4>>2],m=j-1|0;k=(m|0)/3&-1;if(3>(j-4|0)>>>0){a[i+4>>2]=4;p=i|0;a[p>>2]=fa(64);a[g+4>>2]=4;var t=fa(64);a[g>>2]=t;Ld(e,a[x>>2],3,r,a[p>>2],t)}else{j=fa(k<<3);x=(x|0)>>2;m=2<(m|0);a:do{if(m){var u=0;d=0;for(n=a[x];;){q=n;c=q|0;var w=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);c=q+16|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);var A=w-c,w=q+8|0,B=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),w=q+24|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),B=B-w,B=$c(A*A+B*B),A=q+32|0,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),C=c-A;c=q+40|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);w-=c;w=B+$c(C*C+w*w);B=q+48|0;A-=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]);q=q+56|0;q=c-(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);q=w+$c(A*A+q*q);c=(u<<3)+j|0;f[0]=q;a[c>>2]=b[0];a[c+4>>2]=b[1];d+=q;u=u+1|0;if((u|0)<(k|0)){n=n+48|0}else{var P=d;break a}}}else{P=0}}while(0);r*=P;for(P=m=0;;){if((P|0)>=(k|0)){t=m;break}n=(P<<3)+j|0;m+=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);if(m>2;a[n]=u;i=(i|0)>>2;a[i]=fa(u<<4);u=3*(k-P)+1|0;k=(g+4|0)>>2;a[k]=u;g=(g|0)>>2;a[g]=fa(u<<4);if(0<(a[n]|0)){for(u=0;;){if(q=((u<<4)+a[i]|0)>>2,d=((u<<4)+a[x]|0)>>2,a[q]=a[d],a[q+1]=a[d+1],a[q+2]=a[d+2],a[q+3]=a[d+3],d=u+1|0,(d|0)<(a[n]|0)){u=d}else{break}}n=u-3|0}else{n=-4}u=0<(a[k]|0);a:do{if(u){w=0;for(d=n;;){c=((w<<4)+a[g]|0)>>2;q=((d<<4)+a[x]|0)>>2;a[c]=a[q];a[c+1]=a[q+1];a[c+2]=a[q+2];a[c+3]=a[q+3];q=w+1|0;if((q|0)>=(a[k]|0)){break a}w=q;d=d+1|0}}}while(0);k=(P<<3)+j|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);Ld(p,(m<<4)+a[x]|0,3,(r-(t-k))/k,(m<<4)+a[i]|0,a[g]);G(j)}h=e}function TE(b){G(a[b>>2]);G(a[b+4>>2]);G(b)}function ph(x,r){var i,g=h;i=x>>2;x=h;h+=32;a[x>>2]=a[i];a[x+4>>2]=a[i+1];a[x+8>>2]=a[i+2];a[x+12>>2]=a[i+3];a[x+16>>2]=a[i+4];a[x+20>>2]=a[i+5];a[x+24>>2]=a[i+6];a[x+28>>2]=a[i+7];i=r>>2;r=h;h+=32;a[r>>2]=a[i];a[r+4>>2]=a[i+1];a[r+8>>2]=a[i+2];a[r+12>>2]=a[i+3];a[r+16>>2]=a[i+4];a[r+20>>2]=a[i+5];a[r+24>>2]=a[i+6];a[r+28>>2]=a[i+7];i=x+16|0;var c=r|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=g,0}i=r+16|0;c=x|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=g,0}i=x+24|0;c=r+8|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=g,0}i=r+24|0;c=x+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])>=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);h=g;return i&1}function xE(x,r,i,g,c){var d,l,k,n,e,p,j,m,t,u=h;h+=1664;var w=u+64,A=u+864,B=Cb(20);a[B+16>>2]=1;p=a[g+4>>2]-1|0;k=(p|0)/3&-1;d=2<(p|0);a:do{if(d){l=g|0;var C=u|0;t=u>>2;m=(u+16|0)>>2;j=(u+32|0)>>2;p=(u+48|0)>>2;for(var P=B,T=0;;){n=3*T|0;var gb=a[l>>2];e=((n<<4)+gb|0)>>2;a[t]=a[e];a[t+1]=a[e+1];a[t+2]=a[e+2];a[t+3]=a[e+3];e=((n+1<<4)+gb|0)>>2;a[m]=a[e];a[m+1]=a[e+1];a[m+2]=a[e+2];a[m+3]=a[e+3];e=((n+2<<4)+gb|0)>>2;a[j]=a[e];a[j+1]=a[e+1];a[j+2]=a[e+2];a[j+3]=a[e+3];n=((n+3<<4)+gb|0)>>2;a[p]=a[n];a[p+1]=a[n+1];a[p+2]=a[n+2];a[p+3]=a[n+3];T=T+1|0;if((T|0)<(k|0)){P=rs(C,P)}else{break a}}}}while(0);if(0!=(B|0)){p=A|0;j=w|0;k=w>>2;g=A>>2;m=B;for(C=P=0;;){t=a[m+16>>2];l=(C<<4)+w|0;d=(C<<4)+A|0;n=m|0;var T=m+8|0,y=P,P=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);n=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]);var M=t,gb=l,T=d;e=c;if(0==(y|0)){var y=M|0,X=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),M=M+8|0,O=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]),M=O,y=X,X=2*P-X,O=2*n-O}else{X=y|0,X=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]),y=y+8|0,O=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),0==(M|0)?(M=2*n-O,y=2*P-X):(y=M|0,y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),M=M+8|0,M=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]))}var D=P,Da=n,M=Cf(M-Da,y-D),y=Cf(O-Da,X-D),M=M-y,y=y+.5*(0>2]=b[0];a[X+4>>2]=b[1];gb=gb+8|0;f[0]=y;a[gb>>2]=b[0];a[gb+4>>2]=b[1];n-=e;gb=T|0;f[0]=P-M;a[gb>>2]=b[0];a[gb+4>>2]=b[1];P=T+8|0;f[0]=n;a[P>>2]=b[0];a[P+4>>2]=b[1];P=C+1|0;C=0==(t|0);C|50==(P|0)?(UE(x,r,i,P,j,p),l>>=2,a[k]=a[l],a[k+1]=a[l+1],a[k+2]=a[l+2],a[k+3]=a[l+3],d>>=2,a[g]=a[d],a[g+1]=a[d+1],a[g+2]=a[d+2],a[g+3]=a[d+3],d=1):d=P;if(C){var ia=B;break}else{P=m,m=t,C=d}}for(;!(x=a[ia+16>>2],G(ia),0==(x|0));){ia=x}}h=u}function rs(x,r){var i,g,c=h;h+=144;if(0==(cD(x)|0)){return i=c|0,g=c+64|0,Ld(c+128,x,3,.5,i,g),i=rs(g,rs(i,r)),h=c,i}i=r+16|0;1==(a[i>>2]|0)&&(a[i>>2]=0,g=r>>2,i=x>>2,a[g]=a[i],a[g+1]=a[i+1],a[g+2]=a[i+2],a[g+3]=a[i+3]);i=x+48|0;g=x+56|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);var d=Cb(20);a[d+16>>2]=0;f[0]=i;a[d>>2]=b[0];a[d+4>>2]=b[1];i=d+8|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];a[r+16>>2]=d;h=c;return d}function UE(b,r,i,g,c,d){var f,k=g<<1;f=a[i>>2];if(0<(f|0)){for(var n=a[r>>2],e=0,h=0;;){var j=a[n+(e<<2)>>2]+h|0,e=e+1|0;if((e|0)<(f|0)){h=j}else{break}}n=1<(f|0)?f:1}else{j=n=0}f=f+1|0;a[i>>2]=f;i=wb(a[r>>2],f<<2);a[r>>2]=i;a[i+(n<<2)>>2]=k;i=wb(a[b>>2],j+k<<4);a[b>>2]=i;if(0<(g|0)){k=k-1+j|0;for(r=0;;){f=((r+j<<4)+i|0)>>2;i=((r<<4)+c|0)>>2;a[f]=a[i];a[f+1]=a[i+1];a[f+2]=a[i+2];a[f+3]=a[i+3];f=((k-r<<4)+a[b>>2]|0)>>2;i=((r<<4)+d|0)>>2;a[f]=a[i];a[f+1]=a[i+1];a[f+2]=a[i+2];a[f+3]=a[i+3];r=r+1|0;if((r|0)==(g|0)){break}i=a[b>>2]}}}function Gi(b,r){var i,g=h;h+=144;var c=g+128,d=a[b>>2];fc(c,128,g|0);db(c,r);i=(c+4|0)>>2;var f=a[i];f>>>0>2]>>>0||(na(c,1),f=a[i]);m[f]=0;var k=a[c>>2];a[i]=k;f=d+268|0;i=he(k,a[f>>2]);f=(k=0!=(i|0))?he(0,a[f>>2]):0;k=(0!=(f|0)&1)+(k&1)|0;1==(k|0)?(f=a[b+156>>2],d=(ss(d,i,f)|0)==(f|0)&1):2==(k|0)?(i=ss(d,i,0),d=ss(d,f,a[b+152>>2]),f=-1<(d|i|0)&(i|0)>(d|0),k=a[b+156>>2],d=(k|0)<=((f?i:d)|0)&((f?d:i)|0)<=(k|0)&1):d=0;uc(c);h=g;return d}function ss(b,r,i){var g,c=a[b+124>>2],d=m[r];if(97==d<<24>>24&&0==(ka(r,VE|0)|0)){var f;return i}for(var k,i=r;;){var n=m[i];if(0==n<<24>>24){var e=1;k=2222;break}if(10>((n&255)-48|0)>>>0){i=i+1|0}else{e=0;k=2221;break}}if(0!=(2221==k||2222==k?e:cc)<<24>>24){return f=bh(r)}b=a[b+276>>2];if(0==(b|0)){return-1}c=a[c+152>>2];for(k=1;;){if((k|0)>(c|0)){f=-1;g=2297;break}e=a[b+(k<<2)>>2];if(d<<24>>24==m[e]<<24>>24&&0==(ka(r,e)|0)){f=k;g=2298;break}k=k+1|0}if(2298==g||2297==g){return f}}function pD(b,r,i){var g=2>(a[b+152>>2]|0);a:do{if(g){var c=1}else{var d=jc(i|0,a[Un>>2],Y|0);if(0!=Gi(b,d)<<24>>24){c=1}else{if(0!=m[d]<<24>>24){c=0}else{var d=r,f=i;if(0==(Ok(d,f)|0)){c=1}else{for(var k=Ok(d,f);;){if(0==(k|0)){c=0;break a}var n=jc(k|0,a[Tn>>2],Y|0);if(0==m[n]<<24>>24){c=1;break a}if(0!=Gi(b,n)<<24>>24){c=1;break a}k=Pk(d,k,f)}}}}}}while(0);return c}function vD(x,r){var i,g,c,d,l,k,n,e,h,j=a[x+148>>2],v=wk(x);e=v>>2;a[e+1]=2;a[e+2]=r;a[e+3]=8;if(0!=(j&16777216|0)){if(2<(D[a[r+20>>2]+206>>1]&65535)){var t=a[r+148>>2]+16|0,u=72*(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),w=v+108|0;f[0]=(0>u?u-.5:u+.5)&-1|0;a[w>>2]=b[0];a[w+4>>2]=b[1]}else{var A=v+108|0;f[0]=0;a[A>>2]=b[0];a[A+4>>2]=b[1]}}var B=r|0;Sr(x,a[r+120>>2],B);if(0==(j&4259840|0)){var C=V(B,lh|0)}else{if(0==(a[e+37]|0)&&0==(a[e+50]&1|0)){C=V(B,lh|0);Bk(C);WE(x);return}var P=ts(r),T=r+32|0,gb=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),y=r+40|0,M=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),X;var O=Aa(r|0,a[Ki>>2],Y|0);if(0==m[O]<<24>>24){var F=0}else{nh(O);var Da=a[Cc>>2];if(0==(Da|0)){F=0}else{for(var ia=Cc|0,E=0,G=Da;;){var J=0==(ka(G,Hi|0)|0)?1:E,sc=ia+4|0,H=a[sc>>2];if(0==(H|0)){F=J;break}else{ia=sc,E=J,G=H}}}}X=F;a:do{if(3==(P|0)||1==(P|0)){var I=a[r+28>>2];n=I>>2;var K=0==FQa(I)<<24>>24?1:0==(a[n+1]|X|0);if(0!=(I|0)&K){if(0==(j&524288|0)){h=2342}else{k=(I+8|0)>>2;var hc=a[k],ca=3>(hc|0)?1:hc,L=I+4|0,N=a[L>>2],zb=1<(N|0)?N:1,ja=a[n+10],aa=V(B,us|0),da=0==(aa|0)?0:bh(aa),ea=56<(da-4|0)>>>0?20:da;if(0==(a[L>>2]|X|0)){a[e+51]=0;var xa=fa(32),Q=xa;l=(r+104|0)>>2;var Od=gb-(b[0]=a[l],b[1]=a[l+1],f[0]),ha=xa;f[0]=Od;a[ha>>2]=b[0];a[ha+4>>2]=b[1];d=(r+96|0)>>2;var ga=M-.5*(b[0]=a[d],b[1]=a[d+1],f[0]),W=xa+8|0;f[0]=ga;a[W>>2]=b[0];a[W+4>>2]=b[1];var Rb=gb+(b[0]=a[l],b[1]=a[l+1],f[0]),S=xa+16|0;f[0]=Rb;a[S>>2]=b[0];a[S+4>>2]=b[1];var tb=M+.5*(b[0]=a[d],b[1]=a[d+1],f[0]),ya=xa+24|0;f[0]=tb;a[ya>>2]=b[0];a[ya+4>>2]=b[1];var U=Q,wa=2}else{var Ab=a[k];do{if(3>(Ab|0)){var Fa=I+28|0;if(0==(b[0]=a[Fa>>2],b[1]=a[Fa+4>>2],f[0])){var Ga=I+20|0;if(0==(b[0]=a[Ga>>2],b[1]=a[Ga+4>>2],f[0])){var R=v+204|0;if(0!=(a[n]|0)){a[R>>2]=1;var ta=fa(32),Ka=ta,za=ta;f[0]=gb;a[za>>2]=b[0];a[za+4>>2]=b[1];var ma=ta+8|0;f[0]=M;a[ma>>2]=b[0];a[ma+4>>2]=b[1];var pa=(zb<<1)-1|0,la=(pa<<4)+ja|0,Ha=gb+(b[0]=a[la>>2],b[1]=a[la+4>>2],f[0]),Ra=ta+16|0;f[0]=Ha;a[Ra>>2]=b[0];a[Ra+4>>2]=b[1];var $=(pa<<4)+ja+8|0,Z=M+(b[0]=a[$>>2],b[1]=a[$+4>>2],f[0]),La=ta+24|0;f[0]=Z;a[La>>2]=b[0];a[La+4>>2]=b[1];U=Ka;wa=2;break a}a[R>>2]=2;var Vf=(zb<<1)-1|0,Ya=(Vf<<4)+ja|0,sa=(Vf<<4)+ja+8|0,Za;var ra=(b[0]=a[Ya>>2],b[1]=a[Ya+4>>2],f[0]),ab=(b[0]=a[sa>>2],b[1]=a[sa+4>>2],f[0]),$a=ea,jb=6.283185307179586/($a|0),Ca=fa($a<<4);if(0<($a|0)){for(var Ia=0,eb=0;;){var ub=se(Ia)*ra,Sa=(eb<<4)+Ca|0;f[0]=ub;a[Sa>>2]=b[0];a[Sa+4>>2]=b[1];var CQa=Ce(Ia)*ab,ua=(eb<<4)+Ca+8|0;f[0]=CQa;a[ua>>2]=b[0];a[ua+4>>2]=b[1];var Oa=eb+1|0;if((Oa|0)==($a|0)){break}else{Ia+=jb,eb=Oa}}}Za=Ca;if(0<(ea|0)){var Wa=0}else{U=Za;wa=ea;break a}for(;;){c=((Wa<<4)+Za|0)>>2;var pb=(b[0]=a[c],b[1]=a[c+1],f[0])+gb;f[0]=pb;a[c]=b[0];a[c+1]=b[1];g=((Wa<<4)+Za+8|0)>>2;var ob=(b[0]=a[g],b[1]=a[g+1],f[0])+M;f[0]=ob;a[g]=b[0];a[g+1]=b[1];var bb=Wa+1|0;if((bb|0)==(ea|0)){U=Za;wa=ea;break a}else{Wa=bb}}}}}}while(0);var qb=Ab*(zb-1)|0;a[e+51]=2;var ba=a[k];if((ba|0)<(ea|0)){var kb=fa(ca<<4);if(0<(ca|0)){for(var ie=0;;){var vb=ie+qb|0,xb=(vb<<4)+ja|0,hd=gb+(b[0]=a[xb>>2],b[1]=a[xb+4>>2],f[0]),nb=(ie<<4)+kb|0;f[0]=hd;a[nb>>2]=b[0];a[nb+4>>2]=b[1];var rb=(vb<<4)+ja+8|0,lb=M+(b[0]=a[rb>>2],b[1]=a[rb+4>>2],f[0]),Ta=(ie<<4)+kb+8|0;f[0]=lb;a[Ta>>2]=b[0];a[Ta+4>>2]=b[1];var cb=ie+1|0;if((cb|0)==(ca|0)){U=kb;wa=ca;break a}else{ie=cb}}}else{U=kb,wa=ca}}else{var fb=(ba|0)/(ea|0)&-1,Ua=fa(ea<<4);if(0<(ea|0)){for(var sb=0,Na=0;;){var Fb=Na+qb|0,Db=(Fb<<4)+ja|0,Ob=gb+(b[0]=a[Db>>2],b[1]=a[Db+4>>2],f[0]),Eb=(sb<<4)+Ua|0;f[0]=Ob;a[Eb>>2]=b[0];a[Eb+4>>2]=b[1];var ne=(Fb<<4)+ja+8|0,Bb=M+(b[0]=a[ne>>2],b[1]=a[ne+4>>2],f[0]),Ja=(sb<<4)+Ua+8|0;f[0]=Bb;a[Ja>>2]=b[0];a[Ja+4>>2]=b[1];var qa=sb+1|0;if((qa|0)==(ea|0)){U=Ua;wa=ea;break a}else{sb=qa,Na=Na+fb|0}}}else{U=Ua,wa=ea}}}}}else{h=2342}}else{h=2342}}while(0);if(2342==h){a[e+51]=0;var na=fa(32),oa=r+104|0,Ba=gb-(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0]);f[0]=Ba;a[na>>2]=b[0];a[na+4>>2]=b[1];i=(r+96|0)>>2;var Ea=M-.5*(b[0]=a[i],b[1]=a[i+1],f[0]),Wf=na+8|0;f[0]=Ea;a[Wf>>2]=b[0];a[Wf+4>>2]=b[1];var ic=r+112|0,va=gb+(b[0]=a[ic>>2],b[1]=a[ic+4>>2],f[0]),Cb=na+16|0;f[0]=va;a[Cb>>2]=b[0];a[Cb+4>>2]=b[1];var Ma=M+.5*(b[0]=a[i],b[1]=a[i+1],f[0]),wb=na+24|0;f[0]=Ma;a[wb>>2]=b[0];a[wb+4>>2]=b[1];U=na;wa=2}0==(j&8192|0)&&Re(x,U,U,wa);a[e+53]=U;a[e+52]=wa;C=V(B,lh|0)}Bk(C);WE(x)}function FQa(x){if(4!=(a[x+8>>2]|0)){return 0}var r=x+12|0,r=(b[0]=a[r>>2],b[1]=a[r+4>>2],f[0]);if(0!=(((0>r?r-.5:r+.5)&-1)%90|0)){return 0}r=x+20|0;if(0!=(b[0]=a[r>>2],b[1]=a[r+4>>2],f[0])){return 0}x=x+28|0;x=0==(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0]);return x&1}function Sr(b,r,i){var g=h;h+=144;var c,d=g+128,f=V(i,Ni|0),k=V(i,Pi|0),n=V(i,is|0);fc(d,128,g|0);r=0==(r|0)?0:a[r>>2];if(0==(f|0)){c=2368}else{if(0==m[f]<<24>>24){c=2368}else{var e=f}}2368==c&&(e=V(i,Oi|0));Or(b,r,e,k,n,Kn(b,i,d),i);uc(d);h=g}function kD(x){var r,i,g=x>>2,c=h;h+=16;var d=c+8,l=a[g+48],k=a[g+49],n=a[g+40],e=a[g+41],p=x+356|0;0==(a[p>>2]|0)?d=e:(fo(c,l,k),l=a[c>>2],k=a[c+4>>2],fo(d,n,e),n=a[d>>2],d=a[d+4>>2]);var l=l|0,e=x+316|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),j=x+236|0;r=l*e-(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);j=x+284|0;f[0]=r;a[j>>2]=b[0];a[j+4>>2]=b[1];j=k|0;k=x+324|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);i=x+244|0;i=j*k-(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);var m=x+292|0;f[0]=i;a[m>>2]=b[0];a[m+4>>2]=b[1];m=x+300|0;f[0]=r+e;a[m>>2]=b[0];a[m+4>>2]=b[1];r=x+308|0;f[0]=i+k;a[r>>2]=b[0];a[r+4>>2]=b[1];r=x+464|0;0==(a[a[g+3]+28>>2]|0)?(i=r>>2,r=(x+448|0)>>2,a[i]=a[r],a[i+1]=a[r+1],a[i+2]=a[r+2],a[i+3]=a[r+3]):(r|=0,i=a[r>>2],m=a[g+112],a[r>>2]=(i|0)<(m|0)?i:m,r=x+468|0,i=a[r>>2],m=a[g+113],a[r>>2]=(i|0)<(m|0)?i:m,r=x+472|0,i=a[r>>2],m=a[g+114],a[r>>2]=(i|0)>(m|0)?i:m,r=x+476|0,i=a[r>>2],m=a[g+115],a[r>>2]=(i|0)>(m|0)?i:m);g=a[g+37];r=x+332|0;r=(b[0]=a[r>>2],b[1]=a[r+4>>2],f[0]);0==(g&128|0)?(n=r+e*(l-.5*(n|0)),l=x+252|0,f[0]=n,a[l>>2]=b[0],a[l+4>>2]=b[1],l=x+340|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+k*(j-.5*(d|0))-1,d=x+260|0,f[0]=l,a[d>>2]=b[0],a[d+4>>2]=b[1],j=n+(e+1),d=x+268|0,f[0]=j,a[d>>2]=b[0],a[d+4>>2]=b[1],e=l+(k+1),d=x+276|0,f[0]=e,a[d>>2]=b[0],a[d+4>>2]=b[1],d=n,n=l,k=j):(d=x+360|0,n=.5*(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),d=r-n,e=x+252|0,f[0]=d,a[e>>2]=b[0],a[e+4>>2]=b[1],e=x+340|0,l=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),e=x+368|0,j=.5*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),e=l-j,k=x+260|0,f[0]=e,a[k>>2]=b[0],a[k+4>>2]=b[1],k=r+n,n=x+268|0,f[0]=k,a[n>>2]=b[0],a[n+4>>2]=b[1],l+=j,n=x+276|0,f[0]=l,a[n>>2]=b[0],a[n+4>>2]=b[1],n=e,e=l);0==(a[p>>2]|0)?(p=x+376|0,k=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),p=x+348|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),l=x+496|0,f[0]=k/p-d,a[l>>2]=b[0],a[l+4>>2]=b[1],0==(g&4096|a[Ic>>2]|0)?(g=x+384|0,p=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])/p-n):(g=x+384|0,p=-e-(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])/p),x=x+504|0,f[0]=p,a[x>>2]=b[0],a[x+4>>2]=b[1]):(n=x+376|0,p=x+384|0,j=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),p=x+348|0,l=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),p=x+496|0,x=x+504|0,f[0]=-e-j/l,a[x>>2]=b[0],a[x+4>>2]=b[1],0==(g&4096|a[Ic>>2]|0)?(x=n|0,x=(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0])/l-d):(x=n|0,x=-k-(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0])/l),p|=0,f[0]=x,a[p>>2]=b[0],a[p+4>>2]=b[1]);h=c}function Ur(b,r,i){var g=a[b>>2]+28|0;a[g>>2]=a[g>>2]+1|0;(g=0!=(i&4|0))||Ck(b,r,i);var c=0==(i&1|0);a:do{if(c){if(0!=(i&16|0)){vs(b);var d=r,f=ra(d),k=0==(f|0);b:do{if(!k){for(var n=f;;){var e=Ib(d,n),h=0==(e|0);c:do{if(!h){for(var j=e;;){if(Ji(b,j),j=yb(d,j),0==(j|0)){break c}}}}while(0);n=ba(d,n);if(0==(n|0)){break b}}}}while(0);ws(b);xs(b);f=ra(d);k=0==(f|0);b:do{if(!k){for(n=f;;){if(oh(b,n),n=ba(d,n),0==(n|0)){break b}}}}while(0);ys(b)}else{if(0==(i&8|0)){d=r;f=ra(d);if(0==(f|0)){break}for(;;){oh(b,f);k=Ib(d,f);n=0==(k|0);b:do{if(!n){for(e=k;;){if(oh(b,a[e+12>>2]),Ji(b,e),e=yb(d,e),0==(e|0)){break b}}}}while(0);f=ba(d,f);if(0==(f|0)){break a}}}xs(b);d=r;f=ra(d);k=0==(f|0);b:do{if(!k){for(n=f;;){e=n;for(var h=cc,j=r+212|0,m=r+208|0,t=e|0,u=1;;){if((u|0)>(a[m>>2]|0)){var w=1,h=2460;break}if(0==(Ed(a[a[j>>2]+(u<<2)>>2],t)|0)){u=u+1|0}else{w=0;h=2461;break}}h=2461==h||2460==h?w:cc;0!=h<<24>>24&&oh(b,e);n=ba(d,n);if(0==(n|0)){break b}}}}while(0);ys(b);vs(b);f=ra(d);k=0==(f|0);b:do{if(!k){for(n=f;;){e=Ib(d,n);h=0==(e|0);c:do{if(!h){for(j=e;;){m=j;for(var t=cc,u=r+212|0,A=r+208|0,B=m|0,C=1;;){if((C|0)>(a[A>>2]|0)){var P=1,t=2466;break}if(0==(Ed(a[a[u>>2]+(C<<2)>>2],B)|0)){C=C+1|0}else{P=0;t=2467;break}}t=2466==t||2467==t?P:cc;0!=t<<24>>24&&Ji(b,m);j=yb(d,j);if(0==(j|0)){break c}}}}while(0);n=ba(d,n);if(0==(n|0)){break b}}}}while(0);ws(b)}}else{xs(b);d=r;f=ra(d);k=0==(f|0);b:do{if(!k){for(n=f;;){if(oh(b,n),n=ba(d,n),0==(n|0)){break b}}}}while(0);ys(b);vs(b);f=ra(d);k=0==(f|0);b:do{if(!k){for(n=f;;){e=Ib(d,n);h=0==(e|0);c:do{if(!h){for(j=e;;){if(Ji(b,j),j=yb(d,j),0==(j|0)){break c}}}}while(0);n=ba(d,n);if(0==(n|0)){break b}}}}while(0);ws(b)}}while(0);g&&Ck(b,r,i)}function lD(x,r){var i,g,c,d=h;h+=4;a[d>>2]=1e3;var l=Cb(16e3),k=r|0;if(0<(a[k>>2]|0)){var n=x+252|0,e=a[r+8>>2];g=e>>2;for(var p=l,l=1,s=0,m=0;;){c=(e|0)>>2;i=a[c];if(0==(i|0)||1==(i|0)){if(0!=(ph(e+44|0,n)|0)){i=e+4|0;g=(e+20|0)>>2;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])-(b[0]=a[g],b[1]=a[g+1],f[0]);var t=p|0;f[0]=i;a[t>>2]=b[0];a[t+4>>2]=b[1];t=e+12|0;i=(e+28|0)>>2;var t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])-(b[0]=a[i],b[1]=a[i+1],f[0]),u=p+8|0;f[0]=t;a[u>>2]=b[0];a[u+4>>2]=b[1];g=(b[0]=a[g],b[1]=a[g+1],f[0]);t=p+16|0;f[0]=g;a[t>>2]=b[0];a[t+4>>2]=b[1];g=(b[0]=a[i],b[1]=a[i+1],f[0]);i=p+24|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];Qk(x,p,0==(a[c]|0)&1)}c=m}else{if(11==(i|0)){nh(a[g+1]),Ke(x,Cc|0),c=Cc|0}else{if(6==(i|0)){0!=(ph(e+44|0,n)|0)&&(c=g=e+4|0,p=zs(p,d,a[g+4>>2],a[c>>2]),Gd(x,p,a[c>>2])),c=m}else{if(12==(i|0)){0!=(l|0)&&la(0,XE|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),c=m,l=0}else{if(2==(i|0)||3==(i|0)){0!=(ph(e+44|0,n)|0)&&(g=i=e+4|0,p=zs(p,d,a[i+4>>2],a[g>>2]),zc(x,p,a[g>>2],2==(a[c]|0)&1))}else{if(7==(i|0)){0!=(ph(e+44|0,n)|0)&&(c=e+4|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),i=p|0,f[0]=c,a[i>>2]=b[0],a[i+4>>2]=b[1],i=e+12|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),t=p+8|0,f[0]=i,a[t>>2]=b[0],a[t+4>>2]=b[1],As(x,c,i,a[g+19]))}else{if(9==(i|0)){Pa(x,a[g+1])}else{if(8==(i|0)){$b(x,a[g+1])}else{if((4==(i|0)||5==(i|0))&&0!=(ph(e+44|0,n)|0)){g=i=e+4|0,p=zs(p,d,a[i+4>>2],a[g>>2]),$f(x,p,a[g>>2],0,0,4==(a[c]|0)&1)}}}}}c=m}}}}i=p;s=s+1|0;if((s|0)<(a[k>>2]|0)){e=e+80|0,g=e>>2,p=i,m=c}else{break}}0!=(c|0)&&Ke(x,a[a[x>>2]+296>>2]);k=i}else{k=l}G(k);h=d}function Rk(b,r){var i;i=(b+12|0)>>2;var g=a[i];a[i]=g+4|0;a[g>>2]=r;a[i]>>>0>2]>>>0||(a[i]=a[b>>2])}function Sk(b){var r;r=(b+8|0)>>2;var i=a[r];if((i|0)==(a[b+12>>2]|0)){return 0}var g=i+4|0;a[r]=g;i=a[i>>2];if(g>>>0>2]>>>0){return i}a[r]=a[b>>2];return i}function Zb(b){var r,i=b+224|0,g=a[i>>2];if((g|0)!=(b|0)&0!=(g|0)){b=i,i=g}else{var c;return b}for(;;){g=a[i+224>>2];if(0==(g|0)){c=i;r=2510;break}a[b>>2]=g;b=g+224|0;i=a[b>>2];if(!((i|0)!=(g|0)&0!=(i|0))){c=g;r=2509;break}}if(2509==r||2510==r){return c}}function YE(b){a[b+220>>2]=1;a[b+224>>2]=0;m[b+165|0]=0}function zs(x,r,i,g){var c=a[r>>2];(c|0)<(g|0)&&(c<<=1,c=(c|0)>(g|0)?c:g,x=wb(x,c<<4),a[r>>2]=c);r=x;if(0<(g|0)){x=0}else{return r}for(;;){var c=i+24*x|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d=(x<<4)+r|0;f[0]=c;a[d>>2]=b[0];a[d+4>>2]=b[1];c=i+24*x+8|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);d=(x<<4)+r+8|0;f[0]=c;a[d>>2]=b[0];a[d+4>>2]=b[1];x=x+1|0;if((x|0)==(g|0)){break}}return r}function jD(b,r){var i=r+208|0;if(1<=(a[i>>2]|0)){for(var g=r+212|0,c=1;;){var d=a[a[g>>2]+(c<<2)>>2];jD(b,d);var d=d|0,f=V(d,kh|0);0!=(f|0)&&0!=m[f]<<24>>24&&Pa(b,f);f=V(d,Ak|0);0!=(f|0)&&0!=m[f]<<24>>24&&$b(b,f);d=V(d,Eg|0);0!=(d|0)&&0!=m[d]<<24>>24&&Pa(b,d);c=c+1|0;if((c|0)>(a[i>>2]|0)){break}}}}function ZE(b){var r,i=fa(16);r=i>>2;var b=2>(b|0)?2:b,g=fa(b<<2);a[r]=g;a[r+3]=g;a[r+2]=g;a[r+1]=(b<<2)+g|0;return i}function Zf(b,r,i){0!=(r|0)&&(b=mb(b,a[r+8>>2]),0!=(b|0)&&0!=m[b]<<24>>24&&(i=bh(b),i=0>(i|0)?0:i));return i}function Xb(b,r,i,g){0==(r|0)|0==(b|0)?g=i:(b=mb(b,a[r+8>>2]),0==(b|0)?g=i:0==m[b]<<24>>24?g=i:(i=wg(b,xc),g=i>2])}function Aa(a,b,i){a=jc(a,b,i);return 0!=(a|0)&&0!=m[a]<<24>>24?a:i}function jo(a){return re(a)}function Tk(b,r){var i,g;if((b|0)==(r|0)){return b}g=b+224|0;if(0==(a[g>>2]|0)){a[g>>2]=b;a[b+220>>2]=1;var c=b}else{c=Zb(b)}g=c>>2;i=r+224|0;if(0==(a[i>>2]|0)){a[i>>2]=r;a[r+220>>2]=1;var d=r}else{d=Zb(r)}i=d>>2;(a[g+4]|0)>(a[i+4]|0)?(a[g+56]=d,c=d+220|0,a[c>>2]=a[c>>2]+a[g+55]|0,g=d):(a[i+56]=c,g=c+220|0,a[g>>2]=a[g>>2]+a[i+55]|0,g=c);return g}function Ld(x,r,i,g,c,d){var l,k,n=h;h+=576;if(0<=(i|0)){for(var e=i+1|0,p=0;!(k=((p<<4)+n|0)>>2,l=((p<<4)+r|0)>>2,a[k]=a[l],a[k+1]=a[l+1],a[k+2]=a[l+2],a[k+3]=a[l+3],l=p+1|0,(l|0)==(e|0));){p=l}r=1>(i|0);a:do{if(!r){l=1-g;p=1;for(k=i;;){var j=0>(i-p|0);b:do{if(!j){for(var m=p-1|0,t=n+96*m|0,u=n+96*m+8|0,w=0,A=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]);;){var t=w+1|0,B=(t<<4)+n+96*m|0,B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),C=(w<<4)+n+96*p|0;f[0]=l*A+B*g;a[C>>2]=b[0];a[C+4>>2]=b[1];A=(t<<4)+n+96*m+8|0;C=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]);w=(w<<4)+n+96*p+8|0;f[0]=l*u+C*g;a[w>>2]=b[0];a[w+4>>2]=b[1];if((t|0)==(k|0)){break b}else{w=t,A=B,u=C}}}}while(0);p=p+1|0;if((p|0)==(e|0)){break a}else{k=k-1|0}}}}while(0);g=0==(c|0);a:do{if(!g){for(k=0;;){if(l=((k<<4)+c|0)>>2,r=(n+96*k|0)>>2,a[l]=a[r],a[l+1]=a[r+1],a[l+2]=a[r+2],a[l+3]=a[r+3],r=k+1|0,(r|0)==(e|0)){break a}else{k=r}}}}while(0);if(0!=(d|0)){for(r=0;!(g=((r<<4)+d|0)>>2,c=((r<<4)+n+96*(i-r)|0)>>2,a[g]=a[c],a[g+1]=a[c+1],a[g+2]=a[c+2],a[g+3]=a[c+3],c=r+1|0,(c|0)==(e|0));){r=c}}}x>>=2;i=n+96*i|0;i>>=2;a[x]=a[i];a[x+1]=a[i+1];a[x+2]=a[i+2];a[x+3]=a[i+3];h=n}function $E(b){for(var r,i=0;;){var g=a[ko>>2];if(1024>(g-i|0)){g=g+1024|0;a[ko>>2]=g;var c=wb(a[Si>>2],g);a[Si>>2]=c;g=a[ko>>2]}else{c=a[Si>>2]}g=oi(c+i|0,g-i|0,b);if(0==(g|0)){break}g=Ba(g)+i|0;c=a[Si>>2];if(10==m[c+(g-1)|0]<<24>>24){var d=g,f=c;r=2612;break}else{i=g}}if(2612==r){return f=0<(d|0)?f:0}f=a[Si>>2];return f=(b=0<(i|0))?f:0}function Uk(b){var r=h,i;if(0==(b|0)){var g;h=r;return 0}if(0==m[b]<<24>>24){return h=r,0}var c=a[aF>>2];if(0==(c|0)){return h=r,b}var d=a[Bs>>2];if(0==(d|0)){if(m[Vk]){return h=r,0}la(0,bF|0,(j=h,h+=4,a[j>>2]=c,j));m[Vk]=1;h=r;return 0}if(!m[Cs]){var c=he(Hb(d),zf|0),d=0==(c|0),f=a[Wk>>2];a:do{if(d){var k=0,n=f}else{for(var e=0,p=c,s=f;;){var v=0==(s|0)?Cb((e<<2)+8|0):wb(s,(e<<2)+8|0);a[Wk>>2]=v;s=e+1|0;a[v+(e<<2)>>2]=p;e=a[lo>>2];p=Ba(p);a[lo>>2]=e>>>0>p>>>0?e:p;p=he(0,zf|0);v=a[Wk>>2];if(0==(p|0)){k=s;n=v;break a}else{e=s,s=v}}}}while(0);a[n+(k<<2)>>2]=0;m[Cs]=1}k=ik(b,47);k=0==(k|0)?b:k+1|0;n=ik(k,92);k=0==(n|0)?k:n+1|0;n=ik(k,58);k=0==(n|0)?k:n+1|0;m[Vk]|(k|0)==(b|0)||(n=a[Bs>>2],la(0,cF|0,(j=h,h+=8,a[j>>2]=b,a[j+4>>2]=n,j)),m[Vk]=1);b=mc(a[Ti>>2],a[lo>>2]+Ba(k)+2|0);a[Ti>>2]=b;for(b=a[Wk>>2];;){n=a[b>>2];if(0==(n|0)){g=0;i=2639;break}Ma(a[Ti>>2],dF|0,(j=h,h+=12,a[j>>2]=n,a[j+4>>2]=eF|0,a[j+8>>2]=k,j));if(0==(vQa(a[Ti>>2])|0)){break}else{b=b+4|0}}if(2639==i){return h=r,g}g=a[Ti>>2];h=r;return g}function Ds(b,r,i){var g=0==(b|0),c=0;a:for(;;){var d=a[r+(c<<2)>>2];if(0==(d|0)){break}do{if(!g&&m[b]<<24>>24==m[d]<<24>>24&&0==(ka(b,d)|0)){break a}}while(0);c=c+1|0}return a[i+(c<<2)>>2]}function re(a){return 0==(a|0)?0:0==m[a]<<24>>24?0:0==(Lb(a,Ze|0)|0)?0:0==(Lb(a,fF|0)|0)?0:0==(Lb(a,Es|0)|0)?1:0==(Lb(a,gF|0)|0)?1:10>((m[a]<<24>>24)-48|0)>>>0?bh(a)&255:0}function Lb(a,b){for(var i,g=a,c=b;;){var d=m[g];if(0==d<<24>>24){var f=0;break}if((vf(d&255)|0)!=(vf(m[c]&255)|0)){i=2659;break}g=g+1|0;c=c+1|0}2659==i&&(f=m[g]&255);return vf(f)-vf(m[c]&255)|0}function NE(x,r,i,g){var c=h;h+=80;var d,l=c+64,k=a[r+4>>2],n=0<(k|0),r=a[r>>2]>>2;a:do{if(n){for(var e=1e+38,p=-1,j=-1,m=0;;){var t=a[r+(12*m|0)],u=a[r+(12*m|0)+1],w=0<(u|0);b:do{if(w){for(var A=e,B=p,C=j,P=0;;){var T=(P<<4)+t|0,gb=(P<<4)+t+8|0,T=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0])-i,gb=(b[0]=a[gb>>2],b[1]=a[gb+4>>2],f[0])-g,T=T*T+gb*gb,A=(gb=-1==(B|0)|T=(k|0))<<31>>31)+O|0;k=(y<<4)+n|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);O=c|0;f[0]=k;a[O>>2]=b[0];a[O+4>>2]=b[1];O=(y<<4)+n+8|0;O=(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]);M=c+8|0;f[0]=O;a[M>>2]=b[0];a[M+4>>2]=b[1];M=y+1|0;X=(M<<4)+n|0;X=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]);D=c+16|0;f[0]=X;a[D>>2]=b[0];a[D+4>>2]=b[1];M=(M<<4)+n+8|0;M=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]);X=c+24|0;f[0]=M;a[X>>2]=b[0];a[X+4>>2]=b[1];M=y+2|0;X=(M<<4)+n|0;X=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]);D=c+32|0;f[0]=X;a[D>>2]=b[0];a[D+4>>2]=b[1];M=(M<<4)+n+8|0;M=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]);X=c+40|0;f[0]=M;a[X>>2]=b[0];a[X+4>>2]=b[1];M=y+3|0;y=(M<<4)+n|0;y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]);X=c+48|0;f[0]=y;a[X>>2]=b[0];a[X+4>>2]=b[1];n=(M<<4)+n+8|0;M=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);n=c+56|0;f[0]=M;a[n>>2]=b[0];a[n+4>>2]=b[1];n=c|0;X=k-i;D=O-g;r=y-i;e=M-g;k=l|0;O=l+8|0;y=1;M=0;X=X*X+D*D;for(D=r*r+e*e;;){r=.5*(M+y);Ld(l,n,3,r,0,0);var Da=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),ia=(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]);if(1>be(X-D)){d=2672;break}if(1e-5>be(y-M)){d=2673;break}e=X>2,f[0]=Da,a[i]=b[0],a[i+1]=b[1],x=(x+8|0)>>2,f[0]=ia,a[x]=b[0],a[x+1]=b[1],h=c):2672==d&&(i=(x|0)>>2,f[0]=Da,a[i]=b[0],a[i+1]=b[1],x=(x+8|0)>>2,f[0]=ia,a[x]=b[0],a[x+1]=b[1],h=c)}function hF(x){var r=x|0,i=Xb(r,a[rh>>2],.75,.01),g=x+48|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];i=Xb(r,a[sh>>2],.5,.02);g=x+56|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];var i=x+24|0,g=a,c=i>>2,d;a:{d=Aa(r,a[Fs>>2],Gs|0);var l;d=0==(Uk(V(x|0,Xk|0))|0)?d:101==m[d]<<24>>24&&0==(ka(d,Hs|0)|0)?d:th|0;var k=m[d];if(99==k<<24>>24){if(0!=(ka(d,th|0)|0)){var n=W;l=1910}}else{n=W,l=1910}b:do{if(1910==l){for(;;){l=0;var e=a[n>>2];if(0==(e|0)){break b}if(m[e]<<24>>24==k<<24>>24&&0==(ka(e,d)|0)){break}n=n+16|0}if(0!=(n|0)){d=n;break a}}}while(0);l=h;n=Is(d);0!=(n|0)?d=n:(n=a[mo>>2],k=n+1|0,a[mo>>2]=k,e=a[Yk>>2],k=0==(e|0)?Cb(k<<2):wb(e,k<<2),a[Yk>>2]=k,k=fa(16),e=k>>2,a[a[Yk>>2]+(n<<2)>>2]=k,a[e]=a[W>>2],a[e+1]=a[W+4>>2],a[e+2]=a[W+8>>2],a[e+3]=a[W+12>>2],n=Hb(d),a[e]=n,0==(a[iF>>2]|0)&&!(99==m[d]<<24>>24&&0==(ka(d,th|0)|0))?(d=a[W>>2],la(0,jF|0,(j=h,h+=8,a[j>>2]=d,a[j+4>>2]=n,j)),m[k+12|0]=0):m[k+12|0]=1,d=k);h=l}g[c]=d;l=mb(r,a[a[no>>2]+8>>2]);g=Xb(r,a[bo>>2],14,1);c=Aa(r,a[ao>>2],Li|0);d=Aa(r,a[Js>>2],Ac|0);a[x+120>>2]=ag(r,l,(0!=(bg(l)|0)?2:0)|(2==(ts(x)|0)?4:0),g,c,d);l=a[Ks>>2];0!=(l|0)&&(l=mb(r,a[l+8>>2]),0!=(l|0)&&0!=m[l]<<24>>24&&(a[x+124>>2]=ag(r,l,0!=(bg(l)|0)?2:0,g,c,d),g=a[x+20>>2]+149|0,m[g]|=16));m[x+160|0]=Zf(r,a[Ls>>2],0)&255;J[a[a[a[i>>2]+4>>2]>>2]](x)}function kF(x){var r,i,g,c=x>>2,d=h;h+=112;var l=d+16,k=d+32,n=d+72;g=(x+16|0)>>2;var e=a[a[g]+20>>2];i=(d+8|0)>>2;a[i]=0;r=(l+8|0)>>2;a[r]=0;var p=a[Ms>>2];if(0==(p|0)){var j=0,v=0}else{if(j=x|0,p=mb(j,a[p+8>>2]),0==(p|0)){v=j=0}else{if(0==m[p]<<24>>24){v=j=0}else{Ns(x,d);var t=0!=(bg(p)|0)?2:0,u=d|0,w=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),v=a[i],u=a[d+12>>2];a[c+27]=ag(j,p,t,w,v,u);p=e+149|0;m[p]|=1;m[x+126|0]=re(jc(j,a[Os>>2],Ze|0));j=1}}}t=a[Ps>>2];0!=(t|0)&&(p=x|0,t=mb(p,a[t+8>>2]),0!=(t|0)&&0!=m[t]<<24>>24&&(0==(v|0)?(Ns(x,d),u=d|0,w=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),i=a[i],u=a[d+12>>2]):i=v,a[c+30]=ag(p,t,0!=(bg(t)|0)?2:0,w,i,u),i=e+149|0,m[i]|=32));u=a[Zk>>2];i=x|0;if(0==(u|0)){u=0}else{if(u=mb(i,a[u+8>>2]),0==(u|0)){u=0}else{if(0==m[u]<<24>>24){u=0}else{lF(x,d,l);var w=0!=(bg(u)|0)?2:0,A=l|0,B=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),p=a[r],A=a[l+12>>2];a[c+28]=ag(i,u,w,B,p,A);u=e+149|0;m[u]|=2;u=p}}}w=a[$k>>2];0!=(w|0)&&(w=mb(i,a[w+8>>2]),0!=(w|0)&&0!=m[w]<<24>>24&&(0==(u|0)?(lF(x,d,l),A=l|0,B=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),r=a[r],l=a[l+12>>2]):(r=u,l=A),a[c+29]=ag(i,w,0!=(bg(w)|0)?2:0,B,r,l),e=e+149|0,m[e]|=4));e=V(i,vi|0);0!=(e|0)&&0!=m[e]<<24>>24&&(m[a[g]+161|0]=1);g=a[g];Qs(k,a[a[a[g+24>>2]+4>>2]+8>>2],g,e);k>>=2;g=(x+28|0)>>2;for(e=k+10;k>2])<<24>>24&&(m[x+58|0]=0);k=V(i,wi|0);0!=(k|0)&&0!=m[k]<<24>>24&&(m[a[c+3]+161|0]=1);c=a[c+3];Qs(n,a[a[a[c+24>>2]+4>>2]+8>>2],c,k);k=n>>2;g=(x+68|0)>>2;for(e=k+10;k>2])<<24>>24){return h=d,j}m[x+98|0]=0;h=d;return j}function Ns(x,r){var i=x|0,g=Xb(i,a[Ts>>2],14,1),c=r|0;f[0]=g;a[c>>2]=b[0];a[c+4>>2]=b[1];a[r+8>>2]=Aa(i,a[Us>>2],Li|0);a[r+12>>2]=Aa(i,a[Vs>>2],Ac|0)}function lF(x,r,i){var g=r+8|0;0==(a[g>>2]|0)&&Ns(x,r);var x=x|0,c=r|0,c=Xb(x,a[Ws>>2],(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),1),d=i|0;f[0]=c;a[d>>2]=b[0];a[d+4>>2]=b[1];a[i+8>>2]=Aa(x,a[Xs>>2],a[g>>2]);a[i+12>>2]=Aa(x,a[Ys>>2],a[r+12>>2])}function Qs(b,r,i,g){var c,d=h;h+=80;var f=d+40,k=Jc(g,58);if(0==(k|0)){J[r](f,i,g,0);var r=f>>2,k=a[r+9],f=a[r+8],n=a[r+7],e=a[r+6],p=a[r+5],j=a[r+4],v=a[r+3],t=a[r+2],i=a[r+1],r=a[r]}else{m[k]=0;f=k+1|0;J[r](d,i,g,f);c=d>>2;var r=a[c],i=a[c+1],t=a[c+2],v=a[c+3],j=a[c+4],p=a[c+5],e=a[c+6],n=a[c+7],u=a[c+8];c=a[c+9];m[k]=58;k=c&0|f;f=u&-1|0;n=n&-1|0;e=e&-1|0;p=p&-1|0;j=j&-1|0;v=v&-1|0;t=t&-1|0;i=i&-1|0;r=r&-1|0}b>>=2;a[b]=r&-1|0;a[b+1]=i&-1|0;a[b+2]=t&-1|0;a[b+3]=v&-1|0;a[b+4]=j&-1|0;a[b+5]=p&-1|0;a[b+6]=e&-1|0;a[b+7]=n&-1|0;a[b+8]=f&-1|0;a[b+9]=k&0|g;h=d}function mF(b,r){if(0==(r|0)){var i=0}else{i=mb(b|0,a[r+8>>2]),i=0==(i|0)?0:0==m[i]<<24>>24?0:0==re(i)<<24>>24&1}return i}function al(x,r){var i,g,c=h;h+=32;i=x+52|0;var d,l=a[x+152>>2]&1,k,n,e,p;g=h;k=i>>2;d=h;h+=32;a[d>>2]=a[k];a[d+4>>2]=a[k+1];a[d+8>>2]=a[k+2];a[d+12>>2]=a[k+3];a[d+16>>2]=a[k+4];a[d+20>>2]=a[k+5];a[d+24>>2]=a[k+6];a[d+28>>2]=a[k+7];k=r+56|0;n=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);k=r+64|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);var l=0==l<<24>>24,j=r+24|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),m=r+32|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);p=.5*(l?j:m);e=n-p;n+=p;p=(d|0)>>2;if(e<(b[0]=a[p],b[1]=a[p+1],f[0])){f[0]=e,a[p]=b[0],a[p+1]=b[1]}e=(d+16|0)>>2;if(n>(b[0]=a[e],b[1]=a[e+1],f[0])){f[0]=n,a[e]=b[0],a[e+1]=b[1]}n=.5*(l?m:j);l=k-n;k+=n;n=(d+8|0)>>2;if(l<(b[0]=a[n],b[1]=a[n+1],f[0])){f[0]=l,a[n]=b[0],a[n+1]=b[1]}l=(d+24|0)>>2;if(k>(b[0]=a[l],b[1]=a[l+1],f[0])){f[0]=k,a[l]=b[0],a[l+1]=b[1]}k=c>>2;d>>=2;a[k]=a[d];a[k+1]=a[d+1];a[k+2]=a[d+2];a[k+3]=a[d+3];a[k+4]=a[d+4];a[k+5]=a[d+5];a[k+6]=a[d+6];a[k+7]=a[d+7];h=g;g=i>>2;i=c>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];a[g+4]=a[i+4];a[g+5]=a[i+5];a[g+6]=a[i+6];a[g+7]=a[i+7];h=c}function nF(x,r,i,g,c){var d=x|0;f[0]=r-g;a[d>>2]=b[0];a[d+4>>2]=b[1];x=x+8|0;f[0]=i-c;a[x>>2]=b[0];a[x+4>>2]=b[1]}function Df(a,b,i){var g;if(0==(i|0)){var c;return 0}for(;;){var d=i-1|0;if(0==(i|0)){g=2817;break}if((vf(m[a]&255)|0)!=(vf(m[b]&255)|0)){g=2817;break}if(0==(d|0)){c=0;g=2819;break}if(0==m[a]<<24>>24){c=0;g=2822;break}if(0==m[b]<<24>>24){c=0;g=2820;break}a=a+1|0;b=b+1|0;i=d}if(2819==g||2822==g){return c}if(2817==g){return c=vf(m[a]&255)-vf(m[b]&255)|0}if(2820==g){return c}}function oF(b){var r=oo(b,pF|0),i=ra(b),g=0==(i|0);a:do{if(!g){for(var c=i;;){var d=Ib(b,c),f=0==(d|0);b:do{if(!f){for(var k=d;;){var n=r,e=a[k+16>>2],h=a[k+12>>2];if(!(0==m[e+134|0]<<24>>24&&0==m[h+134|0]<<24>>24)){var j=k,e=Zs(e,n),n=Zs(h,n),n=uh(a[e+20>>2],e,n);po(j|0,n|0)}k=yb(b,k);if(0==(k|0)){break b}}}}while(0);c=ba(b,c);if(0==(c|0)){break a}}}}while(0);i=ra(r);if(0!=(i|0)){for(;!(bl(b,i|0),i=ba(r,i),0==(i|0));){}}Sf(r)}function ac(a,b,i,g,c){b=$(b,i);return 0!=(b|0)?b:a=J[c](a,i,g)}function GQa(x,r){var i,g=h;i=x>>2;x=h;h+=32;a[x>>2]=a[i];a[x+4>>2]=a[i+1];a[x+8>>2]=a[i+2];a[x+12>>2]=a[i+3];a[x+16>>2]=a[i+4];a[x+20>>2]=a[i+5];a[x+24>>2]=a[i+6];a[x+28>>2]=a[i+7];i=r>>2;r=h;h+=32;a[r>>2]=a[i];a[r+4>>2]=a[i+1];a[r+8>>2]=a[i+2];a[r+12>>2]=a[i+3];a[r+16>>2]=a[i+4];a[r+20>>2]=a[i+5];a[r+24>>2]=a[i+6];a[r+28>>2]=a[i+7];i=x+16|0;var c=r|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=g,0}i=r+16|0;c=x|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=g,0}i=x+24|0;c=r+8|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=g,0}i=r+24|0;c=x+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])>=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);h=g;return i&1}function $s(b){var r=h;h+=20;var i=r+8,g=a[b>>2],c=35==m[g]<<24>>24;a:do{if(c){var d=m[g+1|0],f=d&255;b:do{if(120==d<<24>>24||88==d<<24>>24){for(var k=0,e=2,z=f;;){if(8<=(e|0)){var p=k,j=e,v=z;break b}var z=m[g+e|0],t=z&255;do{if(6>(z-65&255)){var u=t-55|0}else{if(6>(z-97&255)){u=t-87|0}else{if(10<=(z-48&255)){p=k;j=e;v=t;break b}u=t-48|0}}}while(0);k=(k<<4)+u|0;e=e+1|0;z=u}}else{k=0;e=1;for(z=f;;){if(8<=(e|0)){p=k;j=e;v=z;break b}z=m[g+e|0];t=z&255;if(10<=(z-48&255)){p=k;j=e;v=t;break b}k=10*k-48+t|0;e=e+1|0;z=t}}}while(0);59!=(v|0)?(f=0,d=g):(f=p,d=j+(g+1)|0)}else{d=i|0;f=a[r>>2]=d;for(d=0;;){if(8<=(d|0)){f=0;d=g;break a}k=m[g+d|0];if(0==k<<24>>24){f=0;d=g;break a}else{if(59==k<<24>>24){break}}m[f]=k;f=f+1|0;d=d+1|0}m[f]=0;f=tn(r,F,252,8,110);0==(f|0)?(f=0,d=g):(f=a[f+4>>2],d=d+(g+1)|0)}}while(0);a[b>>2]=d;h=r;return f}function at(b){var r,i,g=h;h+=1044;i=g>>2;var c=g+4;fc(c,1024,g+20|0);a[i]=b+1|0;var d=m[b],f=0==d<<24>>24,b=(c+4|0)>>2;r=(c+8|0)>>2;a:do{if(!f){for(var k=d;;){38==k<<24>>24?(k=$s(g),k=0==(k|0)?38:k):k&=255;if(127>k>>>0){var e=a[b];e>>>0>>0||(na(c,1),e=a[b]);a[b]=e+1|0;m[e]=k&255}else{var z=a[b],e=a[r],p=z>>>0>=e>>>0;2047>k>>>0?(p&&(na(c,1),z=a[b],e=a[r]),p=z+1|0,a[b]=p,m[z]=(k>>>6|192)&255):(p&&(na(c,1),z=a[b],e=a[r]),p=z+1|0,a[b]=p,m[z]=(k>>>12|224)&255,p>>>0>>0?z=p:(na(c,1),z=a[b],e=a[r]),p=z+1|0,a[b]=p,m[z]=(k>>>6&63|128)&255);p>>>0>>0?e=p:(na(c,1),e=a[b]);a[b]=e+1|0;m[e]=(k&63|128)&255}k=a[i];a[i]=k+1|0;k=m[k];if(0==k<<24>>24){break a}}}}while(0);i=a[b];if(i>>>0>>0){return m[i]=0,r=a[(c|0)>>2],a[b]=r,b=Hb(r),uc(c),h=g,b}na(c,1);r=a[b];m[r]=0;r=a[(c|0)>>2];a[b]=r;b=Hb(r);uc(c);h=g;return b}function bt(b){var r,i=h;h+=1040;fc(i,1024,i+16|0);var g=m[b],c=0==g<<24>>24;r=(i+4|0)>>2;a:do{if(c){var d=a[r],f=i+8|0}else{for(var k=i+8|0,e=b,z=g;;){var p=e+1|0;if(127>(z&255)){e=a[r];if(e>>>0>2]>>>0){var j=e}else{na(i,1),j=a[r]}e=j+1|0;a[r]=e;m[j]=z;z=p}else{z=m[p]&63|z<<6,p=a[r],p>>>0>2]>>>0?j=p:(na(i,1),j=a[r]),p=j+1|0,a[r]=p,m[j]=z,z=e+2|0,e=p}p=m[z];if(0==p<<24>>24){d=e;f=k;break a}else{e=z,z=p}}}}while(0);if(d>>>0>2]>>>0){return m[d]=0,b=a[(i|0)>>2],a[r]=b,r=Hb(b),uc(i),h=i,r}na(i,1);b=a[r];m[b]=0;b=a[(i|0)>>2];a[r]=b;r=Hb(b);uc(i);h=i;return r}function qF(x,r){var i,g=h;h+=40;i=r>>2;r=h;h+=32;a[r>>2]=a[i];a[r+4>>2]=a[i+1];a[r+8>>2]=a[i+2];a[r+12>>2]=a[i+3];a[r+16>>2]=a[i+4];a[r+20>>2]=a[i+5];a[r+24>>2]=a[i+6];a[r+28>>2]=a[i+7];var c=g+8;i=g+24;var d=r+16|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),l=x+64|0;if(d<(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])){return h=g,0}var l=x+80|0,k=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=r|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);if(k>2],b[1]=a[k+4>>2],f[0]),e=x+72|0;if(k<(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])){return h=g,0}var e=x+88|0,z=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),e=r+8|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(z>2]=b[0];a[z+4>>2]=b[1];d=c+8|0;f[0]=.5*(k+e);a[d>>2]=b[0];a[d+4>>2]=b[1];d=x+32|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);l=x+40|0;l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);k=c|0;c=c+8|0;nF(i,d,l,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]));c=i|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);i=i+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);a[g>>2]=x;a[g+4>>2]=0;i=J[a[a[a[x+24>>2]+4>>2]+12>>2]](g,c,i);h=g;return i}function as(x,r){var i,g,c,d=h;h+=32;c=r>>2;r=h;h+=32;a[r>>2]=a[c];a[r+4>>2]=a[c+1];a[r+8>>2]=a[c+2];a[r+12>>2]=a[c+3];a[r+16>>2]=a[c+4];a[r+20>>2]=a[c+5];a[r+24>>2]=a[c+6];a[r+28>>2]=a[c+7];c=d+16;var l=x+24|0,k=.5*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=x+32|0,e=.5*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);g=(x+56|0)>>2;i=(x+64|0)>>2;nF(d,(b[0]=a[g],b[1]=a[g+1],f[0]),(b[0]=a[i],b[1]=a[i+1],f[0]),k,e);var l=d|0,z=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=d+8|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);g=(b[0]=a[g],b[1]=a[g+1],f[0]);i=(b[0]=a[i],b[1]=a[i+1],f[0])+e;e=c|0;f[0]=g+k;a[e>>2]=b[0];a[e+4>>2]=b[1];k=c+8|0;f[0]=i;a[k>>2]=b[0];a[k+4>>2]=b[1];k=c+8|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);i=r+16|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])>2],b[1]=a[c+4>>2],f[0])<(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])){return h=d,0}c=r+24|0;if((b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);h=d;return c&1}function rF(x,r){var i,g=h;i=x>>2;x=h;h+=48;for(var c=x>>2,d=i+12;i>2;r=h;h+=32;a[r>>2]=a[i];a[r+4>>2]=a[i+1];a[r+8>>2]=a[i+2];a[r+12>>2]=a[i+3];a[r+16>>2]=a[i+4];a[r+20>>2]=a[i+5];a[r+24>>2]=a[i+6];a[r+28>>2]=a[i+7];var l,c=a[x+4>>2];0==(c|0)&&sa(qo|0,1634,sF|0,tF|0);i=a[x>>2];for(var d=i|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),k=i+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=1,z=k,p=d;(e|0)<(c|0);){var j=(e<<4)+i|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),m=(e<<4)+i+8|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);if(-1==(uF(j,m,p,z,r)|0)){e=e+1|0,z=m,p=j}else{var t=1;l=3034;break}}if(3034==l){return h=g,t}if(0!=(a[x+8>>2]|0)&&(l=x+16|0,t=x+24|0,0!=vF((b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),d,k,r)<<24>>24)||0!=(a[x+12>>2]|0)&&(l=c-1|0,t=x+32|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),c=x+40|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d=(l<<4)+i|0,i=(l<<4)+i+8|0,0!=vF(t,c,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),r)<<24>>24)){return h=g,1}h=g;return 0}function ct(b){var r,i,g,c=h;h+=1044;var d;g=c>>2;var f=c+4;a[g]=b;fc(f,1024,c+20|0);i=(f+4|0)>>2;r=(f+8|0)>>2;a:for(;;){var k=b+1|0;a[g]=k;var e=m[b];if(0==e<<24>>24){d=3071;break}do{if(192>(e&255)){if(38!=e<<24>>24){var z=e}else{if(z=$s(c),0==(z|0)){z=38}else{if(127>z>>>0){z&=255}else{var p=a[i],s=a[r],v=p>>>0>=s>>>0;2047>z>>>0?(v?(na(f,1),s=a[i]):s=p,a[i]=s+1|0,m[s]=(z>>>6|192)&255):(v&&(na(f,1),p=a[i],s=a[r]),v=p+1|0,a[i]=v,m[p]=(z>>>12|224)&255,v>>>0>>0?s=v:(na(f,1),s=a[i]),a[i]=s+1|0,m[s]=(z>>>6&63|128)&255);z=(z&63|128)&255}}}}else{if(224>(e&255)){if(-128!=(m[k]&-64)<<24>>24){d=3057;break a}z=a[i];z>>>0>>0||(na(f,1),z=a[i]);a[i]=z+1|0;m[z]=e;a[g]=b+2|0;z=m[k]}else{if(240<=(e&255)){d=3067;break a}if(-128!=(m[k]&-64)<<24>>24){d=3074;break a}z=b+2|0;if(-128!=(m[z]&-64)<<24>>24){d=3075;break a}s=a[i];p=a[r];s>>>0

      >>0||(na(f,1),s=a[i],p=a[r]);v=s+1|0;a[i]=v;m[s]=e;a[g]=z;s=m[k];v>>>0

      >>0?p=v:(na(f,1),p=a[i]);a[i]=p+1|0;m[p]=s;a[g]=b+3|0;z=m[z]}}}while(0);b=a[i];b>>>0>>0||(na(f,1),b=a[i]);a[i]=b+1|0;m[b]=z;b=a[g]}if(3067==d){la(1,wF|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe()}else{if(3074==d){la(1,dt|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe()}else{if(3075==d){la(1,dt|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe()}else{if(3071==d){g=a[i];if(g>>>0>>0){return m[g]=0,r=a[(f|0)>>2],a[i]=r,i=Hb(r),uc(f),h=c,i}na(f,1);r=a[i];m[r]=0;r=a[(f|0)>>2];a[i]=r;i=Hb(r);uc(f);h=c;return i}3057==d&&(la(1,xF|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe())}}}}function et(x,r){if(0==r<<24>>24){var i=x+48|0,i=36*(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),g=x+112|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];g=x+104|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];i=x+56|0}else{i=x+56|0,i=36*(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),g=x+112|0,f[0]=i,a[g>>2]=b[0],a[g+4>>2]=b[1],g=x+104|0,f[0]=i,a[g>>2]=b[0],a[g+4>>2]=b[1],i=x+48|0}i=72*(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);g=x+96|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1]}function yF(b,r){var i=h,g,c=0==(b|0);a:do{if(c){var d=r}else{d=m[b];if(0!=d<<24>>24){d=d<<24>>24;do{if(116==(d|0)||84==(d|0)){var f=0==(Lb(b+1|0,zF|0)|0)?8:0;g=3098}else{if(110==(d|0)||78==(d|0)){var k=b+1|0;if(0==(Lb(k,AF|0)|0)){d=0;break a}if(0==(Lb(k,ft|0)|0)){d=2;break a}}else{if(48==(d|0)){d=2;break a}else{if(99==(d|0)||67==(d|0)){f=0==(Lb(b+1|0,BF|0)|0)?10:0,g=3098}else{if(112==(d|0)||80==(d|0)){f=0==(Lb(b+1|0,CF|0)|0)?4:0,g=3098}else{if(115==(d|0)||83==(d|0)){f=0==(Lb(b+1|0,DF|0)|0)?8:0,g=3098}else{if(108==(d|0)||76==(d|0)){f=0==(Lb(b+1|0,EF|0)|0)?2:0,g=3098}else{if(49==(d|0)||50==(d|0)||51==(d|0)||52==(d|0)||53==(d|0)||54==(d|0)||55==(d|0)||56==(d|0)||57==(d|0)){d=8;break a}else{if(102==(d|0)||70==(d|0)){f=0==(Lb(b+1|0,FF|0)|0)?2:0,g=3098}else{if(111==(d|0)||79==(d|0)){f=0==(Lb(b+1|0,GF|0)|0)?6:0,g=3098}else{if(121==(d|0)||89==(d|0)){f=0==(Lb(b+1|0,HF|0)|0)?8:0,g=3098}}}}}}}}}}}}while(0);if(3098==g&&0!=(f|0)){d=f;break}la(0,IF|0,(j=h,h+=4,a[j>>2]=b,j))}d=r}}while(0);h=i;return d}function JF(a,b){var i=V(a|0,KF|0),i=0==(i|0)?b:0==m[i]<<24>>24?0:yF(i,b),g=a+164|0;D[g>>1]=(D[g>>1]&65535|i)&65535}function vF(x,r,i,g,c){var d,l=h;h+=128;d=c>>2;c=h;h+=32;a[c>>2]=a[d];a[c+4>>2]=a[d+1];a[c+8>>2]=a[d+2];a[c+12>>2]=a[d+3];a[c+16>>2]=a[d+4];a[c+20>>2]=a[d+5];a[c+24>>2]=a[d+6];a[c+28>>2]=a[d+7];var k=l+32,e=l+64;d=l+96;var z=c+16|0,z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]);hh(l,x,r,i,g,1);var p=l|0;if(z>=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])){if(hh(k,x,r,i,g,1),k=k+16|0,z=c|0,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])>=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])){if(k=c+24|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),hh(e,x,r,i,g,1),e=e+8|0,k>=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])){if(hh(d,x,r,i,g,1),x=d+24|0,c=c+8|0,(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0])>=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=l,1}}}}h=l;return 0}function Zs(b,r){var i=a[b+20>>2];if(0==m[b+134|0]<<24>>24){var g;return b}var c=b|0;gt(r,c);var d=Jc(a[b+12>>2],58);0==(d|0)&&sa(qo|0,1243,LF|0,MF|0);var d=d+1|0,f=Mi(i,d);if(0!=(f|0)){return f}i=cl(i,d);d=a[ro(c)+8>>2];f=a[d>>2];if(0==(f|0)){return i}for(c=i|0;;){var d=d+4|0,k=a[f+8>>2],f=a[f+4>>2];(mb(c,k)|0)!=(f|0)&&qc(c,k,f);f=a[d>>2];if(0==(f|0)){g=i;break}}return g}function ht(b,r){var i,g,c=a[r>>2];g=(r+24|0)>>2;a[g]=0;a[g+1]=0;a[g+2]=0;a[g+3]=0;if(0!=m[c]<<24>>24){var d=Cb(Ba(c)+1|0);m[d]=0;var f=r+12|0,k=d;a:for(;;){for(;;){var e=c+1|0,h=m[c];if(0==h<<24>>24){var p=k;break a}if(!(161>(h&255)|2!=(a[f>>2]|0)|-1==h<<24>>24)){m[k]=h;var h=m[e],j=k+2|0;m[k+1|0]=h;if(0==h<<24>>24){p=j;break a}else{k=j;c=c+2|0;continue}}if(10==h<<24>>24){i=3161;break}else{if(92==h<<24>>24){break}}m[k]=h;k=k+1|0;c=e}3161==i?(i=0,h=k+1|0,m[k]=0,so(b,r,d,110),k=h,c=e,d=h):(h=m[e],j=h<<24>>24,110==(j|0)||108==(j|0)||114==(j|0)?(h=k+1|0,m[k]=0,so(b,r,d,m[e]),d=k=h):(m[k]=h,k=k+1|0),c=0==m[e]<<24>>24?e:c+2|0)}(d|0)!=(p|0)&&(m[p]=0,so(b,r,d,110));i=(r+40|0)>>2;a[i]=a[g];a[i+1]=a[g+1];a[i+2]=a[g+2];a[i+3]=a[g+3]}}function so(x,r,i,g){var c,d=h;h+=16;var l;c=(r+76|0)>>1;var k=D[c]<<16>>16,e=r+72|0,z=a[e>>2],k=0==(z|0)?fa(76*k+152|0):NF(z,k+2|0,76,k+1|0);a[e>>2]=k;e=D[c]<<16>>16;z=k+76*e|0;a[z>>2]=i;m[k+76*e+72|0]=g;if(0==(i|0)){l=3175}else{if(0==m[i]<<24>>24){l=3175}else{var p=r+16|0,i=a[r+4>>2],g=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),s,p=h;h+=4;a[p>>2]=0;s=(z+20|0)>>2;a[s]=i;var v=z+24|0;f[0]=g;a[v>>2]=b[0];a[v+4>>2]=b[1];g=a;v=z+4>>2;var t=a[to>>2];0!=(t|0)&&0==(Lb(t,i)|0)?i=a[it>>2]:(a[to>>2]=i,i=tn(to,H,35,36,310),a[it>>2]=i);g[v]=i;i=0==m[ld]<<24>>24?0:0==(nD(a[s])|0)?0:p;x=a[a[x+172>>2]+132>>2];0==(x|0)?x=0:(x=a[x>>2],x=0==(x|0)?0:J[x](z,i));0==x<<24>>24&&OF(z,i);0!=(i|0)&&(x=a[p>>2],i=a[oa>>2],s=a[s],0==(x|0)?Va(i,PF|0,(j=h,h+=4,a[j>>2]=s,j)):Va(i,QF|0,(j=h,h+=8,a[j>>2]=s,a[j+4>>2]=x,j)));x=z+56|0;x=(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0]);z=z+64|0;z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]);s=d|0;f[0]=x;a[s>>2]=b[0];a[s+4>>2]=b[1];x=d+8|0;f[0]=z;a[x>>2]=b[0];a[x+4>>2]=b[1];h=p;p=d|0;z=d+8|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]);s=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])}}3175==l&&(l=r+16|0,l=1.2*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])&-1|0,k=k+76*e+64|0,f[0]=l,a[k>>2]=b[0],a[k+4>>2]=b[1],p=0,s=l);D[c]=D[c]+1&65535;c=(r+24|0)>>2;l=(b[0]=a[c],b[1]=a[c+1],f[0]);f[0]=l>p?l:p;a[c]=b[0];a[c+1]=b[1];r=(r+32|0)>>2;c=(b[0]=a[r],b[1]=a[r+1],f[0])+s;f[0]=c;a[r]=b[0];a[r+1]=b[1];h=d}function ag(x,r,i,g,c,d){var l,k,e=h,z=fa(84);k=z>>2;var p=a[x>>2]<<28>>28;if(3==(p|0)){var s=l=0,v=x,p=a[x+32>>2]}else{1==(p|0)?(l=0,s=x,v=0,p=a[a[x+20>>2]+32>>2]):2==(p|0)?(l=x,v=s=0,p=a[a[a[x+12>>2]+20>>2]+32>>2]):p=v=s=l=0}a[k+1]=c;a[k+2]=d;c=z+16|0;f[0]=g;a[c>>2]=b[0];a[c+4>>2]=b[1];g=z+12|0;a[g>>2]=m[p+151|0]&255;if(0!=(i&4|0)){a[k]=Hb(r);if(0==(i&2|0)){return h=e,z}m[z+82|0]=1;h=e;return z}if(2==(i|0)){a[k]=Hb(r);m[z+82|0]=1;if(0==(RF(x,z)|0)){return h=e,z}x=a[x>>2]<<28>>28;3==(x|0)?la(3,SF|0,(j=h,h+=4,a[j>>2]=a[v+12>>2],j)):1==(x|0)?la(3,TF|0,(j=h,h+=4,a[j>>2]=a[s+12>>2],j)):2==(x|0)&&(p=0!=(a[p>>2]&16|0)?Bf|0:Af|0,x=a[a[l+12>>2]+12>>2],la(3,UF|0,(j=h,h+=12,a[j>>2]=a[a[l+16>>2]+12>>2],a[j+4>>2]=p,a[j+8>>2]=x,j)));h=e;return z}0!=(i|0)&&sa(VF|0,169,WF|0,XF|0);x=jt(r,x,0);l=z>>2;a[l]=x;x=1==(a[g>>2]|0)?at(x):ct(x);G(a[l]);a[l]=x;ht(p,z);h=e;return z}function jt(b,r,i){var g=r>>2,c=a[g]<<28>>28;if(3==(c|0)){var d=a[g+3],f=Ba(d),k=a[g+12];if(0==(k|0)){var e=0,h=0,p=Y|0,j=Y|0,v=d,t=yg|0,u=cg|0,w=Hg|0,A=Ig|0,B=dl|0,C=f,P=2,T=2,gb=2,y=2,M=2,D=0}else{var O=a[k>>2];if(0==(b|0)){h=e=0,p=Y|0,j=Y|0,v=d,t=yg|0,u=cg|0,w=Hg|0,A=Ig|0,B=O,C=f,M=y=gb=T=P=2}else{var F=Ba(O),h=e=0,p=Y|0,j=Y|0,v=d,t=yg|0,u=cg|0,w=Hg|0,A=Ig|0,B=O,C=f,y=gb=T=P=2,M=F}D=0}}else{if(2==(c|0)){var Da=a[g+4],ia=a[a[Da+20>>2]+32>>2],E=a[ia+12>>2],G=Ba(E),J=a[Da+12>>2],sc=Ba(J),H=a[g+16],I=0==(H|0)?0:Ba(H),K=a[a[g+3]+12>>2],L=a[g+26],ca=0==(L|0)?0:Ba(L),N=Ba(K),U=a[g+27];if(0==(U|0)){var zb=dl|0,ja=2}else{var aa=a[U>>2];0==(b|0)?(zb=aa,ja=2):(zb=aa,ja=Ba(aa))}e=1;h=ca;p=H;j=L;v=E;t=yg|0;u=0==(a[ia>>2]&16|0)?Af|0:Bf|0;w=K;A=J;B=zb;C=G;P=2;T=sc+(0==(I|0)?0:I+1|0)+N+(0==(ca|0)?0:ca+1|0)+2|0;gb=N;y=sc;M=ja;D=I}else{if(1==(c|0)){var da=a[a[g+5]+12>>2],ea=Ba(da),xa=a[g+3],Q=Ba(xa),Od=a[g+30];if(0==(Od|0)){h=e=0,p=Y|0,j=Y|0,v=da,t=xa,u=cg|0,w=Hg|0,A=Ig|0,B=dl|0,C=ea,P=Q,M=y=gb=T=2}else{var ha=a[Od>>2];if(0==(b|0)){h=e=0,p=Y|0,j=Y|0,v=da,t=xa,u=cg|0,w=Hg|0,A=Ig|0,B=ha,C=ea,P=Q,M=y=gb=T=2}else{var ga=Ba(ha),h=e=0,p=Y|0,j=Y|0,v=da,t=xa,u=cg|0,w=Hg|0,A=Ig|0,B=ha,C=ea,P=Q,y=gb=T=2,M=ga}}}else{h=e=0,p=Y|0,j=Y|0,v=YF|0,t=yg|0,u=cg|0,w=Hg|0,A=Ig|0,B=dl|0,M=y=gb=T=P=C=2}D=0}}var W=0==(i|0),Rb=0,S=b;a:for(;;){var tb=S+1|0,ya=m[S];if(0==ya<<24>>24){break}else{if(92!=ya<<24>>24){Rb=Rb+1|0;S=tb;continue}}var V=S+2|0,wa=m[tb]<<24>>24;do{if(71==(wa|0)){Rb=Rb+C|0;S=V;continue a}else{if(78==(wa|0)){Rb=Rb+P|0;S=V;continue a}else{if(69==(wa|0)){Rb=Rb+T|0;S=V;continue a}else{if(72==(wa|0)){Rb=Rb+gb|0;S=V;continue a}else{if(84==(wa|0)){Rb=Rb+y|0;S=V;continue a}else{if(76==(wa|0)){Rb=Rb+M|0;S=V;continue a}else{if(92==(wa|0)&&!W){Rb=Rb+1|0;S=V;continue a}}}}}}}}while(0);Rb=Rb+2|0;S=V}var Ab=Cb(Rb+1|0),Fa=0==(e|0),Ga=0==(D|0),R=0==(h|0),ta=b,Ka=Ab;a:for(;;){var za=ta+1|0,ma=m[ta];if(0==ma<<24>>24){break}else{if(92!=ma<<24>>24){m[Ka]=ma;ta=za;Ka=Ka+1|0;continue}}var pa=ta+2|0,la=m[za],Ha=la<<24>>24;do{if(76==(Ha|0)){var Ra=m[B];m[Ka]=Ra;if(0==Ra<<24>>24){ta=pa;continue a}else{var $=B,fa=Ka}for(;;){var La=$+1|0,Z=fa+1|0,Ya=m[La];m[Z]=Ya;if(0==Ya<<24>>24){ta=pa;Ka=Z;continue a}else{$=La,fa=Z}}}else{if(72==(Ha|0)){var ka=m[w];m[Ka]=ka;if(0==ka<<24>>24){ta=pa;continue a}else{var Za=w,sa=Ka}for(;;){var ab=Za+1|0,$a=sa+1|0,jb=m[ab];m[$a]=jb;if(0==jb<<24>>24){ta=pa;Ka=$a;continue a}else{Za=ab,sa=$a}}}else{if(84==(Ha|0)){var Ca=m[A];m[Ka]=Ca;if(0==Ca<<24>>24){ta=pa;continue a}else{var Ia=A,eb=Ka}for(;;){var ub=Ia+1|0,Sa=eb+1|0,ra=m[ub];m[Sa]=ra;if(0==ra<<24>>24){ta=pa;Ka=Sa;continue a}else{Ia=ub,eb=Sa}}}else{if(78==(Ha|0)){var ua=m[t];m[Ka]=ua;if(0==ua<<24>>24){ta=pa;continue a}else{var Oa=t,Wa=Ka}for(;;){var pb=Oa+1|0,ob=Wa+1|0,bb=m[pb];m[ob]=bb;if(0==bb<<24>>24){ta=pa;Ka=ob;continue a}else{Oa=pb,Wa=ob}}}else{if(71==(Ha|0)){var qb=m[v];m[Ka]=qb;if(0==qb<<24>>24){ta=pa;continue a}else{var ba=v,kb=Ka}for(;;){var qa=ba+1|0,vb=kb+1|0,xb=m[qa];m[vb]=xb;if(0==xb<<24>>24){ta=pa;Ka=vb;continue a}else{ba=qa,kb=vb}}}else{if(69==(Ha|0)){if(Fa){ta=pa;continue a}var hd=m[A];m[Ka]=hd;var nb=0==hd<<24>>24;b:do{if(nb){var rb=Ka}else{for(var lb=A,Ta=Ka;;){var cb=lb+1|0,fb=Ta+1|0,Ua=m[cb];m[fb]=Ua;if(0==Ua<<24>>24){rb=fb;break b}else{lb=cb,Ta=fb}}}}while(0);b:do{if(Ga){var sb=rb}else{m[rb]=58;for(var Na=rb,Fb=p;;){var Db=Na+1|0,Ob=m[Fb];m[Db]=Ob;if(0==Ob<<24>>24){sb=Db;break b}else{Na=Db,Fb=Fb+1|0}}}}while(0);var Eb=m[u];m[sb]=Eb;var na=0==Eb<<24>>24;b:do{if(na){var Bb=sb}else{for(var Ja=u,oa=sb;;){var Ea=Ja+1|0,va=oa+1|0,Ma=m[Ea];m[va]=Ma;if(0==Ma<<24>>24){Bb=va;break b}else{Ja=Ea,oa=va}}}}while(0);var Aa=m[w];m[Bb]=Aa;var Wf=0==Aa<<24>>24;b:do{if(Wf){var ic=Bb}else{for(var wb=w,Qa=Bb;;){var Va=wb+1|0,Pa=Qa+1|0,hb=m[Va];m[Pa]=hb;if(0==hb<<24>>24){ic=Pa;break b}else{wb=Va,Qa=Pa}}}}while(0);if(R){ta=pa;Ka=ic;continue a}m[ic]=58;for(var pc=ic,Wc=j;;){var Vb=pc+1|0,Xd=m[Wc];m[Vb]=Xd;if(0==Xd<<24>>24){ta=pa;Ka=Vb;continue a}else{pc=Vb,Wc=Wc+1|0}}}else{if(92==(Ha|0)&&!W){m[Ka]=92;ta=pa;Ka=Ka+1|0;continue a}}}}}}}}while(0);m[Ka]=92;m[Ka+1|0]=la;ta=pa;Ka=Ka+2|0}m[Ka]=0;return Ab}function ZF(b,r){var i;if(0!=(b|0)){var g=0<(r|0);a:do{if(g){var c=0,d=b;for(i=d>>2;;){if(0==(c|0)){var f=a[i];0!=(f|0)&&G(f)}f=a[i+2];if(0!=(f|0)&&(i=a[i+3],0!=(i|0))){J[i](f)}c=c+1|0;if((c|0)==(r|0)){break a}else{d=d+76|0,i=d>>2}}}}while(0);G(b)}}function vh(b){if(0!=(b|0)){G(a[b>>2]);var r=b+72|0;0==m[b+82|0]<<24>>24?ZF(a[r>>2],D[b+76>>1]<<16>>16):$F(a[r>>2],1);G(b)}}function Fg(x,r,i){var g,c,d;d=(a[x+16>>2]+12|0)>>2;var l=a[d];a[d]=r;if(0!=m[i+82|0]<<24>>24){aG(x,a[i+72>>2],i),a[d]=l}else{if(r=(i+76|0)>>1,1<=D[r]<<16>>16){bG(x,0);Pa(x,a[i+8>>2]);g=m[i+80|0]<<24>>24;if(116==(g|0)){g=i+64|0;c=i+48|0;var k=i+16|0,k=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])+.5*(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])}else{if(98==(g|0)){g=i+64|0;c=i+48|0;var k=i+32|0,e=i+16|0,k=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-.5*(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])+(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])}else{g=i+64|0,c=i+32|0,k=i+16|0,k=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])+.5*(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])}}e=0>16;a:do{if(e){var h=i+72|0;c=(i+56|0)>>2;g=(i+40|0)>>2;for(var p=k,j=0,v=a[h>>2];;){var t=m[v+76*j+72|0]<<24>>24,t=114==(t|0)?(b[0]=a[c],b[1]=a[c+1],f[0])+.5*(b[0]=a[g],b[1]=a[g+1],f[0]):108==(t|0)?(b[0]=a[c],b[1]=a[c+1],f[0])-.5*(b[0]=a[g],b[1]=a[g+1],f[0]):(b[0]=a[c],b[1]=a[c+1],f[0]);As(x,t,p,v+76*j|0);v=a[h>>2];t=v+76*j+64|0;j=j+1|0;if((j|0)<(D[r]<<16>>16|0)){p-=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])}else{break a}}}}while(0);cG(x);a[d]=l}}}function ec(a,b){return jt(a,b,1)}function nc(b){var r,i=a[uo>>2];if(0==(i|0)){a[vo>>2]=64;var i=Cb(64),g=a[uo>>2]=i,c=0,d=0}else{g=i,d=c=0}for(;;){if(0==(b|0)){r=148;break}var f=m[b];if(0==f<<24>>24){r=147;break}var k=a[vo>>2];(d|0)>(k-8|0)&&(g=k<<1,a[vo>>2]=g,i=wb(i,g),a[uo>>2]=i,g=i+d|0,f=m[b]);if(60==f<<24>>24){var e=wo|0,h=4}else{38==f<<24>>24?0==(dG(b)|0)?(e=xo|0,h=5):r=142:62==f<<24>>24?(e=yo|0,h=4):45==f<<24>>24?(e=kt|0,h=5):32==f<<24>>24?0==(c|0)?r=142:32==m[c]<<24>>24?(e=lt|0,h=6):r=142:34==f<<24>>24?(e=zo|0,h=6):39!=f<<24>>24?r=142:(e=Ao|0,h=5)}142==r&&(r=0,e=b,h=1);d=h+d|0;k=h;c=e;for(f=g;!(k=k-1|0,m[f]=m[c],0==(k|0));){c=c+1|0,f=f+1|0}c=b;b=b+1|0;g=g+h|0}if(147==r||148==r){return m[g]=0,i}}function dG(a){var b=a+1|0,i=m[b];if(35!=i<<24>>24){for(a=b;;){b=a+1|0;if(!(26>(i-97&255)|26>(i-65&255))){var g=i;break}a=b;i=m[b]}return g=59==g<<24>>24&1}b=a+2|0;i=m[b];if(120==i<<24>>24||88==i<<24>>24){for(a=a+3|0;;){if(i=m[a],10>(i-48&255)|6>(i-97&255)|6>(i-65&255)){a=a+1|0}else{g=i;break}}}else{for(a=b;;){b=a+1|0;if(10<=(i-48&255)){g=i;break}a=b;i=m[b]}}return g=59==g<<24>>24&1}function uF(x,r,i,g,c){var d,l=h;d=c>>2;c=h;h+=32;a[c>>2]=a[d];a[c+4>>2]=a[d+1];a[c+8>>2]=a[d+2];a[c+12>>2]=a[d+3];a[c+16>>2]=a[d+4];a[c+20>>2]=a[d+5];a[c+24>>2]=a[d+6];a[c+28>>2]=a[d+7];var k;d=c|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);var e=d>x;if(e){var j=0}else{j=c+16|0,(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])>2],b[1]=a[j+4>>2],f[0])>r?j=0:(j=c+24|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])>=r))}if(d>i){k=170}else{var p=c+16|0;if((b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])>2],b[1]=a[p+4>>2],f[0])>g){k=170}else{p=c+24|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])>=g;if(j^p){return h=l,0}if(j&p){return h=l,1}}}}if(170==k&&j){return h=l,0}do{if(x==i){if(k=c+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),!(e|k<=r^k<=g^1)&&(k=c+16|0,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])>=x)){return r=0,h=l,r}}else{if(r==g){if(!(d<=x^d<=i)){break}x=c+8|0;if((b[0]=a[x>>2],b[1]=a[x+4>>2],f[0])>r){break}c=c+24|0;if((b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])>2],b[1]=a[j+4>>2],f[0]);if(!(dv|t>2],b[1]=a[p+4>>2],f[0]))){return r=0,h=l,r}p=c+16|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]);t+=(p-d)*k;if(t>=j){var u=c+24|0;if(!(t>(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])|pv)){return r=0,h=l,r}}m=(v=r=d&&!(t>p|jv)){return r=0,h=l,r}u=c+24|0;u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]);k=t+(u-j)/k;if(k>=d&&!(k>p|uv)){return r=0,h=l,r}}}while(0);h=l;return-1}function Mn(x){var r;r=(x+16|0)>>2;var i=(b[0]=a[r],b[1]=a[r+1],f[0]),g=x+32|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];g=x+48|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];i=x+24|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);g=x+40|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];i=x+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);g=x+56|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];x|=0;x=(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0]);f[0]=x;a[r]=b[0];a[r+1]=b[1]}function Bo(b){var r,i=a[Co>>2];if(0==(i|0)){a[Do>>2]=64;var i=Cb(64),g=a[Co>>2]=i,c=0}else{g=i,c=0}for(;;){if(0==(b|0)){r=217;break}var d=m[b];if(0==d<<24>>24){r=218;break}var f=a[Do>>2];(c|0)>(f-8|0)&&(g=f<<1,a[Do>>2]=g,i=wb(i,g),a[Co>>2]=i,g=i+c|0,d=m[b]);if(60==d<<24>>24){var k=wo|0,e=4}else{34==d<<24>>24?(k=zo|0,e=6):39==d<<24>>24?(k=Ao|0,e=5):38==d<<24>>24?0==(dG(b)|0)?(k=xo|0,e=5):r=212:62==d<<24>>24?(k=yo|0,e=4):r=212}212==r&&(r=0,k=b,e=1);for(var c=e+c|0,h=e,d=k,f=g;!(h=h-1|0,m[f]=m[d],0==(h|0));){d=d+1|0,f=f+1|0}b=b+1|0;g=g+e|0}if(217==r||218==r){return m[g]=0,i}}function fa(a){if(0==(a|0)){a=0}else{var b=Cb(a);li(b,a);a=b}return a}function OF(x,r){var i,g,c;c=(x+56|0)>>2;f[0]=0;a[c]=b[0];a[c+1]=b[1];g=(x+24|0)>>2;i=(b[0]=a[g],b[1]=a[g+1],f[0]);var d=x+64|0;f[0]=1.2*i;a[d>>2]=b[0];a[d+4>>2]=b[1];d=x+40|0;f[0]=0;a[d>>2]=b[0];a[d+4>>2]=b[1];d=x+48|0;f[0]=.1*i;a[d>>2]=b[0];a[d+4>>2]=b[1];i=(x+20|0)>>2;d=a[i];a[x+8>>2]=d;a[x+12>>2]=0;0==(Df(d,eG|0,4)|0)?(d=fG|0,i=gG|0):0==(Df(a[i],hG|0,5)|0)?(d=mt|0,i=nt|0):(d=(i=0==(Df(a[i],iG|0,9)|0))?mt|0:jG|0,i=i?nt|0:kG|0);0!=(r|0)&&(a[r>>2]=d);d=a[x>>2];if(0!=(d|0)){var l=m[d],k=0==l<<24>>24,e=(b[0]=a[c],b[1]=a[c+1],f[0]);a:do{if(k){var h=e}else{for(var p=d,j=l,v=e;;){if(p=p+1|0,j=((j&255)<<3)+i|0,v+=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),f[0]=v,a[c]=b[0],a[c+1]=b[1],j=m[p],0==j<<24>>24){h=v;break a}}}}while(0);g=h*(b[0]=a[g],b[1]=a[g+1],f[0]);f[0]=g;a[c]=b[0];a[c+1]=b[1]}}function lG(x,r,i,g){for(var c;;){if(180==(g|0)){c=291;break}else{if(0==(g|0)){var d=r,l=i;break}else{if(90==(g|0)){c=290;break}else{if(270==(g|0)){c=297;break}}}}if(0>(g|0)){c=293;break}if(360>=(g|0)){c=296;break}g=(g|0)%360}if(291==c){d=r,l=-i}else{if(293==c){Ui(x,r,i,-g|0);return}if(290==c){d=i,l=-r}else{if(296==c){mG(x,r,i,g);return}297==c&&(d=i,l=r)}}r=x|0;f[0]=d;a[r>>2]=b[0];a[r+4>>2]=b[1];x=x+8|0;f[0]=l;a[x>>2]=b[0];a[x+4>>2]=b[1]}function Ui(x,r,i,g){for(var c;;){if(270==(g|0)){c=312;break}else{if(180==(g|0)){c=306;break}else{if(90==(g|0)){c=305;break}else{if(0==(g|0)){var d=r,l=i;break}}}}if(0>(g|0)){c=308;break}if(360>=(g|0)){c=311;break}g=(g|0)%360}if(312==c){d=i,l=r}else{if(306==c){d=r,l=-i}else{if(308==c){lG(x,r,i,-g|0);return}if(311==c){mG(x,r,i,360-g|0);return}305==c&&(d=-i,l=r)}}r=x|0;f[0]=d;a[r>>2]=b[0];a[r+4>>2]=b[1];x=x+8|0;f[0]=l;a[x>>2]=b[0];a[x+4>>2]=b[1]}function mG(x,r,i,g){if((a[ot>>2]|0)==(g|0)){var g=(b[0]=a[el>>2],b[1]=a[el+4>>2],f[0]),c=(b[0]=a[fl>>2],b[1]=a[fl+4>>2],f[0])}else{var d=(g|0)/6.283185307179586,c=Ce(d);f[0]=c;a[fl>>2]=b[0];a[fl+4>>2]=b[1];d=se(d);f[0]=d;a[el>>2]=b[0];a[el+4>>2]=b[1];a[ot>>2]=g;g=d}d=x|0;f[0]=g*r-c*i;a[d>>2]=b[0];a[d+4>>2]=b[1];x=x+8|0;f[0]=g*i+c*r;a[x>>2]=b[0];a[x+4>>2]=b[1]}function Cb(b){if(0==(b|0)){return 0}b=Gb(b);if(0==(b|0)){Lc(Eo|0,14,1,a[oa>>2]),S()}else{return b}}function NF(b,r,i,g){b=mc(b,i*r|0);0!=(b|0)|0==(r|0)||(Lc(Eo|0,14,1,a[oa>>2]),S());if(g>>>0>=r>>>0){return b}li(b+g*i|0,(r-g)*i|0);return b}function wb(b,r){var i=mc(b,r);if(0!=(i|0)|0==(r|0)){return i}Lc(Eo|0,14,1,a[oa>>2]);S()}function dD(a,b,i,g,c,d){i-=a;g-=b;a=(d-b)*i-(c-a)*g;a*=a;return 1e-10>a?0:a/(i*i+g*g)}function aG(x,r,i){var g,c,d=h;h+=60;var l;nG(x);c=d>>2;g=(i+56|0)>>2;a[c]=a[g];a[c+1]=a[g+1];a[c+2]=a[g+2];a[c+3]=a[g+3];a[d+20>>2]=a[i+8>>2];a[d+16>>2]=a[i+4>>2];i=i+16|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);g=d+32|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];g=x+16|0;c=V(a[a[g>>2]+8>>2]|0,pt|0);var k=d+48|0;a[k>>2]=c;i=d+52|0;a[i>>2]=a[a[g>>2]+152>>2];g=d+56|0;m[g]=0;0==(c|0)?l=551:0==m[c]<<24>>24&&(l=551);551==l&&(a[k>>2]=Ze|0);1==m[r+4|0]<<24>>24?(r=a[r>>2],Ke(x,a[a[x>>2]+296>>2]),l=a[r+24>>2],0==(l|0)?Pa(x,Ac|0):Pa(x,l),qt(x,r,d)):oG(x,a[r>>2],d);0!=m[g]<<24>>24&&G(a[i>>2]);r=a[x+16>>2]>>2;a[r+37]=0;a[r+42]=0;a[r+46]=0;a[r+38]=0;Ei(x);h=d}function nG(b){var r,i=wk(b);r=i>>2;var b=a[r]>>2,g=a[b+1];a[r+1]=g;a[r+3]=a[b+3];0==(g|0)?a[r+2]=a[b+2]:3==(g|0)?a[r+2]=a[b+2]:1==(g|0)?a[r+2]=a[b+2]:2==(g|0)&&(a[r+2]=a[b+2]);a[r+37]=a[b+37];a[r+42]=a[b+42];a[r+46]=a[b+46];r=i+200|0;a[r>>2]=a[r>>2]&-2|a[b+50]&1}function qt(x,r,i){var g,c,d,l,k,e=r>>2,j=h;h+=132;var p=j+32,s=j+68,v=r|0;c=j>>2;k=(r+40|0)>>2;a[c]=a[k];a[c+1]=a[k+1];a[c+2]=a[k+2];a[c+3]=a[k+3];a[c+4]=a[k+4];a[c+5]=a[k+5];a[c+6]=a[k+6];a[c+7]=a[k+7];k=i|0;l=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);k=i+8|0;var t=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);k=a[e+19];var u=0==(a[e]|0)?0!=(a[e+2]|0):1,w=r+100|0;g=a[w>>2];if(0!=(g|0)){d=i+16|0;var A=a[d>>2];if(0!=(A|0)){var B=a[g>>2];0==(B|0)?a[Fo>>2]=0:(a[Fo>>2]=A,a[d>>2]=B)}d=i+20|0;A=a[d>>2];0!=(A|0)&&(B=a[g+4>>2],0==(B|0)?a[Go>>2]=0:(a[Go>>2]=A,a[d>>2]=B));d=(i+32|0)>>2;A=(b[0]=a[d],b[1]=a[d+1],f[0]);0>A||(g=g+16|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),0>g?(f[0]=-1,a[wh>>2]=b[0],a[wh+4>>2]=b[1]):(f[0]=A,a[wh>>2]=b[0],a[wh+4>>2]=b[1],f[0]=g,a[d]=b[0],a[d+1]=b[1]))}g=(j|0)>>2;d=(b[0]=a[g],b[1]=a[g+1],f[0])+l;f[0]=d;a[g]=b[0];a[g+1]=b[1];g=j+16|0;d=(g|0)>>2;l=(b[0]=a[d],b[1]=a[d+1],f[0])+l;f[0]=l;a[d]=b[0];a[d+1]=b[1];l=(j+8|0)>>2;d=(b[0]=a[l],b[1]=a[l+1],f[0])+t;f[0]=d;a[l]=b[0];a[l+1]=b[1];l=(j+24|0)>>2;t=(b[0]=a[l],b[1]=a[l+1],f[0])+t;f[0]=t;a[l]=b[0];a[l+1]=b[1];t=u?0!=(a[x+148>>2]&4|0)?0:gl(x,i,v,j,p,1):0;l=m[r+104|0];0==(l&2)<<24>>24?(s=a[e+5],0!=(s|0)&&pG(x,s,j),s=m[r+29|0],0!=s<<24>>24&&qG(x,a[e+6],s&255,j)):(r=a[e+6],r=0==(r|0)?Ac|0:r,d=s>>2,a[d]=a[c],a[d+1]=a[c+1],a[d+2]=a[c+2],a[d+3]=a[c+3],d=s+32|0,c=d>>2,g>>=2,a[c]=a[g],a[c+1]=a[g+1],a[c+2]=a[g+2],a[c+3]=a[g+3],c=d|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),g=s+16|0,f[0]=c,a[g>>2]=b[0],a[g+4>>2]=b[1],c=s+8|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),g=s+24|0,f[0]=c,a[g>>2]=b[0],a[g+4>>2]=b[1],c=s|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),g=s+48|0,f[0]=c,a[g>>2]=b[0],a[g+4>>2]=b[1],c=s+40|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),g=s+56|0,f[0]=c,a[g>>2]=b[0],a[g+4>>2]=b[1],e=a[e+5],Ii(x,e,r,s|0,4,l&255,0!=(e|0)&1));e=a[k>>2];s=0==(e|0);a:do{if(!s){c=k;for(r=e;;){if(rG(x,r,i),c=c+4|0,r=a[c>>2],0==(r|0)){break a}}}}while(0);0!=(t|0)&&hl(x,p,1);u&&0!=(a[x+148>>2]&4|0)&&0!=(gl(x,i,v,j,p,0)|0)&&hl(x,p,0);0!=(a[w>>2]|0)&&(x=a[Fo>>2],0!=(x|0)&&(a[i+16>>2]=x),x=a[Go>>2],0!=(x|0)&&(a[i+20>>2]=x),x=(b[0]=a[wh>>2],b[1]=a[wh+4>>2],f[0]),0>x||(i=i+32|0,f[0]=x,a[i>>2]=b[0],a[i+4>>2]=b[1]));h=j}function oG(x,r,i){var g=D[r+4>>1];if(1<=g<<16>>16){var c=r+24|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d=r+8|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),l=i|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+.5*(c+d),k=i+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=r+32|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),h=r+16|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]);sG(x,g<<16>>16,a[r>>2],l,k+.5*(e+h),.5*(c-d),i+16|0,h,e)}}function Ho(b){var r=b+12|0,i=a[r>>2]-1|0;a[r>>2]=i;0==(i|0)&&(r=a[b>>2],0!=(r|0)&&G(r),r=a[b+4>>2],0!=(r|0)&&G(r),G(b))}function Io(b){b>>=2;G(a[b]);G(a[b+1]);G(a[b+2]);G(a[b+4]);G(a[b+3]);G(a[b+5]);G(a[b+6])}function rt(b){var r;if(0!=(b|0)){var i=b|0,g=b+4|0,c=D[g>>1],d=0>16;a:do{if(d){for(var f=0,k=a[i>>2],e=c;;){var h=k+4|0;if(0>1]<<16>>16){e=a[k>>2];r=e>>2;for(var j=0;;){var m=a[r];0!=(m|0)&&G(m);m=a[r+4];0!=(m|0)&&Ho(m);m=a[r+2];if(0!=(m|0)&&(r=a[r+3],0!=(r|0))){J[r](m)}j=j+1|0;if((j|0)<(D[h>>1]<<16>>16|0)){e=e+76|0,r=e>>2}else{break}}h=D[g>>1]}else{h=e}f=f+1|0;if((f|0)<(h<<16>>16|0)){k=k+24|0,e=h}else{break a}}}}while(0);i=a[i>>2];0!=(i|0)&&G(i);G(b)}}function $F(b,r){var i=m[b+4|0];if(3==i<<24>>24){i=a[b>>2],G(a[i+32>>2]),G(i)}else{if(1==i<<24>>24){var i=a[b>>2],g=i+76|0,c=a[g>>2];if(-1==(a[i+92>>2]|0)){Kc(c)}else{G(a[i+84>>2]);G(a[i+88>>2]);var d=a[c>>2],f=0==(d|0);a:do{if(!f){for(var k=c,e=d;;){if($F(e+80|0,0),Io(e|0),G(e),k=k+4|0,e=a[k>>2],0==(e|0)){break a}}}}while(0);G(a[g>>2])}g=a[i+100>>2];0!=(g|0)&&Ho(g);Io(i|0);G(i)}else{rt(a[b>>2])}}0!=(r|0)&&G(b)}function tG(b,r){var i,g=a[b+4>>2];if(0!=(g|0)&&0==(Lb(g,r)|0)){var c;return b|0}for(g=a[b+76>>2];;){var d=a[g>>2];if(0==(d|0)){c=0;i=668;break}var f=a[d+4>>2],d=0!=(f|0)&&0==(Lb(f,r)|0)?d|0:1!=m[d+84|0]<<24>>24?0:tG(a[d+80>>2],r);if(0==(d|0)){g=g+4|0}else{c=d;i=667;break}}if(668==i||667==i){return c}}function RF(b,r){var i,g=h;h+=148;var c=g+4,d=g+20;i=a[b>>2]<<28>>28;if(1==(i|0)){var f=a[b+20>>2]}else{2==(i|0)?f=a[a[b+12>>2]+20>>2]:3==(i|0)&&(f=a[b+32>>2])}f=a[f+32>>2];i=(r|0)>>2;var k=h;h+=152;var e=k+128,z=k+144;a[z>>2]=0;a[z+4>>2]=0;a[st>>2]=z;a[uG>>2]=0;a[vG>>2]=0;z=Nc(wG,a[Jo>>2]);a[Ko>>2]=z;z=Nc(xG,a[Jo>>2]);a[Lo>>2]=z;fc(e,128,k|0);a[yG>>2]=e;z=h;0==(a[Mo>>2]|0)&&(la(0,zG|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),a[Mo>>2]=a[Mo>>2]+1|0);h=z;a[g>>2]=2;Kc(a[Ko>>2]);Kc(a[Lo>>2]);a[Ko>>2]=0;a[Lo>>2]=0;a[st>>2]=0;uc(e);h=k;fc(c,128,d|0);m[r+82|0]=0;d=Hb(AG(b,c));a[i]=d;d=1==(a[r+12>>2]|0)?at(d):ct(d);k=a[i];G(k);a[i]=d;ht(f,r);uc(c);c=a[g>>2];h=g;return c}function AG(b,r){var i;i=a[b>>2]<<28>>28;2==(i|0)?(db(r,a[a[b+16>>2]+12>>2]),i=b+12|0,db(r,a[a[i>>2]+12>>2]),0==(a[a[a[i>>2]+20>>2]>>2]&16|0)?db(r,Af|0):db(r,Bf|0)):3==(i|0)?db(r,a[b+12>>2]):1==(i|0)&&db(r,a[b+12>>2]);i=(r+4|0)>>2;var g=a[i];if(g>>>0>2]>>>0){return m[g]=0,g=a[(r|0)>>2],a[i]=g}na(r,1);g=a[i];m[g]=0;g=a[(r|0)>>2];return a[i]=g}function sG(x,r,i,g,c,d,l,k,e){var j,p,s=h;h+=76;p=l>>2;l=h;h+=24;a[l>>2]=a[p];a[l+4>>2]=a[p+1];a[l+8>>2]=a[p+2];a[l+12>>2]=a[p+3];a[l+16>>2]=a[p+4];a[l+20>>2]=a[p+5];var v;p=g-d;var t=g+d;bG(x,1);if(0<(r|0)){for(var d=(l+16|0)>>2,u=l|0,l=l+4|0,w=s|0,A=s+20|0,B=s+24|0,C=s+40|0,P=s+48|0,T=s+4|0,y=s+8|0,$e=s+56|0,M=s+64|0,X=s+72|0,O=.5*(e-k)+c,c=0;;){k=m[i+24*c+6|0]<<24>>24;114==(k|0)?(k=i+24*c+8|0,e=t-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])):108==(k|0)?e=p:(k=i+24*c+8|0,e=g-.5*(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]));var k=(i+24*c+16|0)>>2,O=O-(b[0]=a[k],b[1]=a[k+1],f[0]),F=i+24*c+4|0,Da=0>1]<<16>>16;a:do{if(Da){var ia=e,E=0,J=a[(i>>2)+(6*c|0)];for(j=J>>2;;){var G=a[j+4];if(0==(G|0)){var sc=(b[0]=a[d],b[1]=a[d+1],f[0]),H=a[u>>2];v=844}else{var I=G+16|0,I=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0]),I=0>2],K=0==(K|0)?a[u>>2]:K,G=a[G+4>>2];if(0==(G|0)){sc=I,H=K,v=844}else{var L=G,ca=I,N=K}}844==v&&(v=0,L=a[l>>2],ca=sc,N=H);Pa(x,L);a[w>>2]=a[j];a[A>>2]=N;f[0]=ca;a[B>>2]=b[0];a[B+4>>2]=b[1];G=J+40|0;G=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0]);f[0]=G;a[C>>2]=b[0];a[C+4>>2]=b[1];f[0]=1;a[P>>2]=b[0];a[P+4>>2]=b[1];a[T>>2]=a[j+1];a[y>>2]=a[j+2];j=(J+32|0)>>2;G=(b[0]=a[j],b[1]=a[j+1],f[0]);f[0]=G;a[$e>>2]=b[0];a[$e+4>>2]=b[1];G=(b[0]=a[k],b[1]=a[k+1],f[0]);f[0]=G;a[M>>2]=b[0];a[M+4>>2]=b[1];m[X]=108;As(x,ia,O,s);E=E+1|0;if((E|0)<(D[F>>1]<<16>>16|0)){ia+=(b[0]=a[j],b[1]=a[j+1],f[0]),J=J+76|0,j=J>>2}else{break a}}}}while(0);c=c+1|0;if((c|0)==(r|0)){break}}}cG(x);h=s}function gl(b,r,i,g,c,d){var f,k=h;h+=176;f=g>>2;g=h;h+=32;a[g>>2]=a[f];a[g+4>>2]=a[f+1];a[g+8>>2]=a[f+2];a[g+12>>2]=a[f+3];a[g+16>>2]=a[f+4];a[g+20>>2]=a[f+5];a[g+24>>2]=a[f+6];a[g+28>>2]=a[f+7];var e,z=k+16,p=k+48,s=a[b+16>>2];f=(s+148|0)>>2;var v=c|0;a[v>>2]=a[f];var t=s+168|0;a[c+4>>2]=a[t>>2];var u=s+184|0;a[c+8>>2]=a[u>>2];var w=s+152|0;a[c+12>>2]=a[w>>2];var A=s+200|0,c=c+16|0;m[c]=a[A>>2]<<31>>31&255;var B=a[i+16>>2];if(0==(B|0)){e=852}else{if(0==m[B]<<24>>24){e=852}else{var C=0,P=B}}852==e&&(fc(k,128,p|0),C=r+52|0,e=a[C>>2],0==(e|0)&&(e=Hb(Kn(b,a[s+8>>2]|0,k)),a[C>>2]=e,m[r+56|0]=1),r=e,db(k,r),r=z|0,z=a[tt>>2],a[tt>>2]=z+1|0,Ma(r,BG|0,(j=h,h+=4,a[j>>2]=z,j)),db(k,r),r=(k+4|0)>>2,z=a[r],z>>>0>2]>>>0||(na(k,1),z=a[r]),m[z]=0,z=a[k>>2],a[r]=z,C=1,P=z);i=Or(b,0,a[i>>2],a[i+12>>2],a[i+8>>2],P,a[s+8>>2]|0);C&&uc(k);if(0==(i|0)){return h=k,i}0!=(d|0)&&!(0==(a[v>>2]|0)&&0==m[c]<<24>>24)&&Se(b);if(0==(a[f]|0)&&0==(a[A>>2]&1|0)){return h=k,i}Ln(b,g);ad(b,a[f],a[t>>2],a[u>>2],a[w>>2]);h=k;return i}function pG(b,r,i){var g,c=h;g=i>>2;i=h;h+=32;a[i>>2]=a[g];a[i+4>>2]=a[g+1];a[i+8>>2]=a[g+2];a[i+12>>2]=a[g+3];a[i+16>>2]=a[g+4];a[i+20>>2]=a[g+5];a[i+24>>2]=a[g+6];a[i+28>>2]=a[g+7];$b(b,r);Pa(b,r);mh(b,i,1);h=c}function qG(x,r,i,g){var c,d=h;c=g>>2;g=h;h+=32;a[g>>2]=a[c];a[g+4>>2]=a[c+1];a[g+8>>2]=a[c+2];a[g+12>>2]=a[c+3];a[g+16>>2]=a[c+4];a[g+20>>2]=a[c+5];a[g+24>>2]=a[c+6];a[g+28>>2]=a[c+7];r=0==(r|0)?Ac|0:r;$b(x,r);Pa(x,r);if(1==(i|0)){mh(x,g,0)}else{r=g+24|0;r=(b[0]=a[r>>2],b[1]=a[r+4>>2],f[0]);c=g+8|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);var l=r-c,k=g+16|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),g=g|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),e=k-g,j=i-1|0;No(x,g,c,j,l);i=1-i|0;No(x,g,r,e,i);No(x,k,r,i,-l);No(x,k,c,-e,j)}h=d}function rG(x,r,i){var g,c,d,l,k=h;h+=68;var e=k+36,j=r|0;l=e>>2;d=(r+40|0)>>2;a[l]=a[d];a[l+1]=a[d+1];a[l+2]=a[d+2];a[l+3]=a[d+3];a[l+4]=a[d+4];a[l+5]=a[d+5];a[l+6]=a[d+6];a[l+7]=a[d+7];d=i|0;g=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);d=i+8|0;l=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);d=0==(a[r>>2]|0)?0!=(a[r+8>>2]|0):1;c=(e|0)>>2;var p=(b[0]=a[c],b[1]=a[c+1],f[0])+g;f[0]=p;a[c]=b[0];a[c+1]=b[1];c=(e+16|0)>>2;g=(b[0]=a[c],b[1]=a[c+1],f[0])+g;f[0]=g;a[c]=b[0];a[c+1]=b[1];g=(e+8|0)>>2;c=(b[0]=a[g],b[1]=a[g+1],f[0])+l;f[0]=c;a[g]=b[0];a[g+1]=b[1];g=(e+24|0)>>2;l=(b[0]=a[g],b[1]=a[g+1],f[0])+l;f[0]=l;a[g]=b[0];a[g+1]=b[1];l=d?0!=(a[x+148>>2]&4|0)?0:gl(x,i,j,e,k,1):0;g=a[r+20>>2];0!=(g|0)&&pG(x,g,e);g=m[r+29|0];0!=g<<24>>24&&qG(x,a[r+24>>2],g&255,e);g=(r+80|0)>>2;r=m[r+84|0];if(3==r<<24>>24){g=a[g];r=h;h+=64;c=g|0;p=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);c=g+8|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);var s=g+16|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),v=g+24|0,v=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]),t=i|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),p=p+t,u=i+8|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]);c+=u;s+=t;v+=u;t=r|0;f[0]=s;a[t>>2]=b[0];a[t+4>>2]=b[1];t=r+8|0;f[0]=v;a[t>>2]=b[0];a[t+4>>2]=b[1];t=r+32|0;f[0]=p;a[t>>2]=b[0];a[t+4>>2]=b[1];t=r+40|0;f[0]=c;a[t>>2]=b[0];a[t+4>>2]=b[1];t=r+16|0;f[0]=p;a[t>>2]=b[0];a[t+4>>2]=b[1];p=r+24|0;f[0]=v;a[p>>2]=b[0];a[p+4>>2]=b[1];p=r+48|0;f[0]=s;a[p>>2]=b[0];a[p+4>>2]=b[1];p=r+56|0;f[0]=c;a[p>>2]=b[0];a[p+4>>2]=b[1];c=a[g+36>>2];0==(c|0)&&(c=a[i+48>>2]);g=a[(g+32|0)>>2];ut(x,g,r|0,4,1,c);h=r}else{1==r<<24>>24?qt(x,a[g],i):oG(x,a[g],i)}0!=(l|0)&&hl(x,k,1);d&&0!=(a[x+148>>2]&4|0)&&0!=(gl(x,i,j,e,k,0)|0)&&hl(x,k,0);h=k}function hl(b,r,i){var g,c,d,f=a[b+16>>2];d=(f+148|0)>>2;0==(a[d]|0)?0==(a[f+200>>2]&1|0)?c=0:g=911:g=911;911==g&&(Se(b),c=a[d]);g=r|0;(c|0)!=(a[g>>2]|0)&&(G(c),a[d]=a[g>>2]);c=(f+168|0)>>2;g=a[c];var k=r+4|0;(g|0)!=(a[k>>2]|0)&&(G(g),a[c]=a[k>>2]);g=(f+184|0)>>2;var k=a[g],e=r+8|0;(k|0)!=(a[e>>2]|0)&&(G(k),a[g]=a[e>>2]);var k=f+152|0,e=a[k>>2],h=r+12|0;(e|0)!=(a[h>>2]|0)&&(G(e),e=a[h>>2],a[k>>2]=e);k=e;r=m[r+16|0]&1;f=f+200|0;a[f>>2]=a[f>>2]&-2|r;0!=(i|0)&&(i=a[d],0==(i|0)&0==(r|0)||ad(b,i,a[c],a[g],k))}function No(x,r,i,g,c){var d=h;h+=32;var l=d|0;f[0]=r;a[l>>2]=b[0];a[l+4>>2]=b[1];l=d+8|0;f[0]=i;a[l>>2]=b[0];a[l+4>>2]=b[1];l=d+16|0;f[0]=r+g;a[l>>2]=b[0];a[l+4>>2]=b[1];r=d+24|0;f[0]=i+c;a[r>>2]=b[0];a[r+4>>2]=b[1];mh(x,d,1);h=d}function Oo(x,r,i){var g=h;h+=8;var c=g+4;if(0!=m[ld]<<24>>24){var d=a[x+216>>2];if(0==(d|0)){var l=0,k=0}else{for(var e=0,z=0;;){var e=e+1|0,p=a[d+184>>2],s=0==(a[p>>2]|0);a:do{if(s){var v=z}else{for(var t=0,u=z;;){if(u=u+1|0,t=t+1|0,0==(a[p+(t<<2)>>2]|0)){v=u;break a}}}}while(0);d=a[d+168>>2];if(0==(d|0)){l=e;k=v;break}else{z=v}}}a[g>>2]=l;a[c>>2]=k;l=a[g>>2];c=a[c>>2];Va(a[oa>>2],CG|0,(j=h,h+=20,a[j>>2]=Po|0,a[j+4>>2]=l,a[j+8>>2]=c,a[j+12>>2]=i,a[j+16>>2]=r,j));mk(ih)}0==(DG(x)|0)&&EG();if(1>(i|0)){return vt(),h=g,0}x=V(x|0,FG|0);x=0==(x|0)?30:bh(x);a[Qo>>2]=x;if(0==(GG()|0)){x=0}else{return vt(),h=g,1}for(;;){c=HG();if(0==(c|0)){var w=x;break}IG(c,JG(a[c+12>>2],a[c+16>>2]));x=x+1|0;0!=m[ld]<<24>>24&&0==(x%100|0)&&(c=(x|0)%1e3,l=a[oa>>2],100==(c|0)?(Lc(Po|0,17,1,l),Va(a[oa>>2],wt|0,(j=h,h+=4,a[j>>2]=x,j))):(Va(l,wt|0,(j=h,h+=4,a[j>>2]=x,j)),0==(c|0)&&kk(10,a[oa>>2])));if((x|0)>=(i|0)){w=x;break}}1==(r|0)?KG():2==(r|0)?LG():MG();if(0==m[ld]<<24>>24){return h=g,0}99<(w|0)&&kk(10,a[oa>>2]);r=a[oa>>2];i=a[Le>>2];x=a[Ro>>2];c=Jn();Va(r,NG|0,(j=h,h+=24,a[j>>2]=Po|0,a[j+4>>2]=i,a[j+8>>2]=x,a[j+12>>2]=w,f[0]=c,a[j+16>>2]=b[0],a[j+20>>2]=b[1],j));h=g;return 0}function DG(b){var r;a[Ef>>2]=b;a[il>>2]=0;a[Ro>>2]=0;a[Le>>2]=0;var b=b+216|0,i=a[b>>2];if(0==(i|0)){r=0}else{for(var g=0,c=0;;){m[i+163|0]=0;r=g+1|0;a[Le>>2]=r;var g=a[i+184>>2],d=0==(a[g>>2]|0);a:do{if(d){var f=c}else{for(var e=0,h=c;;){if(h=h+1|0,a[Ro>>2]=h,e=e+1|0,0==(a[g+(e<<2)>>2]|0)){f=h;break a}}}}while(0);i=a[i+168>>2];if(0==(i|0)){break}else{g=r,c=f}}r<<=2}f=a[Vi>>2];r=0==(f|0)?Cb(r):wb(f,r);a[Vi>>2]=r;a[dg>>2]=0;r=a[eg>>2];r=0==(r|0)?Cb(a[Le>>2]<<2):wb(r,a[Le>>2]<<2);a[eg>>2]=r;a[jf>>2]=0;b=a[b>>2];if(0==(b|0)){var j;return 1}i=1;f=b;for(b=f>>2;;){r=(f+292|0)>>2;a[r]=0;f=f+176|0;g=a[a[f>>2]>>2];if(0==(g|0)){r=i,f=4}else{c=i;for(d=i=1;;){a[r]=d;a[g+168>>2]=0;a[g+172>>2]=-1;var p=0==(c|0)?0:(a[a[g+12>>2]+236>>2]-a[a[g+16>>2]+236>>2]|0)<(D[g+178>>1]&65535|0)?0:c,g=a[a[f>>2]+(i<<2)>>2];if(0==(g|0)){break}c=p;i=i+1|0;d=a[r]+1|0}r=p;f=(i<<2)+4|0}a[b+66]=fa(f);a[b+67]=0;f=a[b+46];for(i=0;;){var s=i+1|0;if(0==(a[f+(i<<2)>>2]|0)){break}else{i=s}}a[b+68]=fa(s<<2);a[b+69]=0;b=a[b+42];if(0==(b|0)){j=r;break}else{i=r,f=b,b=f>>2}}return j}function EG(){var b,r=h,i=ZE(a[Le>>2]),g=a[a[Ef>>2]+216>>2],c=0==(g|0);a:do{if(!c){for(var d=g;;){if(0==(a[d+292>>2]|0)&&Rk(i,d),d=a[d+168>>2],0==(d|0)){break a}}}}while(0);g=Sk(i);c=0==(g|0);a:do{if(c){b=0}else{for(var d=0,f=g;;){var e=f+236|0;a[e>>2]=0;var d=d+1|0,n=a[f+176>>2],z=a[n>>2],p=0==(z|0);b:do{if(!p){for(var m=0,v=z,t=0;;){if(v=(D[v+178>>1]&65535)+a[a[v+16>>2]+236>>2]|0,t=(t|0)>(v|0)?t:v,a[e>>2]=t,m=m+1|0,v=a[n+(m<<2)>>2],0==(v|0)){break b}}}}while(0);f=f+184|0;e=a[a[f>>2]>>2];n=0==(e|0);b:do{if(!n){z=0;for(p=e;;){if(p=p+12|0,m=a[p>>2]+292|0,t=a[m>>2]-1|0,a[m>>2]=t,1>(t|0)&&Rk(i,a[p>>2]),z=z+1|0,p=a[a[f>>2]+(z<<2)>>2],0==(p|0)){break b}}}}while(0);f=Sk(i);if(0==(f|0)){b=d;break a}}}}while(0);if((b|0)!=(a[Le>>2]|0)&&(la(1,OG|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),b=a[a[Ef>>2]+216>>2],0!=(b|0))){for(b>>=2;!(g=a[b+73],0!=(g|0)&&la(3,PG|0,(j=h,h+=8,a[j>>2]=a[b+3],a[j+4>>2]=g,j)),b=a[b+42],0==(b|0));){b>>=2}}G(a[i>>2]);G(i);h=r}function vt(){var b;b=a[a[Ef>>2]+216>>2];if(0!=(b|0)){var r=b;for(b=r>>2;;){var i=a[b+66];0!=(i|0)&&G(i);i=a[b+68];0!=(i|0)&&G(i);m[r+163|0]=0;b=a[b+42];if(0==(b|0)){break}else{r=b,b=r>>2}}}}function HG(){for(var b,r=a[il>>2],i=a[jf>>2],g=0,c=0,d=r;(d|0)<(i|0);){var f=a[a[eg>>2]+(d<<2)>>2],e=a[f+168>>2];if(0>(e|0)){if(e=0==(g|0)?f:(a[g+168>>2]|0)>(e|0)?f:g,f=c+1|0,(f|0)<(a[Qo>>2]|0)){g=e,c=f}else{var h=e;b=1036;break}}d=d+1|0;a[il>>2]=d}if(1036==b){return h}if(0<(r|0)){i=0}else{return g}for(;;){a[il>>2]=i;if((i|0)>=(r|0)){h=g;b=1033;break}d=a[a[eg>>2]+(i<<2)>>2];f=a[d+168>>2];if(0>(f|0)&&(g=0==(g|0)?d:(a[g+168>>2]|0)>(f|0)?d:g,c=c+1|0,(c|0)>=(a[Qo>>2]|0))){h=g;b=1035;break}i=i+1|0}if(1033==b||1035==b){return h}}function MG(){a[So>>2]=2147483647;a[xh>>2]=-2147483647;var b=a[a[Ef>>2]+216>>2],r=0==(b|0);a:do{if(r){var i=2147483647,g=-2147483647}else{for(var c=b,d=2147483647,f=-2147483647;;){if(0==m[c+162|0]<<24>>24){var e=a[c+236>>2],h=(d|0)<(e|0)?d:e;a[So>>2]=h;f=(f|0)>(e|0)?f:e;a[xh>>2]=f;e=h}else{e=d}h=f;c=a[c+168>>2];if(0==(c|0)){break}else{d=e,f=h}}if(0==(e|0)){return}for(c=b;;){if(f=c+236|0,a[f>>2]=a[f>>2]-e|0,c=a[c+168>>2],0==(c|0)){i=e;g=h;break a}}}}while(0);a[xh>>2]=g-i|0;a[So>>2]=0}function QG(b,r,i,g){var c,r=r+288|0,d=-i|0,f=0==(g|0)&1;for(c=b>>2;;){var e=a[r>>2];if((a[c+71]|0)<=(e|0)&&(e|0)<=(a[c+72]|0)){break}e=a[c+70];c=a[e+16>>2];var h=e+168|0;a[h>>2]=(0==(((b|0)==(c|0)?g:f)|0)?d:i)+a[h>>2]|0;b=a[e+12>>2];b=(a[c+288>>2]|0)>(a[b+288>>2]|0)?c:b;c=b>>2}return b}function RG(b,r){var i,g;g=(b+172|0)>>2;a[r+172>>2]=a[g];a[a[eg>>2]+(a[g]<<2)>>2]=r;a[g]=-1;var c=a[b+16>>2],d=c+276|0;g=a[d>>2]-1|0;a[d>>2]=g;for(var c=c+272|0,d=a[c>>2],f=0;;){var e=(f<<2)+d|0;if((f|0)>(g|0)){var h=e;break}if((a[e>>2]|0)==(b|0)){h=e;break}else{f=f+1|0}}a[h>>2]=a[d+(g<<2)>>2];a[a[c>>2]+(g<<2)>>2]=0;g=a[b+12>>2];c=g+268|0;h=a[c>>2]-1|0;a[c>>2]=h;g=g+264|0;c=a[g>>2];for(d=0;;){f=(d<<2)+c|0;if((d|0)>(h|0)){i=f;break}if((a[f>>2]|0)==(b|0)){i=f;break}else{d=d+1|0}}a[i>>2]=a[c+(h<<2)>>2];a[a[g>>2]+(h<<2)>>2]=0;g=a[r+16>>2];i=(g+276|0)>>2;h=a[i];a[i]=h+1|0;g=g+272|0;a[a[g>>2]+(h<<2)>>2]=r;a[a[g>>2]+(a[i]<<2)>>2]=0;g=a[r+12>>2];i=(g+268|0)>>2;h=a[i];a[i]=h+1|0;g=g+264|0;a[a[g>>2]+(h<<2)>>2]=r;a[a[g>>2]+(a[i]<<2)>>2]=0}function GG(){var b;if(2>(a[Le>>2]|0)){var r;return 0}a:for(;;){if((SG()|0)>=(a[Le>>2]|0)){b=1075;break}var i=a[a[Ef>>2]+216>>2];if(0==(i|0)){r=1;b=1078;break}else{var g=0}for(;;){var c=a[i+184>>2],d=a[c>>2],f=0==(d|0);b:do{if(f){var e=g}else{for(var h=g,j=0,p=d;;){if(0>(a[p+172>>2]|0)){var m=a[p+12>>2],v=a[p+16>>2],h=0==(TG(m,v)|0)?h:0!=(h|0)&&(a[m+236>>2]-a[v+236>>2]-(D[p+178>>1]&65535)|0)>=(a[a[h+12>>2]+236>>2]-a[a[h+16>>2]+236>>2]-(D[h+178>>1]&65535)|0)?h:p}j=j+1|0;p=a[c+(j<<2)>>2];if(0==(p|0)){e=h;break b}}}}while(0);i=a[i+168>>2];if(0==(i|0)){break}else{g=e}}if(0==(e|0)){r=1;b=1080;break}g=a[e+12>>2];i=a[e+16>>2];c=a[g+236>>2]-a[i+236>>2]|0;d=D[e+178>>1]&65535;f=c-d|0;if((c|0)!=(d|0)&&(g=(TG(g,i)|0)==(g|0)?-f|0:f,i=a[dg>>2],0<(i|0))){c=a[Vi>>2];for(d=0;;){if(f=a[c+(d<<2)>>2]+236|0,a[f>>2]=a[f>>2]+g|0,d=d+1|0,(d|0)>=(i|0)){continue a}}}}if(1080==b){return r}if(1075==b){return b=a[Ef>>2]+216|0,jl(a[b>>2],0,1),xt(a[b>>2],0),0}if(1078==b){return r}}function JG(b,r){var i=(a[r+288>>2]|0)<(a[b+288>>2]|0),g=i?r:b;a[yh>>2]=0;a[Ff>>2]=2147483647;a[To>>2]=a[g+284>>2];a[Uo>>2]=a[g+288>>2];i?Vo(g):Wo(g);return i=a[yh>>2]}function KG(){var b,r;MG();var i=fa((a[xh>>2]<<2)+4|0);r=i>>2;b=a[xh>>2];var g=0>(b|0);a:do{if(!g){for(var c=0;;){if(a[(c<<2>>2)+r]=0,c=c+1|0,(c|0)>(b|0)){break a}}}}while(0);b=a[Ef>>2]+216|0;g=a[b>>2];if(0!=(g|0)){for(;!(0==m[g+162|0]<<24>>24&&(c=(a[g+236>>2]<<2)+i|0,a[c>>2]=a[c>>2]+1|0),g=a[g+168>>2],0==(g|0));){}b=a[b>>2];if(0!=(b|0)){g=b;for(b=g>>2;;){if(0==m[g+162|0]<<24>>24){var c=a[xh>>2],d=a[b+44],f=a[d>>2],e=0==(f|0);a:do{if(e){var h=0,j=0}else{for(var p=0,s=0,v=0,t=f;;){if(p=p+ib[t+164>>2]&-1,t=(D[t+178>>1]&65535)+a[a[t+16>>2]+236>>2]|0,s=(s|0)>(t|0)?s:t,v=v+1|0,t=a[d+(v<<2)>>2],0==(t|0)){h=p;j=s;break a}}}}while(0);d=a[b+46];f=a[d>>2];e=0==(f|0);a:do{if(e){var u=0,w=c}else{p=0;s=c;v=0;for(t=f;;){if(p=p+ib[t+164>>2]&-1,t=a[a[t+12>>2]+236>>2]-(D[t+178>>1]&65535)|0,s=(s|0)<(t|0)?s:t,v=v+1|0,t=a[d+(v<<2)>>2],0==(t|0)){u=p;w=s;break a}}}}while(0);c=0>(j|0)?0:j;if((h|0)==(u|0)){d=c+1|0;f=(d|0)>(w|0);a:do{if(f){var A=c}else{e=c;for(s=d;;){if(e=(a[(s<<2>>2)+r]|0)<(a[(e<<2>>2)+r]|0)?s:e,s=s+1|0,(s|0)>(w|0)){A=e;break a}}}}while(0);c=g+236|0;d=(a[c>>2]<<2)+i|0;a[d>>2]=a[d>>2]-1|0;d=(A<<2)+i|0;a[d>>2]=a[d>>2]+1|0;a[c>>2]=A}c=a[b+66];0!=(c|0)&&G(c);c=a[b+68];0!=(c|0)&&G(c);m[g+163|0]=0}b=a[b+42];if(0==(b|0)){break}else{g=b,b=g>>2}}}}G(i)}function LG(){var b=a[jf>>2];if(0<(b|0)){for(var r=a[eg>>2],i=0;;){var g=a[r+(i<<2)>>2];if(0==(a[g+168>>2]|0)){var c=g+12|0,d=g+16|0,g=JG(a[c>>2],a[d>>2]);0!=(g|0)&&(g=a[a[g+12>>2]+236>>2]-a[a[g+16>>2]+236>>2]-(D[g+178>>1]&65535)|0,2>(g|0)||(d=a[d>>2],c=a[c>>2],(a[d+288>>2]|0)<(a[c+288>>2]|0)?fg(d,(g|0)/2&-1):fg(c,(g|0)/-2&-1)))}i=i+1|0;if((i|0)>=(b|0)){break}}}vt()}function fg(b,r){var i=b+236|0;a[i>>2]=a[i>>2]-r|0;var i=b+272|0,g=a[i>>2],c=a[g>>2],d=0==(c|0);a:do{if(!d){for(var f=b+280|0,e=1,h=c,j=g;;){(h|0)!=(a[f>>2]|0)&&(fg(a[h+12>>2],r),j=a[i>>2]);h=a[j+(e<<2)>>2];if(0==(h|0)){break a}e=e+1|0}}}while(0);i=b+264|0;f=a[i>>2];d=a[f>>2];if(0!=(d|0)){g=b+280|0;for(c=1;;){(d|0)!=(a[g>>2]|0)&&(fg(a[d+16>>2],r),f=a[i>>2]);d=a[f+(c<<2)>>2];if(0==(d|0)){break}c=c+1|0}}}function IG(b,r){var i,g,c,d;d=(r+12|0)>>2;c=(r+16|0)>>2;var f=a[a[d]+236>>2]-a[a[c]+236>>2]-(D[r+178>>1]&65535)|0;if(0<(f|0)){var e=a[b+16>>2];g=e>>2;if(1==(a[g+69]+a[g+67]|0)){fg(e,f)}else{var h=a[b+12>>2];i=h>>2;1==(a[i+69]+a[i+67]|0)?fg(h,-f|0):(a[g+72]|0)<(a[i+72]|0)?fg(e,f):fg(h,-f|0)}}i=b+168|0;g=a[i>>2];f=QG(a[c],a[d],g,1);(QG(a[d],a[c],g,0)|0)==(f|0)?(a[r+168>>2]=-g|0,a[i>>2]=0,RG(b,r),jl(f,a[f+280>>2],a[f+284>>2])):S()}function TG(a,b){var i,g=0==m[a+163|0]<<24>>24;if(0==m[b+163|0]<<24>>24){if(g){i=1154}else{var c=a}}else{g?c=b:i=1154}1154==i&&(c=0);return c}function yt(b,r,i){var b=b>>2,g,c=a[b+4],d=(c|0)==(r|0),c=a[(d?a[b+3]:c)+288>>2];if((a[r+284>>2]|0)>(c|0)){g=1160}else{if((c|0)>(a[r+288>>2]|0)){g=1160}else{var f=0,e=(-1<(a[b+43]|0)?a[b+42]|0:0)-ib[b+41]}}1160==g&&(f=1,e=ib[b+41]);g=e&-1;r=0<(i|0)?(a[b+3]|0)==(r|0)?1:-1:d?1:-1;f=0==(f|0)?r:-r|0;return f=0>(f|0)?-g|0:g}function jl(b,r,i){a[b+280>>2]=r;a[b+284>>2]=i;var g=b+272|0,c=a[g>>2],d=a[c>>2],f=0==(d|0);a:do{if(f){var e=i}else{for(var h=0,j=i,p=d,m=c;;){if((p|0)!=(r|0)&&(j=jl(a[p+12>>2],p,j),m=a[g>>2]),h=h+1|0,p=a[m+(h<<2)>>2],0==(p|0)){e=j;break a}}}}while(0);i=b+264|0;c=a[i>>2];d=a[c>>2];if(0==(d|0)){var v=e;a[(b+288|0)>>2]=v;return v+1|0}for(g=0;;){if((d|0)!=(r|0)&&(e=jl(a[d+16>>2],d,e),c=a[i>>2]),g=g+1|0,d=a[c+(g<<2)>>2],0==(d|0)){v=e;break}}a[(b+288|0)>>2]=v;return v+1|0}function Wo(b){var r=b+184|0,i=a[r>>2],g=a[i>>2],c=0==(g|0);a:do{if(!c){for(var d=b+288|0,f=0,e=g,h=i;;){if(0>(a[e+172>>2]|0)){var j=a[e+12>>2],p=a[j+288>>2];(a[To>>2]|0)>(p|0)|(p|0)>(a[Uo>>2]|0)&&(j=a[j+236>>2]-a[a[e+16>>2]+236>>2]-(D[e+178>>1]&65535)|0,(j|0)<(a[Ff>>2]|0)|0==(a[yh>>2]|0)&&(a[yh>>2]=e,a[Ff>>2]=j))}else{e=a[e+12>>2],(a[e+288>>2]|0)<(a[d>>2]|0)&&(Wo(e),h=a[r>>2])}f=f+1|0;e=a[h+(f<<2)>>2];if(0==(e|0)){break a}}}}while(0);r=b+264|0;d=a[r>>2];g=a[d>>2];c=a[Ff>>2];if(0!=(g|0)&0<(c|0)){b=b+288|0;for(i=1;;){g=a[g+16>>2];(a[g+288>>2]|0)<(a[b>>2]|0)&&(Wo(g),d=a[r>>2],c=a[Ff>>2]);g=a[d+(i<<2)>>2];if(!(0!=(g|0)&0<(c|0))){break}i=i+1|0}}}function Vo(b){var c=b+176|0,i=a[c>>2],g=a[i>>2],d=0==(g|0);a:do{if(!d){for(var f=b+288|0,e=0,k=g,h=i;;){if(0>(a[k+172>>2]|0)){var j=a[k+16>>2],p=a[j+288>>2];(a[To>>2]|0)>(p|0)|(p|0)>(a[Uo>>2]|0)&&(j=a[a[k+12>>2]+236>>2]-a[j+236>>2]-(D[k+178>>1]&65535)|0,(j|0)<(a[Ff>>2]|0)|0==(a[yh>>2]|0)&&(a[yh>>2]=k,a[Ff>>2]=j))}else{k=a[k+16>>2],(a[k+288>>2]|0)<(a[f>>2]|0)&&(Vo(k),h=a[c>>2])}e=e+1|0;k=a[h+(e<<2)>>2];if(0==(k|0)){break a}}}}while(0);c=b+272|0;f=a[c>>2];g=a[f>>2];d=a[Ff>>2];if(0!=(g|0)&0<(d|0)){b=b+288|0;for(i=1;;){g=a[g+12>>2];(a[g+288>>2]|0)<(a[b>>2]|0)&&(Vo(g),f=a[c>>2],d=a[Ff>>2]);g=a[f+(i<<2)>>2];if(!(0!=(g|0)&0<(d|0))){break}i=i+1|0}}}function SG(){var b,c=a[Ef>>2]+216|0,i=a[c>>2],g=0==(i|0);a:do{if(!g){var d=i;for(b=d>>2;;){if(m[d+163|0]=0,a[a[b+68]>>2]=0,a[a[b+66]>>2]=0,a[b+69]=0,a[b+67]=0,b=a[b+42],0==(b|0)){break a}else{d=b,b=d>>2}}}}while(0);i=a[jf>>2];g=0<(i|0);a:do{if(g){b=a[eg>>2];for(d=0;;){if(a[a[b+(d<<2)>>2]+172>>2]=-1,d=d+1|0,(d|0)>=(i|0)){break a}}}}while(0);a[jf>>2]=0;a[dg>>2]=0;c=a[c>>2];if(0==(c|0)){return 0}for(;!(Xo(c),c=a[c+168>>2],!(0!=(c|0)&0==(a[jf>>2]|0)));){}return c=a[dg>>2]}function xt(b,c){var i=b+272|0,g=a[i>>2],d=a[g>>2],f=0==(d|0);a:do{if(!f){for(var e=0,k=d,h=g;;){if((k|0)!=(c|0)&&(xt(a[k+12>>2],k),h=a[i>>2]),e=e+1|0,k=a[h+(e<<2)>>2],0==(k|0)){break a}}}}while(0);i=b+264|0;g=a[i>>2];d=a[g>>2];f=0==(d|0);a:do{if(!f){e=0;k=d;for(h=g;;){if((k|0)!=(c|0)&&(xt(a[k+16>>2],k),h=a[i>>2]),e=e+1|0,k=a[h+(e<<2)>>2],0==(k|0)){break a}}}}while(0);if(0!=(c|0)){g=a[c+16>>2];(a[g+280>>2]|0)==(c|0)?i=1:(i=-1,g=a[c+12>>2]);d=a[g+184>>2];f=a[d>>2];e=0==(f|0);a:do{if(e){var j=0}else{for(var k=h=0,p=f;;){if(h=yt(p,g,i)+h|0,k=k+1|0,p=a[d+(k<<2)>>2],0==(p|0)){j=h;break a}}}}while(0);d=a[g+176>>2];e=a[d>>2];if(0==(e|0)){var m=j}else{for(f=0;;){if(j=yt(e,g,i)+j|0,f=f+1|0,e=a[d+(f<<2)>>2],0==(e|0)){m=j;break}}}j=c+168|0;a[j>>2]=m}}function Xo(b){var c,i=b+184|0,g=0;a:for(;;){var d=a[a[i>>2]+(g<<2)>>2];if(0==(d|0)){c=1253;break}var f=d+12|0,e=a[f>>2];do{if(0==m[e+163|0]<<24>>24&&(a[e+236>>2]-a[a[d+16>>2]+236>>2]|0)==(D[d+178>>1]&65535|0)){zt(d);if((a[jf>>2]|0)==(a[Le>>2]-1|0)){var k=1;c=1268;break a}if(0!=(Xo(a[f>>2])|0)){k=1;c=1269;break a}}}while(0);g=g+1|0}if(1268==c){return k}if(1253==c){b=b+176|0;i=0;a:for(;;){g=a[a[b>>2]+(i<<2)>>2];if(0==(g|0)){k=0;c=1266;break}d=g+16|0;f=a[d>>2];do{if(0==m[f+163|0]<<24>>24&&(a[a[g+12>>2]+236>>2]-a[f+236>>2]|0)==(D[g+178>>1]&65535|0)){zt(g);if((a[jf>>2]|0)==(a[Le>>2]-1|0)){k=1;c=1267;break a}if(0!=(Xo(a[d>>2])|0)){k=1;c=1270;break a}}}while(0);i=i+1|0}if(1270==c||1266==c||1267==c){return k}}else{if(1269==c){return k}}}function At(x,c){var i,g,d,e,l,k=h;h+=144;var n=k+16,j=k+32,p=k+48,m=k+64,v=k+80,t=k+96,u=k+112;i=k+128;l=(x+52|0)>>2;var w=(b[0]=a[l],b[1]=a[l+1],f[0]);e=(x+60|0)>>2;var A=(b[0]=a[e],b[1]=a[e+1],f[0]);d=(x+68|0)>>2;var B=(b[0]=a[d],b[1]=a[d+1],f[0]);g=(x+76|0)>>2;var C=(b[0]=a[g],b[1]=a[g+1],f[0]);2>(c-1|0)>>>0?(zh(k,w,C),u=k|0,t=k+8|0,ce(n,(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])),u=n|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),t=n+8|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),zh(j,B,A),B=j|0,j=j+8|0,ce(p,(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])),B=p|0,j=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),B=p+8|0,B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),A=j,j=t,p=u):(zh(m,w,A),p=m|0,j=m+8|0,ce(v,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])),p=v|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),j=v+8|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),zh(t,B,C),B=t|0,t=t+8|0,ce(u,(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])),B=u|0,t=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),B=u+8|0,B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),A=t);f[0]=p;a[l]=b[0];a[l+1]=b[1];f[0]=j;a[e]=b[0];a[e+1]=b[1];f[0]=A;a[d]=b[0];a[d+1]=b[1];f[0]=B;a[g]=b[0];a[g+1]=b[1];e=a[x+48>>2];0!=(e|0)&&(g=e+56|0,d=g|0,e=e+64|0,ce(i,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])),g>>=2,i>>=2,a[g]=a[i],a[g+1]=a[i+1],a[g+2]=a[i+2],a[g+3]=a[i+3]);i=x+208|0;if(1<=(a[i>>2]|0)){g=x+212|0;for(d=1;!(At(a[a[g>>2]+(d<<2)>>2],c),d=d+1|0,(d|0)>(a[i>>2]|0));){}}h=k}function zt(b){var c,i;c=b+172|0;-1<(a[c>>2]|0)&&S();i=a[jf>>2];a[c>>2]=i;a[jf>>2]=i+1|0;a[a[eg>>2]+(i<<2)>>2]=b;i=b+16|0;c=a[i>>2];if(0==m[c+163|0]<<24>>24){var g=a[dg>>2];a[dg>>2]=g+1|0;a[a[Vi>>2]+(g<<2)>>2]=c}c=b+12|0;g=a[c>>2];if(0==m[g+163|0]<<24>>24){var d=a[dg>>2];a[dg>>2]=d+1|0;a[a[Vi>>2]+(d<<2)>>2]=g}g=a[i>>2];m[g+163|0]=1;i=(g+276|0)>>2;d=a[i];a[i]=d+1|0;var f=g+272|0;a[a[f>>2]+(d<<2)>>2]=b;a[a[f>>2]+(a[i]<<2)>>2]=0;0==(a[a[g+184>>2]+(a[i]-1<<2)>>2]|0)&&S();i=a[c>>2];m[i+163|0]=1;c=(i+268|0)>>2;g=a[c];a[c]=g+1|0;d=i+264|0;a[a[d>>2]+(g<<2)>>2]=b;a[a[d>>2]+(a[c]<<2)>>2]=0;0==(a[a[i+176>>2]+(a[c]-1<<2)>>2]|0)&&S()}function zh(x,c,i){var g=x|0;f[0]=c;a[g>>2]=b[0];a[g+4>>2]=b[1];x=x+8|0;f[0]=i;a[x>>2]=b[0];a[x+4>>2]=b[1]}function ce(x,c,i){var g=h;h+=16;Ui(g,c,i,90*a[kl>>2]|0);var c=g|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),i=g+8|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),c=c-(b[0]=a[Yb>>2],b[1]=a[Yb+4>>2],f[0]),i=i-(b[0]=a[Yb+8>>2],b[1]=a[Yb+12>>2],f[0]),d=x|0;f[0]=c;a[d>>2]=b[0];a[d+4>>2]=b[1];x=x+8|0;f[0]=i;a[x>>2]=b[0];a[x+4>>2]=b[1];h=g}function Bt(x,c){var i,g,d,e=h;h+=1072;i=e+16;var l=e+32,k=e+48,n=ra(x);if(0!=(n|0)){for(;;){var z;g=n+24|0;var p=a[n+124>>2];if(0!=(p|0)){var s=g+8|0,v=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),s=g+16|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);g=g+88|0;d=p+24|0;z=z+(v+(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]))+.5*(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);v=p+56|0;f[0]=z;a[v>>2]=b[0];a[v+4>>2]=b[1];v=p+64|0;f[0]=s;a[v>>2]=b[0];a[v+4>>2]=b[1];m[p+81|0]=1}p=z;n=ba(x,n);if(0==(n|0)){break}else{z=p}}}n=a[x+152>>2];p=n&3;a[kl>>2]=p;n&=1;m[Ct]=n;(g=0==n<<24>>24)?Dt(x):Et(x);n=x+48|0;z=a[n>>2];if(0==(z|0)){v=s=0}else{if(0!=m[z+81|0]<<24>>24){v=s=0}else{s=z+24|0;v=z+32|0;s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0])+16;v=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0])+8;d=0!=(m[x+283|0]&1)<<24>>24;if(g){g=0==(p|0);d?g?(g=(x+76|0)>>2,d=(b[0]=a[g],b[1]=a[g+1],f[0])+v):(g=(x+60|0)>>2,d=(b[0]=a[g],b[1]=a[g+1],f[0])-v):g?(g=(x+60|0)>>2,d=(b[0]=a[g],b[1]=a[g+1],f[0])-v):(g=(x+76|0)>>2,d=(b[0]=a[g],b[1]=a[g+1],f[0])+v);f[0]=d;a[g]=b[0];a[g+1]=b[1];d=(x+68|0)>>2;var t=(b[0]=a[d],b[1]=a[d+1],f[0]);g=(x+52|0)>>2;var u=(b[0]=a[g],b[1]=a[g+1],f[0]),w=t-u}else{d?(g=(x+68|0)>>2,d=(b[0]=a[g],b[1]=a[g+1],f[0])+v):(g=(x+52|0)>>2,d=(b[0]=a[g],b[1]=a[g+1],f[0])-v),f[0]=d,a[g]=b[0],a[g+1]=b[1],d=(x+76|0)>>2,t=(b[0]=a[d],b[1]=a[d+1],f[0]),g=(x+60|0)>>2,u=(b[0]=a[g],b[1]=a[g+1],f[0]),w=t-u}s>w&&(w=.5*(s-w),f[0]=u-w,a[g]=b[0],a[g+1]=b[1],f[0]=t+w,a[d]=b[0],a[d+1]=b[1])}}0==(c|0)?i=z:(1==(p|0)?(i=x+76|0,l=x+52|0,zh(e,-(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),i=e>>2,a[Yb>>2]=a[i],a[Yb+4>>2]=a[i+1],a[Yb+8>>2]=a[i+2],a[Yb+12>>2]=a[i+3]):0==(p|0)?(i=(x+52|0)>>2,a[Yb>>2]=a[i],a[Yb+4>>2]=a[i+1],a[Yb+8>>2]=a[i+2],a[Yb+12>>2]=a[i+3]):2==(p|0)?(l=x+52|0,p=x+76|0,zh(i,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),-(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])),i>>=2,a[Yb>>2]=a[i],a[Yb+4>>2]=a[i+1],a[Yb+8>>2]=a[i+2],a[Yb+12>>2]=a[i+3]):3==(p|0)&&(i=x+60|0,p=x+52|0,zh(l,(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])),i=l>>2,a[Yb>>2]=a[i],a[Yb+4>>2]=a[i+1],a[Yb+8>>2]=a[i+2],a[Yb+12>>2]=a[i+3]),UG(x),i=a[n>>2]);0!=(i|0)&&0==m[i+81|0]<<24>>24&&(n=s,i=v,l=m[x+283|0],p=l<<24>>24,0==(p&4|0)?(z=x+52|0,z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),0==(p&2|0)?(n=x+68|0,n=.5*(z+(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]))):n=z+.5*n):(p=x+68|0,n=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])-.5*n),0==(l&1)<<24>>24?(l=x+60|0,i=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+.5*i):(l=x+76|0,i=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])-.5*i),l=x+48|0,p=a[l>>2],z=p+56|0,f[0]=n,a[z>>2]=b[0],a[z+4>>2]=b[1],n=p+64|0,f[0]=i,a[n>>2]=b[0],a[n+4>>2]=b[1],m[a[l>>2]+81|0]=1);0!=(a[Yn>>2]|0)&&(k|=0,0==m[Ct]<<24>>24?(i=(b[0]=a[Yb+8>>2],b[1]=a[Yb+12>>2],f[0]),l=(b[0]=a[Yb>>2],b[1]=a[Yb+4>>2],f[0]),Ma(k,VG|0,(j=h,h+=48,f[0]=i,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=i,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=l,a[j+24>>2]=b[0],a[j+28>>2]=b[1],f[0]=-l,a[j+32>>2]=b[0],a[j+36>>2]=b[1],f[0]=-i,a[j+40>>2]=b[0],a[j+44>>2]=b[1],j))):(i=(b[0]=a[Yb>>2],b[1]=a[Yb+4>>2],f[0]),l=(b[0]=a[Yb+8>>2],b[1]=a[Yb+12>>2],f[0]),Ma(k,WG|0,(j=h,h+=32,f[0]=i,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=i,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=l,a[j+24>>2]=b[0],a[j+28>>2]=b[1],j))),k=Hb(k),a[a[Yn>>2]>>2]=k);h=e}function Et(x){if((a[x+32>>2]|0)!=(x|0)){var c=x+48|0,i=a[c>>2];if(0!=(i|0)&&0==m[i+81|0]<<24>>24){var g=m[x+283|0];if(0==(g&1)<<24>>24){var d=x+132|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),e=x+52|0,d=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+.5*d,e=x+140|0}else{d=x+100|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),e=x+68|0,d=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])-.5*d,e=x+108|0}e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);g=g<<24>>24;0==(g&4|0)?0==(g&2|0)?(g=x+60|0,e=x+76|0,g=.5*((b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])+(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))):(g=x+76|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-.5*e):(g=x+60|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])+.5*e);e=i+56|0;f[0]=d;a[e>>2]=b[0];a[e+4>>2]=b[1];i=i+64|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];m[a[c>>2]+81|0]=1}}c=x+208|0;if(1<=(a[c>>2]|0)){x=x+212|0;for(i=1;!(Et(a[a[x>>2]+(i<<2)>>2]),i=i+1|0,(i|0)>(a[c>>2]|0));){}}}function Dt(x){if((a[x+32>>2]|0)!=(x|0)){var c=x+48|0,i=a[c>>2];if(0!=(i|0)&&0==m[i+81|0]<<24>>24){var g=m[x+283|0];if(0==(g&1)<<24>>24){var d=x+92|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),e=x+60|0,d=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+.5*d,e=x+84|0}else{d=x+124|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),e=x+76|0,d=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])-.5*d,e=x+116|0}e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);g=g<<24>>24;if(0==(g&4|0)){var l=x+52|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);0==(g&2|0)?(g=x+68|0,g=.5*(l+(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]))):g=l+.5*e}else{g=x+68|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-.5*e}e=i+56|0;f[0]=g;a[e>>2]=b[0];a[e+4>>2]=b[1];i=i+64|0;f[0]=d;a[i>>2]=b[0];a[i+4>>2]=b[1];m[a[c>>2]+81|0]=1}}c=x+208|0;if(1<=(a[c>>2]|0)){x=x+212|0;for(i=1;!(Dt(a[a[x>>2]+(i<<2)>>2]),i=i+1|0,(i|0)>(a[c>>2]|0));){}}}function UG(x){var c,i,g,d=h;h+=32;var e=d+16;if(0==(b[0]=a[Yb>>2],b[1]=a[Yb+4>>2],f[0])){if(!(0!=(b[0]=a[Yb+8>>2],b[1]=a[Yb+12>>2],f[0])|0!=(a[kl>>2]|0))){h=d;return}}var l=ra(x),k=0==(l|0);a:do{if(!k){g=d>>2;i=e>>2;for(var n=l;;){0!=(a[kl>>2]|0)&&et(n,0);var j=c=n+32|0,p=n+40|0;ce(d,(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]));c>>=2;a[c]=a[g];a[c+1]=a[g+1];a[c+2]=a[g+2];a[c+3]=a[g+3];j=a[n+124>>2];0!=(j|0)&&(p=j+56|0,c=p>>2,j=j+64|0,ce(e,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])),a[c]=a[i],a[c+1]=a[i+1],a[c+2]=a[i+2],a[c+3]=a[i+3]);c=1==(a[Ah>>2]|0);b:do{if(c&&(j=Ib(x,n),0!=(j|0))){for(;;){if(XG(j),j=yb(x,j),0==(j|0)){break b}}}}while(0);n=ba(x,n);if(0==(n|0)){break a}}}}while(0);At(x,a[x+152>>2]&3);h=d}function XG(x){var c,i,g,d,e,l,k,n,z,p,s;i=x>>2;var v=h;h+=112;var t=v+16,u=v+32;e=v+48;d=v+64;g=v+80;c=v+96;l=(x+24|0)>>2;var w=a[l];if(0==(w|0)){if(0!=m[Wi]<<24>>24&&6==m[x+124|0]<<24>>24){h=v;return}c=a[a[i+3]+12>>2];la(1,YG|0,(j=h,h+=8,a[j>>2]=a[a[i+4]+12>>2],a[j+4>>2]=c,j))}else{var A=0<(a[w+4>>2]|0);a:do{if(A){s=u>>2;p=t>>2;var x=v>>2,B=0;for(k=w;;){k=a[k>>2]>>2;n=a[k+(12*B|0)];var C=a[k+(12*B|0)+1],P=a[k+(12*B|0)+2];k=a[k+(12*B|0)+3];var T=0<(C|0);b:do{if(T){for(var y=0;;){z=(y<<4)+n|0;var D=z|0,M=(y<<4)+n+8|0;ce(v,(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]));z>>=2;a[z]=a[x];a[z+1]=a[x+1];a[z+2]=a[x+2];a[z+3]=a[x+3];y=y+1|0;if((y|0)==(C|0)){break b}}}}while(0);0!=(P|0)&&(P=a[a[l]>>2],n=P+48*B+16|0,C=n|0,P=P+48*B+24|0,ce(t,(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0])),n>>=2,a[n]=a[p],a[n+1]=a[p+1],a[n+2]=a[p+2],a[n+3]=a[p+3]);0!=(k|0)&&(C=a[a[l]>>2],k=C+48*B+32|0,n=k|0,C=C+48*B+40|0,ce(u,(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0])),k>>=2,a[k]=a[s],a[k+1]=a[s+1],a[k+2]=a[s+2],a[k+3]=a[s+3]);B=B+1|0;k=a[l];if((B|0)>=(a[k+4>>2]|0)){break a}}}}while(0);u=a[i+27];0!=(u|0)&&(l=u+56|0,t=l|0,u=u+64|0,ce(e,(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])),l>>=2,e>>=2,a[l]=a[e],a[l+1]=a[e+1],a[l+2]=a[e+2],a[l+3]=a[e+3]);t=a[i+30];0!=(t|0)&&(e=t+56|0,l=e|0,t=t+64|0,ce(d,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])),e>>=2,d>>=2,a[e]=a[d],a[e+1]=a[d+1],a[e+2]=a[d+2],a[e+3]=a[d+3]);l=a[i+28];0!=(l|0)&&(d=l+56|0,e=d|0,l=l+64|0,ce(g,(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),d>>=2,g>>=2,a[d]=a[g],a[d+1]=a[g+1],a[d+2]=a[g+2],a[d+3]=a[g+3]);d=a[i+29];0!=(d|0)&&(i=d+56|0,g=i|0,d=d+64|0,ce(c,(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])),i>>=2,c>>=2,a[i]=a[c],a[i+1]=a[c+1],a[i+2]=a[c+2],a[i+3]=a[c+3])}h=v}function Ft(x,c,i,g,d,e,l,k){var n,j,p=h;h+=88;var m=p+8;j=m>>2;var v=p+16;n=p+24;var t=p+56,u=p|0;a[u>>2]=d;d=p+4|0;a[d>>2]=e;e=n|0;f[0]=x;a[e>>2]=b[0];a[e+4>>2]=b[1];x=n+8|0;f[0]=c;a[x>>2]=b[0];a[x+4>>2]=b[1];c=n+16|0;f[0]=i;a[c>>2]=b[0];a[c+4>>2]=b[1];i=n+24|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];if(-1==(Gt(p,n|0,m)|0)){return h=p,0}do{if(0==(k|0)){g=a[d>>2];m=a[Bh>>2];(g|0)>(a[ll>>2]|0)&&(m=0==(m|0)?Cb(g<<5):wb(m,g<<5),a[Bh>>2]=m,a[ll>>2]=g);n=0<(g|0);a:do{if(n){i=a[u>>2];for(c=0;;){if(e=((c<<5)+m|0)>>2,x=((c<<4)+i|0)>>2,a[e]=a[x],a[e+1]=a[x+1],a[e+2]=a[x+2],a[e+3]=a[x+3],x=c+1|0,e=((c<<5)+m+16|0)>>2,c=((x%g<<4)+i|0)>>2,a[e]=a[c],a[e+1]=a[c+1],a[e+2]=a[c+2],a[e+3]=a[c+3],(x|0)<(g|0)){c=x}else{break a}}}}while(0);n=t>>2;a[n]=0;a[n+1]=0;a[n+2]=0;a[n+3]=0;a[n+4]=0;a[n+5]=0;a[n+6]=0;a[n+7]=0;if(-1==(ZG(m,g,a[j],a[j+1],t|0,v)|0)){return l=0,h=p,l}}else{Ht(a[j],a[j+1],v)}}while(0);k=a[v+4>>2];$G(k);j=0<(k|0);t=a[Ch>>2];a:do{if(j){u=a[v>>2];for(m=0;;){if(g=((m<<4)+t|0)>>2,d=((m<<4)+u|0)>>2,a[g]=a[d],a[g+1]=a[d+1],a[g+2]=a[d+2],a[g+3]=a[d+3],d=m+1|0,(d|0)<(k|0)){m=d}else{var w=t;break a}}}else{w=t}}while(0);a[l>>2]=k;h=p;return w}function $G(b){var c=h,i=a[Yo>>2];(i|0)<(b|0)&&(b=i+(b+300)-b%300|0,i=wb(a[Ch>>2],b<<4),a[Ch>>2]=i,0==(i|0)&&(la(1,aH|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),S()),a[Yo>>2]=b);h=c}function ff(x,c,i){var g,d,e,l,k,n,z,p,s,v,t,u,w,A,B,C,P,T,y,D,M,X,O,F,Da,ia,E=h;h+=88;var G,J=E+8;ia=J>>2;var sc=E+16,H=E+24,I=E+56;a[ml>>2]=a[ml>>2]+1|0;var K=a[x+80>>2];a[nl>>2]=a[nl>>2]+K|0;var L=a[x+88>>2];for(Da=L>>2;;){if(0==(L|0)){G=1477;break}if(0==m[L+124|0]<<24>>24){break}L=a[Da+32];Da=L>>2}1477==G&&(la(1,bH|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),S());var ca=a[x+84>>2];cH(K,ca,x);var N=K<<3;if((N|0)>(a[It>>2]|0)){var U=a[ol>>2],zb=0==(U|0)?Cb(K<<7):wb(U,K<<7);a[ol>>2]=zb;a[It>>2]=N}var ja=1<(K|0);a:do{if(ja){var aa=ca+8|0,da=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),ea=ca+40|0;if(da>(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0])){if(0<(K|0)){for(var xa=0,Q=da;;){F=((xa<<5)+ca+24|0)>>2;var Od=(b[0]=a[F],b[1]=a[F+1],f[0]),ha=(xa<<5)+ca+8|0;f[0]=-1*Q;a[F]=b[0];a[F+1]=b[1];f[0]=-Od;a[ha>>2]=b[0];a[ha+4>>2]=b[1];var ga=xa+1|0;if((ga|0)==(K|0)){Rb=1;break a}var W=(ga<<5)+ca+8|0,xa=ga,Q=(b[0]=a[W>>2],b[1]=a[W+4>>2],f[0])}}else{Rb=1}}else{var Rb=0}}else{Rb=0}}while(0);(a[Da+4]|0)==(a[Da+3]|0)&&S();var V=K-1|0,tb=a[ol>>2],ya=0,R=0;a:for(;;){if((R|0)>=(K|0)){var wa=ya,Ab=V;break}if(0<(R|0)){var Fa=(R<<5)+ca+8|0,Ga=(R-1<<5)+ca+8|0,Y=(b[0]=a[Fa>>2],b[1]=a[Fa+4>>2],f[0])>(b[0]=a[Ga>>2],b[1]=a[Ga+4>>2],f[0])?-1:1}else{Y=0}if((R|0)<(V|0)){var ta=(R+1<<5)+ca+8|0,Ka=(R<<5)+ca+8|0,za=(b[0]=a[ta>>2],b[1]=a[ta+4>>2],f[0])>(b[0]=a[Ka>>2],b[1]=a[Ka+4>>2],f[0])?1:-1}else{za=0}do{if((Y|0)==(za|0)){if(-1==(Y|0)){var ma=ya}else{if(0!=(Y|0)){G=1501;break a}O=((R<<5)+ca|0)>>2;var pa=(b[0]=a[O],b[1]=a[O+1],f[0]),$=(ya<<4)+tb|0;f[0]=pa;a[$>>2]=b[0];a[$+4>>2]=b[1];var Ha=(R<<5)+ca+24|0,Ra=(b[0]=a[Ha>>2],b[1]=a[Ha+4>>2],f[0]),fa=ya+1|0,Z=(ya<<4)+tb+8|0;f[0]=Ra;a[Z>>2]=b[0];a[Z+4>>2]=b[1];var La=(b[0]=a[O],b[1]=a[O+1],f[0]),ka=(fa<<4)+tb|0;f[0]=La;a[ka>>2]=b[0];a[ka+4>>2]=b[1];var Ya=(R<<5)+ca+8|0,sa=(b[0]=a[Ya>>2],b[1]=a[Ya+4>>2],f[0]),Za=ya+2|0,ra=(fa<<4)+tb+8|0;f[0]=sa;a[ra>>2]=b[0];a[ra+4>>2]=b[1];ma=Za}}else{if(-1==(za|0)|1==(Y|0)){X=((R<<5)+ca|0)>>2;var ab=(b[0]=a[X],b[1]=a[X+1],f[0]),$a=(ya<<4)+tb|0;f[0]=ab;a[$a>>2]=b[0];a[$a+4>>2]=b[1];var jb=(R<<5)+ca+24|0,Ca=(b[0]=a[jb>>2],b[1]=a[jb+4>>2],f[0]),Ia=ya+1|0,eb=(ya<<4)+tb+8|0;f[0]=Ca;a[eb>>2]=b[0];a[eb+4>>2]=b[1];var ub=(b[0]=a[X],b[1]=a[X+1],f[0]),Sa=(Ia<<4)+tb|0;f[0]=ub;a[Sa>>2]=b[0];a[Sa+4>>2]=b[1];var ba=(R<<5)+ca+8|0,ua=(b[0]=a[ba>>2],b[1]=a[ba+4>>2],f[0]),Oa=ya+2|0,Wa=(Ia<<4)+tb+8|0;f[0]=ua;a[Wa>>2]=b[0];a[Wa+4>>2]=b[1];ma=Oa}else{M=((R<<5)+ca+16|0)>>2;var pb=(b[0]=a[M],b[1]=a[M+1],f[0]),ob=(ya<<4)+tb|0;f[0]=pb;a[ob>>2]=b[0];a[ob+4>>2]=b[1];var bb=(R<<5)+ca+8|0,qb=(b[0]=a[bb>>2],b[1]=a[bb+4>>2],f[0]),qa=ya+1|0,kb=(ya<<4)+tb+8|0;f[0]=qb;a[kb>>2]=b[0];a[kb+4>>2]=b[1];var na=(b[0]=a[M],b[1]=a[M+1],f[0]),vb=(qa<<4)+tb|0;f[0]=na;a[vb>>2]=b[0];a[vb+4>>2]=b[1];var xb=(R<<5)+ca+24|0,hd=(b[0]=a[xb>>2],b[1]=a[xb+4>>2],f[0]),nb=ya+2|0,rb=(qa<<4)+tb+8|0;f[0]=hd;a[rb>>2]=b[0];a[rb+4>>2]=b[1];ma=nb}}}while(0);ya=ma;R=R+1|0}1501==G&&S();a:for(;-1<(Ab|0);){if((Ab|0)<(V|0)){var lb=(Ab<<5)+ca+8|0,Ta=(Ab+1<<5)+ca+8|0,cb=(b[0]=a[lb>>2],b[1]=a[lb+4>>2],f[0])>(b[0]=a[Ta>>2],b[1]=a[Ta+4>>2],f[0])?-1:1}else{cb=0}if(0<(Ab|0)){var fb=(Ab-1<<5)+ca+8|0,Ua=(Ab<<5)+ca+8|0,sb=(b[0]=a[fb>>2],b[1]=a[fb+4>>2],f[0])>(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0])?1:-1}else{sb=0}do{if((cb|0)==(sb|0)){if(0==(cb|0)){D=((Ab<<5)+ca+16|0)>>2;var Na=(b[0]=a[D],b[1]=a[D+1],f[0]),Fb=(wa<<4)+tb|0;f[0]=Na;a[Fb>>2]=b[0];a[Fb+4>>2]=b[1];var Db=(Ab<<5)+ca+8|0,Ob=(b[0]=a[Db>>2],b[1]=a[Db+4>>2],f[0]),Eb=wa+1|0,ne=(wa<<4)+tb+8|0;f[0]=Ob;a[ne>>2]=b[0];a[ne+4>>2]=b[1];var Bb=(b[0]=a[D],b[1]=a[D+1],f[0]),Ja=(Eb<<4)+tb|0;f[0]=Bb;a[Ja>>2]=b[0];a[Ja+4>>2]=b[1];var oa=(Ab<<5)+ca+24|0,Ba=(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0]),Ea=wa+2|0,va=(Eb<<4)+tb+8|0;f[0]=Ba;a[va>>2]=b[0];a[va+4>>2]=b[1];var Ma=Ea}else{if(-1==(cb|0)){y=((Ab<<5)+ca+16|0)>>2;var Aa=(b[0]=a[y],b[1]=a[y+1],f[0]),ic=(wa<<4)+tb|0;f[0]=Aa;a[ic>>2]=b[0];a[ic+4>>2]=b[1];T=((Ab<<5)+ca+8|0)>>2;var Pa=(b[0]=a[T],b[1]=a[T+1],f[0]),Qa=wa+1|0,Va=(wa<<4)+tb+8|0;f[0]=Pa;a[Va>>2]=b[0];a[Va+4>>2]=b[1];var hb=(b[0]=a[y],b[1]=a[y+1],f[0]),ib=(Qa<<4)+tb|0;f[0]=hb;a[ib>>2]=b[0];a[ib+4>>2]=b[1];P=((Ab<<5)+ca+24|0)>>2;var pc=(b[0]=a[P],b[1]=a[P+1],f[0]),Wc=wa+2|0,Vb=(Qa<<4)+tb+8|0;f[0]=pc;a[Vb>>2]=b[0];a[Vb+4>>2]=b[1];C=((Ab<<5)+ca|0)>>2;var Xd=(b[0]=a[C],b[1]=a[C+1],f[0]),Gb=(Wc<<4)+tb|0;f[0]=Xd;a[Gb>>2]=b[0];a[Gb+4>>2]=b[1];var Ib=(b[0]=a[P],b[1]=a[P+1],f[0]),yb=wa+3|0,Nb=(Wc<<4)+tb+8|0;f[0]=Ib;a[Nb>>2]=b[0];a[Nb+4>>2]=b[1];var mb=(b[0]=a[C],b[1]=a[C+1],f[0]),lc=(yb<<4)+tb|0;f[0]=mb;a[lc>>2]=b[0];a[lc+4>>2]=b[1];var Hb=(b[0]=a[T],b[1]=a[T+1],f[0]),Jd=wa+4|0,db=(yb<<4)+tb+8|0;f[0]=Hb;a[db>>2]=b[0];a[db+4>>2]=b[1];Ma=Jd}else{G=1514;break a}}}else{if(-1==(sb|0)|1==(cb|0)){B=((Ab<<5)+ca|0)>>2;var Hc=(b[0]=a[B],b[1]=a[B+1],f[0]),Lb=(wa<<4)+tb|0;f[0]=Hc;a[Lb>>2]=b[0];a[Lb+4>>2]=b[1];var oe=(Ab<<5)+ca+24|0,Pb=(b[0]=a[oe>>2],b[1]=a[oe+4>>2],f[0]),Qb=wa+1|0,tc=(wa<<4)+tb+8|0;f[0]=Pb;a[tc>>2]=b[0];a[tc+4>>2]=b[1];var Sc=(b[0]=a[B],b[1]=a[B+1],f[0]),Kb=(Qb<<4)+tb|0;f[0]=Sc;a[Kb>>2]=b[0];a[Kb+4>>2]=b[1];var Jb=(Ab<<5)+ca+8|0,$b=(b[0]=a[Jb>>2],b[1]=a[Jb+4>>2],f[0]),rd=wa+2|0,oc=(Qb<<4)+tb+8|0;f[0]=$b;a[oc>>2]=b[0];a[oc+4>>2]=b[1];Ma=rd}else{A=((Ab<<5)+ca+16|0)>>2;var Yb=(b[0]=a[A],b[1]=a[A+1],f[0]),qk=(wa<<4)+tb|0;f[0]=Yb;a[qk>>2]=b[0];a[qk+4>>2]=b[1];var ve=(Ab<<5)+ca+8|0,Rd=(b[0]=a[ve>>2],b[1]=a[ve+4>>2],f[0]),Bc=wa+1|0,Sd=(wa<<4)+tb+8|0;f[0]=Rd;a[Sd>>2]=b[0];a[Sd+4>>2]=b[1];var fd=(b[0]=a[A],b[1]=a[A+1],f[0]),Mb=(Bc<<4)+tb|0;f[0]=fd;a[Mb>>2]=b[0];a[Mb+4>>2]=b[1];var yc=(Ab<<5)+ca+24|0,Wb=(b[0]=a[yc>>2],b[1]=a[yc+4>>2],f[0]),Tb=wa+2|0,Tc=(Bc<<4)+tb+8|0;f[0]=Wb;a[Tc>>2]=b[0];a[Tc+4>>2]=b[1];Ma=Tb}}}while(0);wa=Ma;Ab=Ab-1|0}1514==G&&(a[c>>2]=0,S());var Sb=0==(Rb|0);a:do{if(!Sb){var Mc=0<(K|0);b:do{if(Mc){for(var id=0;;){w=((id<<5)+ca+24|0)>>2;var uc=(b[0]=a[w],b[1]=a[w+1],f[0])&-1;u=((id<<5)+ca+8|0)>>2;var Zb=-1*(b[0]=a[u],b[1]=a[u+1],f[0]);f[0]=Zb;a[w]=b[0];a[w+1]=b[1];f[0]=-uc|0;a[u]=b[0];a[u+1]=b[1];var qc=id+1|0;if((qc|0)==(K|0)){break b}else{id=qc}}}}while(0);if(0<(wa|0)){for(var mf=0;;){t=((mf<<4)+tb+8|0)>>2;var nf=-1*(b[0]=a[t],b[1]=a[t+1],f[0]);f[0]=nf;a[t]=b[0];a[t+1]=b[1];var ec=mf+1|0;if((ec|0)==(wa|0)){break a}else{mf=ec}}}}}while(0);var af=0<(K|0);a:do{if(af){for(var yf=0;;){var Td=(yf<<5)+ca|0;f[0]=2147483647;a[Td>>2]=b[0];a[Td+4>>2]=b[1];var Fe=(yf<<5)+ca+16|0;f[0]=-2147483648;a[Fe>>2]=b[0];a[Fe+4>>2]=b[1];var gf=yf+1|0;if((gf|0)==(K|0)){break a}else{yf=gf}}}}while(0);a[E>>2]=tb;var fe=E+4|0;a[fe>>2]=wa;var fh=x|0,df=(b[0]=a[fh>>2],b[1]=a[fh+4>>2],f[0]),jd=H|0,md=H|0;f[0]=df;a[md>>2]=b[0];a[md+4>>2]=b[1];var je=x+8|0,Qe=(b[0]=a[je>>2],b[1]=a[je+4>>2],f[0]),Xf=H+8|0;f[0]=Qe;a[Xf>>2]=b[0];a[Xf+4>>2]=b[1];var Uc=x+40|0,bf=(b[0]=a[Uc>>2],b[1]=a[Uc+4>>2],f[0]),mc=H+16|0;f[0]=bf;a[mc>>2]=b[0];a[mc+4>>2]=b[1];var kc=x+48|0,rc=(b[0]=a[kc>>2],b[1]=a[kc+4>>2],f[0]),ef=H+24|0;f[0]=rc;a[ef>>2]=b[0];a[ef+4>>2]=b[1];-1==(Gt(E,jd,J)|0)&&S();do{if(0==(i|0)){var kd=a[fe>>2];if((kd|0)>(a[ll>>2]|0)){var ac=a[Bh>>2],dc=0==(ac|0)?Cb(kd<<5):wb(ac,kd<<5);a[Bh>>2]=dc;a[ll>>2]=kd}var bc=0<(kd|0);a:do{if(bc){for(var jc=a[Bh>>2],fc=a[ol>>2],nd=0;;){v=((nd<<5)+jc|0)>>2;s=((nd<<4)+fc|0)>>2;a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];var zd=nd+1|0;p=((nd<<5)+jc+16|0)>>2;z=((zd%kd<<4)+fc|0)>>2;a[p]=a[z];a[p+1]=a[z+1];a[p+2]=a[z+2];a[p+3]=a[z+3];if((zd|0)<(kd|0)){nd=zd}else{break a}}}}while(0);if(0==m[x+29|0]<<24>>24){n=I>>2,a[n]=0,a[n+1]=0,a[n+2]=0,a[n+3]=0}else{var cf=x+16|0,nc=(b[0]=a[cf>>2],b[1]=a[cf+4>>2],f[0]),gc=se(nc),Xb=I|0;f[0]=gc;a[Xb>>2]=b[0];a[Xb+4>>2]=b[1];var we=Ce(nc),pe=I+8|0;f[0]=we;a[pe>>2]=b[0];a[pe+4>>2]=b[1]}if(0==m[x+69|0]<<24>>24){k=(I+16|0)>>2,a[k]=0,a[k+1]=0,a[k+2]=0,a[k+3]=0}else{var Ac=x+56|0,Kd=(b[0]=a[Ac>>2],b[1]=a[Ac+4>>2],f[0]),Dd=-se(Kd),$c=I+16|0;f[0]=Dd;a[$c>>2]=b[0];a[$c+4>>2]=b[1];var zc=-Ce(Kd),Ye=I+24|0;f[0]=zc;a[Ye>>2]=b[0];a[Ye+4>>2]=b[1]}-1==(ZG(a[Bh>>2],kd,a[ia],a[ia+1],I|0,sc)|0)&&S()}else{Ht(a[ia],a[ia+1],sc)}}while(0);var Ad=a[sc+4>>2];$G(Ad);a:do{if(af){for(var Ud=0;;){var Vd=(Ud<<5)+ca|0;f[0]=2147483647;a[Vd>>2]=b[0];a[Vd+4>>2]=b[1];var Cc=(Ud<<5)+ca+16|0;f[0]=-2147483648;a[Cc>>2]=b[0];a[Cc+4>>2]=b[1];var Ic=Ud+1|0;if((Ic|0)==(K|0)){break a}else{Ud=Ic}}}}while(0);var gd=0<(Ad|0),ud=a[Ch>>2];a:do{if(gd){for(var vc=a[sc>>2],Fn=0;;){l=((Fn<<4)+ud|0)>>2;e=((Fn<<4)+vc|0)>>2;a[l]=a[e];a[l+1]=a[e+1];a[l+2]=a[e+2];a[l+3]=a[e+3];var of=Fn+1|0;if((of|0)<(Ad|0)){Fn=of}else{break a}}}}while(0);var ld=3<(Ad|0),Dc=10;a:for(;;){b:do{if(ld){for(var Qc=Dc*K|0,Yc=0>(Qc|0),Jc=Qc|0,Kc=0,Nc=3;;){c:do{if(!Yc){for(var Ec=(Kc<<4)+ud|0,Pc=(Kc<<4)+ud+8|0,Fc=Kc+1|0,Gc=(Fc<<4)+ud|0,Zc=(Fc<<4)+ud+8|0,Vc=Kc+2|0,Bd=(Vc<<4)+ud|0,Rc=(Vc<<4)+ud+8|0,Cd=(Nc<<4)+ud|0,vd=(Nc<<4)+ud+8|0,bd=0;;){var te=(bd|0)/Jc,pd=(b[0]=a[Ec>>2],b[1]=a[Ec+4>>2],f[0]),cd=(b[0]=a[Pc>>2],b[1]=a[Pc+4>>2],f[0]),qd=(b[0]=a[Gc>>2],b[1]=a[Gc+4>>2],f[0]),Jt=(b[0]=a[Zc>>2],b[1]=a[Zc+4>>2],f[0]),Gd=(b[0]=a[Bd>>2],b[1]=a[Bd+4>>2],f[0]),ad=(b[0]=a[Rc>>2],b[1]=a[Rc+4>>2],f[0]),Fd=pd+te*(qd-pd),yd=cd+te*(Jt-cd),Xc=qd+te*(Gd-qd),dd=Jt+te*(ad-Jt),od=Fd+te*(Xc-Fd),Md=yd+te*(dd-yd),ed=od+te*(Xc+te*(Gd+te*((b[0]=a[Cd>>2],b[1]=a[Cd+4>>2],f[0])-Gd)-Xc)-od),Ld=Md+te*(dd+te*(ad+te*((b[0]=a[vd>>2],b[1]=a[vd+4>>2],f[0])-ad)-dd)-Md);d:do{if(af){for(var Oc=0;;){var be=(Oc<<5)+ca+24|0;if(Ld<=(b[0]=a[be>>2],b[1]=a[be+4>>2],f[0])+1e-4){var wd=(Oc<<5)+ca+8|0;if(Ld>=(b[0]=a[wd>>2],b[1]=a[wd+4>>2],f[0])-1e-4){d=((Oc<<5)+ca|0)>>2;if((b[0]=a[d],b[1]=a[d+1],f[0])>ed){f[0]=ed,a[d]=b[0],a[d+1]=b[1]}g=((Oc<<5)+ca+16|0)>>2;if((b[0]=a[g],b[1]=a[g+1],f[0])(Qc|0)){break c}else{bd=ke}}}}while(0);var sd=Nc+3|0;if((sd|0)<(Ad|0)){Kc=Nc,Nc=sd}else{var Lc=0;break b}}}else{Lc=0}}while(0);for(;;){if((Lc|0)>=(K|0)){break a}var Ed=(Lc<<5)+ca|0;if(2147483647==(b[0]=a[Ed>>2],b[1]=a[Ed+4>>2],f[0])){break}var Wd=(Lc<<5)+ca+16|0;if(-2147483648==(b[0]=a[Wd>>2],b[1]=a[Wd+4>>2],f[0])){break}else{Lc=Lc+1|0}}Dc<<=1}a[c>>2]=Ad;h=E;return ud}function dH(a,b,i,g){if(!((b|0)>(i|0)&(a|0)<(g|0))){return 0}if(!((i|0)>(a|0)|(a|0)>(g|0))){return g-a|0}(i|0)>(b|0)|(b|0)>(g|0)?(a=b-a|0,i=g-i|0,i=(a|0)<(i|0)?a:i):i=b-i|0;return i}function Jg(x){var c,i=h;c=(x+80|0)>>2;Va(a[oa>>2],eH|0,(j=h,h+=4,a[j>>2]=a[c],j));var g=0<(a[c]|0),d=a[oa>>2];a:do{if(g){for(var e=x+84|0,l=0,k=d;;){var n=a[e>>2],z=(l<<5)+n|0,z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),p=(l<<5)+n+8|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),s=(l<<5)+n+16|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),n=(l<<5)+n+24|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);Va(k,fH|0,(j=h,h+=36,a[j>>2]=l,f[0]=z,a[j+4>>2]=b[0],a[j+8>>2]=b[1],f[0]=p,a[j+12>>2]=b[0],a[j+16>>2]=b[1],f[0]=s,a[j+20>>2]=b[0],a[j+24>>2]=b[1],f[0]=n,a[j+28>>2]=b[0],a[j+32>>2]=b[1],j));l=l+1|0;k=a[oa>>2];if((l|0)>=(a[c]|0)){var v=k;break a}}}else{v=d}}while(0);c=x|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);g=x+8|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);d=x+16|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);e=0!=m[x+29|0]<<24>>24?Kt|0:Lt|0;Va(v,gH|0,(j=h,h+=28,f[0]=c,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=g,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=d,a[j+16>>2]=b[0],a[j+20>>2]=b[1],a[j+24>>2]=e,j));v=a[oa>>2];c=x+40|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);g=x+48|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);d=x+56|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);x=0!=m[x+69|0]<<24>>24?Kt|0:Lt|0;Va(v,hH|0,(j=h,h+=28,f[0]=c,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=g,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=d,a[j+16>>2]=b[0],a[j+20>>2]=b[1],a[j+24>>2]=x,j));h=i}function cH(x,c,i){var g,d,e,l,k,n,z,p,s,v,t,u,w,A,B,C,P,T,y,D=h,M,X=0<(x|0);a:do{if(X){for(var O=0,F=0;;){var Da=(F<<5)+c|0,ia=(F<<5)+c+8|0,E=(F<<5)+c+24|0,G=(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0])-(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0]);if(.01>(0>G?-G:G)){var J=O}else{var sc=Da|0,I=(F<<5)+c+16|0,H=(b[0]=a[sc>>2],b[1]=a[sc+4>>2],f[0])-(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0]);.01>(0>H?-H:H)?J=O:((O|0)!=(F|0)&&(y=((O<<5)+c|0)>>2,T=Da>>2,a[y]=a[T],a[y+1]=a[T+1],a[y+2]=a[T+2],a[y+3]=a[T+3],a[y+4]=a[T+4],a[y+5]=a[T+5],a[y+6]=a[T+6],a[y+7]=a[T+7]),J=O+1|0)}var K=F+1|0;if((K|0)==(x|0)){var L=J;break a}else{O=J,F=K}}}else{L=0}}while(0);P=(c|0)>>2;var ca=(b[0]=a[P],b[1]=a[P+1],f[0]);C=(c+16|0)>>2;var N=(b[0]=a[C],b[1]=a[C+1],f[0]);ca>N&&(la(1,Mt|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Jg(i),S());B=(c+8|0)>>2;var U=(b[0]=a[B],b[1]=a[B+1],f[0]);A=(c+24|0)>>2;var zb=(b[0]=a[A],b[1]=a[A+1],f[0]);U>zb&&(la(1,Mt|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Jg(i),S());for(var ja=L-1|0,aa=0,da=N,ea=ca,xa=zb,Q=U;;){if((aa|0)>=(ja|0)){M=1642;break}var R=aa+1|0;w=((R<<5)+c|0)>>2;var ha=(b[0]=a[w],b[1]=a[w+1],f[0]);u=((R<<5)+c+16|0)>>2;var ga=(b[0]=a[u],b[1]=a[u+1],f[0]);if(ha>ga){M=1673;break}t=((R<<5)+c+8|0)>>2;var W=(b[0]=a[t],b[1]=a[t+1],f[0]);v=((R<<5)+c+24|0)>>2;var Rb=(b[0]=a[v],b[1]=a[v+1],f[0]);if(W>Rb){M=1674;break}s=((aa<<5)+c+16|0)>>2;var V=da>2;var ya=ea>ga,Y=ya&1;z=((aa<<5)+c+24|0)>>2;var wa=xa>2;var Fa=Q>Rb,Ga=Fa&1,$=Y+tb+Ab+Ga|0,ta=0<($|0);0==m[ld]<<24>>24|ta^1||(Va(a[oa>>2],iH|0,(j=h,h+=8,a[j>>2]=aa,a[j+4>>2]=R,j)),Jg(i));a:do{if(ta){if(V){var Ka=(b[0]=a[s],b[1]=a[s+1],f[0])&-1,za=(b[0]=a[w],b[1]=a[w+1],f[0]);f[0]=za;a[s]=b[0];a[s+1]=b[1];f[0]=Ka|0;a[w]=b[0];a[w+1]=b[1];var ma=Ga,pa=Ab,fa=Y,Ha=0}else{if(ya){var Ra=(b[0]=a[p],b[1]=a[p+1],f[0])&-1,Z=(b[0]=a[u],b[1]=a[u+1],f[0]);f[0]=Z;a[p]=b[0];a[p+1]=b[1];f[0]=Ra|0;a[u]=b[0];a[u+1]=b[1];ma=Ga;pa=Ab;fa=0}else{if(wa){var ka=(b[0]=a[z],b[1]=a[z+1],f[0])&-1,La=(b[0]=a[t],b[1]=a[t+1],f[0]);f[0]=La;a[z]=b[0];a[z+1]=b[1];f[0]=ka|0;a[t]=b[0];a[t+1]=b[1];ma=Ga;pa=0}else{if(Fa){var sa=(b[0]=a[n],b[1]=a[n+1],f[0])&-1,Ya=(b[0]=a[v],b[1]=a[v+1],f[0]);f[0]=Ya;a[n]=b[0];a[n+1]=b[1];f[0]=sa|0;a[v]=b[0];a[v+1]=b[1];ma=0}else{ma=Ga}pa=Ab}fa=Y}Ha=tb}if(0<($-1|0)){for(var ra=((ya^1)<<31>>31)+tb+Ab+Ga|0,Za=Ha,ba=fa,ab=0,$a=pa,jb=ma;;){if(1==(Za|0)){var Ca=.5*((b[0]=a[s],b[1]=a[s+1],f[0])+(b[0]=a[w],b[1]=a[w+1],f[0]))+.5&-1|0;f[0]=Ca;a[w]=b[0];a[w+1]=b[1];f[0]=Ca;a[s]=b[0];a[s+1]=b[1];var Ia=jb,eb=$a,ub=ba,Sa=0}else{if(1==(ba|0)){var qa=.5*((b[0]=a[p],b[1]=a[p+1],f[0])+(b[0]=a[u],b[1]=a[u+1],f[0]))+.5&-1|0;f[0]=qa;a[u]=b[0];a[u+1]=b[1];f[0]=qa;a[p]=b[0];a[p+1]=b[1];Ia=jb;eb=$a;ub=0}else{if(1==($a|0)){var ua=.5*((b[0]=a[z],b[1]=a[z+1],f[0])+(b[0]=a[t],b[1]=a[t+1],f[0]))+.5&-1|0;f[0]=ua;a[t]=b[0];a[t+1]=b[1];f[0]=ua;a[z]=b[0];a[z+1]=b[1];Ia=jb;eb=0}else{if(1!=(jb|0)){Ia=jb}else{var Oa=.5*((b[0]=a[n],b[1]=a[n+1],f[0])+(b[0]=a[v],b[1]=a[v+1],f[0]))+.5&-1|0;f[0]=Oa;a[v]=b[0];a[v+1]=b[1];f[0]=Oa;a[n]=b[0];a[n+1]=b[1];Ia=0}eb=$a}ub=ba}Sa=Za}var Wa=ab+1|0;if((Wa|0)==(ra|0)){break a}else{Za=Sa,ba=ub,ab=Wa,$a=eb,jb=Ia}}}}}while(0);var pb=(b[0]=a[p],b[1]=a[p+1],f[0]),ob=(b[0]=a[s],b[1]=a[s+1],f[0]),bb=(b[0]=a[w],b[1]=a[w+1],f[0]),qb=(b[0]=a[u],b[1]=a[u+1],f[0]),na=dH(pb&-1,ob&-1,bb&-1,qb&-1),kb=(b[0]=a[n],b[1]=a[n+1],f[0]),ie=(b[0]=a[z],b[1]=a[z+1],f[0]),vb=(b[0]=a[t],b[1]=a[t+1],f[0]),xb=(b[0]=a[v],b[1]=a[v+1],f[0]),hd=dH(kb&-1,ie&-1,vb&-1,xb&-1);if(0==(na|0)|0==(hd|0)){aa=R,da=qb,ea=bb,xa=xb,Q=vb}else{if((na|0)<(hd|0)){var nb=obqb-bb?(nb?(f[0]=bb,a[s]=b[0],a[s+1]=b[1]):(f[0]=qb,a[p]=b[0],a[p+1]=b[1]),aa=R,da=qb,ea=bb):nb?(f[0]=ob,a[w]=b[0],a[w+1]=b[1],aa=R,da=qb,ea=ob):(f[0]=pb,a[u]=b[0],a[u+1]=b[1],aa=R,da=pb,ea=bb);xa=xb;Q=vb}else{var rb=iexb-vb?(rb?(f[0]=vb,a[z]=b[0],a[z+1]=b[1]):(f[0]=xb,a[n]=b[0],a[n+1]=b[1]),aa=R,da=qb,ea=bb,xa=xb,Q=vb):rb?(f[0]=ie,a[t]=b[0],a[t+1]=b[1],aa=R,da=qb,ea=bb,xa=xb,Q=ie):(f[0]=kb,a[v]=b[0],a[v+1]=b[1],aa=R,da=qb,ea=bb,xa=kb,Q=vb)}}}if(1642==M){k=(i|0)>>2;var lb=(b[0]=a[k],b[1]=a[k+1],f[0]),Ta=(b[0]=a[P],b[1]=a[P+1],f[0]);if(lb(b[0]=a[C],b[1]=a[C+1],f[0])){M=1646}else{var cb=i+8|0,fb=(b[0]=a[cb>>2],b[1]=a[cb+4>>2],f[0]);if(fb<(b[0]=a[B],b[1]=a[B+1],f[0])){M=1646}else{if(fb>(b[0]=a[A],b[1]=a[A+1],f[0])){M=1646}}}}if(1646==M){if(0==m[ld]<<24>>24){var Ua=lb,sb=Ta}else{Lc(jH|0,42,1,a[oa>>2]),Jg(i),Ua=(b[0]=a[k],b[1]=a[k+1],f[0]),sb=(b[0]=a[P],b[1]=a[P+1],f[0])}if(UaFb&&(f[0]=Fb,a[k]=b[0],a[k+1]=b[1]);l=(i+8|0)>>2;var Db=(b[0]=a[l],b[1]=a[l+1],f[0]),Ob=(b[0]=a[B],b[1]=a[B+1],f[0]);if(Dbne&&(f[0]=ne,a[l]=b[0],a[l+1]=b[1])}e=(i+40|0)>>2;var Bb=(b[0]=a[e],b[1]=a[e+1],f[0]);d=((ja<<5)+c|0)>>2;var Ja=(b[0]=a[d],b[1]=a[d+1],f[0]);if(Bb>=Ja){var Ba=(ja<<5)+c+16|0;if(Bb<=(b[0]=a[Ba>>2],b[1]=a[Ba+4>>2],f[0])){var Ea=i+48|0,va=(b[0]=a[Ea>>2],b[1]=a[Ea+4>>2],f[0]),Ma=(ja<<5)+c+8|0;if(va>=(b[0]=a[Ma>>2],b[1]=a[Ma+4>>2],f[0])){var Aa=(ja<<5)+c+24|0;if(va<=(b[0]=a[Aa>>2],b[1]=a[Aa+4>>2],f[0])){h=D;return}}}}if(0==m[ld]<<24>>24){var wb=Bb,ic=Ja}else{Lc(kH|0,39,1,a[oa>>2]),Jg(i),wb=(b[0]=a[e],b[1]=a[e+1],f[0]),ic=(b[0]=a[d],b[1]=a[d+1],f[0])}if(wb>2],b[1]=a[Qa+4>>2],f[0]);Cb>Pa&&(f[0]=Pa,a[e]=b[0],a[e+1]=b[1]);g=(i+48|0)>>2;var hb=(b[0]=a[g],b[1]=a[g+1],f[0]),ib=(ja<<5)+c+8|0,pc=(b[0]=a[ib>>2],b[1]=a[ib+4>>2],f[0]);if(hb>2],b[1]=a[Vb+4>>2],f[0]);Wc>Xd&&(f[0]=Xd,a[g]=b[0],a[g+1]=b[1]);h=D}else{1673==M?(la(1,Nt|0,(j=h,h+=4,a[j>>2]=R,j)),Jg(i),S()):1674==M&&(la(1,Nt|0,(j=h,h+=4,a[j>>2]=R,j)),Jg(i),S())}}function Zo(x,c,i,g,d,e){var l=x|0;f[0]=(d-i)*c+i;a[l>>2]=b[0];a[l+4>>2]=b[1];x=x+8|0;f[0]=(e-g)*c+g;a[x>>2]=b[0];a[x+4>>2]=b[1]}function ts(b){b=a[b+24>>2];0==(b|0)?b=0:(b=a[a[b+4>>2]>>2],b=270==(b|0)?1:56==(b|0)?2:54==(b|0)?3:356==(b|0)?4:0);return b}function Ii(x,c,i,g,d,e,l){var k,n,j,p,m,v,t,u,w,A,B,C,P,T,y,D,M,X,O,F,Da,ia,E,J,H,I,K,L,N,hc,ca,R,Q,zb,ja,aa,da,ea,xa,U,S,ha,ga,W,Rb,V,tb,ya,Y,wa,Ab,Fa,Ga,$,ta,Ka,za,ma,pa,la,Ha,Ra,Z,ka,La,ba,Ya,ra,Za,qa,ab,$a,jb,Ca,Ia,eb,ub,Sa,na,ua,Oa,Wa,pb,ob,bb,qb,oa,kb,ie,vb,xb,hd,nb,rb,lb,Ta,cb,fb,Ua,sb,Na=h;h+=128;var Fb=Na+64,Db=Na+80,Ob=Na+96,Eb=Na+112;if(0==(e&4|0)){var ne=e&992,Bb=0==(ne|0)?2:ne}else{Bb=4}var Ja=fa((d<<6)+64|0);sb=Ja>>2;var Ba=0<(d|0);a:do{if(Ba){for(var Ea=d-1|0,va=g+8|0,Ma=12,Aa=0;;){var wb=(Aa<<4)+g|0,ic=(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0]),Qa=(Aa<<4)+g+8|0,hb=(b[0]=a[Qa>>2],b[1]=a[Qa+4>>2],f[0]),Va=Aa+1|0;if((Aa|0)<(Ea|0)){var ib=(Va<<4)+g|0,Gb=(Va<<4)+g+8|0}else{ib=g,Gb=va}var pc=ib|0,Wc=(b[0]=a[pc>>2],b[1]=a[pc+4>>2],f[0])-ic,Vb=(b[0]=a[Gb>>2],b[1]=a[Gb+4>>2],f[0])-hb,Xd=$c(Wc*Wc+Vb*Vb)/3,yb=Ma>2;fb=Db>>2;cb=Ob>>2;Ta=Eb>>2;for(var db=0,lc=0;;){var Hb=(lc<<4)+g|0,Jd=(b[0]=a[Hb>>2],b[1]=a[Hb+4>>2],f[0]),Lb=(lc<<4)+g+8|0,Hc=(b[0]=a[Lb>>2],b[1]=a[Lb+4>>2],f[0]);if((lc|0)<(Ea|0)){var Kb=lc+1|0,oe=(Kb<<4)+g|0,Jb=(Kb<<4)+g+8|0}else{oe=g,Jb=va}var Qb=oe|0,tc=(b[0]=a[Qb>>2],b[1]=a[Qb+4>>2],f[0]),Sc=(b[0]=a[Jb>>2],b[1]=a[Jb+4>>2],f[0]),Pb=tc-Jd,Yb=Sc-Hc,Mb=yb/$c(Pb*Pb+Yb*Yb),rd=Ib?Nb?Mb:.5*Mb:Mb/3;if(mb){Zo(Fb,.5*rd,Jd,Hc,tc,Sc),lb=((db<<4)+Ja|0)>>2,a[lb]=a[Ua],a[lb+1]=a[Ua+1],a[lb+2]=a[Ua+2],a[lb+3]=a[Ua+3]}else{var oc=(db<<4)+Ja|0;f[0]=Jd;a[oc>>2]=b[0];a[oc+4>>2]=b[1];var Wb=(db<<4)+Ja+8|0;f[0]=Hc;a[Wb>>2]=b[0];a[Wb+4>>2]=b[1]}Zo(Db,rd,Jd,Hc,tc,Sc);rb=((db+1<<4)+Ja|0)>>2;a[rb]=a[fb];a[rb+1]=a[fb+1];a[rb+2]=a[fb+2];a[rb+3]=a[fb+3];var Tb=db+3|0;Zo(Ob,1-rd,Jd,Hc,tc,Sc);nb=((db+2<<4)+Ja|0)>>2;a[nb]=a[cb];a[nb+1]=a[cb+1];a[nb+2]=a[cb+2];a[nb+3]=a[cb+3];if(mb){Zo(Eb,1-.5*rd,Jd,Hc,tc,Sc);hd=((Tb<<4)+Ja|0)>>2;a[hd]=a[Ta];a[hd+1]=a[Ta+1];a[hd+2]=a[Ta+2];a[hd+3]=a[Ta+3];var ve=db+4|0}else{ve=Tb}var Rd=lc+1|0;if((Rd|0)==(d|0)){var Bc=ve;break a}else{db=ve,lc=Rd}}}else{Bc=0}}while(0);xb=((Bc<<4)+Ja|0)>>2;a[xb]=a[sb];a[xb+1]=a[sb+1];a[xb+2]=a[sb+2];a[xb+3]=a[sb+3];var Sd=Ja+16|0;vb=Sd>>2;ie=((Bc+1<<4)+Ja|0)>>2;a[ie]=a[vb];a[ie+1]=a[vb+1];a[ie+2]=a[vb+2];a[ie+3]=a[vb+3];var fd=Ja+32|0;kb=fd>>2;oa=((Bc+2<<4)+Ja|0)>>2;a[oa]=a[kb];a[oa+1]=a[kb+1];a[oa+2]=a[kb+2];a[oa+3]=a[kb+3];if(256==(Bb|0)){4!=(d|0)&&sa(Ot|0,562,Pt|0,Qt|0);Pa(x,i);0!=(l|0)&&$b(x,c);var Sb=d+2|0,yc=fa(Sb<<4);qb=yc>>2;bb=g>>2;a[qb]=a[bb];a[qb+1]=a[bb+1];a[qb+2]=a[bb+2];a[qb+3]=a[bb+3];ob=(yc+16|0)>>2;a[ob]=a[kb];a[ob+1]=a[kb+1];a[ob+2]=a[kb+2];a[ob+3]=a[kb+3];pb=(yc+32|0)>>2;Wa=(Ja+64|0)>>2;a[pb]=a[Wa];a[pb+1]=a[Wa+1];a[pb+2]=a[Wa+2];a[pb+3]=a[Wa+3];Oa=(yc+48|0)>>2;ua=(g+32|0)>>2;a[Oa]=a[ua];a[Oa+1]=a[ua+1];a[Oa+2]=a[ua+2];a[Oa+3]=a[ua+3];na=(yc+64|0)>>2;Sa=(Ja+128|0)>>2;a[na]=a[Sa];a[na+1]=a[Sa+1];a[na+2]=a[Sa+2];a[na+3]=a[Sa+3];ub=(yc+80|0)>>2;eb=(Ja+160|0)>>2;a[ub]=a[eb];a[ub+1]=a[eb+1];a[ub+2]=a[eb+2];a[ub+3]=a[eb+3];zc(x,yc,Sb,l&255);G(yc);var qc=(b[0]=a[Sd>>2],b[1]=a[Sd+4>>2],f[0]),ec=Ja+176|0,Tc=qc+((b[0]=a[ec>>2],b[1]=a[ec+4>>2],f[0])-(b[0]=a[Ja>>2],b[1]=a[Ja+4>>2],f[0])),uc=Na|0,Mc=Na|0;f[0]=Tc;a[Mc>>2]=b[0];a[Mc+4>>2]=b[1];var id=Ja+24|0,mc=(b[0]=a[id>>2],b[1]=a[id+4>>2],f[0]),Zb=Ja+184|0,kc=Ja+8|0,ac=mc+((b[0]=a[Zb>>2],b[1]=a[Zb+4>>2],f[0])-(b[0]=a[kc>>2],b[1]=a[kc+4>>2],f[0])),nf=Na+8|0;f[0]=ac;a[nf>>2]=b[0];a[nf+4>>2]=b[1];Ia=(Na+16|0)>>2;a[Ia]=a[Wa];a[Ia+1]=a[Wa+1];a[Ia+2]=a[Wa+2];a[Ia+3]=a[Wa+3];Gd(x,uc,2);a[Ia]=a[Sa];a[Ia+1]=a[Sa+1];a[Ia+2]=a[Sa+2];a[Ia+3]=a[Sa+3];Gd(x,uc,2);a[Ia]=a[sb];a[Ia+1]=a[sb+1];a[Ia+2]=a[sb+2];a[Ia+3]=a[sb+3];Gd(x,uc,2)}else{if(2==(Bb|0)){var rc=0==(l|0);a:do{if(!rc){var af=d<<1,jc=Cb(d<<5),Td=jc;Pa(x,c);$b(x,c);if(Ba){var Fe=0,gf=0}else{zc(x,Td,af,1);G(jc);Pa(x,i);G(Ja);h=Na;return}for(;;){var fe=Fe<<2;Ca=((gf<<4)+Td|0)>>2;jb=(((fe|1)<<4)+Ja|0)>>2;a[Ca]=a[jb];a[Ca+1]=a[jb+1];a[Ca+2]=a[jb+2];a[Ca+3]=a[jb+3];$a=(((gf|1)<<4)+Td|0)>>2;ab=(((fe|2)<<4)+Ja|0)>>2;a[$a]=a[ab];a[$a+1]=a[ab+1];a[$a+2]=a[ab+2];a[$a+3]=a[ab+3];var fc=Fe+1|0;if((fc|0)==(d|0)){break}else{Fe=fc,gf=gf+2|0}}zc(x,Td,af,1);G(jc);for(var df=0;;){$f(x,((df<<2|2)<<4)+Ja|0,4,0,0,1);var jd=df+1|0;if((jd|0)==(d|0)){break a}else{df=jd}}}}while(0);Pa(x,i);if(Ba){for(var md=0;;){var je=md<<2;Gd(x,((je|1)<<4)+Ja|0,2);$f(x,((je|2)<<4)+Ja|0,4,0,0,0);var Qe=md+1|0;if((Qe|0)==(d|0)){break}else{md=Qe}}}}else{if(128==(Bb|0)){Pa(x,i);0!=(l|0)&&$b(x,c);var nc=d+3|0,Uc=fa(nc<<4);qa=Uc>>2;Za=g>>2;a[qa]=a[Za];a[qa+1]=a[Za+1];a[qa+2]=a[Za+2];a[qa+3]=a[Za+3];ra=(g|0)>>2;var bf=(b[0]=a[ra],b[1]=a[ra+1],f[0]);Ya=Sd>>2;var dc=bf-.25*(bf-(b[0]=a[Ya],b[1]=a[Ya+1],f[0])),bc=Uc+16|0;f[0]=dc;a[bc>>2]=b[0];a[bc+4>>2]=b[1];var Xb=g+8|0,gc=(b[0]=a[Xb>>2],b[1]=a[Xb+4>>2],f[0]),kd=Ja+48|0;ba=(Ja+56|0)>>2;var Ac=Ja+72|0,Cc=gc+((b[0]=a[ba],b[1]=a[ba+1],f[0])-(b[0]=a[Ac>>2],b[1]=a[Ac+4>>2],f[0]))/3,Ic=Uc+24|0;f[0]=Cc;a[Ic>>2]=b[0];a[Ic+4>>2]=b[1];var vc=(b[0]=a[ra],b[1]=a[ra+1],f[0]),Kc=vc-2*(vc-(b[0]=a[Ya],b[1]=a[Ya+1],f[0])),nd=Uc+32|0;f[0]=Kc;a[nd>>2]=b[0];a[nd+4>>2]=b[1];var zd=Uc+40|0;f[0]=Cc;a[zd>>2]=b[0];a[zd+4>>2]=b[1];var cf=(b[0]=a[ra],b[1]=a[ra+1],f[0]),Nc=cf-2.25*(cf-(b[0]=a[Ya],b[1]=a[Ya+1],f[0])),Dc=Uc+48|0;f[0]=Nc;a[Dc>>2]=b[0];a[Dc+4>>2]=b[1];var zi=(b[0]=a[ba],b[1]=a[ba+1],f[0]),we=Uc+56|0;f[0]=zi;a[we>>2]=b[0];a[we+4>>2]=b[1];var pe=(b[0]=a[kd>>2],b[1]=a[kd+4>>2],f[0]),Qc=Uc+64|0;f[0]=pe;a[Qc>>2]=b[0];a[Qc+4>>2]=b[1];var Kd=(b[0]=a[ba],b[1]=a[ba+1],f[0]),Dd=Uc+72|0;f[0]=Kd;a[Dd>>2]=b[0];a[Dd+4>>2]=b[1];var ld=4<(nc|0);a:do{if(ld){for(var Ec=4;;){La=((Ec<<4)+Uc|0)>>2;ka=((Ec-3<<4)+g|0)>>2;a[La]=a[ka];a[La+1]=a[ka+1];a[La+2]=a[ka+2];a[La+3]=a[ka+3];var Ye=Ec+1|0;if((Ye|0)==(nc|0)){break a}else{Ec=Ye}}}}while(0);zc(x,Uc,nc,l&255);G(Uc)}else{if(4==(Bb|0)){if(Pa(x,i),0!=(l|0)&&$b(x,c),zc(x,g,d,l&255),Ba){var Ad=Na|0;Z=Na>>2;Ra=(Na+16|0)>>2;for(var Ud=0;;){var Vd=3*Ud|0;Ha=((Vd+2<<4)+Ja|0)>>2;a[Z]=a[Ha];a[Z+1]=a[Ha+1];a[Z+2]=a[Ha+2];a[Z+3]=a[Ha+3];la=((Vd+4<<4)+Ja|0)>>2;a[Ra]=a[la];a[Ra+1]=a[la+1];a[Ra+2]=a[la+2];a[Ra+3]=a[la+3];Gd(x,Ad,2);var Oc=Ud+1|0;if((Oc|0)==(d|0)){break}else{Ud=Oc}}}}else{if(512==(Bb|0)){4!=(d|0)&&sa(Ot|0,588,Pt|0,Qt|0);Pa(x,i);0!=(l|0)&&$b(x,c);var Pc=d+8|0,gd=fa(Pc<<4);pa=gd>>2;ma=g>>2;a[pa]=a[ma];a[pa+1]=a[ma+1];a[pa+2]=a[ma+2];a[pa+3]=a[ma+3];za=(gd+16|0)>>2;Ka=(g+16|0)>>2;a[za]=a[Ka];a[za+1]=a[Ka+1];a[za+2]=a[Ka+2];a[za+3]=a[Ka+3];ta=(Ja+48|0)>>2;var ud=(b[0]=a[ta],b[1]=a[ta+1],f[0]);$=(Ja+64|0)>>2;var Fc=ud+((b[0]=a[$],b[1]=a[$+1],f[0])-ud),Yc=gd+32|0;Ga=Yc>>2;Fa=Yc>>2;f[0]=Fc;a[Fa]=b[0];a[Fa+1]=b[1];Ab=(Ja+56|0)>>2;var of=(b[0]=a[Ab],b[1]=a[Ab+1],f[0]);wa=(Ja+72|0)>>2;var Gc=of+((b[0]=a[wa],b[1]=a[wa+1],f[0])-of);Y=(gd+40|0)>>2;f[0]=Gc;a[Y]=b[0];a[Y+1]=b[1];var Zc=Fc+((b[0]=a[ta],b[1]=a[ta+1],f[0])-(b[0]=a[fd>>2],b[1]=a[fd+4>>2],f[0]));ya=(gd+48|0)>>2;f[0]=Zc;a[ya]=b[0];a[ya+1]=b[1];var Lc=Ja+40|0,Jc=Gc+((b[0]=a[Ab],b[1]=a[Ab+1],f[0])-(b[0]=a[Lc>>2],b[1]=a[Lc+4>>2],f[0]));tb=(gd+56|0)>>2;f[0]=Jc;a[tb]=b[0];a[tb+1]=b[1];var bd=Zc+((b[0]=a[$],b[1]=a[$+1],f[0])-(b[0]=a[ta],b[1]=a[ta+1],f[0]));V=(gd+64|0)>>2;f[0]=bd;a[V]=b[0];a[V+1]=b[1];var Vc=Jc+((b[0]=a[wa],b[1]=a[wa+1],f[0])-(b[0]=a[Ab],b[1]=a[Ab+1],f[0]));Rb=(gd+72|0)>>2;f[0]=Vc;a[Rb]=b[0];a[Rb+1]=b[1];var Bd=bd+(Fc-Zc),Rc=gd+80|0;W=Rc>>2;f[0]=Bd;a[Rc>>2]=b[0];a[Rc+4>>2]=b[1];var ed=gd+88|0;f[0]=Vc+(Gc-Jc);a[ed>>2]=b[0];a[ed+4>>2]=b[1];ga=(Ja+96|0)>>2;var qd=(b[0]=a[ga],b[1]=a[ga+1],f[0]);ha=(Ja+80|0)>>2;var Cd=qd+((b[0]=a[ha],b[1]=a[ha+1],f[0])-qd),ad=gd+144|0;S=ad>>2;f[0]=Cd;a[ad>>2]=b[0];a[ad+4>>2]=b[1];U=(Ja+104|0)>>2;var vd=(b[0]=a[U],b[1]=a[U+1],f[0]);xa=(Ja+88|0)>>2;var Xc=vd+((b[0]=a[xa],b[1]=a[xa+1],f[0])-vd),dd=gd+152|0;f[0]=Xc;a[dd>>2]=b[0];a[dd+4>>2]=b[1];var pd=Ja+112|0,cd=Cd+((b[0]=a[ga],b[1]=a[ga+1],f[0])-(b[0]=a[pd>>2],b[1]=a[pd+4>>2],f[0]));ea=(gd+128|0)>>2;f[0]=cd;a[ea]=b[0];a[ea+1]=b[1];var Fd=Ja+120|0,te=Xc+((b[0]=a[U],b[1]=a[U+1],f[0])-(b[0]=a[Fd>>2],b[1]=a[Fd+4>>2],f[0]));da=(gd+136|0)>>2;f[0]=te;a[da]=b[0];a[da+1]=b[1];var yd=cd+((b[0]=a[ha],b[1]=a[ha+1],f[0])-(b[0]=a[ga],b[1]=a[ga+1],f[0]));aa=(gd+112|0)>>2;f[0]=yd;a[aa]=b[0];a[aa+1]=b[1];var od=te+((b[0]=a[xa],b[1]=a[xa+1],f[0])-(b[0]=a[U],b[1]=a[U+1],f[0]));ja=(gd+120|0)>>2;f[0]=od;a[ja]=b[0];a[ja+1]=b[1];var Md=yd+(Cd-cd),Ld=gd+96|0;zb=Ld>>2;Q=Ld>>2;f[0]=Md;a[Q]=b[0];a[Q+1]=b[1];var be=od+(Xc-te);R=(gd+104|0)>>2;f[0]=be;a[R]=b[0];a[R+1]=b[1];ca=(gd+160|0)>>2;hc=(g+32|0)>>2;a[ca]=a[hc];a[ca+1]=a[hc+1];a[ca+2]=a[hc+2];a[ca+3]=a[hc+3];N=(gd+176|0)>>2;L=(g+48|0)>>2;a[N]=a[L];a[N+1]=a[L+1];a[N+2]=a[L+2];a[N+3]=a[L+3];zc(x,gd,Pc,l&255);var wd=Na|0;K=Na>>2;a[K]=a[Ga];a[K+1]=a[Ga+1];a[K+2]=a[Ga+2];a[K+3]=a[Ga+3];var xd=(b[0]=a[Fa],b[1]=a[Fa+1],f[0]),ke=xd-((b[0]=a[ya],b[1]=a[ya+1],f[0])-xd);I=(Na+16|0)>>2;f[0]=ke;a[I]=b[0];a[I+1]=b[1];var sd=(b[0]=a[Y],b[1]=a[Y+1],f[0]),Ed=sd-((b[0]=a[tb],b[1]=a[tb+1],f[0])-sd);H=(Na+24|0)>>2;f[0]=Ed;a[H]=b[0];a[H+1]=b[1];var Wd=ke+((b[0]=a[V],b[1]=a[V+1],f[0])-(b[0]=a[ya],b[1]=a[ya+1],f[0]));J=(Na+32|0)>>2;f[0]=Wd;a[J]=b[0];a[J+1]=b[1];var se=Ed+((b[0]=a[Rb],b[1]=a[Rb+1],f[0])-(b[0]=a[tb],b[1]=a[tb+1],f[0]));E=(Na+40|0)>>2;f[0]=se;a[E]=b[0];a[E+1]=b[1];ia=(Na+48|0)>>2;a[ia]=a[W];a[ia+1]=a[W+1];a[ia+2]=a[W+2];a[ia+3]=a[W+3];Gd(x,wd,4);a[K]=a[zb];a[K+1]=a[zb+1];a[K+2]=a[zb+2];a[K+3]=a[zb+3];var Pd=(b[0]=a[Q],b[1]=a[Q+1],f[0]),de=Pd-((b[0]=a[aa],b[1]=a[aa+1],f[0])-Pd);f[0]=de;a[I]=b[0];a[I+1]=b[1];var Id=(b[0]=a[R],b[1]=a[R+1],f[0]),le=Id-((b[0]=a[ja],b[1]=a[ja+1],f[0])-Id);f[0]=le;a[H]=b[0];a[H+1]=b[1];var he=de+((b[0]=a[ea],b[1]=a[ea+1],f[0])-(b[0]=a[aa],b[1]=a[aa+1],f[0]));f[0]=he;a[J]=b[0];a[J+1]=b[1];var Ce=le+((b[0]=a[da],b[1]=a[da+1],f[0])-(b[0]=a[ja],b[1]=a[ja+1],f[0]));f[0]=Ce;a[E]=b[0];a[E+1]=b[1];a[ia]=a[S];a[ia+1]=a[S+1];a[ia+2]=a[S+2];a[ia+3]=a[S+3];Gd(x,wd,4);G(gd)}else{if(32==(Bb|0)){Pa(x,i);0!=(l|0)&&$b(x,c);var ce=d+1|0,Hd=fa(ce<<4);Da=Hd>>2;var ue=1<(d|0);a:do{if(ue){for(var Yd=1;;){F=((Yd<<4)+Hd|0)>>2;O=((Yd<<4)+g|0)>>2;a[F]=a[O];a[F+1]=a[O+1];a[F+2]=a[O+2];a[F+3]=a[O+3];var Qd=Yd+1|0;if((Qd|0)==(d|0)){break a}else{Yd=Qd}}}}while(0);var $d=3*d|0;X=(($d+1<<4)+Ja|0)>>2;a[Da]=a[X];a[Da+1]=a[X+1];a[Da+2]=a[X+2];a[Da+3]=a[X+3];M=((d<<4)+Hd|0)>>2;D=(($d-1<<4)+Ja|0)>>2;a[M]=a[D];a[M+1]=a[D+1];a[M+2]=a[D+2];a[M+3]=a[D+3];zc(x,Hd,ce,l&255);G(Hd);var De=Na|0;y=Na>>2;a[y]=a[D];a[y+1]=a[D+1];a[y+2]=a[D+2];a[y+3]=a[D+3];var ae=Na+16|0;T=ae>>2;a[T]=a[X];a[T+1]=a[X+1];a[T+2]=a[X+2];a[T+3]=a[X+3];var Ae=ae|0,He=(b[0]=a[Ae>>2],b[1]=a[Ae+4>>2],f[0]),Ee=Na|0,xe=($d<<4)+Ja|0,Ke=He+((b[0]=a[Ee>>2],b[1]=a[Ee+4>>2],f[0])-(b[0]=a[xe>>2],b[1]=a[xe+4>>2],f[0])),qe=Na+32|0,re=qe|0;f[0]=Ke;a[re>>2]=b[0];a[re+4>>2]=b[1];var Ge=Na+24|0,ye=(b[0]=a[Ge>>2],b[1]=a[Ge+4>>2],f[0]),ze=Na+8|0,me=($d<<4)+Ja+8|0,Oe=ye+((b[0]=a[ze>>2],b[1]=a[ze+4>>2],f[0])-(b[0]=a[me>>2],b[1]=a[me+4>>2],f[0])),Be=Na+40|0;f[0]=Oe;a[Be>>2]=b[0];a[Be+4>>2]=b[1];Gd(x,ae,2);P=qe>>2;a[T]=a[P];a[T+1]=a[P+1];a[T+2]=a[P+2];a[T+3]=a[P+3];Gd(x,De,2)}else{if(64==(Bb|0)){Pa(x,i);0!=(l|0)&&$b(x,c);var Nd=d+2|0,td=fa(Nd<<4);C=td>>2;B=g>>2;a[C]=a[B];a[C+1]=a[B+1];a[C+2]=a[B+2];a[C+3]=a[B+3];A=(td+16|0)>>2;a[A]=a[kb];a[A+1]=a[kb+1];a[A+2]=a[kb+2];a[A+3]=a[kb+3];var Pe=(b[0]=a[fd>>2],b[1]=a[fd+4>>2],f[0]),Ie=Ja+48|0;w=Ie>>2;u=Ie>>2;t=(Ja+64|0)>>2;var We=Pe+((b[0]=a[u],b[1]=a[u+1],f[0])-(b[0]=a[t],b[1]=a[t+1],f[0]))/3,Le=td+32|0;f[0]=We;a[Le>>2]=b[0];a[Le+4>>2]=b[1];var Me=Ja+40|0,Te=(b[0]=a[Me>>2],b[1]=a[Me+4>>2],f[0]);v=(Ja+56|0)>>2;m=(Ja+72|0)>>2;var Ue=Te+((b[0]=a[v],b[1]=a[v+1],f[0])-(b[0]=a[m],b[1]=a[m+1],f[0]))/3,Ve=td+40|0;f[0]=Ue;a[Ve>>2]=b[0];a[Ve+4>>2]=b[1];var Re=(b[0]=a[u],b[1]=a[u+1],f[0]),hf=Re+(Re-(b[0]=a[t],b[1]=a[t+1],f[0]))/3,Se=td+48|0;f[0]=hf;a[Se>>2]=b[0];a[Se+4>>2]=b[1];var Ze=(b[0]=a[v],b[1]=a[v+1],f[0]),jf=Ze+(Ze-(b[0]=a[m],b[1]=a[m+1],f[0]))/3,ff=td+56|0;f[0]=jf;a[ff>>2]=b[0];a[ff+4>>2]=b[1];var kf=4<(Nd|0);a:do{if(kf){for(var ge=4;;){p=((ge<<4)+td|0)>>2;j=((ge-2<<4)+g|0)>>2;a[p]=a[j];a[p+1]=a[j+1];a[p+2]=a[j+2];a[p+3]=a[j+3];var Ne=ge+1|0;if((Ne|0)==(Nd|0)){break a}else{ge=Ne}}}}while(0);zc(x,td,Nd,l&255);G(td);n=Na>>2;a[n]=a[w];a[n+1]=a[w+1];a[n+2]=a[w+2];a[n+3]=a[w+3];k=(Na+16|0)>>2;a[k]=a[kb];a[k+1]=a[kb+1];a[k+2]=a[kb+2];a[k+3]=a[kb+3];Gd(x,Na|0,2)}}}}}}}G(Ja);h=Na}function lH(x){var c,i,g,d,e,l,k,n,z=h;h+=32;var p;n=z>>2;var s=z+8;k=s>>2;var v=z+16,t=z+24,u=fa(44);l=u>>2;var w=x+24|0,A=a[a[w>>2]+8>>2];e=A>>2;var B=a[e],C=a[e+1],P=a[e+2],T=A+12|0,y=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),D=A+28|0,M=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),X=A+20|0,O=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]),F=x|0,Da=jo(V(F,mH|0))&255|B,ia=0!=(Da|0);if(ia){var E,G=x|0,J=Xb(G,a[rh>>2],0,.01),H=Xb(G,a[sh>>2],0,.02),I=72*(J>H?J:H);E=(0>I?I-.5:I+.5)&-1|0;if(0>2],b[1]=a[N+4>>2],f[0]),R=x+56|0,Q=(b[0]=a[R>>2],b[1]=a[R+4>>2],f[0]),zb=72*(cazb?zb-.5:zb+.5)&-1|0,L=K=ja}}else{var aa=x+48|0,da=72*(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),ea=0>da?da-.5:da+.5,xa=x+56|0,U=72*(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]),K=(0>U?U-.5:U+.5)&-1|0,L=ea&-1|0}var S=Zf(F,a[$o>>2],C),ha=y+Xb(F,a[Rt>>2],0,-360);if(0==(P|0)){var ga=Xb(F,a[St>>2],0,-100),W=Zf(F,a[Tt>>2],4),Rb=Xb(F,a[Ut>>2],0,-100),Y=ga,tb=W}else{Rb=O,Y=M,tb=P}d=(x+120|0)>>2;var ya=a[d],$=ya+24|0,wa=(b[0]=a[$>>2],b[1]=a[$+4>>2],f[0]),Ab=ya+32|0,Fa=(b[0]=a[Ab>>2],b[1]=a[Ab+4>>2],f[0]),Ga=wa&-1,Z=-1<(Ga|0)?Ga:-Ga|0,ta=Z|0;p=-1<(Z|0)?0==(ta+.5&-1|0)?1774:1777:0==(ta-.5&-1|0)?1774:1777;if(1774==p){var Ka=Fa&-1,za=-1<(Ka|0)?Ka:-Ka|0,ma=za|0;if(-1<(za|0)){if(0==(ma+.5&-1|0)){var pa=wa,sa=Fa}else{p=1777}}else{0==(ma-.5&-1|0)?(pa=wa,sa=Fa):p=1777}}if(1777==p){var Ha=V(F,Zn|0);if(0==(Ha|0)){pa=wa+16,sa=Fa+8}else{var Ra=Cd(Ha,Lk|0,(j=h,h+=8,a[j>>2]=z,a[j+4>>2]=s,j)),ba=(b[0]=a[n],b[1]=a[n+1],f[0]);if(0>ba){f[0]=0;a[n]=b[0];a[n+1]=b[1];var ra=0}else{ra=ba}var La=(b[0]=a[k],b[1]=a[k+1],f[0]);if(0>La){f[0]=0;a[k]=b[0];a[k+1]=b[1];var qa=0}else{qa=La}if(0<(Ra|0)){var Ya=72*ra,na=0>Ya,Za=wa+(((na?Ya-.5:Ya+.5)&-1)<<1|0);if(1<(Ra|0)){var oa=72*qa,ab=0>oa?oa-.5:oa+.5,pa=Za,sa=Fa+((ab&-1)<<1|0)}else{var $a=na?Ya-.5:Ya+.5,pa=Za,sa=Fa+(($a&-1)<<1|0)}}else{pa=wa+16,sa=Fa+8}}}var jb=a[d]+24|0,Ca=pa-(b[0]=a[jb>>2],b[1]=a[jb+4>>2],f[0]);g=(x+20|0)>>2;var Ia=a[a[g]+44>>2]|0,eb=(b[0]=a[Ia>>2],b[1]=a[Ia+4>>2],f[0]);if(0ub?ub-.5:ub+.5)&-1|0,Ba=nH(pa,Sa),ua=nH(sa,Sa)}else{Ba=pa,ua=sa}var Oa=a[w>>2];if(0==m[Oa+12|0]<<24>>24){var Wa=V(F,ap|0);if(0==(Wa|0)){var pb=0,ob=0}else{if(0==m[Wa]<<24>>24){ob=pb=0}else{oH(t,a[g],Wa);var bb=a[t>>2],qb=a[t+4>>2];if(-1==(bb|0)&-1==(qb|0)){var Ma=a[x+12>>2];la(0,pH|0,(j=h,h+=8,a[j>>2]=Wa,a[j+4>>2]=Ma,j));ob=pb=0}else{m[a[g]+150|0]=1,pb=bb+2|0,ob=qb+2|0}}}}else{var kb=a[Oa>>2];if(99!=m[kb]<<24>>24){ob=pb=0}else{if(0!=(ka(kb,th|0)|0)){ob=pb=0}else{var ie=V(F,Xk|0);oH(v,a[g],ie);var vb=a[v>>2],xb=a[v+4>>2];if(-1==(vb|0)&-1==(xb|0)){var hd=0!=(ie|0)?ie:qH|0,nb=a[x+12>>2];la(0,rH|0,(j=h,h+=8,a[j>>2]=hd,a[j+4>>2]=nb,j));ob=pb=0}else{m[a[g]+150|0]=1,pb=vb+2|0,ob=xb+2|0}}}}var rb=pb|0,lb=Ba>rb?Ba:rb,Ta=ob|0,cb=ua>Ta?ua:Ta,fb=3>(tb|0)?0!=Rb|0!=Y?120:tb:tb,Ua=V(F,Vt|0);if(0==(Ua|0)){p=1818}else{var sb=m[Ua];116==sb<<24>>24||98==sb<<24>>24?m[a[d]+80|0]=sb:p=1818}1818==p&&(m[a[d]+80|0]=99);if(4==(fb|0)){if(0==(((0>ha?ha-.5:ha+.5)&-1)%90|0)&0==Rb&0==Y){var Na=lb,Fb=cb,Db=1}else{p=1824}}else{p=1824}if(1824==p){var Ob=1.4142135623730951*cb;if(K>Ob){if(99!=m[a[d]+80|0]<<24>>24){var Eb=1.4142135623730951,ne=Ob}else{var Bb=cb/K,Eb=$c(1/(1-Bb*Bb)),ne=cb}}else{Eb=1.4142135623730951,ne=Ob}var Ja=lb*Eb;if(2<(fb|0)){var Ea=se(3.141592653589793/(fb|0)),Na=Ja/Ea,Fb=ne/Ea}else{Na=Ja,Fb=ne}Db=0}if(0==re(jc(F,a[bp>>2],Ze|0))<<24>>24){var va=L>Na?L:Na,Aa=K>Fb?K:Fb}else{if(L>2];la(0,sH|0,(j=h,h+=8,a[j>>2]=a[x+12>>2],a[j+4>>2]=wb,j))}va=L;Aa=K}if(ia){var Cb=va>Aa?va:Aa,Qa=Cb,ic=Cb}else{Qa=va,ic=Aa}if(0==re(jc(F,a[cp>>2],Ze|0))<<24>>24){if(Db){var Va=a[d]+40|0;f[0]=(Ba>Qa?Ba:Qa)-Ca;a[Va>>2]=b[0];a[Va+4>>2]=b[1]}else{if(uaPa?Ba:Pa)-Ca;a[hb>>2]=b[0];a[hb+4>>2]=b[1]}else{var ib=a[d]+40|0;f[0]=Ba-Ca;a[ib>>2]=b[0];a[ib+4>>2]=b[1]}}}else{var Gb=a[d]+40|0;f[0]=Ba-Ca;a[Gb>>2]=b[0];a[Gb+4>>2]=b[1]}var pc=ic-Fb,Wc=a[d]+48|0;f[0]=ua+(ua>2]=b[0];a[Wc+4>>2]=b[1];var Vb=1>(S|0)?1:S,Xd=3>(fb|0);a:do{if(Xd){var yb=fa(Vb<<5),db=yb,Ib=.5*Qa,Nb=.5*ic,mb=yb;f[0]=-Ib;a[mb>>2]=b[0];a[mb+4>>2]=b[1];var lc=yb+8|0;f[0]=-Nb;a[lc>>2]=b[0];a[lc+4>>2]=b[1];var Hb=yb+16|0;f[0]=Ib;a[Hb>>2]=b[0];a[Hb+4>>2]=b[1];var Jd=yb+24|0;f[0]=Nb;a[Jd>>2]=b[0];a[Jd+4>>2]=b[1];if(1<(S|0)){for(var Lb=Nb,Hc=Ib,Jb=2,oe=1;;){var Kb=Hc+4,Qb=Lb+4,tc=(Jb<<4)+db|0;f[0]=-Kb;a[tc>>2]=b[0];a[tc+4>>2]=b[1];var Sc=(Jb<<4)+db+8|0;f[0]=-Qb;a[Sc>>2]=b[0];a[Sc+4>>2]=b[1];var Pb=Jb|1,Yb=(Pb<<4)+db|0;f[0]=Kb;a[Yb>>2]=b[0];a[Yb+4>>2]=b[1];var Mb=(Pb<<4)+db+8|0;f[0]=Qb;a[Mb>>2]=b[0];a[Mb+4>>2]=b[1];var rd=oe+1|0;if((rd|0)==(S|0)){break}else{Lb=Qb,Hc=Kb,Jb=Jb+2|0,oe=rd}}oc=db;Wb=2;Tb=2*Kb;ve=2*Qb}else{var oc=db,Wb=2,Tb=Qa,ve=ic}}else{for(var Rd=fa((Vb<<4)*fb|0),Bc=Rd,Sd=6.283185307179586/(fb|0),fd=.5*Sd,$b=Ce(fd),yc=pi(be(Rb)+be(Y),1),Sb=1.4142135623730951*Rb/se(fd),uc=.5*Y,Tc=.5*(Sd-3.141592653589793),ec=3.141592653589793*(ha/180),Mc=0,id=Tc+.5*(3.141592653589793-Sd),Zb=0,qc=0,nc=.5*Ce(Tc),kc=.5*se(Tc);;){if((Mc|0)>=(fb|0)){var mc=Zb,fc=qc;break}var af=id+Sd,ac=Ce(af),Td=kc+$b*se(af),Fe=nc+$b*ac,bc=Td*(yc+Fe*Sb)+Fe*uc,fe=ec+Cf(Fe,bc),rc=Ce(fe),dc=se(fe),jd=pi(bc,Fe),md=jd*dc*Qa,je=jd*rc*ic,Qe=be(md)>Zb?be(md):Zb,Ac=be(je)>qc?be(je):qc,Uc=(Mc<<4)+Bc|0;f[0]=md;a[Uc>>2]=b[0];a[Uc+4>>2]=b[1];var gc=(Mc<<4)+Bc+8|0;f[0]=je;a[gc>>2]=b[0];a[gc+4>>2]=b[1];if(Db){p=1855;break}else{Mc=Mc+1|0,id=af,Zb=Qe,qc=Ac,nc=Fe,kc=Td}}if(1855==p){var Cc=-md,Ic=Rd+16|0;f[0]=Cc;a[Ic>>2]=b[0];a[Ic+4>>2]=b[1];var vc=Rd+24|0;f[0]=je;a[vc>>2]=b[0];a[vc+4>>2]=b[1];var ef=Rd+32|0;f[0]=Cc;a[ef>>2]=b[0];a[ef+4>>2]=b[1];var kd=-je,Kc=Rd+40|0;f[0]=kd;a[Kc>>2]=b[0];a[Kc+4>>2]=b[1];var Nc=Rd+48|0;f[0]=md;a[Nc>>2]=b[0];a[Nc+4>>2]=b[1];var zc=Rd+56|0;f[0]=kd;a[zc>>2]=b[0];a[zc+4>>2]=b[1];mc=Qe;fc=Ac}var Dc=2*mc,Ec=2*fc,nd=Qa>Dc?Qa:Dc,zd=ic>Ec?ic:Ec,cf=nd/Dc,Qc=zd/Ec,Fc=0<(fb|0);b:do{if(Fc){for(var Gc=0;;){i=((Gc<<4)+Bc|0)>>2;c=((Gc<<4)+Bc+8|0)>>2;var we=(b[0]=a[i],b[1]=a[i+1],f[0])*cf,pe=(b[0]=a[c],b[1]=a[c+1],f[0])*Qc;f[0]=we;a[i]=b[0];a[i+1]=b[1];f[0]=pe;a[c]=b[0];a[c+1]=b[1];var Zc=Gc+1|0;if((Zc|0)==(fb|0)){break b}else{Gc=Zc}}}}while(0);if(1<(S|0)){var Kd=fb-1|0,Dd=(Kd<<4)+Bc|0,Jc=(b[0]=a[Dd>>2],b[1]=a[Dd+4>>2],f[0]),Oc=(Kd<<4)+Bc+8|0,Ye=(b[0]=a[Oc>>2],b[1]=a[Oc+4>>2],f[0]),Ad=Rd,Ud=(b[0]=a[Ad>>2],b[1]=a[Ad+4>>2],f[0]),Vd=Rd+8|0,Pc=(b[0]=a[Vd>>2],b[1]=a[Vd+4>>2],f[0]);if(Fc){for(var Yc=Ud,gd=Pc,ud=0,Rc=Cf(Pc-Ye,Ud-Jc);;){for(var Lc=ud+1|0,of=(Lc|0)==(fb|0),ld=of?0:Lc,ad=(ld<<4)+Bc|0,bd=(b[0]=a[ad>>2],b[1]=a[ad+4>>2],f[0]),Xc=(ld<<4)+Bc+8|0,Vc=(b[0]=a[Xc>>2],b[1]=a[Xc+4>>2],f[0]),cd=Cf(Vc-gd,bd-Yc),ed=.5*(Rc+3.141592653589793-cd),qd=4/Ce(ed),vd=Rc-ed,dd=Ce(vd)*qd,Bd=se(vd)*qd,pd=gd,Fd=Yc,yd=1;;){var od=Fd+Bd,td=pd+dd,Ld=yd*fb+ud|0,wd=(Ld<<4)+Bc|0;f[0]=od;a[wd>>2]=b[0];a[wd+4>>2]=b[1];var te=(Ld<<4)+Bc+8|0;f[0]=td;a[te>>2]=b[0];a[te+4>>2]=b[1];var xd=yd+1|0;if((xd|0)==(S|0)){break}else{pd=td,Fd=od,yd=xd}}if(of){break}else{Yc=bd,gd=Vc,ud=Lc,Rc=cd}}for(var ke=fb*(S-1)|0,sd=zd,Md=nd,Gd=0;;){var Ed=Gd+ke|0,Wd=(Ed<<4)+Bc|0,Hd=(b[0]=a[Wd>>2],b[1]=a[Wd+4>>2],f[0]),Yd=(Ed<<4)+Bc+8|0,$d=(b[0]=a[Yd>>2],b[1]=a[Yd+4>>2],f[0]),Pd=2*be(Hd)>Md?2*be(Hd):Md,de=2*be($d)>sd?2*be($d):sd,Id=Gd+1|0;if((Id|0)==(fb|0)){oc=Bc;Wb=fb;Tb=Pd;ve=de;break a}else{sd=de,Md=Pd,Gd=Id}}}else{oc=Bc,Wb=fb,Tb=nd,ve=zd}}else{oc=Bc,Wb=fb,Tb=nd,ve=zd}}}while(0);a[l]=Da;a[l+1]=S;a[l+2]=Wb;var le=u+12|0;f[0]=ha;a[le>>2]=b[0];a[le+4>>2]=b[1];var ae=u+28|0;f[0]=Y;a[ae>>2]=b[0];a[ae+4>>2]=b[1];var Nd=u+20|0;f[0]=Rb;a[Nd>>2]=b[0];a[Nd+4>>2]=b[1];a[l+10]=oc;var ce=x+48|0;f[0]=Tb/72;a[ce>>2]=b[0];a[ce+4>>2]=b[1];var Qd=x+56|0;f[0]=ve/72;a[Qd>>2]=b[0];a[Qd+4>>2]=b[1];a[x+28>>2]=u;h=z}function tH(x){var c,i,g,d=h;h+=32;var e=d+16,l=a[a[x+20>>2]+152>>2]>>>2&1^1;i=x+120|0;g=a[a[i>>2]>>2];a[Fd>>2]=g;g=Ba(g);g=fa(1<(g|0)?g+1|0:2);c=dp(x,l,1,g);0==(c|0)?(la(1,uH|0,(j=h,h+=4,a[j>>2]=a[a[i>>2]>>2],j)),a[Fd>>2]=yg|0,l=dp(x,l,1,g)):l=c;G(g);Wt(d,x,l);g=(x+48|0)>>2;i=72*(b[0]=a[g],b[1]=a[g+1],f[0]);var k=(0>i?i-.5:i+.5)&-1|0;i=(x+56|0)>>2;c=72*(b[0]=a[i],b[1]=a[i+1],f[0]);var n=(0>c?c-.5:c+.5)&-1|0,z=x|0;c=(l|0)>>2;if(0==re(jc(z,a[bp>>2],Ze|0))<<24>>24){var p=(b[0]=a[c],b[1]=a[c+1],f[0]),m=l+8|0,v=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),n=v>n?v:n,p=p>k?p:k,k=m}else{p=k,k=l+8|0}Xt(l,p,n,re(jc(z,a[cp>>2],Ze|0))&255);Xi(e,-.5*p,.5*n);z=e|0;e=e+8|0;Yt(l,(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),15);e=(b[0]=a[c],b[1]=a[c+1],f[0])/72;f[0]=e;a[g]=b[0];a[g+1]=b[1];e=((b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])+1)/72;f[0]=e;a[i]=b[0];a[i+1]=b[1];a[x+28>>2]=l;h=d}function vH(c){var d,i,g,q=fa(44);g=q>>2;var e=a[a[a[c+24>>2]+8>>2]+4>>2];d=c|0;i=Xb(d,a[rh>>2],1.7976931348623157e+308,3e-4);var l=Xb(d,a[sh>>2],1.7976931348623157e+308,3e-4),k=i>2;1.7976931348623157e+308==k&1.7976931348623157e+308==l?(f[0]=.05,a[i]=b[0],a[i+1]=b[1],l=c+48|0,f[0]=.05,a[l>>2]=b[0],a[l+4>>2]=b[1],k=3.6):(f[0]=k,a[i]=b[0],a[i+1]=b[1],l=c+48|0,f[0]=k,a[l>>2]=b[0],a[l+4>>2]=b[1],k*=72);l=c+48|0;d=Zf(d,a[$o>>2],e);var e=fa(1>(d|0)?32:d<<5),h=.5*k,j=-h;f[0]=j;a[e>>2]=b[0];a[e+4>>2]=b[1];var p=e+8|0;f[0]=j;a[p>>2]=b[0];a[p+4>>2]=b[1];j=e+16|0;f[0]=h;a[j>>2]=b[0];a[j+4>>2]=b[1];j=e+24|0;f[0]=h;a[j>>2]=b[0];a[j+4>>2]=b[1];if(1<(d|0)){p=j=h;k=2;for(h=1;;){var m=p+4,j=j+4,p=(k<<4)+e|0;f[0]=-m;a[p>>2]=b[0];a[p+4>>2]=b[1];p=(k<<4)+e+8|0;f[0]=-j;a[p>>2]=b[0];a[p+4>>2]=b[1];var p=k|1,v=(p<<4)+e|0;f[0]=m;a[v>>2]=b[0];a[v+4>>2]=b[1];p=(p<<4)+e+8|0;f[0]=j;a[p>>2]=b[0];a[p+4>>2]=b[1];h=h+1|0;if((h|0)==(d|0)){break}else{p=m,k=k+2|0}}m*=2}else{m=k}a[g]=1;a[g+1]=d;a[g+2]=2;d=(q+12|0)>>2;a[d]=0;a[d+1]=0;a[d+2]=0;a[d+3]=0;a[d+4]=0;a[d+5]=0;a[g+10]=e;g=m/72;f[0]=g;a[l>>2]=b[0];a[l+4>>2]=b[1];f[0]=g;a[i]=b[0];a[i+1]=b[1];a[c+28>>2]=q}function Is(b){var c,i=a[Yk>>2];if(0==(i|0)){var g;return 0}for(var d=a[mo>>2],f=0;;){if((f|0)>=(d|0)){g=0;c=1901;break}var e=a[i+(f<<2)>>2],k=a[e>>2];if(m[k]<<24>>24==m[b]<<24>>24&&0==(ka(k,b)|0)){g=e;c=1902;break}f=f+1|0}if(1902==c||1901==c){return g}}function wH(b,c,i,g){var d=h;h+=40;i=xH(c,i,g);a[d+36>>2]=a[g+36>>2];Yi(c,a[g+24>>2],d,i,m[g+33|0]&255,0);c=d>>2;b>>=2;for(g=c+10;c>2]+32>>2]+152>>2]&3,k=c+32|0,n=c+40|0;yH(g,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),l);k=d+32|0;d=d+40|0;yH(q,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),l);d=m[i+33|0];l=d&255;if(15==d<<24>>24||0==d<<24>>24){return h=g,0}i=a[i+24>>2];if(0==(i|0)){var e=0==(a[a[e>>2]+152>>2]&1|0),i=c+96|0,i=.5*(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),d=-i,c=c+104|0,k=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),n=-k,c=e?n:d,j=e?d:n,p=e?k:i,n=e?i:k}else{c=i|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),e=i+8|0,d=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),e=i+16|0,i=i+24|0,j=d,p=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),n=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])}var i=a[g>>2],e=a[g+4>>2],d=a[q>>2],q=a[q+4>>2],s=.5*(c+p)&-1,k=.5*(j+n)&-1;if(0==(l&1|0)){var v=0,j=0}else{v=i+s-d|0,j=e+(j&-1)-q|0,v=j*j+v*v|0,j=zH|0}if(0==(l&2|0)){p=v}else{var p=i+(p&-1)-d|0,t=e+k-q|0,p=t*t+p*p|0,p=(t=0==(j|0)|(p|0)<(v|0))?p:v,j=t?Zt|0:j}0==(l&4|0)?(n=p,s=j):(s=i+s-d|0,n=e+(n&-1)-q|0,n=n*n+s*s|0,n=(s=0==(j|0)|(n|0)<(p|0))?n:p,s=s?$t|0:j);if(0==(l&8|0)){return h=g,s}l=i+(c&-1)-d|0;c=e+k-q|0;l=0==(s|0)|(c*c+l*l|0)<(n|0)?au|0:s;h=g;return l}function Yi(c,d,i,g,q,e){var l=h;h+=128;var k=l+16,n=l+32,j=l+48,p=l+64,s=l+80,v=l+96,t=l+112;if(0==(d|0)){var u=0==(a[a[c+20>>2]+152>>2]&1|0),w=c+96|0,w=.5*(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),A=c+104|0,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),B=u?w:A,w=u?A:w,A=0,u=-w,C=-B,P=B,T=B=0}else{var u=d|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),w=d+8|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),A=d+16|0,P=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),A=d+24|0,y=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]);Xi(l,.5*(u+P),.5*(w+y));B=l|0;T=l+8|0;A=1;C=w;w=P;P=y;B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]);T=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0])}0==(g|0)?(e=A,k=1,j=p=n=q=s=0,v=B,u=T):(y=m[g],0==y<<24>>24?(e=A,k=1,j=p=n=q=s=0,v=B,u=T):(y=y<<24>>24,g=g+1|0,119==(y|0)?(v=0==m[g]<<24>>24,j=v&1,e=v?1:A,k=j^1,s=v?q&8:0,q=0,n=v&1^1,p=v?3.141592653589793:0,v=v?u:B,u=T):115==(y|0)?(p=m[g]<<24>>24,119==(p|0)?(0==(e|0)?(v=u,u=C):(Zi(j,e,-2147483647,-2147483647),e=j|0,k=j+8|0,v=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),e=1,k=0,s=q&9,n=q=0,p=-2.356194490192345,j=1):0==(p|0)?(0==(e|0)?(v=B,u=C):(Zi(k,e,-2147483647,B),e=k|0,k=k+8|0,v=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),e=1,k=0,s=q&1,n=q=0,p=-1.5707963267948966,j=1):101==(p|0)?(0==(e|0)?(v=w,u=C):(Zi(n,e,-2147483647,2147483647),e=n|0,k=n+8|0,v=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),e=1,k=0,s=q&3,n=q=0,p=-.7853981633974483,j=1):(e=A,k=1,q=s=0,n=1,j=p=0,v=B,u=T)):101==(y|0)?(v=0==m[g]<<24>>24,j=v&1,e=v?1:A,k=j^1,s=v?q&2:0,q=0,n=v&1^1,p=0,v=v?w:B,u=T):99==(y|0)?(e=A,k=1,j=p=n=q=s=0,v=B,u=T):95==(y|0)?(e=A,k=1,s=q,q=1,j=p=n=0,v=B,u=T):110==(y|0)?(k=m[g]<<24>>24,101==(k|0)?(0==(e|0)?(v=w,u=P):(Zi(s,e,2147483647,2147483647),e=s|0,k=s+8|0,v=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),e=1,k=0,s=q&6,n=q=0,p=.7853981633974483,j=1):0==(k|0)?(0==(e|0)?(v=B,u=P):(Zi(p,e,2147483647,B),e=p|0,k=p+8|0,v=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),e=1,k=0,s=q&4,n=q=0,p=1.5707963267948966,j=1):119==(k|0)?(0==(e|0)?(v=u,u=P):(Zi(v,e,2147483647,-2147483647),e=v|0,k=v+8|0,v=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),e=1,k=0,s=q&12,n=q=0,p=2.356194490192345,j=1):(e=A,k=1,q=s=0,n=1,j=p=0,v=B,u=T)):(e=A,k=1,q=s=0,n=1,j=p=0,v=B,u=T)));c=(c+20|0)>>2;lG(t,v,u,90*(a[a[c]+152>>2]&3)|0);v=t|0;v=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]);t=t+8|0;t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]);m[i+33|0]=0==q<<24>>24?(2==(a[a[c]+152>>2]&3|0)?4==(s|0)?1:1==(s|0)?4:s:3==(a[a[c]+152>>2]&3|0)?4==(s|0)?2:8==(s|0)?1:2==(s|0)?4:1==(s|0)?8:s:1==(a[a[c]+152>>2]&3|0)?1==(s|0)?8:4==(s|0)?2:8==(s|0)?4:2==(s|0)?1:s:s)&255:s&255;a[i+24>>2]=d;d=i|0;f[0]=(0>v?v-.5:v+.5)&-1|0;a[d>>2]=b[0];a[d+4>>2]=b[1];d=i+8|0;f[0]=(0>t?t-.5:t+.5)&-1|0;a[d>>2]=b[0];a[d+4>>2]=b[1];d=i+16|0;a:{if(c=a[a[c]+152>>2]&3,2==(c|0)){c=-1*p}else{if(3==(c|0)){if(3.141592653589793==p){c=-1.5707963267948966}else{if(2.356194490192345==p){c=-.7853981633974483}else{if(1.5707963267948966==p){c=0}else{if(.7853981633974483==p){c=p}else{if(0==p){c=1.5707963267948966}else{if(-.7853981633974483==p){c=2.356194490192345}else{c=-1.5707963267948966==p?3.141592653589793:p;break a}}}}}}}else{c=1==(c|0)?p-1.5707963267948966:p}}}f[0]=c;a[d>>2]=b[0];a[d+4>>2]=b[1];if(0==v&0==t){return m[i+32|0]=-128,m[i+29|0]=j,m[i+28|0]=e,m[i+30|0]=k,m[i+31|0]=q,h=l,n}d=Cf(t,v)+4.71238898038469;m[i+32|0]=256*(6.283185307179586>d?d:d-6.283185307179586)/6.283185307179586&255;m[i+29|0]=j;m[i+28|0]=e;m[i+30|0]=k;m[i+31|0]=q;h=l;return n}function Xi(c,d,i){var g=c|0;f[0]=d;a[g>>2]=b[0];a[g+4>>2]=b[1];c=c+8|0;f[0]=i;a[c>>2]=b[0];a[c+4>>2]=b[1]}function yH(b,c,i,g){if(2==(g|0)){var d=-i,f=c,c=2026}else{if(0==(g|0)){d=i,f=c,c=2026}else{if(1==(g|0)){d=c,f=-i,c=2026}else{if(3==(g|0)){d=c,f=i,c=2026}else{var e=0,k=0,c=2027}}}}if(2026==c){if(0>f){var h=f-.5,j=d}else{e=f,k=d,c=2027}}2027==c&&(h=e+.5,j=k);a[b>>2]=h&-1;a[b+4>>2]=(0>j?j-.5:j+.5)&-1}function Zi(c,d,i,g){var q,e=h;h+=64;var l=a[d>>2],k=e+16|0;q=e>>2;a[q]=0;a[q+1]=0;a[q+2]=0;a[q+3]=0;f[0]=g/3;a[k>>2]=b[0];a[k+4>>2]=b[1];k=e+24|0;f[0]=i/3;a[k>>2]=b[0];a[k+4>>2]=b[1];k=e+32|0;f[0]=2*g/3;a[k>>2]=b[0];a[k+4>>2]=b[1];k=e+40|0;f[0]=2*i/3;a[k>>2]=b[0];a[k+4>>2]=b[1];k=e+48|0;f[0]=g;a[k>>2]=b[0];a[k+4>>2]=b[1];g=e+56|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];vk(d,a[a[a[l+24>>2]+4>>2]+12>>2],e|0,1);c>>=2;a[c]=a[q];a[c+1]=a[q+1];a[c+2]=a[q+2];a[c+3]=a[q+3];h=e}function AH(b,c,i,g){var d,f=h;h+=52;var e,k=f+40;d=k>>2;var n=f+44;if(0==m[i]<<24>>24){c=bu>>2}else{g=0==(g|0)?cu|0:g;a[d]=15;if(0==m[a[c+120>>2]+82|0]<<24>>24){e=2047}else{var z=a[a[c+120>>2]+72>>2];2==m[z+4|0]<<24>>24?k=0:(z=tG(a[z>>2],i),0==(z|0)?k=0:(a[k>>2]=m[z+31|0]&255,k=z+40|0));0==(k|0)?e=2047:0!=(Yi(c,k,f,g,a[d],0)|0)&&la(0,du|0,(j=h,h+=12,a[j>>2]=a[c+12>>2],a[j+4>>2]=i,a[j+8>>2]=g,j))}2047==e&&((a[a[c+24>>2]+8>>2]|0)==(pl|0)?e=0:(a[n>>2]=c,a[n+4>>2]=0,e=n),0!=(Yi(c,0,f,i,a[d],e)|0)&&BH(a[c+12>>2],i));c=f>>2}b>>=2;for(i=c+10;c>2];q=l>>2;l=l+148|0;g=a[l>>2];var k=0==(g|0)?0!=(a[q+50]&1|0):1,n=a[d+28>>2];i=n>>2;if(0!=(n|0)){k&&0==(a[c+148>>2]&4|0)&&ad(c,g,a[q+42],a[q+46],a[q+38]);g=a[c+36>>2];var n=d+32|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+(a[i+1]|0),z=d+40|0,z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])+(a[i+2]|0);i=a[i];Va(g,DH|0,(j=h,h+=20,f[0]=n,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=z,a[j+8>>2]=b[0],a[j+12>>2]=b[1],a[j+16>>2]=i,j));n=d+120|0;g=(a[n>>2]+56|0)>>2;i=(d+32|0)>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];Fg(c,10,a[n>>2]);k&&(0!=(a[c+148>>2]&4|0)&&ad(c,a[l>>2],a[q+42],a[q+46],a[q+38]),Se(c))}h=e}function BH(b,c){var i=h;la(0,EH|0,(j=h,h+=8,a[j>>2]=b,a[j+4>>2]=c,j));h=i}function FH(c,d,i){var g=h;h+=16;var q=a[c+4>>2],c=a[c>>2];Ui(g,d,i,90*(a[a[c+20>>2]+152>>2]&3)|0);d=g|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);i=g+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);if(0==(q|0)){var q=a[c+28>>2],e=q+16|0,l=q+24|0,c=q+32|0,q=q+40|0}else{e=q,l=q+8|0,c=q+16|0,q=q+24|0}e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);if(e>d){return h=g,0}l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);if(d>(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])|l>i){return h=g,0}d=i<=q&1;h=g;return d}function GH(c,d,i,g,q){var e,l,k=h;h+=32;var n;if(0==m[d+28|0]<<24>>24){var j;h=k;return 0}for(var d=d|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),p=a[c+28>>2],s=a[p+48>>2],v=c+20|0,p=p+56|0,t=0;;){if((t|0)>=(s|0)){j=i;n=2114;break}var u=0==(a[a[v>>2]+152>>2]&1|0);l=a[a[p>>2]+(t<<2)>>2];if(u){var w=l+32|0,A=l+16|0}else{w=l+40|0,A=l+24|0}A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])&-1|0;if(A<=d&&(e=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])&-1|0,d<=e)){break}t=t+1|0}if(2114==n){return h=k,j}u?(l=(c+32|0)>>2,n=(b[0]=a[l],b[1]=a[l+1],f[0])+A,j=g|0,f[0]=n,a[j>>2]=b[0],a[j+4>>2]=b[1],j=c+40|0,n=c+96|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])-.5*(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),u=g+8|0,f[0]=j,a[u>>2]=b[0],a[u+4>>2]=b[1],e=(b[0]=a[l],b[1]=a[l+1],f[0])+e,l=g+16|0,f[0]=e,a[l>>2]=b[0],a[l+4>>2]=b[1],e=n):(e=c+32|0,n=c+40|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),j=h,l=(l+16|0)>>2,A=h,h+=32,a[A>>2]=a[l],a[A+4>>2]=a[l+1],a[A+8>>2]=a[l+2],a[A+12>>2]=a[l+3],a[A+16>>2]=a[l+4],a[A+20>>2]=a[l+5],a[A+24>>2]=a[l+6],a[A+28>>2]=a[l+7],l=A+24|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),u=A+16|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),d=A+8|0,s=A|0,A=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])+e,d=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0])+n,s=k|0,f[0]=A,a[s>>2]=b[0],a[s+4>>2]=b[1],A=k+8|0,f[0]=d,a[A>>2]=b[0],a[A+4>>2]=b[1],A=k+16|0,f[0]=l+e,a[A>>2]=b[0],a[A+4>>2]=b[1],e=k+24|0,f[0]=u+n,a[e>>2]=b[0],a[e+4>>2]=b[1],h=j,l=g>>2,e=k>>2,a[l]=a[e],a[l+1]=a[e+1],a[l+2]=a[e+2],a[l+3]=a[e+3],a[l+4]=a[e+4],a[l+5]=a[e+5],a[l+6]=a[e+6],a[l+7]=a[e+7],e=c+96|0);c=c+40|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])+.5*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);g=g+24|0;f[0]=c;a[g>>2]=b[0];a[g+4>>2]=b[1];a[q>>2]=1;h=k;return i}function HH(c,d){var i,g,q,e,l,k=h;h+=96;var n=k+32,j=a[c+16>>2];l=j>>2;var j=j+148|0,p=a[j>>2],s=0==(p|0)?0!=(a[l+50]&1|0):1,v=a[d+28>>2];i=(v+16|0)>>2;g=k>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];a[g+4]=a[i+4];a[g+5]=a[i+5];a[g+6]=a[i+6];a[g+7]=a[i+7];i=d+32|0;q=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);i=(k|0)>>2;var t=(b[0]=a[i],b[1]=a[i+1],f[0])+q;f[0]=t;a[i]=b[0];a[i+1]=b[1];i=d+40|0;t=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);i=(k+8|0)>>2;e=(b[0]=a[i],b[1]=a[i+1],f[0])+t;f[0]=e;a[i]=b[0];a[i+1]=b[1];i=k+16|0;e=(i|0)>>2;q=(b[0]=a[e],b[1]=a[e+1],f[0])+q;f[0]=q;a[e]=b[0];a[e+1]=b[1];q=(k+24|0)>>2;t=(b[0]=a[q],b[1]=a[q+1],f[0])+t;f[0]=t;a[q]=b[0];a[q+1]=b[1];s&&0==(a[c+148>>2]&4|0)&&ad(c,p,a[l+42],a[l+46],a[l+38]);p=IH(c,d);ep(c,d);0!=(p&1|0)&&$b(c,Dh(d,qe|0));q=a[a[d+24>>2]>>2];p=77==m[q]<<24>>24?0==(ka(q,eu|0)|0)?p|2:p:p;0==(p&998|0)?mh(c,k,p&1):(q=n>>2,a[q]=a[g],a[q+1]=a[g+1],a[q+2]=a[g+2],a[q+3]=a[g+3],q=n+32|0,g=q>>2,i>>=2,a[g]=a[i],a[g+1]=a[i+1],a[g+2]=a[i+2],a[g+3]=a[i+3],g=q|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),i=n+16|0,f[0]=g,a[i>>2]=b[0],a[i+4>>2]=b[1],g=n+8|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),i=n+24|0,f[0]=g,a[i>>2]=b[0],a[i+4>>2]=b[1],g=n|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),i=n+48|0,f[0]=g,a[i>>2]=b[0],a[i+4>>2]=b[1],g=n+40|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),i=n+56|0,f[0]=g,a[i>>2]=b[0],a[i+4>>2]=b[1],Ii(c,Dh(d,qe|0),fu(d),n|0,4,p,p&1));gu(c,d,v);s&&(0!=(a[c+148>>2]&4|0)&&ad(c,a[j>>2],a[l+42],a[l+46],a[l+38]),Se(c));h=k}function IH(b,c){var i=h;h+=4;var g=hu(c,i);0!=(g|0)&&Ke(b,g);g=a[iu>>2];if(0!=(g|0)){var d=c|0,f=mb(d,a[g+8>>2]);0!=(f|0)&&0!=m[f]<<24>>24&&Zr(b,Xb(d,g,1,0))}h=i;return a[i>>2]}function ep(b,c){var i=Aa(c|0,a[Eh>>2],Y|0);0==m[i]<<24>>24?Pa(b,Ac|0):Pa(b,i)}function fp(c,d,i,g,q){var e=c|0;f[0]=d+g;a[e>>2]=b[0];a[e+4>>2]=b[1];c=c+8|0;f[0]=i+q;a[c>>2]=b[0];a[c+4>>2]=b[1]}function gu(c,d,i){var g,q,e,l,k,n,j,p,s,v,t=h;h+=96;var u=t+32;s=t+48;var w=t+64,A=t+80,B=i+52|0;v=a[B>>2];0==(v|0)?(B=d+32|0,s=d+40|0):(l=i+16|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=i+24|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=i+32|0,j=i+40|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),p=u|0,f[0]=.5*(l+n),a[p>>2]=b[0],a[p+4>>2]=b[1],l=u+8|0,f[0]=.5*(k+j),a[l>>2]=b[0],a[l+4>>2]=b[1],l=u|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),u=u+8|0,n=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),k=d+32|0,u=d+40|0,fp(s,l,n,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])),v=(v+56|0)>>2,s>>=2,a[v]=a[s],a[v+1]=a[s+1],a[v+2]=a[s+2],a[v+3]=a[s+3],Fg(c,10,a[B>>2]),ep(c,d),B=k,s=u);B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]);s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);v=i+48|0;if(0<(a[v>>2]|0)){u=i+64|0;e=t+16|0;var C=i+56|0;p=e>>2;j=(t|0)>>2;n=(t+24|0)>>2;k=(t+8|0)>>2;var P=t|0;l=t>>2;var i=w>>2,T=e|0;e=A>>2;for(var y=t+16|0,D=0;;){if(0<(D|0)){q=((D<<2)+a[C>>2]|0)>>2;g=a[q];if(0==m[u]<<24>>24){g=(g+32|0)>>2;a[p]=a[g];a[p+1]=a[g+1];a[p+2]=a[g+2];a[p+3]=a[g+3];q=a[q]+16|0;q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);f[0]=q;a[j]=b[0];a[j+1]=b[1];var M=(b[0]=a[n],b[1]=a[n+1],f[0]);f[0]=M;a[k]=b[0];a[k+1]=b[1];g=M;var X=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0])}else{g=(g+16|0)>>2,a[l]=a[g],a[l+1]=a[g+1],a[l+2]=a[g+2],a[l+3]=a[g+3],X=(b[0]=a[j],b[1]=a[j+1],f[0]),f[0]=X,a[y>>2]=b[0],a[y+4>>2]=b[1],q=a[q]+40|0,M=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),f[0]=M,a[n]=b[0],a[n+1]=b[1],q=X,g=(b[0]=a[k],b[1]=a[k+1],f[0])}fp(w,q,g,B,s);a[l]=a[i];a[l+1]=a[i+1];a[l+2]=a[i+2];a[l+3]=a[i+3];fp(A,X,M,B,s);a[p]=a[e];a[p+1]=a[e+1];a[p+2]=a[e+2];a[p+3]=a[e+3];Gd(c,P,2)}gu(c,d,a[a[C>>2]+(D<<2)>>2]);D=D+1|0;if((D|0)>=(a[v>>2]|0)){break}}}h=t}function fu(b){b=Aa(b|0,a[Eh>>2],Y|0);return 0==m[b]<<24>>24?Ac|0:b}function Dh(b,c){var i=b|0,g=Aa(i,a[gp>>2],Y|0);return 0==m[g]<<24>>24?(i=Aa(i,a[Eh>>2],Y|0),0==m[i]<<24>>24?c:i):g}function hu(b,c){var i,g=Aa(b|0,a[Ki>>2],Y|0),d=0==m[g]<<24>>24;a:do{if(d){var f=0,e=0}else{nh(g);for(var k=Cc|0,h=0;;){for(var j=k;;){var p=a[j>>2];if(0==(p|0)){f=h;e=Cc|0;break a}var s=m[p];if(114==s<<24>>24){if(0==(ka(p,Vr|0)|0)){var v=j;i=2181;break}}else{if(105==s<<24>>24){if(0==(ka(p,qh|0)|0)){i=2185;break}}else{if(102==s<<24>>24){if(0==(ka(p,Hi|0)|0)){i=2179;break}}else{if(100==s<<24>>24&&0==(ka(p,JH|0)|0)){var t=j;i=2183;break}}}}j=j+4|0}if(2181==i){for(;!(i=0,k=v+4|0,p=a[k>>2],a[v>>2]=p,0==(p|0));){v=k,i=2181}k=j;h|=2}else{if(2179==i){i=0,k=j+4|0,h|=1}else{if(2185==i){i=0,k=j+4|0,h|=16}else{if(2183==i){for(;!(i=0,k=t+4|0,p=a[k>>2],a[t>>2]=p,0==(p|0));){t=k,i=2183}k=j;h|=4}}}}}}}while(0);i=a[a[b+24>>2]+8>>2];if(0==(i|0)){return a[c>>2]=f,e}f|=a[i+36>>2];a[c>>2]=f;return e}function KH(b,c){var i,g=a[b+60>>2];if(0!=(g|0)&&m[g]<<24>>24==m[c]<<24>>24&&0==(ka(g,c)|0)){var d;return b}for(var g=b+56|0,f=a[b+48>>2],e=0;;){if((e|0)>=(f|0)){d=0;i=2201;break}var k=KH(a[a[g>>2]+(e<<2)>>2],c);if(0==(k|0)){e=e+1|0}else{d=k;i=2199;break}}if(2199==i||2201==i){return d}}function ju(b){var c=b+48|0,i=0<(a[c>>2]|0),g=b+56|0;a:do{if(i){for(var d=0;;){if(ju(a[a[g>>2]+(d<<2)>>2]),d=d+1|0,(d|0)>=(a[c>>2]|0)){break a}}}}while(0);G(a[b+60>>2]);vh(a[b+52>>2]);G(a[g>>2]);G(b)}function LH(c,d,i){var g=h;h+=16;c=a[c>>2];Ui(g,d,i,90*(a[a[c+20>>2]+152>>2]&3)|0);d=g|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);i=g+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);if((c|0)!=(a[ku>>2]|0)){var q=a[c+28>>2],e=(a[q+4>>2]<<1)-2|0,q=((0>(e|0)?1:e|1)<<4)+a[q+40>>2]|0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);f[0]=q;a[gg>>2]=b[0];a[gg+4>>2]=b[1];a[ku>>2]=c}if(be(d)>(b[0]=a[gg>>2],b[1]=a[gg+4>>2],f[0])||be(i)>(b[0]=a[gg>>2],b[1]=a[gg+4>>2],f[0])){return h=g,0}c=pi(d,i)<=(b[0]=a[gg>>2],b[1]=a[gg+4>>2],f[0])&1;h=g;return c}function MH(c,d){var i,g,q=h;h+=4;var e,l=a[c+16>>2];g=l>>2;var l=l+148|0,k=a[l>>2];if(0==(k|0)){if(0==(a[g+50]&1|0)){var n=0}else{e=2221}}else{e=2221}2221==e&&(0==(a[c+148>>2]&4|0)&&ad(c,k,a[g+42],a[g+46],a[g+38]),n=1);i=a[d+28>>2]>>2;var k=a[i+10],j=a[i+2];i=a[i+1];if((a[lu>>2]|0)<(j|0)){var p=j+2|0;a[lu>>2]=p;var s=a[ql>>2],p=0==(s|0)?Cb(p<<4):wb(s,p<<4);a[ql>>2]=p}hu(d,q);0==(a[q>>2]&16|0)?Ke(c,rl+4|0):Ke(c,rl|0);p=m[d+133|0]&255;0==(p&1|0)?0!=(p&2|0)?(p=d|0,Pa(c,Aa(p,a[mu>>2],Dk|0)),p=Aa(p,a[nu>>2],Ek|0),$b(c,p)):0!=(p&8|0)?(p=d|0,Pa(c,Aa(p,a[ou>>2],Fk|0)),p=Aa(p,a[pu>>2],Gk|0),$b(c,p)):0==(p&4|0)?(p=Dh(d,Ac|0),$b(c,p),ep(c,d)):(p=d|0,Pa(c,Aa(p,a[qu>>2],Hk|0)),p=Aa(p,a[ru>>2],Ik|0),$b(c,p)):(p=d|0,Pa(c,Aa(p,a[su>>2],Jk|0)),p=Aa(p,a[tu>>2],Kk|0),$b(c,p));if(0==(i|0)){if(0==m[p]<<24>>24){var v=1}else{Pa(c,p),v=1}e=2244}else{0<(i|0)&&(v=i,e=2244)}a:do{if(2244==e){i=0<(j|0);for(var p=d+32|0,s=d+40|0,t=0,u=1;;){b:do{if(i){for(var w=t*j|0,A=a[ql>>2],B=0;;){var C=B+w|0,P=(C<<4)+k|0,P=(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]),C=(C<<4)+k+8|0,C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),P=P+(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),T=(B<<4)+A|0;f[0]=P;a[T>>2]=b[0];a[T+4>>2]=b[1];P=C+(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);C=(B<<4)+A+8|0;f[0]=P;a[C>>2]=b[0];a[C+4>>2]=b[1];B=B+1|0;if((B|0)==(j|0)){var y=A;break b}}}else{y=a[ql>>2]}}while(0);Qk(c,y,u);t=t+1|0;if((t|0)==(v|0)){break a}else{u=0}}}}while(0);n&&(0!=(a[c+148>>2]&4|0)&&ad(c,a[l>>2],a[g+42],a[g+46],a[g+38]),Se(c));h=q}function NH(c,d,i){var g,q=h;h+=16;var e;g=a[c+4>>2];var c=a[c>>2],l=c+20|0;Ui(q,d,i,90*(a[a[l>>2]+152>>2]&3)|0);d=q|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);i=q+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);if(0!=(g|0)){var k=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);e=g+24|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);k>d?e=0:(k=g+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),c=g+16|0,e=d>(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])|k>i?0:i<=e);h=q;return e&1}if((c|0)==(a[uu>>2]|0)){c=(b[0]=a[sl>>2],b[1]=a[sl+4>>2],f[0]),g=(b[0]=a[tl>>2],b[1]=a[tl+4>>2],f[0])}else{g=a[c+28>>2]>>2;a[vu>>2]=a[g+10];var n=a[g+2];a[wu>>2]=n;var j=0==(a[a[l>>2]+152>>2]&1|0),l=c+104|0,p=c+112|0,p=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),l=c+96|0,m=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=j?m:p,m=j?p:m,j=c+48|0,j=72*(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),p=0>j,m=((p?j-.5:j+.5)&-1|0)/(0==m?1:m);f[0]=m;a[sl>>2]=b[0];a[sl+4>>2]=b[1];var v=c+56|0,v=72*(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]),t=0>v,l=((t?v-.5:v+.5)&-1|0)/(0==l?1:l);f[0]=l;a[tl>>2]=b[0];a[tl+4>>2]=b[1];f[0]=.5*((p?j-.5:j+.5)&-1|0);a[Fh>>2]=b[0];a[Fh+4>>2]=b[1];f[0]=.5*((t?v-.5:v+.5)&-1|0);a[ul>>2]=b[0];a[ul+4>>2]=b[1];g=(a[g+1]-1)*n|0;a[xu>>2]=0>(g|0)?0:g;a[uu>>2]=c;c=m;g=l}d*=c;i*=g;if(be(d)>(b[0]=a[Fh>>2],b[1]=a[Fh+4>>2],f[0])){return h=q,0}c=be(i);g=(b[0]=a[ul>>2],b[1]=a[ul+4>>2],f[0]);if(c>g){return h=q,0}c=a[wu>>2];if(3>(c|0)){return e=1>pi(d/(b[0]=a[Fh>>2],b[1]=a[Fh+4>>2],f[0]),i/g)&1,h=q,e}m=(a[hp>>2]|0)%(c|0);j=(m+1|0)%(c|0);g=a[xu>>2];var l=g+m|0,n=a[vu>>2],p=(l<<4)+n|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),l=(l<<4)+n+8|0,v=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=g+j|0,t=(l<<4)+n|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),l=(l<<4)+n+8|0,u=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);if(0==(ip(d,i,0,0,p,v,t,u)|0)){return h=q,0}if(l=0!=(ip(d,i,p,v,t,u,0,0)|0)){if(0==(ip(d,i,t,u,0,0,p,v)|0)){p=1}else{return h=q,1}}else{p=1}for(;;){if((p|0)>=(c|0)){e=2290;break}l?(k=j,j=(j+1|0)%(c|0)):(k=(m-1+c|0)%(c|0),j=m);var u=g+k|0,v=g+j|0,t=(u<<4)+n|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),u=(u<<4)+n+8|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),w=(v<<4)+n|0,v=(v<<4)+n+8|0;if(0==(ip(d,i,0,0,t,u,(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]))|0)){e=2289;break}else{p=p+1|0,m=k}}if(2290==e){return a[hp>>2]=m,h=q,1}if(2289==e){return a[hp>>2]=k,h=q,0}}function ip(a,b,i,c,d,f,e,k){k=-(k-f);e-=d;d=k*d+e*f;return(0<=k*a+e*b-d^0<=k*i+e*c-d)&1^1}function OH(c,d){var i,g,q,e,l,k=a[c+16>>2];e=k>>2;var k=k+148|0,h=a[k>>2];if(0==(h|0)){if(0==(a[e+50]&1|0)){var j=0}else{l=2303}}else{l=2303}2303==l&&(0==(a[c+148>>2]&4|0)&&ad(c,h,a[e+42],a[e+46],a[e+38]),j=1);q=a[d+28>>2]>>2;var h=a[q+10],p=a[q+2],s=a[q+1];if((a[yu>>2]|0)<(p|0)){q=p+5|0;a[yu>>2]=q;var v=a[hg>>2];q=0==(v|0)?Cb(q<<4):wb(v,q<<4);a[hg>>2]=q}q=d+120|0;v=d+32|0;g=(a[q>>2]+56|0)>>2;i=v>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];i=d+104|0;g=d+112|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])+(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=d+48|0;g=72*(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);i/=(0>g?g-.5:g+.5)&-1|0;g=d+96|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);var t=d+56|0,t=72*(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]);g/=(0>t?t-.5:t+.5)&-1|0;var t=IH(c,d),u=m[d+133|0]&255;0==(u&1|0)?0!=(u&2|0)?(u=d|0,Pa(c,Aa(u,a[mu>>2],Dk|0)),$b(c,Aa(u,a[nu>>2],Ek|0)),u=1):0!=(u&8|0)?(u=d|0,Pa(c,Aa(u,a[ou>>2],Fk|0)),$b(c,Aa(u,a[pu>>2],Gk|0)),u=1):0!=(u&4|0)?(u=d|0,Pa(c,Aa(u,a[qu>>2],Hk|0)),$b(c,Aa(u,a[ru>>2],Ik|0)),u=1):(0==(t&1|0)?u=0:($b(c,Dh(d,qe|0)),u=1),ep(c,d)):(u=d|0,Pa(c,Aa(u,a[su>>2],Jk|0)),$b(c,Aa(u,a[tu>>2],Kk|0)),u=1);var w=d+24|0,A=a[w>>2],B=m[A+12|0];if(0==B<<24>>24){var C=0;l=2331}else{if(l=a[A>>2],99==m[l]<<24>>24){C=0!=(ka(l,th|0)|0),l=2331}else{var P=l,T=1,y=0==u<<24>>24,D=s;l=2339}}if(2331==l){var M=0==u<<24>>24;0!=(s|0)|M|C?w=M:(C=Dh(d,qe|0),0==m[C]<<24>>24?(s=1,C=w=0):(Pa(c,C),B=a[w>>2],s=1,C=w=0,A=B,B=m[B+12|0]));if(0==B<<24>>24){if(B=V(d|0,ap|0),0==(B|0)){var X=u,O=s}else{P=B,T=C,y=w,D=s,l=2339}}else{P=a[A>>2],P=99!=m[P]<<24>>24?P:0!=(ka(P,th|0)|0)?P:V(d|0,Xk|0),T=C,y=w,D=s,l=2339}}if(2339==l){X=0<(p|0);a:do{if(X){O=v|0;C=a[hg>>2];s=d+40|0;for(l=0;;){if(B=(l<<4)+h|0,A=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),B=(l<<4)+h+8|0,B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),A=A*i+(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]),w=(l<<4)+C|0,f[0]=A,a[w>>2]=b[0],a[w+4>>2]=b[1],B=B*g+(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),A=(l<<4)+C+8|0,f[0]=B,a[A>>2]=b[0],a[A+4>>2]=b[1],l=l+1|0,(l|0)==(p|0)){break a}}}}while(0);X=u&255;y|T||(3>(p|0)?(Qk(c,a[hg>>2],u),0!=(t&4|0)&&PH(c,d)):(O=a[hg>>2],0==(t&6|0)?zc(c,O,p,u):Ii(c,Dh(d,qe|0),fu(d),O,p,t,X)));ut(c,P,a[hg>>2],p,u,jc(d|0,a[zu>>2],Ze|0));X=0;O=D}P=0<(O|0);a:do{if(P){D=0<(p|0);T=3>(p|0);y=0==(t&4|0);u=0==(t&998|0);C=v|0;s=d+40|0;l=0;for(B=X;;){b:do{if(D){A=l*p|0;w=a[hg>>2];for(M=0;;){var F=M+A|0,Da=(F<<4)+h|0,Da=(b[0]=a[Da>>2],b[1]=a[Da+4>>2],f[0]),F=(F<<4)+h+8|0,F=(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0]),Da=Da*i+(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),ia=(M<<4)+w|0;f[0]=Da;a[ia>>2]=b[0];a[ia+4>>2]=b[1];Da=F*g+(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);F=(M<<4)+w+8|0;f[0]=Da;a[F>>2]=b[0];a[F+4>>2]=b[1];M=M+1|0;if((M|0)==(p|0)){var E=w;break b}}}else{E=a[hg>>2]}}while(0);T?(Qk(c,E,B),y||PH(c,d)):u?zc(c,E,p,B):Ii(c,Dh(d,qe|0),fu(d),E,p,t,B&255);l=l+1|0;if((l|0)==(O|0)){break a}else{B=0}}}}while(0);Fg(c,10,a[q>>2]);j&&(0!=(a[c+148>>2]&4|0)&&ad(c,a[k>>2],a[e+42],a[e+46],a[e+38]),Se(c))}function PH(c,d){var i,g,q=h;h+=48;i=q+32;var e=d+96|0,e=.375*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),l=d+112|0,k=.6614*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=q|0;g=d+32|0;var n=d+40|0;fp(i,k,e,(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]));g=q>>2;i>>=2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];g=(q+8|0)>>2;n=(b[0]=a[g],b[1]=a[g+1],f[0]);i=(q+24|0)>>2;f[0]=n;a[i]=b[0];a[i+1]=b[1];n=q|0;k=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])-2*k;n=q+16|0;f[0]=k;a[n>>2]=b[0];a[n+4>>2]=b[1];Gd(c,l,2);e=(b[0]=a[g],b[1]=a[g+1],f[0])-2*e;f[0]=e;a[g]=b[0];a[g+1]=b[1];f[0]=e;a[i]=b[0];a[i+1]=b[1];Gd(c,l,2);h=q}function nH(a,b){var i=a/b&-1;return(((i|0)*b+1e-5>2],h=0,j=a[Fd>>2],p=1;a:for(;;){var s=m[j];do{if(0==s<<24>>24){var v=p;break a}else{if(92==s<<24>>24){var t=j+1|0,u=m[t];if(92==u<<24>>24||123==u<<24>>24||125==u<<24>>24||124==u<<24>>24){var w=h,A=t,B=p}else{var C=t,P=u;e=2375}}else{C=j,P=s,e=2375}}}while(0);if(2375==e){e=0;if(124==P<<24>>24){var T=h,y=(0==(h|0)&1)+p|0}else{T=125==P<<24>>24?h-1|0:123==P<<24>>24?h+1|0:h,y=p}if(0>(T|0)){v=y;break}else{w=T,A=C,B=y}}h=w;j=A+1|0;p=B}q=(l+56|0)>>2;a[q]=fa(v<<2);m[l+64|0]=d&255;var D=0==(d|0)&1,M=k+82|0,X=g+1|0,O=0==(i|0),F=c|0,Da=k+16|0,ia=k+4|0,E=k+8|0,G=0,J=0,I=0,H=0,K=0,L=g,N=0,ca=g,R=0;a:for(;;){for(var S=G,zb=J,ja=H,aa=K,da=L,ea=N,xa=ca,Q=R;;){var U=S,ha=zb,ga=ja,W=da,V=ea,Y=xa,tb=Q,ya=0;b:for(;;){var $=U,wa=ha,Ab=ga,Fa=W,Ga=V,la=Y,ta=tb;c:for(;;){var Ka=$,za=Ab,ma=Ga,pa=ta;d:for(;;){for(var Z=Ka,Ha=za;;){if(I){e=2448;break a}var Ra=a[Fd>>2],ka=m[Ra],sa=ka<<24>>24;if(60==(sa|0)){break}else{if(62==(sa|0)){e=2393;break d}else{if(92==(sa|0)){e=2422;break d}else{if(125==(sa|0)||124==(sa|0)||0==(sa|0)){break b}else{if(123!=(sa|0)){var La=wa,ba=Ha,Ya=Fa,ra=Ra;break d}}}}}var Za=Ra+1|0;a[Fd>>2]=Za;if(0!=(Ha|0)){e=2402;break a}if(0==m[Za]<<24>>24){e=2402;break a}var qa=dp(c,D,0,g);a[a[q]+(Z<<2)>>2]=qa;if(0==(qa|0)){e=2404;break a}else{Z=Z+1|0,Ha=4}}if(0!=(Ha&6|0)){e=2390;break a}if(0!=m[M]<<24>>24){La=wa;ba=Ha;Ya=Fa;ra=Ra;break}a[Fd>>2]=Ra+1|0;Ka=Z;za=Ha|18;pa=ma=g}d:do{if(2393==e){if(e=0,0==m[M]<<24>>24){break c}else{La=wa,ba=Ha,Ya=Fa,ra=Ra}}else{if(2422==e){e=0;var ab=Ra+1|0,$a=m[ab];if(0==$a<<24>>24){La=wa,ba=Ha,Ya=Fa,ra=Ra}else{if(123==$a<<24>>24||125==$a<<24>>24||124==$a<<24>>24||60==$a<<24>>24||62==$a<<24>>24){a[Fd>>2]=ab,La=wa,ba=Ha,Ya=Fa}else{32==$a<<24>>24&&(e=2424);do{if(2424==e&&(e=0,0==m[M]<<24>>24)){a[Fd>>2]=ab;La=1;ba=Ha;Ya=Fa;ra=ab;break d}}while(0);m[Fa]=92;a[Fd>>2]=ab;La=wa;ba=Ha|9;Ya=Fa+1|0}ra=ab}}}}while(0);if(0!=(ba&4|0)&&32!=m[ra]<<24>>24){e=2429;break a}var jb=0==(ba&24|0)?32==m[ra]<<24>>24?ba:ba|9:ba;if(0==(jb&8|0)){if(0==(jb&16|0)){var Ca=Ya,Ia=ma,eb=la,ub=pa}else{var Sa=m[ra],na=0==(La|0);if(32==Sa<<24>>24&na){if((ma|0)==(g|0)){var ua=ma}else{32==m[ma-1|0]<<24>>24?ua=ma:e=2443}}else{e=2443}2443==e&&(e=0,m[ma]=Sa,ua=ma+1|0);na?(Ca=Ya,Ia=ua,eb=la,ub=pa):(Ca=Ya,Ia=ua,eb=la,ub=ua-1|0)}}else{var Oa=m[ra],Wa=0==(La|0);if(32==Oa<<24>>24&Wa){if(32!=m[Ya-1|0]<<24>>24){e=2436}else{if(0==m[M]<<24>>24){var pb=Ya}else{e=2436}}}else{e=2436}2436==e&&(e=0,m[Ya]=Oa,pb=Ya+1|0);Wa?(Ca=pb,Ia=ma,eb=la):(Ca=pb,Ia=ma,eb=pb-1|0);ub=pa}var ob=ra+1|0;a[Fd>>2]=ob;var bb=m[ob];if(0>bb<<24>>24){for(var qb=Ca,oa=ob,kb=bb;;){var Ba=oa+1|0;a[Fd>>2]=Ba;var vb=qb+1|0;m[qb]=kb;var xb=m[Ba];if(0>xb<<24>>24){qb=vb,oa=Ba,kb=xb}else{$=Z;wa=La;Ab=jb;Fa=vb;Ga=Ia;la=eb;ta=ub;continue c}}}else{$=Z,wa=La,Ab=jb,Fa=Ca,Ga=Ia,la=eb,ta=ub}}if(0==(Ha&16|0)){e=2395;break a}if(ma>>>0>X>>>0){var hd=ma-1|0,nb=(hd|0)==(pa|0)?ma:32==m[hd]<<24>>24?hd:ma}else{nb=ma}m[nb]=0;var rb=Hb(g);a[Fd>>2]=a[Fd>>2]+1|0;U=Z;ha=wa;ga=Ha&-17;W=Fa;V=nb;Y=la;tb=pa;ya=rb}if(0==ka<<24>>24&O){e=2407;break a}if(0!=(Ha&16|0)){e=2407;break a}if(0==(Ha&4|0)){var lb=fa(68);a[a[q]+(Z<<2)>>2]=lb;var Ta=Z+1|0,cb=lb}else{Ta=Z,cb=aa}0!=(ya|0)&&(a[cb+60>>2]=ya);if(0==(Ha&5|0)){m[Fa]=32;var fb=Ha|1,Ua=Fa+1|0}else{fb=Ha,Ua=Fa}if(0==(fb&1|0)){var sb=Ua,Na=la}else{if(Ua>>>0>X>>>0){var Fb=Ua-1|0,Db=(Fb|0)==(la|0)?Ua:32==m[Fb]<<24>>24?Fb:Ua}else{Db=Ua}m[Db]=0;var Ob=Hb(g);a[cb+52>>2]=ag(F,Ob,0!=m[M]<<24>>24?2:0,(b[0]=a[Da>>2],b[1]=a[Da+4>>2],f[0]),a[ia>>2],a[E>>2]);m[cb+64|0]=1;Na=sb=g}var Eb=a[Fd>>2],va=m[Eb];if(0==va<<24>>24){G=Ta;J=wa;I=1;H=fb;K=cb;L=sb;N=ma;ca=Na;R=pa;continue a}else{if(125==va<<24>>24){e=2420;break a}}a[Fd>>2]=Eb+1|0;S=Ta;zb=wa;ja=0;aa=cb;da=sb;ea=ma;xa=Na;Q=pa}}if(2390==e){$i(l,ya);var Bb=0;return Bb}if(2407==e||2395==e||2404==e||2429==e){return $i(l,ya),Bb=0}if(2448==e){return a[l+48>>2]=Z,Bb=l}if(2420==e){return a[Fd>>2]=Eb+1|0,a[l+48>>2]=Ta,Bb=l}if(2402==e){return $i(l,ya),Bb=0}}function Wt(c,d,i){var g=h;h+=32;var q=g+8,e=g+16,l=a[i+52>>2],k=0==(l|0);a:do{if(k){var n=i+48|0;if(0<(a[n>>2]|0)){for(var z=i+56|0,p=e|0,s=e+8|0,v=i+64|0,t=0,u=0,w=0;;){Wt(e,d,a[a[z>>2]+(w<<2)>>2]);var A=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),B=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);0==m[v]<<24>>24?(u=u>A?u:A,t+=B):(u+=A,t=t>B?t:B);w=w+1|0;if((w|0)>=(a[n>>2]|0)){C=u;P=t;break a}}}else{var C=0,P=0}}else{C=l+24|0,n=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),C=l+32|0,P=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),0>2]=g,a[j+4>>2]=q,j)),0<(C|0)?(z=72*(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),n+=((0>z?z-.5:z+.5)&-1)<<1|0,z=72*(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),z=(p=0<=z)?z+.5:z-.5,C=n,P+=(z&-1)<<1|0):(C=n+16,P+=8))):C=n}}while(0);d=i|0;f[0]=C;a[d>>2]=b[0];a[d+4>>2]=b[1];i=i+8|0;f[0]=P;a[i>>2]=b[0];a[i+4>>2]=b[1];i=c|0;f[0]=C;a[i>>2]=b[0];a[i+4>>2]=b[1];c=c+8|0;f[0]=P;a[c>>2]=b[0];a[c+4>>2]=b[1];h=g}function Xt(c,d,i,g){var q,e,l=h;h+=32;var k=l+16;e=(c|0)>>2;var n=d-(b[0]=a[e],b[1]=a[e+1],f[0]);q=(c+8|0)>>2;var j=i-(b[0]=a[q],b[1]=a[q+1],f[0]);f[0]=d;a[e]=b[0];a[e+1]=b[1];f[0]=i;a[q]=b[0];a[q+1]=b[1];q=c+52|0;e=a[q>>2];if(0!=(e|0)&0==(g|0)){e=(e+40|0)>>2;var p=(b[0]=a[e],b[1]=a[e+1],f[0])+n;f[0]=p;a[e]=b[0];a[e+1]=b[1];q=(a[q>>2]+48|0)>>2;e=(b[0]=a[q],b[1]=a[q+1],f[0])+j;f[0]=e;a[q]=b[0];a[q+1]=b[1]}q=c+48|0;p=a[q>>2];if(0!=(p|0)){e=c+64|0;var s=m[e],n=(0==s<<24>>24?j:n)/(p|0);if(0<(p|0)){for(var c=c+56|0,j=k|0,p=k+8|0,v=l|0,t=l+8|0,u=0,w=s;;){var s=a[a[c>>2]+(u<<2)>>2],A=u+1|0,u=(A*n&-1)-(u*n&-1)|0;0==w<<24>>24?(w=s+8|0,Xi(k,d,(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])+(u|0)),w=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),u=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])):(w=s|0,Xi(l,(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])+(u|0),i),w=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]),u=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]));Xt(s,w,u,g);if((A|0)>=(a[q>>2]|0)){break}u=A;w=m[e]}}}h=l}function Yt(c,d,i,g){var q,e,l,k=h;h+=32;q=k+16;m[c+65|0]=g&255;e=c+8|0;Xi(k,d,i-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]));l=(c+16|0)>>2;e=k>>2;a[l]=a[e];a[l+1]=a[e+1];a[l+2]=a[e+2];a[l+3]=a[e+3];e=c|0;Xi(q,(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+d,i);e=(c+32|0)>>2;q>>=2;a[e]=a[q];a[e+1]=a[q+1];a[e+2]=a[q+2];a[e+3]=a[q+3];q=a[c+48>>2];e=q-1|0;if(0<=(e|0)){l=0==(g|0);for(var n=c+56|0,c=c+64|0,j=d,d=0;;){if(l){var p=0}else{var p=0==(d|0),s=(d|0)==(e|0),p=0==m[c]<<24>>24?p?s?15:14:s?11:10:p?s?15:13:s?7:5}Yt(a[a[n>>2]+(d<<2)>>2],j,i,p&g);p=a[a[n>>2]+(d<<2)>>2];0==m[c]<<24>>24?(p=p+8|0,i-=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])):(p|=0,j+=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]));d=d+1|0;if((d|0)==(q|0)){break}}}h=k}function $i(a,b){ju(a);0!=(b|0)&&G(b)}function vk(c,d,i,g){var q,e,l,k=h;h+=96;var n=k+64;l=n>>2;var j=k+72;e=j>>2;var p=k+80;q=k|0;if(0==g<<24>>24){var g=n,m=q,v=0,n=i+48|0;q=i+56|0}else{g=j,j=n,m=0,v=q,n=i|0,q=i+8|0}var t=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),u=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);f[0]=0;a[l]=b[0];a[l+1]=b[1];f[0]=1;a[e]=b[0];a[e+1]=b[1];var w=p|0,A=p+8|0,B=k|0,C=k+8|0,P=k+16|0,T=P|0,y=k+24|0,n=k+32|0,D=n|0,M=k+40|0;q=k+48|0;for(var X=q|0,O=k+56|0,F=0,Da=1,ia=0;;){var E,G,I,H,K,L,N,R,ca=.5*(Da+ia);Ld(p,i,3,ca,m,v);Da=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]);ia=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]);if(0==J[d](c,Da,ia)<<24>>24){var S=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),Q=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),zb=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),ja=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),aa=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),da=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]),ea=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]),xa=(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]);f[0]=ca;a[g>>2]=b[0];a[g+4>>2]=b[1];ca=1}else{f[0]=ca,a[j>>2]=b[0],a[j+4>>2]=b[1],ca=F,S=R,Q=N,zb=L,ja=K,aa=H,da=I,ea=G,xa=E}t-=Da;if(.5>=(0>t?-t:t)){if(t=u-ia,.5>=(0>t?-t:t)){break}}F=ca;t=Da;u=ia;Da=(b[0]=a[e],b[1]=a[e+1],f[0]);ia=(b[0]=a[l],b[1]=a[l+1],f[0]);R=S;N=Q;L=zb;K=ja;H=aa;I=da;G=ea;E=xa}0==ca<<24>>24?(d=i>>2,c=k>>2,a[d]=a[c],a[d+1]=a[c+1],a[d+2]=a[c+2],a[d+3]=a[c+3],c=(i+16|0)>>2,d=P>>2,a[c]=a[d],a[c+1]=a[d+1],a[c+2]=a[d+2],a[c+3]=a[d+3],c=(i+32|0)>>2,d=n>>2,a[c]=a[d],a[c+1]=a[d+1],a[c+2]=a[d+2],a[c+3]=a[d+3],i=(i+48|0)>>2,q>>=2,a[i]=a[q],a[i+1]=a[q+1],a[i+2]=a[q+2],a[i+3]=a[q+3]):(q=i|0,f[0]=S,a[q>>2]=b[0],a[q+4>>2]=b[1],q=i+8|0,f[0]=Q,a[q>>2]=b[0],a[q+4>>2]=b[1],q=i+16|0,f[0]=zb,a[q>>2]=b[0],a[q+4>>2]=b[1],q=i+24|0,f[0]=ja,a[q>>2]=b[0],a[q+4>>2]=b[1],q=i+32|0,f[0]=aa,a[q>>2]=b[0],a[q+4>>2]=b[1],q=i+40|0,f[0]=da,a[q>>2]=b[0],a[q+4>>2]=b[1],q=i+48|0,f[0]=ea,a[q>>2]=b[0],a[q+4>>2]=b[1],i=i+56|0,f[0]=xa,a[i>>2]=b[0],a[i+4>>2]=b[1]);h=k}function jp(c,d,i,g){var q,e,l,k,n,j,p,m,v,t,u,w,A,B,C,P,T,y,D=h;h+=64;y=(d+112|0)>>2;var M=(b[0]=a[y],b[1]=a[y+1],f[0]);T=(d+32|0)>>2;e=(b[0]=a[T],b[1]=a[T+1],f[0]);P=(d+40|0)>>2;q=(b[0]=a[P],b[1]=a[P+1],f[0]);C=(i|0)>>2;l=(b[0]=a[C],b[1]=a[C+1],f[0])-e;B=(D|0)>>2;f[0]=l;a[B]=b[0];a[B+1]=b[1];A=(i+8|0)>>2;l=(b[0]=a[A],b[1]=a[A+1],f[0])-q;w=(D+8|0)>>2;f[0]=l;a[w]=b[0];a[w+1]=b[1];u=(i+16|0)>>2;l=(b[0]=a[u],b[1]=a[u+1],f[0])-e;t=(D+16|0)>>2;f[0]=l;a[t]=b[0];a[t+1]=b[1];v=(i+24|0)>>2;l=(b[0]=a[v],b[1]=a[v+1],f[0])-q;m=(D+24|0)>>2;f[0]=l;a[m]=b[0];a[m+1]=b[1];p=(i+32|0)>>2;l=(b[0]=a[p],b[1]=a[p+1],f[0])-e;j=(D+32|0)>>2;f[0]=l;a[j]=b[0];a[j+1]=b[1];n=(i+40|0)>>2;l=(b[0]=a[n],b[1]=a[n+1],f[0])-q;k=(D+40|0)>>2;f[0]=l;a[k]=b[0];a[k+1]=b[1];l=(i+48|0)>>2;var X=(b[0]=a[l],b[1]=a[l+1],f[0])-e;e=(D+48|0)>>2;f[0]=X;a[e]=b[0];a[e+1]=b[1];i=(i+56|0)>>2;X=(b[0]=a[i],b[1]=a[i+1],f[0])-q;q=(D+56|0)>>2;f[0]=X;a[q]=b[0];a[q+1]=b[1];M&=-1;vk(c,a[a[a[d+24>>2]+4>>2]+12>>2],D|0,g);c=(b[0]=a[B],b[1]=a[B+1],f[0])+(b[0]=a[T],b[1]=a[T+1],f[0]);f[0]=c;a[C]=b[0];a[C+1]=b[1];C=(b[0]=a[w],b[1]=a[w+1],f[0])+(b[0]=a[P],b[1]=a[P+1],f[0]);f[0]=C;a[A]=b[0];a[A+1]=b[1];A=(b[0]=a[t],b[1]=a[t+1],f[0])+(b[0]=a[T],b[1]=a[T+1],f[0]);f[0]=A;a[u]=b[0];a[u+1]=b[1];u=(b[0]=a[m],b[1]=a[m+1],f[0])+(b[0]=a[P],b[1]=a[P+1],f[0]);f[0]=u;a[v]=b[0];a[v+1]=b[1];v=(b[0]=a[j],b[1]=a[j+1],f[0])+(b[0]=a[T],b[1]=a[T+1],f[0]);f[0]=v;a[p]=b[0];a[p+1]=b[1];p=(b[0]=a[k],b[1]=a[k+1],f[0])+(b[0]=a[P],b[1]=a[P+1],f[0]);f[0]=p;a[n]=b[0];a[n+1]=b[1];T=(b[0]=a[e],b[1]=a[e+1],f[0])+(b[0]=a[T],b[1]=a[T+1],f[0]);f[0]=T;a[l]=b[0];a[l+1]=b[1];P=(b[0]=a[q],b[1]=a[q+1],f[0])+(b[0]=a[P],b[1]=a[P+1],f[0]);f[0]=P;a[i]=b[0];a[i+1]=b[1];f[0]=M|0;a[y]=b[0];a[y+1]=b[1];h=D}function Au(b,c){var i,g;i=0==m[b+124|0]<<24>>24;a:do{if(i){g=b}else{for(var d=b;;){if(d=a[d+128>>2],0==m[d+124|0]<<24>>24){g=d;break a}}}}while(0);i=(g+24|0)>>2;g=a[i];0==(g|0)&&(g=fa(40),a[i]=g);g>>=2;d=a[g];g=0==(d|0)?Cb(48*a[g+1]+48|0):wb(d,48*a[g+1]+48|0);a[a[i]>>2]=g;d=a[i]+4|0;g=a[d>>2];a[d>>2]=g+1|0;d=a[a[i]>>2];i=d>>2;d=d+48*g|0;a[d>>2]=fa(c<<4);a[i+(12*g|0)+1]=c;a[i+(12*g|0)+3]=0;a[i+(12*g|0)+2]=0;return d}function Wd(c,d,i,g,q){var e,l,k,n,j,p,s,v=h;h+=80;var t;j=v>>2;p=v+4;n=p>>2;var u=v+8;l=u>>2;k=v+16;var w=a[c+16>>2];s=w>>2;var A=a[s+5],B=Au(c,g),C=0==m[c+124|0]<<24>>24;a:do{if(C){var P=c}else{for(var y=c;;){if(y=a[y+128>>2],0==m[y+124|0]<<24>>24){P=y;break a}}}}while(0);0==m[q+8|0]<<24>>24?(a[s+59]|0)!=(a[d+236>>2]|0)?s=d:(s=(C=(a[s+60]|0)>(a[d+240>>2]|0))?w:d,w=C?d:w):s=d;if((w|0)==(a[P+16>>2]|0)){var d=P+92|0,y=P+52|0,D=P+98|0,C=P+58|0}else{d=P+52|0,y=P+92|0,D=P+58|0,C=P+98|0}P=m[D];d=a[d>>2];y=a[y>>2];do{if(0==m[C]<<24>>24){t=2574}else{var D=w+24|0,F=a[D>>2];if(0==(F|0)){t=2574}else{if(0==(a[a[F+4>>2]+12>>2]|0)){t=2574}else{a[l]=w;a[l+1]=y|0;for(var M=g-4|0,F=w+32|0,X=w+40|0,O=0;(O|0)<(M|0);){var E=O+3|0,Da=(E<<4)+i|0,Da=(b[0]=a[Da>>2],b[1]=a[Da+4>>2],f[0])-(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0]),ia=(E<<4)+i+8|0;if(0==J[a[a[a[D>>2]+4>>2]+12>>2]](u,Da,(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0])-(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]))<<24>>24){break}else{O=E}}a[j]=O;jp(u,w,(O<<4)+i|0,1);M=O}}}}while(0);2574==t&&(M=a[j]=0);do{if(0==P<<24>>24){t=2583}else{if(w=s+24|0,C=a[w>>2],0==(C|0)){t=2583}else{if(0==(a[a[C+4>>2]+12>>2]|0)){t=2583}else{a[l]=s;a[l+1]=d|0;e=s+32|0;C=s+40|0;for(y=g-4|0;0<(y|0);){D=(y<<4)+i|0;D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);F=(y<<4)+i+8|0;if(0==J[a[a[a[w>>2]+4>>2]+12>>2]](u,D,(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0])-(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]))<<24>>24){break}y=y-3|0}a[n]=y;jp(u,s,(y<<4)+i|0,0);e=y}}}}while(0);2583==t&&(e=g-4|0,a[n]=e);for(g=g-4|0;;){if((M|0)>=(g|0)){var G=e;break}u=(M<<4)+i|0;l=M+3|0;P=(l<<4)+i|0;u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])-(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]);M=(M<<4)+i+8|0;P=(l<<4)+i+8|0;M=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0])-(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]);if(1e-6<=u*u+M*M){G=e;break}M=a[j]=l}for(;0<(G|0);){g=(G<<4)+i|0;e=G+3|0;l=(e<<4)+i|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);l=(G<<4)+i+8|0;e=(e<<4)+i+8|0;e=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(1e-6<=g*g+e*e){break}G=G-3|0;a[n]=G}QH(c,s,i,v,p,B,q);c=a[j];G=a[n]+4|0;p=(B|0)>>2;j=k>>2;s=k|0;q=(k+16|0)>>2;n=(k+32|0)>>2;k=(k+48|0)>>2;A=A+52|0;for(e=c;;){if((e|0)>=(G|0)){t=2597;break}l=((e-c<<4)+a[p]|0)>>2;g=((e<<4)+i|0)>>2;a[l]=a[g];a[l+1]=a[g+1];a[l+2]=a[g+2];a[l+3]=a[g+3];a[j]=a[g];a[j+1]=a[g+1];a[j+2]=a[g+2];a[j+3]=a[g+3];l=e+1|0;if((l|0)>=(G|0)){t=2596;break}g=((l-c<<4)+a[p]|0)>>2;l=((l<<4)+i|0)>>2;a[g]=a[l];a[g+1]=a[l+1];a[g+2]=a[l+2];a[g+3]=a[l+3];a[q]=a[l];a[q+1]=a[l+1];a[q+2]=a[l+2];a[q+3]=a[l+3];l=e+2|0;g=((l-c<<4)+a[p]|0)>>2;l=((l<<4)+i|0)>>2;a[g]=a[l];a[g+1]=a[l+1];a[g+2]=a[l+2];a[g+3]=a[l+3];a[n]=a[l];a[n+1]=a[l+1];a[n+2]=a[l+2];a[n+3]=a[l+3];g=e+3|0;e=((g<<4)+i|0)>>2;a[k]=a[e];a[k+1]=a[e+1];a[k+2]=a[e+2];a[k+3]=a[e+3];xk(A,s);e=g}2596==t?(a[(B+4|0)>>2]=G-c|0,h=v):2597==t&&(a[(B+4|0)>>2]=G-c|0,h=v)}function QH(b,c,i,g,d,f,e){var k,n,j=h;h+=8;n=j>>2;var p=j+4;k=p>>2;for(var s=b;;){var v=a[s+128>>2];if(0==(v|0)){break}else{s=v}}v=0==m[e+8|0]<<24>>24?J[a[e>>2]](s)&255:0;tk(s,j,p);p=e+4|0;0!=J[a[p>>2]](c)<<24>>24&&(a[k]=0);0!=J[a[p>>2]](a[b+16>>2])<<24>>24&&(a[n]=0);0!=(v|0)&&(b=a[n],a[n]=a[k],a[k]=b);0!=m[e+9|0]<<24>>24?(k=a[k],n=a[n],0!=(k|n|0)&&LC(s,i,a[g>>2],a[d>>2],f,n,k)):(n=a[n],0!=(n|0)&&(a[g>>2]=In(s,i,a[g>>2],a[d>>2],f,n)),k=a[k],0!=(k|0)&&(a[d>>2]=Hn(s,i,a[g>>2],a[d>>2],f,k)));h=j}function bd(c,d){var i,g,q=h;i=d>>2;d=h;h+=32;a[d>>2]=a[i];a[d+4>>2]=a[i+1];a[d+8>>2]=a[i+2];a[d+12>>2]=a[i+3];a[d+16>>2]=a[i+4];a[d+20>>2]=a[i+5];a[d+24>>2]=a[i+6];a[d+28>>2]=a[i+7];i=d|0;g=d+16|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])){if(i=d+8|0,g=d+24|0,(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])){i=c+80|0,g=a[i>>2],a[i>>2]=g+1|0,g=((g<<5)+a[c+84>>2]|0)>>2,i=d>>2,a[g]=a[i],a[g+1]=a[i+1],a[g+2]=a[i+2],a[g+3]=a[i+3],a[g+4]=a[i+4],a[g+5]=a[i+5],a[g+6]=a[i+6],a[g+7]=a[i+7]}}h=q}function RH(c,d,i,g,q){var e=c|0;f[0]=d+g;a[e>>2]=b[0];a[e+4>>2]=b[1];c=c+8|0;f[0]=i+q;a[c>>2]=b[0];a[c+4>>2]=b[1]}function vl(c,d,i,g,q){var e,l,k,n,j,p,s,v,t,u,w,A,B,C=g>>2,P=h;h+=56;var y,D=P+40,F=d+16|0,M=a[F>>2];B=M>>2;var X=d+28|0;if(0!=m[d+59|0]<<24>>24){wH(P,M,a[d+12>>2],X);for(var O=P>>2,E=X>>2,Da=O+10;O>2]+16>>2];A=(M+32|0)>>2;var I=(b[0]=a[A],b[1]=a[A+1],f[0]);w=(M+40|0)>>2;var H=(b[0]=a[w],b[1]=a[w+1],f[0]),K=X|0,L=d+36|0;RH(D,I,H,(b[0]=a[K>>2],b[1]=a[K+4>>2],f[0]),(b[0]=a[L>>2],b[1]=a[L+4>>2],f[0]));u=c>>2;t=D>>2;a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];if(0==q<<24>>24){if(0==m[d+57|0]<<24>>24){m[c+29|0]=0}else{var N=d+44|0,R=(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]),S=c+16|0;f[0]=R;a[S>>2]=b[0];a[S+4>>2]=b[1];m[c+29|0]=1}}else{var ca=Bu(a[F>>2]),Q=c+16|0;f[0]=ca;a[Q>>2]=b[0];a[Q+4>>2]=b[1];m[c+29|0]=1}a[c+80>>2]=0;a[c+88>>2]=d|0;v=(g+32|0)>>2;a[v]=a[u];a[v+1]=a[u+1];a[v+2]=a[u+2];a[v+3]=a[u+3];var U=1==(i|0);do{if(U){if(0!=m[M+162|0]<<24>>24){var zb=1}else{var ja=m[d+61|0],aa=ja&255;if(0==ja<<24>>24){y=2673}else{var da=g|0,ea=(b[0]=a[da>>2],b[1]=a[da+4>>2],f[0]),xa=g+8|0,W=(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]),V=g+16|0,ha=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]),ga=g+24|0,Y=(b[0]=a[ga>>2],b[1]=a[ga+4>>2],f[0]);if(0==(aa&4|0)){if(0!=(aa&1|0)){a[C+12]=1;s=(c+8|0)>>2;var Rb=(b[0]=a[s],b[1]=a[s+1],f[0]),Z=Y>Rb?Y:Rb,tb=g+56|0;f[0]=ea;a[tb>>2]=b[0];a[tb+4>>2]=b[1];var ya=g+64|0;f[0]=W;a[ya>>2]=b[0];a[ya+4>>2]=b[1];var $=g+72|0;f[0]=ha;a[$>>2]=b[0];a[$+4>>2]=b[1];var wa=g+80|0;f[0]=Z;a[wa>>2]=b[0];a[wa+4>>2]=b[1];a[C+13]=1;var la=(b[0]=a[s],b[1]=a[s+1],f[0])-1;f[0]=la;a[s]=b[0];a[s+1]=b[1]}else{var Fa=g+48|0;if(0==(aa&8|0)){a[Fa>>2]=2;p=(c|0)>>2;var Ga=(b[0]=a[p],b[1]=a[p+1],f[0]),fa=(b[0]=a[w],b[1]=a[w+1],f[0]),ta=M+96|0,Ka=(b[0]=a[ta>>2],b[1]=a[ta+4>>2],f[0]),za=fa-((((0>Ka?Ka-.5:Ka+.5)&-1)+1|0)/2&-1|0),ma=c+8|0,pa=(b[0]=a[ma>>2],b[1]=a[ma+4>>2],f[0]),ba=g+56|0;f[0]=Ga;a[ba>>2]=b[0];a[ba+4>>2]=b[1];var Ha=g+64|0;f[0]=za;a[Ha>>2]=b[0];a[Ha+4>>2]=b[1];var Ra=g+72|0;f[0]=ha;a[Ra>>2]=b[0];a[Ra+4>>2]=b[1];var ka=g+80|0;f[0]=pa;a[ka>>2]=b[0];a[ka+4>>2]=b[1];a[C+13]=1;var ra=(b[0]=a[p],b[1]=a[p+1],f[0])+1;f[0]=ra;a[p]=b[0];a[p+1]=b[1]}else{a[Fa>>2]=8;j=(c|0)>>2;var La=(b[0]=a[j],b[1]=a[j+1],f[0]),qa=(b[0]=a[w],b[1]=a[w+1],f[0]),Ya=M+96|0,na=(b[0]=a[Ya>>2],b[1]=a[Ya+4>>2],f[0]),Za=qa-((((0>na?na-.5:na+.5)&-1)+1|0)/2&-1|0),oa=c+8|0,ab=(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0]),$a=g+56|0;f[0]=ea;a[$a>>2]=b[0];a[$a+4>>2]=b[1];var jb=g+64|0;f[0]=Za;a[jb>>2]=b[0];a[jb+4>>2]=b[1];var Ca=g+72|0;f[0]=La;a[Ca>>2]=b[0];a[Ca+4>>2]=b[1];var Ia=g+80|0;f[0]=ab;a[Ia>>2]=b[0];a[Ia+4>>2]=b[1];a[C+13]=1;var eb=(b[0]=a[j],b[1]=a[j+1],f[0])-1;f[0]=eb;a[j]=b[0];a[j+1]=b[1]}}}else{a[C+12]=4;var ub=c|0,Sa=(b[0]=a[ub>>2],b[1]=a[ub+4>>2],f[0]),Ba=(b[0]=a[A],b[1]=a[A+1],f[0]);if(Sa>2],b[1]=a[Oa+4>>2],f[0]),pb=(b[0]=a[w],b[1]=a[w+1],f[0]),ob=M+96|0,bb=(b[0]=a[ob>>2],b[1]=a[ob+4>>2],f[0]),qb=0>bb,va=pb+((((qb?bb-.5:bb+.5)&-1)+1|0)/2&-1|0)+((a[a[B+5]+260>>2]|0)/2&-1|0),kb=M+104|0,Aa=Ba-(b[0]=a[kb>>2],b[1]=a[kb+4>>2],f[0]),vb=pb-((((qb?bb-.5:bb+.5)&-1)+1|0)/2&-1|0),xb=g+56|0;f[0]=ua;a[xb>>2]=b[0];a[xb+4>>2]=b[1];var hd=g+64|0;f[0]=Wa;a[hd>>2]=b[0];a[hd+4>>2]=b[1];var nb=g+72|0;f[0]=ha;a[nb>>2]=b[0];a[nb+4>>2]=b[1];var rb=g+80|0;f[0]=va;a[rb>>2]=b[0];a[rb+4>>2]=b[1];var lb=g+88|0;f[0]=ua;a[lb>>2]=b[0];a[lb+4>>2]=b[1];var Ta=g+96|0;f[0]=vb;a[Ta>>2]=b[0];a[Ta+4>>2]=b[1];var cb=g+104|0;f[0]=Aa;a[cb>>2]=b[0];a[cb+4>>2]=b[1];var fb=g+112|0;f[0]=Wa;a[fb>>2]=b[0];a[fb+4>>2]=b[1]}else{var Ua=c+8|0,sb=(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0]),Na=ha+1,Fb=(b[0]=a[w],b[1]=a[w+1],f[0]),Db=M+96|0,Ob=(b[0]=a[Db>>2],b[1]=a[Db+4>>2],f[0]),Eb=0>Ob,Ea=Fb+((((Eb?Ob-.5:Ob+.5)&-1)+1|0)/2&-1|0)+((a[a[B+5]+260>>2]|0)/2&-1|0),Bb=M+112|0,Ja=Ba+(b[0]=a[Bb>>2],b[1]=a[Bb+4>>2],f[0]),Ma=Fb-((((Eb?Ob-.5:Ob+.5)&-1)+1|0)/2&-1|0),Qa=g+56|0;f[0]=ea;a[Qa>>2]=b[0];a[Qa+4>>2]=b[1];var wb=g+64|0;f[0]=sb;a[wb>>2]=b[0];a[wb+4>>2]=b[1];var Cb=g+72|0;f[0]=Na;a[Cb>>2]=b[0];a[Cb+4>>2]=b[1];var Va=g+80|0;f[0]=Ea;a[Va>>2]=b[0];a[Va+4>>2]=b[1];var Pa=g+88|0;f[0]=Ja;a[Pa>>2]=b[0];a[Pa+4>>2]=b[1];var ic=g+96|0;f[0]=Ma;a[ic>>2]=b[0];a[ic+4>>2]=b[1];var hb=g+104|0;f[0]=Na;a[hb>>2]=b[0];a[hb+4>>2]=b[1];var ib=g+112|0;f[0]=sb;a[ib>>2]=b[0];a[ib+4>>2]=b[1]}n=(c+8|0)>>2;var yb=(b[0]=a[n],b[1]=a[n+1],f[0])+1;f[0]=yb;a[n]=b[0];a[n+1]=b[1];a[C+13]=2}var Gb=0==m[d+124|0]<<24>>24;a:do{if(Gb){var db=d}else{for(var pc=d;;){var Wc=a[pc+128>>2];if(0==m[Wc+124|0]<<24>>24){db=Wc;break a}else{pc=Wc}}}}while(0);(M|0)==(a[db+16>>2]|0)?m[db+58|0]=0:m[db+98|0]=0;h=P;return}}}else{y=2673}}while(0);do{if(2673==y){do{if(2==(i|0)){var Vb=m[d+61|0],Ib=Vb&255;if(0!=Vb<<24>>24){var Nb=g|0,mb=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0]),Jb=g+8|0,Hb=(b[0]=a[Jb>>2],b[1]=a[Jb+4>>2],f[0]),Lb=g+16|0,lc=(b[0]=a[Lb>>2],b[1]=a[Lb+4>>2],f[0]),Kb=g+24|0,Jd=(b[0]=a[Kb>>2],b[1]=a[Kb+4>>2],f[0]);if(0==(Ib&4|0)){if(0!=(Ib&1|0)){if(4!=(a[C+12]|0)){var Pb=c+8|0,Hc=(b[0]=a[Pb>>2],b[1]=a[Pb+4>>2],f[0]),Wb=Jd>Hc?Jd:Hc,oe=g+56|0;f[0]=mb;a[oe>>2]=b[0];a[oe+4>>2]=b[1];var Tb=g+64|0;f[0]=Hb;a[Tb>>2]=b[0];a[Tb+4>>2]=b[1];var Qb=g+72|0;f[0]=lc;a[Qb>>2]=b[0];a[Qb+4>>2]=b[1];var tc=g+80|0;f[0]=Wb;a[tc>>2]=b[0];a[tc+4>>2]=b[1];a[C+13]=1}else{var Sc=(b[0]=a[w],b[1]=a[w+1],f[0]),Yb=M+96|0,Mb=(b[0]=a[Yb>>2],b[1]=a[Yb+4>>2],f[0]),$b=0>Mb,rd=Sc-(((($b?Mb-.5:Mb+.5)&-1)+1|0)/2&-1|0),oc=lc+1,Zb=c|0,qc=(b[0]=a[Zb>>2],b[1]=a[Zb+4>>2],f[0]),ve=rd-((a[a[B+5]+260>>2]|0)/2&-1|0),Rd=M+112|0,Bc=(b[0]=a[A],b[1]=a[A+1],f[0])+(b[0]=a[Rd>>2],b[1]=a[Rd+4>>2],f[0]),Sd=Sc+(((($b?Mb-.5:Mb+.5)&-1)+1|0)/2&-1|0),fd=g+56|0;f[0]=qc;a[fd>>2]=b[0];a[fd+4>>2]=b[1];var Sb=g+64|0;f[0]=ve;a[Sb>>2]=b[0];a[Sb+4>>2]=b[1];var yc=g+72|0;f[0]=oc;a[yc>>2]=b[0];a[yc+4>>2]=b[1];var uc=g+80|0;f[0]=rd;a[uc>>2]=b[0];a[uc+4>>2]=b[1];var nc=g+88|0;f[0]=Bc;a[nc>>2]=b[0];a[nc+4>>2]=b[1];var Tc=g+96|0;f[0]=rd;a[Tc>>2]=b[0];a[Tc+4>>2]=b[1];var kc=g+104|0;f[0]=oc;a[kc>>2]=b[0];a[kc+4>>2]=b[1];var Mc=g+112|0;f[0]=Sd;a[Mc>>2]=b[0];a[Mc+4>>2]=b[1];a[C+13]=2}}else{var id=c|0,ec=(b[0]=a[id>>2],b[1]=a[id+4>>2],f[0]);if(0==(Ib&8|0)){var mc=4==(a[C+12]|0),fc=(b[0]=a[w],b[1]=a[w+1],f[0]),bc=M+96|0,ac=(b[0]=a[bc>>2],b[1]=a[bc+4>>2],f[0]),rc=0<=ac;if(mc){var jc=c+8|0,Ac=fc+((((rc?ac+.5:ac-.5)&-1)+1|0)/2&-1|0),Td=(b[0]=a[jc>>2],b[1]=a[jc+4>>2],f[0])}else{var gc=rc?ac+.5:ac-.5,dc=c+8|0,Ac=(b[0]=a[dc>>2],b[1]=a[dc+4>>2],f[0])+1,Td=fc-(((gc&-1)+1|0)/2&-1|0)}var fe=g+56|0;f[0]=ec;a[fe>>2]=b[0];a[fe+4>>2]=b[1];var Xb=g+64|0;f[0]=Td;a[Xb>>2]=b[0];a[Xb+4>>2]=b[1];var Cc=g+72|0;f[0]=lc;a[Cc>>2]=b[0];a[Cc+4>>2]=b[1];var jd=g+80|0;f[0]=Ac;a[jd>>2]=b[0];a[jd+4>>2]=b[1]}else{var md=ec+1,je=4==(a[C+12]|0),Qe=(b[0]=a[w],b[1]=a[w+1],f[0]),Ic=M+96|0,Uc=(b[0]=a[Ic>>2],b[1]=a[Ic+4>>2],f[0]),vc=0<=Uc;if(je){var Dc=c+8|0,Ec=Qe+((((vc?Uc+.5:Uc-.5)&-1)+1|0)/2&-1|0),Gc=(b[0]=a[Dc>>2],b[1]=a[Dc+4>>2],f[0])-1}else{var Kc=vc?Uc+.5:Uc-.5,kd=c+8|0,Ec=(b[0]=a[kd>>2],b[1]=a[kd+4>>2],f[0])+1,Gc=Qe-(((Kc&-1)+1|0)/2&-1|0)}var Nc=g+56|0;f[0]=mb;a[Nc>>2]=b[0];a[Nc+4>>2]=b[1];var zc=g+64|0;f[0]=Gc;a[zc>>2]=b[0];a[zc+4>>2]=b[1];var Fc=g+72|0;f[0]=md;a[Fc>>2]=b[0];a[Fc+4>>2]=b[1];var Qc=g+80|0;f[0]=Ec;a[Qc>>2]=b[0];a[Qc+4>>2]=b[1]}a[C+13]=1}}else{var Yc=c+8|0,nd=(b[0]=a[Yc>>2],b[1]=a[Yc+4>>2],f[0]),zd=Hb>2]=b[0];a[cf+4>>2]=b[1];var Zc=g+64|0;f[0]=zd;a[Zc>>2]=b[0];a[Zc+4>>2]=b[1];var Rc=g+72|0;f[0]=lc;a[Rc>>2]=b[0];a[Rc+4>>2]=b[1];var Lc=g+80|0;f[0]=Jd;a[Lc>>2]=b[0];a[Lc+4>>2]=b[1];a[C+13]=1}var $c=0==m[d+124|0]<<24>>24;a:do{if($c){var pe=d}else{for(var Oc=d;;){var Kd=a[Oc+128>>2];if(0==m[Kd+124|0]<<24>>24){pe=Kd;break a}else{Oc=Kd}}}}while(0);(M|0)==(a[pe+16>>2]|0)?m[pe+58|0]=0:m[pe+98|0]=0;a[C+12]=Ib;h=P;return}}}while(0);zb=U?1:a[C+12]}}while(0);var Dd=g+56|0,Pc=g+52|0;if(0!=(G|0)){var Jc=J[G](M,X,zb,Dd,Pc);if(0!=(Jc|0)){a[C+12]=Jc;h=P;return}}k=Dd>>2;l=g>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];a[k+4]=a[l+4];a[k+5]=a[l+5];a[k+6]=a[l+6];a[k+7]=a[l+7];a[Pc>>2]=1;if(2==(i|0)){var ld=4==(a[C+12]|0),Ad=c+8|0,Ud=(b[0]=a[Ad>>2],b[1]=a[Ad+4>>2],f[0]);if(ld){var Vd=g+64|0;f[0]=Ud;a[Vd>>2]=b[0];a[Vd+4>>2]=b[1]}else{var ad=g+80|0;f[0]=Ud;a[ad>>2]=b[0];a[ad+4>>2]=b[1]}}else{if(1==(i|0)){e=(c+8|0)>>2;var bd=(b[0]=a[e],b[1]=a[e+1],f[0]),gd=g+80|0;f[0]=bd;a[gd>>2]=b[0];a[gd+4>>2]=b[1];a[C+12]=1;var ud=(b[0]=a[e],b[1]=a[e+1],f[0])-1;f[0]=ud;a[e]=b[0];a[e+1]=b[1]}else{if(8==(i|0)){sa(wl|0,565,SH|0,vd|0);var Xc=c+8|0,Vc=(b[0]=a[Xc>>2],b[1]=a[Xc+4>>2],f[0])-1,cd=g+80|0;f[0]=Vc;a[cd>>2]=b[0];a[cd+4>>2]=b[1];a[C+12]=1}}}h=P}function Bu(c){var d,i=a[c+176>>2],g=a[i>>2];if(0==(g|0)){var q=0,e=0}else{for(var e=q=0,l=g;;){var k=a[l+16>>2]+32|0,k=e+(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),h=q+1|0,l=a[i+(h<<2)>>2];if(0==(l|0)){break}else{q=h,e=k}}q=h|0;e=k}var i=c+184|0,k=a[i>>2],j=a[k>>2];if(0==(j|0)){var p=0,k=0}else{for(l=h=0;!(d=a[j+12>>2]+32|0,d=l+(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),p=h+1|0,j=a[k+(p<<2)>>2],0==(j|0));){h=p,l=d}p|=0;k=d}d=(c+32|0)>>2;q=(b[0]=a[d],b[1]=a[d+1],f[0])-e/q;c=(c+40|0)>>2;g=a[g+16>>2]+40|0;g=Cf((b[0]=a[c],b[1]=a[c+1],f[0])-(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),q);d=k/p-(b[0]=a[d],b[1]=a[d+1],f[0]);i=a[a[a[i>>2]>>2]+12>>2]+40|0;return.5*(g+Cf((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])-(b[0]=a[c],b[1]=a[c+1],f[0]),d))}function HQa(c){var d,i=a[c+108>>2];0==m[c+56|0]<<24>>24?0!=m[c+96|0]<<24>>24&&(d=2744):d=2744;if(2744==d){d=m[c+61|0];var g=d&255;if(0!=(g&8|0)){return 0}var q=m[c+101|0];if(0!=(q&8)<<24>>24||d<<24>>24==q<<24>>24&&0!=(g&5|0)){return 0}}if(0==(i|0)){return 18}c=0==(a[a[a[c+12>>2]+20>>2]+152>>2]&1|0)?i+24|0:i+32|0;return c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])+18&-1}function xl(c,d,i,g,q){var e,l,k,n,j,p,s,v,t,u,w,A,B,C=g>>2,P=h;h+=56;var y,D=P+40,F=d+12|0,M=a[F>>2];B=M>>2;var X=d+68|0;if(0!=m[d+99|0]<<24>>24){wH(P,M,a[d+16>>2],X);for(var O=P>>2,E=X>>2,Da=O+10;O>2]+16>>2],I=c+40|0;A=(M+32|0)>>2;var H=(b[0]=a[A],b[1]=a[A+1],f[0]);w=(M+40|0)>>2;var K=(b[0]=a[w],b[1]=a[w+1],f[0]),L=X|0,N=d+76|0;RH(D,H,K,(b[0]=a[L>>2],b[1]=a[L+4>>2],f[0]),(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]));u=I>>2;t=D>>2;a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];if(0==q<<24>>24){if(0==m[d+97|0]<<24>>24){m[c+69|0]=0}else{var R=d+84|0,S=(b[0]=a[R>>2],b[1]=a[R+4>>2],f[0]),ca=c+56|0;f[0]=S;a[ca>>2]=b[0];a[ca+4>>2]=b[1];m[c+69|0]=1}}else{var Q=Bu(a[F>>2])+3.141592653589793,U=c+56|0;f[0]=Q;a[U>>2]=b[0];a[U+4>>2]=b[1];6.283185307179586>Q||sa(wl|0,602,Cu|0,TH|0);m[c+69|0]=1}v=(g+32|0)>>2;a[v]=a[u];a[v+1]=a[u+1];a[v+2]=a[u+2];a[v+3]=a[u+3];var zb=1==(i|0);do{if(zb){if(0!=m[M+162|0]<<24>>24){var ja=4}else{var aa=m[d+101|0],da=aa&255;if(0==aa<<24>>24){y=2804}else{var ea=g|0,xa=(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0]),W=g+8|0,V=(b[0]=a[W>>2],b[1]=a[W+4>>2],f[0]),ha=g+16|0,ga=(b[0]=a[ha>>2],b[1]=a[ha+4>>2],f[0]);if(0==(da&4|0)){if(0==(da&1|0)){var Y=g+48|0;if(0==(da&8|0)){a[Y>>2]=2;s=(I|0)>>2;var Rb=(b[0]=a[s],b[1]=a[s+1],f[0]),$=(b[0]=a[w],b[1]=a[w+1],f[0]),tb=M+96|0,ya=(b[0]=a[tb>>2],b[1]=a[tb+4>>2],f[0]),Z=$+((((0>ya?ya-.5:ya+.5)&-1)+1|0)/2&-1|0),wa=c+48|0,la=(b[0]=a[wa>>2],b[1]=a[wa+4>>2],f[0]),Fa=g+56|0;f[0]=Rb;a[Fa>>2]=b[0];a[Fa+4>>2]=b[1];var Ga=g+64|0;f[0]=la;a[Ga>>2]=b[0];a[Ga+4>>2]=b[1];var fa=g+72|0;f[0]=ga;a[fa>>2]=b[0];a[fa+4>>2]=b[1];var ta=g+80|0;f[0]=Z;a[ta>>2]=b[0];a[ta+4>>2]=b[1];a[C+13]=1;var Ka=(b[0]=a[s],b[1]=a[s+1],f[0])+1;f[0]=Ka;a[s]=b[0];a[s+1]=b[1]}else{a[Y>>2]=8;p=(I|0)>>2;var za=(b[0]=a[p],b[1]=a[p+1],f[0]),ma=(b[0]=a[w],b[1]=a[w+1],f[0]),pa=M+96|0,ba=(b[0]=a[pa>>2],b[1]=a[pa+4>>2],f[0]),Ha=ma+((((0>ba?ba-.5:ba+.5)&-1)+1|0)/2&-1|0),Ra=c+48|0,ka=(b[0]=a[Ra>>2],b[1]=a[Ra+4>>2],f[0]),ra=g+56|0;f[0]=xa;a[ra>>2]=b[0];a[ra+4>>2]=b[1];var La=g+64|0;f[0]=ka;a[La>>2]=b[0];a[La+4>>2]=b[1];var qa=g+72|0;f[0]=za;a[qa>>2]=b[0];a[qa+4>>2]=b[1];var Ya=g+80|0;f[0]=Ha;a[Ya>>2]=b[0];a[Ya+4>>2]=b[1];a[C+13]=1;var na=(b[0]=a[p],b[1]=a[p+1],f[0])-1;f[0]=na;a[p]=b[0];a[p+1]=b[1]}}else{a[C+12]=1;var Za=I|0,oa=(b[0]=a[Za>>2],b[1]=a[Za+4>>2],f[0]),ab=(b[0]=a[A],b[1]=a[A+1],f[0]);if(oa>2],b[1]=a[jb+4>>2],f[0]),Ia=(b[0]=a[w],b[1]=a[w+1],f[0]),eb=M+96|0,ub=(b[0]=a[eb>>2],b[1]=a[eb+4>>2],f[0]),Sa=0>ub,Ba=Ia-((((Sa?ub-.5:ub+.5)&-1)+1|0)/2&-1|0)-((a[a[B+5]+260>>2]|0)/2&-1|0),ua=M+104|0,Oa=ab-(b[0]=a[ua>>2],b[1]=a[ua+4>>2],f[0]),Wa=Ia+((((Sa?ub-.5:ub+.5)&-1)+1|0)/2&-1|0),pb=g+56|0;f[0]=$a;a[pb>>2]=b[0];a[pb+4>>2]=b[1];var ob=g+64|0;f[0]=Ba;a[ob>>2]=b[0];a[ob+4>>2]=b[1];var bb=g+72|0;f[0]=ga;a[bb>>2]=b[0];a[bb+4>>2]=b[1];var qb=g+80|0;f[0]=Ca;a[qb>>2]=b[0];a[qb+4>>2]=b[1];var va=g+88|0;f[0]=$a;a[va>>2]=b[0];a[va+4>>2]=b[1];var kb=g+96|0;f[0]=Ca;a[kb>>2]=b[0];a[kb+4>>2]=b[1];var Aa=g+104|0;f[0]=Oa;a[Aa>>2]=b[0];a[Aa+4>>2]=b[1];var vb=g+112|0;f[0]=Wa;a[vb>>2]=b[0];a[vb+4>>2]=b[1]}else{var xb=c+48|0,hd=(b[0]=a[xb>>2],b[1]=a[xb+4>>2],f[0]),nb=ga+1,rb=(b[0]=a[w],b[1]=a[w+1],f[0]),lb=M+96|0,Ta=(b[0]=a[lb>>2],b[1]=a[lb+4>>2],f[0]),cb=0>Ta,fb=rb-((((cb?Ta-.5:Ta+.5)&-1)+1|0)/2&-1|0)-((a[a[B+5]+260>>2]|0)/2&-1|0),Ua=M+112|0,sb=ab+(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0]),Na=rb+((((cb?Ta-.5:Ta+.5)&-1)+1|0)/2&-1|0),Fb=g+56|0;f[0]=xa;a[Fb>>2]=b[0];a[Fb+4>>2]=b[1];var Db=g+64|0;f[0]=fb;a[Db>>2]=b[0];a[Db+4>>2]=b[1];var Ob=g+72|0;f[0]=nb;a[Ob>>2]=b[0];a[Ob+4>>2]=b[1];var Eb=g+80|0;f[0]=hd;a[Eb>>2]=b[0];a[Eb+4>>2]=b[1];var Ea=g+88|0;f[0]=sb;a[Ea>>2]=b[0];a[Ea+4>>2]=b[1];var Bb=g+96|0;f[0]=hd;a[Bb>>2]=b[0];a[Bb+4>>2]=b[1];var Ja=g+104|0;f[0]=nb;a[Ja>>2]=b[0];a[Ja+4>>2]=b[1];var Ma=g+112|0;f[0]=Na;a[Ma>>2]=b[0];a[Ma+4>>2]=b[1]}a[C+13]=2;j=(c+48|0)>>2;var Qa=(b[0]=a[j],b[1]=a[j+1],f[0])-1;f[0]=Qa;a[j]=b[0];a[j+1]=b[1]}}else{var wb=g+24|0,Cb=(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0]);a[C+12]=4;n=(c+48|0)>>2;var Va=(b[0]=a[n],b[1]=a[n+1],f[0]),Pa=V>2]=b[0];a[ic+4>>2]=b[1];var hb=g+64|0;f[0]=Pa;a[hb>>2]=b[0];a[hb+4>>2]=b[1];var ib=g+72|0;f[0]=ga;a[ib>>2]=b[0];a[ib+4>>2]=b[1];var db=g+80|0;f[0]=Cb;a[db>>2]=b[0];a[db+4>>2]=b[1];a[C+13]=1;var yb=(b[0]=a[n],b[1]=a[n+1],f[0])+1;f[0]=yb;a[n]=b[0];a[n+1]=b[1]}var Gb=0==m[d+124|0]<<24>>24;a:do{if(Gb){var pc=d}else{for(var Ib=d;;){var Vb=a[Ib+128>>2];if(0==m[Vb+124|0]<<24>>24){pc=Vb;break a}else{Ib=Vb}}}}while(0);(M|0)==(a[pc+12>>2]|0)?m[pc+98|0]=0:m[pc+58|0]=0;a[C+12]=da;h=P;return}}}else{y=2804}}while(0);do{if(2804==y){do{if(2==(i|0)){var Nb=m[d+101|0],mb=Nb&255;if(0!=Nb<<24>>24){var Hb=g|0,Jb=(b[0]=a[Hb>>2],b[1]=a[Hb+4>>2],f[0]),Lb=g+8|0,Kb=(b[0]=a[Lb>>2],b[1]=a[Lb+4>>2],f[0]),lc=g+16|0,Mb=(b[0]=a[lc>>2],b[1]=a[lc+4>>2],f[0]),Jd=g+24|0,Pb=(b[0]=a[Jd>>2],b[1]=a[Jd+4>>2],f[0]);if(0==(mb&4|0)){if(0!=(mb&1|0)){if(4!=(a[C+12]|0)){var Hc=c+8|0,Tb=(b[0]=a[Hc>>2],b[1]=a[Hc+4>>2],f[0]),Yb=Pb>Tb?Pb:Tb,Wb=g+56|0;f[0]=Jb;a[Wb>>2]=b[0];a[Wb+4>>2]=b[1];var Qb=g+64|0;f[0]=Kb;a[Qb>>2]=b[0];a[Qb+4>>2]=b[1];var tc=g+72|0;f[0]=Mb;a[tc>>2]=b[0];a[tc+4>>2]=b[1];var Sc=g+80|0;f[0]=Yb;a[Sc>>2]=b[0];a[Sc+4>>2]=b[1];a[C+13]=1}else{var $b=Jb-1,Zb=(b[0]=a[w],b[1]=a[w+1],f[0]),qc=M+96|0,rd=(b[0]=a[qc>>2],b[1]=a[qc+4>>2],f[0]),oc=0>rd,Sb=Zb-((((oc?rd-.5:rd+.5)&-1)+1|0)/2&-1|0),uc=I|0,ac=(b[0]=a[uc>>2],b[1]=a[uc+4>>2],f[0]),nc=Sb-((a[a[B+5]+260>>2]|0)/2&-1|0),Bc=M+104|0,Sd=(b[0]=a[A],b[1]=a[A+1],f[0])-(b[0]=a[Bc>>2],b[1]=a[Bc+4>>2],f[0])-2,fd=Zb+((((oc?rd-.5:rd+.5)&-1)+1|0)/2&-1|0),kc=g+56|0;f[0]=$b;a[kc>>2]=b[0];a[kc+4>>2]=b[1];var yc=g+64|0;f[0]=nc;a[yc>>2]=b[0];a[yc+4>>2]=b[1];var ec=g+72|0;f[0]=ac;a[ec>>2]=b[0];a[ec+4>>2]=b[1];var fc=g+80|0;f[0]=Sb;a[fc>>2]=b[0];a[fc+4>>2]=b[1];var Tc=g+88|0;f[0]=$b;a[Tc>>2]=b[0];a[Tc+4>>2]=b[1];var mc=g+96|0;f[0]=Sb;a[mc>>2]=b[0];a[mc+4>>2]=b[1];var Mc=g+104|0;f[0]=Sd;a[Mc>>2]=b[0];a[Mc+4>>2]=b[1];var id=g+112|0;f[0]=fd;a[id>>2]=b[0];a[id+4>>2]=b[1];a[C+13]=2}}else{var bc=I|0,rc=(b[0]=a[bc>>2],b[1]=a[bc+4>>2],f[0]);if(0==(mb&8|0)){var jc=rc-1,Ac=4==(a[C+12]|0),dc=(b[0]=a[w],b[1]=a[w+1],f[0]),gc=M+96|0,Xb=(b[0]=a[gc>>2],b[1]=a[gc+4>>2],f[0]),Cc=0<=Xb;if(Ac){var Td=c+48|0,Ic=dc+((((Cc?Xb+.5:Xb-.5)&-1)+1|0)/2&-1|0),vc=(b[0]=a[Td>>2],b[1]=a[Td+4>>2],f[0])-1}else{var fe=Cc?Xb+.5:Xb-.5,Dc=c+48|0,Ic=(b[0]=a[Dc>>2],b[1]=a[Dc+4>>2],f[0]),vc=dc-(((fe&-1)+1|0)/2&-1|0)}var Ec=g+56|0;f[0]=jc;a[Ec>>2]=b[0];a[Ec+4>>2]=b[1];var jd=g+64|0;f[0]=vc;a[jd>>2]=b[0];a[jd+4>>2]=b[1];var md=g+72|0;f[0]=Mb;a[md>>2]=b[0];a[md+4>>2]=b[1];var je=g+80|0;f[0]=Ic;a[je>>2]=b[0];a[je+4>>2]=b[1]}else{var Gc=rc+1,Nc=4==(a[C+12]|0),Uc=(b[0]=a[w],b[1]=a[w+1],f[0]),zc=M+96|0,Kc=(b[0]=a[zc>>2],b[1]=a[zc+4>>2],f[0]),Fc=0<=Kc;if(Nc){var Qc=c+48|0,Yc=Uc+((((Fc?Kc+.5:Kc-.5)&-1)+1|0)/2&-1|0),kd=(b[0]=a[Qc>>2],b[1]=a[Qc+4>>2],f[0])-1}else{var Zc=Fc?Kc+.5:Kc-.5,Rc=c+48|0,Yc=(b[0]=a[Rc>>2],b[1]=a[Rc+4>>2],f[0])+1,kd=Uc-(((Zc&-1)+1|0)/2&-1|0)}var Lc=g+56|0;f[0]=Jb;a[Lc>>2]=b[0];a[Lc+4>>2]=b[1];var Oc=g+64|0;f[0]=kd;a[Oc>>2]=b[0];a[Oc+4>>2]=b[1];var Pc=g+72|0;f[0]=Gc;a[Pc>>2]=b[0];a[Pc+4>>2]=b[1];var nd=g+80|0;f[0]=Yc;a[nd>>2]=b[0];a[nd+4>>2]=b[1]}a[C+13]=1}}else{var zd=c+48|0,Jc=(b[0]=a[zd>>2],b[1]=a[zd+4>>2],f[0]),$c=Kb>2]=b[0];a[ad+4>>2]=b[1];var Xc=g+64|0;f[0]=$c;a[Xc>>2]=b[0];a[Xc+4>>2]=b[1];var cd=g+72|0;f[0]=Mb;a[cd>>2]=b[0];a[cd+4>>2]=b[1];var ld=g+80|0;f[0]=Pb;a[ld>>2]=b[0];a[ld+4>>2]=b[1];a[C+13]=1}var bd=0==m[d+124|0]<<24>>24;a:do{if(bd){var Kd=d}else{for(var Dd=d;;){var Vc=a[Dd+128>>2];if(0==m[Vc+124|0]<<24>>24){Kd=Vc;break a}else{Dd=Vc}}}}while(0);(M|0)==(a[Kd+12>>2]|0)?m[Kd+98|0]=0:m[Kd+58|0]=0;a[C+12]=mb;h=P;return}}}while(0);ja=zb?4:a[C+12]}}while(0);var ed=g+56|0,qd=g+52|0;if(0!=(G|0)){var Ad=J[G](M,X,ja,ed,qd);if(0!=(Ad|0)){a[C+12]=Ad;h=P;return}}k=ed>>2;l=g>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];a[k+4]=a[l+4];a[k+5]=a[l+5];a[k+6]=a[l+6];a[k+7]=a[l+7];a[qd>>2]=1;if(1==(i|0)){e=(c+48|0)>>2;var Ud=(b[0]=a[e],b[1]=a[e+1],f[0]),Vd=g+64|0;f[0]=Ud;a[Vd>>2]=b[0];a[Vd+4>>2]=b[1];a[C+12]=4;var yd=(b[0]=a[e],b[1]=a[e+1],f[0])+1;f[0]=yd;a[e]=b[0];a[e+1]=b[1]}else{if(8==(i|0)){sa(wl|0,757,Cu|0,vd|0);var pd=c+48|0,gd=(b[0]=a[pd>>2],b[1]=a[pd+4>>2],f[0])+1,ud=g+64|0;f[0]=gd;a[ud>>2]=b[0];a[ud+4>>2]=b[1];a[C+12]=4}else{if(2==(i|0)){var Fd=4==(a[C+12]|0),dd=c+48|0,od=(b[0]=a[dd>>2],b[1]=a[dd+4>>2],f[0]);if(Fd){var sd=g+64|0;f[0]=od;a[sd>>2]=b[0];a[sd+4>>2]=b[1]}else{var Bd=g+80|0;f[0]=od;a[Bd>>2]=b[0];a[Bd+4>>2]=b[1]}}}}h=P}function UH(b,c,i,g,d,f,e){var k,b=a[c+(i<<2)>>2];0==m[b+56|0]<<24>>24?0!=m[b+96|0]<<24>>24&&(k=2867):k=2867;a:do{if(2867==k){k=m[b+61|0];var h=k&255;do{if(0==(h&8|0)){var j=m[b+101|0],p=0==(j&8)<<24>>24;if(p){if(k<<24>>24!=j<<24>>24){break a}if(0==(h&5|0)){break a}if(p){if(0!=(h&4|0)){Du(c,i,g,d,f,e);return}0==(h&1|0)?sa(wl|0,1114,VH|0,vd|0):WH(c,i,g,d,f,e);return}}}}while(0);if(0==(k&2)<<24>>24&&0==(m[b+101|0]&2)<<24>>24){XH(c,i,g,d,f,e);return}Du(c,i,g,d,f,e);return}}while(0);YH(c,i,g,d,f,e)}function YH(c,d,i,g,q,e){var l,k,n,j,p,s,v,t,u,w,A,B,C=h;h+=16080;var P=C+16e3,y=C+16016,D=C+16032,F=C+16048,M=C+16064,X=a[c+(d<<2)>>2];k=a[X+16>>2];var q=.5*q/(i|0),O=2>2;var E=(b[0]=a[B],b[1]=a[B+1],f[0]),q=(k+40|0)>>2,Da=(b[0]=a[q],b[1]=a[q+1],f[0]),ia=X+28|0,G=X+36|0,ia=(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0])+E,G=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0])+Da,J=X+68|0;n=X+76|0;J=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0])+E;Da=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+Da;k=k+112|0;var I=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);k=E+I;var H=3*(k-ia),K=3*(k-J);if(0<(i|0)){var L=(G>2;w=P>>2;u=(C+32|0)>>2;t=y>>2;var ca=.5*(G+Da);v=(C+48|0)>>2;s=D>>2;p=(C+64|0)>>2;j=F>>2;n=(C+80|0)>>2;k=M>>2;var Q=C+96|0,S=C+104|0,U=C|0,i=i+d|0,ja=I,H=I>2]=b[0];a[N+4>>2]=b[1];f[0]=G;a[R>>2]=b[0];a[R+4>>2]=b[1];var aa=G+K;Pc(P,ia+H/3,aa);a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];l=E+ja;Pc(y,l,aa);a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];Pc(D,l,ca);a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];aa=Da-K;Pc(F,l,aa);a[p]=a[j];a[p+1]=a[j+1];a[p+2]=a[j+2];a[p+3]=a[j+3];Pc(M,J+I/3,aa);a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];f[0]=J;a[Q>>2]=b[0];a[Q+4>>2]=b[1];f[0]=Da;a[S>>2]=b[0];a[S+4>>2]=b[1];l=(X+108|0)>>2;var da=a[l];if(0!=(da|0)){var ea=da+24|0;0==(a[a[a[X+16>>2]+20>>2]+152>>2]&1|0)?(aa=da+32|0,ea|=0):(aa=ea|0,ea=da+32|0);var aa=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),ea=(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0]),xa=(b[0]=a[B],b[1]=a[B+1],f[0])+ja+.5*ea,da=da+56|0;f[0]=xa;a[da>>2]=b[0];a[da+4>>2]=b[1];da=(b[0]=a[q],b[1]=a[q+1],f[0]);xa=a[l]+64|0;f[0]=da;a[xa>>2]=b[0];a[xa+4>>2]=b[1];m[a[l]+81|0]=1;ja=ea>g?ja+(ea-g):ja;K=K+O>2],U,7,e);if((d|0)==(i|0)){break}l=d;X=a[c+(d<<2)>>2]}}h=C}function Du(c,d,i,g,q,e){var l,k,n,j,p,s,v,t,u,w,A,B,C=h;h+=16080;var P=C+16e3,y=C+16016,D=C+16032,F=C+16048,M=C+16064,X=a[c+(d<<2)>>2];k=a[X+16>>2];var g=.5*g/(i|0),O=2>2;var E=(b[0]=a[B],b[1]=a[B+1],f[0]),g=(k+40|0)>>2,Da=(b[0]=a[g],b[1]=a[g+1],f[0]),ia=X+28|0,G=X+36|0,ia=(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0])+E,G=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0])+Da;n=X+68|0;var J=X+76|0,E=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+E,J=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0])+Da;k=k+96|0;var I=.5*(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);k=Da+I;var H=3*(k-G),K=3*(k-J);if(0<(i|0)){var L=(ia>2;w=P>>2;u=(C+32|0)>>2;t=y>>2;var ca=.5*(ia+E);v=(C+48|0)>>2;s=D>>2;p=(C+64|0)>>2;j=F>>2;n=(C+80|0)>>2;k=M>>2;var Q=C+96|0,S=C+104|0,U=C|0,i=i+d|0,ja=0,H=I>2]=b[0];a[N+4>>2]=b[1];f[0]=G;a[R>>2]=b[0];a[R+4>>2]=b[1];var aa=ia+ja;Pc(P,aa,G+H/3);a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];l=Da+I;Pc(y,aa,l);a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];Pc(D,ca,l);a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];aa=E-ja;Pc(F,aa,l);a[p]=a[j];a[p+1]=a[j+1];a[p+2]=a[j+2];a[p+3]=a[j+3];Pc(M,aa,J+K/3);a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];f[0]=E;a[Q>>2]=b[0];a[Q+4>>2]=b[1];f[0]=J;a[S>>2]=b[0];a[S+4>>2]=b[1];l=(X+108|0)>>2;var da=a[l];if(0!=(da|0)){var ea=da+24|0;if(0==(a[a[a[X+16>>2]+20>>2]+152>>2]&1|0)){var aa=da+32|0,xa=ea|0}else{aa=ea|0,xa=da+32|0}ea=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]);aa=(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]);xa=(b[0]=a[g],b[1]=a[g+1],f[0])+I+.5*ea;da=da+64|0;f[0]=xa;a[da>>2]=b[0];a[da+4>>2]=b[1];da=(b[0]=a[B],b[1]=a[B+1],f[0]);xa=a[l]+56|0;f[0]=da;a[xa>>2]=b[0];a[xa+4>>2]=b[1];m[a[l]+81|0]=1;I=ea>q?I+(ea-q):I;ja+O>2],U,7,e);if((d|0)==(i|0)){break}l=d;X=a[c+(d<<2)>>2]}}h=C}function XH(c,d,i,g,q,e){var l,k,n,j,p,s,v,t,u,w,A,B,C=h;h+=16080;var P=C+16e3,y=C+16016,D=C+16032,F=C+16048,M=C+16064,X=a[c+(d<<2)>>2];k=a[X+16>>2];var q=.5*q/(i|0),O=2>2;var E=(b[0]=a[B],b[1]=a[B+1],f[0]),q=(k+40|0)>>2,G=(b[0]=a[q],b[1]=a[q+1],f[0]),ia=X+28|0,J=X+36|0,ia=(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0])+E,J=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0])+G,I=X+68|0;n=X+76|0;I=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0])+E;G=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+G;k=k+104|0;var H=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),K=3*(ia+H-E),L=3*(I+H-E);if(0<(i|0)){var N=(J>2;w=P>>2;u=(C+32|0)>>2;t=y>>2;var ca=.5*(J+G);v=(C+48|0)>>2;s=D>>2;p=(C+64|0)>>2;j=F>>2;n=(C+80|0)>>2;k=M>>2;var S=C+96|0,U=C+104|0,zb=C|0,i=i+d|0,ja=H,K=H>2]=b[0];a[R+4>>2]=b[1];f[0]=J;a[Q>>2]=b[0];a[Q+4>>2]=b[1];var aa=J+L;Pc(P,ia-K/3,aa);a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];l=E-ja;Pc(y,l,aa);a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];Pc(D,l,ca);a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];aa=G-L;Pc(F,l,aa);a[p]=a[j];a[p+1]=a[j+1];a[p+2]=a[j+2];a[p+3]=a[j+3];Pc(M,I-H/3,aa);a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];f[0]=I;a[S>>2]=b[0];a[S+4>>2]=b[1];f[0]=G;a[U>>2]=b[0];a[U+4>>2]=b[1];l=(X+108|0)>>2;var da=a[l];if(0!=(da|0)){var ea=da+24|0;0==(a[a[a[X+16>>2]+20>>2]+152>>2]&1|0)?(aa=da+32|0,ea|=0):(aa=ea|0,ea=da+32|0);var aa=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),ea=(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0]),xa=(b[0]=a[B],b[1]=a[B+1],f[0])-ja-.5*ea,da=da+56|0;f[0]=xa;a[da>>2]=b[0];a[da+4>>2]=b[1];da=(b[0]=a[q],b[1]=a[q+1],f[0]);xa=a[l]+64|0;f[0]=da;a[xa>>2]=b[0];a[xa+4>>2]=b[1];m[a[l]+81|0]=1;ja=ea>g?ja+(ea-g):ja;L=L+O>2],zb,7,e);if((d|0)==(i|0)){break}l=d;X=a[c+(d<<2)>>2]}}h=C}function Pc(c,d,i){var g=c|0;f[0]=d;a[g>>2]=b[0];a[g+4>>2]=b[1];c=c+8|0;f[0]=i;a[c>>2]=b[0];a[c+4>>2]=b[1]}function WH(c,d,i,g,q,e){var l,k,n,j,p,s,v,t,u,w,A,B,C=h;h+=16080;var P=C+16e3,y=C+16016,D=C+16032,F=C+16048,M=C+16064,X=a[c+(d<<2)>>2];k=a[X+16>>2];var g=.5*g/(i|0),O=2>2;var E=(b[0]=a[B],b[1]=a[B+1],f[0]),g=(k+40|0)>>2,G=(b[0]=a[g],b[1]=a[g+1],f[0]),ia=X+28|0,J=X+36|0,ia=(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0])+E,J=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0])+G;n=X+68|0;var I=X+76|0,E=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+E,I=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0])+G;k=k+96|0;var H=.5*(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),K=3*(J+H-G),L=3*(I+H-G);if(0<(i|0)){var N=(ia>2;w=P>>2;u=(C+32|0)>>2;t=y>>2;var ca=.5*(ia+E);v=(C+48|0)>>2;s=D>>2;p=(C+64|0)>>2;j=F>>2;n=(C+80|0)>>2;k=M>>2;var S=C+96|0,U=C+104|0,zb=C|0,i=i+d|0,K=H>2]=b[0];a[R+4>>2]=b[1];f[0]=J;a[Q>>2]=b[0];a[Q+4>>2]=b[1];var aa=ia+ja;Pc(P,aa,J-K/3);a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];l=G-H;Pc(y,aa,l);a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];Pc(D,ca,l);a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];aa=E-ja;Pc(F,aa,l);a[p]=a[j];a[p+1]=a[j+1];a[p+2]=a[j+2];a[p+3]=a[j+3];Pc(M,aa,I-L/3);a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];f[0]=E;a[S>>2]=b[0];a[S+4>>2]=b[1];f[0]=I;a[U>>2]=b[0];a[U+4>>2]=b[1];l=(X+108|0)>>2;var da=a[l];if(0!=(da|0)){var ea=da+24|0;if(0==(a[a[a[X+16>>2]+20>>2]+152>>2]&1|0)){var aa=da+32|0,xa=ea|0}else{aa=ea|0,xa=da+32|0}ea=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]);aa=(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]);xa=(b[0]=a[g],b[1]=a[g+1],f[0])-H-.5*ea;da=da+64|0;f[0]=xa;a[da>>2]=b[0];a[da+4>>2]=b[1];da=(b[0]=a[B],b[1]=a[B+1],f[0]);xa=a[l]+56|0;f[0]=da;a[xa>>2]=b[0];a[xa+4>>2]=b[1];m[a[l]+81|0]=1;H=ea>q?H+(ea-q):H;ja+O>2],zb,7,e);if((d|0)==(i|0)){break}l=d;X=a[c+(d<<2)>>2]}}h=C}function Eu(c,d){var i,g,q,e,l,k,n=h;h+=96;var j=n+64,p=n+80;if(6!=m[c+124|0]<<24>>24){k=0==d<<24>>24;var s=a[(k?c+116|0:c+112|0)>>2];i=yl(c)>>2;k?(i=a[i],k=i>>2,0==(a[k+2]|0)?(i=a[k],p=i|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),k=i+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),g=n>>2,l=i>>2,a[g]=a[l],a[g+1]=a[l+1],a[g+2]=a[l+2],a[g+3]=a[l+3],g=(n+16|0)>>2,l=(i+16|0)>>2,a[g]=a[l],a[g+1]=a[l+1],a[g+2]=a[l+2],a[g+3]=a[l+3],g=(n+32|0)>>2,l=(i+32|0)>>2,a[g]=a[l],a[g+1]=a[l+1],a[g+2]=a[l+2],a[g+3]=a[l+3],l=(n+48|0)>>2,i=(i+48|0)>>2,a[l]=a[i],a[l+1]=a[i+1],a[l+2]=a[i+2],a[l+3]=a[i+3],Ld(j,n|0,3,.1,0,0),i=j|0,l=j+8|0,j=k,k=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])):(p=i+16|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),j=i+24|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),i=a[k],k=i|0,i=i+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),l=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]))):(k=a[i+1]-1|0,i=a[i],l=i>>2,j=i+48*k|0,0==(a[l+(12*k|0)+3]|0)?(g=a[l+(12*k|0)+1],i=g-1|0,l=a[j>>2],j=(i<<4)+l|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),k=(i<<4)+l+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=n>>2,q=((g-4<<4)+l|0)>>2,a[e]=a[q],a[e+1]=a[q+1],a[e+2]=a[q+2],a[e+3]=a[q+3],e=(n+16|0)>>2,q=((g-3<<4)+l|0)>>2,a[e]=a[q],a[e+1]=a[q+1],a[e+2]=a[q+2],a[e+3]=a[q+3],q=(n+32|0)>>2,g=((g-2<<4)+l|0)>>2,a[q]=a[g],a[q+1]=a[g+1],a[q+2]=a[g+2],a[q+3]=a[g+3],g=(n+48|0)>>2,i=((i<<4)+l|0)>>2,a[g]=a[i],a[g+1]=a[i+1],a[g+2]=a[i+2],a[g+3]=a[i+3],Ld(p,n|0,3,.9,0,0),i=p|0,l=p+8|0,p=j,j=k,k=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])):(p=i+48*k+32|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),i=i+48*k+40|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),l=a[l+(12*k|0)+1]-1|0,j=a[j>>2],k=(l<<4)+j|0,l=(l<<4)+j+8|0,j=i,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]));i=c|0;k=Cf(l-j,k-p)+3.141592653589793*(Xb(i,a[Fu>>2],-25,-180)/180);i=10*Xb(i,a[Gu>>2],1,0);p+=i*se(k);l=s+56|0;f[0]=p;a[l>>2]=b[0];a[l+4>>2]=b[1];p=j+i*Ce(k);j=s+64|0;f[0]=p;a[j>>2]=b[0];a[j+4>>2]=b[1];m[s+81|0]=1}h=n}function ZH(b){var c=Ba(b);if((c|0)<(a[Hu>>2]|0)){c=a[zl>>2]}else{if(c=c+11|0,a[Hu>>2]=c,c=wb(a[zl>>2],c),a[zl>>2]=c,0==(c|0)){return 0}}var i=m[b];if(0==i<<24>>24){var g=c}else{for(;;){var b=b+1|0,d=i&255,g=c+1|0;m[c]=0==((65<=d&&90>=d)|0)?i:vf(d)&255;i=m[b];if(0==i<<24>>24){break}else{c=g}}c=a[zl>>2]}m[g]=0;return c}function yl(b){for(var c;;){var i=a[b+24>>2];if(0!=(i|0)){c=105;break}if(0==m[b+124|0]<<24>>24){c=104;break}b=a[b+128>>2]}if(104==c){S()}else{if(105==c){return i}}}function Bk(b){a[aj>>2]=b}function Iu(c,d,i,g,q,e,l){l>>=2;e>>=2;q>>=2;g>>=2;f[0]=1-c;a[g]=b[0];a[g+1]=b[1];f[0]=1-d;a[q]=b[0];a[q+1]=b[1];f[0]=1-i;a[e]=b[0];a[e+1]=b[1];c=(b[0]=a[g],b[1]=a[g+1],f[0]);d=(b[0]=a[q],b[1]=a[q+1],f[0]);c=c>=2;q>>=2;g>>=2;if(0c?6*c:0,c=l&-1,k=l-(c|0),l=(1-d)*i,h=(1-k*d)*i,d=(1-(1-k)*d)*i;0==(c|0)?(f[0]=i,a[g]=b[0],a[g+1]=b[1],f[0]=d,a[q]=b[0],a[q+1]=b[1],f[0]=l,a[e]=b[0],a[e+1]=b[1]):1==(c|0)?(f[0]=h,a[g]=b[0],a[g+1]=b[1],f[0]=i,a[q]=b[0],a[q+1]=b[1],f[0]=l,a[e]=b[0],a[e+1]=b[1]):2==(c|0)?(f[0]=l,a[g]=b[0],a[g+1]=b[1],f[0]=i,a[q]=b[0],a[q+1]=b[1],f[0]=d,a[e]=b[0],a[e+1]=b[1]):3==(c|0)?(f[0]=l,a[g]=b[0],a[g+1]=b[1],f[0]=h,a[q]=b[0],a[q+1]=b[1],f[0]=i,a[e]=b[0],a[e+1]=b[1]):5==(c|0)?(f[0]=i,a[g]=b[0],a[g+1]=b[1],f[0]=l,a[q]=b[0],a[q+1]=b[1],f[0]=h,a[e]=b[0],a[e+1]=b[1]):4==(c|0)&&(f[0]=d,a[g]=b[0],a[g+1]=b[1],f[0]=l,a[q]=b[0],a[q+1]=b[1],f[0]=i,a[e]=b[0],a[e+1]=b[1])}else{f[0]=i,a[g]=b[0],a[g+1]=b[1],f[0]=i,a[q]=b[0],a[q+1]=b[1],f[0]=i,a[e]=b[0],a[e+1]=b[1]}}function $H(c,d,i){var g,q,Xa,l,k,n,z,p,s,v,t,u,w,A,B,C,P=d>>2,y=h;h+=108;var D,F=y+12;C=F>>2;var M=y+20;B=M>>2;var X=y+28;A=X>>2;var O=y+36;w=O>>2;var E=y+44;u=E>>2;var G=y+52;t=G>>2;var ia=y+60;v=ia>>2;var J=y+68;s=J>>2;var I=y+76;p=I>>2;var H=y+84;z=H>>2;var K=y+92;n=K>>2;var L=y+96;k=L>>2;var N=y+100;l=N>>2;var R=y+104;Xa=R>>2;a[P+8]=i;for(var Q=c;;){if(32==m[Q]<<24>>24){Q=Q+1|0}else{break}}a[Xa]=255;var ca=m[Q];if(35==ca<<24>>24){if(2<(Cd(Q,aI|0,(j=h,h+=16,a[j>>2]=K,a[j+4>>2]=L,a[j+8>>2]=N,a[j+12>>2]=R,j))|0)){if(0==(i|0)){var S=(a[n]>>>0)/255;f[0]=S;a[w]=b[0];a[w+1]=b[1];var U=(a[k]>>>0)/255;f[0]=U;a[u]=b[0];a[u+1]=b[1];var zb=(a[l]>>>0)/255;f[0]=zb;a[t]=b[0];a[t+1]=b[1];var ja=(a[Xa]>>>0)/255,aa=Uzb?U:zb,ea=daS?S:aa),W=xa/ea;if(0Y?Y+360:Y,Z=W}else{var $=0,Z=W}}else{Z=$=0}f[0]=$/360;a[F>>2]=b[0];a[F+4>>2]=b[1];f[0]=ea;a[X>>2]=b[0];a[X+4>>2]=b[1];f[0]=Z;a[M>>2]=b[0];a[M+4>>2]=b[1];var tb=(b[0]=a[C],b[1]=a[C+1],f[0]),ya=d|0;f[0]=tb;a[ya>>2]=b[0];a[ya+4>>2]=b[1];var la=(b[0]=a[B],b[1]=a[B+1],f[0]),wa=d+8|0;f[0]=la;a[wa>>2]=b[0];a[wa+4>>2]=b[1];var Ab=(b[0]=a[A],b[1]=a[A+1],f[0]),Fa=d+16|0;f[0]=Ab;a[Fa>>2]=b[0];a[Fa+4>>2]=b[1];var Ga=d+24|0;f[0]=ja;a[Ga>>2]=b[0];a[Ga+4>>2]=b[1];var ba=0}else{if(1==(i|0)){m[d]=a[n]&255,m[d+1|0]=a[k]&255,m[d+2|0]=a[l]&255,m[d+3|0]=a[Xa]&255}else{if(3==(i|0)){var ta=(a[n]>>>0)/255;f[0]=ta;a[w]=b[0];a[w+1]=b[1];var Ka=(a[k]>>>0)/255;f[0]=Ka;a[u]=b[0];a[u+1]=b[1];var za=(a[l]>>>0)/255;f[0]=za;a[t]=b[0];a[t+1]=b[1];Iu(ta,Ka,za,ia,J,I,H);m[d]=255*((b[0]=a[v],b[1]=a[v+1],f[0])&-1)&255;m[d+1|0]=255*((b[0]=a[s],b[1]=a[s+1],f[0])&-1)&255;m[d+2|0]=255*((b[0]=a[p],b[1]=a[p+1],f[0])&-1)&255;m[d+3|0]=255*((b[0]=a[z],b[1]=a[z+1],f[0])&-1)&255}else{if(2==(i|0)){a[P]=Math.floor(((65535*a[n]|0)>>>0)/255),a[d+4>>2]=Math.floor(((65535*a[k]|0)>>>0)/255),a[P+2]=Math.floor(((65535*a[l]|0)>>>0)/255),a[d+12>>2]=Math.floor(((65535*a[Xa]|0)>>>0)/255)}else{if(4==(i|0)){var ma=d|0;f[0]=(a[n]>>>0)/255;a[ma>>2]=b[0];a[ma+4>>2]=b[1];var pa=d+8|0;f[0]=(a[k]>>>0)/255;a[pa>>2]=b[0];a[pa+4>>2]=b[1];var fa=d+16|0;f[0]=(a[l]>>>0)/255;a[fa>>2]=b[0];a[fa+4>>2]=b[1];var Ha=d+24|0;f[0]=(a[Xa]>>>0)/255;a[Ha>>2]=b[0];a[Ha+4>>2]=b[1]}}}}ba=0}h=y;return ba}var Ra=m[Q]}else{Ra=ca}46==Ra<<24>>24?D=150:10>((Ra&255)-48|0)>>>0&&(D=150);do{if(150==D){var sa=Ba(Q);if((sa|0)<(a[Ju>>2]|0)){var ra=a[lp>>2]}else{var La=sa+11|0;a[Ju>>2]=La;var qa=wb(a[lp>>2],La);a[lp>>2]=qa;if(0==(qa|0)){return ba=-1,h=y,ba}ra=qa}for(var Ya=Q,na=ra;;){var Za=Ya+1|0,oa=m[Ya];if(44==oa<<24>>24){var ab=32}else{if(0==oa<<24>>24){break}else{ab=oa}}m[na]=ab;Ya=Za;na=na+1|0}m[na]=0;if(3==(Cd(ra,bI|0,(j=h,h+=12,a[j>>2]=F,a[j+4>>2]=M,a[j+8>>2]=X,j))|0)){var $a=(b[0]=a[C],b[1]=a[C+1],f[0]),jb=1>$a?$a:1,Ca=0Ia?Ia:1,ub=0Sa?Sa:1,ua=0>2]=65535*(b[0]=a[u],b[1]=a[u+1],f[0])&-1;a[P+2]=65535*(b[0]=a[t],b[1]=a[t+1],f[0])&-1;a[Oa+12>>2]=65535}else{if(4==(i|0)){kp(Ca,ub,ua,O,E,G);var Wa=(b[0]=a[w],b[1]=a[w+1],f[0]),pb=d|0;f[0]=Wa;a[pb>>2]=b[0];a[pb+4>>2]=b[1];var ob=(b[0]=a[u],b[1]=a[u+1],f[0]),bb=d+8|0;f[0]=ob;a[bb>>2]=b[0];a[bb+4>>2]=b[1];var qb=(b[0]=a[t],b[1]=a[t+1],f[0]),Aa=d+16|0;f[0]=qb;a[Aa>>2]=b[0];a[Aa+4>>2]=b[1];var kb=d+24|0;f[0]=1;a[kb>>2]=b[0];a[kb+4>>2]=b[1]}else{if(0==(i|0)){var Ea=d|0;f[0]=Ca;a[Ea>>2]=b[0];a[Ea+4>>2]=b[1];var vb=d+8|0;f[0]=ub;a[vb>>2]=b[0];a[vb+4>>2]=b[1];var xb=d+16|0;f[0]=ua;a[xb>>2]=b[0];a[xb+4>>2]=b[1];var hd=d+24|0;f[0]=1;a[hd>>2]=b[0];a[hd+4>>2]=b[1]}else{if(1==(i|0)){kp(Ca,ub,ua,O,E,G);var nb=d;m[d]=255*(b[0]=a[w],b[1]=a[w+1],f[0])&255;m[nb+1|0]=255*(b[0]=a[u],b[1]=a[u+1],f[0])&255;m[nb+2|0]=255*(b[0]=a[t],b[1]=a[t+1],f[0])&255;m[nb+3|0]=-1}else{if(3==(i|0)){kp(Ca,ub,ua,O,E,G);var rb=(b[0]=a[w],b[1]=a[w+1],f[0]);Iu(rb,(b[0]=a[u],b[1]=a[u+1],f[0]),(b[0]=a[t],b[1]=a[t+1],f[0]),ia,J,I,H);var lb=d;m[d]=255*((b[0]=a[v],b[1]=a[v+1],f[0])&-1)&255;m[lb+1|0]=255*((b[0]=a[s],b[1]=a[s+1],f[0])&-1)&255;m[lb+2|0]=255*((b[0]=a[p],b[1]=a[p+1],f[0])&-1)&255;m[lb+3|0]=255*((b[0]=a[z],b[1]=a[z+1],f[0])&-1)&255}}}}}ba=0;h=y;return ba}}}while(0);var Ta=cI(Q);a[y>>2]=Ta;if(0==(Ta|0)){return ba=-1,h=y,ba}var cb=a[Ku>>2];if(0==(cb|0)){D=168}else{var fb=a[cb>>2];if(m[fb]<<24>>24!=m[Ta]<<24>>24){D=168}else{if(0==(ka(fb,Ta)|0)){var Ua=cb}else{D=168}}}if(168==D){var sb=tn(y,e,2491,12,314),Ua=a[Ku>>2]=sb}if(0==(Ua|0)){if(0==(i|0)){var Na=d+24|0;q=d>>2;a[q]=0;a[q+1]=0;a[q+2]=0;a[q+3]=0;a[q+4]=0;a[q+5]=0;f[0]=1;a[Na>>2]=b[0];a[Na+4>>2]=b[1]}else{if(1==(i|0)){m[d+2|0]=0,m[d+1|0]=0,m[d]=0,m[d+3|0]=-1}else{if(3==(i|0)){Pb=0,m[d]=Pb&255,Pb>>=8,m[d+1]=Pb&255,Pb>>=8,m[d+2]=Pb&255,Pb>>=8,m[d+3]=Pb&255}else{if(2==(i|0)){a[P+2]=0,a[d+4>>2]=0,a[P]=0,a[d+12>>2]=65535}else{if(4==(i|0)){var Fb=d+24|0;g=d>>2;a[g]=0;a[g+1]=0;a[g+2]=0;a[g+3]=0;a[g+4]=0;a[g+5]=0;f[0]=1;a[Fb>>2]=b[0];a[Fb+4>>2]=b[1]}}}}}ba=1}else{if(0==(i|0)){var Db=d|0;f[0]=(m[Ua+4|0]&255)/255;a[Db>>2]=b[0];a[Db+4>>2]=b[1];var Ob=d+8|0;f[0]=(m[Ua+5|0]&255)/255;a[Ob>>2]=b[0];a[Ob+4>>2]=b[1];var Eb=d+16|0;f[0]=(m[Ua+6|0]&255)/255;a[Eb>>2]=b[0];a[Eb+4>>2]=b[1];var Ma=d+24|0;f[0]=(m[Ua+10|0]&255)/255;a[Ma>>2]=b[0];a[Ma+4>>2]=b[1]}else{if(1==(i|0)){m[d]=m[Ua+7|0],m[d+1|0]=m[Ua+8|0],m[d+2|0]=m[Ua+9|0],m[d+3|0]=m[Ua+10|0]}else{if(3==(i|0)){var Bb=(m[Ua+7|0]&255|0)/255;f[0]=Bb;a[w]=b[0];a[w+1]=b[1];var Ja=(m[Ua+8|0]&255|0)/255;f[0]=Ja;a[u]=b[0];a[u+1]=b[1];var Qa=(m[Ua+9|0]&255|0)/255;f[0]=Qa;a[t]=b[0];a[t+1]=b[1];Iu(Bb,Ja,Qa,ia,J,I,H);m[d]=255*((b[0]=a[v],b[1]=a[v+1],f[0])&-1)&255;m[d+1|0]=255*((b[0]=a[s],b[1]=a[s+1],f[0])&-1)&255;m[d+2|0]=255*((b[0]=a[p],b[1]=a[p+1],f[0])&-1)&255;m[d+3|0]=255*((b[0]=a[z],b[1]=a[z+1],f[0])&-1)&255}else{if(2==(i|0)){a[P]=Math.floor(((65535*(m[Ua+7|0]&255)|0)>>>0)/255),a[d+4>>2]=Math.floor(((65535*(m[Ua+8|0]&255)|0)>>>0)/255),a[P+2]=Math.floor(((65535*(m[Ua+9|0]&255)|0)>>>0)/255),a[d+12>>2]=Math.floor(((65535*(m[Ua+10|0]&255)|0)>>>0)/255)}else{if(4==(i|0)){var Cb=d|0;f[0]=(m[Ua+7|0]&255|0)/255;a[Cb>>2]=b[0];a[Cb+4>>2]=b[1];var Va=d+8|0;f[0]=(m[Ua+8|0]&255|0)/255;a[Va>>2]=b[0];a[Va+4>>2]=b[1];var hb=d+16|0;f[0]=(m[Ua+9|0]&255|0)/255;a[hb>>2]=b[0];a[hb+4>>2]=b[1];var Pa=d+24|0;f[0]=(m[Ua+10|0]&255|0)/255;a[Pa>>2]=b[0];a[Pa+4>>2]=b[1]}}}}}ba=0}h=y;return ba}function cI(b){var c=m[b];if(98==c<<24>>24){return b}var i=b+1|0;if(0==(td(i,dI|0,4)|0)|119==c<<24>>24||0==(td(i,eI|0,4)|0)|108==c<<24>>24||0==(td(i,fI|0,8)|0)){return b}c=47==c<<24>>24;a:do{if(c){var d=Jc(i,47);if(0==(d|0)){d=i}else{if(47!=m[i]<<24>>24){d=0==(Df(mp|0,i,4)|0)?d+1|0:b}else{d=a[aj>>2];do{if(0!=(d|0)&&0!=m[d]<<24>>24&&0!=(Df(mp|0,d,3)|0)){d=gI(a[aj>>2],b+2|0);break a}}while(0);d=b+2|0}}}else{d=a[aj>>2],d=0==(d|0)?b:0==m[d]<<24>>24?b:0==(Df(mp|0,d,3)|0)?b:gI(a[aj>>2],b)}}while(0);return b=ZH(d)}function gI(b,c){var i=h,d=Ba(b)+Ba(c)|0;(d+3|0)<(a[Lu>>2]|0)?d=a[Al>>2]:(d=d+13|0,a[Lu>>2]=d,d=wb(a[Al>>2],d),a[Al>>2]=d);Ma(d,hI|0,(j=h,h+=8,a[j>>2]=b,a[j+4>>2]=c,j));d=a[Al>>2];h=i;return d}function iI(b){var c,i=h;h+=1112;var d=i+1024,f=i+1096,e=i+1100,l=i+1104,k=i+1108,n=a[bj>>2];0==(n|0)&&(n=Nc(Mu,a[Pn>>2]),a[bj>>2]=n);n=J[a[n>>2]](n,b,512);if(0!=(n|0)){return h=i,n}n=qi(b,cj|0);if(0==(n|0)){return la(0,jI|0,(j=h,h+=4,a[j>>2]=b,j)),h=i,0}c=i|0;for(var z=0,p=0;;){if(0==(oi(c,1024,n)|0)){var s=z,v=p;break}p=4==(Cd(c,Nu|0,(j=h,h+=16,a[j>>2]=f,a[j+4>>2]=e,a[j+8>>2]=l,a[j+12>>2]=k,j))|0)?1:p;z=37==m[c]<<24>>24?z:0==(un(c,kI|0)|0)?z:1;if(!(0==(p|0)|0==(z|0))){s=z;v=p;break}}0==(v|0)?(la(0,lI|0,(j=h,h+=4,a[j>>2]=b,j)),s=0):(v=Cb(64),c=v>>2,a[c+8]=a[f>>2],z=v+36|0,a[z>>2]=a[e>>2],a[c+10]=a[l>>2]-a[f>>2]|0,a[z>>2]=a[k>>2]-a[e>>2]|0,a[c+2]=b,b=a[Ou>>2],a[Ou>>2]=b+1|0,a[c+3]=b,kC(n,d),d=a[d+28>>2],b=Cb(d+1|0),a[c+13]=b,xg(n,0,0),lC(b,d,1,n),m[b+d|0]=0,d=a[bj>>2],J[a[d>>2]](d,v,1),m[v+16|0]=s&255,s=v);ri(n);h=i;return s}function np(b,c,i){var d=h,f,e=0!=(c|0);a:do{if(e){for(var l=1,k=0;;){if(0==l<<24>>24){break a}var n=a[c+(k<<2)>>2];if(0==(n|0)){f=280;break a}l=0==m[n]<<24>>24?0:l;k=k+1|0}}else{f=280}}while(0);a:do{if(280==f&&(n=a[i>>2],0!=(n|0))){l=b;for(k=i;;){if(y(l,n),y(l,wd|0),k=k+4|0,n=a[k>>2],0==(n|0)){break a}}}}while(0);if(e&&(f=a[c>>2],0!=(f|0))){for(i=0;;){do{if(0!=m[f]<<24>>24){if(l=Uk(f),0==(l|0)){la(0,mI|0,(j=h,h+=4,a[j>>2]=f,j))}else{if(e=qi(l,cj|0),0==(e|0)){la(0,nI|0,(j=h,h+=4,a[j>>2]=l,j))}else{l=$E(e);k=0==(l|0);a:do{if(!k){for(n=l;;){if(y(b,n),n=$E(e),0==(n|0)){break a}}}}while(0);y(b,wd|0);ri(e)}}}}while(0);i=i+1|0;f=a[c+(i<<2)>>2];if(0==(f|0)){break}}}h=d}function Pu(b,c){var i,d=a[c+52>>2];a:for(;;){var f=m[d];b:do{if(37==f<<24>>24){if(37!=m[d+1|0]<<24>>24){var e=d}else{f=d+2|0;do{if(0==(Df(f,oI|0,3)|0)){e=d}else{if(0==(Df(f,pI|0,5)|0)){e=d}else{if(0==(Df(f,qI|0,3)|0)){e=d}else{if(0==(Df(f,rI|0,7)|0)){e=d}else{e=d;break b}}}}}while(0);for(;;){var l=m[e];if(13==l<<24>>24){i=311;break}else{if(0==l<<24>>24||10==l<<24>>24){i=313;break}}e=e+1|0}do{if(311==i){if(i=0,d=e+1|0,10!=m[d]<<24>>24){var k=d}else{d=e+2|0;continue a}}else{313==i&&(i=0,k=e+1|0)}}while(0);d=0==l<<24>>24?e:k;continue a}}else{if(0==f<<24>>24){break a}else{e=d}}}while(0);for(;;){var h=m[e];if(0==h<<24>>24||10==h<<24>>24){i=319;break}else{if(13==h<<24>>24){i=317;break}}sI(b,h<<24>>24);e=e+1|0}if(319==i){var j=e+1|0;i=320}else{if(317==i){if(i=0,d=e+1|0,10!=m[d]<<24>>24){j=d,i=320}else{var p=e+2|0}}}320==i&&(i=0,p=0==h<<24>>24?e:j);sI(b,10);d=p}}function Qu(b,c){var i=h;if(0==(c|0)){var d;var f=b,e=0;b:for(;;){for(;;){var l=m[f];if(0==l<<24>>24){var k=e;d=246;break b}if(127>(l&255)){f=f+1|0}else{break}}if(-64==(l&-4)<<24>>24){f=f+2|0,e=1}else{k=2;d=245;break}}d=245==d||246==d?k:cc;1==(d|0)?d=bt(b):(2==(d|0)&&!m[Ru]&&(la(0,tI|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),m[Ru]=1),d=b)}else{d=bt(b)}0==(a[Mb>>2]|0)&&fc(Mb,0,0);e=a[Mb+4>>2];e>>>0>2]>>>0||(na(Mb,1),e=a[Mb+4>>2]);a[Mb+4>>2]=e+1|0;m[e]=40;for(e=d;;){l=m[e];if(40==l<<24>>24||41==l<<24>>24||92==l<<24>>24){l=a[Mb+4>>2],l>>>0>2]>>>0||(na(Mb,1),l=a[Mb+4>>2]),a[Mb+4>>2]=l+1|0,m[l]=92}else{if(0==l<<24>>24){break}}l=a[Mb+4>>2];l>>>0>2]>>>0||(na(Mb,1),l=a[Mb+4>>2]);k=m[e];a[Mb+4>>2]=l+1|0;m[l]=k;e=e+1|0}e=a[Mb+4>>2];e>>>0>2]>>>0||(na(Mb,1),e=a[Mb+4>>2]);a[Mb+4>>2]=e+1|0;m[e]=41;(d|0)!=(b|0)&&G(d);d=a[Mb+4>>2];if(d>>>0>2]>>>0){return m[d]=0,d=a[Mb>>2],a[Mb+4>>2]=d,h=i,d}na(Mb,1);d=a[Mb+4>>2];m[d]=0;d=a[Mb>>2];a[Mb+4>>2]=d;h=i;return d}function uI(c,d){var i,g,q,e,l=c>>2,k=h;h+=8;var n;e=k>>2;q=(c+44|0)>>2;a[q]=fa(96);var z=c|0,p=V(z,vI|0);if(0==(p|0)){var s=lk(wI|0);if(0!=(s|0)){var v=s;n=516}}else{v=p,n=516}if(516==n){var t=wb(a[op>>2],Ba(v)+12|0);a[op>>2]=t;for(var u=xI|0,w=t,A=u+12;u>2];if(0===B){Ea(va.i)}else{var B=Oe(B),C=B.indexOf("=");if(""===B||-1===B.indexOf("=")){Ea(va.i)}else{var P=B.slice(0,C),y=B.slice(C+1);if(!(P in Ee)||Ee[P]!==y){Ee[P]=y,mC(Ee)}}}}var D=m,F=c+151|0,M=h,X=Aa(c|0,$(a[c+32>>2]|0,yI|0),Su|0);if(0==(Lb(X,zI|0)|0)){var O=1}else{0==(Lb(X,AI|0)|0)?O=1:0==(Lb(X,BI|0)|0)?O=1:0==(Lb(X,CI|0)|0)?O=1:0==(Lb(X,DI|0)|0)?O=1:0==(Lb(X,EI|0)|0)?O=1:0==(Lb(X,FI|0)|0)?O=1:0==(Lb(X,GI|0)|0)?O=2:0==(Lb(X,HI|0)|0)?O=2:(0!=(Lb(X,Su|0)|0)&&0!=(Lb(X,II|0)|0)&&la(0,JI|0,(j=h,h+=4,a[j>>2]=X,j)),O=0)}h=M;D[F]=O&255;g=(c+32|0)>>2;var E=Xb(z,$(a[g]|0,KI|0),0,0),G=a[q]|0;f[0]=E;a[G>>2]=b[0];a[G+4>>2]=b[1];var ia=V(z,LI|0);do{if(0==(ia|0)){var J=0}else{var I=m[ia];if(76==I<<24>>24){if(0==(ka(ia,MI|0)|0)){J=1;break}}else{if(82==I<<24>>24){J=0==(ka(ia,NI|0)|0)?3:0;break}else{if(66==I<<24>>24){if(0==(ka(ia,OI|0)|0)){J=2;break}}else{J=0;break}}}J=0}}while(0);var H=J<<2;a[l+38]=0==d<<24>>24?H:H|J;var K=Xb(z,$(a[g]|0,PI|0),.25,.02);f[0]=K;a[e]=b[0];a[e+1]=b[1];var L=72*K;a[l+64]=(0>L?L-.5:L+.5)&-1;var N=jc(z,$(a[g]|0,QI|0),0);if(0==(N|0)){f[0]=.5;a[e]=b[0];a[e+1]=b[1];var Q=.5}else{if(0==(Cd(N,RI|0,(j=h,h+=4,a[j>>2]=k,j))|0)){f[0]=.5;a[e]=b[0];a[e+1]=b[1];var S=.5}else{var ca=(b[0]=a[e],b[1]=a[e+1],f[0]);.02>ca?(f[0]=.02,a[e]=b[0],a[e+1]=b[1],S=.02):S=ca}0!=(un(N,SI|0)|0)&&(m[c+284|0]=1);Q=S}var R=72*Q;a[l+65]=(0>R?R-.5:R+.5)&-1;m[c+249|0]=Zf(z,$(a[g]|0,pp|0),0)&255;a[l+63]=Ds(jc(z,$(a[g]|0,TI|0),0),Bl|0,UI|0);VI(c);var U=Tu(c,WI|0,a[q]+64|0);m[a[q]+80|0]=U;Tu(c,XI|0,a[q]+48|0);var W=jo(V(z,YI|0));m[a[q]+82|0]=W;var ja=V(z,ZI|0);if(0==(ja|0)){var aa=V(z,Uu|0);if(0!=(aa|0)){var da=m[aa];m[a[q]+81|0]=(108==da<<24>>24|76==da<<24>>24)&1}else{var ea=V(z,$I|0);if(0!=(ea|0)){var xa=re(ea);m[a[q]+81|0]=xa}}}else{var Y=90==(bh(ja)|0)&1;m[a[q]+81|0]=Y}var Z=Ds(V(z,aJ|0),Cl|0,bJ|0);a[Dl>>2]=Z;var ha=jo(V(z,cJ|0));m[Wi]=ha;a[Ah>>2]=0;var ga=a[q]+24|0;f[0]=0;a[ga>>2]=b[0];a[ga+4>>2]=b[1];var ba=V(z,dJ|0);if(0==(ba|0)){n=548}else{if(0==m[ba]<<24>>24){n=548}else{var Rb=ba;n=550}}if(548==n){var sa=V(z,eJ|0);0!=(sa|0)&&0!=m[sa]<<24>>24&&(Rb=sa,n=550)}if(550==n){var tb=wg(Rb,xc),ya=a[q]+24|0;f[0]=tb;a[ya>>2]=b[0];a[ya+4>>2]=b[1]}Vu(c);f[0]=1e+37;a[Wu>>2]=b[0];a[Wu+4>>2]=b[1];var ra=$(a[g]|0,Xu|0);a[Yu>>2]=ra;i=(c+40|0)>>2;var wa=$(a[a[i]>>2]|0,qp|0);a[sh>>2]=wa;var Ab=$(a[a[i]>>2]|0,rp|0);a[rh>>2]=Ab;var Fa=$(a[a[i]>>2]|0,fJ|0);a[Fs>>2]=Fa;var Ga=$(a[a[i]>>2]|0,kh|0);a[Eh>>2]=Ga;var qa=$(a[a[i]>>2]|0,Ak|0);a[gp>>2]=qa;var ta=$(a[a[i]>>2]|0,Rn|0);a[Ki>>2]=ta;var Ka=$(a[a[i]>>2]|0,sp|0);a[bo>>2]=Ka;var za=$(a[a[i]>>2]|0,tp|0);a[ao>>2]=za;var ma=$(a[a[i]>>2]|0,Eg|0);a[Js>>2]=ma;var pa=$(a[a[i]>>2]|0,dh|0);a[no>>2]=pa;var na=$(a[a[i]>>2]|0,Zu|0);a[Ks>>2]=na;var Ha=$(a[a[i]>>2]|0,pp|0);a[Ls>>2]=Ha;var Ra=$(a[a[i]>>2]|0,$n|0);a[iu>>2]=Ra;var oa=$(a[a[i]>>2]|0,Xu|0);a[El>>2]=oa;var Ma=$(a[a[i]>>2]|0,gJ|0);a[Tt>>2]=Ma;var La=$(a[a[i]>>2]|0,es|0);a[$o>>2]=La;var Qa=$(a[a[i]>>2]|0,hJ|0);a[St>>2]=Qa;var Ya=$(a[a[i]>>2]|0,Uu|0);a[Rt>>2]=Ya;var Cb=$(a[a[i]>>2]|0,iJ|0);a[Ut>>2]=Cb;var Za=$(a[a[i]>>2]|0,jJ|0);a[bp>>2]=Za;var Va=$(a[a[i]>>2]|0,pt|0);a[zu>>2]=Va;var ab=$(a[a[i]>>2]|0,kJ|0);a[cp>>2]=ab;var $a=$(a[a[i]>>2]|0,Qn|0);a[Un>>2]=$a;var jb=$(a[a[i]>>2]|0,lJ|0);a[Gh>>2]=jb;var Ca=$(a[a[i]>>2]|0,Nn|0);a[$r>>2]=Ca;var Ia=$(a[a[i]>>2]|0,mJ|0);a[up>>2]=Ia;var eb=$(a[a[i]>>2]|0,nJ|0);a[oJ>>2]=eb;var ub=$(a[a[i]+4>>2]|0,vp|0);a[Kg>>2]=ub;var Sa=$(a[a[i]+4>>2]|0,kh|0);a[go>>2]=Sa;var hb=$(a[a[i]+4>>2]|0,sp|0);a[Ts>>2]=hb;var ua=$(a[a[i]+4>>2]|0,tp|0);a[Us>>2]=ua;var Oa=$(a[a[i]+4>>2]|0,Eg|0);a[Vs>>2]=Oa;var Wa=$(a[a[i]+4>>2]|0,dh|0);a[Ms>>2]=Wa;var pb=$(a[a[i]+4>>2]|0,Zu|0);a[Ps>>2]=pb;var ob=$(a[a[i]+4>>2]|0,pJ|0);a[Os>>2]=ob;var bb=$(a[a[i]+4>>2]|0,qJ|0);a[Hr>>2]=bb;var qb=$(a[a[i]+4>>2]|0,rJ|0);a[Ir>>2]=qb;var Pa=$(a[a[i]+4>>2]|0,sJ|0);a[Jr>>2]=Pa;var kb=$(a[a[i]+4>>2]|0,ks|0);a[Zk>>2]=kb;var ib=$(a[a[i]+4>>2]|0,ls|0);a[$k>>2]=ib;var vb=$(a[a[i]+4>>2]|0,tJ|0);a[Ws>>2]=vb;var xb=$(a[a[i]+4>>2]|0,uJ|0);a[Xs>>2]=xb;var hd=$(a[a[i]+4>>2]|0,vJ|0);a[Ys>>2]=hd;var nb=$(a[a[i]+4>>2]|0,wJ|0);a[Gu>>2]=nb;var rb=$(a[a[i]+4>>2]|0,xJ|0);a[Fu>>2]=rb;var lb=$(a[a[i]+4>>2]|0,yJ|0);a[Hh>>2]=lb;var Ta=$(a[a[i]+4>>2]|0,pp|0);a[$u>>2]=Ta;var cb=$(a[a[i]+4>>2]|0,Rn|0);a[Vn>>2]=cb;var fb=$(a[a[i]+4>>2]|0,zJ|0);a[io>>2]=fb;var Ua=$(a[a[i]+4>>2]|0,AJ|0);a[uk>>2]=Ua;var sb=$(a[a[i]+4>>2]|0,BJ|0);a[dj>>2]=sb;var Na=$(a[a[i]+4>>2]|0,Qn|0);a[Tn>>2]=Na;var Fb=$(a[a[i]+4>>2]|0,Nn|0);a[bs>>2]=Fb;var Db=$(a[a[i]+4>>2]|0,CJ|0);a[Rs>>2]=Db;var Ob=$(a[a[i]+4>>2]|0,DJ|0);a[Ss>>2]=Ob;var Eb=$(a[a[i]+4>>2]|0,$n|0);a[hs>>2]=Eb;var db=RC(c);a[a[q]+88>>2]=db;var Bb=V(z,Pr|0);if(0!=(Bb|0)&&0!=m[Bb]<<24>>24){var Ja=ec(Bb,z);a[a[q]+92>>2]=Ja}h=k}function VI(c){var d=V(c|0,EJ|0);if(0!=(d|0)){var i=m[d];if(0!=i<<24>>24){var g=i<<24>>24;101==(g|0)?101==i<<24>>24&&0==(ka(d,FJ|0)|0)&&(a[a[c+44>>2]+84>>2]=5):99==(g|0)?99==i<<24>>24&&0==(ka(d,GJ|0)|0)&&(a[a[c+44>>2]+84>>2]=3):102==(g|0)?102==i<<24>>24&&0==(ka(d,HJ|0)|0)&&(a[a[c+44>>2]+84>>2]=2):97==(g|0)?97==i<<24>>24&&0==(ka(d,IJ|0)|0)&&(a[a[c+44>>2]+84>>2]=4):(d=wg(d,xc),0>2]+84>>2]=1,c=a[c>>2]+16|0,f[0]=d,a[c>>2]=b[0],a[c+4>>2]=b[1]))}}}function Tu(c,d,i){var g,q=h;h+=20;g=q>>2;var e=q+8,l=q+16;m[l]=0;c=V(c|0,d);if(0==(c|0)){return h=q,0}if(1<(Cd(c,JJ|0,(j=h,h+=12,a[j>>2]=q,a[j+4>>2]=e,a[j+8>>2]=l,j))|0)){if(d=(b[0]=a[g],b[1]=a[g+1],f[0]),0>2],b[1]=a[e+4>>2],f[0]),0g?g-.5:g+.5)&-1|0,a[c>>2]=b[0],a[c+4>>2]=b[1],g=72*e,i=i+8|0,f[0]=(0>g?g-.5:g+.5)&-1|0,a[i>>2]=b[0],a[i+4>>2]=b[1],l=33==m[l]<<24>>24&1,h=q,l}}m[l]=0;if(0>=(Cd(c,KJ|0,(j=h,h+=8,a[j>>2]=q,a[j+4>>2]=l,j))|0)){return h=q,0}g=(b[0]=a[g],b[1]=a[g+1],f[0]);if(0>=g){return h=q,0}g*=72;g=(0>g?g-.5:g+.5)&-1|0;e=i|0;f[0]=g;a[e>>2]=b[0];a[e+4>>2]=b[1];i=i+8|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];h=q;return 33==m[l]<<24>>24&1}function LJ(c){if(0!=(a[Ic>>2]|0)){var d=c+76|0,c=c+60|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])+(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);f[0]=d;a[Nb>>2]=b[0];a[Nb+4>>2]=b[1];f[0]=d/72;a[Ih>>2]=b[0];a[Ih+4>>2]=b[1]}}function Vu(c){var d,i=c|0,g=V(i,dh|0);if(0!=(g|0)&&0!=m[g]<<24>>24){d=(c+32|0)>>2;var q=a[d]+149|0;m[q]|=8;var e=0!=(bg(g)|0)?2:0,l=Xb(i,$(a[d]|0,sp|0),14,1),q=c+48|0;a[q>>2]=ag(i,g,e,l,Aa(i,$(a[d]|0,tp|0),Li|0),Aa(i,$(a[d]|0,Eg|0),Ac|0));g=V(i,Vt|0);e=0!=(g|0);g=(a[d]|0)==(c|0)?e&&116==m[g]<<24>>24?1:0:e&&98==m[g]<<24>>24?0:1;i=V(i,MJ|0);0==(i|0)?i=g:(i=m[i],i=108==i<<24>>24?g|2:114==i<<24>>24?g|4:g);m[c+283|0]=i;g=a[d];(g|0)!=(c|0)&&(q=a[q>>2],d=q+24|0,q=q+32|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])+16,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0])+8,i=0!=(i&1)<<24>>24,0==(a[g+152>>2]&1|0)?(i=i?2:0,g=(i<<4)+c+84|0,f[0]=d,a[g>>2]=b[0],a[g+4>>2]=b[1],c=(i<<4)+c+92|0,f[0]=q):(i=i?1:3,g=(i<<4)+c+84|0,f[0]=q,a[g>>2]=b[0],a[g+4>>2]=b[1],c=(i<<4)+c+92|0,f[0]=d),a[c>>2]=b[0],a[c+4>>2]=b[1])}}function xC(b){var c,i=b+44|0;c=(i|0)>>2;var d=a[c],f=a[d+88>>2];0!=(f|0)&&(IQa(f),d=a[c]);f=a[d+92>>2];0!=(f|0)&&(G(f),d=a[c]);G(d);a[c]=0;vh(a[b+48>>2]);b=i>>2;for(c=b+61;b>2]+a[b>>2]-a[ih>>2]-a[ih+4>>2]|0)>>>0)/60;h=b;return c}function av(c,d,i,g){var q,e,l;LJ(d);var k=d+68|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=d+76|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),c=c+348|0;Jh(i,NJ|0,(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]));Jh(i,gc|0,k/72);Jh(i,gc|0,n/72);Ge(10,i);c=ra(d);k=0==(c|0);a:do{if(!k){n=c;for(l=n>>2;;){if(0==m[n+134|0]<<24>>24){e=xd(a[l+3]);Me(i,OJ|0,e);e=n+32|0;var z=n+40|0;bv(i,(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]));e=a[l+30];0==m[e+82|0]<<24>>24?(e=cv(a[e>>2]),z=n|0):(z=n|0,e=xd(mb(z,a[a[no>>2]+8>>2])));q=n+48|0;Jh(i,gc|0,(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]));q=n+56|0;Jh(i,gc|0,(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]));Me(i,gc|0,e);Me(i,gc|0,Aa(z,a[Ki>>2],wp|0));Me(i,gc|0,a[a[l+6]>>2]);Me(i,gc|0,Aa(z,a[Eh>>2],Ac|0));l=Aa(z,a[gp>>2],Y|0);Me(i,gc|0,0==m[l]<<24>>24?Aa(z,a[Eh>>2],qe|0):l);Ge(10,i)}n=ba(d,n);if(0==(n|0)){break a}else{l=n>>2}}}}while(0);c=ra(d);if(0!=(c|0)){for(g=0==g<<24>>24;;){k=Ib(d,c);n=0==(k|0);a:do{if(!n){l=k;for(e=l>>2;;){if(g){var z=Y|0,p=Y|0}else{q=a[e+1],0==(q|0)?(z=Y|0,p=Y|0):(z=a[q+4>>2],p=a[q+8>>2])}q=(l+24|0)>>2;var s=a[q],v=0==(s|0);b:do{if(!v){var t=a[s+4>>2],u=0<(t|0);c:do{if(u){for(var w=a[s>>2],A=0,B=0;;){if(A=a[(w+4>>2)+(12*B|0)]+A|0,B=B+1|0,(B|0)>=(t|0)){var C=A;break c}}}else{C=0}}while(0);Me(i,0,Dg|0);t=a[e+4];PJ(i,a[t+12>>2],m[t+134|0],z);t=a[e+3];PJ(i,a[t+12>>2],m[t+134|0],p);t=i;u=C;w=h;h+=1024;hb(gc|0,t);A=w|0;Ma(A,dv|0,(j=h,h+=4,a[j>>2]=u,j));hb(A,t);h=w;u=a[q];if(0<(a[u+4>>2]|0)){t=0;for(A=u;;){w=a[A>>2];u=a[(w>>2)+(12*t|0)];w=a[(w+4>>2)+(12*t|0)];if(0<(w|0)){for(A=0;;){var B=(A<<4)+u|0,P=(A<<4)+u+8|0;bv(i,(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]));A=A+1|0;if((A|0)==(w|0)){break}}u=a[q]}else{u=A}t=t+1|0;if((t|0)<(a[u+4>>2]|0)){A=u}else{break b}}}}}while(0);e=l+108|0;z=a[e>>2];0!=(z|0)&&(z=cv(a[z>>2]),Me(i,gc|0,z),z=a[e>>2],e=z+56|0,z=z+64|0,bv(i,(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])));e=l|0;Me(i,gc|0,Aa(e,a[Vn>>2],wp|0));Me(i,gc|0,Aa(e,a[go>>2],Ac|0));Ge(10,i);l=yb(d,l);if(0==(l|0)){break a}else{e=l>>2}}}}while(0);c=ba(d,c);if(0==(c|0)){break}}}hb(QJ|0,i)}function Jh(c,d,i){var g=h;h+=1024;0!=(d|0)&&hb(d,c);d=g|0;Ma(d,xp|0,(j=h,h+=8,f[0]=i,a[j>>2]=b[0],a[j+4>>2]=b[1],j));hb(d,c);h=g}function Me(a,b,i){0!=(b|0)&&hb(b,a);hb(i,a)}function bv(c,d,i){Jh(c,gc|0,d/72);d=0==(a[Ic>>2]|0)?i:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-i;Jh(c,gc|0,d/72)}function cv(a){var a=Dc(a),b=xd(a);dc(a);return b}function PJ(a,b,i,c){b=0==i<<24>>24?xd(b):cv(Jc(b,58)+1|0);Me(a,gc|0,b);0!=(c|0)&&0!=m[c]<<24>>24&&(c=xd(c),Me(a,zf|0,c))}function ev(c,d,i){var g,q,e,l,k,n,z,p,s,v,t=h;h+=2064;var u,w=t+2048;v=(c+206|0)>>1;var A=2<(D[v]&65535);Gg(1);LJ(c);fc(w,1024,t+1024|0);s=(c+40|0)>>2;ac(c,a[a[s]>>2]|0,ej|0,Y|0,212);ac(c,a[a[s]>>2]|0,fv|0,Y|0,212);var B=ac(c,a[a[s]>>2]|0,rp|0,Y|0,212);a[rh>>2]=B;var C=ac(c,a[a[s]>>2]|0,qp|0,Y|0,212);a[sh>>2]=C;ac(c,a[a[s]+4>>2]|0,ej|0,Y|0,286);var P=c+149|0,y=m[P];if(0==(y&16)<<24>>24){var gb=y}else{ac(c,a[a[s]>>2]|0,Fl|0,Y|0,212),gb=m[P]}if(0==(gb&1)<<24>>24){var F=gb}else{ac(c,a[a[s]+4>>2]|0,fj|0,Y|0,286),F=m[P]}if(0==(F&32)<<24>>24){var M=F}else{ac(c,a[a[s]+4>>2]|0,Fl|0,Y|0,286),M=m[P]}if(0==(M&2)<<24>>24){var X=M}else{ac(c,a[a[s]+4>>2]|0,gv|0,Y|0,286),X=m[P]}0!=(X&4)<<24>>24&&ac(c,a[a[s]+4>>2]|0,hv|0,Y|0,286);p=(c+48|0)>>2;var O=c|0;if(0!=(a[p]|0)){ac(c,O,fj|0,Y|0,202);ac(c,O,yp|0,Y|0,202);ac(c,O,zp|0,Y|0,202);var E=a[p];if(0!=m[a[E>>2]]<<24>>24){var G=E+56|0,ia=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0]),J=E+64|0,I=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0]),H=t|0,K=0==(a[Ic>>2]|0)?I:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-I;Ma(H,Gf|0,(j=h,h+=16,f[0]=ia,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=K,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(O,fj|0,H);var L=a[p],N=L+24|0,Q=(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]),S=L+32|0,ca=(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]);Ma(H,Gl|0,(j=h,h+=8,f[0]=Q/72,a[j>>2]=b[0],a[j+4>>2]=b[1],j));yd(O,yp|0,H);Ma(H,Gl|0,(j=h,h+=8,f[0]=ca/72,a[j>>2]=b[0],a[j+4>>2]=b[1],j));yd(O,zp|0,H)}}var R=ac(c,O,iv|0,Y|0,202),U=ra(c),W=0==(U|0);a:do{if(W){var ja=0,aa=0}else{var da=t|0;z=(w+4|0)>>2;n=(w+8|0)>>2;k=(w|0)>>2;for(var ea=0,xa=0,Z=U;;){var $=Z,ha=Z+24|0;l=ha>>2;var ga=Z+32|0,la=ga,Rb=(b[0]=a[la>>2],b[1]=a[la+4>>2],f[0]),sa=0!=(a[Ic>>2]|0);if(A){if(sa){var tb=ga+8|0,ya=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-(b[0]=a[tb>>2],b[1]=a[tb+4>>2],f[0])}else{var fa=ga+8|0,ya=(b[0]=a[fa>>2],b[1]=a[fa+4>>2],f[0])}var wa=ha+124|0,Ab=a[wa>>2]+16|0,Fa=72*(b[0]=a[Ab>>2],b[1]=a[Ab+4>>2],f[0]);Ma(da,RJ|0,(j=h,h+=24,f[0]=Rb,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=ya,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=Fa,a[j+16>>2]=b[0],a[j+20>>2]=b[1],j));db(w,da);var Ga=3<(D[v]&65535);b:do{if(Ga){for(var qa=3;;){var ta=(qa<<3)+a[wa>>2]|0;Ma(da,SJ|0,(j=h,h+=8,f[0]=72*(b[0]=a[ta>>2],b[1]=a[ta+4>>2],f[0]),a[j>>2]=b[0],a[j+4>>2]=b[1],j));db(w,da);var Ka=qa+1|0;if((Ka|0)<(D[v]&65535|0)){qa=Ka}else{break b}}}}while(0);var za=a[z];if(za>>>0>>0){var ma=za}else{na(w,1),ma=a[z]}m[ma]=0;var pa=a[k];a[z]=pa;yd(Z|0,ej|0,pa)}else{if(sa){var oa=ga+8|0,Ha=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0])}else{var Ra=Z+40|0,Ha=(b[0]=a[Ra>>2],b[1]=a[Ra+4>>2],f[0])}Ma(da,Gf|0,(j=h,h+=16,f[0]=Rb,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=Ha,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(Z|0,ej|0,da)}var Ba=Z+96|0;Ma(da,xp|0,(j=h,h+=8,f[0]=(b[0]=a[Ba>>2],b[1]=a[Ba+4>>2],f[0])/72,a[j>>2]=b[0],a[j+4>>2]=b[1],j));var va=Z|0;qc(va,a[a[sh>>2]+8>>2],da);var La=Z+104|0,Aa=Z+112|0;Ma(da,xp|0,(j=h,h+=8,f[0]=((b[0]=a[La>>2],b[1]=a[La+4>>2],f[0])+(b[0]=a[Aa>>2],b[1]=a[Aa+4>>2],f[0]))/72,a[j>>2]=b[0],a[j+4>>2]=b[1],j));qc(va,a[a[rh>>2]+8>>2],da);var Ya=a[Z+124>>2];if(0!=(Ya|0)){var Ea=Ya+56|0,Za=(b[0]=a[Ea>>2],b[1]=a[Ea+4>>2],f[0]),Qa=Ya+64|0,ab=(b[0]=a[Qa>>2],b[1]=a[Qa+4>>2],f[0]),$a=0==(a[Ic>>2]|0)?ab:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-ab;Ma(da,Gf|0,(j=h,h+=16,f[0]=Za,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=$a,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(va,Fl|0,da)}do{if(0==(ka(a[a[l]>>2],jv|0)|0)){kv($,a[l+1],w);var jb=w+4|0,Ca=a[jb>>2];Ca>>>0>a[w>>2]>>>0&&(a[jb>>2]=Ca-1|0);var Ia=a[z];if(Ia>>>0>>0){var eb=Ia}else{na(w,1),eb=a[z]}m[eb]=0;var ub=a[k];a[z]=ub;yd(va,fv|0,ub)}else{var Sa;if(Sa=0!=(a[up>>2]|0)){var Cb;var ua=a[$+24>>2];if(0==(ua|0)){var Oa=0,Wa=Oa&1}else{Oa=270==(a[a[ua+4>>2]>>2]|0),Wa=Oa&1}Cb=Wa;Sa=0!=Cb<<24>>24}if(Sa){var pb=a[l+1],ob=pb+8|0,bb=a[ob>>2];if(3>(bb|0)){var qb=V(va,us|0),wb=0==(qb|0)?8:bh(qb),kb=3>(wb|0)?8:wb;if(0<(kb|0)){var Va=kb;u=763}}else{Va=bb,u=763}b:do{if(763==u){u=0;var vb=pb+40|0,xb=ha+24|0,hd=Va|0;e=(ha+32|0)>>2;for(var nb=0;;){if(0<(nb|0)){var rb=a[z];if(rb>>>0>>0){var lb=rb}else{na(w,1),lb=a[z]}a[z]=lb+1|0;m[lb]=32}if(2<(a[ob>>2]|0)){var Ta=a[vb>>2],cb=(nb<<4)+Ta|0,fb=(b[0]=a[cb>>2],b[1]=a[cb+4>>2],f[0])/72;if(0==(a[Ic>>2]|0)){var Ua=(nb<<4)+Ta+8|0,sb=(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0])/72}else{var Na=(nb<<4)+Ta+8|0,sb=(b[0]=a[Ih>>2],b[1]=a[Ih+4>>2],f[0])-(b[0]=a[Na>>2],b[1]=a[Na+4>>2],f[0])/72}Ma(da,lv|0,(j=h,h+=16,f[0]=fb,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=sb,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j))}else{var Fb=6.283185307179586*((nb|0)/hd),Db=.5*(b[0]=a[xb>>2],b[1]=a[xb+4>>2],f[0])*se(Fb),Ob=0==(a[Ic>>2]|0)?.5*(b[0]=a[e],b[1]=a[e+1],f[0])*Ce(Fb):(b[0]=a[Ih>>2],b[1]=a[Ih+4>>2],f[0])-.5*(b[0]=a[e],b[1]=a[e+1],f[0])*Ce(Fb);Ma(da,lv|0,(j=h,h+=16,f[0]=Db,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=Ob,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j))}db(w,da);var Eb=nb+1|0;if((Eb|0)==(Va|0)){break b}else{nb=Eb}}}}while(0);var hb=a[a[up>>2]+8>>2],Bb=a[z];if(Bb>>>0>>0){var Ja=Bb}else{na(w,1),Ja=a[z]}m[Ja]=0;var Pa=a[k];a[z]=Pa;qc(va,hb,Pa)}}}while(0);var ib=0<(a[Ah>>2]|0);b:do{if(ib){var Gb=Ib(c,Z);if(0==(Gb|0)){var mb=xa,Jb=ea}else{var Hb=ea,ic=xa,Kb=Gb;for(q=Kb>>2;;){do{if(6==m[Kb+124|0]<<24>>24){var Lb=ic,Mb=Hb}else{g=(Kb+24|0)>>2;var Pb=a[g];if(0==(Pb|0)){Lb=ic,Mb=Hb}else{var Tb=0<(a[Pb+4>>2]|0);c:do{if(Tb){for(var pc=0,Wc=Hb,Vb=ic,Wb=Pb;;){if(0<(pc|0)){var Yb=a[z];if(Yb>>>0>>0){var $b=Yb}else{na(w,1),$b=a[z]}a[z]=$b+1|0;m[$b]=59;var Zb=a[g]}else{Zb=Wb}var Sb=a[Zb>>2];if(0==(a[(Sb+8>>2)+(12*pc|0)]|0)){var kc=Wc,lc=Zb,ec=Sb}else{var Jd=Sb+48*pc+16|0,nc=(b[0]=a[Jd>>2],b[1]=a[Jd+4>>2],f[0]);if(0==(a[Ic>>2]|0)){var Hc=Sb+48*pc+24|0,mc=(b[0]=a[Hc>>2],b[1]=a[Hc+4>>2],f[0])}else{var oe=Sb+48*pc+24|0,mc=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-(b[0]=a[oe>>2],b[1]=a[oe+4>>2],f[0])}Ma(da,TJ|0,(j=h,h+=16,f[0]=nc,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=mc,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));db(w,da);var bc=a[g],kc=1,lc=bc,ec=a[bc>>2]}if(0==(a[(ec+12>>2)+(12*pc|0)]|0)){var Qb=Vb,tc=lc,Sc=ec}else{var Xb=ec+48*pc+32|0,rc=(b[0]=a[Xb>>2],b[1]=a[Xb+4>>2],f[0]);if(0==(a[Ic>>2]|0)){var dc=ec+48*pc+40|0,rd=(b[0]=a[dc>>2],b[1]=a[dc+4>>2],f[0])}else{var oc=ec+48*pc+40|0,rd=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-(b[0]=a[oc>>2],b[1]=a[oc+4>>2],f[0])}Ma(da,UJ|0,(j=h,h+=16,f[0]=rc,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=rd,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));db(w,da);var jc=a[g],Qb=1,tc=jc,Sc=a[jc>>2]}var Ac=0<(a[(Sc+4>>2)+(12*pc|0)]|0);d:do{if(Ac){for(var gc=0,Rd=tc;;){if(0<(gc|0)){var Bc=a[z];if(Bc>>>0>>0){var Sd=Bc}else{na(w,1),Sd=a[z]}a[z]=Sd+1|0;m[Sd]=32;var fd=a[g]}else{fd=Rd}var Cc=a[(a[fd>>2]>>2)+(12*pc|0)],yc=(gc<<4)+Cc|0,Kc=(b[0]=a[yc>>2],b[1]=a[yc+4>>2],f[0]),vc=(gc<<4)+Cc+8|0,Tc=(b[0]=a[vc>>2],b[1]=a[vc+4>>2],f[0]),Dc=0==(a[Ic>>2]|0)?Tc:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-Tc;Ma(da,Gf|0,(j=h,h+=16,f[0]=Kc,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=Dc,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));db(w,da);var Mc=gc+1|0,id=a[g];if((Mc|0)<(a[(a[id>>2]+4>>2)+(12*pc|0)]|0)){gc=Mc,Rd=id}else{var Ec=id;break d}}}else{Ec=tc}}while(0);var zc=pc+1|0;if((zc|0)<(a[Ec+4>>2]|0)){pc=zc,Wc=kc,Vb=Qb,Wb=Ec}else{var Gc=kc,Nc=Qb;break c}}}else{Gc=Hb,Nc=ic}}while(0);var Fc=Kb|0,Qc=a[z];if(Qc>>>0>>0){var Yc=Qc}else{na(w,1),Yc=a[z]}m[Yc]=0;var Rc=a[k];a[z]=Rc;yd(Fc,ej|0,Rc);var Td=a[q+27];if(0!=(Td|0)){var Lc=Td+56|0,Oc=(b[0]=a[Lc>>2],b[1]=a[Lc+4>>2],f[0]),fe=Td+64|0,Pc=(b[0]=a[fe>>2],b[1]=a[fe+4>>2],f[0]),Zc=0==(a[Ic>>2]|0)?Pc:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-Pc;Ma(da,Gf|0,(j=h,h+=16,f[0]=Oc,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=Zc,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(Fc,fj|0,da)}var jd=a[q+30];if(0!=(jd|0)){var md=jd+56|0,je=(b[0]=a[md>>2],b[1]=a[md+4>>2],f[0]),Jc=jd+64|0,ad=(b[0]=a[Jc>>2],b[1]=a[Jc+4>>2],f[0]),Uc=0==(a[Ic>>2]|0)?ad:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-ad;Ma(da,Gf|0,(j=h,h+=16,f[0]=je,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=Uc,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(Fc,Fl|0,da)}var Xc=a[q+28];if(0!=(Xc|0)){var Vc=Xc+56|0,cd=(b[0]=a[Vc>>2],b[1]=a[Vc+4>>2],f[0]),$c=Xc+64|0,ld=(b[0]=a[$c>>2],b[1]=a[$c+4>>2],f[0]),kd=0==(a[Ic>>2]|0)?ld:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-ld;Ma(da,Gf|0,(j=h,h+=16,f[0]=cd,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=kd,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(Fc,gv|0,da)}var bd=a[q+29];if(0!=(bd|0)){var ed=bd+56|0,qd=(b[0]=a[ed>>2],b[1]=a[ed+4>>2],f[0]),pd=bd+64|0,dd=(b[0]=a[pd>>2],b[1]=a[pd+4>>2],f[0]),nd=0==(a[Ic>>2]|0)?dd:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-dd;Ma(da,Gf|0,(j=h,h+=16,f[0]=qd,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=nd,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(Fc,hv|0,da)}Lb=Nc;Mb=Gc}}}while(0);var zd=yb(c,Kb);if(0==(zd|0)){mb=Lb;Jb=Mb;break b}else{Hb=Mb,ic=Lb,Kb=zd,q=Kb>>2}}}}else{mb=xa,Jb=ea}}while(0);var od=ba(c,Z);if(0==(od|0)){ja=Jb;aa=mb;break a}else{ea=Jb,xa=mb,Z=od}}}}while(0);mv(c,R);uc(w);0!=(D[c+164>>1]&1)<<16>>16&&oF(c);a[d>>2]=ja;a[i>>2]=aa;Gg(0);h=t}function kv(c,d,i){var g,q=h;h+=1024;g=(d+48|0)>>2;var e=a[g];if(0==(e|0)){var e=q|0,l=d+16|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=c+32|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);if(0==(a[Ic>>2]|0)){var n=d+24|0,m=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=c+40|0,p=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=d+40|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+p,m=m+p}else{var m=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0]),n=d+24|0,p=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=c+40|0,s=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=d+40|0,n=m-((b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+s),m=m-(p+s)}p=d+32|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])+k;Ma(e,VJ|0,(j=h,h+=32,f[0]=l+k,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=m,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=p,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=n,a[j+24>>2]=b[0],a[j+28>>2]=b[1],j));db(i,e);e=a[g]}if(0<(e|0)){d=d+56|0;for(e=0;!(kv(c,a[a[d>>2]+(e<<2)>>2],i),e=e+1|0,(e|0)>=(a[g]|0));){}}h=q}function mv(c,d){var i=h;h+=1024;var g=i|0,q=c+52|0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);if(0==(a[Ic>>2]|0)){var e=c+60|0,l=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),e=c+76|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])}else{var e=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0]),l=c+60|0,l=e-(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=c+76|0,e=e-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])}k=c+68|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);Ma(g,WJ|0,(j=h,h+=32,f[0]=q,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=k,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=e,a[j+24>>2]=b[0],a[j+28>>2]=b[1],j));q=c|0;qc(q,a[d+8>>2],g);e=c+48|0;k=a[e>>2];0!=(k|0)&&0!=m[a[k>>2]]<<24>>24&&(l=k+56|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=k+64|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=0==(a[Ic>>2]|0)?k:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-k,Ma(g,Gf|0,(j=h,h+=16,f[0]=l,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=k,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),yd(q,fj|0,g),l=a[e>>2],e=l+24|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),l=l+32|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),Ma(g,Gl|0,(j=h,h+=8,f[0]=e/72,a[j>>2]=b[0],a[j+4>>2]=b[1],j)),yd(q,yp|0,g),Ma(g,Gl|0,(j=h,h+=8,f[0]=l/72,a[j>>2]=b[0],a[j+4>>2]=b[1],j)),yd(q,zp|0,g));g=c+208|0;if(1<=(a[g>>2]|0)){q=c+212|0;for(e=1;!(mv(a[a[q>>2]+(e<<2)>>2],d),e=e+1|0,(e|0)>(a[g>>2]|0));){}}h=i}function Ap(c,d,i){var g=h;h+=1024;var q=g|0;if(0==(a[Ic>>2]|0)){var e=i,l=0}else{e=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-i,l=1}i=0>e?(l?(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-i:i)-.5:(l?(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-i:i)+.5;Ma(q,Hl|0,(j=h,h+=8,a[j>>2]=(0>d?d-.5:d+.5)&-1,a[j+4>>2]=i&-1,j));db(c,q);h=g}function An(c,d,i){var g=h;h+=256;if(999==(XJ(c,i)|0)){return d=nv(c,1,i),la(1,ov|0,(j=h,h+=8,a[j>>2]=i,a[j+4>>2]=d,j)),h=g,-1}YJ(c,d);var i=g|0,q=d+52|0;if(0==m[a[d+44>>2]+81|0]<<24>>24){var c=q|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),q=d+60|0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),e=d+68|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),l=d+76|0}else{c=d+60|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),q|=0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),e=d+76|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),l=d+68|0}l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);Ma(i,ZJ|0,(j=h,h+=16,a[j>>2]=(0>c?c-.5:c+.5)&-1,a[j+4>>2]=(0>q?q-.5:q+.5)&-1,a[j+8>>2]=(0>e?e-.5:e+.5)&-1,a[j+12>>2]=(0>l?l-.5:l+.5)&-1,j));$J(d|0,iv|0,i,Y|0);h=g;return 0}function xr(b,c){var i;i=a[c>>2];var d,f=Cb(12);d=f>>2;a[d+1]=0;a[d+2]=Hb(i);i=b+100|0;a[d]=a[i>>2];a[i>>2]=f;d=a[c+4>>2];i=a[d+4>>2];if(0!=(i|0)){var e=i;for(i=e>>2;;){var l=a[i+1],k=0==(l|0);a:do{if(!k){for(var h=d|0,j=0,p=l;;){if(aK(b,a[h>>2],p,a[i+(5*j|0)+2],f,e+20*j|0),j=j+1|0,p=a[i+(5*j|0)+1],0==(p|0)){break a}}}}while(0);i=a[d+12>>2];if(0==(i|0)){break}else{d=d+8|0,e=i,i=e>>2}}}}function OD(b){var c,i=b>>2,d=h,f=a[i+19],e=a[i];if(0==(f|0)){c=994}else{if(f=a[f>>2],0==(f|0)){c=994}else{J[f](b)}}if(994==c&&0==(a[i+10]|0)&&(c=(b+36|0)>>2,0==(a[c]|0))){if(0!=m[e+13|0]<<24>>24&&bK(b),b=b+32|0,e=a[b>>2],0==(e|0)){a[c]=a[zg>>2]}else{if(e=qi(e,au|0),a[c]=e,0==(e|0)){return i=a[a[i+3]+16>>2],b=a[b>>2],c=si(a[Ea.c>>2]),J[i](cK|0,(j=h,h+=8,a[j>>2]=b,a[j+4>>2]=c,j)),h=d,1}}}if(0==(a[i+37]&1024|0)){return h=d,0}J[a[a[i+3]+16>>2]](pv|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));h=d;return 1}function Bp(b,c){if(-1e15>c){a[b>>2]=19;var i=qv|0;return i}if(1e15>2]=18,i=qv+1|0}var i=100*c,d=(0>i?i-.5:i+.5)&-1;if(0==(d|0)){return a[b>>2]=1,i=vd|0}for(var i=0>(d|0),f=0,d=i?-d|0:d,e=rv+20|0,l=2;;){var k=(d|0)%10,h=(d|0)/10&-1;0==(k|0)&0==f<<24>>24?k=e:(f=e-1|0,m[f]=(k|48)&255,k=f,f=1);1==(l|0)&&(0!=f<<24>>24&&(k=k-1|0,m[k]=46),f=1);l=l-1|0;if(18<(d+9|0)>>>0|0<(l|0)){d=h,e=k}else{break}}i?(i=k-1|0,m[i]=45):i=k;a[b>>2]=rv+20-i|0;return i}function bK(b){var c=h;h+=100;var i=a[b+24>>2],d=c|0;0==(i|0)?m[d]=0:Ma(d,dK|0,(j=h,h+=4,a[j>>2]=i+1|0,j));var i=a[b+20>>2],f=0==(i|0)?eK|0:i,i=b+52|0,e=Ba(f)+Ba(d)+Ba(a[i>>2])+1|0;a[sv>>2]>>>0<(e+1|0)>>>0?(e=e+11|0,a[sv>>2]=e,e=mc(a[ig>>2],e),a[ig>>2]=e):e=a[ig>>2];Rf(e,f);uf(a[ig>>2],d);d=a[ig>>2];d=d+Ba(d)|0;Pb=46;m[d]=Pb&255;Pb>>=8;m[d+1]=Pb&255;d=Hb(a[i>>2]);i=ik(d,58);f=a[ig>>2];if(0==(i|0)){var l;uf(f,d)}else{for(;;){if(uf(f,i+1|0),f=a[ig>>2],e=f+Ba(f)|0,Pb=46,m[e]=Pb&255,Pb>>=8,m[e+1]=Pb&255,m[i]=0,i=ik(d,58),0==(i|0)){l=f;break}}uf(l,d)}G(d);l=a[ig>>2];b=b+32|0;a[b>>2]=l;h=c}function y(a,b){jg(a,b,Ba(b))}function sI(a,b){var i=h;h+=4;m[i]=b&255;jg(a,i,1);h=i}function iD(b){var c=a[b+36>>2];if(0!=(c|0)&&0==m[b+140|0]<<24>>24&&0==(a[a[b>>2]+116>>2]|0)){b=(function(a){Q.a[a]&&Q.a[a].object.l&&(Q.a[a].aa||Q.a[a].object.l(xc))});try{if(0===c){for(c=0;c>2]=arguments[N.length];var f=i|0;jg(b,f,JQa(f,c,a[d>>2]));h=i}function gj(b,c){var i=h;h+=4;jg(b,Bp(i,c),a[i>>2]);h=i}function Hd(b,c,i){var d=h;h+=4;jg(b,Bp(d,c),a[d>>2]);jg(b,gc|0,1);jg(b,Bp(d,i),a[d>>2]);h=d}function kf(c,d,i){var g=d|0,q=d+8|0;Hd(c,(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]));if(1<(i|0)){for(g=1;;){jg(c,gc|0,1);var q=(g<<4)+d|0,e=(g<<4)+d+8|0;Hd(c,(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]));g=g+1|0;if((g|0)==(i|0)){break}}}}function XJ(b,c){var i;i=eh(b,1,c);if(0==(i|0)){return 999}i=a[i+16>>2]>>2;a[b+156>>2]=a[i+1];a[b+144>>2]=a[i+3];a[b+148>>2]=a[i];a[b+152>>2]=a[i+4];return 300}function YJ(b,c){var i=h;a[c+172>>2]=b;var d=c+32|0,f=a[d>>2];(f|0)!=(c|0)&&(a[f+172>>2]=b);f=V(c|0,tv|0);if(0!=(f|0)&&999==(XJ(b,f)|0)){return d=nv(b,1,f),la(1,ov|0,(j=h,h+=8,a[j>>2]=f,a[j+4>>2]=d,j)),h=i,-1}f=a[b+144>>2];if(0==(f|0)){return h=i,-1}Gg(1);uI(c,a[a[b+152>>2]>>2]&1);a[a[d>>2]+44>>2]=a[c+44>>2];d=a[f>>2];0!=(d|0)&&(J[d](c),d=a[f+4>>2],0!=(d|0)&&(a[c+176>>2]=d));Gg(0);h=i;return 0}function jg(b,c,i){var d=h;if(0==(i|0)|0==(c|0)){return h=d,0}0!=(a[b+148>>2]&1024|0)&&(J[a[a[b+12>>2]+16>>2]](pv|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe());if((fK(b,c,i)|0)==(i|0)){return h=d,i}J[a[a[b+12>>2]+16>>2]](gK|0,(j=h,h+=4,a[j>>2]=i,j));Pe()}function fK(b,c,i){var d,f,e=h;d=a[a[b>>2]+116>>2];if(0!=(d|0)){return i=J[d](b,c,i),h=e,i}f=(b+40|0)>>2;var l=a[f];if(0==(l|0)){return i=Lc(c,1,i,a[b+36>>2]),h=e,i}var k=b+44|0;d=(b+48|0)>>2;var n=a[d];if((a[k>>2]-1-n|0)>>>0>>0){if(n=n+(i+4096)&-4096,a[k>>2]=n,l=mc(l,n),a[f]=l,0==(l|0)){J[a[a[b+12>>2]+16>>2]](hK|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe()}else{var z=l,p=a[d]}}else{z=l,p=n}tf(z+p|0,c,i);b=a[d]+i|0;a[d]=b;m[a[f]+b|0]=0;h=e;return i}function iK(b){var c=h,i=a[b+76>>2];0!=(a[b+148>>2]&1024|0)&&(J[a[a[b+12>>2]+16>>2]](jK|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe());if(0!=(i|0)&&(i=a[i+8>>2],0!=(i|0))){J[i](b);h=c;return}iD(b);i=b+32|0;if(0!=(a[i>>2]|0)){var d=b+36|0,f=a[d>>2];(f|0)!=(a[zg>>2]|0)&&0==m[b+140|0]<<24>>24&&(0!=(f|0)&&(ri(f),a[d>>2]=0),a[i>>2]=0)}h=c}function kK(c,d,i,g){var q,e;q=c>>2;if(3==(d|0)){uv(c,i,g),m[c+530|0]=1,m[c+533|0]=3,m[c+529|0]=1}else{if(2==(d|0)){m[c+530|0]=1,m[c+533|0]=2,m[c+529|0]=1}else{if(4==(d|0)){m[c+528|0]=0;if(0==(a[q+89]|0)){var l=.10000000000000009*(i-.5*(a[q+110]>>>0)),d=c+348|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),k=c+512|0;e=(c+332|0)>>2;l=l/(d*(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]))+(b[0]=a[e],b[1]=a[e+1],f[0]);f[0]=l;a[e]=b[0];a[e+1]=b[1];l=c+520|0;e=(c+340|0)>>2;q=.10000000000000009*(g-.5*(a[q+111]>>>0))/(d*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]))+(b[0]=a[e],b[1]=a[e+1],f[0])}else{e=.10000000000000009*(g-.5*(a[q+111]>>>0)),d=c+348|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),l=c+520|0,l=e/(d*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),e=(c+332|0)>>2,l=(b[0]=a[e],b[1]=a[e+1],f[0])-l,f[0]=l,a[e]=b[0],a[e+1]=b[1],l=c+512|0,e=(c+340|0)>>2,q=.10000000000000009*(i-.5*(a[q+110]>>>0))/(d*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]))+(b[0]=a[e],b[1]=a[e+1],f[0])}f[0]=q;a[e]=b[0];a[e+1]=b[1];q=d;d=c+348|0;f[0]=1.1*q;a[d>>2]=b[0];a[d+4>>2]=b[1];m[c+529|0]=1}else{5==(d|0)?(m[c+528|0]=0,e=(c+348|0)>>2,d=(b[0]=a[e],b[1]=a[e+1],f[0])/1.1,f[0]=d,a[e]=b[0],a[e+1]=b[1],0==(a[q+89]|0)?(e=c+512|0,l=.10000000000000009*(i-.5*(a[q+110]>>>0))/(d*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])),e=(c+332|0)>>2,l=(b[0]=a[e],b[1]=a[e+1],f[0])-l,f[0]=l,a[e]=b[0],a[e+1]=b[1],e=c+520|0,d=.10000000000000009*(g-.5*(a[q+111]>>>0))/(d*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))):(l=c+520|0,e=(c+332|0)>>2,l=.10000000000000009*(g-.5*(a[q+111]>>>0))/(d*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]))+(b[0]=a[e],b[1]=a[e+1],f[0]),f[0]=l,a[e]=b[0],a[e+1]=b[1],e=c+512|0,d=.10000000000000009*(i-.5*(a[q+110]>>>0))/(d*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))),q=(c+340|0)>>2,d=(b[0]=a[q],b[1]=a[q+1],f[0])-d,f[0]=d,a[q]=b[0],a[q+1]=b[1],m[c+529|0]=1):1==(d|0)&&(uv(c,i,g),lK(c),m[c+530|0]=1,m[c+533|0]=1,m[c+529|0]=1)}}}q=c+552|0;f[0]=i;a[q>>2]=b[0];a[q+4>>2]=b[1];c=c+560|0;f[0]=g;a[c>>2]=b[0];a[c+4>>2]=b[1]}function mK(c,d,i){var g,q,e,l,k;k=(c+552|0)>>2;l=c+512|0;e=(d-(b[0]=a[k],b[1]=a[k+1],f[0]))/(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);l=(c+560|0)>>2;g=c+520|0;g=(i-(b[0]=a[l],b[1]=a[l+1],f[0]))/(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);var h=e&-1;if(1>((-1<(h|0)?h:-h|0)|0)){if(h=g&-1,1>((-1<(h|0)?h:-h|0)|0)){return}}h=m[c+533|0]&255;0==(h|0)?uv(c,d,i):2==(h|0)&&(q=0==(a[c+356>>2]|0),h=c+348|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),q?(q=(c+332|0)>>2,e=(b[0]=a[q],b[1]=a[q+1],f[0])-e/h,f[0]=e,a[q]=b[0],a[q+1]=b[1],e=(c+340|0)>>2,g=(b[0]=a[e],b[1]=a[e+1],f[0])-g/h,f[0]=g,a[e]=b[0],a[e+1]=b[1]):(q=(c+332|0)>>2,g=(b[0]=a[q],b[1]=a[q+1],f[0])-g/h,f[0]=g,a[q]=b[0],a[q+1]=b[1],g=(c+340|0)>>2,e=(b[0]=a[g],b[1]=a[g+1],f[0])+e/h,f[0]=e,a[g]=b[0],a[g+1]=b[1]),m[c+529|0]=1);f[0]=d;a[k]=b[0];a[k+1]=b[1];f[0]=i;a[l]=b[0];a[l+1]=b[1]}function nK(b,c,i){var d=a[b>>2];if(0==(c|0)){c=xn(oK|0,1);a[b+32>>2]=pK|0;var f=c}else{c=qi(c,cj|0);if(0==(c|0)){return}vC(c);zr();f=a[qa+16>>2];ri(c)}if(0!=(f|0)){var c=(d+128|0)>>2,e=a[c];if(0!=(e|0)){var l=a[d+144>>2];0!=(l|0)&&(l=a[l+4>>2],0!=(l|0)&&(J[l](e),e=a[c]));xC(e);Sf(a[c])}a[c]=f;a[f+172>>2]=d;An(d,f,i);a[b+572>>2]=0;a[b+568>>2]=0;m[b+529|0]=1}}function uv(c,d,i){var g=h;h+=48;var q=g+32,e;e=0==(a[c+356>>2]|0);var l=c+348|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);if(e){e=c+512|0;var k=c+496|0,d=d/(l*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);e=c+520|0;k=c+504|0;l=i/(l*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);e=(q|0)>>2;f[0]=d}else{e=c+520|0,k=c+496|0,i=i/(l*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=c+512|0,k=c+504|0,l=-d/(l*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=(q|0)>>2,f[0]=i}a[e]=b[0];a[e+1]=b[1];d=q+8|0;d>>=2;f[0]=l;a[d]=b[0];a[d+1]=b[1];l=q|0;l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);q=q+8|0;q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);d=c+348|0;d=1/(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);i=g+16|0;f[0]=l+d;a[i>>2]=b[0];a[i+4>>2]=b[1];i=g+24|0;f[0]=q+d;a[i>>2]=b[0];a[i+4>>2]=b[1];i=g|0;f[0]=l-d;a[i>>2]=b[0];a[i+4>>2]=b[1];l=g+8|0;f[0]=q-d;a[l>>2]=b[0];a[l+4>>2]=b[1];var n,q=a[a[c>>2]+128>>2],d=h,i=g>>2,l=h;h+=32;a[l>>2]=a[i];a[l+4>>2]=a[i+1];a[l+8>>2]=a[i+2];a[l+12>>2]=a[i+3];a[l+16>>2]=a[i+4];a[l+20>>2]=a[i+5];a[l+24>>2]=a[i+6];a[l+28>>2]=a[i+7];i=ra(q);a:for(;;){if(0==(i|0)){n=1222;break}for(var j=Ib(q,i);0!=(j|0);){b:{var p=j;e=l;var s=cc,k=h,s=e>>2;e=h;h+=32;a[e>>2]=a[s];a[e+4>>2]=a[s+1];a[e+8>>2]=a[s+2];a[e+12>>2]=a[s+3];a[e+16>>2]=a[s+4];a[e+20>>2]=a[s+5];a[e+24>>2]=a[s+6];a[e+28>>2]=a[s+7];var v=a[p+24>>2],s=0==(v|0);c:do{if(!s&&0!=(GQa(v+8|0,e)|0)){for(var s=v+4|0,v=v|0,t=0;;){if((t|0)>=(a[s>>2]|0)){break c}if(0==rF(a[v>>2]+48*t|0,e)<<24>>24){t=t+1|0}else{var u=1;break}}h=k;e=u;break b}}while(0);u=a[p+108>>2];u=0!=(u|0)&&0!=as(u,e)<<24>>24?1:0;h=k;e=u}if(0!=e<<24>>24){n=1219;break a}j=yb(q,j)}i=ba(q,i)}do{if(1222==n){var w;w=a[q+20>>2];for(w=J[a[w>>2]](w,0,256);0!=(w|0);){if(0!=qF(w,l)<<24>>24){n=1225;break}u=a[q+20>>2];w=J[a[u>>2]](u,w|0,16)}1225==n?w|=0:(w=qK(q,l),w=0==(w|0)?q|0:w|0)}else{1219==n&&(w=j|0)}}while(0);h=d;n=w;j=c+568|0;(n|0)!=(a[j>>2]|0)&&(w=a[c+568>>2],0!=(w|0)&&(u=a[w>>2]<<28>>28,1==(u|0)?(w=w+133|0,m[w]&=-2):2==(u|0)?(w=w+127|0,m[w]&=-2):3==(u|0)&&(w=w+148|0,m[w]&=-2)),a[c+576>>2]=0,a[j>>2]=n,rK(c),m[c+529|0]=1);h=g}function rK(b){var c,i;i=(b+576|0)>>2;c=a[i];0!=(c|0)&&(G(c),a[i]=0);b=a[b+568>>2];c=b>>2;if(0!=(b|0)){var d=a[c]<<28>>28;2==(d|0)?(d=b+127|0,m[d]|=1,c=$(a[a[a[a[c+3]+20>>2]+40>>2]+4>>2]|0,Pi|0),0!=(c|0)&&(a[i]=ec(mb(b,a[c+8>>2]),b))):1==(d|0)?(d=b+133|0,m[d]|=1,c=$(a[a[a[c+5]+40>>2]>>2]|0,Pi|0),0!=(c|0)&&(a[i]=ec(mb(b,a[c+8>>2]),b))):3==(d|0)&&(d=b+148|0,m[d]|=1,c=$(a[c+8]|0,Pi|0),0!=(c|0)&&(a[i]=ec(mb(b,a[c+8>>2]),b)))}}function qK(c,d){var i,g=h;i=d>>2;d=h;h+=32;a[d>>2]=a[i];a[d+4>>2]=a[i+1];a[d+8>>2]=a[i+2];a[d+12>>2]=a[i+3];a[d+16>>2]=a[i+4];a[d+20>>2]=a[i+5];a[d+24>>2]=a[i+6];a[d+28>>2]=a[i+7];var q;i=a[c+208>>2];for(var e=c+212|0,l=1;(l|0)<=(i|0);){var k=qK(a[a[e>>2]+(l<<2)>>2],d);if(0==(k|0)){l=l+1|0}else{var n=k;q=1259;break}}if(1259==q){return h=g,n}q=c+52|0;i=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);q=c+60|0;q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);n=c+76|0;n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);e=d+16|0;if((b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])>=i){if(i=c+68|0,e=d|0,(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])>=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])){if(i=d+24|0,(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])>=q){if(q=d+8|0,n>=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0])){return h=g,c}}}}h=g;return 0}function lK(b){var c=b+572|0,i=a[c>>2];if(0!=(i|0)){var d=a[i>>2]<<28>>28;1==(d|0)?(i=i+133|0,m[i]=m[i]&-7|4):2==(d|0)?(i=i+127|0,m[i]=m[i]&-7|4):3==(d|0)&&(i=i+148|0,m[i]=m[i]&-7|4)}i=b+580|0;d=a[i>>2];0!=(d|0)&&(G(d),a[i>>2]=0);i=a[b+568>>2];a[c>>2]=i;0!=(i|0)&&(c=a[i>>2]<<28>>28,3==(c|0)?(c=i+148|0,m[c]|=2,vv(b,i)):2==(c|0)?(c=i+127|0,m[c]|=2,sK(b,i)):1==(c|0)&&(c=i+133|0,m[c]|=2,tK(b,i)))}function vv(b,c){var i,d;i=b+584|0;d=(c+32|0)>>2;(a[d]|0)==(c|0)?0==(a[c>>2]&16|0)?Fc(i,0,Yf|0):Fc(i,0,wv|0):Fc(i,0,uK|0);Fc(i,1,a[c+12>>2]);a[b+588>>2]=2;var f=b+596|0;i=(c+16|0)>>2;var e=0<(rc(a[a[a[i]+12>>2]+4>>2])|0);a:do{if(e){for(var l=c|0,k=0,h=0;;){var j=a[a[a[a[i]+12>>2]+8>>2]+(h<<2)>>2];Fc(f,k,a[j>>2]);Fc(f,k+1|0,mb(l,a[j+8>>2]));j=k+3|0;Fc(f,k+2|0,0);h=h+1|0;if((h|0)<(rc(a[a[a[i]+12>>2]+4>>2])|0)){k=j}else{var p=j;break a}}}else{p=0}}while(0);a[b+600>>2]=p;p=$(a[d]|0,Ni|0);if(0==(p|0)){if(d=$(a[d]|0,Oi|0),0==(d|0)){return}}else{d=p}p=c|0;a[b+580>>2]=ec(mb(p,a[d+8>>2]),p)}function tK(b,c){var i,d;d=b+584|0;Fc(d,0,jh|0);Fc(d,1,a[c+12>>2]);a[b+588>>2]=2;var f=b+596|0;d=(c+20|0)>>2;i=(a[a[d]+32>>2]+16|0)>>2;var e=0<(rc(a[a[a[i]+4>>2]+4>>2])|0);a:do{if(e){for(var l=c|0,k=0,h=0;;){var j=a[a[a[a[i]+4>>2]+8>>2]+(h<<2)>>2];Fc(f,k,a[j>>2]);var p=k+2|0;Fc(f,k|1,mb(l,a[j+8>>2]));h=h+1|0;if((h|0)<(rc(a[a[a[i]+4>>2]+4>>2])|0)){k=p}else{var m=p;break a}}}else{m=0}}while(0);a[b+600>>2]=m;m=$(a[a[a[d]+40>>2]>>2]|0,Ni|0);if(0==(m|0)){if(d=$(a[a[a[d]+40>>2]>>2]|0,Oi|0),0==(d|0)){return}}else{d=m}m=c|0;a[b+580>>2]=ec(mb(m,a[d+8>>2]),m)}function sK(b,c){var i,d,f,e=b+584|0;Fc(e,0,Dg|0);d=c+16|0;Fc(e,1,a[a[d>>2]+12>>2]);Fc(e,3,0!=(a[a[a[d>>2]+20>>2]>>2]&16|0)?Bf|0:Af|0);d=(c+12|0)>>2;Fc(e,4,a[a[d]+12>>2]);a[b+588>>2]=7;var l=b+596|0;i=(a[a[a[d]+20>>2]+32>>2]+16|0)>>2;var k=0<(rc(a[a[a[i]+8>>2]+4>>2])|0);a:do{if(k){for(var h=c|0,j=0,p=0;;){var m=a[a[a[a[i]+8>>2]+8>>2]+(j<<2)>>2],v=m|0,t=a[v>>2];if(0==(ka(t,vi|0)|0)){f=m+8|0;Fc(e,2,mb(h,a[f>>2]));var u=f;f=1322}else{if(0==(ka(t,wi|0)|0)){f=m+8|0,Fc(e,5,mb(h,a[f>>2])),u=f,f=1322}else{if(m=m+8|0,0!=(ka(t,wr|0)|0)){u=m,f=1322}else{Fc(e,6,mb(h,a[m>>2]));var w=p}}}1322==f&&(f=0,Fc(l,p,a[v>>2]),Fc(l,p+1|0,mb(h,a[u>>2])),w=p+2|0);j=j+1|0;if((j|0)<(rc(a[a[a[i]+8>>2]+4>>2])|0)){p=w}else{var A=w;break a}}}else{A=0}}while(0);a[b+600>>2]=A;e=$(a[a[a[a[d]+20>>2]+40>>2]+4>>2]|0,Ni|0);if(0==(e|0)){if(d=$(a[a[a[a[d]+20>>2]+40>>2]+4>>2]|0,Oi|0),0==(d|0)){return}}else{d=e}e=c|0;a[b+580>>2]=ec(mb(e,a[d+8>>2]),e)}function wC(b,c){var i=b+120|0,d=a[i>>2];0==(d|0)?(d=fa(624),a[i>>2]=d,a[b+124>>2]=d,i=a[Kh>>2]=d):(i=a[Kh>>2],0==(i|0)?i=a[Kh>>2]=d:(i=a[i+4>>2],0==(i|0)&&(i=fa(624),a[a[Kh>>2]+4>>2]=i),a[Kh>>2]=i));a[i+52>>2]=c;a[i>>2]=b;eh(b,3,c)}function Fc(b,c,i){var d=b+8|0;if((a[d>>2]|0)>(c|0)){var f=a[b>>2]}else{f=c+10|0,a[d>>2]=f,b|=0,f=wb(a[b>>2],f<<2),a[b>>2]=f}c=(c<<2)+f|0;a[c>>2]=i}function vK(b){var c=b|0,i=a[c>>2];0!=(i|0)&&G(i);a[c>>2]=0;a[b+8>>2]=0;a[b+4>>2]=0}function Dr(b){var c,i=b+120|0,d=a[i>>2],f=0==(d|0);a:do{if(!f){var e=d;for(c=e>>2;;){var l=a[c+1];vK(e+596|0);vK(e+584|0);var k=a[c+144];0!=(k|0)&&G(k);c=a[c+145];0!=(c|0)&&G(c);G(e);if(0==(l|0)){break a}else{e=l,c=e>>2}}}}while(0);a[Kh>>2]=0;a[Lh>>2]=0;a[b+164>>2]=0;a[b+124>>2]=0;a[i>>2]=0;a[b+28>>2]=0}function aK(b,c,i,d,f,e){var l,k,n=h;h+=128;l=n|0;jk(l,i);var j=Jc(l,58);0!=(j|0)&&(m[j]=0);j=n+64|0;for(b=(c<<2)+b+60|0;;){c=a[b>>2];if(0==(c|0)){k=b;k>>=2;break}jk(j,a[c+4>>2]);c=Jc(j,58);0!=(c|0)&&(m[c]=0);if(1>(ka(l,j)|0)){k=b;k>>=2;break}b=a[b>>2]|0}for(;;){b=a[k];if(0==(b|0)){break}jk(j,a[b+4>>2]);b=Jc(j,58);0!=(b|0)&&(m[b]=0);if(0!=(ka(l,j)|0)){break}b=a[k];if((a[b+8>>2]|0)<=(d|0)){break}k=b|0;k>>=2}j=Cb(20);l=j>>2;a[l]=a[k];a[k]=j;a[l+1]=i;a[l+2]=d;a[l+3]=f;a[l+4]=e;h=n;return 1}function eh(b,c,i){var d,f=h;h+=128;var e,l=f+64,k=2>(c-3|0)>>>0?0:c,n=f|0;jk(n,i);i=Jc(n,58);if(0==(i|0)){var z=i=0}else{z=i+1|0,m[i]=0,i=Jc(z,58),0==(i|0)?i=0:(m[i]=0,i=i+1|0)}var l=l|0,p=0==(z|0),s=0==(i|0),v=(k|0)==(c|0);d=((c<<2)+b+60|0)>>2;a:for(;;){var t=a[d];if(0==(t|0)){var u=0;e=1413;break}jk(l,a[t+4>>2]);t=Jc(l,58);0==(t|0)?t=0:(m[t]=0,t=t+1|0);do{if(0==(ka(l,n)|0)){var w=0==(t|0);if(w|p||0==(ka(t,z)|0)){if(s||0==(ka(i,a[a[a[d]+12>>2]+8>>2])|0)){if(w|v){break a}if(0!=(eh(b,k,t)|0)){break a}}}}}while(0);d=a[d]|0;d>>=2}if(1413==e){return b=((c<<2)+b+80|0)>>2,a[b]=u,h=f,u}u=a[d];if(0==(u|0)){return u=0,b=((c<<2)+b+80|0)>>2,a[b]=u,h=f,u}e=u+16|0;k=a[e>>2];0==(k|0)?(k=h,la(1,wK|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),h=k,e=a[e>>2]):e=k;u=0==(e|0)?0:u;if(0==(u|0)){return u=0,b=((c<<2)+b+80|0)>>2,a[b]=u,h=f,u}if(0>=(a[b+8>>2]|0)){return b=((c<<2)+b+80|0)>>2,a[b]=u,h=f,u}e=a[Mh+(c<<2)>>2];k=a[u+4>>2];n=a[a[u+12>>2]+8>>2];Va(a[oa>>2],xK|0,(j=h,h+=12,a[j>>2]=e,a[j+4>>2]=k,a[j+8>>2]=n,j));b=((c<<2)+b+80|0)>>2;a[b]=u;h=f;return u}function nv(b,c,i){var d,f;m[xv]||(fc(Sb,0,0),m[xv]=1);var i=Hb(i),e=Jc(i,58);do{if(0==(e|0)){var l=(c<<2)+b+60|0;f=1432}else{m[e]=0;var k=(c<<2)+b+60|0;if(0==(e+1|0)){l=k,f=1432}else{var h=a[k>>2];if(0==(h|0)){G(i);var j=1,p=k;f=1434}else{d=k;d>>=2;for(var s=1;;){var h=Hb(a[h+4>>2]),v=Jc(h,58);0!=(v|0)&&(m[v]=0);if(0==m[i]<<24>>24){f=1426}else{if(0==(Lb(i,h)|0)){f=1426}else{var t=s}}1426==f&&(f=0,t=a[Sb+4>>2],t>>>0>2]>>>0||(na(Sb,1),t=a[Sb+4>>2]),a[Sb+4>>2]=t+1|0,m[t]=32,db(Sb,a[a[d]+4>>2]),t=a[Sb+4>>2],t>>>0>2]>>>0||(na(Sb,1),t=a[Sb+4>>2]),a[Sb+4>>2]=t+1|0,m[t]=58,db(Sb,a[a[a[d]+12>>2]+8>>2]),t=0);G(h);d=a[d]|0;h=a[d>>2];if(0==(h|0)){break}else{d>>=2,s=t}}G(i);0!=t<<24>>24&&(j=t,p=k,f=1434)}}}}while(0);1432==f&&(G(i),j=1,p=l,f=1434);do{if(1434==f){b=a[p>>2];do{if(0==(b|0)){var u=j;f=1445}else{c=p;l=0;i=j;for(e=b;;){var w=Hb(a[e+4>>2]),e=Jc(w,58);0!=(e|0)&&(m[e]=0);if(e=0!=(l|0)){if(0==(Lb(l,w)|0)){var A=i}else{f=1439}}else{f=1439}1439==f&&(f=0,A=a[Sb+4>>2],A>>>0>2]>>>0||(na(Sb,1),A=a[Sb+4>>2]),a[Sb+4>>2]=A+1|0,m[A]=32,db(Sb,w),e||G(0),A=0);c=a[c>>2]|0;e=a[c>>2];if(0==(e|0)){break}else{l=w,i=A}}if(0==(w|0)){u=A,f=1445}else{var B=A}}}while(0);1445==f&&(G(0),B=u);if(0!=B<<24>>24){return f=Y|0}}}while(0);f=a[Sb+4>>2];f>>>0>2]>>>0||(na(Sb,1),f=a[Sb+4>>2]);m[f]=0;f=a[Sb>>2];return a[Sb+4>>2]=f}function yv(c,d,i,g){var e=d+496|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),h=d+504|0,l=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),h=d+348|0,k=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),h=d+512|0,h=k*(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),n=d+520|0;0==(a[d+356>>2]|0)?(d=l+g,i=e+i):(d=e+i,i=-(l+g));g=d*k*(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);d=c|0;f[0]=i*h;a[d>>2]=b[0];a[d+4>>2]=b[1];c=c+8|0;f[0]=g;a[c>>2]=b[0];a[c+4>>2]=b[1]}function Re(c,d,i,g){var e=c+496|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),h=c+504|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),l=c+348|0,k=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=c+512|0,l=k*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),n=c+520|0,k=k*(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=0<(g|0);if(0==(a[c+356>>2]|0)){if(n){c=0}else{return i}for(;;){var n=(c<<4)+d|0,n=((b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+e)*l,j=(c<<4)+i|0;f[0]=n;a[j>>2]=b[0];a[j+4>>2]=b[1];n=(c<<4)+d+8|0;n=((b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+h)*k;j=(c<<4)+i+8|0;f[0]=n;a[j>>2]=b[0];a[j+4>>2]=b[1];c=c+1|0;if((c|0)==(g|0)){break}}}else{if(n){c=0}else{return i}for(;;){var n=(c<<4)+d+8|0,n=l*-((b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+h),j=(c<<4)+d|0,j=((b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])+e)*k,p=(c<<4)+i+8|0;f[0]=j;a[p>>2]=b[0];a[p+4>>2]=b[1];j=(c<<4)+i|0;f[0]=n;a[j>>2]=b[0];a[j+4>>2]=b[1];c=c+1|0;if((c|0)==(g|0)){break}}}return i}function Bn(b,c){var d,g,f,e=b>>2;d=a[e];eh(d,3,c);g=a[d+92>>2];if(0==(g|0)){return 999}f=a[g+16>>2]>>2;var l=a[f+3];a[e+19]=l;var k=a[f+4];a[e+21]=k;f=a[f];a[e+20]=f;a[e+22]=a[g+4>>2];g=(b+148|0)>>2;k=a[g]|a[k>>2];a[g]=k;var h=a[d+80>>2];if(0==(h|0)){return a[e+15]=0,999}d=a[h+16>>2]>>2;a[e+15]=a[d+3];var j=a[d+4];a[e+17]=j;a[e+18]=a[h+4>>2];a[g]=k|a[j>>2];a[e+16]=0==(l|0)?f:a[d];return 300}function Cr(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+4>>2],0!=(c|0))){J[c](b)}a[a[b>>2]+24>>2]=0;iK(b)}function Tr(b,c,d){var g=h;h+=4;a[d>>2]=c;a[d+32>>2]=5;a[g>>2]=ZH(c);var f=a[b+12>>2];0!=(f|0)&&0!=(tn(g,f,a[b+16>>2],4,128)|0)||(b=$H(c,d,a[b+20>>2]),1==(b|0)?(b=Cb(Ba(c)+16|0),Ma(b,yK|0,(j=h,h+=4,a[j>>2]=c,j)),0!=(nD(b)|0)&&la(0,zK|0,(j=h,h+=4,a[j>>2]=c,j)),G(b)):0!=(b|0)&&la(1,AK|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)));h=g}function mD(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+28>>2],0!=(c|0))){J[c](b)}}function xs(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+40>>2],0!=(c|0))){J[c](b)}}function ys(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+44>>2],0!=(c|0))){J[c](b)}}function vs(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+48>>2],0!=(c|0))){J[c](b)}}function ws(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+52>>2],0!=(c|0))){J[c](b)}}function WE(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+56>>2],0!=(c|0))){J[c](b)}}function ad(b,c,d,g,f){var e=a[b+60>>2];if(0!=(e|0)&&(e=a[e+72>>2],0!=(e|0))){J[e](b,c,d,g,f)}}function Se(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+76>>2],0!=(c|0))){J[c](b)}}function bG(b,c){var d=a[b+60>>2];if(0!=(d|0)&&(d=a[d+80>>2],0!=(d|0))){J[d](b,c)}}function cG(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+84>>2],0!=(c|0))){J[c](b)}}function As(c,d,i,g){var e=h;h+=16;var j=a[c+60>>2],l=a[g>>2];if(0!=(l|0)&&0!=m[l]<<24>>24){l=a[c+16>>2];if(0!=(l|0)&&0==(a[l+88>>2]|0)){h=e;return}0==(a[c+148>>2]&8192|0)&&(yv(e,c,d,i),d=e|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),i=e+8|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]));if(0!=(j|0)&&(j=a[j+88>>2],0!=(j|0))){J[j](c,d,i,g)}}h=e}function Pa(b,c){var d=a[b+60>>2],g=a[b+16>>2]+16|0,f=Jc(c,58),e=0!=(f|0);e&&(m[f]=0);if(0!=(d|0)&&(Tr(a[b+68>>2],c,g),d=a[d+92>>2],0!=(d|0))){J[d](b,g)}e&&(m[f]=58)}function $b(b,c){var d=a[b+60>>2],g=a[b+16>>2]+52|0,f=Jc(c,58),e=0!=(f|0);e&&(m[f]=0);if(0!=(d|0)&&(Tr(a[b+68>>2],c,g),d=a[d+92>>2],0!=(d|0))){J[d](b,g)}e&&(m[f]=58)}function Zr(c,d){if(0!=(a[c+60>>2]|0)){var i=a[c+16>>2]+96|0;f[0]=d;a[i>>2]=b[0];a[i+4>>2]=b[1]}}function BK(b,c,d,g){if(0==(c|0)){c=g=-1}else{var f=a[c+48>>2];0!=(f|0)&&(d=g=f|0);f=g;g=(72*a[c+40>>2]|0)/d&-1;c=(72*a[c+44>>2]|0)/f&-1}a[b>>2]=g;a[b+4>>2]=c}function Ke(c,d){var i,g,e=h,Xa;i=a[c+60>>2];var l=a[c+16>>2];a[l+104>>2]=d;if(!(0==(i|0)|0==(d|0))){var k=a[d>>2];if(0!=(k|0)){g=(l+88|0)>>2;i=(l+96|0)>>2;for(var l=l+92|0,n=d;;){var n=n+4|0,z=m[k];a:do{if(100==z<<24>>24){0==(ka(k,CK|0)|0)?a[g]=1:0==(ka(k,DK|0)|0)?a[g]=2:Xa=102==z<<24>>24?1818:117==z<<24>>24?1820:1822}else{if(115==z<<24>>24){if(0==(ka(k,wp|0)|0)){a[g]=3}else{if(0==(ka(k,Cp|0)|0)){for(var p=k,s=0;;){var v=p+1|0;if(s){break}p=v;s=0==m[v]<<24>>24}p=wg(v,xc);f[0]=p;a[i]=b[0];a[i+1]=b[1]}else{Xa=1822}}}else{if(105==z<<24>>24){do{if(0!=(ka(k,qh|0)|0)&&0!=(ka(k,EK|0)|0)){Xa=98==z<<24>>24?1811:102==z<<24>>24?1818:117==z<<24>>24?1820:1822;break a}}while(0);a[g]=0}else{Xa=98==z<<24>>24?1811:102==z<<24>>24?1818:117==z<<24>>24?1820:1822}}}}while(0);1811==Xa?(Xa=0,0!=(ka(k,Wb|0)|0)?Xa=1822:(f[0]=2,a[i]=b[0],a[i+1]=b[1])):1818==Xa?(Xa=0,0!=(ka(k,Hi|0)|0)?Xa=1822:a[l>>2]=1):1820==Xa&&(Xa=0,0!=(ka(k,FK|0)|0)?Xa=1822:a[l>>2]=0);1822==Xa&&(Xa=0,la(0,GK|0,(j=h,h+=4,a[j>>2]=k,j)));k=a[n>>2];if(0==(k|0)){break}}}}h=e}function Qk(c,d,i){var g,e=h;h+=32;var j=a[c+60>>2];if(0!=(j|0)&&(j=j+96|0,0!=(a[j>>2]|0)&&0!=(a[a[c+16>>2]+88>>2]|0))){var l=d|0;g=d+16|0;var k=g|0,k=.5*((b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),l=e|0,n=e|0;f[0]=k;a[n>>2]=b[0];a[n+4>>2]=b[1];k=d+8|0;d=d+24|0;d=.5*((b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])+(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]));k=e+8|0;f[0]=d;a[k>>2]=b[0];a[k+4>>2]=b[1];d=(e+16|0)>>2;g>>=2;a[d]=a[g];a[d+1]=a[g+1];a[d+2]=a[g+2];a[d+3]=a[g+3];0==(a[c+148>>2]&8192|0)&&Re(c,l,l,2);J[a[j>>2]](c,l,i&255)}h=e}function zc(b,c,d,g){var f=a[b+60>>2];if(0!=(f|0)){var f=f+100|0,e=a[f>>2];if(0!=(e|0)&&0!=(a[a[b+16>>2]+88>>2]|0)){if(0!=(a[b+148>>2]&8192|0)){J[e](b,c,d,g&255)}else{(a[Nh>>2]|0)<(d|0)?(e=d+10|0,a[Nh>>2]=e,e=wb(a[Hf>>2],e<<4),a[Hf>>2]=e):e=a[Hf>>2],Re(b,c,e,d),J[a[f>>2]](b,e,d,g&255)}}}}function mh(c,d,i){var g,e,j=h;h+=64;e=d>>2;d=h;h+=32;a[d>>2]=a[e];a[d+4>>2]=a[e+1];a[d+8>>2]=a[e+2];a[d+12>>2]=a[e+3];a[d+16>>2]=a[e+4];a[d+20>>2]=a[e+5];a[d+24>>2]=a[e+6];a[d+28>>2]=a[e+7];g=j>>2;e=d>>2;a[g]=a[e];a[g+1]=a[e+1];a[g+2]=a[e+2];a[g+3]=a[e+3];e=j+32|0;g=e>>2;d=(d+16|0)>>2;a[g]=a[d];a[g+1]=a[d+1];a[g+2]=a[d+2];a[g+3]=a[d+3];d=j|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);g=j+16|0;f[0]=d;a[g>>2]=b[0];a[g+4>>2]=b[1];d=j+40|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);g=j+24|0;f[0]=d;a[g>>2]=b[0];a[g+4>>2]=b[1];e|=0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);d=j+48|0;f[0]=e;a[d>>2]=b[0];a[d+4>>2]=b[1];e=j+8|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);d=j+56|0;f[0]=e;a[d>>2]=b[0];a[d+4>>2]=b[1];zc(c,j|0,4,i);h=j}function $f(b,c,d,g,f,e){var l=a[b+60>>2];if(0!=(l|0)){var l=l+104|0,k=a[l>>2];if(0!=(k|0)&&0!=(a[a[b+16>>2]+88>>2]|0)){if(0!=(a[b+148>>2]&8192|0)){J[k](b,c,d,g,f,e&255)}else{(a[Nh>>2]|0)<(d|0)?(k=d+10|0,a[Nh>>2]=k,k=wb(a[Hf>>2],k<<4),a[Hf>>2]=k):k=a[Hf>>2],Re(b,c,k,d),J[a[l>>2]](b,k,d,g,f,e&255)}}}}function Gd(b,c,d){var g=a[b+60>>2];if(0!=(g|0)){var g=g+108|0,f=a[g>>2];if(0!=(f|0)&&0!=(a[a[b+16>>2]+88>>2]|0)){if(0!=(a[b+148>>2]&8192|0)){J[f](b,c,d)}else{(a[Nh>>2]|0)<(d|0)?(f=d+10|0,a[Nh>>2]=f,f=wb(a[Hf>>2],f<<4),a[Hf>>2]=f):f=a[Hf>>2],Re(b,c,f,d),J[a[g>>2]](b,f,d)}}}}function yk(b,c){var d=a[b+60>>2];if(0!=(c|0)&&!(0==m[c]<<24>>24|0==(d|0))&&(d=a[d+112>>2],0!=(d|0))){J[d](b,c)}}function ut(c,d,i,g,e,Xa){var l,k,n,z,p,s,v,t,u,w=h;h+=72;u=w+32;k=w+40;l=w+56;var A=a[c+60>>2],B=HK(d);if(0==(B|0)){if(!(0==(Is(d)|0)|0==(A|0))&&(B=a[A+116>>2],0!=(B|0))){J[B](c,d,i,g,e&255)}}else{var d=c+424|0,C=c+432|0;BK(u,B,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]));var C=a[u>>2],y=a[u+4>>2];if(!(1>(C|0)&1>(y|0))){n=w+16|0;u=n>>2;p=i>>2;a[u]=a[p];a[u+1]=a[p+1];a[u+2]=a[p+2];a[u+3]=a[p+3];d=w>>2;a[d]=a[p];a[d+1]=a[p+1];a[d+2]=a[p+2];a[d+3]=a[p+3];if(1<(g|0)){t=(w|0)>>2;v=(w+8|0)>>2;s=(n|0)>>2;p=(w+24|0)>>2;for(var T=(b[0]=a[t],b[1]=a[t+1],f[0]),D=(b[0]=a[v],b[1]=a[v+1],f[0]),F=1,M=T,T=(b[0]=a[s],b[1]=a[s+1],f[0]),X=(b[0]=a[p],b[1]=a[p+1],f[0]);;){z=(F<<4)+i|0;var O=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),E=M>2],b[1]=a[z+4>>2],f[0]);z=DO?T:O;G=X>G?X:G;F=F+1|0;if((F|0)==(g|0)){break}else{M=E,D=z,T=O,X=G}}f[0]=G;a[p]=b[0];a[p+1]=b[1];f[0]=O;a[s]=b[0];a[s+1]=b[1];f[0]=z;a[v]=b[0];a[v+1]=b[1];f[0]=E;a[t]=b[0];a[t+1]=b[1];p=E;E=G;G=z}else{i=n|0,z=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),i=w|0,E=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),g=w+24|0,i=w+8|0,O=z,p=E,E=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),G=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])}z=(n|0)>>2;g=(w|0)>>2;v=O-p;i=(w+24|0)>>2;n=(w+8|0)>>2;s=E-G;y|=0;C|=0;t=v/C;F=s/y;Xa=0==m[Xa]<<24>>24?0:0==(Lb(Xa,rp|0)|0)?2:0==(Lb(Xa,qp|0)|0)?3:0==(Lb(Xa,zv|0)|0)?4:0!=re(Xa)<<24>>24&1;1==(Xa|0)?t>2]&8192|0)?(yv(k,c,C,Xa),k>>=2,a[d]=a[k],a[d+1]=a[k+1],a[d+2]=a[k+2],a[d+3]=a[k+3],yv(l,c,(b[0]=a[z],b[1]=a[z+1],f[0]),(b[0]=a[i],b[1]=a[i+1],f[0])),l>>=2,a[u]=a[l],a[u+1]=a[l+1],a[u+2]=a[l+2],a[u+3]=a[l+3],l=(b[0]=a[g],b[1]=a[g+1],f[0]),k=(b[0]=a[z],b[1]=a[z+1],f[0])):(l=C,k=y);l>k&&(f[0]=k,a[g]=b[0],a[g+1]=b[1],f[0]=l,a[z]=b[0],a[z+1]=b[1]);l=(b[0]=a[n],b[1]=a[n+1],f[0]);k=(b[0]=a[i],b[1]=a[i+1],f[0]);l>k&&(f[0]=k,a[n]=b[0],a[n+1]=b[1],f[0]=l,a[i]=b[0],a[i+1]=b[1]);if(0!=(A|0)){u=a[c+72>>2];l=h;h+=128;k=w>>2;A=h;h+=32;a[A>>2]=a[k];a[A+4>>2]=a[k+1];a[A+8>>2]=a[k+2];a[A+12>>2]=a[k+3];a[A+16>>2]=a[k+4];a[A+20>>2]=a[k+5];a[A+24>>2]=a[k+6];a[A+28>>2]=a[k+7];k=l|0;Rf(k,a[B+28>>2]);d=l+Ba(k)|0;Pb=58;m[d]=Pb&255;Pb>>=8;m[d+1]=Pb&255;uf(k,u);u=eh(a[c>>2],4,k);0==(u|0)?u=999:(u=a[u+16>>2],a[c+92>>2]=a[u+12>>2],a[c+96>>2]=a[u>>2],u=300);999==(u|0)&&la(0,IK|0,(j=h,h+=4,a[j>>2]=k,j));k=a[c+92>>2];if(0!=(k|0)&&(k=a[k>>2],0!=(k|0))){J[k](c,B,A,e)}h=l}}}h=w}function HK(b){var c=h;h+=64;var d=a[Il>>2];if(0==(d|0)){return h=c,0}a[c+8>>2]=b;b=J[a[d>>2]](d,c,4);h=c;return b}function JK(b){var c=h;0==(b|0)&&sa(Av|0,363,Bv|0,Oh|0);var d=b+8|0;0==(a[d>>2]|0)&&sa(Av|0,364,Bv|0,Ph|0);var g=b+20|0,f=a[g>>2];0==(f|0)?(d=Uk(a[d>>2]),0==(d|0)?b=1:(f=qi(d,cj|0),a[g>>2]=f,0==(f|0)?(b=si(a[Ea.c>>2]),la(0,KK|0,(j=h,h+=8,a[j>>2]=b,a[j+4>>2]=d,j)),b=0):(g=a[Cv>>2],49<(g|0)?m[b+17|0]=1:a[Cv>>2]=g+1|0,b=1))):(xg(f,0,0),b=1);h=c;return b}function LK(b){if(0!=m[b+17|0]<<24>>24){var b=b+20|0,c=a[b>>2];0!=(c|0)&&(ri(c),a[b>>2]=0)}}function oH(c,d,i){0!=(i|0)&&0!=m[i]<<24>>24?(d=a[d+44>>2]+24|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),d=1>d?96:d,BK(c,MK(i),d,d)):(a[c>>2]=-1,a[c+4>>2]=-1)}function MK(b){var c=h;if(0==(a[Il>>2]|0)){var d=Nc(NK,a[Xc>>2]);a[Il>>2]=d}d=HK(b);if(0==(d|0)){d=fa(64);if(0==(d|0)){return h=c,0}var g=d+8|0;a[g>>2]=b;if(0==JK(d)<<24>>24){return h=c,0}b=OK(d);if(4==(b|0)){PK(d)}else{if(3==(b|0)){var f,b=h;h+=8;g=b+4;a[d+48>>2]=0;f=(d+20|0)>>2;xg(a[f],16,0);0!=If(a[f],4,b)<<24>>24&&0!=If(a[f],4,g)<<24>>24&&(a[d+40>>2]=a[b>>2],a[d+44>>2]=a[g>>2]);h=b}else{if(0==(b|0)){return f=a[g>>2],b=Is(f),a[d+52>>2]=b,0==(b|0)&&la(0,QK|0,(j=h,h+=4,a[j>>2]=f,j)),G(d),h=c,0}if(6==(b|0)){b=d>>2;g=h;h+=1040;var e=g+1024,l=g+1028,k=g+1032,n=g+1036;a[b+12]=72;var m=d+20|0;xg(a[m>>2],0,0);for(var p=g|0;;){if(0==(oi(p,1024,a[m>>2])|0)){f=2073;break}var s=un(p,RK|0);if(0!=(s|0)&&4==(Cd(s,Nu|0,(j=h,h+=16,a[j>>2]=e,a[j+4>>2]=l,a[j+8>>2]=k,a[j+12>>2]=n,j))|0)){break}}2073!=f&&(f=a[e>>2],a[b+8]=f,l=a[l>>2],a[b+9]=l,a[b+10]=a[k>>2]-f|0,a[b+11]=a[n>>2]-l|0);h=g}else{1==(b|0)?(b=h,h+=16,g=b+4,k=b+8,n=b+12,a[d+48>>2]=0,f=(d+20|0)>>2,xg(a[f],16,0),0!=hj(a[f],b)<<24>>24&&0!=hj(a[f],g)<<24>>24&&0!=hj(a[f],k)<<24>>24&&0!=hj(a[f],n)<<24>>24&&(a[d+40>>2]=a[b>>2]<<16|a[g>>2],a[d+44>>2]=a[k>>2]<<16|a[n>>2]),h=b):2==(b|0)?(b=h,h+=8,g=b+4,a[d+48>>2]=0,f=(d+20|0)>>2,xg(a[f],6,0),0!=hj(a[f],b)<<24>>24&&0!=hj(a[f],g)<<24>>24&&(a[d+40>>2]=a[b>>2],a[d+44>>2]=a[g>>2]),h=b):8==(b|0)&&SK(d)}}}f=a[Il>>2];J[a[f>>2]](f,d,1)}LK(d);h=c;return d}function OK(b){var c=h;h+=220;var d,g=c+20,f=b+20|0,e=a[f>>2],l=0==(e|0);a:do{if(!l){var k=c|0;if(20==(lC(k,1,20,e)|0)){var e=b+28|0,l=b+24|0,g=g|0,n=0;b:for(;;){if(8<=n>>>0){break a}var j=0==(Ve(k,a[Qc+(n<<4)>>2],a[Qc+(n<<4)+4>>2])|0);c:do{if(j){a[e>>2]=a[Qc+(n<<4)+12>>2];var p=a[Qc+(n<<4)+8>>2];a[l>>2]=p;if(7!=(n|0)){var m=p;d=2012;break b}for(;;){if(0==(oi(g,200,a[f>>2])|0)){break c}if(0==(Ve(g,TK|0,4)|0)){break b}}}}while(0);n=n+1|0}if(2012==d){return h=c,m}a[e>>2]=Dp|0;m=a[l>>2]=8;h=c;return m}}}while(0);a[b+28>>2]=UK|0;a[b+24>>2]=0;h=c;return 0}function PK(b){var c=b>>2,d=h;h+=20;var g,f=d+4,e=d+8,l=d+12,k=d+16;a[c+12]=0;for(b=(b+20|0)>>2;;){if(0==If(a[b],1,d)<<24>>24){g=2057;break}var n=a[d>>2];if(255!=(n|0)&&0==(Jc(VK|0,n)|0)){if(192==(n|0)){g=2044;break}var j=a[b];if(194==(n|0)){g=2049;break}if(0==If(j,2,f)<<24>>24){g=2064;break}xg(a[b],a[f>>2]-2|0,1)}}2064==g?h=d:2049==g?(0!=If(j,3,k)<<24>>24&&0!=If(a[b],2,e)<<24>>24&&0!=If(a[b],2,l)<<24>>24&&(a[c+11]=a[e>>2],a[c+10]=a[l>>2]),h=d):2044==g?(0!=If(a[b],3,k)<<24>>24&&0!=If(a[b],2,e)<<24>>24&&0!=If(a[b],2,l)<<24>>24&&(a[c+11]=a[e>>2],a[c+10]=a[l>>2]),h=d):2057==g&&(h=d)}function SK(c){var d,i=h;h+=220;var g;d=i>>2;var e=c+20|0,Xa=i+20|0;xg(a[e>>2],-Ba(Xa)|0,1);var l=i+8|0,k=0,n=0,z=0,p=0;a:for(;;){if(0==(oi(Xa,200,a[e>>2])|0)){g=2087;break}if(!(0==p<<24>>24|0==k<<24>>24)){g=2086;break}for(var s=k,v=n,t=z,u=he(Xa,gc|0),w=p;;){if(0==(u|0)){k=s;n=v;z=t;p=w;continue a}if(62==m[u+(Ba(u)-1)|0]<<24>>24){k=s;n=v;z=t;p=w;continue a}if(2==(Cd(u,WK|0,(j=h,h+=8,a[j>>2]=i,a[j+4>>2]=l,j))|0)){if(v=Dv((b[0]=a[d],b[1]=a[d+1],f[0]),l),0==s<<24>>24){w=1}else{k=s;n=v;z=t;p=1;continue a}}if(2==(Cd(u,XK|0,(j=h,h+=8,a[j>>2]=i,a[j+4>>2]=l,j))|0)){if(t=Dv((b[0]=a[d],b[1]=a[d+1],f[0]),l),0==w<<24>>24){s=1}else{k=1;n=v;z=t;p=w;continue a}}u=he(0,gc|0)}}2087==g?(a[(c+48|0)>>2]=72,a[(c+40|0)>>2]=n,a[(c+44|0)>>2]=z,h=i):2086==g&&(a[(c+48|0)>>2]=72,a[(c+40|0)>>2]=n,a[(c+44|0)>>2]=z,h=i)}function Dv(a,b){if(0==(ka(b,Ep|0)|0)){var c=72*a;return(0>c?c-.5:c+.5)&-1}if(0==(ka(b,YK|0)|0)){return c=72*a/96,(0>c?c-.5:c+.5)&-1}if(0==(ka(b,ZK|0)|0)){return c=72*a/6,(0>c?c-.5:c+.5)&-1}if(0!=(ka(b,$K|0)|0)&&0!=(ka(b,ue|0)|0)){if(0==(ka(b,aL|0)|0)){return c=28.346456664*a,(0>c?c-.5:c+.5)&-1}if(0!=(ka(b,bL|0)|0)){return 0}c=2.8346456663999997*a;return(0>c?c-.5:c+.5)&-1}return(0>a?a-.5:a+.5)&-1}function If(b,c,d){for(var g,f=a[d>>2]=0;;){if(f>>>0>=c>>>0){var e=1;g=2133;break}var l=ni(b);if(0!=(Number(Q.a[b]&&Q.a[b].f)|0)){e=0;g=2132;break}a[d>>2]=a[d>>2]<<8|l;f=f+1|0}if(2132==g||2133==g){return e}}function hj(b,c){for(var d,g=a[c>>2]=0;;){if(2<=g>>>0){var f=1;d=2139;break}var e=ni(b);if(0!=(Number(Q.a[b]&&Q.a[b].f)|0)){f=0;d=2140;break}a[c>>2]|=e<<(g<<3);g=g+1|0}if(2139==d||2140==d){return f}}function cL(a){var b=1-a;return 3*a*b*b}function Jf(c,d,i,g){var e=c|0;f[0]=d*g;a[e>>2]=b[0];a[e+4>>2]=b[1];c=c+8|0;f[0]=i*g;a[c>>2]=b[0];a[c+4>>2]=b[1]}function Ev(c,d,i,g,e){var h=c|0;f[0]=d+g;a[h>>2]=b[0];a[h+4>>2]=b[1];c=c+8|0;f[0]=i+e;a[c>>2]=b[0];a[c+4>>2]=b[1]}function Fp(c,d,i,g,e){var h=c|0;f[0]=d-g;a[h>>2]=b[0];a[h+4>>2]=b[1];c=c+8|0;f[0]=i-e;a[c>>2]=b[0];a[c+4>>2]=b[1]}function ZG(c,d,i,g,e,j){var l,k,n,m,p,s=h;h+=32;l=s+16;p=(e|0)>>2;m=(e+8|0)>>2;Jl(s,(b[0]=a[p],b[1]=a[p+1],f[0]),(b[0]=a[m],b[1]=a[m+1],f[0]));k=e>>2;n=s>>2;a[k]=a[n];a[k+1]=a[n+1];a[k+2]=a[n+2];a[k+3]=a[n+3];k=e+16|0;n=(k|0)>>2;e=(e+24|0)>>2;Jl(l,(b[0]=a[n],b[1]=a[n+1],f[0]),(b[0]=a[e],b[1]=a[e+1],f[0]));k>>=2;l>>=2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];a[ge>>2]=0;Fv(4);l=a[ge>>2];a[ge>>2]=l+1|0;k=((l<<4)+a[Lg>>2]|0)>>2;l=i>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];p=(b[0]=a[p],b[1]=a[p+1],f[0]);m=(b[0]=a[m],b[1]=a[m+1],f[0]);if(-1==(Gp(c,d,i,g,p,m,(b[0]=a[n],b[1]=a[n+1],f[0]),(b[0]=a[e],b[1]=a[e+1],f[0]))|0)){return h=s,-1}a[j+4>>2]=a[ge>>2];a[j>>2]=a[Lg>>2];h=s;return 0}function Jl(c,d,i){var g=d*d+i*i;1e-6>2]=b[0];a[g+4>>2]=b[1];c=c+8|0;f[0]=i;a[c>>2]=b[0];a[c+4>>2]=b[1]}function Gp(c,d,i,g,e,j,l,k){var n,m,p,s,v,t,u,w,A=h;h+=256;var B=A+16,C=A+32,y=A+48,T=A+64,D=A+80,F=A+96,M=A+112,X=A+128,O=A+144,E=A+160,G=A+176,ia=A+192,J=A+208,I=A+224,H=A+240,K=a[Kl>>2];if((a[Gv>>2]|0)<(g|0)){if(0==(K|0)){var L=Gb(40*g|0);a[Kl>>2]=L;if(0==(L|0)){var N=-1;h=A;return N}var Q=L}else{var S=mc(K,40*g|0);a[Kl>>2]=S;if(0==(S|0)){return N=-1,h=A,N}Q=S}a[Gv>>2]=g;var ca=Q}else{ca=K}var R=ca|0;f[0]=0;a[R>>2]=b[0];a[R+4>>2]=b[1];var U=1<(g|0);a:do{if(U){for(var W=1,ja=0;;){var aa=W-1|0,da=(W<<4)+i|0,ea=(b[0]=a[da>>2],b[1]=a[da+4>>2],f[0]),xa=(W<<4)+i+8|0,Z=(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]),Y=(aa<<4)+i|0,ha=(aa<<4)+i+8|0,ga=ja+Hv(ea,Z,(b[0]=a[Y>>2],b[1]=a[Y+4>>2],f[0]),(b[0]=a[ha>>2],b[1]=a[ha+4>>2],f[0])),V=ca+40*W|0;f[0]=ga;a[V>>2]=b[0];a[V+4>>2]=b[1];var $=W+1|0;if(($|0)==(g|0)){break}else{W=$,ja=ga}}for(var la=ca+40*(g-1)|0,ba=1;;){var ya=(b[0]=a[la>>2],b[1]=a[la+4>>2],f[0]);w=(ca+40*ba|0)>>2;var sa=(b[0]=a[w],b[1]=a[w+1],f[0])/ya;f[0]=sa;a[w]=b[0];a[w+1]=b[1];var wa=ba+1|0;if((wa|0)==(g|0)){break a}else{ba=wa}}}}while(0);var Ab=0<(g|0);a:do{if(Ab){u=T>>2;t=D>>2;for(var Fa=0;;){v=(ca+40*Fa|0)>>2;Jf(T,e,j,cL((b[0]=a[v],b[1]=a[v+1],f[0])));s=(ca+40*Fa+8|0)>>2;a[s]=a[u];a[s+1]=a[u+1];a[s+2]=a[u+2];a[s+3]=a[u+3];var Ga=D,fa=l,ta=k,Ka=(b[0]=a[v],b[1]=a[v+1],f[0]);Jf(Ga,fa,ta,3*Ka*Ka*(1-Ka));p=(ca+40*Fa+24|0)>>2;a[p]=a[t];a[p+1]=a[t+1];a[p+2]=a[t+2];a[p+3]=a[t+3];var za=Fa+1|0;if((za|0)==(g|0)){break a}else{Fa=za}}}}while(0);dL(i,g,ca,e,j,l,k,A,C,B,y);var ma=A|0,pa=(b[0]=a[ma>>2],b[1]=a[ma+4>>2],f[0]),ra=A+8|0,Ha=(b[0]=a[ra>>2],b[1]=a[ra+4>>2],f[0]),Ra=C|0,ka=(b[0]=a[Ra>>2],b[1]=a[Ra+4>>2],f[0]),qa=C+8|0,La=(b[0]=a[qa>>2],b[1]=a[qa+4>>2],f[0]),na=B|0,Ya=(b[0]=a[na>>2],b[1]=a[na+4>>2],f[0]),oa=B+8|0,Za=(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0]),Ba=y|0,ab=(b[0]=a[Ba>>2],b[1]=a[Ba+4>>2],f[0]),$a=y+8|0,jb=(b[0]=a[$a>>2],b[1]=a[$a+4>>2],f[0]);if(0!=(eL(c,d,pa,Ha,ka,La,Ya,Za,ab,jb,i,g)|0)){return N=0,h=A,N}Jf(F,ka,La,.3333333333333333);var Ca=F|0,Ia=F+8|0;Ev(M,pa,Ha,(b[0]=a[Ca>>2],b[1]=a[Ca+4>>2],f[0]),(b[0]=a[Ia>>2],b[1]=a[Ia+4>>2],f[0]));var eb=M|0,ub=(b[0]=a[eb>>2],b[1]=a[eb+4>>2],f[0]),Sa=M+8|0,va=(b[0]=a[Sa>>2],b[1]=a[Sa+4>>2],f[0]);Jf(X,ab,jb,.3333333333333333);var ua=X|0,Oa=X+8|0;Fp(O,Ya,Za,(b[0]=a[ua>>2],b[1]=a[ua+4>>2],f[0]),(b[0]=a[Oa>>2],b[1]=a[Oa+4>>2],f[0]));var Wa=O|0,pb=(b[0]=a[Wa>>2],b[1]=a[Wa+4>>2],f[0]),ob=O+8|0,bb=(b[0]=a[ob>>2],b[1]=a[ob+4>>2],f[0]),qb=g-1|0,Aa=1<(qb|0);a:do{if(Aa){for(var kb=a[Kl>>2],Ea=-1,vb=-1,xb=1;;){var Qa=kb+40*xb|0,nb=(b[0]=a[Qa>>2],b[1]=a[Qa+4>>2],f[0]),rb,lb=1-nb;rb=lb*lb*lb;var Ta=cL(nb),cb=3*nb*nb*(1-nb),fb=nb*nb*nb,Ua=(xb<<4)+i|0,sb=(xb<<4)+i+8|0,Na=Hv(rb*pa+Ta*ub+cb*pb+fb*Ya,rb*Ha+Ta*va+cb*bb+fb*Za,(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0]),(b[0]=a[sb>>2],b[1]=a[sb+4>>2],f[0])),Fb=Na>Ea,Db=Fb?xb:vb,Ob=xb+1|0;if((Ob|0)==(qb|0)){var Eb=Db;break a}else{Ea=Fb?Na:Ea,vb=Db,xb=Ob}}}else{Eb=-1}}while(0);var Ma=(Eb<<4)+i|0,Bb=Eb-1|0;m=(Ma|0)>>2;var Ja=(b[0]=a[m],b[1]=a[m+1],f[0]);n=((Eb<<4)+i+8|0)>>2;var Va=(b[0]=a[n],b[1]=a[n+1],f[0]),Cb=(Bb<<4)+i|0,wb=(Bb<<4)+i+8|0;Fp(E,Ja,Va,(b[0]=a[Cb>>2],b[1]=a[Cb+4>>2],f[0]),(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0]));var Pa=E|0,hb=E+8|0;Jl(G,(b[0]=a[Pa>>2],b[1]=a[Pa+4>>2],f[0]),(b[0]=a[hb>>2],b[1]=a[hb+4>>2],f[0]));var ib=G|0,ic=(b[0]=a[ib>>2],b[1]=a[ib+4>>2],f[0]),db=G+8|0,Ib=(b[0]=a[db>>2],b[1]=a[db+4>>2],f[0]),yb=Eb+1|0,mb=(yb<<4)+i|0,Kb=(b[0]=a[mb>>2],b[1]=a[mb+4>>2],f[0]),pc=(yb<<4)+i+8|0,Jb=(b[0]=a[pc>>2],b[1]=a[pc+4>>2],f[0]);Fp(ia,Kb,Jb,(b[0]=a[m],b[1]=a[m+1],f[0]),(b[0]=a[n],b[1]=a[n+1],f[0]));var Vb=ia|0,Hb=ia+8|0;Jl(J,(b[0]=a[Vb>>2],b[1]=a[Vb+4>>2],f[0]),(b[0]=a[Hb>>2],b[1]=a[Hb+4>>2],f[0]));var Lb=J|0,Mb=J+8|0;Ev(I,ic,Ib,(b[0]=a[Lb>>2],b[1]=a[Lb+4>>2],f[0]),(b[0]=a[Mb>>2],b[1]=a[Mb+4>>2],f[0]));var Nb=I|0,Pb=I+8|0;Jl(H,(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0]),(b[0]=a[Pb>>2],b[1]=a[Pb+4>>2],f[0]));var Wb=H|0,lc=(b[0]=a[Wb>>2],b[1]=a[Wb+4>>2],f[0]),Tb=H+8|0,Yb=(b[0]=a[Tb>>2],b[1]=a[Tb+4>>2],f[0]);Gp(c,d,i,yb,e,j,lc,Yb);Gp(c,d,Ma,g-Eb|0,lc,Yb,l,k);N=0;h=A;return N}function Hv(a,b,c,d){a=c-a;b=d-b;return $c(a*a+b*b)}function dL(c,d,i,g,e,j,l,k,n,m,p){var s,v,t,u,w,A,B,C,y,T,D,F,M,X=h;h+=96;var O=X+16,E=X+32,G=X+48,ia=X+64,J=X+80,I=0<(d|0);a:do{if(I){for(var H=c|0,K=c+8|0,L=d-1|0,N=(L<<4)+c|0,S=(L<<4)+c+8|0,Q=O|0,ca=O+8|0,R=E|0,U=E+8|0,W=X|0,ja=X+8|0,aa=G|0,da=G+8|0,ea=0,xa=0,Y=0,Z=0,ha=0,ga=0;;){M=(i+40*ga+8|0)>>2;var V=(b[0]=a[M],b[1]=a[M+1],f[0]);F=(i+40*ga+16|0)>>2;var $=(b[0]=a[F],b[1]=a[F+1],f[0]),la=ea+(V*V+$*$);D=(i+40*ga+24|0)>>2;var ba=(b[0]=a[D],b[1]=a[D+1],f[0]);T=(i+40*ga+32|0)>>2;var ya=(b[0]=a[T],b[1]=a[T+1],f[0]),sa=xa+(V*ba+$*ya),wa=Y+(ba*ba+ya*ya);y=(i+40*ga|0)>>2;var fa,Fa=(b[0]=a[y],b[1]=a[y+1],f[0]),Ga=1-Fa;fa=Ga*Ga*(Ga+3*Fa);Jf(O,(b[0]=a[H>>2],b[1]=a[H+4>>2],f[0]),(b[0]=a[K>>2],b[1]=a[K+4>>2],f[0]),fa);var ra,ta=(b[0]=a[y],b[1]=a[y+1],f[0]);ra=ta*ta*(3*(1-ta)+ta);Jf(E,(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]),(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]),ra);var Ka=(b[0]=a[Q>>2],b[1]=a[Q+4>>2],f[0]),za=(b[0]=a[ca>>2],b[1]=a[ca+4>>2],f[0]);Ev(X,Ka,za,(b[0]=a[R>>2],b[1]=a[R+4>>2],f[0]),(b[0]=a[U>>2],b[1]=a[U+4>>2],f[0]));var ma=(ga<<4)+c|0,pa=(b[0]=a[ma>>2],b[1]=a[ma+4>>2],f[0]),ka=(ga<<4)+c+8|0,Ha=(b[0]=a[ka>>2],b[1]=a[ka+4>>2],f[0]);Fp(G,pa,Ha,(b[0]=a[W>>2],b[1]=a[W+4>>2],f[0]),(b[0]=a[ja>>2],b[1]=a[ja+4>>2],f[0]));var Ra=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),qa=(b[0]=a[da>>2],b[1]=a[da+4>>2],f[0]),na=Z,La=(b[0]=a[M],b[1]=a[M+1],f[0]),oa=(b[0]=a[F],b[1]=a[F+1],f[0]),Ya=na+(La*Ra+oa*qa),Ba=ha,Za=(b[0]=a[D],b[1]=a[D+1],f[0]),va=(b[0]=a[T],b[1]=a[T+1],f[0]),ab=Ba+(Za*Ra+va*qa),$a=ga+1|0;if(($a|0)==(d|0)){var jb=la,Ca=sa,Ia=wa,eb=Ya,ub=ab;break a}else{ea=la,xa=sa,Y=wa,Z=Ya,ha=ab,ga=$a}}}else{ub=eb=Ia=Ca=jb=0}}while(0);var Sa=jb*Ia-Ca*Ca,Ea=0<=Sa;if(1e-6>(Ea?Sa:-Sa)){var ua=0,Oa=0}else{ua=(jb*ub-Ca*eb)/Sa,Oa=(eb*Ia-ub*Ca)/Sa}var Wa=d-1|0;if(1e-6<=(Ea?Sa:-Sa)&0>2;var qb=c;B=qb>>2;a[C]=a[B];a[C+1]=a[B+1];a[C+2]=a[B+2];a[C+3]=a[B+3];Jf(ia,g,e,ob);var Aa=n;A=Aa>>2;var kb=ia;w=kb>>2;a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];var Qa=(Wa<<4)+c|0,vb=m;u=vb>>2;var xb=Qa;t=xb>>2;a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];Jf(J,j,l,pb);var Ma=p;v=Ma>>2;var nb=J}else{var rb=c|0,lb=(b[0]=a[rb>>2],b[1]=a[rb+4>>2],f[0]),Ta=c+8|0,cb=(b[0]=a[Ta>>2],b[1]=a[Ta+4>>2],f[0]),fb=(Wa<<4)+c|0,Ua=(Wa<<4)+c+8|0,sb=Hv(lb,cb,(b[0]=a[fb>>2],b[1]=a[fb+4>>2],f[0]),(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0]))/3,ob=pb=sb,bb=k;C=bb>>2;qb=c;B=qb>>2;a[C]=a[B];a[C+1]=a[B+1];a[C+2]=a[B+2];a[C+3]=a[B+3];Jf(ia,g,e,ob);Aa=n;A=Aa>>2;kb=ia;w=kb>>2;a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];Qa=(Wa<<4)+c|0;vb=m;u=vb>>2;xb=Qa;t=xb>>2;a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];Jf(J,j,l,pb);Ma=p;v=Ma>>2;nb=J}s=nb>>2;a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];h=X}function eL(c,d,i,g,e,j,l,k,n,m,p,s){var v,t,u,w,A,B,C=h;h+=64;var y,T=2==(s|0),D=C|0,F=C|0,M=C+8|0;B=(C+16|0)>>2;A=(C+24|0)>>2;w=(C+32|0)>>2;u=(C+40|0)>>2;t=(C+48|0)>>2;v=(C+56|0)>>2;for(var E=1,O=4,G=4;;){f[0]=i;a[F>>2]=b[0];a[F+4>>2]=b[1];f[0]=g;a[M>>2]=b[0];a[M+4>>2]=b[1];f[0]=G*e/3+i;a[B]=b[0];a[B+1]=b[1];f[0]=G*j/3+g;a[A]=b[0];a[A+1]=b[1];f[0]=l-O*n/3;a[w]=b[0];a[w+1]=b[1];f[0]=k-O*m/3;a[u]=b[0];a[u+1]=b[1];f[0]=l;a[t]=b[0];a[t+1]=b[1];f[0]=k;a[v]=b[0];a[v+1]=b[1];if(E&&fL(D,4)>2]+4|0),d=a[Lg>>2],c=a[ge>>2],B=(b[0]=a[B],b[1]=a[B+1],f[0]),i=(c<<4)+d|0,f[0]=B,a[i>>2]=b[0],a[i+4>>2]=b[1],B=(b[0]=a[A],b[1]=a[A+1],f[0]),A=c+1|0,i=(c<<4)+d+8|0,f[0]=B,a[i>>2]=b[0],a[i+4>>2]=b[1],w=(b[0]=a[w],b[1]=a[w+1],f[0]),B=(A<<4)+d|0,f[0]=w,a[B>>2]=b[0],a[B+4>>2]=b[1],w=(b[0]=a[u],b[1]=a[u+1],f[0]),u=c+2|0,A=(A<<4)+d+8|0,f[0]=w,a[A>>2]=b[0],a[A+4>>2]=b[1],t=(b[0]=a[t],b[1]=a[t+1],f[0]),w=(u<<4)+d|0,f[0]=t,a[w>>2]=b[0],a[w+4>>2]=b[1],v=(b[0]=a[v],b[1]=a[v+1],f[0]),t=(u<<4)+d+8|0,f[0]=v,a[t>>2]=b[0],a[t+4>>2]=b[1],a[ge>>2]=c+3|0,h=C,1}if(2268==y){return h=C,J}if(2261==y){if(!T){return h=C,0}Fv(a[ge>>2]+4|0);d=a[Lg>>2];c=a[ge>>2];B=(b[0]=a[B],b[1]=a[B+1],f[0]);i=(c<<4)+d|0;f[0]=B;a[i>>2]=b[0];a[i+4>>2]=b[1];B=(b[0]=a[A],b[1]=a[A+1],f[0]);A=c+1|0;i=(c<<4)+d+8|0;f[0]=B;a[i>>2]=b[0];a[i+4>>2]=b[1];w=(b[0]=a[w],b[1]=a[w+1],f[0]);B=(A<<4)+d|0;f[0]=w;a[B>>2]=b[0];a[B+4>>2]=b[1];w=(b[0]=a[u],b[1]=a[u+1],f[0]);u=c+2|0;A=(A<<4)+d+8|0;f[0]=w;a[A>>2]=b[0];a[A+4>>2]=b[1];t=(b[0]=a[t],b[1]=a[t+1],f[0]);w=(u<<4)+d|0;f[0]=t;a[w>>2]=b[0];a[w+4>>2]=b[1];v=(b[0]=a[v],b[1]=a[v+1],f[0]);t=(u<<4)+d+8|0;f[0]=v;a[t>>2]=b[0];a[t+4>>2]=b[1];a[ge>>2]=c+3|0;h=C;return 1}}function Fv(b){var c=h;if((a[Iv>>2]|0)<(b|0)){var d=a[Lg>>2];0==(d|0)?(d=Gb(b<<4),a[Lg>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Jv|0,a[j+4>>2]=519,a[j+8>>2]=Kv|0,j)),S())):(d=mc(d,b<<4),a[Lg>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Jv|0,a[j+4>>2]=525,a[j+8>>2]=Lv|0,j)),S()));a[Iv>>2]=b}h=c}function Ll(c,d,i,g,e){var i=3*i,h=e+24|0;f[0]=3*d+g-(i+c);a[h>>2]=b[0];a[h+4>>2]=b[1];g=e+16|0;f[0]=3*c+i-6*d;a[g>>2]=b[0];a[g+4>>2]=b[1];g=e+8|0;f[0]=3*(d-c);a[g>>2]=b[0];a[g+4>>2]=b[1];f[0]=c;a[e>>2]=b[0];a[e+4>>2]=b[1]}function Ml(c,d,i){0<=c&1>=c&&(d=(a[i>>2]<<3)+d|0,f[0]=c,a[d>>2]=b[0],a[d+4>>2]=b[1],a[i>>2]=a[i>>2]+1|0)}function fL(c,d){if(1>=(d|0)){var i;return 0}for(var g=c|0,e=c+8|0,h=1,l=0,k=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),n=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);;){if(e=(h<<4)+c|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),k=e-k,g=(h<<4)+c+8|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),n=g-n,l+=$c(k*k+n*n),h=h+1|0,(h|0)==(d|0)){i=l;break}else{k=e,n=g}}return i}function gL(c,d,i){var g,e,j,l=h;h+=64;var k,n=l+32,m=n|0;j=n>>2;var p=n+16|0;e=p>>2;var s=l|0,v=i|0,t=i+16|0,u=i+32|0,w=i+48|0,A=i+8|0,B=i+24|0,C=i+40|0,y=i+56|0,T=n|0,D=n+8|0,p=p|0,n=n+24|0,F=0;a:for(;;){if((F|0)>=(d|0)){var M=1;k=2306;break}g=((F<<5)+c|0)>>2;a[j]=a[g];a[j+1]=a[g+1];a[j+2]=a[g+2];a[j+3]=a[g+3];g=((F<<5)+c+16|0)>>2;a[e]=a[g];a[e+1]=a[g+1];a[e+2]=a[g+2];a[e+3]=a[g+3];g=hL(i,m,s);var E=4==(g|0);b:do{if(!E){for(var O=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),G=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),J=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),ia=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),H=0;;){if((H|0)>=(g|0)){break b}var I=(H<<3)+l|0,I=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0]);do{if(!(1e-6>I|.999999>2],b[1]=a[v+4>>2],f[0])+L*(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])+S*(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])+K*(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),K=Q*(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])+L*(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0])+S*(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0])+K*(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),S=N-O,L=K-G;if(.001<=S*S+L*L&&(N-=J,K-=ia,.001<=N*N+K*K)){M=0;k=2307;break a}}}while(0);H=H+1|0}}}while(0);F=F+1|0}if(2306==k||2307==k){return h=l,M}}function hL(c,d,i){var g,e,j,l,k,n=h;h+=84;var m=n+32;l=n+56;var p=n+80;k=p>>2;var s=d|0,v=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),s=d+16|0;g=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0])-v;s=d+8|0;s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);d=d+24|0;j=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])-s;a[k]=0;if(0!=g){var t=j/g,d=c+8|0;l=(c|0)>>2;var u=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])-t*(b[0]=a[l],b[1]=a[l+1],f[0]);j=c+24|0;var d=(c+16|0)>>2,w=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])-t*(b[0]=a[d],b[1]=a[d+1],f[0]);e=c+40|0;j=(c+32|0)>>2;var A=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])-t*(b[0]=a[j],b[1]=a[j+1],f[0]),B=c+56|0;e=(c+48|0)>>2;var C=n|0,c=C>>2;Ll(u,w,A,(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0])-t*(b[0]=a[e],b[1]=a[e+1],f[0]),C);s=(b[0]=a[c],b[1]=a[c+1],f[0])+(t*v-s);f[0]=s;a[c]=b[0];a[c+1]=b[1];s=Hp(C,m|0);if(4==(s|0)){return h=n,4}if(0>=(s|0)){return h=n,0}t=n+8|0;u=n+16|0;w=n+24|0;for(A=0;;){B=(A<<3)+m|0;B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]);if(0<=B&1>=B){var y=(b[0]=a[l],b[1]=a[l+1],f[0]),T=(b[0]=a[d],b[1]=a[d+1],f[0]);Ll(y,T,(b[0]=a[j],b[1]=a[j+1],f[0]),(b[0]=a[e],b[1]=a[e+1],f[0]),C);y=(b[0]=a[c],b[1]=a[c+1],f[0]);T=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]);y=(y+B*(T+B*((b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])+B*(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])))-v)/g;0<=y&1>=y&&Ml(B,i,p)}A=A+1|0;if((A|0)==(s|0)){break}}i=a[k];h=n;return i}e=0==j;g=c|0;C=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=c+16|0;t=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);u=c+32|0;w=c+48|0;d=n|0;g=d>>2;Ll(C,t,(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),d);v=(b[0]=a[g],b[1]=a[g+1],f[0])-v;f[0]=v;a[g]=b[0];a[g+1]=b[1];v=Hp(d,m|0);if(!e){if(4==(v|0)){return h=n,4}if(0>=(v|0)){return h=n,0}l=c+8|0;e=c+24|0;C=c+40|0;c=c+56|0;t=n+8|0;u=n+16|0;w=n+24|0;for(A=0;!(B=(A<<3)+m|0,B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),0<=B&1>=B&&(y=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),T=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),Ll(y,T,(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d),y=(b[0]=a[g],b[1]=a[g+1],f[0]),T=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),y=(y+B*(T+B*((b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])+B*(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])))-s)/j,0<=y&1>=y&&Ml(B,i,p)),A=A+1|0,(A|0)==(v|0));){}i=a[k];h=n;return i}j=c+8|0;j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);e=c+24|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);C=c+40|0;c=c+56|0;Ll(j,e,(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d);s=(b[0]=a[g],b[1]=a[g+1],f[0])-s;f[0]=s;a[g]=b[0];a[g+1]=b[1];s=Hp(d,l|0);c=4==(v|0);g=4==(s|0);a:do{if(c){if(g){return i=4,h=n,i}if(0<(s|0)){for(d=0;;){if(j=(d<<3)+l|0,Ml((b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),i,p),d=d+1|0,(d|0)==(s|0)){break a}}}}else{d=0<(v|0);if(g){if(d){j=0}else{break}for(;;){if(e=(j<<3)+m|0,Ml((b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),i,p),j=j+1|0,(j|0)==(v|0)){break a}}}if(d){d=0<(s|0);for(j=0;;){b:do{if(d){e=(j<<3)+m|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);for(C=0;;){if(t=(C<<3)+l|0,e==(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])&&Ml(e,i,p),C=C+1|0,(C|0)==(s|0)){break b}}}}while(0);j=j+1|0;if((j|0)==(v|0)){break a}}}}}while(0);i=a[k];h=n;return i}function od(a,b,c,d,f,e){a=(b-d)*(f-c)-(e-d)*(a-c);return 0a?2:3}function iL(b,c){var d,g,f,e=a[kg>>2];g=e>>2;for(var l=0;;){var k=e+52*b|0,h=e+52*c|0;d=((l<<4)+e+52*b+4|0)>>2;var j=a[a[d]>>2],p=a[a[g+(13*c|0)+1]>>2];if((j|0)==(p|0)){if(f=a[a[g+(13*c|0)+2]>>2],(a[a[((l<<4)+8>>2)+g+(13*b|0)]>>2]|0)==(f|0)){f=2362}else{var m=f;f=2360}}else{m=a[a[g+(13*c|0)+2]>>2],f=2360}if(2360==f){if(f=0,(j|0)!=(m|0)){var v=j}else{(a[a[((l<<4)+8>>2)+g+(13*b|0)]>>2]|0)==(p|0)?f=2362:v=j}}2362==f&&(a[((l<<4)+16>>2)+g+(13*b|0)]=h,a[g+(13*c|0)+4]=k,v=a[a[d]>>2]);j=a[a[g+(13*c|0)+5]>>2];if((v|0)==(j|0)){if(f=a[a[g+(13*c|0)+6]>>2],(a[a[((l<<4)+8>>2)+g+(13*b|0)]>>2]|0)==(f|0)){f=2369}else{var t=f;f=2367}}else{t=a[a[g+(13*c|0)+6]>>2],f=2367}if(2367==f){if(f=0,(v|0)!=(t|0)){var u=v}else{(a[a[((l<<4)+8>>2)+g+(13*b|0)]>>2]|0)==(j|0)?f=2369:u=v}}2369==f&&(a[((l<<4)+16>>2)+g+(13*b|0)]=h,a[g+(13*c|0)+8]=k,u=a[a[d]>>2]);d=a[a[g+(13*c|0)+9]>>2];if((u|0)==(d|0)){if(f=a[a[g+(13*c|0)+10]>>2],(a[a[((l<<4)+8>>2)+g+(13*b|0)]>>2]|0)==(f|0)){f=2375}else{var w=f;f=2373}}else{w=a[a[g+(13*c|0)+10]>>2],f=2373}2373==f&&(f=0,(u|0)==(w|0)&&(a[a[((l<<4)+8>>2)+g+(13*b|0)]>>2]|0)==(d|0)&&(f=2375));2375==f&&(a[((l<<4)+16>>2)+g+(13*b|0)]=h,a[g+(13*c|0)+12]=k);l=l+1|0;if(3==(l|0)){break}}}function Gt(c,d,i){var g,e,Xa,l,k,n,m,p,s,v,t,u,w,A,B,C,y=i>>2,T=h;h+=16;var D;C=T>>2;B=(c+4|0)>>2;jL(a[B]);a[Qh>>2]=0;a[ij>>2]=0;var F=a[B]<<1,M=h;if((a[Ip>>2]|0)<(F|0)){var E=a[Mg>>2];if(0==(E|0)){var O=Gb(F<<2);a[Mg>>2]=O;0==(O|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=564,a[j+8>>2]=kL|0,j)),S())}else{var G=mc(E,F<<2);a[Mg>>2]=G;0==(G|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=571,a[j+8>>2]=lL|0,j)),S())}a[Ip>>2]=F}h=M;var J=(a[Ip>>2]|0)/2&-1;a[lg>>2]=J;a[Ng>>2]=J-1|0;var I=a[B],H=0<(I|0);A=(c|0)>>2;var K=a[A];a:do{if(H){for(var L=Infinity,N=-1,Q=0;;){var R=(Q<<4)+K|0,U=(b[0]=a[R>>2],b[1]=a[R+4>>2],f[0]),W=L>U,ca=W?Q:N,Y=Q+1|0;if((Y|0)<(I|0)){L=W?U:L,N=ca,Q=Y}else{var Z=ca;break a}}}else{Z=-1}}while(0);var V=(Z<<4)+K|0,ja=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]),aa=(Z<<4)+K+8|0,da=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),ea=(0==(Z|0)?I:Z)-1|0,xa=(ea<<4)+K|0,$=(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]),la=(Z|0)==(I-1|0)?0:Z+1|0,ha=(la<<4)+K|0,ga=(b[0]=a[ha>>2],b[1]=a[ha+4>>2],f[0]),ba=(la<<4)+K+8|0,sa=(b[0]=a[ba>>2],b[1]=a[ba+4>>2],f[0]),fa=$==ja&ja==ga&sa>da;a:do{if(fa){D=2382}else{var tb=(ea<<4)+K+8|0;if(1!=(od($,(b[0]=a[tb>>2],b[1]=a[tb+4>>2],f[0]),ja,da,ga,sa)|0)){D=2382}else{if(H){for(var ya=0,ra=I,wa=K;;){if(0<(ya|0)){var Ab=(ya<<4)+wa|0,Fa=ya-1|0,Ga=(Fa<<4)+wa|0;if((b[0]=a[Ab>>2],b[1]=a[Ab+4>>2],f[0])!=(b[0]=a[Ga>>2],b[1]=a[Ga+4>>2],f[0])){D=2392}else{var ka=(ya<<4)+wa+8|0,ta=(Fa<<4)+wa+8|0;if((b[0]=a[ka>>2],b[1]=a[ka+4>>2],f[0])==(b[0]=a[ta>>2],b[1]=a[ta+4>>2],f[0])){var Ka=ra}else{D=2392}}}else{D=2392}if(2392==D){D=0;var za=a[Qh>>2],ma=a[jj>>2];a[ma+(za<<3)>>2]=(ya<<4)+wa|0;a[ma+(za<<3)+4>>2]=(za%a[B]<<3)+ma|0;a[a[Rh>>2]+(za<<2)>>2]=(za<<3)+ma|0;a[Qh>>2]=za+1|0;Ka=a[B]}var pa=ya+1|0;if((pa|0)>=(Ka|0)){break a}ya=pa;ra=Ka;wa=a[A]}}}}}while(0);a:do{if(2382==D&&H){for(var qa=I,Ha=I,Ra=K;;){var na=qa-1|0;if((na|0)<(Ha-1|0)){var Ba=(na<<4)+Ra|0,La=(qa<<4)+Ra|0;if((b[0]=a[Ba>>2],b[1]=a[Ba+4>>2],f[0])!=(b[0]=a[La>>2],b[1]=a[La+4>>2],f[0])){D=2388}else{var va=(na<<4)+Ra+8|0,Ya=(qa<<4)+Ra+8|0;if((b[0]=a[va>>2],b[1]=a[va+4>>2],f[0])!=(b[0]=a[Ya>>2],b[1]=a[Ya+4>>2],f[0])){D=2388}}}else{D=2388}if(2388==D){D=0;var Aa=a[Qh>>2],Za=a[jj>>2];a[Za+(Aa<<3)>>2]=(na<<4)+Ra|0;a[Za+(Aa<<3)+4>>2]=(Aa%a[B]<<3)+Za|0;a[a[Rh>>2]+(Aa<<2)>>2]=(Aa<<3)+Za|0;a[Qh>>2]=Aa+1|0}if(0>=(na|0)){break a}qa=na;Ha=a[B];Ra=a[A]}}}while(0);var Ea=a[Rh>>2],ab=a[Qh>>2],$a=Ea>>2,jb=h,Ca,Ia=ab,eb=ab;a:for(;;){var ub=eb-1|0;if(3<(Ia|0)){var Sa=0}else{Ca=2454;break}for(;;){if((Sa|0)>=(Ia|0)){Ca=2453;break a}var Qa=Sa+1|0,ua=(Sa+2|0)%(Ia|0);if(0==(mL(Sa,ua,Ea,Ia)|0)){Sa=Qa}else{break}}var Oa=(Qa|0)%(Ia|0);nL(a[(Sa<<2>>2)+$a],a[(Oa<<2>>2)+$a],a[(ua<<2>>2)+$a]);var Wa=Ia-1|0;if((Oa|0)<(Wa|0)){for(var pb=Oa;;){var ob=pb+1|0;a[(pb<<2>>2)+$a]=a[(ob<<2>>2)+$a];if((ob|0)==(ub|0)){Ia=Wa;eb=ub;continue a}else{pb=ob}}}else{Ia=Wa,eb=ub}}2454==Ca?(nL(a[$a],a[$a+1],a[$a+2]),h=jb):2453==Ca&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=315,a[j+8>>2]=oL|0,j)),h=jb);var bb=a[ij>>2],qb=0<(bb|0);a:do{if(qb){for(var Ma=0;;){var kb=Ma+1|0,Cb=(kb|0)<(bb|0);if(Cb){var vb=kb}else{break a}for(;;){iL(Ma,vb);var xb=vb+1|0;if((xb|0)<(bb|0)){vb=xb}else{break}}if(Cb){Ma=kb}else{break a}}}}while(0);for(var wb=d|0,nb=d+8|0,rb=0;(rb|0)<(bb|0);){if(0==(Mv(rb,(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0]),(b[0]=a[nb>>2],b[1]=a[nb+4>>2],f[0]))|0)){rb=rb+1|0}else{break}}if((rb|0)==(bb|0)){Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=183,a[j+8>>2]=pL|0,j));var lb=-1;h=T;return lb}var Ta=d+16|0;w=(Ta|0)>>2;u=(d+24|0)>>2;for(var cb=0;(cb|0)<(bb|0);){if(0==(Mv(cb,(b[0]=a[w],b[1]=a[w+1],f[0]),(b[0]=a[u],b[1]=a[u+1],f[0]))|0)){cb=cb+1|0}else{break}}if((cb|0)==(bb|0)){return Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=191,a[j+8>>2]=qL|0,j)),lb=-1,h=T,lb}if(0==(rL(rb,cb)|0)){Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=198,a[j+8>>2]=sL|0,j));Nv(2);a[y+1]=2;var fb=a[Sh>>2];t=fb>>2;v=d>>2;a[t]=a[v];a[t+1]=a[v+1];a[t+2]=a[v+2];a[t+3]=a[v+3];s=(fb+16|0)>>2;p=Ta>>2;a[s]=a[p];a[s+1]=a[p+1];a[s+2]=a[p+2];a[s+3]=a[p+3];a[y]=fb;lb=0;h=T;return lb}if((rb|0)==(cb|0)){Nv(2);a[y+1]=2;var Ua=a[Sh>>2];m=Ua>>2;n=d>>2;a[m]=a[n];a[m+1]=a[n+1];a[m+2]=a[n+2];a[m+3]=a[n+3];k=(Ua+16|0)>>2;l=Ta>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];a[y]=Ua;lb=0;h=T;return lb}a[C]=d;a[C+1]=0;var sb=T+8|0;a[sb>>2]=Ta;a[C+3]=0;Nl(1,T|0);var Na=a[lg>>2];a[Ol>>2]=Na;var Fb=-1==(rb|0);a:do{if(Fb){var Db=0,Ob=sb}else{var Eb=a[kg>>2];Xa=Eb>>2;for(var Pa=rb,Bb=Na;;){a[Xa+(13*Pa|0)]=2;for(var Ja=0;3>(Ja|0);){var hb=a[((Ja<<4)+16>>2)+Xa+(13*Pa|0)];if(0!=(hb|0)&&1==(a[hb>>2]|0)){break}Ja=Ja+1|0}if(3==(Ja|0)){var ib=a[Mg>>2],db=a[a[ib+(a[lg>>2]<<2)>>2]>>2],yb=a[ib+(a[Ng>>2]<<2)>>2],mb=a[yb>>2],Ib=(b[0]=a[w],b[1]=a[w+1],f[0]),ic=(b[0]=a[u],b[1]=a[u+1],f[0]),Hb=db|0,Kb=(b[0]=a[Hb>>2],b[1]=a[Hb+4>>2],f[0]),Jb=db+8|0,Lb=(b[0]=a[Jb>>2],b[1]=a[Jb+4>>2],f[0]),Mb=mb|0,pc=mb+8|0,Nb=1==(od(Ib,ic,Kb,Lb,(b[0]=a[Mb>>2],b[1]=a[Mb+4>>2],f[0]),(b[0]=a[pc>>2],b[1]=a[pc+4>>2],f[0]))|0),Vb=Nb?sb:yb,Pb=Nb?yb:sb}else{var Wb=a[((Ja<<4)+4>>2)+Xa+(13*Pa|0)],Tb=a[Wb>>2],Yb=a[a[(((Ja+1)%3<<4)+8>>2)+Xa+(13*Pa|0)]>>2],Sb=a[((Ja<<4)+8>>2)+Xa+(13*Pa|0)],$b=a[Sb>>2],lc=Tb|0,ec=(b[0]=a[lc>>2],b[1]=a[lc+4>>2],f[0]),Zb=Tb+8|0,kc=(b[0]=a[Zb>>2],b[1]=a[Zb+4>>2],f[0]),Hc=Yb|0,qc=(b[0]=a[Hc>>2],b[1]=a[Hc+4>>2],f[0]),nc=Yb+8|0,gc=(b[0]=a[nc>>2],b[1]=a[nc+4>>2],f[0]),Qb=$b|0,tc=$b+8|0,Sc=1==(od(ec,kc,qc,gc,(b[0]=a[Qb>>2],b[1]=a[Qb+4>>2],f[0]),(b[0]=a[tc>>2],b[1]=a[tc+4>>2],f[0]))|0),Vb=Sc?Wb:Sb,Pb=Sc?Sb:Wb}var bc=(Pa|0)==(rb|0);b:do{if(bc){Nl(2,Pb);Nl(1,Vb);var Xb=Bb}else{var uc=a[Mg>>2];do{if((a[uc+(a[lg>>2]<<2)>>2]|0)!=(Vb|0)&&(a[uc+(a[Ng>>2]<<2)>>2]|0)!=(Vb|0)){var rd=Ov(Vb);a[lg>>2]=rd;Nl(1,Vb);if((rd|0)<=(Bb|0)){Xb=Bb;break b}Xb=a[Ol>>2]=rd;break b}}while(0);var oc=Ov(Pb);a[Ng>>2]=oc;Nl(2,Pb);Xb=(oc|0)<(Bb|0)?a[Ol>>2]=oc:Bb}}while(0);for(var ac=0;;){if(3<=(ac|0)){Db=0;Ob=sb;break a}var dc=a[((ac<<4)+16>>2)+Xa+(13*Pa|0)];if(0!=(dc|0)&&1==(a[dc>>2]|0)){break}ac=ac+1|0}var rc=dc-Eb|0;if(-52==(rc|0)){Db=0;Ob=sb;break a}else{Pa=(rc|0)/52&-1,Bb=Xb}}}}while(0);for(;;){var jc=Db+1|0,Bc=a[Ob+4>>2];if(0==(Bc|0)){break}else{Db=jc,Ob=Bc}}Nv(jc);a[y+1]=jc;for(var fc=a[Sh>>2],fd=sb,Ac=Db;;){e=((Ac<<4)+fc|0)>>2;g=a[fd>>2]>>2;a[e]=a[g];a[e+1]=a[g+1];a[e+2]=a[g+2];a[e+3]=a[g+3];var yc=a[fd+4>>2];if(0==(yc|0)){break}else{fd=yc,Ac=Ac-1|0}}a[y]=fc;lb=0;h=T;return lb}function Mv(c,d,i){var g;g=a[kg>>2]>>2;var e=a[a[g+(13*c|0)+1]>>2],h=a[a[g+(13*c|0)+2]>>2],l=e|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),e=e+8|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),k=h|0,h=h+8|0,h=2!=(od(l,e,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),d,i)|0)&1,k=a[a[g+(13*c|0)+5]>>2],l=a[a[g+(13*c|0)+6]>>2],e=k|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),k=k+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=l|0,l=l+8|0,h=(2!=(od(e,k,(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),d,i)|0)&1)+h|0,l=a[a[g+(13*c|0)+9]>>2],c=a[a[g+(13*c|0)+10]>>2];g=l|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);l=l+8|0;l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);e=c|0;c=c+8|0;d=(2!=(od(g,l,(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d,i)|0)&1)+h|0;return(3==(d|0)|0==(d|0))&1}function jL(b){var c=h;if((a[Pv>>2]|0)<(b|0)){var d=a[jj>>2];0==(d|0)?(d=Gb(b<<3),a[jj>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=514,a[j+8>>2]=tL|0,j)),S()),d=Gb(b<<2),a[Rh>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=518,a[j+8>>2]=uL|0,j)),S())):(d=mc(d,b<<3),a[jj>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=524,a[j+8>>2]=vL|0,j)),S()),d=mc(a[Rh>>2],b<<2),a[Rh>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=530,a[j+8>>2]=wL|0,j)),S()));a[Pv>>2]=b}h=c}function Nl(b,c){var d,g=a[Ng>>2],f=a[lg>>2],e=-1<(g-f|0);d=a[Mg>>2]>>2;1==(b|0)?(e&&(a[c+4>>2]=a[(f<<2>>2)+d]),g=f-1|0,a[lg>>2]=g):(e&&(a[c+4>>2]=a[(g<<2>>2)+d]),g=g+1|0,a[Ng>>2]=g);a[(g<<2>>2)+d]=c}function rL(b,c){var d,g,f=a[kg>>2];d=(f+52*b|0)>>2;if(0!=(a[d]|0)){var e;return 0}a[d]=1;if((b|0)==(c|0)){return 1}for(var l=0;3>(l|0);){var k=a[((l<<4)+f+16>>2)+(13*b|0)];if(0!=(k|0)&&0!=(rL((k-f|0)/52&-1,c)|0)){e=1;g=2515;break}l=l+1|0}return 2515==g?e:a[d]=0}function Ov(c){var d,i,g=a[Ol>>2];d=a[Mg>>2]>>2;for(var c=c|0,e=a[lg>>2];(e|0)<(g|0);){var h=e+1|0,l=a[a[(h<<2>>2)+d]>>2],k=a[a[(e<<2>>2)+d]>>2],n=a[c>>2],j=l|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),l=l+8|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),p=k|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),k=k+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),m=n|0,n=n+8|0;if(1==(od(j,l,p,k,(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]))|0)){var v=e;i=2525;break}else{e=h}}if(2525==i){return v}for(e=a[Ng>>2];;){if((e|0)<=(g|0)){v=g;i=2526;break}h=e-1|0;l=a[a[(h<<2>>2)+d]>>2];k=a[a[(e<<2>>2)+d]>>2];n=a[c>>2];j=l|0;j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);l=l+8|0;l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);p=k|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]);k=k+8|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);m=n|0;n=n+8|0;if(2==(od(j,l,p,k,(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]))|0)){v=e;i=2524;break}else{e=h}}if(2524==i||2526==i){return v}}function mL(c,d,i,g){var i=i>>2,e,h=a[a[((c-1+g)%g<<2>>2)+i]>>2],l=a[a[(c<<2>>2)+i]>>2],k=a[a[((c+1)%g<<2>>2)+i]>>2],n=h|0,j=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),h=h+8|0,p=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),h=l|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),l=l+8|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),n=k|0,m=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),k=k+8|0,v=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),t=1==(od(j,p,h,l,m,v)|0),n=a[a[(d<<2>>2)+i]>>2],k=n|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=n+8|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);if(0==((t?(1==(od(h,l,k,n,j,p)|0)?1==(od(k,n,h,l,m,v)|0):0)&1:2==(od(h,l,k,n,m,v)|0)&1)|0)){var u;return 0}for(p=0;;){if((p|0)>=(g|0)){u=1;e=2537;break}j=p+1|0;m=(j|0)%(g|0);if((p|0)==(c|0)|(m|0)==(c|0)|(p|0)==(d|0)|(m|0)==(d|0)){p=j}else{var p=a[a[(p<<2>>2)+i]>>2],w=a[a[(m<<2>>2)+i]>>2],A=p|0,B=p+8|0;a:{var p=h,m=l,v=k,t=n,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),C=od(p,m,v,t,A,B);if(3!=(C|0)){var y=w|0,y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),D=w+8|0,F=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),D=od(p,m,v,t,y,F);if(3!=(D|0)){var E=od(A,B,y,F,p,m);if(3!=(E|0)&&(y=od(A,B,y,F,v,t),3!=(y|0))){p=(1==(C|0)^1==(D|0)?1==(E|0)^1==(y|0):0)&1;break a}}}0!=(Jp(p,m,v,t,A,B)|0)?p=1:(C=w|0,C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),w=w+8|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),p=0!=(Jp(p,m,v,t,C,w)|0)?1:0==(Jp(A,B,C,w,p,m)|0)?0!=(Jp(A,B,C,w,v,t)|0)&1:1)}if(0==(p|0)){p=j}else{u=0;e=2538;break}}}if(2538==e||2537==e){return u}}function nL(b,c,d){var g;g=a[ij>>2];var f=a[Kp>>2];if((g|0)<(f|0)){f=g}else{g=f+20|0;f=h;if((a[Kp>>2]|0)<(g|0)){var e=a[kg>>2];0==(e|0)?(e=Gb(52*g|0),a[kg>>2]=e,0==(e|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=543,a[j+8>>2]=xL|0,j)),S())):(e=mc(e,52*g|0),a[kg>>2]=e,0==(e|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=549,a[j+8>>2]=yL|0,j)),S()));a[Kp>>2]=g}h=f;f=a[ij>>2]}a[ij>>2]=f+1|0;e=a[kg>>2];g=e>>2;e=e+52*f|0;a[e>>2]=0;a[g+(13*f|0)+1]=b;a[g+(13*f|0)+2]=c;a[g+(13*f|0)+4]=0;a[g+(13*f|0)+5]=c;a[g+(13*f|0)+6]=d;a[g+(13*f|0)+8]=0;a[g+(13*f|0)+9]=d;a[g+(13*f|0)+10]=b;a[g+(13*f|0)+12]=0;a[g+(13*f|0)+3]=e;a[g+(13*f|0)+7]=e;a[g+(13*f|0)+11]=e}function Jp(a,b,c,d,f,e){var l=c-a,k=d-b,h=f-a,j=e-b;return 3!=(od(a,b,c,d,f,e)|0)?0:(0>h*l+j*k?0:h*h+j*j<=l*l+k*k)&1}function Hp(c,d){var i=c+24|0,g=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);if(1e-7>g&-1e-7>2],b[1]=a[e+4>>2],f[0]);1e-7>i&-1e-7>2],b[1]=a[e+4>>2],f[0]),i=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),1e-7>e&-1e-7i&-1e-7>2]=b[0],a[d+4>>2]=b[1],e=1)):(e=c+8|0,g=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])/(2*i),i=e*e-g/i,0>i?e=0:0==i?(f[0]=-e,a[d>>2]=b[0],a[d+4>>2]=b[1],e=1):(i=$c(i)-e,f[0]=i,a[d>>2]=b[0],a[d+4>>2]=b[1],g=d+8|0,f[0]=-2*e-i,a[g>>2]=b[0],a[g+4>>2]=b[1],e=2));return e}var h=c+8|0,i=c+16|0,l=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])/(3*g),h=h/g,k=i*i,l=2*i*k-i*h+l/g,g=h/3-k,h=l*l,g=h+4*g*g*g;if(0>g){h=.5*$c(h-g);g=Cf($c(-g),-l);h=2*(0>h?-1*kj(-h,.3333333333333333):kj(h,.3333333333333333));l=h*se(g/3);f[0]=l;a[d>>2]=b[0];a[d+4>>2]=b[1];var k=h*se((g+6.283185307179586)/3),n=d+8|0;f[0]=k;a[n>>2]=b[0];a[n+4>>2]=b[1];g=h*se((g-3.141592653589793-3.141592653589793)/3);h=d+16|0;f[0]=g;a[h>>2]=b[0];a[h+4>>2]=b[1];g=3}else{h=.5*($c(g)-l),l=-l-h,h=0>h?-1*kj(-h,.3333333333333333):kj(h,.3333333333333333),l=0>l?-1*kj(-l,.3333333333333333):kj(l,.3333333333333333),l=h+l,f[0]=l,a[d>>2]=b[0],a[d+4>>2]=b[1],0>2]=b[0],a[h+4>>2]=b[1],h=d+8|0,f[0]=g,a[h>>2]=b[0],a[h+4>>2]=b[1],g=3)}h=l;for(l=0;;){k=(l<<3)+d|0;f[0]=h-i;a[k>>2]=b[0];a[k+4>>2]=b[1];l=l+1|0;if((l|0)>=(g|0)){e=g;break}h=(l<<3)+d|0;h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])}return e}function zL(c,d,i,g){var i=i>>2,e,h=a[((c-1+g)%g<<2>>2)+i],l=a[(c<<2>>2)+i],k=a[((c+1)%g<<2>>2)+i],n=h|0,j=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),h=h+8|0,p=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),h=l|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),l=l+8|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),n=k|0,m=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),k=k+8|0,v=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),t=1==(mg(j,p,h,l,m,v)|0),n=a[(d<<2>>2)+i],k=n|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=n+8|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);if(0==((t?(1==(mg(h,l,k,n,j,p)|0)?1==(mg(k,n,h,l,m,v)|0):0)&1:2==(mg(h,l,k,n,m,v)|0)&1)|0)){var u;return 0}for(p=0;;){if((p|0)>=(g|0)){u=1;e=2614;break}j=p+1|0;m=(j|0)%(g|0);if((p|0)==(c|0)|(m|0)==(c|0)|(p|0)==(d|0)|(m|0)==(d|0)){p=j}else{var p=a[(p<<2>>2)+i],w=a[(m<<2>>2)+i],A=p|0,B=p+8|0;a:{var p=h,m=l,v=k,t=n,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),C=mg(p,m,v,t,A,B);if(3!=(C|0)){var y=w|0,y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),D=w+8|0,F=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),D=mg(p,m,v,t,y,F);if(3!=(D|0)){var E=mg(A,B,y,F,p,m);if(3!=(E|0)&&(y=mg(A,B,y,F,v,t),3!=(y|0))){p=(1==(C|0)^1==(D|0)?1==(E|0)^1==(y|0):0)&1;break a}}}0!=(Lp(p,m,v,t,A,B)|0)?p=1:(C=w|0,C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),w=w+8|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),p=0!=(Lp(p,m,v,t,C,w)|0)?1:0==(Lp(A,B,C,w,p,m)|0)?0!=(Lp(A,B,C,w,v,t)|0)&1:1)}if(0==(p|0)){p=j}else{u=0;e=2616;break}}}if(2616==e||2614==e){return u}}function Nv(b){var c=h;if((a[Qv>>2]|0)<(b|0)){var d=a[Sh>>2];0==(d|0)?(d=Gb(b<<4),a[Sh>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=584,a[j+8>>2]=Kv|0,j)),S())):(d=mc(d,b<<4),a[Sh>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=590,a[j+8>>2]=Lv|0,j)),S()));a[Qv>>2]=b}h=c}function AL(b,c,d,g){var f,e,l,k;k=b>>2;var n=h;h+=48;var j;if(3<(c|0)){for(e=0;;){if((e|0)>=(c|0)){j=2645;break}l=e+1|0;f=(e+2|0)%(c|0);if(0==(zL(e,f,b,c)|0)){e=l}else{break}}2645==j&&S();j=(l|0)%(c|0);l=n>>2;e=a[(e<<2>>2)+k]>>2;a[l]=a[e];a[l+1]=a[e+1];a[l+2]=a[e+2];a[l+3]=a[e+3];l=(n+16|0)>>2;e=a[(j<<2>>2)+k]>>2;a[l]=a[e];a[l+1]=a[e+1];a[l+2]=a[e+2];a[l+3]=a[e+3];e=(n+32|0)>>2;f=a[(f<<2>>2)+k]>>2;a[e]=a[f];a[e+1]=a[f+1];a[e+2]=a[f+2];a[e+3]=a[f+3];J[d](g,n|0);f=0<(c|0);a:do{if(f){for(l=e=0;;){if((e|0)!=(j|0)&&(a[(l<<2>>2)+k]=a[(e<<2>>2)+k],l=l+1|0),e=e+1|0,(e|0)==(c|0)){break a}}}}while(0);AL(b,c-1|0,d,g)}else{c=n>>2,b=a[k]>>2,a[c]=a[b],a[c+1]=a[b+1],a[c+2]=a[b+2],a[c+3]=a[b+3],c=(n+16|0)>>2,b=a[k+1]>>2,a[c]=a[b],a[c+1]=a[b+1],a[c+2]=a[b+2],a[c+3]=a[b+3],b=(n+32|0)>>2,k=a[k+2]>>2,a[b]=a[k],a[b+1]=a[k+1],a[b+2]=a[k+2],a[b+3]=a[k+3],J[d](g,n|0)}h=n}function mg(a,b,c,d,f,e){a=(b-d)*(f-c)-(e-d)*(a-c);return 0a?1:3}function Lp(a,b,c,d,f,e){var l=c-a,k=d-b,h=f-a,j=e-b;return 3!=(mg(a,b,c,d,f,e)|0)?0:(0>h*l+j*k?0:h*h+j*j<=l*l+k*k)&1}function Ht(b,c,d){var g,f,e,l,k,h;g=3*c|0;var j=g-2|0,p=a[Rv>>2];(j|0)>(a[Sv>>2]|0)&&(p=0==(p|0)?Gb(j<<4):mc(p,j<<4),a[Rv>>2]=p,a[Sv>>2]=j);h=p>>2;k=b>>2;a[h]=a[k];a[h+1]=a[k+1];a[h+2]=a[k+2];a[h+3]=a[k+3];ck(p+16|0,b);c=c-1|0;if(1<(c|0)){h=1;for(k=2;!(l=((k<<4)+p|0)>>2,f=(h<<4)+b|0,e=f>>2,a[l]=a[e],a[l+1]=a[e+1],a[l+2]=a[e+2],a[l+3]=a[e+3],l=(k+1<<4)+p|0,e=l>>2,ck(l,f),f=((k+2<<4)+p|0)>>2,a[f]=a[e],a[f+1]=a[e+1],a[f+2]=a[e+2],a[f+3]=a[e+3],h=h+1|0,(h|0)==(c|0));){k=k+3|0}k=c;c=g-4|0}else{k=1,c=2}g=((c<<4)+p|0)>>2;k=(k<<4)+b|0;b=k>>2;a[g]=a[b];a[g+1]=a[b+1];a[g+2]=a[b+2];a[g+3]=a[b+3];ck((c+1<<4)+p|0,k);a[d+4>>2]=j;a[d>>2]=p}function ro(b){var c=a[b>>2]<<28>>28;return 3==(c|0)?a[a[b+16>>2]+12>>2]:2==(c|0)?a[a[a[a[b+16>>2]+20>>2]+16>>2]+8>>2]:1==(c|0)?a[a[a[b+20>>2]+16>>2]+4>>2]:0}function mb(b,c){if(-1>=(c|0)){var d;return 0}return d=a[a[b+4>>2]+(c<<2)>>2]}function fc(b,c,d){b>>=2;0==(d|0)?(c=0==(c|0)?1024:c,a[b+3]=1,d=Gb(c),a[b]=d):(a[b]=d,a[b+3]=0);a[b+2]=d+c|0;a[b+1]=d;m[d]=0}function na(b,c){var d,g=b+8|0;d=(b|0)>>2;var f=a[d],e=a[g>>2]-f|0,l=e<<1,e=e+c|0,l=e>>>0>l>>>0?e:l,e=b+4|0,k=a[e>>2]-f|0,h=b+12|0;0==(a[h>>2]|0)?(f=Gb(l),tf(f,a[d],k),a[h>>2]=1):f=mc(f,l);a[d]=f;a[e>>2]=f+k|0;a[g>>2]=f+l|0}function db(b,c){var d=Ba(c),g;g=(b+4|0)>>2;var f=a[g];(f+d|0)>>>0>a[b+8>>2]>>>0&&(na(b,d),f=a[g]);tf(f,c,d);a[g]=a[g]+d|0}function uc(b){0!=(a[b+12>>2]|0)&&G(a[b>>2])}function BL(b,c,d){var g,f=Yc(1,16);g=f>>2;a[g]=Dc(c);a[g+1]=Dc(d);m[f+12|0]=1;c=b+4|0;d=rc(a[c>>2]);a[g+2]=d;b=(b+8|0)>>2;g=a[b];g=0==(g|0)?Gb((d<<2)+8|0):mc(g,(d<<2)+8|0);a[b]=g;a[g+(d<<2)>>2]=f;a[a[b]+(d+1<<2)>>2]=0;c=a[c>>2];J[a[c>>2]](c,f,1);return f}function ui(b,c,d){var g,f=$(b,c);if(0==(f|0)){var e=1,l=BL(ro(b),c,d);g=2857}else{var c=f+4|0,k=a[c>>2];if(0==(ka(k,d)|0)){var h=f}else{dc(k),a[c>>2]=Dc(d),e=0,l=f,g=2857}}if(2857==g){if(0==(l|0)){h=0}else{d=a[b>>2]<<28>>28;if(2==(d|0)){CL(a[a[b+12>>2]+20>>2],l,e)}else{if(1==(d|0)){DL(a[b+20>>2],l,e)}else{if(3==(d|0)){if(d=l,g=b+36|0,f=a[g>>2],0==(f|0)){ng(b|0,d,e)}else{if(b=ra(a[f+20>>2]),0!=(b|0)){for(;!(ng(Yd(b)|0,d,e),b=ba(a[a[g>>2]+20>>2],b),0==(b|0));){}}}}}}h=l}}return h}function $(b,c){var d=a[ro(b)+4>>2];return J[a[d>>2]](d,c,512)}function DL(b,c,d){var g=ra(b),f=0==(g|0);a:do{if(!f){for(var e=g;;){if(ng(e|0,c,d),e=ba(b,e),0==(e|0)){break a}}}}while(0);g=b+36|0;f=a[g>>2];if(0==(f|0)){if(g=a[b+40>>2],0!=(g|0)){for(;!(ng(a[g>>2]|0,c,d),g=a[g+8>>2],0==(g|0));){}}}else{if(b=ra(a[f+20>>2]),0!=(b|0)){for(;;){f=a[Yd(b)+40>>2];e=0==(f|0);a:do{if(!e){for(var l=f;;){if(ng(a[l>>2]|0,c,d),l=a[l+8>>2],0==(l|0)){break a}}}}while(0);b=ba(a[a[g>>2]+20>>2],b);if(0==(b|0)){break}}}}}function CL(b,c,d){var g=ra(b),f=0==(g|0);a:do{if(!f){for(var e=g;;){var l=Ib(b,e),h=0==(l|0);b:do{if(!h){for(var n=l;;){if(ng(n|0,c,d),n=yb(b,n),0==(n|0)){break b}}}}while(0);e=ba(b,e);if(0==(e|0)){break a}}}}while(0);g=b+36|0;f=a[g>>2];if(0==(f|0)){if(b=a[b+40>>2],0!=(b|0)){for(;!(ng(a[b+4>>2]|0,c,d),b=a[b+8>>2],0==(b|0));){}}}else{if(b=ra(a[f+20>>2]),0!=(b|0)){for(;;){f=a[Yd(b)+40>>2];e=0==(f|0);a:do{if(!e){for(l=f;;){if(ng(a[l+4>>2]|0,c,d),l=a[l+8>>2],0==(l|0)){break a}}}}while(0);b=ba(a[a[g>>2]+20>>2],b);if(0==(b|0)){break}}}}}function Mp(b,c,d){b=0==(b|0)?a[qa+12>>2]:b;return(b|0)!=(a[b+32>>2]|0)?0:c=ui(b|0,c,d)}function xi(b,c,d){b=0==(b|0)?a[qa+12>>2]:b;return(b|0)!=(a[b+32>>2]|0)?0:c=ui(a[a[b+40>>2]>>2]|0,c,d)}function Th(b,c,d){b=0==(b|0)?a[qa+12>>2]:b;return(b|0)!=(a[b+32>>2]|0)?0:c=ui(a[a[b+40>>2]+4>>2]|0,c,d)}function Tv(b){Kc(a[b+4>>2]);var c=b+8|0,d=a[c>>2];if(0!=(d|0)){var g=a[d>>2],f=0==(g|0);a:do{if(f){var e=d}else{for(var l=0,h=g;;){l=l+1|0;dc(a[h>>2]);dc(a[h+4>>2]);G(h);var n=a[c>>2],h=a[n+(l<<2)>>2];if(0==(h|0)){e=n;break a}}}}while(0);G(e)}G(b)}function Uv(b){var c,d=Yc(1,12);c=d>>2;a[c]=b;a[c+1]=Nc(EL,a[Xc>>2]);a[c+2]=0;return d}function Vv(b,c){var d=rc(a[c+4>>2]);if(0<(d|0)){for(var g=c+8|0,f=0;;){var e=a[a[g>>2]+(f<<2)>>2],l=BL(b,a[e>>2],a[e+4>>2]);m[l+12|0]=m[e+12|0];m[l+13|0]=m[e+13|0];f=f+1|0;if((f|0)==(d|0)){break}}}}function V(a,b){return mb(a,FL(a,b))}function FL(b,c){var d=$(b,c);return 0==(d|0)?-1:d=a[d+8>>2]}function yd(a,b,c){qc(a,FL(a,b),c)}function qc(b,c,d){if(-1>=(c|0)){return-1}var g=(c<<2)+a[b+4>>2]|0;dc(a[g>>2]);a[g>>2]=Dc(d);b=a[b+8>>2]+((c|0)/8&-1)|0;m[b]=(m[b]&255|1<<(c&7))&255;return 0}function $J(b,c,d,g){var f=$(b,c);0==(f|0)?(g=0==(g|0)?Y|0:g,f=a[b>>2]<<28>>28,c=2==(f|0)?Th(a[a[b+12>>2]+20>>2],c,g):3==(f|0)?Mp(a[b+32>>2],c,g):1==(f|0)?xi(a[b+20>>2],c,g):0):c=f;qc(b,a[c+8>>2],d)}function po(b,c){var d,g=a[b>>2]<<28>>28,f=2==(g|0);if((g|0)==(a[c>>2]<<28>>28|0)){var g=0,e=a[ro(b)+8>>2];a:for(;;){for(g=0==(g|0);;){if(!g){break a}var l=e+4|0,e=a[e>>2];d=e>>2;if(0==(e|0)){break a}if(!f){break}if(0==(a[d+2]|0)){e=l}else{break}}g=$(c,a[d]);if(0==(g|0)){break}g=qc(c,a[g+8>>2],mb(b,a[d+2]));e=l}}}function ng(b,c,d){var g=a[c+8>>2];if(0==(d|0)){0==(m[a[b+8>>2]+((g|0)/8&-1)|0]<<24>>24&1<<(g&7)|0)&&(b=b+4|0,dc(a[a[b>>2]+(g<<2)>>2]),c=Dc(a[c+4>>2]),a[a[b>>2]+(g<<2)>>2]=c)}else{var d=(b+4|0)>>2,f=a[d],f=0==(f|0)?Gb((g<<2)+4|0):mc(f,(g<<2)+4|0);a[d]=f;c=Dc(a[c+4>>2]);a[a[d]+(g<<2)>>2]=c;0==(g&7|0)&&(b=b+8|0,c=a[b>>2],g=(g|0)/8&-1,d=g+1|0,c=0==(c|0)?Gb(d):mc(c,d),a[b>>2]=c,m[c+g|0]=0)}}function Kr(b,c,d){var g=b+24|0,f=lj(a[g>>2],c,d,0);return 0!=(f|0)?f:0!=(a[b>>2]&16|0)?0:b=lj(a[g>>2],d,c,0)}function lj(b,c,d,g){var f,e=h;h+=32;f=e>>2;var l=e+28|0;a[l>>2]=g;a[f+4]=c;a[f+3]=d;g=0!=(g|0);a[f+1]=g?l:0;f=a[b>>2];l=e|0;if(g){return c=J[f](b,l,4),h=e,c}b=J[f](b,l,8);if(0==(b|0)||(a[b+16>>2]|0)==(c|0)&&(a[b+12>>2]|0)==(d|0)){return h=e,b}h=e;return 0}function GL(b,c){var d=a[c>>2];16==(d&240|0)&&(a[c>>2]=d&-241|32);Pl(b,c)}function Pl(b,c){var d=b+24|0,g=a[d>>2],f=c|0;if(0==(J[a[g>>2]](g,f,4)|0)){g=c+16|0;mj(b,a[g>>2]);var e=c+12|0;mj(b,a[e>>2]);var l=b+28|0,h=a[l>>2];J[a[h>>2]](h,f,1);d=a[d>>2];J[a[d>>2]](d,f,1);d=a[l>>2];f=J[a[d>>2]](d,f,16);0!=(f|0)&&(a[f+16>>2]|0)==(a[g>>2]|0)&&(a[f+12>>2]|0)==(a[e>>2]|0)&&(f=a[c>>2],268435456>f<<24>>>0&&(a[c>>2]=f&-241|16));if(0==(a[b>>2]&64|0)&&(g=a[b+36>>2],f=a[g+20>>2],g=Og(f,g),0!=(g|0))){for(;!(Pl(Yd(a[g+16>>2]),c),g=Ql(f,g),0==(g|0));){}}}}function Ok(a,b){if(0==(a|0)|0==(b|0)){var c=0}else{c=Ib(a,b),c=0!=(c|0)?c:Og(a,b)}return c}function Ib(b,c){var d,g=h;h+=28;d=g>>2;if(0==(b|0)|0==(c|0)){return h=g,0}a[d+4]=c;a[d+3]=0;a[d+1]=0;d=a[b+28>>2];d=J[a[d>>2]](d,g|0,8);if(0==(d|0)){return h=g,d}h=g;return(a[d+16>>2]|0)==(c|0)?d:0}function Og(b,c){var d,g=h;h+=28;d=g>>2;if(0==(b|0)|0==(c|0)){return h=g,0}a[d+3]=c;a[d+4]=0;a[d+1]=0;d=a[b+24>>2];d=J[a[d>>2]](d,g|0,8);if(0==(d|0)){return h=g,d}h=g;return(a[d+12>>2]|0)==(c|0)?d:0}function Pk(b,c,d){var g;if(0==(b|0)|0==(c|0)|0==(d|0)){var f;return 0}var e=(a[c+16>>2]|0)==(d|0);a:do{if(e){var l=a[b+28>>2],l=J[a[l>>2]](l,c|0,8);if(0!=(l|0)&&(a[l+16>>2]|0)==(d|0)){return f=l}for(var l=b+24|0,h=Og(b,d);;){if(0==(h|0)){var n=0;break a}var j=a[h+12>>2];if(!((j|0)==(a[h+16>>2]|0)&(j|0)==(d|0))){n=h;break a}j=a[l>>2];h=J[a[j>>2]](j,h|0,8)}}else{if((a[c+12>>2]|0)==(d|0)){n=a[b+24>>2],n=J[a[n>>2]](n,c|0,8)}else{return f=0}}}while(0);b=b+24|0;for(c=n;;){if(0==(c|0)){f=0;g=101;break}var e=a[c+12>>2],p=(e|0)==(d|0);if(!((e|0)==(a[c+16>>2]|0)&p)){g=99;break}e=a[b>>2];c=J[a[e>>2]](e,c|0,8)}if(99==g){return p?c:0}if(101==g){return f}}function yb(b,c){var d=a[b+28>>2],d=J[a[d>>2]](d,c|0,8);return 0==(d|0)?d:(a[d+16>>2]|0)==(a[c+16>>2]|0)?d:0}function Ql(b,c){var d=a[b+24>>2],d=J[a[d>>2]](d,c|0,8);return 0==(d|0)?d:(a[d+12>>2]|0)==(a[c+12>>2]|0)?d:0}function Wv(b,c,d,g){var f,e=Yc(1,a[qa+8>>2]);f=e>>2;a[e>>2]=a[e>>2]&-16|2;a[f+4]=c;a[f+3]=d;d=(b+16|0)>>2;b=a[d]+20|0;c=a[b>>2];a[b>>2]=c+1|0;a[f+5]=c;c=rc(a[a[a[d]+8>>2]+4>>2]);if(0==(c|0)){return a[f+1]=0,a[f+2]=0,e}b=(e+4|0)>>2;a[b]=Yc(c,4);a[f+2]=Yc((c+7|0)/8&-1,1);if(0>=(c|0)){return e}f=g+4|0;if(0==(g|0)){for(g=0;!(f=Dc(a[a[a[a[a[d]+8>>2]+8>>2]+(g<<2)>>2]+4>>2]),a[a[b]+(g<<2)>>2]=f,g=g+1|0,(g|0)==(c|0));){}}else{for(g=0;!(d=Dc(a[a[f>>2]+(g<<2)>>2]),a[a[b]+(g<<2)>>2]=d,g=g+1|0,(g|0)==(c|0));){}}return e}function uh(b,c,d){var g,f,e=h;h+=128;g=(b+40|0)>>2;f=a[a[g]+4>>2];var l=a[a[f+4>>2]>>2];a[f+12>>2]=d;a[a[a[g]+4>>2]+16>>2]=c;f=b>>2;do{if(0==(a[f]&32|0)){if(0==m[l]<<24>>24){var k=e|0,n=a[Xv>>2];a[Xv>>2]=n+1|0;Ma(k,dv|0,(j=h,h+=4,a[j>>2]=n,j));a[a[a[a[g]+4>>2]+4>>2]>>2]=k;k=0}else{k=b+24|0;n=lj(a[k>>2],c,d,l);if(0==(n|0)){if(0!=(a[f]&16|0)){k=32;break}f=lj(a[k>>2],d,c,l);if(0==(f|0)){k=32;break}else{c=f}}else{c=n}GL(b,c);b=c;g=a[g];g=g+4|0;g>>=2;g=a[g];g=g+4|0;g>>=2;g=a[g];g>>=2;a[g]=l;h=e;return b}}else{k=b+24|0;n=lj(a[k>>2],c,d,0);if(0==(n|0)){if(0!=(a[f]&16|0)){k=0;break}f=lj(a[k>>2],d,c,0);if(0==(f|0)){k=0;break}else{c=f}}else{c=n}Pl(b,c);b=c;g=a[g];g=g+4|0;g>>=2;g=a[g];g=g+4|0;g>>=2;g=a[g];g>>=2;a[g]=l;h=e;return b}}while(0);c=Wv(b,c,d,a[a[g]+4>>2]);Pl(b,c);b=a[g];d=a[b>>2];a[a[b+4>>2]+16>>2]=d;a[a[a[g]+4>>2]+12>>2]=d;a[c>>2]=a[c>>2]&-241|k;g=a[g];g=(g+4|0)>>2;g=a[g];g=(g+4|0)>>2;g=a[g];a[g>>2]=l;h=e;return c}function HL(b){var c=b|0;a[b>>2]|=15;var d=rc(a[a[a[a[a[b+16>>2]+20>>2]+16>>2]+8>>2]+4>>2]),g=b+4|0,f=a[g>>2];if(0<(d|0)){for(var e=0;;){if(dc(a[f+(e<<2)>>2]),e=e+1|0,f=a[g>>2],(e|0)==(d|0)){l=f;break}}G(l)}else{var l,d=f;G(d)}b=a[(b+8|0)>>2];G(b);G(c)}function Np(b,c){var d,g=h;d=(b+24|0)>>2;var f=a[d],e=c|0;if(0==(J[a[f>>2]](f,e,4)|0)){la(1,IL|0,(j=h,h+=4,a[j>>2]=c,j)),Gn(a[d],70)}else{f=0==(a[b>>2]&64|0);a:do{if(f){var l=a[b+36>>2],k=a[l+20>>2],l=Ib(k,l);if(0!=(l|0)){for(;;){var n=Yd(a[l+12>>2]),m=a[n+24>>2];0!=(J[a[m>>2]](m,e,4)|0)&&Np(n,c);l=yb(k,l);if(0==(l|0)){break a}}}}}while(0);d=a[d];J[a[d>>2]](d,e,2);d=a[b+28>>2];J[a[d>>2]](d,e,2);(a[b+32>>2]|0)==(b|0)&&HL(c)}h=g}function Yd(b){return 0!=(a[a[b+20>>2]+36>>2]|0)?0:b=a[a[b+4>>2]>>2]}function JL(b,c){var d=0==(b|0)?0:a[b>>2],g=a[c+4>>2],g=0==(g|0)?0:a[g>>2];return 0==(d|0)?(0!=(g|0))<<31>>31:0==(g|0)?1:d=ka(d,g)}function Yv(b,c){var d,g=Yc(1,12);d=g>>2;var f=b+40|0;a[d+2]=a[f>>2];if(0==(c|0)){var e=0,l=0}else{e=a[c+4>>2],l=a[c>>2]}l=Zv(b,KL|0,l);a[d]=l;a[d+1]=Wv(b,l,l,e);a[f>>2]=g}function LL(b){var c;c=b+40|0;b=a[c>>2];if(0!=(b|0)){a[c>>2]=a[b+8>>2];var d=b|0,g=a[d>>2];c=(b+4|0)>>2;a[a[c]+12>>2]=g;a[a[c]+16>>2]=g;HL(a[c]);$v(a[d>>2]);G(b)}}function xn(b,c){var d=Op(b,0,c),g=Op(b,0,7);if(0==(d|0)|0==(g|0)){return 0}xi(g,ML|0,0);g=cl(g,b);a[d+36>>2]=g;a[a[g+4>>2]>>2]=d|0;return d}function Op(b,c,d){var g,f=h;if(0==m[qa+31|0]<<24>>24){return la(1,NL|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),h=f,0}var e=Yc(1,a[qa>>2]);g=e>>2;a[e>>2]=d<<4&240|a[e>>2]&-256|3;a[g+5]=Nc(Uh,a[Xc>>2]);a[g+6]=Nc(aw,a[Xc>>2]);a[g+7]=Nc(nj,a[Xc>>2]);d=0==(c|0);a:do{if(d){var l=OL();a[g+4]=l;a[g+8]=e;l=rc(a[a[l+12>>2]+4>>2]);if(0==(l|0)){a[g+1]=0,a[g+2]=0}else{var k=e+4|0;a[k>>2]=Yc(l,4);a[g+2]=Yc((l+7|0)/8&-1,1);if(0<(l|0)){for(var n=0;;){var z=Dc(a[a[a[qa+12>>2]+4>>2]+(n<<2)>>2]);a[a[k>>2]+(n<<2)>>2]=z;n=n+1|0;if((n|0)==(l|0)){break a}}}}}else{if(l=c+16|0,a[g+4]=a[l>>2],a[g+8]=a[c+32>>2],l=rc(a[a[a[l>>2]+12>>2]+4>>2]),0==(l|0)){a[g+1]=0,a[g+2]=0}else{if(k=e+4|0,a[k>>2]=Yc(l,4),a[g+2]=Yc((l+7|0)/8&-1,1),0<(l|0)){n=c+4|0;for(z=0;;){var p=Dc(a[a[n>>2]+(z<<2)>>2]);a[a[k>>2]+(z<<2)>>2]=p;z=z+1|0;if((z|0)==(l|0)){break a}}}}}}while(0);a[g+9]=0;a[g+3]=Dc(b);a[g+10]=0;d?Yv(e,a[e+40>>2]):Yv(e,a[c+40>>2]);h=f;return e}function oo(b,c){var d=a[a[b+36>>2]+20>>2],g=Mi(d,c);if(0==(g|0)){g=Op(c,b,a[b>>2]<<24>>28);if(0==(g|0)){return 0}d=cl(d,c);a[g+36>>2]=d;a[a[d+4>>2]>>2]=g|0;d=g}else{d=Yd(g)}PL(b,d);return d}function PL(b,c){var d=a[b+36>>2],g=a[c+36>>2];0==(d|0)|0==(g|0)||0==(QL(g,d)|0)&&uh(a[d+20>>2],d,g)}function RL(b,c){var d=a[b+36>>2];0==(d|0)?d=0:(d=Mi(a[d+20>>2],c),d=0==(d|0)?0:Yd(d));return d}function QL(b,c){var d=Nc(Uh,a[Xc>>2]),g=SL(d,b,c);Kc(d);return g}function Sf(b){var c,d=b>>2;if(0!=(b|0)){c=b>>2;var g=a[c];if(3==(g&15|0)){g=0==(g&64|0);a:do{if(g){for(var f=b+36|0,e=a[f>>2],l=a[e+20>>2],h=l,n=e;;){e=0;n=Ib(h,n);b:for(;;){for(;;){if(0==(n|0)){break b}var j=yb(h,n),p=n+12|0;if(0==(Ql(h,Og(h,a[p>>2]))|0)){break}else{n=j}}Sf(Yd(a[p>>2]));e=1;n=j}if(0==(e|0)){var m=l;break a}n=a[f>>2]}}else{m=0}}while(0);j=b+40|0;p=0==(a[j>>2]|0);a:do{if(!p){for(;;){if(LL(b),0==(a[j>>2]|0)){break a}}}}while(0);a:do{if(g&&(j=rc(a[a[a[d+4]+12>>2]+4>>2]),0<(j|0))){p=b+4|0;for(f=0;;){if(dc(a[a[p>>2]+(f<<2)>>2]),f=f+1|0,(f|0)==(j|0)){break a}}}}while(0);j=a[d+1];0!=(j|0)&&G(j);j=a[d+2];0!=(j|0)&&G(j);do{if((a[d+8]|0)==(b|0)){j=b;p=ra(j);f=0==(p|0);a:do{if(!f){for(l=p;;){if(h=ba(j,l),Pp(j,l),0==(h|0)){break a}else{l=h}}}}while(0);g&&Sf(a[a[d+9]+20>>2]);j=cc;j=(b+16|0)>>2;Tv(a[a[j]+12>>2]);Tv(a[a[j]+4>>2]);Tv(a[a[j]+8>>2]);Kc(a[a[j]>>2]);G(a[j])}else{g&&bl(m,a[d+9]|0)}}while(0);Kc(a[d+5]);Kc(a[d+6]);Kc(a[d+7]);dc(a[d+3]);a[c]|=15;G(b|0)}}}function bl(b,c){var d=a[c>>2]<<28>>28;1==(d|0)?Pp(b,c):2==(d|0)?Np(b,c):3==(d|0)&&Sf(c)}function Ed(b,c){var d=a[c>>2]<<28>>28;1==(d|0)?d=0!=(TL(b,a[c+16>>2])|0)&1:3==(d|0)?d=QL(a[b+36>>2],a[c+36>>2]):2==(d|0)?(d=a[b+24>>2],d=0!=(J[a[d>>2]](d,c,4)|0)&1):d=0;return d}function gt(b,c){var d=a[c>>2]<<28>>28;1==(d|0)?mj(b,c):2==(d|0)?GL(b,c):3==(d|0)&&PL(b,c)}function Vh(b){return rc(a[b+20>>2])}function UL(b,c){0!=(b|0)&&(a[qa+36>>2]=b);0!=(c|0)&&(a[qa+40>>2]=c)}function SL(b,c,d){var g,f;if((c|0)==(d|0)){var e;return 1}g=(c+20|0)>>2;if(0!=(Kr(a[a[g]+32>>2],c,d)|0)){return 1}var l=b|0;J[a[l>>2]](b,c|0,1);for(c=Ib(a[g],c);;){if(0==(c|0)){e=0;f=354;break}var h=c+12|0;if(0==(J[a[l>>2]](b,a[h>>2]|0,4)|0)&&0!=(SL(b,a[h>>2],d)|0)){e=1;f=353;break}c=yb(a[g],c)}if(353==f||354==f){return e}}function OL(){var b=Yc(1,24);a[b>>2]=Nc(bw,a[Xc>>2]);var c=b+12|0;a[c>>2]=Uv(Yf|0);var d=b+4|0;a[d>>2]=Uv(jh|0);var g=b+8|0;a[g>>2]=Uv(Dg|0);var f=a[qa+12>>2];if(0==(f|0)){return b}Vv(a[c>>2],a[a[f+16>>2]+12>>2]);Vv(a[d>>2],a[a[a[qa+12>>2]+16>>2]+4>>2]);Vv(a[g>>2],a[a[a[qa+12>>2]+16>>2]+8>>2]);return b}function VL(a,b){if(0==(bg(a)|0)){var c=Rl(a,b);return c}m[b]=60;var c=b+1|0,d=m[a],f=0==d<<24>>24;a:do{if(f){var e=b,l=c}else{for(var h=a,n=c,j=d;;){h=h+1|0;m[n]=j;var j=n+1|0,p=m[h];if(0==p<<24>>24){e=n;l=j;break a}else{n=j,j=p}}}}while(0);m[l]=62;m[e+2|0]=0;return b}function Rl(a,b){var c;if(0==(a|0)||0==m[a]<<24>>24){return c=oj|0}m[b]=34;var d=m[a],f=0==(pj(d)|0),e=1,l=0,h=a+1|0,n=d,d=b+1|0,j=0;a:for(;;){var p=l,l=n,s=d;b:for(;;){do{if(0==l<<24>>24){break a}else{if(34==l<<24>>24){m[s]=92;var d=1,v=s+1|0}else{v=95!=l<<24>>24&0==(oC(l&255)|0)&-1>24,d=v|f?v?1:p:0==(pj(l)|0)?1:p,v=s}}}while(0);var t=v+1|0;m[v]=l;var u=h+1|0,w=m[h],A=j+1|0,h=w&255,j=0!=w<<24>>24;do{if(!(e|j^1)){do{if(0==(pj(l)|0)&&0==(ti(l<<24>>24)|0)&&92!=m[v]<<24>>24){break b}}while(0);if(0==(pj(w)|0)&&0==(ti(h)|0)){break b}}}while(0);if(j){if(0!=(A&127|0)){p=d,h=u,l=w,s=t}else{l=m[v];0==(pj(l)|0)?0!=(ti(l<<24>>24)|0)?c=392:92==m[v]<<24>>24&&(c=392):c=392;if(392==c){c=0;if(0!=(pj(w)|0)){e=0;l=d;h=u;n=w;d=t;j=A;continue a}if(0!=(ti(h)|0)){e=0;l=d;h=u;n=w;d=t;j=A;continue a}}m[t]=92;m[v+2|0]=10;p=1;h=u;l=w;s=v+3|0}}else{p=d,h=u,l=0,s=t}j=A}m[t]=92;m[v+2|0]=10;l=e=1;h=u;n=w;d=v+3|0;j=A}m[s]=34;m[s+1|0]=0;return 0!=(p|0)?b:c=-1<(cw(a)|0)?b:a}function hb(b,c){J[a[qa+36>>2]](b,1,Ba(b),c)}function Ge(b,c){var d=h;h+=4;m[d]=b&255;J[a[qa+36>>2]](d,1,1,c);h=d}function xd(a){return VL(a,Sl(a))}function Sl(b){var b=(Ba(b)<<1)+2|0,b=1024>>0?b:1024,c=a[dw>>2];if((b|0)<=(a[ew>>2]|0)){return c}c=0==(c|0)?Gb(b):mc(c,b);a[dw>>2]=c;a[ew>>2]=b;return c}function fw(b,c,d,g,f){var e,l=h;h+=4;a[l>>2]=0;var k=d+20|0,n=a[a[a[k>>2]+16>>2]+4>>2];do{if(0!=(g|0)){var j=n+4|0;if(0<(rc(a[j>>2])|0)){for(var p=n+8|0,s=d|0,v=d+12|0,t=b+40|0,u=0,w=0;;){var A=a[a[p>>2]+(u<<2)>>2];if(0!=m[A+12|0]<<24>>24){e=(A|0)>>2;var B=V(s,a[e]),A=(a[k>>2]|0)==(b|0)?a[A+4>>2]:V(a[a[t>>2]>>2]|0,a[e]);0!=(ka(A,B)|0)&&(0==(w|0)&&(Pg(c,f),hb(xd(a[v>>2]),c),w=1),WL(c,l,a[e],B))}e=w;u=u+1|0;if((u|0)<(rc(a[j>>2])|0)){w=e}else{break}}if(0!=(e|0)){hb(0<(a[l>>2]|0)?Tl|0:Wh|0,c);h=l;return}}}}while(0);0==(Ib(b,d)|0)&&0==(Og(b,d)|0)&&(Pg(c,f),hb(xd(a[d+12>>2]),c),hb(Wh|0,c));h=l}function Pg(a,b){if(0!=(b|0)){for(var c=b;!(c=c-1|0,Ge(9,a),0==(c|0));){}}}function WL(b,c,d,g){var f=a[c>>2];a[c>>2]=f+1|0;hb(0<(f|0)?gw|0:Qp|0,b);hb(xd(d),b);Ge(61,b);hb(xd(g),b)}function hw(b,c,d,g){var f,e=h;h+=4;a[e>>2]=0;var l=a[d+16>>2],k=a[a[a[l+20>>2]+16>>2]+8>>2],n=a[d+4>>2];if(0==(n|0)){var j=Y|0,n=Y|0}else{j=a[n+8>>2],n=a[n+4>>2]}XL(c,a[l+12>>2],n);hb(0!=(a[b>>2]&16|0)?ns|0:os|0,c);XL(c,a[a[d+12>>2]+12>>2],j);if(0==(g|0)){b=Wh|0}else{if(g=k+4|0,0<(rc(a[g>>2])|0)){for(var k=k+8|0,l=d|0,j=b+32|0,n=b+40|0,p=0;;){var s=a[a[k>>2]+(p<<2)>>2];if(0!=m[s+12|0]<<24>>24&&!(0==(p|0)&&32!=(a[d>>2]&240|0))){f=(s|0)>>2;var v=V(l,a[f]),s=(a[j>>2]|0)==(b|0)?a[s+4>>2]:V(a[a[n>>2]+4>>2]|0,a[f]);0!=(ka(s,v)|0)&&WL(c,e,a[f],v)}f=p+1|0;if((f|0)<(rc(a[g>>2])|0)){p=f}else{break}}b=0<(a[e>>2]|0)?Tl|0:Wh|0}else{b=Wh|0}}hb(b,c);h=e}function XL(a,b,c){hb(xd(b),a);0!=(c|0)&&0!=m[c]<<24>>24&&(0!=(bg(c)|0)?(Ge(58,a),hb(VL(c,Sl(c)),a)):(b=Jc(c,58),0==(b|0)?(Ge(58,a),hb(Rl(c,Sl(c)),a)):(m[b]=0,Ge(58,a),hb(Rl(c,Sl(c)),a),Ge(58,a),c=b+1|0,hb(Rl(c,Sl(c)),a),m[b]=58)))}function iw(b,c){var d;0==(a[qa+36>>2]|0)&&(a[qa+36>>2]=182);0==(a[qa+40>>2]|0)&&(a[qa+40>>2]=60);hb(0!=(a[b>>2]&32|0)?YL|0:Y|0,c);hb(0!=(a[b>>2]&16|0)?wv|0:Yf|0,c);d=b+12|0;0!=(td(a[d>>2],jw|0,10)|0)&&(Ge(32,c),hb(xd(a[d>>2]),c));hb(kw|0,c);d=(b+16|0)>>2;lw(a[a[d]+12>>2],c);lw(a[a[d]+4>>2],c);lw(a[a[d]+8>>2],c);var g;d=Yc(1,20);g=d>>2;var f=Nc(Uh,a[Xc>>2]);a[g]=f;var e=a[b+20>>2];a[Ul>>2]=f;Gn(e,230);f=Nc(Rp,a[Xc>>2]);a[g+1]=f;e=a[b+28>>2];a[Ul>>2]=f;Gn(e,230);a[g+4]=Nc(Uh,a[Xc>>2]);a[g+3]=Nc(nj,a[Xc>>2]);f=Nc(Uh,a[Xc>>2]);a[g+2]=f;g=a[a[a[b+36>>2]+20>>2]+20>>2];a[Ul>>2]=f;Gn(g,230);mw(b,c,0,0,d);hb(Sp|0,c);g=d>>2;Kc(a[g]);Kc(a[g+4]);Kc(a[g+1]);Kc(a[g+3]);Kc(a[g+2]);G(d);return J[a[qa+40>>2]](c)}function lw(b,c){var d=b+4|0;if(0<(rc(a[d>>2])|0)){for(var g=b+8|0,f=b|0,e=0,l=0;;){var h=a[a[g>>2]+(e<<2)>>2],j=h+4|0,z=a[j>>2];0==(z|0)?h=l:0==m[z]<<24>>24?h=l:(0==(l|0)?(Ge(9,c),hb(a[f>>2],c),hb(Qp|0,c)):hb(gw|0,c),hb(a[h>>2],c),Ge(61,c),hb(xd(a[j>>2]),c),h=l+1|0);e=e+1|0;if((e|0)<(rc(a[d>>2])|0)){l=h}else{break}}0<(h|0)&&hb(Tl|0,c)}}function pj(a){return 10>((a<<24>>24)-48|0)>>>0?1:46==a<<24>>24||45==a<<24>>24||43==a<<24>>24?1:0}function mw(b,c,d,g,f){var e,l,h,j,m=g+1|0;if(0==(g|0)){Vl(c,m,b|0,0,a[a[b+16>>2]+12>>2]);var p=b+36|0}else{Pg(c,g);h=f+8|0;j=a[h>>2];l=b+36|0;if(0==(J[a[j>>2]](j,a[l>>2]|0,4)|0)){hb(nw|0,c);hb(xd(a[b+12>>2]),c);hb(Wh|0,c);return}j=b+12|0;0==(td(a[j>>2],jw|0,10)|0)?hb(ZL|0,c):(hb(nw|0,c),hb(xd(a[j>>2]),c),hb(kw|0,c));j=(b+16|0)>>2;Vl(c,m,b|0,d|0,a[a[j]+12>>2]);(a[b+32>>2]|0)==(d|0)?e=d=0:(e=a[d+40>>2],d=a[e+4>>2],e=a[e>>2]);p=b+40|0;Vl(c,m,a[a[p>>2]>>2]|0,e|0,a[a[j]+4>>2]);Vl(c,m,a[a[p>>2]+4>>2]|0,d|0,a[a[j]+8>>2]);h=a[h>>2];J[a[h>>2]](h,a[l>>2]|0,2);p=l}h=(f+16|0)>>2;j=a[h];l=(f+12|0)>>2;d=a[l];e=a[a[p>>2]+20>>2];a[h]=Nc(bw,a[Xc>>2]);a[l]=Nc(nj,a[Xc>>2]);var p=Ib(e,a[p>>2]),s=0==(p|0);a:do{if(!s){for(var v=p;;){if(mw(Yd(a[v+12>>2]),c,b,m,f),v=yb(e,v),0==(v|0)){break a}}}}while(0);e=ra(b);p=0==(e|0);a:do{if(!p){for(var s=f|0,v=j|0,t=e;;){var u=a[s>>2],w=t|0;0==(J[a[u>>2]](u,w,4)|0)?(u=a[h],0==(J[a[u>>2]](u,w,4)|0)&&fw(b,c,t,0,m)):(fw(b,c,t,1,m),u=a[s>>2],J[a[u>>2]](u,w,2));J[a[v>>2]](j,w,1);t=ba(b,t);if(0==(t|0)){break a}}}}while(0);e=(b+28|0)>>2;pk(a[e],Rp,0);p=a[e];p=J[a[p>>2]](p,0,128);s=0==(p|0);a:do{if(!s){v=f+4|0;t=d|0;for(w=p;;){var u=w,A=a[v>>2];0==(J[a[A>>2]](A,w,4)|0)?(A=a[l],0==(J[a[A>>2]](A,w,4)|0)&&(Pg(c,m),hw(b,c,u,0))):(Pg(c,m),hw(b,c,u,1),u=a[v>>2],J[a[u>>2]](u,w,2));J[a[t>>2]](d,w,1);u=a[e];w=J[a[u>>2]](u,w,8);if(0==(w|0)){break a}}}}while(0);pk(a[e],nj,0);Kc(a[h]);a[h]=j;Kc(a[l]);a[l]=d;0<(g|0)&&(Pg(c,g),hb(Sp|0,c))}function Vl(b,c,d,g,f){var e,l=f+4|0;if(0<(rc(a[l>>2])|0)){for(var h=f+8|0,j=0==(g|0),f=f|0,z=c+1|0,p=0,s=0;;){var v=a[a[h>>2]+(p<<2)>>2];e=v>>2;if(0==m[v+12|0]<<24>>24){e=s}else{var v=a[e+2],t=mb(d,v);0==(ka(t,j?a[e+1]:mb(g,v))|0)?e=s:(0==(s|0)?(Pg(b,c),hb(a[f>>2],b),hb(Qp|0,b)):(hb($L|0,b),Pg(b,z)),hb(xd(a[e]),b),Ge(61,b),hb(xd(t),b),e=s+1|0)}p=p+1|0;if((p|0)<(rc(a[l>>2])|0)){s=e}else{break}}0<(e|0)&&hb(Tl|0,b)}}function vC(b){a[ow>>2]=b;var c=a[qa+32>>2];var d=0!=(c|0)?c:a[qa+32>>2]=386;a[Gc>>2]=0;c=a[qa+24>>2];0==(c|0)&&(a[Xh>>2]=1024,c=Yc(1024,1),a[qa+24>>2]=c,c=Yc(a[Xh>>2],1),a[Wl>>2]=c,d=a[qa+32>>2],c=a[qa+24>>2]);J[d](c,0,b);D[qa+28>>1]=0}function aM(){var b,c=h;h+=1040;var d,g=c+16;if(0!=m[qa+30|0]<<24>>24){m[qa+30|0]=0;var f;h=c;return-1}for(var e=a[Gc>>2];;){if(0==(e|0)){d=576}else{if(0==m[e]<<24>>24){d=576}else{var l=e}}if(576==d&&(d=0,l=pw(),a[Gc>>2]=l,0==(l|0))){d=577;break}if(1==(a[Qd>>2]|0)){if(0!=(td(l,bM|0,3)|0)){var k=l}else{k=l+3|0,a[Gc>>2]=k}}else{k=l}k=cM(k);a[Gc>>2]=k;var n=m[k];if(0==n<<24>>24){e=k}else{break}}if(577==d){if(!m[Xl]){return h=c,-1}f=m[qw]&255;la(0,dM|0,(j=h,h+=4,a[j>>2]=f,j));h=c;return-1}d=a[Wl>>2];if(34==n<<24>>24){f=eM(k,d),a[Gc>>2]=f,f=Dc(d),a[Yh>>2]=f,f=265}else{if(60==n<<24>>24){fc(c,1024,g|0);l=a[Gc>>2];m[rw]=a[Qd>>2]&255;d=h;g=(c+4|0)>>2;k=c+8|0;l=l+1|0;n=1;b:for(;;){for(;;){e=m[l];if(62==e<<24>>24){f=779;break}else{if(60==e<<24>>24){f=780;break}else{if(0!=e<<24>>24){var z=n,p=e;break}}}l=pw();if(0==(l|0)){break b}}if(779==f){if(f=0,z=n-1|0,0==(z|0)){b=l;f=787;break}else{p=62}}else{780==f&&(f=0,z=n+1|0,p=60)}n=a[g];n>>>0>2]>>>0||(na(c,1),n=a[g]);a[g]=n+1|0;m[n]=p;l=l+1|0;n=z}787!=f&&(f=m[rw]&255,b=a[qj>>2],b=0!=(b|0)?b:Yl|0,la(0,fM|0,(j=h,h+=8,a[j>>2]=f,a[j+4>>2]=b,j)),b=0);h=d;f=b;a[Gc>>2]=0==(f|0)?0:f+1|0;b=(c+4|0)>>2;f=a[b];f>>>0>2]>>>0||(na(c,1),f=a[b]);m[f]=0;f=a[c>>2];a[b]=f;0==(a[Ne>>2]|0)&&gM();0==(f|0)?f=0:(b=a[Ne>>2],b=J[a[b>>2]](b,f-12|0,4),0==(b|0)?(b=Gb(Ba(f)+16|0),a[b+8>>2]=m[Tp]?-2147483647:1,Rf(b+12|0,f),f=a[Ne>>2],J[a[f>>2]](f,b,1)):(f=b+8|0,a[f>>2]=a[f>>2]+1|0),f=b,f=f+12|0);a[Yh>>2]=f;uc(c)}else{f=a[qa+20>>2];if(0!=(f|0)&&(b=Ba(f),0==(td(k,f,b)|0))){return a[Gc>>2]=k+b|0,h=c,263}f=hM(k,d);if(0!=(f|0)){return a[Gc>>2]=f,f=Dc(d),a[Yh>>2]=f,h=c,264}f=m[a[Gc>>2]];b=a[Gc>>2];if(!(0==((33<=(f&255)&&47>=(f&255)||58<=(f&255)&&64>=(f&255)||91<=(f&255)&&96>=(f&255)||123<=(f&255)&&126>=(f&255))|0)|95==f<<24>>24)){return a[Gc>>2]=b+1|0,f=m[b]<<24>>24,h=c,f}if(0==(b|0)){f=0}else{f=b;for(b=d;;){z=m[f];if(0==(oC(m[f]&255)|0)&&!(95==z<<24>>24|0>z<<24>>24)){break}m[b]=z;f=f+1|0;b=b+1|0}m[b]=0}a[Gc>>2]=f;f=cw(d);if(-1!=(f|0)){return h=c,f}f=Dc(d);a[Yh>>2]=f}f=264}h=c;return f}function cw(b){D[rj>>1]=0;var c=m[b];do{if(0==c<<24>>24){var d=0}else{for(var d=b,g=c,f=0;;){var g=0>g<<24>>24?127:g,e=-1>16;a:do{if(e){var l=g&255;do{if(0==((65<=l&&90>=l)|0)){if(0!=((97<=l&&122>=l)|0)){var h=g}else{h=D[rj>>1]=-1;break a}}else{h=vf(l)&255}}while(0);l=D[rj>>1]<<16>>16;h&=255;if(0==(a[iM+(h-97<<2)>>2]&a[Up+(l<<3)+4>>2]|0)){h=D[rj>>1]=-1}else{for(l=D[Up+(l<<3)+2>>1];;){var j=l<<16>>16;if((D[sw+(j<<2)>>1]<<16>>16|0)==(h|0)){break}else{l=l+1&65535}}h=D[sw+(j<<2)+2>>1];D[rj>>1]=h}}else{h=f}}while(0);d=d+1|0;f=m[d];if(0==f<<24>>24){break}else{g=f,f=h}}if(0>h<<16>>16){return b=-1}d=h}}while(0);return b=D[Up+(d<<16>>16<<3)>>1]<<16>>16}function pw(){var b=h;h+=8;for(var c,d=b+4|0,g=0;;){var f=a[Xh>>2];(g+128|0)<(f|0)||(f=f+1024|0,a[Xh>>2]=f,f=mc(a[qa+24>>2],f),a[qa+24>>2]=f,f=mc(a[Wl>>2],a[Xh>>2]),a[Wl>>2]=f,f=a[Xh>>2]);f=J[a[qa+32>>2]](a[qa+24>>2]+g+1|0,f+(g^-1)|0,a[ow>>2]);if(0==(f|0)){var e=g;break}var l=Ba(f);do{if(10==m[f+(l-1)|0]<<24>>24){if(35==m[f]<<24>>24&0==(g|0)){var k=f+1|0,k=0==(td(k,jM|0,4)|0)?f+5|0:k,n=Cd(k,kM|0,(j=h,h+=12,a[j>>2]=Qd,a[j+4>>2]=d,a[j+8>>2]=b,j)),z=a[Qd>>2];do{if(1>(n|0)){a[Qd>>2]=z+1|0}else{if(a[Qd>>2]=z-1|0,1<(n|0)){for(var p=k+a[b>>2]|0,s=p;;){var v=m[s];if(34==v<<24>>24||0==v<<24>>24){break}s=s+1|0}(s|0)!=(p|0)&&(m[s]=0,v=p,p=s-p|0,s=a[tw>>2],(s|0)<(p|0)?(s=0==(s|0)?Gb(p+1|0):mc(a[Zl>>2],p+1|0),a[Zl>>2]=s,a[tw>>2]=p,p=s):p=a[Zl>>2],Rf(p,v),a[qj>>2]=a[Zl>>2])}}}while(0);m[f]=0;k=1;n=0}else{a[Qd>>2]=a[Qd>>2]+1|0;c=l-2|0;var t=f+c|0;92!=m[t]<<24>>24?t=l:(m[t]=0,t=c);c=642}}else{t=l,c=642}}while(0);642==c&&(c=0,k=t,n=t+g|0);if(10==m[f+(k-1)|0]<<24>>24){e=n;break}else{g=n}}if(0>=(e|0)){return h=b,0}d=a[qa+24>>2]+1|0;h=b;return d}function la(b,c){var d=h;h+=4;a[d>>2]=arguments[la.length];var g=uw(b,c,a[d>>2]);h=d;return g}function cM(b){var c;a:for(;;){var d=m[b];do{if(0!=d<<24>>24&&!(0==(ah(d&255)|0)&&0==((0<=(m[b]&255)&&31>=(m[b]&255)||127===(m[b]&255))|0))){b=b+1|0;continue a}}while(0);var g=m[Xl];b:do{if(g){for(var d=b,f=m[b];;){if(0==f<<24>>24){break b}else{var e=d}for(;;){var h=0==f<<24>>24,k=e+1|0;if(!(42!=f<<24>>24&(h^1))){break}e=k;f=m[k]}if(h){d=e}else{if(f=m[k],47==f<<24>>24){break}else{d=k}}}m[Xl]=0;d=e+2|0}else{d=b}}while(0);b=m[d];b:do{if(0==b<<24>>24){var j=d;c=676;break a}else{if(47==b<<24>>24){g=m[d+1|0];if(47==g<<24>>24){g=d,f=0}else{if(42==g<<24>>24){m[Xl]=1;m[qw]=a[Qd>>2]&255;var z=d+2|0;break}else{j=d;c=677;break a}}for(;;){var p=g+1|0;if(f){z=g;break b}g=p;f=0==m[p]<<24>>24}}else{if(0!=(ah(b&255)|0)){z=d}else{if(0==((0<=(m[d]&255)&&31>=(m[d]&255)||127===(m[d]&255))|0)){j=d;c=678;break a}else{z=d}}}}}while(0);if(0==m[z]<<24>>24){j=z;c=679;break}else{b=z}}if(679==c||677==c||678==c||676==c){return j}}function eM(b,c){var d=h,g=m[b],f=b+1|0,e=m[f],l=0==e<<24>>24,k=e<<24>>24!=g<<24>>24&(l^1);a:do{if(k){for(var n=c,z=b,p=f,s=e;;){if(92==s<<24>>24){var s=z+2|0,v=m[s];v<<24>>24==g<<24>>24?(p=s,s=n):92!=v<<24>>24?s=n:(m[n]=92,p=s,s=n+1|0)}else{s=n}n=s+1|0;m[s]=m[p];v=p+1|0;s=m[v];z=0==s<<24>>24;if(s<<24>>24!=g<<24>>24&(z^1)){z=p,p=v}else{var t=n,u=p,w=v,A=z;break a}}}else{t=c,u=b,w=f,A=l}}while(0);A?(g=a[qj>>2],g=0!=(g|0)?g:Yl|0,f=a[Qd>>2],la(0,lM|0,(j=h,h+=8,a[j>>2]=g,a[j+4>>2]=f,j))):w=u+2|0;m[t]=0;h=d;return w}function hM(b,c){var d=h,g,f=m[b];if(45==f<<24>>24){f=b+1|0;m[c]=45;var e=c+1|0,l=f,k=m[f]}else{e=c,l=b,k=f}46==k<<24>>24?(k=l+1|0,m[e]=46,f=e+1|0,l=k,e=1,k=m[k]):(f=e,e=0);var n=10>((k&255)-48|0)>>>0;a:do{if(n){for(var z=l,p=f,s=k;;){var z=z+1|0,v=p+1|0;m[p]=s;s=m[z];if(10>((s&255)-48|0)>>>0){p=v}else{var t=z,u=v,w=1,A=s;break a}}}else{t=l,u=f,w=0,A=k}}while(0);do{if(46==A<<24>>24&0==(e|0)){if(m[u]=46,k=u+1|0,l=t+1|0,f=m[l],10>((f&255)-48|0)>>>0){for(var B=k;;){m[B]=f;var C=B+1|0,y=l+1|0,f=m[y];if(10>((f&255)-48|0)>>>0){B=C,l=y}else{break}}m[C]=0;B=y}else{var D=k,F=l;g=703}}else{D=u,F=t,g=703}}while(0);if(703==g){m[D]=0;if(0==(w|0)){return h=d,0}B=F}g=m[B];if(0==g<<24>>24){return h=d,B}if(0==(ti(g&255)|0)){if(95==m[B]<<24>>24){g=B}else{return h=d,B}}else{g=B}for(;;){var E=g+1|0,M=m[E];if(0==M<<24>>24){break}if(95==M<<24>>24|0!=(ti(M&255)|0)){g=E}else{break}}m[E]=0;g=a[qj>>2];g=0!=(g|0)?g:Yl|0;t=a[Qd>>2];la(0,mM|0,(j=h,h+=20,a[j>>2]=g,a[j+4>>2]=t,a[j+8>>2]=b,a[j+12>>2]=c,a[j+16>>2]=B,j));m[E]=M;h=d;return B}function vw(b){var c=h,d=D[qa+28>>1];D[qa+28>>1]=d+1&65535;if(0==d<<16>>16){var d=a[qj>>2],d=0!=(d|0)?d:Yl|0,g=a[Qd>>2];la(1,nM|0,(j=h,h+=16,a[j>>2]=d,a[j+4>>2]=g,a[j+8>>2]=b,a[j+12>>2]=g,j));var b=h,f,d=a[qa+24>>2]+1|0;if(0!=(a[Gc>>2]|0)){la(3,oM|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));for(g=a[Gc>>2];;){var e=g-1|0;if(e>>>0<=d>>>0){break}if(0==(ah(m[e]&255)|0)){g=e}else{f=732;break}}732==f&&(f=m[e],m[e]=0,la(3,d,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),m[e]=f);la(3,pM|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));f=a[Gc>>2];d=m[f];m[f]=0;la(3,e,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));m[a[Gc>>2]]=d;la(3,qM|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));la(3,a[Gc>>2],(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j))}h=b}h=c}function uw(b,c,d){var g,f=h;h+=4;g=f>>2;a[g]=d;var e=3==(b|0),l=e?a[ww>>2]:2==(b|0)?1:b;a[ww>>2]=l;var k=a[xw>>2];a[xw>>2]=k>>>0>l>>>0?k:l;if(l>>>0>2]>>>0){b=a[Vp>>2];if(0==(b|0)&&(b=wn(),a[Vp>>2]=b,0==(b|0))){return h=f,1}e?e=b:(e=zQa(b),a[sM>>2]=e,e=a[Vp>>2]);tM(e,c,a[g])}else{if(0!=(a[$l>>2]|0)){return uM(b,c,d),h=f,0}e?g=d:(e=1==(b|0)?yw|0:zw|0,Va(a[oa>>2],vM|0,(j=h,h+=4,a[j>>2]=e,j)),g=a[g]);tM(a[oa>>2],c,g)}h=f;return 0}function wM(b){var c=h;h+=4;a[c>>2]=arguments[wM.length];uw(1,b,a[c>>2]);h=c}function uM(b,c,d){var g=h;h+=4;var f;a[g>>2]=d;if(0==(a[sj>>2]|0)&&(d=Gb(a[am>>2]),a[sj>>2]=d,0==(d|0))){Lc(Aw|0,35,1,a[oa>>2]);h=g;return}3!=(b|0)&&(J[a[$l>>2]](1==(b|0)?yw|0:zw|0),J[a[$l>>2]](xM|0));for(;;){b=KQa(a[sj>>2],a[am>>2],c,a[g>>2]);d=a[am>>2];if(-1<(b|0)&(b|0)<(d|0)){f=769;break}d<<=1;b=b+1|0;b=(d|0)>(b|0)?d:b;a[am>>2]=b;if(0==(mc(a[sj>>2],b)|0)){f=771;break}}771==f?(Lc(Aw|0,35,1,a[oa>>2]),h=g):769==f&&(J[a[$l>>2]](a[sj>>2]),h=g)}function Mi(b,c){var d=a[a[b+16>>2]>>2],d=J[a[d>>2]](d,c,512);if(0==(d|0)||(a[b+32>>2]|0)==(b|0)){return d}var g=a[b+20>>2];return d=J[a[g>>2]](g,d,4)}function TL(b,c){var d=h;h+=4;a[d>>2]=c;var g=a[b+20>>2],g=J[a[g>>2]](g,d,512);h=d;return g}function cl(b,c){var d=Mi(a[b+32>>2],c);if(0!=(d|0)){return mj(b,d),d}var d=Zv(b,c,a[a[b+40>>2]>>2]),g=a[a[b+16>>2]>>2];J[a[g>>2]](g,d|0,1);mj(b,d);return d}function Zv(b,c,d){var g,f=Yc(1,a[qa+4>>2]);g=f>>2;a[f>>2]=a[f>>2]&-16|1;a[g+3]=Dc(c);var c=(b+16|0)>>2,e=a[c]+16|0,h=a[e>>2];a[e>>2]=h+1|0;a[g+4]=h;a[g+5]=a[b+32>>2];e=rc(a[a[a[c]+4>>2]+4>>2]);if(0==(e|0)){return a[g+1]=0,a[g+2]=0,f}b=(f+4|0)>>2;a[b]=Yc(e,4);a[g+2]=Yc((e+7|0)/8&-1,1);if(0>=(e|0)){return f}g=d+4|0;if(0==(d|0)){for(d=0;!(g=Dc(a[a[a[a[a[c]+4>>2]+8>>2]+(d<<2)>>2]+4>>2]),a[a[b]+(d<<2)>>2]=g,d=d+1|0,(d|0)==(e|0));){}}else{for(c=0;!(d=Dc(a[a[g>>2]+(c<<2)>>2]),a[a[b]+(c<<2)>>2]=d,c=c+1|0,(c|0)==(e|0));){}}return f}function mj(b,c){if(0==(TL(b,a[c+16>>2])|0)){var d=a[b+20>>2];J[a[d>>2]](d,c|0,1);if(0==(a[b>>2]&64|0)){var g=a[b+36>>2],d=a[g+20>>2],g=Og(d,g);if(0!=(g|0)){for(;!(mj(Yd(a[g+16>>2]),c),g=Ql(d,g),0==(g|0));){}}}}}function Pp(b,c){var d=Ok(b,c),g=0==(d|0);a:do{if(!g){for(var f=d;;){var e=Pk(b,f,c);Np(b,f);if(0==(e|0)){break a}else{f=e}}}}while(0);d=0==(a[b>>2]&64|0);a:do{if(d&&(f=a[b+36>>2],g=a[f+20>>2],e=Ib(g,f),0!=(e|0))){for(f=c|0;;){var h=Yd(a[e+12>>2]),k=a[h+20>>2];0!=(J[a[k>>2]](k,f,4)|0)&&Pp(h,c);e=yb(g,e);if(0==(e|0)){break a}}}}while(0);d=a[b+20>>2];J[a[d>>2]](d,c|0,2);(a[b+32>>2]|0)==(b|0)&&$v(c)}function $v(b){var c=b|0,d=b+20|0,g=a[a[a[d>>2]+16>>2]>>2];J[a[g>>2]](g,c,2);a[b>>2]|=15;dc(a[b+12>>2]);d=a[d>>2];g=0==(a[d>>2]&64|0);a:do{if(g){var f=rc(a[a[a[d+16>>2]+4>>2]+4>>2]);if(0<(f|0)){for(var e=b+4|0,h=0;;){if(dc(a[a[e>>2]+(h<<2)>>2]),h=h+1|0,(h|0)==(f|0)){break a}}}}}while(0);G(a[b+4>>2]);G(a[b+8>>2]);G(c)}function ra(b){b=a[b+20>>2];return J[a[b>>2]](b,0,128)}function ba(b,c){var d=a[b+20>>2];return J[a[d>>2]](d,c|0,8)}function zr(){var b,c,d=h;h+=2032;var g,f=d+2e3,e=d+2008,l=d+2016,k=d+2024,n=d|0,z=d+400|0;a[Wp>>2]=0;a[Qg>>2]=-2;var p=f|0,s=f+4|0,v=e|0,t=e+4|0,u=l|0,w=l+4|0,A=k|0,B=k+4|0,C=0,y=0,T=n,F=n,E=z,M=z,X=200;a:for(;;){D[F>>1]=C&65535;if(((X-1<<1)+T|0)>>>0>F>>>0){var O=T,I=F,J=E,H=M;c=H>>2;var K=X}else{var L=F-T>>1,N=L+1|0;if(9999>>0){g=941;break}var Q=X<<1,S=1e4>>0?1e4:Q,R=Gb(10*S+7|0);if(0==(R|0)){g=941;break}var U=R,W=T;tf(R,W,N<<1);var ca=(((S<<1)+7|0)>>>3<<3)+R|0;tf(ca,E,N<<3);(T|0)!=(n|0)&&G(W);if((S-1|0)>(L|0)){O=U,I=(L<<1)+U|0,J=ca,H=(L<<3)+ca|0,c=H>>2,K=S}else{var Z=U,Y=1;break}}if(9==(C|0)){Z=O;Y=0;break}var V=m[Bw+C|0],ja=V<<24>>24;if(-68==V<<24>>24){g=873}else{var aa=a[Qg>>2];if(-2==(aa|0)){var da=aM(),ea=a[Qg>>2]=da}else{ea=aa}var xa=1>(ea|0)?a[Qg>>2]=0:267>ea>>>0?m[yM+ea|0]&255:2;var $=xa+ja|0;if(80<$>>>0){g=873}else{if((m[Xp+$|0]<<24>>24|0)!=(xa|0)){g=873}else{var ba=m[Yp+$|0],ha=ba<<24>>24;if(1>ba<<24>>24){if(0==ba<<24>>24){g=929}else{var ga=-ha|0;g=874}}else{a[Qg>>2]=-2;var sa=H+8|0,fa=sa,ra=Yh,tb=a[ra+4>>2];a[fa>>2]=a[ra>>2];a[fa+4>>2]=tb;var ya=ha,ka=0==(y|0)?0:y-1|0,wa=I,Ab=sa}}}}if(873==g){var Fa=m[zM+C|0];0==Fa<<24>>24?g=929:(ga=Fa&255,g=874)}b:do{if(874==g){g=0;var Ga=m[AM+ga|0]&255,na=1-Ga|0,ta=a[(na<<3>>2)+c],Ka=(na<<3)+H+4|0,za=a[Ka>>2];if(5==(ga|0)){a[qa+16>>2]=0;var ma=ta,pa=za}else{if(6==(ga|0)){ma=a[c],pa=za}else{if(7==(ga|0)){ma=0,pa=za}else{if(8==(ga|0)){a[tj>>2]=0,a[qa+20>>2]=Af|0,ma=ta,pa=za}else{if(9==(ga|0)){a[tj>>2]=2,a[qa+20>>2]=Af|0,ma=ta,pa=za}else{if(11==(ga|0)){a[tj>>2]=3,a[qa+20>>2]=Bf|0,ma=ta,pa=za}else{if(12==(ga|0)){a[ye>>2]=3,ma=ta,pa=za}else{if(13==(ga|0)){a[ye>>2]=1,a[Zp>>2]=a[a[a[Vc>>2]+40>>2]>>2],ma=ta,pa=za}else{if(10==(ga|0)){a[tj>>2]=1,a[qa+20>>2]=Bf|0,ma=ta,pa=za}else{if(4==(ga|0)){var oa=a[qa+16>>2];0!=(oa|0)&&Sf(oa);a[qa+16>>2]=0;ma=ta;pa=za}else{if(2==(ga|0)){var Ha=H|0,Ra=a[Ha>>2],va=h;h+=128;if(0==(Ra|0)){var Aa=va|0;BM(Aa);var La=Aa}else{La=Ra}var Ea=xn(La,a[tj>>2]);a[qa+16>>2]=Ea;a[ye>>2]=3;Cw(Ea);m[Kf]=1;h=va;dc(a[Ha>>2]);ma=ta;pa=za}else{if(3==(ga|0)){m[qa+30|0]=1,CM(),ma=ta,pa=za}else{if(14==(ga|0)){a[ye>>2]=2,a[bm>>2]=a[a[a[Vc>>2]+40>>2]+4>>2],ma=ta,pa=za}else{if(23==(ga|0)){var Ya=H-16|0,Ma=H|0;Dw(a[Ya>>2],a[Ma>>2]);dc(a[Ya>>2]);dc(a[Ma>>2]);ma=ta;pa=za}else{if(25==(ga|0)){var Za=H|0;Dw(a[Za>>2],Es|0);dc(a[Za>>2]);ma=ta;pa=za}else{if(32==(ga|0)){vw(DM|0),ma=ta,pa=za}else{if(37==(ga|0)){a[ye>>2]=3,ma=ta,pa=za}else{if(38==(ga|0)){a[ye>>2]=3,ma=ta,pa=za}else{if(39==(ga|0)){var Qa=a[H-8>>2],ab=a[cm>>2];a[cm>>2]=0;ma=Qa;pa=ab}else{if(40==(ga|0)){var $a=H|0,jb,Ca=cl(a[Vc>>2],a[$a>>2]);m[Kf]=0;jb=Ca;dc(a[$a>>2]);ma=jb;pa=za}else{if(42==(ga|0)){a[cm>>2]=a[c],ma=ta,pa=za}else{if(43==(ga|0)){var Ia=H-16|0,eb=H|0,ub;var Sa=a[Ia>>2],Pa=a[eb>>2],ua=h;h+=1024;var Oa=Ba(Sa)+Ba(Pa)+2|0;if(1025>(Oa|0)){var Wa=ua|0,pb=Wa,ob=Wa}else{pb=Gb(Oa),ob=ua|0}Rf(pb,Sa);var bb=pb+Ba(pb)|0;Pb=58;m[bb]=Pb&255;Pb>>=8;m[bb+1]=Pb&255;uf(pb,Pa);var qb=Dc(pb);(pb|0)!=(ob|0)&&G(pb);h=ua;ub=qb;a[cm>>2]=ub;dc(a[Ia>>2]);dc(a[eb>>2]);ma=ta;pa=za}else{if(44==(ga|0)){a[ye>>2]=1,a[Zp>>2]=a[c],ma=ta,pa=za}else{if(45==(ga|0)){dc(a[H-16+4>>2]),a[ye>>2]=3,ma=ta,pa=za}else{if(46==(ga|0)){EM(a[c],a[c+1]),ma=ta,pa=za}else{if(47==(ga|0)){a[bm>>2]=a[a[a[a[Te>>2]>>2]+40>>2]+4>>2],a[ye>>2]=2,ma=ta,pa=za}else{if(48==(ga|0)){Ew(),ma=ta,pa=za}else{if(49==(ga|0)){EM(a[c],a[c+1]),ma=ta,pa=za}else{if(50==(ga|0)){a[bm>>2]=a[a[a[a[Te>>2]>>2]+40>>2]+4>>2],a[ye>>2]=2,ma=ta,pa=za}else{if(51==(ga|0)){Ew(),ma=ta,pa=za}else{if(52==(ga|0)){$p(a[c],a[c+1]),ma=ta,pa=za}else{if(53==(ga|0)){$p(a[c],a[c+1]),ma=ta,pa=za}else{if(55==(ga|0)){$p(a[c],a[c+1]),ma=ta,pa=za}else{if(56==(ga|0)){$p(a[c],a[c+1]),ma=ta,pa=za}else{if(58==(ga|0)){aq(f),ma=a[p>>2],pa=a[s>>2]}else{if(59==(ga|0)){FM(),ma=ta,pa=za}else{if(60==(ga|0)){aq(e),ma=a[v>>2],pa=a[t>>2]}else{if(61==(ga|0)){FM(),ma=ta,pa=za}else{if(62==(ga|0)){aq(l),ma=a[u>>2],pa=a[w>>2]}else{if(63==(ga|0)){var Cb=h,kb=a[a[Vc>>2]+12>>2],wb=a[Qd>>2];la(0,GM|0,(j=h,h+=8,a[j>>2]=kb,a[j+4>>2]=wb,j));la(3,HM|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));var vb=a[a[dm+(a[uj>>2]-2<<2)>>2]+12>>2];la(3,IM|0,(j=h,h+=4,a[j>>2]=vb,j));h=Cb;aq(k);ma=a[A>>2];pa=a[B>>2]}else{if(64==(ga|0)){b=(H|0)>>2;var xb=RL(a[qa+16>>2],a[b]),Va=a[Vc>>2];if(0==(xb|0)){var nb=oo(Va,a[b])}else{gt(Va,xb|0),nb=xb}Cw(nb);m[Kf]=0;dc(a[b]);ma=ta}else{if(65==(ga|0)){ma=a[c]}else{if(66==(ga|0)){ma=a[c]}else{if(67==(ga|0)){ma=a[c]}else{if(68==(ga|0)){var rb=H-16|0,lb=H|0,Ta;var cb=a[rb>>2],fb=a[lb>>2],Ua=h;h+=1024;var sb=Ba(cb)+Ba(fb)+1|0;if(1025>(sb|0)){var Na=Ua|0,Fb=Na,Db=Na}else{Fb=Gb(sb),Db=Ua|0}Rf(Fb,cb);uf(Fb,fb);var Ob=Dc(Fb);(Fb|0)!=(Db|0)&&G(Fb);h=Ua;Ta=Ob;dc(a[rb>>2]);dc(a[lb>>2]);ma=Ta}else{ma=ta}}}}}pa=za}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}var Eb=(-Ga<<1)+I|0,hb=(na<<3)+H|0;a[hb>>2]=ma;a[Ka>>2]=pa;var Bb=(m[JM+ga|0]&255)-21|0,Ja=D[Eb>>1]<<16>>16,ib=(m[KM+Bb|0]<<24>>24)+Ja|0;do{if(81>ib>>>0&&(m[Xp+ib|0]<<24>>24|0)==(Ja|0)){ya=m[Yp+ib|0]<<24>>24;ka=y;wa=Eb;Ab=hb;break b}}while(0);ya=m[LM+Bb|0]<<24>>24;ka=y;wa=Eb;Ab=hb}else{if(929==g){g=0;do{if(0==(y|0)){a[Wp>>2]=a[Wp>>2]+1|0;vw(MM|0);var db=I,yb=H,mb=V}else{if(3==(y|0)){var Ib=a[Qg>>2];if(1>(Ib|0)){if(0==(Ib|0)){Z=O;Y=1;break a}else{db=I,yb=H,mb=V}}else{a[Qg>>2]=-2,db=I,yb=H,mb=V}}else{db=I,yb=H,mb=V}}}while(0);c:for(;;){do{if(-68!=mb<<24>>24){var Hb=(mb<<24>>24)+1|0;if(81>Hb>>>0&&1==m[Xp+Hb|0]<<24>>24){var ic=m[Yp+Hb|0];if(0>24){break c}}}}while(0);if((db|0)==(O|0)){Z=O;Y=1;break a}var Jb=db-2|0,db=Jb,yb=yb-8|0,mb=m[(D[Jb>>1]<<16>>16)+Bw|0]}var Kb=yb+8|0,Lb=Kb,Mb=Yh,Nb=a[Mb+4>>2];a[Lb>>2]=a[Mb>>2];a[Lb+4>>2]=Nb;ya=ic<<24>>24;ka=3;wa=db;Ab=Kb}}}while(0);C=ya;y=ka;T=O;F=wa+2|0;E=J;M=Ab;X=K}941==g&&(vw(NM|0),Z=T,Y=2);if((Z|0)==(n|0)){return h=d,Y}G(Z);h=d;return Y}function bg(b){return 0==(a[Ne>>2]|0)|0==(b|0)?0:b=(m[Tp]?-2147483648:0)&a[b-4>>2]}function Dw(b,c){if(m[Kf]){var d=a[Vc>>2],d=(a[d+32>>2]|0)==(d|0)?c:Y|0}else{d=Y|0}var g=a[ye>>2];if(2==(g|0)){g=$(a[a[a[Vc>>2]+40>>2]+4>>2]|0,b);if(0==(g|0)){d=Th(a[qa+16>>2],b,d)}else{if(0==m[g+13|0]<<24>>24){d=g}else{if(m[Kf]){if(d=a[Vc>>2],(a[d+32>>2]|0)!=(d|0)){d=g}else{return}}else{d=g}}}qc(a[bm>>2]|0,a[d+8>>2],c)}else{if(1==(g|0)){g=$(a[a[a[Vc>>2]+40>>2]>>2]|0,b);if(0==(g|0)){d=xi(a[qa+16>>2],b,d)}else{if(0!=m[g+13|0]<<24>>24&&m[Kf]){return}d=g}qc(a[Zp>>2]|0,a[d+8>>2],c)}else{if(0==(g|0)||3==(g|0)){g=$(a[Vc>>2]|0,b);if(0==(g|0)){d=Mp(a[qa+16>>2],b,d)}else{if(0!=m[g+13|0]<<24>>24&&m[Kf]){return}d=g}qc(a[Vc>>2]|0,a[d+8>>2],c)}}}}function EM(b,c){var d;d=Yc(1,20);a[d+16>>2]=a[Te>>2];a[Te>>2]=d;var g=Yc(1,12),f=a[Te>>2];d=f>>2;a[d+2]=g;f=f+4|0;a[f>>2]=g;a[g>>2]=b;a[g+4>>2]=c;a[a[f>>2]+8>>2]=0;a[d+3]=m[bq]<<24>>24;g=a[Vc>>2];a[d]=g;Yv(g,a[g+40>>2]);m[bq]=1}function $p(b,c){var d,g=Yc(1,12);d=(a[Te>>2]+8|0)>>2;a[a[d]+8>>2]=g;g=a[a[d]+8>>2];a[d]=g;a[g>>2]=b;a[g+4>>2]=c;a[a[d]+8>>2]=0}function aq(b){a[b>>2]=CM()|0;a[b+4>>2]=0}function FM(){var b=h;h+=128;m[Kf]=0;var c=b|0;BM(c);Cw(oo(a[Vc>>2],c));h=b}function BM(b){var c=h,d=a[Fw>>2];a[Fw>>2]=d+1|0;Ma(b,OM|0,(j=h,h+=4,a[j>>2]=d,j));h=c}function Dc(b){0==(a[Ne>>2]|0)&&gM();if(0==(b|0)){return 0}var c=a[Ne>>2],c=J[a[c>>2]](c,b-12|0,4);0==(c|0)?(c=Gb(Ba(b)+16|0),a[c+8>>2]=1,Rf(c+12|0,b),b=a[Ne>>2],J[a[b>>2]](b,c,1)):(b=c+8|0,a[b>>2]=a[b>>2]+1|0);b=c;return b+12|0}function gM(){var b=Nc(PM,a[Xc>>2]);a[Ne>>2]=b;m[Tp]=1;m[Gw]=1}function dc(b){var c=h,d=a[Ne>>2];if(!(0==(d|0)|0==(b|0))){if(d=J[a[d>>2]](d,b-12|0,4),0==(d|0)){la(1,QM|0,(j=h,h+=4,a[j>>2]=b,j))}else{var b=d+8|0,g=a[b>>2]-1|0;a[b>>2]=g;m[Gw]&0!=(g|0)||(b=a[Ne>>2],J[a[b>>2]](b,d,2),G(d))}}h=c}function Hw(b){pf(b);var c=a[b+12>>2],d=a[b+16>>2],g=Zh(c,d);0==(g|0)?de(c,d,b):og(b,g)}function RM(b){var c=b+163|0;if(0==m[c]<<24>>24){m[c]=1;c=b+164|0;m[c]=1;var b=b+184|0,d=a[a[b>>2]>>2],g=0==(d|0);a:do{if(!g){for(var f=0,e=d;;){var h=a[e+12>>2];0==m[h+164|0]<<24>>24?0==m[h+163|0]<<24>>24&&RM(h):(Hw(e),f=f-1|0);f=f+1|0;e=a[a[b>>2]+(f<<2)>>2];if(0==(e|0)){break a}}}}while(0);m[c]=0}}function Ew(){var b=a[Te>>2],c=a[b+4>>2],d=c+8|0,g=a[d>>2];if(0==(g|0)){g=b}else{for(var b=c,c=d,f=g;;){var g=a[b+4>>2],d=a[f+4>>2],e=a[b>>2],h=e;1==(a[e>>2]&15|0)?b=0:(b=h,e=ra(h));h=f=a[f>>2];1==(a[f>>2]&15|0)?h=0:f=ra(h);var k=0==(e|0);a:do{if(!k){for(var j=0==(f|0),z=0==(b|0),p=0==(h|0),s=e;;){b:do{if(!j){for(var v=f;;){var t=uh(a[Vc>>2],s,v);if(0!=(t|0)){var u=a[t+12>>2],w=(a[t+16>>2]|0)!=(u|0)&(u|0)==(s|0),u=w?d:g,w=w?g:d;0!=(u|0)&&0!=m[u]<<24>>24&&(qc(t|0,1,u),dc(u));0!=(w|0)&&0!=m[w]<<24>>24&&(qc(t|0,2,w),dc(w))}if(p){break b}v=ba(h,v);if(0==(v|0)){break b}}}}while(0);if(z){break a}s=ba(b,s);if(0==(s|0)){break a}}}}while(0);d=a[c>>2];c=d+8|0;g=a[c>>2];if(0==(g|0)){break}else{b=d,f=g}}g=c=a[Te>>2];c=a[c+4>>2]}if(0==(c|0)){c=g}else{for(;!(g=a[c+8>>2],1==(a[a[c>>2]>>2]&15|0)&&G(c),0==(g|0));){c=g}c=a[Te>>2]}g=a[Vc>>2];(g|0)==(a[c>>2]|0)?(LL(g),c=a[Te>>2],m[bq]=a[c+12>>2]&255,a[Te>>2]=a[c+16>>2],m[Kf]=0,G(c),a[ye>>2]=3):S()}function Cw(b){var c=h,d=a[uj>>2];63<(d|0)?(la(1,SM|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe()):(a[uj>>2]=d+1|0,a[dm+(d<<2)>>2]=b,a[Vc>>2]=b,h=c)}function CM(){var b=h,c=a[uj>>2];0==(c|0)&&(la(1,TM|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe());var d=c-1|0;a[uj>>2]=d;var g=a[dm+(d<<2)>>2];if(0>=(d|0)){return a[Vc>>2]=0,h=b,g}c=a[dm+(c-2<<2)>>2];a[Vc>>2]=c;h=b;return g}function UM(){var b=a[$h>>2];if(0<(b|0)){for(var c=a[Id>>2],d=0,g=0,f=0;;){var e=c+36*f|0,h=c+36*f+12|0,k=a[h>>2],j=0==(k|0),m=0==(d|0);a:do{if(j){var p=m?a[e>>2]:g,s=d+1|0}else{if(m){p=g,s=0}else{if((a[e>>2]|0)>(g|0)&0<(k|0)){for(var v=0,t=k;;){var u=a[a[(c+4>>2)+(9*f|0)]+(v<<2)>>2],w=u+4|0;if(0<(a[w>>2]|0)){t=u|0;for(u=0;;){var A=a[a[t>>2]+(u<<2)>>2]+236|0;a[A>>2]=a[A>>2]-d|0;u=u+1|0;if((u|0)>=(a[w>>2]|0)){break}}w=a[h>>2]}else{w=t}v=v+1|0;if((v|0)<(w|0)){t=w}else{p=g;s=d;break a}}}else{p=g,s=d}}}}while(0);f=f+1|0;if((f|0)<(b|0)){d=s,g=p}else{break}}}}function VM(c,d){var i,g=h,e,Xa=a[d+24>>2];WM(c);var l=-1==(Xa|0);i=(d+8|0)>>2;for(var k=d|0,n=0;;){if(!((n|0)<(Xa|0)|l)){e=1151;break}var z=ra(c),p=0==(z|0);a:do{if(!p){for(var s=z;;){if(a[s+236>>2]=0,s=ba(c,s),0==(s|0)){break a}}}}while(0);Iw(c);z=XM(c);f[0]=z;a[i]=b[0];a[i+1]=b[1];0!=m[ld]<<24>>24&&Va(a[oa>>2],YM|0,(j=h,h+=8,f[0]=z,a[j>>2]=b[0],a[j+4>>2]=b[1],j));if(l&&(b[0]=a[i],b[1]=a[i+1],f[0])<=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])){break}z=c;p=fa(Vh(z)<<2);a[em>>2]=p;if(0<(Vh(z)|0)){for(p=0;!(a[a[em>>2]+(p<<2)>>2]=p,p=p+1|0,(p|0)>=(Vh(z)|0));){}}cq(z);ch(a[em>>2],Vh(z),334);ZM(z);n=n+1|0}1151!=e&&(e=d+20|0,a[d+16>>2]=a[e>>2],a[e>>2]=n);Iw(c);cq(c);UM();n=XM(c);f[0]=n;a[i]=b[0];a[i+1]=b[1];h=g}function WM(c){var d,i,g=Cb(24*Vh(c)|0);a[vj>>2]=g;a[ze>>2]=0;var g=ra(c),e=0==(g|0);a:do{if(!e){for(d=g;;){if(a[d+136>>2]=-1,d=ba(c,d),0==(d|0)){break a}}}}while(0);g=ra(c);if(0!=(g|0)){for(;;){i=g;e=g+24|0;if(0==(a[g+220>>2]|0)){var h=fa(4);d=a[ze>>2];var l=a[vj>>2];a[(l>>2)+(6*d|0)]=h;a[h>>2]=i;a[(l+4>>2)+(6*d|0)]=1;i=e+24|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);h=l+24*d+8|0;f[0]=i;a[h>>2]=b[0];a[h+4>>2]=b[1];i=e+32|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);l=l+24*d+16|0;f[0]=i;a[l>>2]=b[0];a[l+4>>2]=b[1];a[e+112>>2]=d;a[ze>>2]=d+1|0}else{if(h=Zb(i),d=h+136|0,l=a[d>>2],-1<(l|0)){d=a[vj>>2];var h=d+24*l+4|0,k=a[h>>2];a[h>>2]=k+1|0;a[a[(d>>2)+(6*l|0)]+(k<<2)>>2]=i;h=e+24|0;i=(d+24*l+8|0)>>2;h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])+(b[0]=a[i],b[1]=a[i+1],f[0]);f[0]=h;a[i]=b[0];a[i+1]=b[1];d=(d+24*l+16|0)>>2;i=(b[0]=a[d],b[1]=a[d+1],f[0]);h=e+32|0;h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]);f[0]=i>2]=l}else{var k=fa(a[h+220>>2]<<2),e=a[ze>>2],l=a[vj>>2],j=l+24*e|0;a[j>>2]=k;a[k>>2]=h;(h|0)==(i|0)?(a[(l+4>>2)+(6*e|0)]=1,i=g+48|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),h=l+24*e+8|0,f[0]=i,a[h>>2]=b[0],a[h+4>>2]=b[1],i=g+56|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),l=l+24*e+16|0,f[0]=i):(a[a[j>>2]+4>>2]=i,a[(l+4>>2)+(6*e|0)]=2,i=h+48|0,k=g+48|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])+(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=l+24*e+8|0,f[0]=i,a[k>>2]=b[0],a[k+4>>2]=b[1],i=h+56|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),h=g+56|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),l=l+24*e+16|0,f[0]=i>2]=b[0];a[l+4>>2]=b[1];a[d>>2]=e;a[g+136>>2]=e;a[ze>>2]=e+1|0}}g=ba(c,g);if(0==(g|0)){break}}}}function XM(c){cq(c);var d=a[$h>>2],i=(d-1)*a[c+260>>2]|0;if(0>=(d|0)){var g,e;return d=0/i}for(var h=a[Id>>2],c=a[c+256>>2],l=0,k=0;;){var j=h+36*k+20|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])+(c*a[(h+16>>2)+(9*k|0)]|0),l=l>2],b[1]=a[j+4>>2],f[0]),k=k+1|0;if((k|0)>=(d|0)){g=l;e=i;break}}return d=g/e}function cq(c){var d,i,g;a[$h>>2]=0;var e=a[Id>>2];if(0!=(e|0)){var h=0<(a[ze>>2]|0);a:do{if(h){i=0;for(var l=e;;){var k=a[(l+4>>2)+(9*i|0)];0!=(k|0)&&(G(k),l=a[Id>>2]);k=a[(l+8>>2)+(9*i|0)];0!=(k|0)&&(G(k),l=a[Id>>2]);i=i+1|0;if((i|0)>=(a[ze>>2]|0)){g=l;break a}}}else{g=e}}while(0);G(g)}e=fa(36*a[ze>>2]|0);a[Id>>2]=e;e=a[ze>>2];h=0<(e|0);a:do{if(h){g=0;for(i=e;;){if(i=fa(i<<2),a[(a[Id>>2]+4>>2)+(9*g|0)]=i,i=fa(a[ze>>2]<<2),l=a[Id>>2],a[(l+8>>2)+(9*g|0)]=i,a[(l>>2)+(9*g|0)]=g,i=g+1|0,g=(l+36*g+12|0)>>2,a[g]=0,a[g+1]=0,a[g+2]=0,a[g+3]=0,a[g+4]=0,a[g+5]=0,l=a[ze>>2],(i|0)<(l|0)){g=i,i=l}else{break a}}}}while(0);e=ra(c);h=0==(e|0);a:do{if(!h){for(g=e;;){i=Ib(c,g);l=0==(i|0);b:do{if(!l){for(k=i;;){d=a[a[k+16>>2]+236>>2]+1|0;var j=k+12|0,m=(d|0)<(a[a[j>>2]+236>>2]|0);c:do{if(m){for(var p=a[Id>>2],s=d;;){var v=p+36*s+16|0;a[v>>2]=a[v>>2]+1|0;s=s+1|0;if((s|0)>=(a[a[j>>2]+236>>2]|0)){break c}}}}while(0);k=yb(c,k);if(0==(k|0)){break b}}}}while(0);g=ba(c,g);if(0==(g|0)){break a}}}}while(0);e=a[ze>>2];if(0<(e|0)){c=c+256|0;h=a[vj>>2];g=0;for(l=a[$h>>2];!(i=(a[a[(h>>2)+(6*g|0)]>>2]+236|0)>>2,d=a[i],k=d+1|0,(k|0)>(l|0)&&(l=a[$h>>2]=k),k=h+24*g+8|0,j=72*(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=a[Id>>2],d=(k+36*d+20|0)>>2,m=(b[0]=a[d],b[1]=a[d+1],f[0]),f[0]=m+j+((0>31&a[c>>2]|0),a[d]=b[0],a[d+1]=b[1],j=a[i],d=(k+36*j+28|0)>>2,m=(b[0]=a[d],b[1]=a[d+1],f[0]),p=h+24*g+16|0,p=72*(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),m>2)+(9*d|0)]+(a[(k+12>>2)+(9*d|0)]<<2)>>2]=h+24*g|0,i=k+36*a[i]+12|0,a[i>>2]=a[i>>2]+1|0,g=g+1|0,(g|0)>=(e|0));){}}}function ZM(c){var d,i,g,e=a[$h>>2],h=a[em>>2];d=a[Id>>2];i=d>>2;for(var l=0;(l|0)<(e|0);){var k=a[h+(l<<2)>>2],j=l+1|0;if(2>(a[i+(9*k|0)+3]|0)){l=j}else{g=1215;break}}if(1215==g){if((e|0)>(j|0)){var z=d+36*a[h+(j<<2)>>2]+20|0,p=k,z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])}else{var p=k,z=0}}if((l|0)!=(e|0)){ch(a[i+(9*p|0)+1],a[i+(9*p|0)+3],14);k=a[Id>>2];i=k+36*p+20|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);if(z>.25*i){if(z<.75*i){var s=z}else{g=1220}}else{g=1220}1220==g&&(s=.5*i);g=a[(k+12>>2)+(9*p|0)];if(0<(g|0)){c=c+256|0;for(l=e=i=z=0;;){var v,h=a[(k+8>>2)+(9*p|0)];do{if(0==(a[h+(l<<2)>>2]|0)){var t=a[a[(k+4>>2)+(9*p|0)]+(l<<2)>>2];d=(t+8|0)>>2;var u=72*(b[0]=a[d],b[1]=a[d+1],f[0]),w=a[c>>2]&(0>31|0,j=0==(z|0);if(e+u+w<=s|j){d=e+u+w,u=i,w=j?1:z,t=j?t:v,j=k}else{var j=v+4|0,A=a[j>>2];if(0<(A|0)){for(var u=t+4|0,w=v|0,t=t|0,B=0,C=a[u>>2];;){if(0<(C|0)){for(C=0;;){m[de(a[a[w>>2]+(B<<2)>>2],a[a[t>>2]+(C<<2)>>2],0)+124|0]=1;var C=C+1|0,y=a[u>>2];if((C|0)>=(y|0)){break}}C=y;A=a[j>>2]}B=B+1|0;if((B|0)>=(A|0)){break}}j=a[Id>>2];u=a[(j+8>>2)+(9*p|0)]}else{u=h,j=k}a[u+(l<<2)>>2]=1;u=j+36*p+12|0;a[u>>2]=a[u>>2]-1|0;u=j+36*p+16|0;a[u>>2]=a[u>>2]+1|0;u=72*(b[0]=a[d],b[1]=a[d+1],f[0])+(a[c>>2]|0);d=(j+36*p+20|0)>>2;u=(b[0]=a[d],b[1]=a[d+1],f[0])-u;f[0]=u;a[d]=b[0];a[d+1]=b[1];d=e;u=i;w=z;t=v}}else{d=e,u=i+1|0,w=z,t=v,j=k}}while(0);l=l+1|0;if((l|0)<(u+g|0)){v=t,z=w,i=u,e=d,k=j}else{break}}}}}function $M(b){var c=b+4|0;if(0>=(a[c>>2]|0)){var d;return 0}for(var b=b|0,g=0,f=0;;){var e=a[a[b>>2]+(f<<2)>>2],h=a[e+20>>2],e=Ib(h,e),k=0==(e|0);a:do{if(k){var j=g}else{for(var m=g,p=e;;){if(m=m+1|0,p=yb(h,p),0==(p|0)){j=m;break a}}}}while(0);f=f+1|0;if((f|0)<(a[c>>2]|0)){g=j}else{d=j;break}}return d}function aN(b){var c=a[dj>>2];return 0!=(c|0)&&(b=mb(b|0,a[c+8>>2]),0!=(b|0)&&0!=m[b]<<24>>24&&0==re(b)<<24>>24)?1:0}function bN(c,d){var i,g=(c|0)/2&-1|0;i=(d+104|0)>>2;var e=(b[0]=a[i],b[1]=a[i+1],f[0])+g;f[0]=e;a[i]=b[0];a[i+1]=b[1];i=(d+112|0)>>2;g=(b[0]=a[i],b[1]=a[i+1],f[0])+g;f[0]=g;a[i]=b[0];a[i+1]=b[1]}function cN(b){Jw(b);var c=ra(b);if(0!=(c|0)){for(;;){var d=Ib(b,c),g=0==(d|0);a:do{if(!g){for(var f=d;;){var e=f,h=0==(a[f+180>>2]|0);b:do{if(h&&0==(aN(e)|0)){var k=f+16|0,j=Zb(a[k>>2]),m=f+12|0,p=Zb(a[m>>2]);if((j|0)!=(p|0)){do{if(0==(a[j+216>>2]|0)&&0==(a[p+216>>2]|0)){h=Zh(j,p);0==(h|0)?de(j,p,e):og(e,h);break b}}while(0);dN(b,a[k>>2],a[m>>2],e)}}}while(0);f=yb(b,f);if(0==(f|0)){break a}}}}while(0);c=ba(b,c);if(0==(c|0)){break}}}}function dN(b,c,d,g){var f=a[g+16>>2],e=a[f+216>>2],h=a[g+12>>2],k=a[h+216>>2],e=(0==(e|0)?0:a[f+236>>2]-a[a[e+272>>2]+236>>2]|0)-(0==(k|0)?0:a[h+236>>2]-a[a[k+272>>2]+236>>2]|0)+(D[g+178>>1]&65535)|0;0<(e|0)?(f=e|0,e=0):(f=0,e=-e|0);b=Lf(b);m[b+162|0]=2;c=Zb(c);d=Zb(d);h=g+164|0;c=Zc(b,c,e,10*ib[h>>2]&-1);a[Zc(b,d,f,ib[h>>2]&-1)+128>>2]=g;a[c+128>>2]=g}function wj(b,c,d,g){var f=a[a[c+16>>2]+236>>2],e=a[a[c+12>>2]+236>>2],f=(f|0)>(e|0)?f:e,e=c+180|0;0!=(a[e>>2]|0)&&sa(dq|0,149,eN|0,Kw|0);a[e>>2]=d;for(var b=b+256|0,g=0==(g|0),e=c+162|0,h=c+164|0,c=c+176|0;;){if(!g){var k=d+176|0;D[k>>1]=D[k>>1]+D[c>>1]&65535}k=d+162|0;D[k>>1]=D[k>>1]+D[e>>1]&65535;k=d+164|0;ib[k>>2]+=ib[h>>2];d=d+12|0;k=a[d>>2];if((a[k+236>>2]|0)==(f|0)){break}bN(a[b>>2],k);d=a[a[a[d>>2]+184>>2]>>2];if(0==(d|0)){break}}}function fN(b,c){return!(0==(b|0)|0==(c|0))&&(a[b+16>>2]|0)==(a[c+16>>2]|0)&&(a[b+12>>2]|0)==(a[c+12>>2]|0)&&(a[b+108>>2]|0)==(a[c+108>>2]|0)&&0!=(fm(b,c)|0)?1:0}function Lw(b){var c,d,g,f,e,h=b+216|0;a[h>>2]=0;e=(b+240|0)>>2;a[e]=0;Jw(b);var k=b+208|0,j=1>(a[k>>2]|0);a:do{if(!j){var z=b+212|0;for(f=1;;){if(gN(b,a[a[z>>2]+(f<<2)>>2]),f=f+1|0,(f|0)>(a[k>>2]|0)){break a}}}}while(0);k=ra(b);j=0==(k|0);a:do{if(!j){for(z=k;;){f=Ib(b,z);var p=0==(f|0);b:do{if(!p){for(var s=f;;){var v=a[s+12>>2]+166|0;g=m[v];3>g<<24>>24&&(m[v]=g+1&255);v=a[s+16>>2]+166|0;g=m[v];3>g<<24>>24&&(m[v]=g+1&255);s=yb(b,s);if(0==(s|0)){break b}}}}while(0);z=ba(b,z);if(0==(z|0)){break a}}}}while(0);k=ra(b);j=0==(k|0);a:do{if(!j){for(z=k;;){f=z;0==(a[z+216>>2]|0)&&(f|0)==(Zb(f)|0)&&(Mw(b,f),a[e]=a[e]+1|0);p=Ib(b,z);s=0==(p|0);b:do{if(!s){v=0;f=v>>2;var t=p;for(g=t>>2;;){var u=t,w=t+24|0,A=0==(a[g+45]|0);c:do{if(A){if(d=7==m[a[u+16>>2]+165|0]<<24>>24?1:7==m[a[u+12>>2]+165|0]<<24>>24,d&=1,0!=(d|0)){0==(fN(v,u)|0)?(hN(b,u),d=u):(d=a[f+45],0!=(d|0)?(wj(b,u,d,0),Rg(u)):(a[a[g+4]+236>>2]|0)==(a[a[g+3]+236>>2]|0)&&(og(u,v),Rg(u)),d=v)}else{d=(t+16|0)>>2;var B=a[d];do{if(0!=(v|0)&&(B|0)==(a[f+4]|0)&&(c=a[g+3],(c|0)==(a[f+3]|0))){if((a[B+236>>2]|0)==(a[c+236>>2]|0)){og(u,v);Rg(u);d=v;break c}if(0==(a[w+84>>2]|0)&&0==(a[f+27]|0)&&0!=(fm(u,v)|0)){0==m[Wi]<<24>>24?(wj(b,u,a[f+45],1),Rg(u)):m[w+100|0]=6;d=v;break c}}}while(0);c=(t+12|0)>>2;if((B|0)==(a[c]|0)){Rg(u),d=u}else{var B=Zb(B),C=Zb(a[c]),y=a[d];if((y|0)!=(B|0)){d=v}else{var D=a[c];if((D|0)!=(C|0)){d=v}else{var F=a[y+236>>2],E=a[D+236>>2];if((F|0)==(E|0)){gm(b,u)}else{if((E|0)>(F|0)){hm(b,B,C,u)}else{C=B=Kr(b,D,y);do{if(!(0==(B|0)|(B|0)==(t|0))&&(y=B+24|0,D=y+156|0,0==(a[D>>2]|0)&&hm(b,a[B+16>>2],a[B+12>>2],C),0==(a[w+84>>2]|0)&&0==(a[y+84>>2]|0)&&0!=(fm(u,C)|0))){0==m[Wi]<<24>>24?(Rg(u),wj(b,u,a[D>>2],1)):(m[w+100|0]=6,m[y+137|0]=1);d=v;break c}}while(0);hm(b,a[c],a[d],u)}}d=u}}}}}else{d=u}}while(0);g=yb(b,t);if(0==(g|0)){break b}else{v=d,f=v>>2,t=g,g=t>>2}}}}while(0);z=ba(b,z);if(0==(z|0)){break a}}}}while(0);(a[b+32>>2]|0)!=(b|0)&&(b=b+224|0,e=a[b>>2],e=0==(e|0)?Cb(4):wb(e,4),a[b>>2]=e,a[e>>2]=a[h>>2])}function hN(b,c){var d=iN(a[c+16>>2]),g=iN(a[c+12>>2]),f=(a[d+236>>2]|0)>(a[g+236>>2]|0),e=f?g:d,g=f?d:g;if((a[e+216>>2]|0)!=(a[g+216>>2]|0)){if(d=Zh(e,g),0!=(d|0)){wj(b,c,d,1)}else{if(d=g+236|0,(a[e+236>>2]|0)!=(a[d>>2]|0)){hm(b,e,g,c);for(e=c+180|0;;){e=a[e>>2];if(0==(e|0)){break}g=a[e+12>>2];if((a[g+236>>2]|0)>(a[d>>2]|0)){break}m[e+124|0]=5;e=a[g+184>>2]}}}}}function hm(c,d,i,g){var e=0==(a[g+108>>2]|0)?-1:(a[i+236>>2]+a[d+236>>2]|0)/2&-1,h=g+180|0;0!=(a[h>>2]|0)&&sa(dq|0,90,Nw|0,jN|0);var l=a[d+236>>2]+1|0,k=i+236|0,j=a[k>>2],z=(l|0)>(j|0);a:do{if(!z){for(var p=d,s=l,v=j;;){if((s|0)<(v|0)){if((s|0)==(e|0)){var v=c,t=g,u=cc,u=t+108|0,w=a[u>>2],A=w+24|0,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),w=w+32|0,B=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),w=Lf(v);a[w+120>>2]=a[u>>2];u=w+104|0;f[0]=a[a[a[w+20>>2]+32>>2]+256>>2]|0;a[u>>2]=b[0];a[u+4>>2]=b[1];0==m[t+126|0]<<24>>24&&(u=(w+96|0)>>2,0==(a[a[v+32>>2]+152>>2]&1|0)?(f[0]=B,a[u]=b[0],a[u+1]=b[1],v=w+112|0,f[0]=A):(f[0]=A,a[u]=b[0],a[u+1]=b[1],v=w+112|0,f[0]=B),a[v>>2]=b[0],a[v+4>>2]=b[1]);v=w}else{v=c,t=Lf(v),bN(a[v+256>>2],t),v=t}a[v+236>>2]=s}else{v=i}p=de(p,v,g);t=p+164|0;ib[t>>2]*=a[((kN(a[p+12>>2])<<2)+lN>>2)+(3*kN(a[p+16>>2])|0)]|0;s=s+1|0;t=a[k>>2];if((s|0)>(t|0)){break a}else{p=v,v=t}}}}while(0);0==(a[h>>2]|0)&&sa(dq|0,104,Nw|0,mN|0)}function iN(b){return 7==m[b+165|0]<<24>>24?a[a[a[b+216>>2]+276>>2]+(a[b+236>>2]<<2)>>2]:Zb(b)}function nN(b){var c,d;d=(b+32|0)>>2;var g=a[d],f=ra(b);if(0!=(f|0)){for(;;){var e=Ok(a[d],f),h=0==(e|0);a:do{if(!h){var k=0,j=e;for(c=j>>2;;){var m=j;if(0==(Ed(b,j|0)|0)){var p=j,s=0==(fN(k,p)|0),v=j+16|0,t=a[v>>2],u=a[t+236>>2],w=j+12|0,A=a[w>>2],B=a[A+236>>2],C=(u|0)==(B|0);s?C?(u=oN(t,A),0==(u|0)?gm(g,p):((j|0)!=(u|0)&&(pN(p,a[p+16>>2]+208|0),0==(a[c+45]|0)&&og(p,u)),m=k)):(0==(a[c+45]|0)?(sa(Ow|0,234,qN|0,rN|0),p=a[w>>2],u=a[v>>2],k=p,p=a[p+236>>2],t=u,u=a[u+236>>2]):(k=A,p=B),(p|0)>(u|0)?sN(t,k,m):sN(k,t,m)):(a[c+45]=C?k:0,m=a[k+180>>2],0!=(m|0)&&(wj(b,p,m,0),pN(p,a[p+16>>2]+208|0)),m=k)}else{m=k}j=Pk(a[d],j,f);if(0==(j|0)){break a}else{k=m,c=j>>2}}}}while(0);f=ba(b,f);if(0==(f|0)){break}}}}function sN(b,c,d){var g=tN(b),f=tN(c);uN(g,f,d,a[d+180>>2],(g|0)==(b|0)&(f|0)==(c|0)?1:5)}function vN(b){var c,d,g;g=(b+32|0)>>2;var f=a[g],e=b+244|0,h=D[e>>1];0>16?(m[a[f+220>>2]+44*((h<<16>>16)-1)+33|0]=0,c=D[e>>1]):c=h;var e=c<<16>>16,h=b+246|0,k=c<<16>>16>D[h>>1]<<16>>16;a:do{if(k){var j=e}else{d=(b+220|0)>>2;var z=b+276|0;c=(f+220|0)>>2;for(var p=b,s=e;;){var v=a[a[a[z>>2]+(s<<2)>>2]+240>>2];Pw(f,s,v,a[(a[d]>>2)+(11*s|0)]);var t=a[d],u=0<(a[(t>>2)+(11*s|0)]|0);b:do{if(u){for(var w=0,A=v,B=t;;){if(B=a[a[(B+4>>2)+(11*s|0)]+(w<<2)>>2],a[a[(a[c]+4>>2)+(11*s|0)]+(A<<2)>>2]=B,a[B+240>>2]=A,a[B+20>>2]=a[g],Qw(p,B),Mw(a[g],B),B=a[g]+240|0,a[B>>2]=a[B>>2]+1|0,w=w+1|0,B=a[d],(w|0)<(a[(B>>2)+(11*s|0)]|0)){A=A+1|0}else{var C=B;break b}}}else{C=t}}while(0);a[(C+4>>2)+(11*s|0)]=(v<<2)+a[(a[c]+4>>2)+(11*s|0)]|0;m[a[c]+44*s+33|0]=0;s=s+1|0;if((s|0)>(D[h>>1]<<16>>16|0)){j=s;break a}}}}while(0);(j|0)<(D[f+246>>1]<<16>>16|0)&&(m[a[f+220>>2]+44*j+33|0]=0);b=b+280|0;m[b]=1}function wN(b){var c=D[b+244>>1],d=b+246|0;if(c<<16>>16<=D[d>>1]<<16>>16){for(var g=b+276|0,b=b+32|0,c=c<<16>>16;;){var f=a[a[g>>2]+(c<<2)>>2],e=f+184|0,h=a[a[e>>2]>>2],k=0==(h|0);a:do{if(!k){for(var j=h;;){if(pf(j),j=a[a[e>>2]>>2],0==(j|0)){break a}}}}while(0);e=f+176|0;h=a[a[e>>2]>>2];k=0==(h|0);a:do{if(!k){for(j=h;;){if(pf(j),j=a[a[e>>2]>>2],0==(j|0)){break a}}}}while(0);Qw(a[b>>2],f);a[a[g>>2]+(c<<2)>>2]=0;c=c+1|0;if((c|0)>(D[d>>1]<<16>>16|0)){break}}}}function Jw(b){var c=h,d=ra(b),g=0==(d|0);a:do{if(!g){for(var f=d;;){if(7==m[f+165|0]<<24>>24&&YE(f),a[f+216>>2]=0,f=ba(b,f),0==(f|0)){break a}}}}while(0);d=b+208|0;if(1<=(a[d>>2]|0)){g=b+212|0;b=b+12|0;for(f=1;;){var e=a[a[g>>2]+(f<<2)>>2],l=e,k=ra(l),n=0==(k|0);a:do{if(!n){for(var z=e+272|0,p=e,s=k;;){var v=ba(l,s),t=s+24|0,u=t+141|0,w=0==m[u]<<24>>24;b:do{if(w){var A=s,B=a[z>>2];(Zb(A)|0)!=(A|0)&&sa(qo|0,198,xN|0,yN|0);a[A+224>>2]=B;B=B+220|0;a[B>>2]=a[B>>2]+a[A+220>>2]|0;a[t+192>>2]=e;m[u]=7;A=Ib(l,s);if(0!=(A|0)){for(;;){var B=a[A+180>>2],C=0==(B|0);c:do{if(!C){for(var y=B;;){if(0==(y|0)){break c}var y=y+12|0,D=a[y>>2];if(1!=m[D+162|0]<<24>>24){break c}a[D+216>>2]=e;y=a[a[a[y>>2]+184>>2]>>2]}}}while(0);A=yb(l,A);if(0==(A|0)){break b}}}}else{A=a[b>>2],la(0,zN|0,(j=h,h+=8,a[j>>2]=a[s+12>>2],a[j+4>>2]=A,j)),bl(p,s|0)}}while(0);if(0==(v|0)){break a}else{s=v}}}}while(0);f=f+1|0;if((f|0)>(a[d>>2]|0)){break}}}h=c}function gN(b,c){var d,g;g=(c+246|0)>>1;d=(c+276|0)>>2;a[d]=fa((D[g]<<16>>16<<2)+8|0);var f=c+244|0,e=D[f>>1],h=e<<16>>16>D[g]<<16>>16;a:do{if(!h){for(var k=b,j=c,z=0,p=e<<16>>16;;){var s=Lf(k),v=s;a[a[d]+(p<<2)>>2]=v;a[s+236>>2]=p;m[s+165|0]=7;a[s+216>>2]=j;0!=(z|0)&&(z=de(z,s,0)+162|0,D[z>>1]=1e3*D[z>>1]&65535);p=p+1|0;if((p|0)>(D[g]<<16>>16|0)){break a}else{z=v}}}}while(0);e=ra(c);h=0==(e|0);a:do{if(!h){for(k=e;;){j=a[a[d]+(a[k+236>>2]<<2)>>2];v=j+220|0;a[v>>2]=a[v>>2]+1|0;v=Ib(c,k);z=0==(v|0);b:do{if(!z){p=j+184|0;for(s=v;;){var t=a[a[s+16>>2]+236>>2],u=s+12|0,w=(t|0)<(a[a[u>>2]+236>>2]|0);c:do{if(w){for(var A=t;;){var B=a[a[p>>2]>>2]+176|0;D[B>>1]=D[B>>1]+1&65535;A=A+1|0;if((A|0)>=(a[a[u>>2]+236>>2]|0)){break c}}}}while(0);s=yb(c,s);if(0==(s|0)){break b}}}}while(0);k=ba(c,k);if(0==(k|0)){break a}}}}while(0);f=D[f>>1];e=D[g];if(f<<16>>16<=e<<16>>16){for(f=f<<16>>16;!(h=a[a[d]+(f<<2)>>2]+220|0,k=a[h>>2],1<(k|0)&&(a[h>>2]=k-1|0,e=D[g]),f=f+1|0,(f|0)>(e<<16>>16|0));){}}}function AN(b,c,d,g){var f=a[c+216>>2],e=f+281|0,h=d+1|0;if((m[e]<<24>>24|0)!=(h|0)){var k=f+244|0,j=D[k>>1],c=(f+246|0)>>1,z=D[c];if(j<<16>>16>z<<16>>16){var b=j,p=z}else{z=f+276|0;for(j=j<<16>>16;!(Rw(b,a[a[z>>2]+(j<<2)>>2]),j=j+1|0,p=D[c],(j|0)>(p<<16>>16|0));){}b=D[k>>1]}p=b<<16>>16>p<<16>>16;a:do{if(!p){k=f+276|0;z=g;for(j=b<<16>>16;;){if(Sw(z,a[a[k>>2]+(j<<2)>>2],d),j=j+1|0,(j|0)>(D[c]<<16>>16|0)){break a}}}}while(0);m[e]=h&255}}function Tw(b){var c=ra(b);if(0!=(c|0)){for(;;){a[c+216>>2]=0;var d=Ib(b,c),g=0==(d|0);a:do{if(!g){for(var f=d;;){var e=a[f+180>>2],h=0==(e|0);b:do{if(!h){for(var k=e;;){if(0==(k|0)){break b}var k=k+12|0,j=a[k>>2];if(1!=m[j+162|0]<<24>>24){break b}a[j+216>>2]=0;k=a[a[a[k>>2]+184>>2]>>2]}}}while(0);f=yb(b,f);if(0==(f|0)){break a}}}}while(0);c=ba(b,c);if(0==(c|0)){break}}}Uw(b)}function Uw(b){var c=b+208|0,d=1>(a[c>>2]|0);a:do{if(!d){for(var g=b+212|0,f=1;;){if(Uw(a[a[g>>2]+(f<<2)>>2]),f=f+1|0,(f|0)>(a[c>>2]|0)){break a}}}}while(0);c=ra(b);if(0!=(c|0)){for(;;){d=c+216|0;0==(a[d>>2]|0)&&(a[d>>2]=b);d=Ib(b,c);g=0==(d|0);a:do{if(!g){for(f=d;;){var e=a[f+180>>2],h=0==(e|0);b:do{if(!h){for(var k=e;;){if(0==(k|0)){break b}var k=k+12|0,j=a[k>>2];if(1!=m[j+162|0]<<24>>24){break b}var z=j+216|0;0==(a[z>>2]|0)?(a[z>>2]=b,k=a[k>>2]):k=j;k=a[a[k+184>>2]>>2]}}}while(0);f=yb(b,f);if(0==(f|0)){break a}}}}while(0);c=ba(b,c);if(0==(c|0)){break}}}}function tN(b){var c=a[b+216>>2];return 0==(c|0)||0!=m[c+280|0]<<24>>24?b:b=a[a[c+276>>2]+(a[b+236>>2]<<2)>>2]}function Pw(b,c,d,g){var f,e,b=(b+220|0)>>2,h=a[b];e=h>>2;var k=a[e+(11*c|0)+1];f=k>>2;if(1>(g|0)){d=d-g|0;k=d+1|0;e=a[e+(11*c|0)];var j=(k|0)<(e|0);a:do{if(j){for(var m=d,p=k;;){var s=a[(p<<2>>2)+f],m=m+g|0;a[s+240>>2]=m;a[(m<<2>>2)+f]=s;var s=p+1|0,m=a[b],v=a[(m>>2)+(11*c|0)];if((s|0)<(v|0)){m=p,p=s}else{var t=m,u=v;break a}}}else{t=h,u=e}}while(0);g=g-1|0;h=g+u|0;if((h|0)<(u|0)){for(t=h;;){if(a[(t<<2>>2)+f]=0,t=t+1|0,u=a[b],(t|0)>=(a[(u>>2)+(11*c|0)]|0)){w=u;A=g;break}}c=(w+44*c|0)>>2;b=a[c];b=A+b|0}else{var w,A,c=t+44*c|0,c=c>>2,b=a[c],b=g+b|0}}else{A=a[e+(11*c|0)]-1|0;w=(A|0)>(d|0);a:do{if(w){t=g-1|0;for(u=A;;){if(h=a[(u<<2>>2)+f],e=t+u|0,a[h+240>>2]=e,a[(e<<2>>2)+f]=h,u=u-1|0,(u|0)<=(d|0)){break a}}}}while(0);f=d+1|0;(f|0)<(g+d|0)&&li((f<<2)+k|0,(g<<2)-4|0);w=a[b];c=w+44*c|0;c>>=2;b=a[c];b=(g-1|0)+b|0}a[c]=b}function uN(c,d,i,g,e){var h,l;l=(c+236|0)>>2;h=(d+236|0)>>2;(a[l]|0)<(a[h]|0)||sa(Ow|0,109,BN|0,CN|0);if(!((a[g+16>>2]|0)==(c|0)&&(a[g+12>>2]|0)==(d|0))){if(1>1]<<16>>16){a[i+180>>2]=0;var k=a[h],j=a[l];if(1==(k-j|0)){var z=Zh(c,d);if(0!=(z|0)&&0!=(fm(i,z)|0)){og(i,z);if(0!=m[c+162|0]<<24>>24||0!=m[d+162|0]<<24>>24){return}Rg(i);return}}if((j|0)<(k|0)){z=c+20|0;e&=255;for(l=k;;){if((j|0)<(l-1|0)){l=g+12|0;var k=a[z>>2],p=a[l>>2],s=p+236|0,v=a[s>>2],t=p+240|0;Pw(k,v,a[t>>2],2);var u=Lf(k),w=p+104|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),A=u+104|0;f[0]=w;a[A>>2]=b[0];a[A+4>>2]=b[1];p=p+112|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]);w=u+112|0;f[0]=p;a[w>>2]=b[0];a[w+4>>2]=b[1];a[u+236>>2]=a[s>>2];s=a[t>>2]+1|0;a[u+240>>2]=s;k=a[a[(a[k+220>>2]+4>>2)+(11*v|0)]+(s<<2)>>2]=u}else{k=d,l=g+12|0}m[de(c,k,i)+124|0]=e;g=g+176|0;D[g>>1]=D[g>>1]-1&65535;j=j+1|0;v=a[h];if((j|0)<(v|0)){g=a[a[a[l>>2]+184>>2]>>2],c=k,l=v}else{break}}}}else{k=1==(a[h]-a[l]|0);a:do{if(k){s=c;t=d;v=p=Zh(s,t);u=i;do{if(0!=(p|0)&&0!=(fm(u,p)|0)){a[i+180>>2]=v;m[p+124|0]=e&255;g=p+176|0;D[g>>1]=D[g>>1]+1&65535;if(0!=m[c+162|0]<<24>>24){break a}if(0!=m[d+162|0]<<24>>24){break a}Rg(u);break a}}while(0);a[i+180>>2]=0;v=de(s,t,u);m[v+124|0]=e&255}else{v=g}}while(0);k=a[h];if(1<(k-a[l]|0)){(a[v+16>>2]|0)==(c|0)?(g=v,h=k):(g=i+180|0,a[g>>2]=0,c=de(c,a[v+12>>2],i),a[g>>2]=c,pf(v),g=c,h=a[h]);c=a[g+12>>2];l=(a[c+236>>2]|0)==(h|0);a:do{if(l){z=g,j=c}else{for(k=c;;){if(k=a[a[k+184>>2]>>2],v=a[k+12>>2],(a[v+236>>2]|0)==(h|0)){z=k;j=v;break a}else{k=v}}}}while(0);(j|0)!=(d|0)&&(m[de(a[z+16>>2],d,i)+124|0]=e&255,pf(z))}}}}function xj(c,d,i){var g=i|0;(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])>c?d=0:(g=i+16|0,(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])>2],b[1]=a[c+4>>2],f[0])>d?d=0:(i=i+24|0,d=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])>=d)));return d&1}function yj(c,d,i,g,e){var h=c|0;f[0]=.5*(d+g);a[h>>2]=b[0];a[h+4>>2]=b[1];c=c+8|0;f[0]=.5*(i+e);a[c>>2]=b[0];a[c+4>>2]=b[1]}function DN(c,d){var i,g,e,m,l,k,n,z,p,s,v,t,u,w,A,B,C,y,D,F,E,M,X,O,H,I,J,K,L,N,S,Q,R,U,W,ca,Z,Y,$,ja,aa,da,ea,xa,ba,fa=h;h+=224;var ha,ga=fa+64,ra=fa+80,ka=fa+96,qa=fa+112,tb=fa+128,ya=fa+144,na=fa+160,wa=fa+176,Ab=fa+192,Fa=fa+208,Ga=d|0,oa=EN(c,V(Ga,eq|0)),ta=EN(c,V(Ga,fq|0)),Ka=0!=(ta|0),za=0==(oa|0);if(!(za&(Ka^1))){var ma=d+24|0,pa=a[ma>>2];if(0!=(pa|0)){if(1<(a[pa+4>>2]|0)){var Ba=a[a[d+12>>2]+12>>2];la(0,FN|0,(j=h,h+=8,a[j>>2]=a[a[d+16>>2]+12>>2],a[j+4>>2]=Ba,j))}else{var Ha=a[pa>>2],Ra=a[Ha+4>>2];ba=(d+12|0)>>2;var va=a[ba];xa=(d+16|0)>>2;var Aa=a[xa],La=Cb(48);ea=(Ha+12|0)>>2;a[La+12>>2]=a[ea];da=(Ha+8|0)>>2;a[La+8>>2]=a[da];do{if(za){ha=1647}else{var Ea=oa+52|0,Ya=va+32|0,Ma=va+40|0;if(0==(xj((b[0]=a[Ya>>2],b[1]=a[Ya+4>>2],f[0]),(b[0]=a[Ma>>2],b[1]=a[Ma+4>>2],f[0]),Ea)|0)){var Za=a[a[xa]+12>>2],Qa=a[a[ba]+12>>2],ab=V(Ga,eq|0);la(0,GN|0,(j=h,h+=12,a[j>>2]=Za,a[j+4>>2]=Qa,a[j+8>>2]=ab,j));ha=1647}else{aa=(Ha|0)>>2;var $a=a[aa],jb=$a|0,Ca=(b[0]=a[jb>>2],b[1]=a[jb+4>>2],f[0]),Ia=$a+8|0,eb=(b[0]=a[Ia>>2],b[1]=a[Ia+4>>2],f[0]);if(0!=(xj(Ca,eb,Ea)|0)){var ub=Aa+32|0,Sa=Aa+40|0;if(0!=(xj((b[0]=a[ub>>2],b[1]=a[ub+4>>2],f[0]),(b[0]=a[Sa>>2],b[1]=a[Sa+4>>2],f[0]),Ea)|0)){var Pa=a[a[xa]+12>>2],ua=a[a[ba]+12>>2],Oa=V(Ga,eq|0);la(0,HN|0,(j=h,h+=12,a[j>>2]=Pa,a[j+4>>2]=ua,a[j+8>>2]=Oa,j));ha=1647}else{if(0==(a[da]|0)){sa(zj|0,364,im|0,Vw|0);var Wa=a[aa],pb=Wa|0,ob=Wa+8|0,bb=(b[0]=a[pb>>2],b[1]=a[pb+4>>2],f[0]),qb=(b[0]=a[ob>>2],b[1]=a[ob+4>>2],f[0])}else{bb=Ca,qb=eb}ja=(Ha+16|0)>>2;$=(Ha+24|0)>>2;jm(ga,bb,qb,(b[0]=a[ja],b[1]=a[ja+1],f[0]),(b[0]=a[$],b[1]=a[$+1],f[0]),Ea);var wb=ga|0,kb=(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0]),hb=ga+8|0,vb=(b[0]=a[hb>>2],b[1]=a[hb+4>>2],f[0]),xb=a[aa],Va=xb+48|0;f[0]=kb;a[Va>>2]=b[0];a[Va+4>>2]=b[1];var nb=xb+56|0;f[0]=vb;a[nb>>2]=b[0];a[nb+4>>2]=b[1];var rb=a[aa]+16|0;yj(ra,kb,vb,(b[0]=a[ja],b[1]=a[ja+1],f[0]),(b[0]=a[$],b[1]=a[$+1],f[0]));Y=rb>>2;Z=ra>>2;a[Y]=a[Z];a[Y+1]=a[Z+1];a[Y+2]=a[Z+2];a[Y+3]=a[Z+3];var lb=a[aa],Ta=lb+16|0,cb=(b[0]=a[Ta>>2],b[1]=a[Ta+4>>2],f[0]),fb=lb+24|0,Ua=(b[0]=a[fb>>2],b[1]=a[fb+4>>2],f[0]);yj(ka,cb,Ua,(b[0]=a[ja],b[1]=a[ja+1],f[0]),(b[0]=a[$],b[1]=a[$+1],f[0]));ca=lb>>2;W=ka>>2;a[ca]=a[W];a[ca+1]=a[W+1];a[ca+2]=a[W+2];a[ca+3]=a[W+3];var sb=a[aa],Na=sb+16|0,Fb=sb+24|0;yj(qa,(b[0]=a[Na>>2],b[1]=a[Na+4>>2],f[0]),(b[0]=a[Fb>>2],b[1]=a[Fb+4>>2],f[0]),kb,vb);U=(sb+32|0)>>2;R=qa>>2;a[U]=a[R];a[U+1]=a[R+1];a[U+2]=a[R+2];a[U+3]=a[R+3];var Db=a[ea],Ob=0==(Db|0)?3:Hn(d,a[aa],0,0,La,Db)+3|0}}else{for(var Eb=Ra-1|0,db=0;(db|0)<(Eb|0);){if(0==(Ww((db<<4)+a[aa]|0,Ea)|0)){db=db+3|0}else{break}}var Bb=a[ea],Ja=0!=(Bb|0);if((db|0)==(Eb|0)){Ja||sa(zj|0,382,im|0,Xw|0);Q=(La+32|0)>>2;var ib=a[aa],yb=Ha+32|0,mb=(b[0]=a[yb>>2],b[1]=a[yb+4>>2],f[0]),Hb=Ha+40|0,Ib=(b[0]=a[Hb>>2],b[1]=a[Hb+4>>2],f[0]),Jb=(Eb<<4)+ib|0,ic=(Eb<<4)+ib+8|0;jm(tb,mb,Ib,(b[0]=a[Jb>>2],b[1]=a[Jb+4>>2],f[0]),(b[0]=a[ic>>2],b[1]=a[ic+4>>2],f[0]),Ea);S=tb>>2;a[Q]=a[S];a[Q+1]=a[S+1];a[Q+2]=a[S+2];a[Q+3]=a[S+3];Ob=Eb}else{Ob=(Ja?Hn(d,a[aa],0,db,La,Bb):db)+3|0}}}}}while(0);if(1647==ha){var Kb=Ra-1|0;0!=(a[ea]|0)&&(N=(La+32|0)>>2,L=(Ha+32|0)>>2,a[N]=a[L],a[N+1]=a[L+1],a[N+2]=a[L+2],a[N+3]=a[L+3]);Ob=Kb}a:do{if(Ka){var Gb=ta+52|0,Lb=Aa+32|0,Mb=Aa+40|0;if(0==(xj((b[0]=a[Lb>>2],b[1]=a[Lb+4>>2],f[0]),(b[0]=a[Mb>>2],b[1]=a[Mb+4>>2],f[0]),Gb)|0)){var Nb=a[a[xa]+12>>2],Pb=a[a[ba]+12>>2],Wb=V(Ga,fq|0);la(0,IN|0,(j=h,h+=12,a[j>>2]=Nb,a[j+4>>2]=Pb,a[j+8>>2]=Wb,j));ha=1670}else{K=(Ha|0)>>2;var Vb=a[K],Tb=(Ob<<4)+Vb|0,Yb=(b[0]=a[Tb>>2],b[1]=a[Tb+4>>2],f[0]),Sb=(Ob<<4)+Vb+8|0,$b=(b[0]=a[Sb>>2],b[1]=a[Sb+4>>2],f[0]);if(0!=(xj(Yb,$b,Gb)|0)){var Zb=va+32|0,ec=va+40|0;if(0!=(xj((b[0]=a[Zb>>2],b[1]=a[Zb+4>>2],f[0]),(b[0]=a[ec>>2],b[1]=a[ec+4>>2],f[0]),Gb)|0)){var lc=a[a[xa]+12>>2],Xb=a[a[ba]+12>>2],kc=V(Ga,fq|0);la(0,JN|0,(j=h,h+=12,a[j>>2]=lc,a[j+4>>2]=Xb,a[j+8>>2]=kc,j));ha=1670}else{if(0==(a[ea]|0)){sa(zj|0,424,im|0,Xw|0);var ac=a[K],Hc=(Ob<<4)+ac|0,nc=(Ob<<4)+ac+8|0,uc=(b[0]=a[Hc>>2],b[1]=a[Hc+4>>2],f[0]),qc=(b[0]=a[nc>>2],b[1]=a[nc+4>>2],f[0])}else{uc=Yb,qc=$b}J=(La+32|0)>>2;I=(La+40|0)>>2;jm(ya,uc,qc,(b[0]=a[J],b[1]=a[J+1],f[0]),(b[0]=a[I],b[1]=a[I+1],f[0]),Gb);var Qb=ya|0,tc=(b[0]=a[Qb>>2],b[1]=a[Qb+4>>2],f[0]),Sc=ya+8|0,gc=(b[0]=a[Sc>>2],b[1]=a[Sc+4>>2],f[0]),dc=Ob-3|0,bc=a[K],jc=(dc<<4)+bc|0;f[0]=tc;a[jc>>2]=b[0];a[jc+4>>2]=b[1];var oc=(dc<<4)+bc+8|0;f[0]=gc;a[oc>>2]=b[0];a[oc+4>>2]=b[1];var rc=Ob-1|0,Ac=(rc<<4)+a[K]|0;yj(na,tc,gc,(b[0]=a[J],b[1]=a[J+1],f[0]),(b[0]=a[I],b[1]=a[I+1],f[0]));H=Ac>>2;O=na>>2;a[H]=a[O];a[H+1]=a[O+1];a[H+2]=a[O+2];a[H+3]=a[O+3];var fc=a[K],mc=(rc<<4)+fc|0,Bc=(b[0]=a[mc>>2],b[1]=a[mc+4>>2],f[0]),Cc=(rc<<4)+fc+8|0,fd=(b[0]=a[Cc>>2],b[1]=a[Cc+4>>2],f[0]);yj(wa,Bc,fd,(b[0]=a[J],b[1]=a[J+1],f[0]),(b[0]=a[I],b[1]=a[I+1],f[0]));X=((Ob<<4)+fc|0)>>2;M=wa>>2;a[X]=a[M];a[X+1]=a[M+1];a[X+2]=a[M+2];a[X+3]=a[M+3];var Ec=a[K],yc=(rc<<4)+Ec|0,Fc=(rc<<4)+Ec+8|0;yj(Ab,(b[0]=a[yc>>2],b[1]=a[yc+4>>2],f[0]),(b[0]=a[Fc>>2],b[1]=a[Fc+4>>2],f[0]),tc,gc);E=((Ob-2<<4)+Ec|0)>>2;F=Ab>>2;a[E]=a[F];a[E+1]=a[F+1];a[E+2]=a[F+2];a[E+3]=a[F+3];var vc=a[da],Tc=0==(vc|0)?dc:In(d,a[K],dc,dc,La,vc)}}else{var Kc=fa|0;D=fa>>2;y=(fa+16|0)>>2;C=(fa+32|0)>>2;B=(fa+48|0)>>2;for(var Mc=Ob;;){if(0>=(Mc|0)){ha=1663;break}A=((Mc<<4)+a[K]|0)>>2;a[D]=a[A];a[D+1]=a[A+1];a[D+2]=a[A+2];a[D+3]=a[A+3];var id=Mc-1|0;w=((id<<4)+a[K]|0)>>2;a[y]=a[w];a[y+1]=a[w+1];a[y+2]=a[w+2];a[y+3]=a[w+3];var zc=Mc-2|0;u=((zc<<4)+a[K]|0)>>2;a[C]=a[u];a[C+1]=a[u+1];a[C+2]=a[u+2];a[C+3]=a[u+3];var Ic=Mc-3|0;t=((Ic<<4)+a[K]|0)>>2;a[B]=a[t];a[B+1]=a[t+1];a[B+2]=a[t+2];a[B+3]=a[t+3];if(0==(Ww(Kc,Gb)|0)){Mc=Ic}else{ha=1662;break}}do{if(1662==ha){v=((Mc<<4)+a[K]|0)>>2;a[v]=a[D];a[v+1]=a[D+1];a[v+2]=a[D+2];a[v+3]=a[D+3];s=((id<<4)+a[K]|0)>>2;a[s]=a[y];a[s+1]=a[y+1];a[s+2]=a[y+2];a[s+3]=a[y+3];p=((zc<<4)+a[K]|0)>>2;a[p]=a[C];a[p+1]=a[C+1];a[p+2]=a[C+2];a[p+3]=a[C+3];z=((Ic<<4)+a[K]|0)>>2;a[z]=a[B];a[z+1]=a[B+1];a[z+2]=a[B+2];a[z+3]=a[B+3];var Dc=Ic}else{if(1663==ha){if(0!=(Mc|0)){Dc=Mc-3|0}else{0==(a[da]|0)&&sa(zj|0,447,im|0,Vw|0);n=(La+16|0)>>2;var Gc=a[K],Nc=Ha+16|0,Qc=(b[0]=a[Nc>>2],b[1]=a[Nc+4>>2],f[0]),Yc=Ha+24|0,Rc=(b[0]=a[Yc>>2],b[1]=a[Yc+4>>2],f[0]),Td=Gc|0,Lc=Gc+8|0;jm(Fa,Qc,Rc,(b[0]=a[Td>>2],b[1]=a[Td+4>>2],f[0]),(b[0]=a[Lc>>2],b[1]=a[Lc+4>>2],f[0]),Gb);k=Fa>>2;a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];Tc=0;break a}}}}while(0);var Pc=a[da],Tc=0==(Pc|0)?Dc:In(d,a[K],Dc,Ob-3|0,La,Pc)}}}else{ha=1670}}while(0);1670==ha&&(0!=(a[da]|0)&&(l=(La+16|0)>>2,m=(Ha+16|0)>>2,a[l]=a[m],a[l+1]=a[m+1],a[l+2]=a[m+2],a[l+3]=a[m+3]),Tc=0);var Xc=Ob-Tc+1|0;e=(La+4|0)>>2;a[e]=Xc;var Jc=Cb(Xc<<4);a[La>>2]=Jc;var ad=0<(a[e]|0),jd=Ha|0;a:do{if(ad){for(var md=0,Oc=Tc,Vc=Jc;;){g=((md<<4)+Vc|0)>>2;i=((Oc<<4)+a[jd>>2]|0)>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];var Zc=md+1|0;if((Zc|0)>=(a[e]|0)){break a}md=Zc;Oc=Oc+1|0;Vc=a[La>>2]}}}while(0);G(a[jd>>2]);G(Ha);a[a[ma>>2]>>2]=La}}}h=fa}function EN(b,c){var d=h;if(0==(c|0)){var g=0}else{0==m[c]<<24>>24?g=0:(g=RL(b,c),0==(g|0)&&la(0,KN|0,(j=h,h+=4,a[j>>2]=c,j)))}h=d;return g}function jm(c,d,i,g,e,m){var l=h;h+=400;var k=l+100,n=l+200,z=l+300,p=m|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),s=m+8|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),v=m+16|0,v=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]),m=m+24|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);if(p>g){var t=((p-d)*(i-e)/(d-g)&-1|0)+i;if(!(tm)){z=c|0;f[0]=p;a[z>>2]=b[0];a[z+4>>2]=b[1];c=c+8|0;f[0]=t;a[c>>2]=b[0];a[c+4>>2]=b[1];h=l;return}}if(vm){var u=v}else{z=c|0;f[0]=v;a[z>>2]=b[0];a[z+4>>2]=b[1];c=c+8|0;f[0]=t;a[c>>2]=b[0];a[c+4>>2]=b[1];h=l;return}}else{u=p}if(s>e){if(u=((s-i)*(d-g)/(i-e)&-1|0)+d,uv){t=s}else{z=c|0;f[0]=u;a[z>>2]=b[0];a[z+4>>2]=b[1];c=c+8|0;f[0]=s;a[c>>2]=b[0];a[c+4>>2]=b[1];h=l;return}}if(mv){t=m}else{z=c|0;f[0]=u;a[z>>2]=b[0];a[z+4>>2]=b[1];c=c+8|0;f[0]=m;a[c>>2]=b[0];a[c+4>>2]=b[1];h=l;return}}d=gq(d,i,l|0);g=gq(g,e,k|0);n=gq(p,s,n|0);z=gq(v,m,z|0);la(1,LN|0,(j=h,h+=16,a[j>>2]=d,a[j+4>>2]=g,a[j+8>>2]=n,a[j+12>>2]=z,j));sa(zj|0,78,MN|0,vd|0);z=c|0;f[0]=u;a[z>>2]=b[0];a[z+4>>2]=b[1];c=c+8|0;f[0]=t;a[c>>2]=b[0];a[c+4>>2]=b[1];h=l}function Ww(c,d){var i,g,e,j,l=h;h+=128;var k=l|0;g=l>>2;j=c>>2;a[g]=a[j];a[g+1]=a[j+1];a[g+2]=a[j+2];a[g+3]=a[j+3];g=(l+16|0)>>2;j=(c+16|0)>>2;a[g]=a[j];a[g+1]=a[j+1];a[g+2]=a[j+2];a[g+3]=a[j+3];g=(l+32|0)>>2;j=(c+32|0)>>2;a[g]=a[j];a[g+1]=a[j+1];a[g+2]=a[j+2];a[g+3]=a[j+3];g=(l+48|0)>>2;j=(c+48|0)>>2;a[g]=a[j];a[g+1]=a[j+1];a[g+2]=a[j+2];a[g+3]=a[j+3];j=(d|0)>>2;i=(b[0]=a[j],b[1]=a[j+1],f[0]);e=(d+8|0)>>2;g=(d+24|0)>>2;i=hq(c,0,1,i,(b[0]=a[e],b[1]=a[e+1],f[0]),(b[0]=a[g],b[1]=a[g+1],f[0]));if(0<=i&2>i){Ld(l+64,k,3,i,c,0);var n=i}else{n=2}i=(d+16|0)>>2;var m=(b[0]=a[i],b[1]=a[i+1],f[0]),m=hq(c,0,1e,h=l,k&1}Ld(l+112,k,3,j,c,0);k=2>j;h=l;return k&1}function hq(c,d,i,g,e,j){var l=h;h+=144;var k,n=l+64,m=l+128,p=NN(c,g);if(1==(p|0)){k=1717}else{if(0==(p|0)){return h=l,-1}}if(1717==k&&(k=c+48|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),((0>k?k-.5:k+.5)&-1|0)==((0>g?g-.5:g+.5)&-1|0))){return g=c+56|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),h=l,gj?-1:i}k=l|0;n|=0;Ld(m,c,3,.5,k,n);c=.5*(d+i);d=hq(k,d,c,g,e,j);if(0<=d){return h=l,d}i=hq(n,c,i,g,e,j);h=l;return i}function ON(c,d){var i=c+8|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),i=id&1,g=c+24|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),e=gd&1,g=c+40|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),g=gd&1,i=((g|0)!=(e|0)&0!=(e|0)&1)+((e|0)!=(i|0)&0!=(i|0)&1)+(0==(i|0)&1)|0,e=c+56|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(ed&1|0)!=(g|0);g=e&0!=(g|0);return i=(g&1)+i|0}function NN(c,d){var i=c|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),i=id&1,g=c+16|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),e=gd&1,g=c+32|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),g=gd&1,i=((g|0)!=(e|0)&0!=(e|0)&1)+((e|0)!=(i|0)&0!=(i|0)&1)+(0==(i|0)&1)|0,e=c+48|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(ed&1|0)!=(g|0);g=e&0!=(g|0);return i=(g&1)+i|0}function PN(b){return(1==m[b+162|0]<<24>>24?1!=(a[b+180>>2]|0)?0:1!=(a[b+188>>2]|0)?0:0==(a[b+120>>2]|0):0)&1}function QN(b){return(1==m[b+162|0]<<24>>24?1!=(a[b+188>>2]|0)?0:1!=(a[b+180>>2]|0)?0:0==(a[b+120>>2]|0):0)&1}function iq(c,d,i,g,e,j){var l=h;h+=144;var k,n=l+64,m=l+128,p=ON(c,g);if(1==(p|0)){k=1764}else{if(0==(p|0)){return h=l,-1}}if(1764==k&&(k=c+56|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),((0>k?k-.5:k+.5)&-1|0)==((0>g?g-.5:g+.5)&-1|0))){return g=c+48|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),h=l,gj?-1:i}k=l|0;n|=0;Ld(m,c,3,.5,k,n);c=.5*(d+i);d=iq(k,d,c,g,e,j);if(0<=d){return h=l,d}i=iq(n,c,i,g,e,j);h=l;return i}function gq(c,d,i){var g=h;Ma(i,RN|0,(j=h,h+=16,f[0]=c,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=d,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));h=g;return i}function SN(b){var c,d;if(2<=((D[b+246>>1]<<16>>16)-(D[b+244>>1]<<16>>16)|0)){c=(b+220|0)>>2;var g=a[c];do{if(0==(a[g+88>>2]|0)){var f=1,e=g;d=1791}else{for(var h=1,k=2,j=g;;){var m=a[(j>>2)+(11*h|0)],p=0<(m|0);a:do{if(p){for(var s=0,v=j,t=m;;){var u=a[(v+4>>2)+(11*h|0)],w=a[u+(s<<2)>>2];do{if(0==PN(w)<<24>>24){var A=v,B=t}else{A=w+176|0;for(B=s;;){var C=B+1|0;if((C|0)>=(t|0)){break}var y;y=a[a[A>>2]>>2];var T=a[u+(C<<2)>>2],F=a[a[T+176>>2]>>2];y=0==PN(T)<<24>>24?0:(a[y+16>>2]|0)!=(a[F+16>>2]|0)?0:(0==Yw(y,F)<<24>>24?0:0==(Aj(y+28|0,F+28|0)|0))&1;if(0==y<<24>>24){break}else{B=C}}1<(C-s|0)?(Zw(b,h,s,B,1),A=B=a[c],B=a[(B>>2)+(11*h|0)]):(A=v,B=t)}}while(0);s=s+1|0;if((s|0)<(B|0)){v=A,t=B}else{var E=A;break a}}}else{E=j}}while(0);j=k+1|0;if(0==(a[(E>>2)+(11*j|0)]|0)){break}else{h=k,k=j,j=E}}0<(k|0)&&(f=k,e=E,d=1791)}}while(0);a:do{if(1791==d){for(;;){d=a[(e>>2)+(11*f|0)];g=0<(d|0);b:do{if(g){h=0;k=e;for(C=d;;){E=a[(k+4>>2)+(11*f|0)];j=a[E+(h<<2)>>2];do{if(0==QN(j)<<24>>24){m=k,p=C}else{m=j+184|0;for(p=h;;){var M=p+1|0;if((M|0)>=(C|0)){break}s=a[a[m>>2]>>2];v=a[E+(M<<2)>>2];t=a[a[v+184>>2]>>2];s=0==QN(v)<<24>>24?0:(a[s+12>>2]|0)!=(a[t+12>>2]|0)?0:(0==Yw(s,t)<<24>>24?0:0==(Aj(s+68|0,t+68|0)|0))&1;if(0==s<<24>>24){break}else{p=M}}1<(M-h|0)?(Zw(b,f,h,p,0),m=p=a[c],p=a[(p>>2)+(11*f|0)]):(m=k,p=C)}}while(0);h=h+1|0;if((h|0)<(p|0)){k=m,C=p}else{var G=m;break b}}}else{G=e}}while(0);f=f-1|0;if(0<(f|0)){e=G,d=1791}else{break a}}}}while(0);c=b+208|0;if(1<=(a[c>>2]|0)){b=b+212|0;for(M=1;!($w(a[a[b>>2]+(M<<2)>>2]),M=M+1|0,(M|0)>(a[c>>2]|0));){}}}}function Zw(b,c,d,g,f){var e,h;e=(b+220|0)>>2;var k=a[e],j=a[(k+4>>2)+(11*c|0)],m=a[j+(d<<2)>>2],d=d+1|0,p=(d|0)>(g|0);a:do{if(p){var s=k}else{for(var v=1==(f|0),t=b,u=m+184|0,w=m,A=m+176|0,B=d,C=j;;){C=a[C+(B<<2)>>2];b:do{if(v){var y=C+184|0,D=a[a[y>>2]>>2];if(0!=(D|0)){for(var F=C+176|0;;){for(var E=a[u>>2],M=D+12|0,G=0;;){var O=a[E+(G<<2)>>2];if(0==(O|0)){h=1827;break}if((a[O+12>>2]|0)==(a[M>>2]|0)){var H=O;break}else{G=G+1|0}}1827==h&&(h=0,H=de(w,a[M>>2],D));E=a[a[F>>2]>>2];M=0==(E|0);c:do{if(!M){G=H;for(O=E;;){if(og(O,G),pf(O),O=a[a[F>>2]>>2],0==(O|0)){break c}}}}while(0);pf(D);D=a[a[y>>2]>>2];if(0==(D|0)){break b}}}}else{if(y=C+176|0,D=a[a[y>>2]>>2],0!=(D|0)){for(F=C+184|0;;){E=a[A>>2];M=D+16|0;for(G=0;;){O=a[E+(G<<2)>>2];if(0==(O|0)){h=1835;break}if((a[O+16>>2]|0)==(a[M>>2]|0)){var I=O;break}else{G=G+1|0}}1835==h&&(h=0,I=de(a[M>>2],w,D));E=a[a[F>>2]>>2];M=0==(E|0);c:do{if(!M){G=I;for(O=E;;){if(og(O,G),pf(O),O=a[a[F>>2]>>2],0==(O|0)){break c}}}}while(0);pf(D);D=a[a[y>>2]>>2];if(0==(D|0)){break b}}}}}while(0);(a[C+180>>2]|0)!=(-a[C+188>>2]|0)&&sa(TN|0,113,UN|0,VN|0);Qw(t,C);B=B+1|0;C=a[e];if((B|0)>(g|0)){s=C;break a}C=a[(C+4>>2)+(11*c|0)]}}}while(0);b=g+1|0;g=s+44*c|0;if((b|0)<(a[g>>2]|0)){for(;;){if(s=a[(s+4>>2)+(11*c|0)],g=a[s+(b<<2)>>2],a[s+(d<<2)>>2]=g,a[g+240>>2]=d,d=d+1|0,b=b+1|0,s=a[e],g=s+44*c|0,(b|0)>=(a[g>>2]|0)){J=d;K=g;break}}a[K>>2]=J}else{var J=d,K;a[g>>2]=J}e=a[e];c=a[(e+44*c+4|0)>>2];J=(J<<2)+c|0;a[J>>2]=0}function WN(b,c){var d=(a[c+236>>2]<<2)+b|0,g=a[d>>2];if(0==(g|0)||(a[g+240>>2]|0)>(a[c+240>>2]|0)){a[d>>2]=c}}function Yw(b,c){var d=0==m[b+124|0]<<24>>24;a:do{if(d){var g=b}else{for(var f=b;;){if(f=a[f+128>>2],0==m[f+124|0]<<24>>24){g=f;break a}}}}while(0);d=0==m[c+124|0]<<24>>24;a:do{if(d){var e=c}else{for(f=c;;){if(f=a[f+128>>2],0==m[f+124|0]<<24>>24){e=f;break a}}}}while(0);return 0!=m[g+161|0]<<24>>24||0!=m[e+161|0]<<24>>24?0:g=0<((a[a[g+16>>2]+236>>2]-a[a[g+12>>2]+236>>2])*(a[a[e+16>>2]+236>>2]-a[a[e+12>>2]+236>>2])|0)&1}function jq(b,c){var d;a[Bj>>2]=b;var g=m[pg]+1&255;m[pg]=0==g<<24>>24?1:g;a[b+228>>2]=0;a[b+240>>2]=0;var f=ra(b);if(0!=(f|0)){for(g=0<(c|0);;){var e=f;if(g){d=f+24|0;var h=a[d+192>>2];if(0==(h|0)){d=1886}else{var k=a[a[h+276>>2]+(a[d+212>>2]<<2)>>2];d=1887}}else{d=1886}1886==d&&(d=0,(e|0)==(Zb(e)|0)&&(k=e,d=1887));if(1887==d&&m[k+163|0]<<24>>24!=m[pg]<<24>>24){a[a[Bj>>2]+216>>2]=0;a[kq>>2]=0;Cj(k);var h=a[Bj>>2],j=h+228|0,e=a[j>>2];d=e+1|0;a[j>>2]=d;h=a[h+224>>2];d=0==(h|0)?Cb(d<<2):wb(h,d<<2);h=a[Bj>>2];a[h+224>>2]=d;a[d+(e<<2)>>2]=a[h+216>>2]}f=ba(b,f);if(0==(f|0)){break}}}}function Cj(b){var c=a[Bj>>2],d=c+240|0;a[d>>2]=a[d>>2]+1|0;m[b+163|0]=m[pg];var d=a[kq>>2],g=b+172|0;0==(d|0)?(a[g>>2]=0,a[c+216>>2]=b):(a[g>>2]=d,a[d+168>>2]=b);a[kq>>2]=b;c=b+168|0;a[c>>2]=0;var f=a[(b+184|0)>>2],e=0==(f|0),g=a[(b+176|0)>>2],d=a[(b+192|0)>>2],c=a[(b+200|0)>>2];a:do{if(!e){var h=a[f>>2];if(0!=(h|0)){for(var k=0;;){var j=a[h+12>>2],h=(j|0)==(b|0)?a[h+16>>2]:j;m[h+163|0]<<24>>24!=m[pg]<<24>>24&&(h|0)==(Zb(h)|0)&&Cj(h);k=k+1|0;h=a[f+(k<<2)>>2];if(0==(h|0)){break a}}}}}while(0);f=0==(g|0);a:do{if(!f&&(k=a[g>>2],0!=(k|0))){for(e=0;;){if(h=a[k+12>>2],k=(h|0)==(b|0)?a[k+16>>2]:h,m[k+163|0]<<24>>24!=m[pg]<<24>>24&&(k|0)==(Zb(k)|0)&&Cj(k),e=e+1|0,k=a[g+(e<<2)>>2],0==(k|0)){break a}}}}while(0);g=0==(d|0);a:do{if(!g&&(e=a[d>>2],0!=(e|0))){for(f=0;;){if(k=a[e+12>>2],e=(k|0)==(b|0)?a[e+16>>2]:k,m[e+163|0]<<24>>24!=m[pg]<<24>>24&&(e|0)==(Zb(e)|0)&&Cj(e),f=f+1|0,e=a[d+(f<<2)>>2],0==(e|0)){break a}}}}while(0);if(0!=(c|0)&&(g=a[c>>2],0!=(g|0))){for(d=0;!(f=a[g+12>>2],g=(f|0)==(b|0)?a[g+16>>2]:f,m[g+163|0]<<24>>24!=m[pg]<<24>>24&&(g|0)==(Zb(g)|0)&&Cj(g),d=d+1|0,g=a[c+(d<<2)>>2],0==(g|0));){}}}function XN(b){var c=ra(b),d=0==(c|0);a:do{if(!d){for(var g=c;;){var f=g,e=f>>2;hF(f);et(f,a[a[e+5]+152>>2]&1);a[e+45]=0;a[e+44]=fa(20);a[e+47]=0;a[e+46]=fa(20);a[e+51]=0;a[e+50]=fa(12);a[e+49]=0;a[e+48]=fa(12);a[e+53]=0;a[e+52]=fa(12);a[e+55]=1;g=ba(b,g);if(0==(g|0)){break a}}}}while(0);c=ra(b);if(0!=(c|0)){for(;;){d=Ib(b,c);g=0==(d|0);a:do{if(!g){for(f=d;;){var e=f,h=cc,k=cc;kF(e);var j=e|0,z=Xb(j,a[Kg>>2],1,0),k=(e+164|0)>>2;ib[k]=z;var h=a[Gh>>2],p=jc(a[e+16>>2]|0,h,Y|0),s=jc(a[e+12>>2]|0,h,Y|0),h=(e+162|0)>>1;D[h]=1;D[e+176>>1]=1;0!=m[p]<<24>>24&(p|0)==(s|0)&&(D[h]=1e3,ib[k]=100*z);0!=(aN(e)|0)&&(D[h]=0,ib[k]=0);m[e+160|0]=Zf(j,a[$u>>2],0)&255;D[e+178>>1]=Zf(j,a[Hh>>2],1)&65535;f=yb(b,f);if(0==(f|0)){break a}}}}while(0);c=ba(b,c);if(0==(c|0)){break}}}}function ax(b){var c=a[b+216>>2],d;if(0!=(c|0)){for(d=c>>2;;){var g=a[d+42],f=c,e=a[f+180>>2],h=0<(e|0);a:do{if(h){for(var k=f+176|0,j=e;;){var j=j-1|0,z=a[a[k>>2]+(j<<2)>>2];pf(z);G(z|0);if(0>=(j|0)){break a}}}}while(0);e=a[f+188>>2];if(0<(e|0)){for(f=f+184|0;!(e=e-1|0,h=a[a[f>>2]+(e<<2)>>2],pf(h),G(h|0),0>=(e|0));){}}1==m[c+162|0]<<24>>24&&(f=a[d+46],0!=(f|0)&&G(f),d=a[d+44],0!=(d|0)&&G(d),G(c|0));if(0==(g|0)){break}else{c=g,d=c>>2}}}c=ra(b);if(0!=(c|0)){for(;;){g=c;d=Ib(b,c);f=0==(d|0);a:do{if(!f){for(e=d;;){h=e;k=cc;k=(h+24|0)>>2;z=a[k];if(0!=(z|0)){j=0<(a[z+4>>2]|0);z=a[z>>2];b:do{if(j){for(var p=0,s=z;;){G(a[(s>>2)+(12*p|0)]);var p=p+1|0,v=a[k],s=a[v>>2];if((p|0)>=(a[v+4>>2]|0)){var t=s;break b}}}else{t=z}}while(0);G(t);G(a[k])}a[k]=0;vh(a[h+108>>2]);vh(a[h+120>>2]);vh(a[h+112>>2]);vh(a[h+116>>2]);h=(h+24|0)>>2;for(k=h+40;h>1];f=(b+246|0)>>1;var n=d<<16>>16>D[f]<<16>>16;a:do{if(n){g=b+276|0,g>>=2}else{for(var z=b+276|0,p=d<<16>>16;;){if(a[a[z>>2]+(p<<2)>>2]=0,p=p+1|0,(p|0)>(D[f]<<16>>16|0)){g=z;g>>=2;break a}}}}while(0);$N(b);d=ra(b);n=0==(d|0);a:do{if(!n){for(z=d;;){WN(a[g],z);var p=Ib(b,z),s=0==(p|0);b:do{if(!s){for(var v=p;;){for(var t=v;!(c=a[t+180>>2],0==(c|0));){t=c}t=t+12|0;c=a[t>>2];var u=v+12|0,w=(a[c+236>>2]|0)<(a[a[u>>2]+236>>2]|0);c:do{if(w){for(var A=t,B=c;;){if(WN(a[g],B),A=a[a[a[A>>2]+184>>2]>>2]+12|0,B=a[A>>2],(a[B+236>>2]|0)>=(a[a[u>>2]+236>>2]|0)){break c}}}}while(0);v=yb(b,v);if(0==(v|0)){break b}}}}while(0);z=ba(b,z);if(0==(z|0)){break a}}}}while(0);n=b+32|0;d=(b+220|0)>>2;z=b+12|0;for(k=D[k>>1]<<16>>16;(k|0)<=(D[f]<<16>>16|0);){p=a[a[g]+(k<<2)>>2];s=(a[p+240>>2]<<2)+a[(a[a[n>>2]+220>>2]+4>>2)+(11*k|0)]|0;if((a[s>>2]|0)!=(p|0)){l=1983;break}a[(a[d]+4>>2)+(11*k|0)]=s;p=0;s=-1;a:for(;;){v=a[d];if((p|0)>=(a[(v>>2)+(11*k|0)]|0)){break}v=a[a[(v+4>>2)+(11*k|0)]+(p<<2)>>2];if(0==(v|0)){break}t=0==m[v+162|0]<<24>>24;b:do{if(t){if(0==(Ed(b,v|0)|0)){break a}else{c=p}}else{u=a[a[v+176>>2]>>2];for(c=u>>2;;){if(0==(u|0)){c=s;break b}u=a[c+32];if(0==(u|0)){break}else{c=u>>2}}c=0==(Ed(b,a[c+4]|0)|0)?s:0==(Ed(b,a[c+3]|0)|0)?s:p}}while(0);p=p+1|0;s=c}-1==(s|0)&&la(0,aO|0,(j=h,h+=8,a[j>>2]=a[z>>2],a[j+4>>2]=k,j));a[(a[d]>>2)+(11*k|0)]=s+1|0;k=k+1|0}1983==l&&S();f=b+208|0;if(1<=(a[f>>2]|0)){b=b+212|0;for(l=1;!($w(a[a[b>>2]+(l<<2)>>2]),l=l+1|0,(l|0)>(a[f>>2]|0));){}}h=e}function Aj(c,d){var i=h,g=c,c=h;h+=40;for(var g=g>>2,e=c>>2,j=g+10;g>=2;e=d>>2;for(j=g+10;g>24){return h=i,0!=g<<24>>24&1}if(0==g<<24>>24){return h=i,-1}g=c|0;e=d|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])&-1;if(0!=(g|0)){return h=i,g}g=c+8|0;e=d+8|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])&-1;h=i;return g}function YN(b){var c=b>>2,d=b+24|0,g=a[c+44];0!=(g|0)&&G(g);g=a[c+46];0!=(g|0)&&G(g);g=a[c+48];0!=(g|0)&&G(g);g=a[c+50];0!=(g|0)&&G(g);g=a[c+52];0!=(g|0)&&G(g);vh(a[c+30]);c=a[d>>2];if(0!=(c|0)){J[a[a[c+4>>2]+4>>2]](b)}b=d>>2;for(d=b+70;b(a[c>>2]|0),f=b+212|0,e=a[f>>2];a:do{if(g){var h=e}else{for(var k=1,j=e;;){if(j=a[j+(k<<2)>>2],m[j+250|0]=0,ax(j),k=k+1|0,j=a[f>>2],(k|0)>(a[c>>2]|0)){h=j;break a}}}}while(0);0!=(h|0)&&G(h);c=a[b+276>>2];0!=(c|0)&&G(c);c=a[b+224>>2];0!=(c|0)&&G(c);c=(b+220|0)>>2;g=a[c];do{if(0!=(g|0)){f=b+244|0;h=D[f>>1];e=b+246|0;if(h<<16>>16>D[e>>1]<<16>>16){f=h,e=g}else{h=h<<16>>16;for(k=g;;){G(a[(k+12>>2)+(11*h|0)]);h=h+1|0;if((h|0)>(D[e>>1]<<16>>16|0)){break}k=a[c]}f=D[f>>1];e=a[c]}-1==f<<16>>16?G(e-44|0):G(e)}}while(0);if((a[b+32>>2]|0)!=(b|0)){b=d>>2;for(d=b+61;b>2;if(0==(c|0)){var c=a[f+4],e=a[f+3],b=(c|0)!=(e|0)?(a[c+236>>2]|0)==(a[e+236>>2]|0)?2:1:0!=m[b+56|0]<<24>>24?4:0==m[b+96|0]<<24>>24?8:4}else{b=c}a[f+43]=b|g|(0==(d|0)?2==(b|0)?(a[a[f+4]+240>>2]|0)<(a[a[f+3]+240>>2]|0)?16:32:1==(b|0)?(a[a[f+4]+236>>2]|0)<(a[a[f+3]+236>>2]|0)?16:32:16:d)}function bx(c,d){var i,g,e,Xa,l,k,n,z,p,s,v,t=h;h+=388;var u,w=t+184,A=t+368,B=D[c+164>>1]&14;if(0!=(B|0)){Tw(c);var C=h,y=a[km>>2];a[km>>2]=y+1|0;if(0>=(y|0)){var F=Cb(4800);a[Ch>>2]=F;0==(F|0)&&(la(1,bO|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),S());a[Yo>>2]=300;a[ml>>2]=0;a[nl>>2]=0;0!=m[ld]<<24>>24&&mk(ih)}h=C;var E=fa(92),H=a[c+256>>2];a[A+8>>2]=(H|0)/4&-1;var M=A+12|0;a[M>>2]=H;var I=fa(512);v=(A+4|0)>>2;a[v]=0;s=(A|0)>>2;a[s]=0;var O=c+244|0,K=D[O>>1],L=K<<16>>16;p=(c+246|0)>>1;var ia=D[p];if(K<<16>>16>ia<<16>>16){var N=I,Q=0,R=11520,U=L}else{for(var W=c+220|0,Z=I,Y=0,V=0,ca=L,$=a[W>>2],ka=ia;;){z=($+44*ca|0)>>2;var zb=a[z],ja=zb+V|0,aa=$+44*ca+4|0,da=a[a[aa>>2]>>2];if(0==(da|0)){var ea=zb}else{var xa=a[s]|0,qa=da+32|0,na=da+104|0,ha=(b[0]=a[qa>>2],b[1]=a[qa+4>>2],f[0])-(b[0]=a[na>>2],b[1]=a[na+4>>2],f[0]);a[s]=(xa>2]+(ea-1<<2)>>2];if(0!=(ga|0)){var va=a[v]|0,Rb=ga+32|0,Aa=ga+112|0,tb=(b[0]=a[Rb>>2],b[1]=a[Rb+4>>2],f[0])+(b[0]=a[Aa>>2],b[1]=a[Aa+4>>2],f[0]);a[v]=(va>tb?va:tb)&-1}}a[s]=a[s]-16|0;a[v]=a[v]+16|0;if(0<(a[z]|0)){for(var ya=Z,Ba=Y,wa=0,Ab=$;;){var Fa=a[a[(Ab+4>>2)+(11*ca|0)]+(wa<<2)>>2],Ga=a[Fa+128>>2];if(0!=(Ga|0)){n=(Ga+108|0)>>2;var Ea=a[n];if(0==(Ea|0)){sa(cO|0,318,dO|0,eO|0);var ta=a[n]}else{ta=Ea}k=(ta+56|0)>>2;l=(Fa+32|0)>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];m[a[n]+81|0]=1}var Ka=Fa+162|0;if(0==m[Ka]<<24>>24){u=2106}else{if(0==J[a[ke+4>>2]](Fa)<<24>>24){var za=Ba,ma=ya}else{u=2106}}a:do{if(2106==u){u=0;var pa=Fa+184|0,Ma=a[a[pa>>2]>>2],Ha=0==(Ma|0);b:do{if(Ha){var Ra=ya,Qa=Ba}else{for(var Pa=ya,La=Ba,db=0,Ya=Ma;;){var hb=m[Ya+124|0];if(4==hb<<24>>24||6==hb<<24>>24){var Za=La,ib=Pa}else{lq(Ya,1,16,64);var ab=La+1|0;a[Pa+(La<<2)>>2]=Ya;if(0!=(ab&127|0)){Za=ab,ib=Pa}else{var $a=0==(Pa|0)?Cb((La<<2)+516|0):wb(Pa,(La<<2)+516|0),Za=ab,ib=$a}}var jb=db+1|0,Ca=a[a[pa>>2]+(jb<<2)>>2];if(0==(Ca|0)){Ra=ib;Qa=Za;break b}else{Pa=ib,La=Za,db=jb,Ya=Ca}}}}while(0);var Ia=Fa+192|0,eb=a[Ia>>2],ub=0==(eb|0);b:do{if(ub){var Sa=Qa,mb=Ra}else{var ua=a[eb>>2];if(0==(ua|0)){Sa=Qa,mb=Ra}else{for(var Oa=Ra,Wa=Qa,pb=0,ob=ua;;){lq(ob,2,0,128);var bb=Wa+1|0;a[Oa+(Wa<<2)>>2]=ob;var qb=0==(bb&127|0)?0==(Oa|0)?Cb((Wa<<2)+516|0):wb(Oa,(Wa<<2)+516|0):Oa,Hb=pb+1|0,kb=a[a[Ia>>2]+(Hb<<2)>>2];if(0==(kb|0)){Sa=bb;mb=qb;break b}else{Oa=qb,Wa=bb,pb=Hb,ob=kb}}}}}while(0);var Gb=Fa+208|0,vb=a[Gb>>2];if(0==(vb|0)){za=Sa,ma=mb}else{if(0==m[Ka]<<24>>24){Xa=(Fa+112|0)>>2;var xb=(b[0]=a[Xa],b[1]=a[Xa+1],f[0]),Jb=Fa+244|0;f[0]=a[Jb>>2]|0;a[Xa]=b[0];a[Xa+1]=b[1];a[Jb>>2]=xb&-1}var nb=a[vb>>2];if(0==(nb|0)){za=Sa,ma=mb}else{for(var rb=mb,lb=Sa,Ta=0,cb=nb;;){lq(cb,0,0,128);var fb=lb+1|0;a[rb+(lb<<2)>>2]=cb;var Ua=0==(fb&127|0)?0==(rb|0)?Cb((lb<<2)+516|0):wb(rb,(lb<<2)+516|0):rb,sb=Ta+1|0,Na=a[a[Gb>>2]+(sb<<2)>>2];if(0==(Na|0)){za=fb;ma=Ua;break a}else{rb=Ua,lb=fb,Ta=sb,cb=Na}}}}}}while(0);var Fb=wa+1|0,Db=a[W>>2];if((Fb|0)<(a[(Db>>2)+(11*ca|0)]|0)){ya=ma,Ba=za,wa=Fb,Ab=Db}else{break}}var Ob=ma,Eb=za,Kb=Db,Bb=D[p]}else{Ob=Z,Eb=Y,Kb=$,Bb=ka}var Ja=ca+1|0;if((Ja|0)>(Bb<<16>>16|0)){break}else{Z=Ob,Y=Eb,V=ja,ca=Ja,$=Kb,ka=Bb}}N=Ob;Q=Eb;R=(ja<<5)+11520|0;U=Ja}var Lb=N;ch(Lb,Q,322);var Mb=E+84|0;a[Mb>>2]=fa(R);var Nb=A+16|0;a[Nb>>2]=fa(U<<5);var Pb=2==(B|0);a:do{if(Pb){var Wb=a[c+216>>2];if(0!=(Wb|0)){for(var Tb=Wb;;){1==m[Tb+162|0]<<24>>24&&0!=(a[Tb+120>>2]|0)&&fO(Tb);var ic=a[Tb+168>>2];if(0==(ic|0)){break a}else{Tb=ic}}}}}while(0);var Yb=0<(Q|0);a:do{if(Yb){var Sb=w|0,$b=w+16|0,Zb=w+12|0,ec=w+28|0,pc=w+68|0,dc=w+124|0,Vb=w+128|0;e=(c+220|0)>>2;for(var Xb=N,kc=c,rc=t|0,ac=t+16|0,nc=t+12|0,gc=t+28|0,lc=t+68|0,uc=t+124|0,qc=t+128|0,bc=0;;){var Hc=a[N+(bc<<2)>>2],jc=lm(Hc),fc=0==m[Hc+56|0]<<24>>24?0==m[Hc+96|0]<<24>>24?jc:Hc:Hc;g=fc>>2;if(0==(a[g+43]&32|0)){var mc=fc}else{for(var Qb=(fc|0)>>2,tc=rc>>2,Sc=Qb+46;Qb>2]=a[g+3];a[nc>>2]=a[g+4];Qb=(fc+68|0)>>2;tc=gc>>2;for(Sc=Qb+10;Qb>2;tc=lc>>2;for(Sc=Qb+10;Qb>2]=fc;mc=t}for(var Ac=mc+68|0,Cc=Hc+108|0,Ec=Hc+125|0,Ic=mc+28|0,oc=Hc+172|0,Fc=bc,vc=1;;){var Dc=Fc+1|0,Kc=(Dc|0)<(Q|0);if(!Kc){break}var Bc=(Dc<<2)+N|0,zc=a[Bc>>2];if((jc|0)!=(lm(zc)|0)){break}if(0==m[Ec]<<24>>24){var fd=0==m[zc+56|0]<<24>>24?0==m[zc+96|0]<<24>>24?jc:zc:zc;i=fd>>2;if(0==(a[i+43]&32|0)){var Gc=fd}else{Qb=(fd|0)>>2;tc=Sb>>2;for(Sc=Qb+46;Qb>2]=a[i+3];a[Zb>>2]=a[i+4];Qb=(fd+68|0)>>2;tc=ec>>2;for(Sc=Qb+10;Qb>2;tc=pc>>2;for(Sc=Qb+10;Qb>2]=fd;Gc=w}if(0!=(Aj(Ic,Gc+28|0)|0)){break}if(0!=(Aj(Ac,Gc+68|0)|0)){break}if(2==(a[oc>>2]&15|0)&&(a[Cc>>2]|0)!=(a[zc+108>>2]|0)){break}if(0!=(a[a[Bc>>2]+172>>2]&64|0)){break}}Fc=Dc;vc=vc+1|0}var yc=a[Hc+16>>2],Nc=a[Hc+12>>2],Yc=(yc|0)==(Nc|0),Tc=a[yc+236>>2];b:do{if(Yc){if((Tc|0)==(D[p]<<16>>16|0)){if(0<(Tc|0)){var Lc=a[a[(a[e]+4>>2)+(11*(Tc-1)|0)]>>2]+40|0,Mc=yc+40|0,id=(b[0]=a[Lc>>2],b[1]=a[Lc+4>>2],f[0])-(b[0]=a[Mc>>2],b[1]=a[Mc+4>>2],f[0])&-1}else{var Oc=yc+96|0,id=(b[0]=a[Oc>>2],b[1]=a[Oc+4>>2],f[0])&-1}}else{if((Tc|0)==(D[O>>1]<<16>>16|0)){var Pc=yc+40|0,Xc=a[a[(a[e]+4>>2)+(11*(Tc+1)|0)]>>2]+40|0,id=(b[0]=a[Pc>>2],b[1]=a[Pc+4>>2],f[0])-(b[0]=a[Xc>>2],b[1]=a[Xc+4>>2],f[0])&-1}else{var Qc=a[e],Rc=a[a[(Qc+4>>2)+(11*(Tc-1)|0)]>>2]+40|0,Jc=(b[0]=a[Rc>>2],b[1]=a[Rc+4>>2],f[0]),Vc=yc+40|0,Zc=(b[0]=a[Vc>>2],b[1]=a[Vc+4>>2],f[0]),ad=Jc-Zc&-1,$c=a[a[(Qc+4>>2)+(11*(Tc+1)|0)]>>2]+40|0,bd=Zc-(b[0]=a[$c>>2],b[1]=a[$c+4>>2],f[0])&-1,id=(ad|0)<(bd|0)?ad:bd}}UH(0,Xb,bc,vc,a[M>>2]|0,(id|0)/2&-1|0,ke);if(0<(vc|0)){for(var cd=0;;){var ed=a[a[N+(cd+bc<<2)>>2]+108>>2];0!=(ed|0)&&al(kc,ed);var pd=cd+1|0;if((pd|0)==(vc|0)){break b}else{cd=pd}}}}else{(Tc|0)==(a[Nc+236>>2]|0)?gO(A,E,N,bc,vc,B):hO(A,E,N,bc,vc,B)}}while(0);if(Kc){bc=Dc}else{break a}}}}while(0);var jd=a[c+216>>2],md=0==(jd|0);a:do{if(!md){for(var qd=c,dd=jd;;){if(1==m[dd+162|0]<<24>>24){var od=dd+120|0;0!=(a[od>>2]|0)&&(fO(dd),al(qd,a[od>>2]))}var Uc=a[dd+168>>2];if(0==(Uc|0)){break a}else{dd=Uc}}}}while(0);if(0!=(d|0)){var yd=ra(c);if(0!=(yd|0)){for(var sd=yd;;){var Bd=Ib(c,sd),Fd=0==(Bd|0);a:do{if(!Fd){for(var vd=Bd;;){if(0!=J[a[ke>>2]](vd)<<24>>24){var kd=a[vd+24>>2];if(0!=(kd|0)){var Md=kd,td=cc,Cd=a[Md+4>>2],Gd=Cb(48*Cd|0),td=(Md|0)>>2;if(0<(Cd|0)){for(var Ld=Gd,nd=a[td]+48*(Cd-1)|0,zd=0;;){var wd=nd,xd=Ld,Ed=cc,Wd=cc,we=cc,pe=cc,Hd=cc,Kd=cc,Dd=a[wd+4>>2],Yd=Cb(Dd<<4),$d=0<(Dd|0);b:do{if($d){for(var Ye=Yd,Ad=(Dd-1<<4)+a[wd>>2]|0,Ud=0;;){Kd=Ye>>2;Hd=Ad>>2;a[Kd]=a[Hd];a[Kd+1]=a[Hd+1];a[Kd+2]=a[Hd+2];a[Kd+3]=a[Hd+3];var Vd=Ud+1|0;if((Vd|0)==(Dd|0)){break b}else{Ye=Ye+16|0,Ad=Ad-16|0,Ud=Vd}}}}while(0);a[xd>>2]=Yd;a[xd+4>>2]=Dd;a[xd+8>>2]=a[wd+12>>2];a[xd+12>>2]=a[wd+8>>2];pe=(xd+16|0)>>2;we=(wd+32|0)>>2;a[pe]=a[we];a[pe+1]=a[we+1];a[pe+2]=a[we+2];a[pe+3]=a[we+3];Wd=(xd+32|0)>>2;Ed=(wd+16|0)>>2;a[Wd]=a[Ed];a[Wd+1]=a[Ed+1];a[Wd+2]=a[Ed+2];a[Wd+3]=a[Ed+3];var be=zd+1|0;if((be|0)==(Cd|0)){break}else{Ld=Ld+48|0,nd=nd-48|0,zd=be}}for(var Pd=0,gd=a[td];;){G(a[(gd>>2)+(12*Pd|0)]);var ud=Pd+1|0,de=a[td];if((ud|0)==(Cd|0)){Id=de;break}else{Pd=ud,gd=de}}le=Id}else{var Id=a[td],le=Id}G(le);a[td]=Gd}}var ae=yb(c,vd);if(0==(ae|0)){break a}else{vd=ae}}}}while(0);var Nd=ba(c,sd);if(0==(Nd|0)){break}else{sd=Nd}}}}var ce=0!=(a[Zk>>2]|0)|0!=(a[$k>>2]|0);a:do{if(ce){var Qd=c,se=ra(Qd);if(0!=(se|0)){for(var Ae=c,he=se;;){var Ee=0==(a[Zk>>2]|0);b:do{if(!Ee){var xe=Og(Qd,he);if(0!=(xe|0)){for(var qe=xe;;){var re=qe+112|0;0!=(a[re>>2]|0)&&(Eu(qe,1),al(Ae,a[re>>2]));var Ce=Ql(Qd,qe);if(0==(Ce|0)){break b}else{qe=Ce}}}}}while(0);var Ge=0==(a[$k>>2]|0);b:do{if(!Ge){var ue=Ib(Qd,he);if(0!=(ue|0)){for(var ge=ue;;){var ze=ge+116|0;0!=(a[ze>>2]|0)&&(Eu(ge,0),al(Ae,a[ze>>2]));var De=yb(Qd,ge);if(0==(De|0)){break b}else{ge=De}}}}}while(0);var me=ba(Qd,he);if(0==(me|0)){break a}else{he=me}}}}}while(0);G(Lb);G(a[Mb>>2]);G(E);G(a[Nb>>2]);var te=h,Be=a[km>>2]-1|0;a[km>>2]=Be;if(0>=(Be|0)&&(G(a[Ch>>2]),0!=m[ld]<<24>>24)){var He=a[oa>>2],Ie=a[ml>>2],Ke=a[nl>>2],Le=Jn();Va(He,iO|0,(j=h,h+=16,a[j>>2]=Ie,a[j+4>>2]=Ke,f[0]=Le,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j))}h=te;a[Ah>>2]=1}h=t}function fO(c){var d;if(0!=(a[c+180>>2]|0)){for(d=a[c+184>>2];;){var i=a[d>>2];if(0==m[i+124|0]<<24>>24){break}else{d=i+128|0}}d=(i+108|0)>>2;var i=a[d],g=0==(a[a[c+20>>2]+152>>2]&1|0)?i+24|0:i+32|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),e=c+32|0,g=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+.5*g,i=i+56|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];c=c+40|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);i=a[d]+64|0;f[0]=c;a[i>>2]=b[0];a[i+4>>2]=b[1];m[a[d]+81|0]=1}}function lm(b){for(;;){var c=a[b+180>>2];if(0==(c|0)){var d=b;break}else{b=c}}for(;!(b=a[d+128>>2],0==(b|0));){d=b}return d}function jO(c,d){var i,g,e,j,l=h;h+=368;j=l>>2;var k=l+184;e=k>>2;var n=a[c>>2],z=a[d>>2],p=a[n+172>>2],s=p&15,v=a[z+172>>2],t=v&15;if((s|0)!=(t|0)){return h=l,t-s|0}t=lm(n);g=t>>2;s=lm(z);i=s>>2;var u=a[g+4],w=a[g+3],A=a[u+236>>2]-a[w+236>>2]|0,B=a[i+4],C=a[i+3],y=a[B+236>>2]-a[C+236>>2]|0,A=-1<(A|0)?A:-A|0,y=-1<(y|0)?y:-y|0;if((A|0)!=(y|0)){return h=l,A-y|0}u=u+32|0;w=w+32|0;w=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])-(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]);B=B+32|0;C=C+32|0;w&=-1;w=-1<(w|0)?w:-w|0;C=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0])-(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0])&-1;C=-1<(C|0)?C:-C|0;if((w|0)!=(C|0)){return h=l,w-C|0}g=a[g+5];i=a[i+5];if((g|0)!=(i|0)){return h=l,g-i|0}0==m[n+56|0]<<24>>24?(t=i=0==m[n+96|0]<<24>>24?t:n,i=a[i+172>>2]):(t=n,i=p);if(0==(i&32|0)){j=t}else{i=(t|0)>>2;g=(l|0)>>2;for(C=i+46;i>2];a[j+3]=a[t+16>>2];i=(t+68|0)>>2;g=(l+28|0)>>2;for(C=i+10;i>2;g=(l+68|0)>>2;for(C=i+10;i>24?(s=t=0==m[z+96|0]<<24>>24?s:z,t=a[t+172>>2]):(s=z,t=v);if(0==(t&32|0)){e=s}else{i=(s|0)>>2;g=(k|0)>>2;for(C=i+46;i>2];a[e+3]=a[s+16>>2];i=(s+68|0)>>2;g=(k+28|0)>>2;for(C=i+10;i>2;g=(k+68|0)>>2;for(C=i+10;i>2]-a[z+20>>2]|0:p-v|0;h=l;return n}function gO(c,d,i,g,e,j){var l,k,n,z=h;h+=1580;var p;n=z>>2;var s=z+184,v=z+188,t=z+884,u=a[i+(g<<2)>>2];k=u>>2;if(0==(a[k+43]&32|0)){n=u}else{var w=(u|0)>>2;l=(z|0)>>2;for(var A=w+46;w>2;l=(z+28|0)>>2;for(A=w+10;w>2;l=(z+68|0)>>2;for(A=w+10;w>2;if(0!=m[u+125|0]<<24>>24){kO(i,g,e,a[k+3],a[k+4],j)}else{if(0!=(a[k+27]|0)){lO(c,d,n,j)}else{if(2==(j|0)){cx(a[k+4],a[k+3],i,g,e,2)}else{u=m[n+61|0];w=m[n+101|0];do{if(1!=u<<24>>24|4==w<<24>>24&&1!=w<<24>>24|4==u<<24>>24){var B=a[k+4],C=a[k+3],y=a[B+20>>2],A=a[B+236>>2];if(0<(A|0)){l=a[y+220>>2]>>2;var y=(0==(m[y+149|0]&1)<<24>>24?-1:-2)+A|0,D=a[a[l+(11*y|0)+1]>>2]+40|0,F=B+40|0,A=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])-(a[l+(11*y|0)+4]|0)-(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0])-(a[l+(11*A|0)+5]|0)}else{A=a[y+260>>2]|0}y=e+1|0;l=(a[c+12>>2]|0)/y;A/=y;mm(c,d,B,n,v,1);mm(c,d,C,n,t,0);for(var B=v+52|0,C=t+52|0,y=8==(j|0),D=d+80|0,E=0;;){if((E|0)>=(e|0)){p=2272;break}var F=a[i+(E+g<<2)>>2],M=a[B>>2],G=M-1|0,O=(G<<5)+v+56|0,O=(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]),H=(G<<5)+v+72|0,H=(b[0]=a[H>>2],b[1]=a[H+4>>2],f[0]),G=(G<<5)+v+80|0,I=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0]);f[0]=O;a[Z>>2]=b[0];a[Z+4>>2]=b[1];f[0]=I;a[Z+8>>2]=b[0];a[Z+12>>2]=b[1];var E=E+1|0,J=E|0,G=J*l;f[0]=H+G;a[Z+16>>2]=b[0];a[Z+20>>2]=b[1];H=I+J*A;f[0]=H;a[Z+24>>2]=b[0];a[Z+28>>2]=b[1];f[0]=O;a[Z+32>>2]=b[0];a[Z+36>>2]=b[1];f[0]=H;a[Z+40>>2]=b[0];a[Z+44>>2]=b[1];I=a[C>>2]-1|0;O=(I<<5)+t+72|0;O=(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]);f[0]=O;a[Z+48>>2]=b[0];a[Z+52>>2]=b[1];f[0]=H+A;a[Z+56>>2]=b[0];a[Z+60>>2]=b[1];J=(I<<5)+t+56|0;J=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0]);I=(I<<5)+t+80|0;I=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0]);f[0]=O;a[Z+80>>2]=b[0];a[Z+84>>2]=b[1];f[0]=I;a[Z+72>>2]=b[0];a[Z+76>>2]=b[1];f[0]=J-G;a[Z+64>>2]=b[0];a[Z+68>>2]=b[1];f[0]=H;a[Z+88>>2]=b[0];a[Z+92>>2]=b[1];M=0<(M|0);a:do{if(M){for(G=0;;){if(bd(d,(G<<5)+v+56|0),G=G+1|0,(G|0)>=(a[B>>2]|0)){break a}}}}while(0);bd(d,Z|0);bd(d,Z+32|0);bd(d,Z+64|0);M=a[C>>2];G=0<(M|0);a:do{if(G){for(O=M;;){if(O=O-1|0,bd(d,(O<<5)+t+56|0),0>=(O|0)){break a}}}}while(0);M=y?ff(d,s,0):ff(d,s,1);G=a[s>>2];if(0==(G|0)){p=2276;break}Wd(F,a[F+12>>2],M,G,ke);a[D>>2]=0}if(2272==p){h=z;return}if(2276==p){h=z;return}}}while(0);mO(c,d,i,g,e,n,8==(j|0)&1)}}}h=z}function hO(c,d,i,g,e,j){var l,k,n,z,p,s,v,t,u,w,A,B,C,y,D,F,E,M,G,O,H,I,K,L,N,Q,S,R,U,W,Y,ca,V,$,ba,ja,aa,da,ea,xa,fa,la,ha,ga,ka,sa,ra,qa,ya,na,wa,Ab,Fa,Ga=h;h+=2276;var oa;Fa=Ga>>2;var ta=Ga+4;Ab=ta>>2;var Ka=Ga+188;wa=Ka>>2;var za=Ga+372,ma=Ga+556,pa=Ga+1252,va=Ga+1948,Ha=Ga+1980;na=Ha>>2;var Ra=Ga+1984;ya=Ra>>2;var Ba=Ga+1988,Aa=Ga+2020,La=Ga+2052,Ea=Ga+2084,Ya=Ga+2116,Ma=Ga+2148,Za=Ga+2180,Qa=Ga+2212,ab=Ga+2244;if(0==(a[le>>2]|0)){var $a=Cb(32e3);a[le>>2]=$a;var jb=Cb(32e3);a[Dj>>2]=jb;a[ai>>2]=2e3;a[mq>>2]=2e3}var Ca=a[i+(g<<2)>>2];qa=(Ca+16|0)>>2;var Ia=a[qa],eb=a[Ia+20>>2];ra=(Ca+12|0)>>2;var ub=a[ra],Sa=a[Ia+236>>2]-a[ub+236>>2]|0;do{if(1<((-1<(Sa|0)?Sa:-Sa|0)|0)){for(var Pa=Ca|0,ua=Pa>>2,Oa=(ta|0)>>2,Wa=ua+46;ua>2]&32|0),ob=Ka|0,ua=Pa>>2,Oa=ob>>2,Wa=ua+46;ua>2,Oa=db>>2,Wa=ua+10;ua>2,Oa=hb>>2,Wa=ua+10;ua>2,Oa=xb>>2,Wa=ua+10;ua>2];if(0==(nb|0)){break}else{ib=nb}}var rb=a[ib+12>>2];a[Ab+3]=rb;m[ta+96|0]=0;m[ta+124|0]=1;sa=(ta+68|0)>>2;a[sa]=0;a[sa+1]=0;a[sa+2]=0;a[sa+3]=0;a[Ab+32]=Ca;var lb=1,Ta=ta,cb=qb,fb=rb}else{if(0==(a[Ca+172>>2]&32|0)){lb=0,Ta=Ca,cb=Ia,fb=ub}else{for(var Ua=ta|0,ua=(Ca|0)>>2,Oa=Ua>>2,Wa=ua+46;ua>2,Oa=Fb>>2,Wa=ua+10;ua>2,Oa=Db>>2,Wa=ua+10;ua>2],Ga);a[ya]=Eb;if(0==(Eb|0)){var Va=a[Ta+16>>2],Bb=a[Ta+12>>2];oa=2291}}else{Va=cb,Bb=fb,oa=2291}if(2291==oa){var Ja=8==(j|0);a[ya]=0;a[Fa]=Bb;Sg(Ba,c,Va,0,Ta);ka=ma>>2;ga=Ba>>2;a[ka]=a[ga];a[ka+1]=a[ga+1];a[ka+2]=a[ga+2];a[ka+3]=a[ga+3];a[ka+4]=a[ga+4];a[ka+5]=a[ga+5];a[ka+6]=a[ga+6];a[ka+7]=a[ga+7];ha=va>>2;a[ha]=a[ga];a[ha+1]=a[ga+1];a[ha+2]=a[ga+2];a[ha+3]=a[ga+3];a[ha+4]=a[ga+4];a[ha+5]=a[ga+5];a[ha+6]=a[ga+6];a[ha+7]=a[ga+7];vl(d,Ta,1,ma,nm(Va));la=(ma+52|0)>>2;var mb=a[la]-1|0,yb=(mb<<5)+ma+80|0,Hb=(b[0]=a[yb>>2],b[1]=a[yb+4>>2],f[0]);fa=(va+24|0)>>2;f[0]=Hb;a[fa]=b[0];a[fa+1]=b[1];var Gb=(mb<<5)+ma+64|0,Jb=(b[0]=a[Gb>>2],b[1]=a[Gb+4>>2],f[0]);xa=(va+8|0)>>2;f[0]=Jb;a[xa]=b[0];a[xa+1]=b[1];var Kb=Va+40|0;bi(Aa,va,1,(b[0]=a[Kb>>2],b[1]=a[Kb+4>>2],f[0])-a[(a[a[Va+20>>2]+220>>2]+16>>2)+(11*a[Va+236>>2]|0)]&-1);ea=Aa>>2;a[ha]=a[ea];a[ha+1]=a[ea+1];a[ha+2]=a[ea+2];a[ha+3]=a[ea+3];a[ha+4]=a[ea+4];a[ha+5]=a[ea+5];a[ha+6]=a[ea+6];a[ha+7]=a[ea+7];da=(va|0)>>2;aa=(va+16|0)>>2;if((b[0]=a[da],b[1]=a[da+1],f[0])<(b[0]=a[aa],b[1]=a[aa+1],f[0])){if((b[0]=a[xa],b[1]=a[xa+1],f[0])<(b[0]=a[fa],b[1]=a[fa+1],f[0])){var Ib=a[la];a[la]=Ib+1|0;ja=((Ib<<5)+ma+56|0)>>2;a[ja]=a[ha];a[ja+1]=a[ha+1];a[ja+2]=a[ha+2];a[ja+3]=a[ha+3];a[ja+4]=a[ha+4];a[ja+5]=a[ha+5];a[ja+6]=a[ha+6];a[ja+7]=a[ha+7]}}ba=La>>2;var Lb=eb+149|0;$=Ea>>2;V=pa>>2;ca=Ya>>2;Y=(pa+52|0)>>2;var Mb=d+56|0,Nb=d+69|0;W=Ma>>2;var Pb=d+16|0,Tb=d+29|0,Wb=-1,Yb=0,Vb=Va,Sb=Ta,$b=Bb;a:for(;;){for(var Zb=0,bc=Wb,ec=Yb,fc=Vb,lc=Sb,dc=0,Xb=$b;;){if(1!=m[Xb+162|0]<<24>>24){break a}if(0!=J[a[ke+4>>2]](Xb)<<24>>24){break a}var kc=dc|1,rc=(dc<<5)+Z|0;dx(La,c,eb,a[fc+236>>2]);U=rc>>2;a[U]=a[ba];a[U+1]=a[ba+1];a[U+2]=a[ba+2];a[U+3]=a[ba+3];a[U+4]=a[ba+4];a[U+5]=a[ba+5];a[U+6]=a[ba+6];a[U+7]=a[ba+7];if(0==(Zb|0)){var jc;for(var ac=cc,nc=Xb+32|0,Qb=Xb,tc=0;;){var gc=a[a[a[Qb+184>>2]>>2]+12>>2];if(1!=m[gc+162|0]<<24>>24){ac=2393;break}if(1!=(a[gc+188>>2]|0)){ac=2396;break}if(1!=(a[gc+180>>2]|0)){ac=2394;break}var uc=gc+32|0;if((b[0]=a[uc>>2],b[1]=a[uc+4>>2],f[0])!=(b[0]=a[nc>>2],b[1]=a[nc+4>>2],f[0])){ac=2395;break}else{Qb=gc,tc=tc+1|0}}jc=2396==ac||2393==ac||2395==ac||2394==ac?tc:cc;var mc=(jc|0)<((0!=(m[Lb]&1)<<24>>24?5:3)|0),qc=mc&1^1,vc=mc?bc:1,oc=mc?jc:jc-2|0}else{qc=Zb,vc=bc,oc=ec}if(!(0==(qc|0)|0<(vc|0))){break}var Ac=(kc<<5)+Z|0;Sg(Ea,c,Xb,lc,a[a[Xb+184>>2]>>2]);R=Ac>>2;a[R]=a[$];a[R+1]=a[$+1];a[R+2]=a[$+2];a[R+3]=a[$+3];a[R+4]=a[$+4];a[R+5]=a[$+5];a[R+6]=a[$+6];a[R+7]=a[$+7];var zc=a[a[a[Fa]+184>>2]>>2],Dc=a[zc+16>>2],Cc=a[zc+12>>2];a[Fa]=Cc;Zb=qc;bc=vc-1|0;ec=oc;fc=Dc;lc=zc;dc=dc+2|0;Xb=Cc}Sg(Ya,c,Xb,lc,a[a[Xb+184>>2]>>2]);a[V]=a[ca];a[V+1]=a[ca+1];a[V+2]=a[ca+2];a[V+3]=a[ca+3];a[V+4]=a[ca+4];a[V+5]=a[ca+5];a[V+6]=a[ca+6];a[V+7]=a[ca+7];xl(d,lc,1,pa,nm(a[lc+12>>2]));var Bc=a[Fa],Ec=Bc+40|0;bi(va,(a[Y]-1<<5)+pa+56|0,4,(b[0]=a[Ec>>2],b[1]=a[Ec+4>>2],f[0])+a[(a[a[Bc+20>>2]+220>>2]+20>>2)+(11*a[Bc+236>>2]|0)]&-1);if((b[0]=a[da],b[1]=a[da+1],f[0])<(b[0]=a[aa],b[1]=a[aa+1],f[0])){if((b[0]=a[xa],b[1]=a[xa+1],f[0])<(b[0]=a[fa],b[1]=a[fa+1],f[0])){var Fc=a[Y];a[Y]=Fc+1|0;S=((Fc<<5)+pa+56|0)>>2;a[S]=a[ha];a[S+1]=a[ha+1];a[S+2]=a[ha+2];a[S+3]=a[ha+3];a[S+4]=a[ha+4];a[S+5]=a[ha+5];a[S+6]=a[ha+6];a[S+7]=a[ha+7]}}f[0]=1.5707963267948966;a[Mb>>2]=b[0];a[Mb+4>>2]=b[1];m[Nb]=1;ex(d,Sb,lc,ma,pa,kc);if(Ja){var Ic=ff(d,Ha,0);oa=2310}else{var yc=ff(d,Ha,1);if(Ob){var Gc=a[na];if(4<(Gc|0)){Q=(yc+16|0)>>2;N=yc>>2;a[Q]=a[N];a[Q+1]=a[N+1];a[Q+2]=a[N+2];a[Q+3]=a[N+3];L=(yc+32|0)>>2;var Kc=(Gc-1<<4)+yc|0;K=Kc>>2;a[L]=a[K];a[L+1]=a[K+1];a[L+2]=a[K+2];a[L+3]=a[K+3];ck(yc+48|0,Kc);var Tc=a[na]=4,Nc=yc}else{var Mc=yc,Lc=Gc;oa=2311}}else{Ic=yc,oa=2310}}2310==oa&&(oa=0,Mc=Ic,Lc=a[na],oa=2311);if(2311==oa){if(oa=0,0==(Lc|0)){oa=2367;break}else{Tc=Lc,Nc=Mc}}var Oc=a[ya],Pc=Oc+Tc|0;if((Pc|0)>(a[ai>>2]|0)){a[ai>>2]=Pc<<1;var Xc=wb(a[le>>2],Pc<<5),Qc=a[le>>2]=Xc}else{Qc=a[le>>2]}if(0<(Tc|0)){for(var Yc=1<(Tc|0)?Tc:1,Rc=0,Vc=Oc;;){I=((Vc<<4)+Qc|0)>>2;H=((Rc<<4)+Nc|0)>>2;a[I]=a[H];a[I+1]=a[H+1];a[I+2]=a[H+2];a[I+3]=a[H+3];var Zc=Rc+1|0;if((Zc|0)<(Tc|0)){Rc=Zc,Vc=Vc+1|0}else{break}}a[ya]=Oc+Yc|0}var Jc,ad=a[a[a[Fa]+184>>2]>>2],cd=Qc,$c=cc,bd=cc,dd=cc,jd=cc,md=cc,ed=Ra>>2,ld=a[ed],pd=0==(oc|0);b:do{if(pd){var Uc=ad}else{for(var od=oc,qd=ad;;){var sd=od-1|0,td=a[a[a[qd+12>>2]+184>>2]>>2];if(0==(sd|0)){Uc=td;break b}else{od=sd,qd=td}}}}while(0);a[ed]=ld+1|0;md=((ld<<4)+cd|0)>>2;jd=((ld-1<<4)+cd|0)>>2;a[md]=a[jd];a[md+1]=a[jd+1];a[md+2]=a[jd+2];a[md+3]=a[jd+3];var vd=a[ed];a[ed]=vd+1|0;dd=((vd<<4)+cd|0)>>2;a[dd]=a[jd];a[dd+1]=a[jd+1];a[dd+2]=a[jd+2];a[dd+3]=a[jd+3];bd=((a[ed]<<4)+cd|0)>>2;$c=(a[Uc+16>>2]+32|0)>>2;a[bd]=a[$c];a[bd+1]=a[$c+1];a[bd+2]=a[$c+2];a[bd+3]=a[$c+3];Jc=Uc;fx(Sb,d);var kd=a[Jc+16>>2];O=kd>>2;var wd=a[Jc+12>>2];a[Fa]=wd;Sg(Ma,c,kd,a[a[O+44]>>2],Jc);a[ka]=a[W];a[ka+1]=a[W+1];a[ka+2]=a[W+2];a[ka+3]=a[W+3];a[ka+4]=a[W+4];a[ka+5]=a[W+5];a[ka+6]=a[W+6];a[ka+7]=a[W+7];vl(d,Jc,1,ma,nm(kd));var xd=kd+40|0;bi(va,(a[la]-1<<5)+ma+56|0,1,(b[0]=a[xd>>2],b[1]=a[xd+4>>2],f[0])-a[(a[a[O+5]+220>>2]+16>>2)+(11*a[O+59]|0)]&-1);if((b[0]=a[da],b[1]=a[da+1],f[0])<(b[0]=a[aa],b[1]=a[aa+1],f[0])){if((b[0]=a[xa],b[1]=a[xa+1],f[0])<(b[0]=a[fa],b[1]=a[fa+1],f[0])){var yd=a[la];a[la]=yd+1|0;G=((yd<<5)+ma+56|0)>>2;a[G]=a[ha];a[G+1]=a[ha+1];a[G+2]=a[ha+2];a[G+3]=a[ha+3];a[G+4]=a[ha+4];a[G+5]=a[ha+5];a[G+6]=a[ha+6];a[G+7]=a[ha+7]}}f[0]=-1.5707963267948966;a[Pb>>2]=b[0];a[Pb+4>>2]=b[1];m[Tb]=1;Wb=vc;Yb=oc;Vb=kd;Sb=Jc;$b=wd}if(2367==oa){h=Ga;return}var Bd=dc|1,Cd=(dc<<5)+Z|0;dx(Za,c,eb,a[fc+236>>2]);M=Cd>>2;E=Za>>2;a[M]=a[E];a[M+1]=a[E+1];a[M+2]=a[E+2];a[M+3]=a[E+3];a[M+4]=a[E+4];a[M+5]=a[E+5];a[M+6]=a[E+6];a[M+7]=a[E+7];Sg(Qa,c,Xb,lc,0);F=Qa>>2;a[V]=a[F];a[V+1]=a[F+1];a[V+2]=a[F+2];a[V+3]=a[F+3];a[V+4]=a[F+4];a[V+5]=a[F+5];a[V+6]=a[F+6];a[V+7]=a[F+7];a[ha]=a[F];a[ha+1]=a[F+1];a[ha+2]=a[F+2];a[ha+3]=a[F+3];a[ha+4]=a[F+4];a[ha+5]=a[F+5];a[ha+6]=a[F+6];a[ha+7]=a[F+7];var nd=0!=(lb|0),zd=lc+12|0;xl(d,nd?Ka:lc,1,pa,nm(a[zd>>2]));var Ed=a[Y]-1|0,Fd=(Ed<<5)+pa+80|0,Ld=(b[0]=a[Fd>>2],b[1]=a[Fd+4>>2],f[0]);f[0]=Ld;a[fa]=b[0];a[fa+1]=b[1];var Hd=(Ed<<5)+pa+64|0,Md=(b[0]=a[Hd>>2],b[1]=a[Hd+4>>2],f[0]);f[0]=Md;a[xa]=b[0];a[xa+1]=b[1];var Gd=a[Fa],Qd=Gd+40|0;bi(ab,va,4,(b[0]=a[Qd>>2],b[1]=a[Qd+4>>2],f[0])+a[(a[a[Gd+20>>2]+220>>2]+20>>2)+(11*a[Gd+236>>2]|0)]&-1);D=ab>>2;a[ha]=a[D];a[ha+1]=a[D+1];a[ha+2]=a[D+2];a[ha+3]=a[D+3];a[ha+4]=a[D+4];a[ha+5]=a[D+5];a[ha+6]=a[D+6];a[ha+7]=a[D+7];if((b[0]=a[da],b[1]=a[da+1],f[0])<(b[0]=a[aa],b[1]=a[aa+1],f[0])){if((b[0]=a[xa],b[1]=a[xa+1],f[0])<(b[0]=a[fa],b[1]=a[fa+1],f[0])){var Kd=a[Y];a[Y]=Kd+1|0;y=((Kd<<5)+pa+56|0)>>2;a[y]=a[ha];a[y+1]=a[ha+1];a[y+2]=a[ha+2];a[y+3]=a[ha+3];a[y+4]=a[ha+4];a[y+5]=a[ha+5];a[y+6]=a[ha+6];a[y+7]=a[ha+7]}}ex(d,Sb,lc,ma,pa,Bd);var Dd=Ja?ff(d,Ha,0):ff(d,Ha,1),Pd=a[na];if(Ob&4<(Pd|0)){C=(Dd+16|0)>>2;B=Dd>>2;a[C]=a[B];a[C+1]=a[B+1];a[C+2]=a[B+2];a[C+3]=a[B+3];A=(Dd+32|0)>>2;var Yd=(Pd-1<<4)+Dd|0;w=Yd>>2;a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];ck(Dd+48|0,Yd);var Id=a[na]=4}else{if(0!=(Pd|0)){Id=Pd}else{h=Ga;return}}var Ad=a[ya],Ud=Ad+Id|0;if((Ud|0)>(a[ai>>2]|0)){a[ai>>2]=Ud<<1;var Vd=wb(a[le>>2],Ud<<5);a[le>>2]=Vd}if(0<(Id|0)){for(var be=a[le>>2],de=1<(Id|0)?Id:1,gd=0,ud=Ad;;){u=((ud<<4)+be|0)>>2;t=((gd<<4)+Dd|0)>>2;a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];var $d=gd+1|0;if(($d|0)<(Id|0)){gd=$d,ud=ud+1|0}else{break}}a[ya]=Ad+de|0}fx(Sb,d);a[Fa]=nd?a[wa+3]:a[zd>>2]}if(1==(e|0)){Wd(Ta,a[Fa],a[le>>2],a[ya],ke)}else{var ae=c+12|0,Nd=a[ya],ce=Nd-1|0,he=1<(ce|0);a:do{if(he){for(var qe=(a[ae>>2]*(e-1)|0)/2&-1|0,se=a[le>>2],ge=1;;){v=((ge<<4)+se|0)>>2;var Ae=(b[0]=a[v],b[1]=a[v+1],f[0])-qe;f[0]=Ae;a[v]=b[0];a[v+1]=b[1];var xe=ge+1|0;if((xe|0)<(ce|0)){ge=xe}else{break a}}}}while(0);var re=a[ai>>2];if((re|0)>(a[mq>>2]|0)){a[mq>>2]=re;var Ce=wb(a[Dj>>2],re<<4),ue=a[Dj>>2]=Ce}else{ue=a[Dj>>2]}var ze=0<(Nd|0);a:do{if(ze){for(var De=a[le>>2],me=0;;){s=((me<<4)+ue|0)>>2;p=((me<<4)+De|0)>>2;a[s]=a[p];a[s+1]=a[p+1];a[s+2]=a[p+2];a[s+3]=a[p+3];var Be=me+1|0;if((Be|0)<(Nd|0)){me=Be}else{break a}}}}while(0);Wd(Ta,a[Fa],ue,Nd,ke);if(1<(e|0)){for(var Ee=za|0,Ge=za+16|0,He=za+12|0,Ie=za+28|0,te=za+68|0,Ke=za+124|0,Le=za+128|0,Me=1;;){var ye=a[i+(Me+g<<2)>>2];z=ye>>2;if(0==(a[z+43]&32|0)){var Oe=ye}else{ua=(ye|0)>>2;Oa=Ee>>2;for(Wa=ua+46;ua>2]=a[z+3];a[He>>2]=a[z+4];ua=(ye+68|0)>>2;Oa=Ie>>2;for(Wa=ua+10;ua>2;Oa=te>>2;for(Wa=ua+10;ua>2]=ye;Oe=za}a:do{if(he){for(var Ve=a[le>>2],Pe=1;;){n=((Pe<<4)+Ve|0)>>2;var We=(a[ae>>2]|0)+(b[0]=a[n],b[1]=a[n+1],f[0]);f[0]=We;a[n]=b[0];a[n+1]=b[1];var Re=Pe+1|0;if((Re|0)==(ce|0)){break a}else{Pe=Re}}}}while(0);var Se=a[Dj>>2];a:do{if(ze){for(var Ze=a[le>>2],Ne=0;;){k=((Ne<<4)+Se|0)>>2;l=((Ne<<4)+Ze|0)>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];var Te=Ne+1|0;if((Te|0)==(Nd|0)){break a}else{Ne=Te}}}}while(0);Wd(Oe,a[Oe+12>>2],Se,Nd,ke);var Ue=Me+1|0;if((Ue|0)==(e|0)){break}else{Me=Ue}}}}h=Ga}function nm(b){return(1==m[b+162|0]<<24>>24?1<(a[b+180>>2]|0)?1:1<(a[b+188>>2]|0):0)&1}function dx(c,d,i,g){var e,h,l,k,j;h=a[d+16>>2];j=((g<<5)+h|0)>>2;var m=(b[0]=a[j],b[1]=a[j+1],f[0]);k=((g<<5)+h+8|0)>>2;var p=(b[0]=a[k],b[1]=a[k+1],f[0]);l=((g<<5)+h+16|0)>>2;var s=(b[0]=a[l],b[1]=a[l+1],f[0]);h=((g<<5)+h+24|0)>>2;e=(b[0]=a[h],b[1]=a[h+1],f[0]);m==s?(e=a[i+220>>2]>>2,i=a[a[e+(11*g|0)+1]>>2],p=g+1|0,s=a[d>>2]|0,m=a[a[e+(11*p|0)+1]>>2]+40|0,p=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0])+(a[e+(11*p|0)+5]|0),d=a[d+4>>2]|0,i=i+40|0,g=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])-(a[e+(11*g|0)+4]|0),f[0]=s,a[j]=b[0],a[j+1]=b[1],f[0]=p,a[k]=b[0],a[k+1]=b[1],f[0]=d,a[l]=b[0],a[l+1]=b[1],f[0]=g,a[h]=b[0],a[h+1]=b[1],l=s,k=p,j=d):(l=m,k=p,j=s,g=e);h=c|0;f[0]=l;a[h>>2]=b[0];a[h+4>>2]=b[1];l=c+8|0;f[0]=k;a[l>>2]=b[0];a[l+4>>2]=b[1];l=c+16|0;f[0]=j;a[l>>2]=b[0];a[l+4>>2]=b[1];c=c+24|0;f[0]=g;a[c>>2]=b[0];a[c+4>>2]=b[1]}function nO(c,d,i){var g,e,j,l,k,n,z,p,s,v,t,u,w,A=h;h+=64;var B,C=A+16,y=A+32,D=A+48,F=0==m[c+124|0]<<24>>24;a:do{if(F){var E=c;w=E>>2}else{for(var G=c;;){var H=a[G+128>>2];if(0==m[H+124|0]<<24>>24){E=H;w=E>>2;break a}else{G=H}}}}while(0);var O=a[w+3];u=O>>2;var I=a[w+4],J=a[u+59]-a[I+236>>2]|0,K=-1<(J|0)?J:-J|0;if(2==(K|0)){B=2413}else{if(1==(K|0)){var L=0;h=A;return L}}if(2413==B&&0!=(m[a[u+5]+149|0]&1)<<24>>24){return L=0,h=A,L}if((a[c+16>>2]|0)==(I|0)){a[i>>2]=O;var N=I+32|0,Q=(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]),S=I+40|0,R=(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]),U=E+28|0,W=E+36|0;qf(A,Q,R,(b[0]=a[U>>2],b[1]=a[U+4>>2],f[0]),(b[0]=a[W>>2],b[1]=a[W+4>>2],f[0]));var V=A|0,ca=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]),Y=A+8|0,Z=(b[0]=a[Y>>2],b[1]=a[Y+4>>2],f[0]),$=O+32|0,ja=(b[0]=a[$>>2],b[1]=a[$+4>>2],f[0]),aa=O+40|0,da=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),ea=E+68|0,ba=E+76|0;qf(C,ja,da,(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0]),(b[0]=a[ba>>2],b[1]=a[ba+4>>2],f[0]));var fa=C|0,la=C+8|0,ha=ca,ga=Z,ka=(b[0]=a[fa>>2],b[1]=a[fa+4>>2],f[0]),sa=(b[0]=a[la>>2],b[1]=a[la+4>>2],f[0])}else{a[i>>2]=I;var ra=O+32|0,na=(b[0]=a[ra>>2],b[1]=a[ra+4>>2],f[0]),ya=O+40|0,qa=(b[0]=a[ya>>2],b[1]=a[ya+4>>2],f[0]),wa=E+68|0,oa=E+76|0;qf(y,na,qa,(b[0]=a[wa>>2],b[1]=a[wa+4>>2],f[0]),(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0]));var Fa=y|0,Ga=(b[0]=a[Fa>>2],b[1]=a[Fa+4>>2],f[0]),va=y+8|0,ta=(b[0]=a[va>>2],b[1]=a[va+4>>2],f[0]),Ka=I+32|0,za=(b[0]=a[Ka>>2],b[1]=a[Ka+4>>2],f[0]),ma=I+40|0,pa=(b[0]=a[ma>>2],b[1]=a[ma+4>>2],f[0]),Ba=E+28|0,Ha=E+36|0;qf(D,za,pa,(b[0]=a[Ba>>2],b[1]=a[Ba+4>>2],f[0]),(b[0]=a[Ha>>2],b[1]=a[Ha+4>>2],f[0]));var Ra=D|0,Aa=D+8|0,ha=Ga,ga=ta,ka=(b[0]=a[Ra>>2],b[1]=a[Ra+4>>2],f[0]),sa=(b[0]=a[Aa>>2],b[1]=a[Aa+4>>2],f[0])}var Ea=a[w+27];if(0==(Ea|0)){var La=d+16|0,Ma=d|0;f[0]=ha;a[Ma>>2]=b[0];a[Ma+4>>2]=b[1];var Ya=d+8|0;f[0]=ga;a[Ya>>2]=b[0];a[Ya+4>>2]=b[1];t=La>>2;v=d>>2;a[t]=a[v];a[t+1]=a[v+1];a[t+2]=a[v+2];a[t+3]=a[v+3];var Qa=d+48|0,Za=d+32|0,Pa=Za|0;f[0]=ka;a[Pa>>2]=b[0];a[Pa+4>>2]=b[1];var ab=d+40|0;f[0]=sa;a[ab>>2]=b[0];a[ab+4>>2]=b[1];s=Qa>>2;p=Za>>2;a[s]=a[p];a[s+1]=a[p+1];a[s+2]=a[p+2];a[s+3]=a[p+3];L=4;h=A;return L}var $a=Ea+24|0,jb=(b[0]=a[$a>>2],b[1]=a[$a+4>>2],f[0]),Ca=Ea+32|0,Ia=(b[0]=a[Ca>>2],b[1]=a[Ca+4>>2],f[0]),eb=0==(a[a[u+5]+152>>2]&1|0),ub=eb?Ia:jb,Sa=Ea+56|0,Va=(b[0]=a[Sa>>2],b[1]=a[Sa+4>>2],f[0]),ua=Ea+64|0,Oa=(b[0]=a[ua>>2],b[1]=a[ua+4>>2],f[0]),Wa=.5*(eb?jb:Ia);if(0==(0<((sa-ga)*(Va-ha)-(Oa-ga)*(ka-ha)&-1|0)&1|0)){var pb=Va-Wa,ob=Oa+.5*ub}else{pb=Va+Wa,ob=Oa-.5*ub}var bb=d+16|0,qb=d|0;f[0]=ha;a[qb>>2]=b[0];a[qb+4>>2]=b[1];var db=d+8|0;f[0]=ga;a[db>>2]=b[0];a[db+4>>2]=b[1];z=bb>>2;n=d>>2;a[z]=a[n];a[z+1]=a[n+1];a[z+2]=a[n+2];a[z+3]=a[n+3];var kb=d+32|0,hb=d+48|0,vb=d+64|0,xb=vb|0;f[0]=pb;a[xb>>2]=b[0];a[xb+4>>2]=b[1];var ib=d+72|0;f[0]=ob;a[ib>>2]=b[0];a[ib+4>>2]=b[1];k=hb>>2;l=vb>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];j=kb>>2;a[j]=a[l];a[j+1]=a[l+1];a[j+2]=a[l+2];a[j+3]=a[l+3];var nb=d+80|0,rb=d+96|0,lb=rb|0;f[0]=ka;a[lb>>2]=b[0];a[lb+4>>2]=b[1];var Ta=d+104|0;f[0]=sa;a[Ta>>2]=b[0];a[Ta+4>>2]=b[1];e=nb>>2;g=rb>>2;a[e]=a[g];a[e+1]=a[g+1];a[e+2]=a[g+2];a[e+3]=a[g+3];L=7;h=A;return L}function Sg(c,d,i,g,e){var h,l=i>>2,k=d>>2,j;h=a[l+5]>>2;var d=i+32|0,z=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),d=i+104|0,p=z-(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])-4,d=a[l+59],s=a[l+60],v=a[h+55],t=oO(v,d,s,g,e,-1);if(0==(t|0)){var t=0<=p,u=a[k],p=((t?p+.5:p-.5)&-1|0)<(u|0)?t?p+.5&-1:p-.5&-1:u}else{u=gx(i,t),0==(u|0)?(u=t+32|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])+(a[t+244>>2]|0),t=0==m[t+162|0]<<24>>24?u+.5*(a[h+64]|0):u+(a[k+2]|0)):(t=u+68|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])+(a[k+2]|0)),p=tp?p-.5:p+.5)&-1}p|=0;if(t=1==m[i+162|0]<<24>>24){if(0==(a[l+30]|0)){j=2448}else{var w=z+10}}else{j=2448}2448==j&&(w=i+112|0,w=z+(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])+4);g=oO(v,d,s,g,e,1);0==(g|0)?(h=0<=w,k=a[k+1],w=((h?w+.5:w-.5)&-1|0)>(k|0)?h?w+.5&-1:w-.5&-1:k):(e=gx(i,g),0==(e|0)?(e=g+32|0,j=g+104|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])-(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),k=0==m[g+162|0]<<24>>24?e-.5*(a[h+64]|0):e-(a[k+2]|0)):(h=e+52|0,k=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])-(a[k+2]|0)),w=k>w?k:w,w=(0>w?w-.5:w+.5)&-1);w|=0;t?0==(a[l+30]|0)?l=w:(l=i+112|0,l=w-(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])):l=w;i=i+40|0;w=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);i=w-(a[(v+16>>2)+(11*d|0)]|0);d=w+(a[(v+20>>2)+(11*d|0)]|0);v=c|0;f[0]=p;a[v>>2]=b[0];a[v+4>>2]=b[1];v=c+8|0;f[0]=i;a[v>>2]=b[0];a[v+4>>2]=b[1];i=c+16|0;f[0]=l;a[i>>2]=b[0];a[i+4>>2]=b[1];c=c+24|0;f[0]=d;a[c>>2]=b[0];a[c+4>>2]=b[1]}function bi(c,d,i,g){var e,j=h;h+=64;e=d>>2;d=h;h+=32;a[d>>2]=a[e];a[d+4>>2]=a[e+1];a[d+8>>2]=a[e+2];a[d+12>>2]=a[e+3];a[d+16>>2]=a[e+4];a[d+20>>2]=a[e+5];a[d+24>>2]=a[e+6];a[d+28>>2]=a[e+7];e=j+32;if(1==(i|0)){e=d|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);var l=d+16|0,d=d+8|0;pO(j,e,g|0,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]));g=j|0;l=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=j+8|0;d=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);e=j+16|0;var g=j+24|0,k=d,n=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),m=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])}else{4==(i|0)&&(l=d|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=d+24|0,d=d+16|0,pO(e,l,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),g|0),g=e|0,l=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),g=e+8|0,d=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),g=e+16|0,e=e+24|0,k=d,n=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),m=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))}g=c|0;f[0]=l;a[g>>2]=b[0];a[g+4>>2]=b[1];g=c+8|0;f[0]=k;a[g>>2]=b[0];a[g+4>>2]=b[1];g=c+16|0;f[0]=n;a[g>>2]=b[0];a[g+4>>2]=b[1];c=c+24|0;f[0]=m;a[c>>2]=b[0];a[c+4>>2]=b[1];h=j}function ex(b,c,d,g,f,e){var h=hx(c,-1),c=hx(c,1);0!=(h|0)&&yl(h);0!=(c|0)&&yl(c);h=ix(d,-1);d=ix(d,1);0!=(h|0)&&yl(h);0!=(d|0)&&yl(d);d=g+52|0;h=0<(a[d>>2]|0);a:do{if(h){for(c=0;;){if(bd(b,(c<<5)+g+56|0),c=c+1|0,(c|0)>=(a[d>>2]|0)){break a}}}}while(0);g=a[b+80>>2]+1|0;d=e-3+g|0;h=0<(e|0);a:do{if(h){for(c=0;;){if(bd(b,(c<<5)+Z|0),c=c+1|0,(c|0)==(e|0)){break a}}}}while(0);e=a[f+52>>2];if(0<(e|0)){for(;!(e=e-1|0,bd(b,(e<<5)+f+56|0),0>=(e|0));){}}qO(b,g,d)}function rO(c,d,i,g){var e=c+32|0;f[0]=i|0;a[e>>2]=b[0];a[e+4>>2]=b[1];e=c+104|0;f[0]=i-d|0;a[e>>2]=b[0];a[e+4>>2]=b[1];c=c+112|0;f[0]=g-i|0;a[c>>2]=b[0];a[c+4>>2]=b[1]}function hx(b,c){var d,g=a[a[b+16>>2]+184>>2],f=a[g>>2];if(0==(f|0)){var e;return 0}var h=a[a[b+12>>2]+240>>2],k=0,j=0,m=f;for(d=m>>2;;){var p=a[a[d+3]+240>>2];do{if(1>((p-h)*c|0)){f=k}else{if(0==(a[d+6]|0)){f=a[d+32];if(0==(f|0)){f=k;break}if(0==(a[f+24>>2]|0)){f=k;break}}f=0!=(k|0)&&0>=((a[a[k+12>>2]+240>>2]-p)*c|0)?k:m}}while(0);j=j+1|0;d=a[g+(j<<2)>>2];if(0==(d|0)){e=f;break}else{k=f,m=d,d=m>>2}}return e}function ix(b,c){var d,g=a[a[b+12>>2]+176>>2],f=a[g>>2];if(0==(f|0)){var e;return 0}var h=a[a[b+16>>2]+240>>2],k=0,j=0,m=f;for(d=m>>2;;){var p=a[a[d+4]+240>>2];do{if(1>((p-h)*c|0)){f=k}else{if(0==(a[d+6]|0)){f=a[d+32];if(0==(f|0)){f=k;break}if(0==(a[f+24>>2]|0)){f=k;break}}f=0!=(k|0)&&0>=((a[a[k+16>>2]+240>>2]-p)*c|0)?k:m}}while(0);j=j+1|0;d=a[g+(j<<2)>>2];if(0==(d|0)){e=f;break}else{k=f,m=d,d=m>>2}}return e}function qO(c,d,i){var g,e,h,l,k,j,m=d-1|0,p=i+1|0,s=(m|0)<(p|0);a:do{if(s){g=c+84|0;for(e=m;;){l=a[g>>2];k=((e<<5)+l|0)>>2;h=(b[0]=a[k],b[1]=a[k+1],f[0]);if(0==(e-d&1|0)){l=((e<<5)+l+16|0)>>2;var v=(b[0]=a[l],b[1]=a[l+1],f[0]);h>2,v=(b[0]=a[l],b[1]=a[l+1],f[0]),h+16>v&&(h=.5*(h+v)&-1,f[0]=h-8|0,a[k]=b[0],a[k+1]=b[1],f[0]=h+8|0,a[l]=b[0],a[l+1]=b[1])}k=e+1|0;if((k|0)==(p|0)){break a}else{e=k}}}}while(0);m=c+80|0;if(0<(a[m>>2]-1|0)){c=c+84|0;for(g=0;;){k=a[c>>2];e=(g<<5)+k|0;p=g+1|0;s=(p<<5)+k|0;if((g|0)<(d|0)|(g|0)>(i|0)){j=2538}else{if(0!=(g-d&1|0)){j=2538}else{h=e|0;l=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])+16;h=((p<<5)+k+16|0)>>2;if(l>(b[0]=a[h],b[1]=a[h+1],f[0])){f[0]=l,a[h]=b[0],a[h+1]=b[1]}h=(g<<5)+k+16|0;l=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])-16;h=(s|0)>>2;if(l<(b[0]=a[h],b[1]=a[h+1],f[0])){f[0]=l,a[h]=b[0],a[h+1]=b[1]}}}2538==j&&(j=0,(p|0)>=(d|0)&(g|0)<(i|0)&&0==(p-d&1|0)&&(e=(e|0)>>2,h=(b[0]=a[e],b[1]=a[e+1],f[0])+16,l=(p<<5)+k+16|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),h>l&&(f[0]=l-16,a[e]=b[0],a[e+1]=b[1]),g=((g<<5)+k+16|0)>>2,k=(b[0]=a[g],b[1]=a[g+1],f[0])-16,s|=0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),k>2]-1|0)){g=p}else{break}}}}function pO(c,d,i,g,e){var h=c|0;f[0]=d;a[h>>2]=b[0];a[h+4>>2]=b[1];d=c+8|0;f[0]=i;a[d>>2]=b[0];a[d+4>>2]=b[1];i=c+16|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];c=c+24|0;f[0]=e;a[c>>2]=b[0];a[c+4>>2]=b[1]}function sO(c,d){var i=c+52|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),g=d+32|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);if(i>g){return 0}i=c+68|0;if(g>(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])){return 0}i=c+60|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);g=d+40|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);if(i>g){return 0}i=c+76|0;i=g<=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);return i&1}function tO(b,c,d,g){var f,b=b>>2,e,c=(a[b+60]|0)>(c|0);if(1!=(a[b+47]|0)){var h;return 0}var k=0==(g|0);a:do{if(!k){k=0;f=g;for(g=a[a[b+46]>>2];;){if(2<=(k|0)){break a}var j=a[g+12>>2],g=j>>2,z=a[f+12>>2];f=z>>2;if((j|0)==(z|0)){break a}if(c^(a[g+60]|0)>(a[f+60]|0)){h=1;break}if(1!=(a[g+47]|0)){break a}if(0==m[j+162|0]<<24>>24){break a}if(1!=(a[f+47]|0)){break a}if(0==m[z+162|0]<<24>>24){break a}k=k+1|0;f=a[a[f+46]>>2];g=a[a[g+46]>>2]}return h}}while(0);if(1!=(a[b+45]|0)|0==(d|0)){return 0}k=0;g=d;for(d=a[a[b+44]>>2];;){if(2<=(k|0)){h=0;e=2589;break}b=a[d+16>>2];d=b>>2;j=a[g+16>>2];g=j>>2;if((b|0)==(j|0)){h=0;e=2582;break}if(c^(a[d+60]|0)>(a[g+60]|0)){h=1;e=2584;break}if(1!=(a[d+45]|0)){h=0;e=2585;break}if(0==m[b+162|0]<<24>>24){h=0;e=2583;break}if(1!=(a[g+45]|0)){h=0;e=2586;break}if(0==m[j+162|0]<<24>>24){h=0;e=2588;break}k=k+1|0;g=a[a[g+44]>>2];d=a[a[d+44]>>2]}if(2583==e||2584==e||2582==e||2589==e||2585==e||2586==e||2588==e){return h}}function qf(c,d,i,g,e){var h=c|0;f[0]=d+g;a[h>>2]=b[0];a[h+4>>2]=b[1];c=c+8|0;f[0]=i+e;a[c>>2]=b[0];a[c+4>>2]=b[1]}function fx(c,d){var i=d+84|0,g=d+80|0,e=c,h=0;a:for(;;){e=a[e+12>>2];if(1!=m[e+162|0]<<24>>24){break}if(0!=J[a[ke+4>>2]](e)<<24>>24){break}for(var l=a[g>>2],k=e+40|0;;){if((h|0)>=(l|0)){break a}var j=a[i>>2],z=(h<<5)+j+8|0,p=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),z=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);if(p>z){h=h+1|0}else{break}}l=(h<<5)+j+24|0;if((b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])>=z){var l=0==(a[e+120>>2]|0),k=(h<<5)+j|0,p=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=p&-1,s=(h<<5)+j+16|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);l?rO(e,k,.5*(p+s)&-1,s&-1):(l=e+112|0,rO(e,k,s&-1,s+(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])&-1))}e=a[a[e+184>>2]>>2]}}function oO(b,c,d,g,f,e){for(var h,k=b+44*c|0,b=b+44*c+4|0,c=d;;){c=c+e|0;if(-1>=(c|0)){var j=0;h=2613;break}if((c|0)>=(a[k>>2]|0)){j=0;h=2617;break}var z=a[a[b>>2]+(c<<2)>>2],p=m[z+162|0];if(1==p<<24>>24){if(0!=(a[z+120>>2]|0)){j=z;h=2614;break}}else{if(0==p<<24>>24){j=z;h=2615;break}}if(0==tO(z,d,g,f)<<24>>24){j=z;h=2616;break}}if(2615==h||2617==h||2616==h||2614==h||2613==h){return j}}function gx(b,c){if(0==m[b+162|0]<<24>>24){var d=a[b+216>>2],g=d}else{d=a[a[a[b+184>>2]>>2]+128>>2],g=a[a[d+12>>2]+216>>2],d=a[a[d+16>>2]+216>>2]}if(0==m[c+162|0]<<24>>24){var f=a[c+216>>2];return 0==(f|0)|(f|0)==(d|0)|(f|0)==(g|0)?0:f}var f=a[a[a[c+184>>2]>>2]+128>>2],e=a[a[f+16>>2]+216>>2];if(!(0==(e|0)|(e|0)==(d|0)|(e|0)==(g|0))&&0!=(sO(e,c)|0)){return e}f=a[a[f+12>>2]+216>>2];return 0==(f|0)|(f|0)==(d|0)|(f|0)==(g|0)?0:0==(sO(f,c)|0)?0:f}function kO(c,d,i,g,e,j){var l,k,n,z,p,s,v,t,u,w,A,B,C,y,D,F,E,G,I,O,H,J,K,L,N,S,Q=h;h+=176;var R,U=Q+16,W=Q+32,V=Q+96,ca=Q+112,Y=Q+128,Z=Q+144,$=Q+160,ja=a[e+20>>2];do{if(0<(i|0)){for(var aa=0,da=0,ea=0;;){var ba=a[c+(ea+d<<2)>>2],fa=(0!=(a[ba+108>>2]|0)&1)+aa|0;if(0==m[ba+56|0]<<24>>24){if(0==m[ba+96|0]<<24>>24){var ka=da}else{R=2633}}else{R=2633}2633==R&&(R=0,ka=1);var ha=ea+1|0;if((ha|0)==(i|0)){break}else{aa=fa,da=ka,ea=ha}}if(0==(ka|0)){if(0==(fa|0)){break}uO(e,g,c,d,i,j,fa);h=Q;return}var ga=vO(ja),la=oo(ga,wO|0);yd(la|0,nq|0,jx|0);var sa=g+32|0,ra=(b[0]=a[sa>>2],b[1]=a[sa+4>>2],f[0])&-1,na=e+32|0,ya=(b[0]=a[na>>2],b[1]=a[na+4>>2],f[0])&-1;S=(ja+152|0)>>2;for(var qa=0==(a[S]&1|0),wa=qa?g:e,oa=qa?e:g,Fa=xO(la,oa),Ga=xO(ga,wa),va=0,ta=0;;){for(var Ka=(va+d<<2)+c|0;;){var za=a[Ka>>2];if(0==m[za+124|0]<<24>>24){break}else{Ka=za+128|0}}var ma;if((a[za+16>>2]|0)==(oa|0)){var pa=za,Ba=uh(ga,Fa,Ga);po(pa|0,Ba|0);ma=Ba}else{var Ha=za,Ra=uh(ga,Ga,Fa);po(Ha|0,Ra|0);ma=Ra}var Ea=ma;a[za+132>>2]=Ea|0;if(0==(ta|0)){if(0!=m[za+56|0]<<24>>24){var Aa=0}else{0!=m[za+96|0]<<24>>24?Aa=0:(a[Ea+132>>2]=za|0,Aa=Ea)}}else{Aa=ta}var La=va+1|0;if((La|0)==(i|0)){break}else{va=La,ta=Aa}}var Ma=0==(Aa|0)?uh(ga,Fa,Ga):Aa;qc(Ma|0,a[a[Kg>>2]+8>>2],yO|0);a[ga+172>>2]=a[ja+172>>2];var Ya=ga;JF(Ya,j);XN(ga);kx(ga,0);lx(Ya,0);zO(Ya,0);N=(oa+32|0)>>2;var Qa=Fa+32|0;L=Qa>>2;K=(Ga+32|0)>>2;var Za=a[ga+216>>2],Pa=0==(Za|0);a:do{if(!Pa){for(var ab=.5*((b[0]=a[K],b[1]=a[K+1],f[0])+(b[0]=a[L],b[1]=a[L+1],f[0]))&-1,$a=oa+112|0,jb=wa+32|0,Ca=(b[0]=a[$a>>2],b[1]=a[$a+4>>2],f[0]),Ia=(b[0]=a[N],b[1]=a[N+1],f[0]),eb=wa+104|0,ub=ra|0,Sa=ab|0,Va=ya|0,ua=.5*((b[0]=a[jb>>2],b[1]=a[jb+4>>2],f[0])+(Ia-Ca)+(b[0]=a[eb>>2],b[1]=a[eb+4>>2],f[0]))&-1|0,Oa=Fa+40|0,Wa=Ga+40|0,pb=Za;;){if((pb|0)==(Fa|0)){f[0]=ub,a[Oa>>2]=b[0],a[Oa+4>>2]=b[1],f[0]=Sa,a[L]=b[0],a[L+1]=b[1]}else{if((pb|0)==(Ga|0)){f[0]=Va,a[Wa>>2]=b[0],a[Wa+4>>2]=b[1],f[0]=Sa,a[K]=b[0],a[K+1]=b[1]}else{var ob=pb+40|0;f[0]=ua;a[ob>>2]=b[0];a[ob+4>>2]=b[1]}}var bb=a[pb+168>>2];if(0==(bb|0)){break a}else{pb=bb}}}}while(0);mx(ga);bx(ga,0);Bt(Ya,1);var qb=0==(a[S]&1|0),db=(b[0]=a[N],b[1]=a[N+1],f[0]);if(qb){var kb=oa+40|0,ib=Fa+40|0,vb=Qa,xb=(b[0]=a[kb>>2],b[1]=a[kb+4>>2],f[0])-(b[0]=a[ib>>2],b[1]=a[ib+4>>2],f[0])}else{var hb=oa+40|0,vb=Fa+40|0,xb=(b[0]=a[hb>>2],b[1]=a[hb+4>>2],f[0])+(b[0]=a[L],b[1]=a[L+1],f[0])}var nb=db-(b[0]=a[vb>>2],b[1]=a[vb+4>>2],f[0]);J=Q>>2;H=U>>2;O=V>>2;I=W>>2;var rb=W|0;G=ca>>2;E=(W+16|0)>>2;F=Y>>2;D=(W+32|0)>>2;y=(W+48|0)>>2;C=Z>>2;var lb=ja+52|0;B=$>>2;for(var Ta=ja,cb=0;;){for(var fb=(cb+d<<2)+c|0;;){var Ua=a[fb>>2];if(0==m[Ua+124|0]<<24>>24){break}else{fb=Ua+128|0}}var sb=a[Ua+132>>2];A=sb>>2;do{if(!((sb|0)==(Ma|0)&0==(a[A+33]|0))){var Na=a[a[A+6]>>2];w=(Na+4|0)>>2;var Fb=Au(Ua,a[w]);a[Fb+8>>2]=a[Na+8>>2];var Db=a[S]&1,wb=Na+16|0,Eb=Na+24|0;ci(Q,(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0]),(b[0]=a[Eb>>2],b[1]=a[Eb+4>>2],f[0]),nb,xb,Db);u=(Fb+16|0)>>2;a[u]=a[J];a[u+1]=a[J+1];a[u+2]=a[J+2];a[u+3]=a[J+3];a[Fb+12>>2]=a[Na+12>>2];var Cb=a[S]&1,Bb=Na+32|0,Ja=Na+40|0;ci(U,(b[0]=a[Bb>>2],b[1]=a[Bb+4>>2],f[0]),(b[0]=a[Ja>>2],b[1]=a[Ja+4>>2],f[0]),nb,xb,Cb);t=(Fb+32|0)>>2;a[t]=a[H];a[t+1]=a[H+1];a[t+2]=a[H+2];a[t+3]=a[H+3];v=(Fb|0)>>2;s=(Na|0)>>2;for(var mb=0;(mb|0)<(a[w]|0);){var yb=(mb<<4)+a[v]|0,Gb=a[s],Hb=a[S]&1,Jb=(mb<<4)+Gb|0,Kb=(mb<<4)+Gb+8|0;ci(V,(b[0]=a[Jb>>2],b[1]=a[Jb+4>>2],f[0]),(b[0]=a[Kb>>2],b[1]=a[Kb+4>>2],f[0]),nb,xb,Hb);p=yb>>2;a[p]=a[O];a[p+1]=a[O+1];a[p+2]=a[O+2];a[p+3]=a[O+3];a[I]=a[O];a[I+1]=a[O+1];a[I+2]=a[O+2];a[I+3]=a[O+3];var Ib=mb+1|0;if((Ib|0)>=(a[w]|0)){break}var Mb=(Ib<<4)+a[v]|0,Lb=a[s],Nb=a[S]&1,Pb=(Ib<<4)+Lb|0,Tb=(Ib<<4)+Lb+8|0;ci(ca,(b[0]=a[Pb>>2],b[1]=a[Pb+4>>2],f[0]),(b[0]=a[Tb>>2],b[1]=a[Tb+4>>2],f[0]),nb,xb,Nb);z=Mb>>2;a[z]=a[G];a[z+1]=a[G+1];a[z+2]=a[G+2];a[z+3]=a[G+3];a[E]=a[G];a[E+1]=a[G+1];a[E+2]=a[G+2];a[E+3]=a[G+3];var Sb=mb+2|0,Wb=(Sb<<4)+a[v]|0,Vb=a[s],Yb=a[S]&1,Xb=(Sb<<4)+Vb|0,$b=(Sb<<4)+Vb+8|0;ci(Y,(b[0]=a[Xb>>2],b[1]=a[Xb+4>>2],f[0]),(b[0]=a[$b>>2],b[1]=a[$b+4>>2],f[0]),nb,xb,Yb);n=Wb>>2;a[n]=a[F];a[n+1]=a[F+1];a[n+2]=a[F+2];a[n+3]=a[F+3];a[D]=a[F];a[D+1]=a[F+1];a[D+2]=a[F+2];a[D+3]=a[F+3];var Zb=mb+3|0,ac=a[s],dc=a[S]&1,bc=(Zb<<4)+ac|0,ec=(Zb<<4)+ac+8|0;ci(Z,(b[0]=a[bc>>2],b[1]=a[bc+4>>2],f[0]),(b[0]=a[ec>>2],b[1]=a[ec+4>>2],f[0]),nb,xb,dc);a[y]=a[C];a[y+1]=a[C+1];a[y+2]=a[C+2];a[y+3]=a[C+3];xk(lb,rb);mb=Zb}k=(Ua+108|0)>>2;var fc=a[k];if(0!=(fc|0)){var gc=a[A+27],jc=a[S]&1,kc=gc+56|0,mc=gc+64|0;ci($,(b[0]=a[kc>>2],b[1]=a[kc+4>>2],f[0]),(b[0]=a[mc>>2],b[1]=a[mc+4>>2],f[0]),nb,xb,jc);l=(fc+56|0)>>2;a[l]=a[B];a[l+1]=a[B+1];a[l+2]=a[B+2];a[l+3]=a[B+3];m[a[k]+81|0]=1;al(Ta,a[k])}}}while(0);var nc=cb+1|0;if((nc|0)==(i|0)){break}else{cb=nc}}var Qb=ga;a[dj>>2]=a[nx>>2];a[di>>2]=a[ox>>2];a[Ej>>2]=a[px>>2];a[Kg>>2]=a[qx>>2];a[Hh>>2]=a[rx>>2];a[Gh>>2]=a[sx>>2];a[Ah>>2]=a[tx>>2];ax(Qb);Sf(Qb);h=Q;return}}while(0);cx(e,g,c,d,i,j);h=Q}function lO(c,d,i,g){var e,j,l,k,n,z,p,s,v,t,u=h;h+=1540;for(var w=u+696,A=u+1392,B=u+1396,C=u+1508,y=u+1524,D=a[i+16>>2],F=i+12|0,E=a[F>>2],G=a[D+20>>2],I=a[i+180>>2];;){var O=a[I+180>>2];if(0==(O|0)){break}else{I=O}}var H=a[I+16>>2];t=(i+108|0)>>2;var J=H+32|0;v=(a[t]+56|0)>>2;s=J>>2;a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];m[a[t]+81|0]=1;do{if(2==(g|0)){var K=D+32|0,L=(b[0]=a[K>>2],b[1]=a[K+4>>2],f[0]),N=D+40|0,Q=(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]),S=i+28|0,R=i+36|0;qf(C,L,Q,(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]),(b[0]=a[R>>2],b[1]=a[R+4>>2],f[0]));var U=C|0,W=(b[0]=a[U>>2],b[1]=a[U+4>>2],f[0]),V=C+8|0,ca=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]),Y=E+32|0,$=(b[0]=a[Y>>2],b[1]=a[Y+4>>2],f[0]),ba=E+40|0,ja=(b[0]=a[ba>>2],b[1]=a[ba+4>>2],f[0]),aa=i+68|0,da=i+76|0;qf(y,$,ja,(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),(b[0]=a[da>>2],b[1]=a[da+4>>2],f[0]));var ea=y|0,fa=(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0]),ka=y+8|0,la=(b[0]=a[ka>>2],b[1]=a[ka+4>>2],f[0]),ha=a[t],ga=ha+56|0,sa=(b[0]=a[ga>>2],b[1]=a[ga+4>>2],f[0]),ra=ha+64|0,na=ha+32|0,qa=(b[0]=a[ra>>2],b[1]=a[ra+4>>2],f[0])-.5*(b[0]=a[na>>2],b[1]=a[na+4>>2],f[0]),ya=B+16|0,oa=B|0,wa=B|0;f[0]=W;a[wa>>2]=b[0];a[wa+4>>2]=b[1];var va=B+8|0;f[0]=ca;a[va>>2]=b[0];a[va+4>>2]=b[1];p=ya>>2;z=B>>2;a[p]=a[z];a[p+1]=a[z+1];a[p+2]=a[z+2];a[p+3]=a[z+3];var Fa=B+32|0,Ga=B+48|0,Aa=B+64|0,ta=Aa|0;f[0]=sa;a[ta>>2]=b[0];a[ta+4>>2]=b[1];var Ka=B+72|0;f[0]=qa;a[Ka>>2]=b[0];a[Ka+4>>2]=b[1];n=Ga>>2;k=Aa>>2;a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];l=Fa>>2;a[l]=a[k];a[l+1]=a[k+1];a[l+2]=a[k+2];a[l+3]=a[k+3];var za=B+80|0,ma=B+96|0,pa=ma|0;f[0]=fa;a[pa>>2]=b[0];a[pa+4>>2]=b[1];var Ea=B+104|0;f[0]=la;a[Ea>>2]=b[0];a[Ea+4>>2]=b[1];j=za>>2;e=ma>>2;a[j]=a[e];a[j+1]=a[e+1];a[j+2]=a[e+2];a[j+3]=a[e+3];a[A>>2]=7;var Ha=oa,Ra=7}else{var Ba=J|0,Ma=(b[0]=a[Ba>>2],b[1]=a[Ba+4>>2],f[0]),La=H+104|0,Qa=Ma-(b[0]=a[La>>2],b[1]=a[La+4>>2],f[0]),Ya=H+112|0,Pa=Ma+(b[0]=a[Ya>>2],b[1]=a[Ya+4>>2],f[0]),Za=H+40|0,Va=(b[0]=a[Za>>2],b[1]=a[Za+4>>2],f[0]),ab=H+96|0,$a=Va+.5*(b[0]=a[ab>>2],b[1]=a[ab+4>>2],f[0]),jb=a[D+236>>2],Ca=a[G+220>>2],Ia=D+40|0,eb=(Va-(a[(Ca+16>>2)+(11*jb|0)]|0)-(b[0]=a[Ia>>2],b[1]=a[Ia+4>>2],f[0])+a[(Ca+20>>2)+(11*jb|0)]&-1|0)/6&-1,ub=$a-(5>(eb|0)?5:eb|0);mm(c,d,D,i,u,1);mm(c,d,E,i,w,0);var Sa=u+52|0,db=a[Sa>>2],ua=db-1|0,Oa=(ua<<5)+u+56|0,Wa=(b[0]=a[Oa>>2],b[1]=a[Oa+4>>2],f[0]);f[0]=Wa;a[Z>>2]=b[0];a[Z+4>>2]=b[1];var pb=(ua<<5)+u+80|0,ob=(b[0]=a[pb>>2],b[1]=a[pb+4>>2],f[0]);f[0]=ob;a[Z+8>>2]=b[0];a[Z+12>>2]=b[1];f[0]=Qa;a[Z+16>>2]=b[0];a[Z+20>>2]=b[1];f[0]=ub;a[Z+24>>2]=b[0];a[Z+28>>2]=b[1];f[0]=Wa;a[Z+32>>2]=b[0];a[Z+36>>2]=b[1];f[0]=ub;a[Z+40>>2]=b[0];a[Z+44>>2]=b[1];var bb=w+52|0,qb=a[bb>>2]-1|0,ib=(qb<<5)+w+72|0,kb=(b[0]=a[ib>>2],b[1]=a[ib+4>>2],f[0]);f[0]=kb;a[Z+48>>2]=b[0];a[Z+52>>2]=b[1];f[0]=$a;a[Z+56>>2]=b[0];a[Z+60>>2]=b[1];f[0]=Pa;a[Z+64>>2]=b[0];a[Z+68>>2]=b[1];f[0]=ub;a[Z+88>>2]=b[0];a[Z+92>>2]=b[1];var hb=(qb<<5)+w+80|0,vb=(b[0]=a[hb>>2],b[1]=a[hb+4>>2],f[0]);f[0]=vb;a[Z+72>>2]=b[0];a[Z+76>>2]=b[1];f[0]=kb;a[Z+80>>2]=b[0];a[Z+84>>2]=b[1];var xb=0<(db|0);a:do{if(xb){for(var mb=0;;){bd(d,(mb<<5)+u+56|0);var nb=mb+1|0;if((nb|0)<(a[Sa>>2]|0)){mb=nb}else{break a}}}}while(0);bd(d,Z|0);bd(d,Z+32|0);bd(d,Z+64|0);var rb=a[bb>>2],lb=0<(rb|0);a:do{if(lb){for(var Ta=rb;;){var cb=Ta-1|0;bd(d,(cb<<5)+w+56|0);if(0<(cb|0)){Ta=cb}else{break a}}}}while(0);var fb=8==(g|0)?ff(d,A,0):ff(d,A,1),Ua=a[A>>2];if(0!=(Ua|0)){Ha=fb,Ra=Ua}else{h=u;return}}}while(0);Wd(i,a[F>>2],Ha,Ra,ke);h=u}function cx(c,d,i,g,e,j){var l,k,n,m,p,s,v,t,u,w,A,B,C,y,D=h;h+=320;var F=D+160,E=D+176,G=D+192,I=D+208,O=D+224,H=D+240,J=D+256,K=D+272,L=D+288,N=D+304,Q=a[i+(g<<2)>>2],S=c+32|0,S=(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]);m=c+40|0;m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);p=Q+28|0;s=Q+36|0;qf(F,S,m,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]));S=F|0;S=(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]);F=F+8|0;F=(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0]);m=d+32|0;m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);d=d+40|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);p=Q+68|0;Q=Q+76|0;qf(E,m,d,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),(b[0]=a[Q>>2],b[1]=a[Q+4>>2],f[0]));Q=E|0;Q=(b[0]=a[Q>>2],b[1]=a[Q+4>>2],f[0]);E=E+8|0;E=(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0]);if(1<(e|0)){var c=c+96|0,d=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),c=d/(e-1|0),R=.5*d}else{if(0<(e|0)){R=c=0}else{h=D;return}}var U=D|0,W=D+8|0;l=D+16|0;var V=l|0,Y=D+24|0,Z=(2*S+Q)/3;y=(D+32|0)>>2;C=O>>2;B=(D+48|0)>>2;A=H>>2;w=(D+64|0)>>2;u=J>>2;var $=(2*Q+S)/3;t=(D+80|0)>>2;v=K>>2;s=(D+96|0)>>2;p=L>>2;m=(D+112|0)>>2;var d=N>>2,ba=D+128|0,ja=D+136|0,aa=D+144|0,da=D+152|0,ea=D|0;n=l>>2;k=G>>2;l=I>>2;for(var fa=D+48|0,ka=D+56|0,la=0,R=F-R;;){var ha=a[i+(la+g<<2)>>2];f[0]=S;a[U>>2]=b[0];a[U+4>>2]=b[1];f[0]=F;a[W>>2]=b[0];a[W+4>>2]=b[1];if(8==(j|0)||2==(j|0)){Tg(G,Z,R);a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];Tg(I,$,R);a[y]=a[l];a[y+1]=a[l+1];a[y+2]=a[l+2];a[y+3]=a[l+3];f[0]=Q;a[fa>>2]=b[0];a[fa+4>>2]=b[1];f[0]=E;a[ka>>2]=b[0];a[ka+4>>2]=b[1];var ga=4}else{f[0]=S,a[V>>2]=b[0],a[V+4>>2]=b[1],f[0]=F,a[Y>>2]=b[0],a[Y+4>>2]=b[1],Tg(O,Z,R),a[y]=a[C],a[y+1]=a[C+1],a[y+2]=a[C+2],a[y+3]=a[C+3],Tg(H,Z,R),a[B]=a[A],a[B+1]=a[A+1],a[B+2]=a[A+2],a[B+3]=a[A+3],Tg(J,Z,R),a[w]=a[u],a[w+1]=a[u+1],a[w+2]=a[u+2],a[w+3]=a[u+3],Tg(K,$,R),a[t]=a[v],a[t+1]=a[v+1],a[t+2]=a[v+2],a[t+3]=a[v+3],Tg(L,$,R),a[s]=a[p],a[s+1]=a[p+1],a[s+2]=a[p+2],a[s+3]=a[p+3],Tg(N,$,R),a[m]=a[d],a[m+1]=a[d+1],a[m+2]=a[d+2],a[m+3]=a[d+3],f[0]=Q,a[ba>>2]=b[0],a[ba+4>>2]=b[1],f[0]=E,a[ja>>2]=b[0],a[ja+4>>2]=b[1],f[0]=Q,a[aa>>2]=b[0],a[aa+4>>2]=b[1],f[0]=E,a[da>>2]=b[0],a[da+4>>2]=b[1],ga=10}Wd(ha,a[ha+12>>2],ea,ga,ke);la=la+1|0;if((la|0)==(e|0)){break}else{R+=c}}h=D}function Tg(c,d,i){var g=c|0;f[0]=d;a[g>>2]=b[0];a[g+4>>2]=b[1];c=c+8|0;f[0]=i;a[c>>2]=b[0];a[c+4>>2]=b[1]}function mO(c,d,i,g,e,j,l){var k,n=h;h+=1396;var m,p=n+4,s=n+700,v=a[j+16>>2],t=a[j+12>>2];k=a[v+20>>2];var u=a[v+236>>2];if((u|0)<(D[k+246>>1]<<16>>16|0)){k=a[k+220>>2]>>2;var w=u+1|0,A=v+40|0,B=a[a[k+(11*w|0)+1]>>2]+40|0;k=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])-(a[k+(11*u|0)+6]|0)-((b[0]=a[B>>2],b[1]=a[B+4>>2],f[0])+(a[k+(11*w|0)+7]|0))}else{k=a[k+260>>2]|0}w=e+1|0;u=(a[c+12>>2]|0)/w;k/=w;ux(c,d,v,j,p,1);ux(c,d,t,j,s,0);c=p+52|0;j=s+52|0;l=0==(l|0);v=d+80|0;for(w=0;;){if((w|0)>=(e|0)){m=2738;break}var t=a[i+(w+g<<2)>>2],A=a[c>>2],B=A-1|0,C=(B<<5)+p+56|0,C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),y=(B<<5)+p+64|0,y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),B=(B<<5)+p+72|0,F=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]);f[0]=C;a[Z>>2]=b[0];a[Z+4>>2]=b[1];f[0]=y;a[Z+24>>2]=b[0];a[Z+28>>2]=b[1];var w=w+1|0,E=w|0,B=E*u;f[0]=F+B;a[Z+16>>2]=b[0];a[Z+20>>2]=b[1];y-=E*k;f[0]=y;a[Z+8>>2]=b[0];a[Z+12>>2]=b[1];f[0]=C;a[Z+32>>2]=b[0];a[Z+36>>2]=b[1];f[0]=y;a[Z+56>>2]=b[0];a[Z+60>>2]=b[1];F=a[j>>2]-1|0;C=(F<<5)+s+72|0;C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]);f[0]=C;a[Z+48>>2]=b[0];a[Z+52>>2]=b[1];f[0]=y-k;a[Z+40>>2]=b[0];a[Z+44>>2]=b[1];E=(F<<5)+s+56|0;E=(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0]);F=(F<<5)+s+64|0;F=(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0]);f[0]=C;a[Z+80>>2]=b[0];a[Z+84>>2]=b[1];f[0]=F;a[Z+88>>2]=b[0];a[Z+92>>2]=b[1];f[0]=E-B;a[Z+64>>2]=b[0];a[Z+68>>2]=b[1];f[0]=y;a[Z+72>>2]=b[0];a[Z+76>>2]=b[1];A=0<(A|0);a:do{if(A){for(B=0;;){if(bd(d,(B<<5)+p+56|0),B=B+1|0,(B|0)>=(a[c>>2]|0)){break a}}}}while(0);bd(d,Z|0);bd(d,Z+32|0);bd(d,Z+64|0);A=a[j>>2];B=0<(A|0);a:do{if(B){for(C=A;;){if(C=C-1|0,bd(d,(C<<5)+s+56|0),0>=(C|0)){break a}}}}while(0);A=l?ff(d,n,1):ff(d,n,0);B=a[n>>2];if(0==(B|0)){m=2739;break}Wd(t,a[t+12>>2],A,B,ke);a[v>>2]=0}2738==m?h=n:2739==m&&(h=n)}function mm(c,d,i,g,e,j){var l,k=h;h+=96;l=k+32;var n=k+64,m=a[i+20>>2];Sg(l,c,i,0,g);c=e>>2;l>>=2;a[c]=a[l];a[c+1]=a[l+1];a[c+2]=a[l+2];a[c+3]=a[l+3];a[c+4]=a[l+4];a[c+5]=a[l+5];a[c+6]=a[l+6];a[c+7]=a[l+7];c=k>>2;a[c]=a[l];a[c+1]=a[l+1];a[c+2]=a[l+2];a[c+3]=a[l+3];a[c+4]=a[l+4];a[c+5]=a[l+5];a[c+6]=a[l+6];a[c+7]=a[l+7];a[e+48>>2]=4;0==j<<24>>24?xl(d,g,2,e,0):vl(d,g,2,e,0);d=(e+52|0)>>2;j=a[d]-1|0;g=(j<<5)+e+80|0;l=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=(k+24|0)>>2;f[0]=l;a[g]=b[0];a[g+1]=b[1];j=(j<<5)+e+64|0;l=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);j=(k+8|0)>>2;f[0]=l;a[j]=b[0];a[j+1]=b[1];l=i+40|0;bi(n,k,4,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+a[(a[m+220>>2]+20>>2)+(11*a[i+236>>2]|0)]&-1);i=n>>2;a[c]=a[i];a[c+1]=a[i+1];a[c+2]=a[i+2];a[c+3]=a[i+3];a[c+4]=a[i+4];a[c+5]=a[i+5];a[c+6]=a[i+6];a[c+7]=a[i+7];i=k|0;n=k+16|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])){if((b[0]=a[j],b[1]=a[j+1],f[0])<(b[0]=a[g],b[1]=a[g+1],f[0])){i=a[d],a[d]=i+1|0,e=((i<<5)+e+56|0)>>2,a[e]=a[c],a[e+1]=a[c+1],a[e+2]=a[c+2],a[e+3]=a[c+3],a[e+4]=a[c+4],a[e+5]=a[c+5],a[e+6]=a[c+6],a[e+7]=a[c+7]}}h=k}function ux(c,d,i,g,e,j){var l,k=h;h+=96;l=k+32;var n=k+64,m=a[i+20>>2];Sg(l,c,i,0,g);c=e>>2;l>>=2;a[c]=a[l];a[c+1]=a[l+1];a[c+2]=a[l+2];a[c+3]=a[l+3];a[c+4]=a[l+4];a[c+5]=a[l+5];a[c+6]=a[l+6];a[c+7]=a[l+7];c=k>>2;a[c]=a[l];a[c+1]=a[l+1];a[c+2]=a[l+2];a[c+3]=a[l+3];a[c+4]=a[l+4];a[c+5]=a[l+5];a[c+6]=a[l+6];a[c+7]=a[l+7];a[e+48>>2]=1;0==j<<24>>24?xl(d,g,2,e,0):vl(d,g,2,e,0);d=(e+52|0)>>2;j=a[d]-1|0;g=(j<<5)+e+80|0;l=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=(k+24|0)>>2;f[0]=l;a[g]=b[0];a[g+1]=b[1];j=(j<<5)+e+64|0;l=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);j=(k+8|0)>>2;f[0]=l;a[j]=b[0];a[j+1]=b[1];l=i+40|0;bi(n,k,1,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])-a[(a[m+220>>2]+20>>2)+(11*a[i+236>>2]|0)]&-1);i=n>>2;a[c]=a[i];a[c+1]=a[i+1];a[c+2]=a[i+2];a[c+3]=a[i+3];a[c+4]=a[i+4];a[c+5]=a[i+5];a[c+6]=a[i+6];a[c+7]=a[i+7];i=k|0;n=k+16|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])){if((b[0]=a[j],b[1]=a[j+1],f[0])<(b[0]=a[g],b[1]=a[g+1],f[0])){i=a[d],a[d]=i+1|0,e=((i<<5)+e+56|0)>>2,a[e]=a[c],a[e+1]=a[c+1],a[e+2]=a[c+2],a[e+3]=a[c+3],a[e+4]=a[c+4],a[e+5]=a[c+5],a[e+6]=a[c+6],a[e+7]=a[c+7]}}h=k}function uO(c,d,i,g,e,j,l){var k,n,z,p,s,v,t,u,w,A,B,C,y,D,F,E,M,I,O=h;h+=196;var H,J=O+4,K=O+164,L=O+180,N=a[i+(g<<2)>>2],Q=fa(e<<2),S=0<(e|0);a:do{if(S){for(var R=0;;){a[Q+(R<<2)>>2]=a[i+(R+g<<2)>>2];var U=R+1|0;if((U|0)==(e|0)){break a}else{R=U}}}}while(0);ch(Q,e,364);var W=c+32|0,V=(b[0]=a[W>>2],b[1]=a[W+4>>2],f[0]),Y=c+40|0,Z=(b[0]=a[Y>>2],b[1]=a[Y+4>>2],f[0]),$=N+28|0,ba=N+36|0;qf(K,V,Z,(b[0]=a[$>>2],b[1]=a[$+4>>2],f[0]),(b[0]=a[ba>>2],b[1]=a[ba+4>>2],f[0]));var ja=K|0,aa=(b[0]=a[ja>>2],b[1]=a[ja+4>>2],f[0]),da=K+8|0,ea=(b[0]=a[da>>2],b[1]=a[da+4>>2],f[0]),ka=d+32|0,la=(b[0]=a[ka>>2],b[1]=a[ka+4>>2],f[0]),sa=d+40|0,ha=(b[0]=a[sa>>2],b[1]=a[sa+4>>2],f[0]),ga=N+68|0,ra=N+76|0;qf(L,la,ha,(b[0]=a[ga>>2],b[1]=a[ga+4>>2],f[0]),(b[0]=a[ra>>2],b[1]=a[ra+4>>2],f[0]));var na=L|0,qa=(b[0]=a[na>>2],b[1]=a[na+4>>2],f[0]),oa=L+8|0,ya=(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0]),va=c+112|0,wa=aa+(b[0]=a[va>>2],b[1]=a[va+4>>2],f[0]),Aa=d+104|0,Fa=qa-(b[0]=a[Aa>>2],b[1]=a[Aa+4>>2],f[0]),Ga=.5*(wa+Fa);I=(J|0)>>2;f[0]=aa;a[I]=b[0];a[I+1]=b[1];M=(J+8|0)>>2;f[0]=ea;a[M]=b[0];a[M+1]=b[1];E=(J+16|0)>>2;f[0]=aa;a[E]=b[0];a[E+1]=b[1];F=(J+24|0)>>2;f[0]=ea;a[F]=b[0];a[F+1]=b[1];D=(J+32|0)>>2;f[0]=qa;a[D]=b[0];a[D+1]=b[1];y=(J+40|0)>>2;f[0]=ya;a[y]=b[0];a[y+1]=b[1];C=(J+48|0)>>2;f[0]=qa;a[C]=b[0];a[C+1]=b[1];B=(J+56|0)>>2;f[0]=ya;a[B]=b[0];a[B+1]=b[1];var Ea=J|0;Wd(N,a[N+12>>2],Ea,4,ke);A=(N+108|0)>>2;var ta=a[A]+56|0;f[0]=Ga;a[ta>>2]=b[0];a[ta+4>>2]=b[1];var Ka=a[A],za=Ka+32|0,ma=ea+.5*((b[0]=a[za>>2],b[1]=a[za+4>>2],f[0])+6),pa=Ka+64|0;f[0]=ma;a[pa>>2]=b[0];a[pa+4>>2]=b[1];m[a[A]+81|0]=1;var Ba=ea+3,Ha=a[A],Ra=Ha+32|0,Ma=Ba+(b[0]=a[Ra>>2],b[1]=a[Ra+4>>2],f[0]),Qa=Ha+24|0,La=.5*(b[0]=a[Qa>>2],b[1]=a[Qa+4>>2],f[0]),Pa=Ga-La,Ya=Ga+La;w=(J+64|0)>>2;u=(J+72|0)>>2;t=(J+80|0)>>2;v=(J+88|0)>>2;s=(J+96|0)>>2;p=(J+104|0)>>2;z=(J+112|0)>>2;n=(J+120|0)>>2;for(var Va=4==(j|0)&1,Za=Ma,db=Ba,ab=1;;){var $a,jb;if((ab|0)>=(l|0)){break}var Ca=a[i+(ab+g<<2)>>2];if(0==(ab&1|0)){f[0]=aa;a[I]=b[0];a[I+1]=b[1];f[0]=ea;a[M]=b[0];a[M+1]=b[1];f[0]=Pa;a[E]=b[0];a[E+1]=b[1];f[0]=ea;a[F]=b[0];a[F+1]=b[1];f[0]=Pa;a[D]=b[0];a[D+1]=b[1];f[0]=Za;a[y]=b[0];a[y+1]=b[1];f[0]=Ya;a[C]=b[0];a[C+1]=b[1];f[0]=Za;a[B]=b[0];a[B+1]=b[1];f[0]=Ya;a[w]=b[0];a[w+1]=b[1];f[0]=ya;a[u]=b[0];a[u+1]=b[1];f[0]=qa;a[t]=b[0];a[t+1]=b[1];f[0]=ya;a[v]=b[0];a[v+1]=b[1];f[0]=qa;a[s]=b[0];a[s+1]=b[1];var Ia=Za+6;f[0]=Ia;a[p]=b[0];a[p+1]=b[1];f[0]=aa;a[z]=b[0];a[z+1]=b[1];f[0]=Ia;a[n]=b[0];a[n+1]=b[1];var eb=a[Ca+108>>2]+32|0,ub=(b[0]=a[eb>>2],b[1]=a[eb+4>>2],f[0]),Sa=jb,ib=$a,ua=Za+(ub+6),Oa=db,Wa=Za+.5*ub+6}else{var pb=Ca+108|0,ob=a[pb>>2];if(1==(ab|0)){var bb=ob+24|0,qb=.5*(b[0]=a[bb>>2],b[1]=a[bb+4>>2],f[0]),hb=Ga+qb,kb=Ga-qb}else{hb=jb,kb=$a}var mb=ob+32|0,vb=db-((b[0]=a[mb>>2],b[1]=a[mb+4>>2],f[0])+6);f[0]=aa;a[I]=b[0];a[I+1]=b[1];f[0]=ea;a[M]=b[0];a[M+1]=b[1];f[0]=aa;a[E]=b[0];a[E+1]=b[1];var xb=vb-6;f[0]=xb;a[F]=b[0];a[F+1]=b[1];f[0]=qa;a[D]=b[0];a[D+1]=b[1];f[0]=xb;a[y]=b[0];a[y+1]=b[1];f[0]=qa;a[C]=b[0];a[C+1]=b[1];f[0]=ya;a[B]=b[0];a[B+1]=b[1];f[0]=hb;a[w]=b[0];a[w+1]=b[1];f[0]=ya;a[u]=b[0];a[u+1]=b[1];f[0]=hb;a[t]=b[0];a[t+1]=b[1];f[0]=vb;a[v]=b[0];a[v+1]=b[1];f[0]=kb;a[s]=b[0];a[s+1]=b[1];f[0]=vb;a[p]=b[0];a[p+1]=b[1];f[0]=kb;a[z]=b[0];a[z+1]=b[1];f[0]=ea;a[n]=b[0];a[n+1]=b[1];var wb=a[pb>>2]+32|0,Sa=hb,ib=kb,ua=Za,Oa=vb,Wa=vb+.5*(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0])}var nb=Ft(aa,ea,qa,ya,Ea,8,O,Va),rb=a[O>>2];if(0==(rb|0)){H=2780;break}k=(Ca+108|0)>>2;var lb=a[k]+56|0;f[0]=Ga;a[lb>>2]=b[0];a[lb+4>>2]=b[1];var Ta=a[k]+64|0;f[0]=Wa;a[Ta>>2]=b[0];a[Ta+4>>2]=b[1];m[a[k]+81|0]=1;Wd(Ca,a[Ca+12>>2],nb,rb,ke);jb=Sa;$a=ib;Za=ua;db=Oa;ab=ab+1|0}if(2780!=H){for(var cb=(2*wa+Fa)/3,fb=(wa+2*Fa)/3,Ua=jb,sb=$a,Na=Za,Fb=db,Db=ab;(Db|0)<(e|0);){var Cb=a[i+(Db+g<<2)>>2];if(0==(Db&1|0)){f[0]=aa;a[I]=b[0];a[I+1]=b[1];f[0]=ea;a[M]=b[0];a[M+1]=b[1];f[0]=Pa;a[E]=b[0];a[E+1]=b[1];f[0]=ea;a[F]=b[0];a[F+1]=b[1];f[0]=Pa;a[D]=b[0];a[D+1]=b[1];f[0]=Na;a[y]=b[0];a[y+1]=b[1];f[0]=Ya;a[C]=b[0];a[C+1]=b[1];f[0]=Na;a[B]=b[0];a[B+1]=b[1];f[0]=Ya;a[w]=b[0];a[w+1]=b[1];f[0]=ya;a[u]=b[0];a[u+1]=b[1];f[0]=qa;a[t]=b[0];a[t+1]=b[1];f[0]=ya;a[v]=b[0];a[v+1]=b[1];f[0]=qa;a[s]=b[0];a[s+1]=b[1];var Eb=Na+6,yb=Ua,Bb=sb,Ja=Eb,Gb=Fb,Hb=Eb,Ib=aa,Jb=Eb}else{var Kb=1==(Db|0),Lb=Kb?cb:sb,Mb=Kb?fb:Ua,Nb=Fb-6;f[0]=aa;a[I]=b[0];a[I+1]=b[1];f[0]=ea;a[M]=b[0];a[M+1]=b[1];f[0]=aa;a[E]=b[0];a[E+1]=b[1];var Pb=Nb-6;f[0]=Pb;a[F]=b[0];a[F+1]=b[1];f[0]=qa;a[D]=b[0];a[D+1]=b[1];f[0]=Pb;a[y]=b[0];a[y+1]=b[1];f[0]=qa;a[C]=b[0];a[C+1]=b[1];f[0]=ya;a[B]=b[0];a[B+1]=b[1];f[0]=Mb;a[w]=b[0];a[w+1]=b[1];f[0]=ya;a[u]=b[0];a[u+1]=b[1];f[0]=Mb;a[t]=b[0];a[t+1]=b[1];f[0]=Nb;a[v]=b[0];a[v+1]=b[1];f[0]=Lb;a[s]=b[0];a[s+1]=b[1];yb=Mb;Bb=Lb;Ja=Na;Gb=Nb;Hb=ea;Ib=Lb;Jb=Nb}f[0]=Jb;a[p]=b[0];a[p+1]=b[1];f[0]=Ib;a[z]=b[0];a[z+1]=b[1];f[0]=Hb;a[n]=b[0];a[n+1]=b[1];var Tb=Ft(aa,ea,qa,ya,Ea,8,O,Va),Sb=a[O>>2];if(0==(Sb|0)){H=2781;break}Wd(Cb,a[Cb+12>>2],Tb,Sb,ke);Ua=yb;sb=Bb;Na=Ja;Fb=Gb;Db=Db+1|0}2781!=H&&G(Q)}h=O}function vO(c){var d,i=xn(AO|0,a[c>>2]>>>4&1);Mp(i,nq|0,Y|0);var g=fa(96),e=i+44|0;d=e>>2;a[e>>2]=g;var h=c+44|0,l=a[h>>2]|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);f[0]=l;a[g>>2]=b[0];a[g+4>>2]=b[1];g=a[h>>2]+24|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);h=a[e>>2]+24|0;f[0]=g;a[h>>2]=b[0];a[h+4>>2]=b[1];m[e+107|0]=m[c+151|0];a[d+27]=a[c+152>>2]&1^1;a[d+53]=a[c+256>>2];a[d+54]=a[c+260>>2];c=c+32|0;e=a[a[c>>2]+16>>2];g=a[a[e+4>>2]+8>>2];d=a[g>>2];if(0==(d|0)){c=e}else{for(e=g;!(e=e+4|0,xi(i,a[d>>2],a[d+4>>2]),d=a[e>>2],0==(d|0));){}c=a[a[c>>2]+16>>2]}c=a[a[c+8>>2]+8>>2];d=a[c>>2];e=0==(d|0);a:do{if(!e){g=c;for(h=d;;){if(g=g+4|0,Th(i,a[h>>2],a[h+4>>2]),h=a[g>>2],0==(h|0)){break a}}}}while(0);c=(i+40|0)>>2;0==($(a[a[c]+4>>2]|0,wi|0)|0)&&Th(i,wi|0,Y|0);0==($(a[a[c]+4>>2]|0,vi|0)|0)&&Th(i,vi|0,Y|0);a[nx>>2]=a[dj>>2];a[ox>>2]=a[di>>2];a[px>>2]=a[Ej>>2];a[qx>>2]=a[Kg>>2];a[rx>>2]=a[Hh>>2];a[sx>>2]=a[Gh>>2];a[tx>>2]=a[Ah>>2];a[dj>>2]=0;d=$(a[a[c]+4>>2]|0,vx|0);a[di>>2]=d;d=$(a[a[c]+4>>2]|0,wx|0);a[Ej>>2]=d;c=$(a[a[c]+4>>2]|0,vp|0);a[Kg>>2]=c;if(0!=(c|0)){return a[Hh>>2]=0,a[Gh>>2]=0,i}c=Th(i,vp|0,Y|0);a[Kg>>2]=c;a[Hh>>2]=0;a[Gh>>2]=0;return i}function xO(b,c){var d=h,g=cl(b,a[c+12>>2]),f=g|0;po(c|0,f);if(2!=(ts(c)|0)){return h=d,g}var e=c+120|0,l=Cb(Ba(a[a[e>>2]>>2])+3|0);Ma(l,BO|0,(j=h,h+=4,a[j>>2]=a[a[e>>2]>>2],j));yd(f,dh|0,l);h=d;return g}function ci(a,b,c,d,f,e){0==(e|0)?(e=b,b=c):(e=c,b=-b);qf(a,e,b,d,f)}function CO(b,c,d,g,f,e){var h;if(!(0<(d|0)&0<(e|0))){var k;return 0}if((d|0)<(e|0)){for(b=0;;){f=a[c+(b<<2)>>2];if(0==(f|0)){k=0;h=2824;break}if((a[f+12>>2]|0)==(g|0)){k=f;h=2825;break}else{b=b+1|0}}if(2825==h||2824==h){return k}}else{for(c=0;;){g=a[f+(c<<2)>>2];if(0==(g|0)){k=0;h=2826;break}if((a[g+16>>2]|0)==(b|0)){k=g;h=2827;break}else{c=c+1|0}}if(2826==h||2827==h){return k}}}function Fj(b,c){var d,g;d=(b+4|0)>>2;for(var f=a[d],e=b|0,h=0;;){if((h|0)>=(f|0)){g=2833;break}var k=a[e>>2],j=(h<<2)+k|0;if((a[j>>2]|0)==(c|0)){break}else{h=h+1|0}}2833!=g&&(g=f-1|0,a[d]=g,a[j>>2]=a[k+(g<<2)>>2],a[a[e>>2]+(a[d]<<2)>>2]=0)}function DO(a,b){var c=a+176|0;D[c>>1]=D[c>>1]-D[b+176>>1]&65535;c=a+162|0;D[c>>1]=D[c>>1]-D[b+162>>1]&65535;c=a+164|0;ib[c>>2]-=ib[b+164>>2]}function Zh(b,c){return CO(b,a[b+184>>2],a[b+188>>2],c,a[c+176>>2],a[c+180>>2])}function oN(b,c){return CO(b,a[b+192>>2],a[b+196>>2],c,a[c+200>>2],a[c+204>>2])}function xx(b){var c,d;d=(b+16|0)>>2;c=a[d]>>2;var g=a[c+46];c=0==(g|0)?Cb((a[c+47]<<2)+8|0):wb(g,(a[c+47]<<2)+8|0);a[a[d]+184>>2]=c;c=a[d]+188|0;g=a[c>>2];a[c>>2]=g+1|0;a[a[a[d]+184>>2]+(g<<2)>>2]=b;d=a[d];a[a[d+184>>2]+(a[d+188>>2]<<2)>>2]=0;d=(b+12|0)>>2;c=a[d]>>2;g=a[c+44];c=0==(g|0)?Cb((a[c+45]<<2)+8|0):wb(g,(a[c+45]<<2)+8|0);a[a[d]+176>>2]=c;c=a[d]+180|0;g=a[c>>2];a[c>>2]=g+1|0;a[a[a[d]+176>>2]+(g<<2)>>2]=b;d=a[d];a[a[d+176>>2]+(a[d+180>>2]<<2)>>2]=0;return b}function pf(b){0==(b|0)&&sa(qg|0,117,EO|0,oq|0);Fj(a[b+16>>2]+184|0,b);Fj(a[b+12>>2]+176|0,b)}function Rg(b){var c,d;d=(b+16|0)>>2;c=a[d]>>2;var g=a[c+52];c=0==(g|0)?Cb((a[c+53]<<2)+8|0):wb(g,(a[c+53]<<2)+8|0);a[a[d]+208>>2]=c;c=a[d]+212|0;g=a[c>>2];a[c>>2]=g+1|0;a[a[a[d]+208>>2]+(g<<2)>>2]=b;b=a[d];a[a[b+208>>2]+(a[b+212>>2]<<2)>>2]=0}function pN(b,c){var d,g,f;g=(c+4|0)>>2;var e=a[g];d=(c|0)>>2;for(var h=a[d],k=0;(k|0)<(e|0);){if((a[h+(k<<2)>>2]|0)==(b|0)){f=2869;break}else{k=k+1|0}}2869!=f&&(f=0==(h|0)?Cb((e<<2)+8|0):wb(h,(e<<2)+8|0),a[d]=f,e=a[g],a[g]=e+1|0,a[f+(e<<2)>>2]=b,a[a[d]+(a[g]<<2)>>2]=0)}function pq(b,c,d){var g=fa(184);a[g+16>>2]=b;a[g+12>>2]=c;m[g+124|0]=1;if(0==(d|0)){return ib[g+164>>2]=1,D[g+162>>1]=1,D[g+176>>1]=1,D[g+178>>1]=1,g}a[g+20>>2]=a[d+20>>2];D[g+176>>1]=D[d+176>>1];D[g+162>>1]=D[d+162>>1];ib[g+164>>2]=ib[d+164>>2];D[g+178>>1]=D[d+178>>1];var f=d+16|0;if((a[f>>2]|0)==(b|0)){for(var b=(d+28|0)>>2,e=(g+28|0)>>2,h=b+10;b>2]|0)==(b|0)){b=(d+68|0)>>2;e=(g+28|0)>>2;for(h=b+10;b>2]|0)==(c|0)){b=(d+68|0)>>2;e=(g+68|0)>>2;for(h=b+10;b>2]|0)==(c|0)){b=(d+28|0)>>2;e=(g+68|0)>>2;for(h=b+10;b>2]|0)&&(a[c>>2]=g);a[g+128>>2]=d;return g}function de(a,b,c){return xx(pq(a,b,c))}function Mw(b,c){var d=b+216|0,g=a[d>>2],f=c+168|0;a[f>>2]=g;0!=(g|0)&&(a[g+172>>2]=c);a[d>>2]=c;a[c+172>>2]=0;(a[f>>2]|0)==(c|0)&&sa(qg|0,215,FO|0,GO|0)}function Qw(b,c){for(var d=b+216|0;;){var g=a[d>>2];if(0==(g|0)|(g|0)==(c|0)){break}else{d=g+168|0}}0==(g|0)&&sa(qg|0,231,HO|0,IO|0);var g=c+168|0,f=a[g>>2],d=c+172|0;0==(f|0)?g=0:(a[f+172>>2]=a[d>>2],g=a[g>>2]);d=a[d>>2];0==(d|0)?a[b+216>>2]=g:a[d+168>>2]=g}function Lf(c){var d,i=fa(304);d=i>>2;a[d+3]=JO|0;a[d+5]=c;m[i+162|0]=1;var g=i+112|0;f[0]=1;a[g>>2]=b[0];a[g+4>>2]=b[1];g=i+104|0;f[0]=1;a[g>>2]=b[0];a[g+4>>2]=b[1];g=i+96|0;f[0]=1;a[g>>2]=b[0];a[g+4>>2]=b[1];a[d+55]=1;a[d+45]=0;a[d+44]=fa(20);a[d+47]=0;a[d+46]=fa(20);Mw(c,i);c=c+240|0;a[c>>2]=a[c>>2]+1|0;return i}function gm(b,c){var d,g;g=(c+16|0)>>2;d=a[g]>>2;var f=a[d+48];d=0==(f|0)?Cb((a[d+49]<<2)+8|0):wb(f,(a[d+49]<<2)+8|0);a[a[g]+192>>2]=d;d=a[g]+196|0;f=a[d>>2];a[d>>2]=f+1|0;a[a[a[g]+192>>2]+(f<<2)>>2]=c;g=a[g];a[a[g+192>>2]+(a[g+196>>2]<<2)>>2]=0;g=(c+12|0)>>2;d=a[g]>>2;f=a[d+50];d=0==(f|0)?Cb((a[d+51]<<2)+8|0):wb(f,(a[d+51]<<2)+8|0);a[a[g]+200>>2]=d;d=a[g]+204|0;f=a[d>>2];a[d>>2]=f+1|0;a[a[a[g]+200>>2]+(f<<2)>>2]=c;g=a[g];a[a[g+200>>2]+(a[g+204>>2]<<2)>>2]=0;m[b+248|0]=1;m[a[b+32>>2]+248|0]=1}function yx(b){0==(b|0)&&sa(qg|0,272,KO|0,oq|0);var c=a[b+128>>2];0!=(c|0)&&(c=c+180|0,(a[c>>2]|0)==(b|0)&&(a[c>>2]=0));Fj(a[b+16>>2]+192|0,b);Fj(a[b+12>>2]+200|0,b)}function og(b,c){var d=h,g=b+180|0,f=a[g>>2];if((f|0)==(c|0)){la(0,LO|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j))}else{0!=(f|0)&&sa(qg|0,343,MO|0,Kw|0);a[g>>2]=c;g=c+178|0;f=D[b+178>>1];(D[g>>1]&65535)<(f&65535)&&(D[g>>1]=f);for(var g=b+176|0,f=b+162|0,e=b+164|0,l=c;;){var k=l+176|0;D[k>>1]=D[k>>1]+D[g>>1]&65535;k=l+162|0;D[k>>1]=D[k>>1]+D[f>>1]&65535;k=l+164|0;ib[k>>2]+=ib[e>>2];l=a[l+180>>2];if(0==(l|0)){break}}}h=d}function NO(b){var c;c=(b+180|0)>>2;var d=a[c];if(0!=(d|0)){for(var g=d;;){DO(g,b);d=a[g+180>>2];for(0==D[g+176>>1]<<16>>16&&OO(g);1==m[g+124|0]<<24>>24;){g=a[g+12>>2];if(1!=m[g+162|0]<<24>>24){break}if(1!=(a[g+188>>2]|0)){break}g=a[a[g+184>>2]>>2];DO(g,b)}if(0==(d|0)){break}else{g=d}}}a[c]=0}function PO(b,c,d,g){var f=(b|0)>(c|0);a[d>>2]=f?c:b;a[g>>2]=f?b:c}function OO(b){0==(b|0)&&sa(qg|0,128,QO|0,oq|0);var c=b+16|0,d=a[c>>2],g=d+184|0,f=a[a[g>>2]>>2],e=0==(f|0);a:do{if(!e){for(var h=0,k=g,j=f,m=d;;){if((j|0)==(b|0)&&(Fj(k,b),m=a[c>>2]),h=h+1|0,k=m+184|0,j=a[a[k>>2]+(h<<2)>>2],0==(j|0)){break a}}}}while(0);c=b+12|0;f=a[c>>2];g=f+176|0;e=a[a[g>>2]>>2];if(0!=(e|0)){for(d=0;!((e|0)==(b|0)&&(Fj(g,b),f=a[c>>2]),d=d+1|0,g=f+176|0,e=a[a[g>>2]+(d<<2)>>2],0==(e|0));){}}}function RO(c){var d,i,g,e,h=c+216|0,l=a[h>>2],k=0==(l|0);a:do{if(!k){for(var j=l;;){var z=j+192|0,p=a[z>>2],s=0==(p|0);b:do{if(!s){var v=a[p>>2];if(0!=(v|0)){i=0;for(var t=p;;){g=a[v+16>>2]>>2;d=a[a[v+12>>2]+240>>2];var u=a[g+60],w=(u|0)<(d|0),A=w?d:u;g=a[a[g+5]+220>>2]+44*a[g+59]+4|0;for(d=w?u:d;;){var B=d+1|0;if((B|0)>=(A|0)){break}d=a[a[g>>2]+(B<<2)>>2];u=m[d+162|0];if(0==u<<24>>24){break}else{if(1!=u<<24>>24){d=B;continue}}if(0==(a[d+120>>2]|0)){d=B}else{break}}0!=((B|0)==(A|0)&1|0)&&(m[v+125|0]=1,t=a[z>>2]);i=i+1|0;v=a[t+(i<<2)>>2];if(0==(v|0)){break b}}}}}while(0);j=a[j+168>>2];if(0==(j|0)){break a}}}}while(0);l=a[c+220>>2];0==(a[l+40>>2]|0)?0<(a[c+208>>2]|0)&&(e=29):e=29;a:do{if(29==e){k=a[l+4>>2];B=0;b:for(;;){j=a[k+(B<<2)>>2];if(0==(j|0)){break a}j=a[j+200>>2];for(z=0;;){p=a[j+(z<<2)>>2];if(0==(p|0)){break}if(0!=(a[p+108>>2]|0)&&0==m[p+125|0]<<24>>24){break b}z=z+1|0}B=B+1|0}SO(c)}}while(0);TO(c);l=a[h>>2];if(0==(l|0)){return 0}e=c+152|0;for(h=0;;){k=l+192|0;B=a[k>>2];j=0==(B|0);a:do{if(j){var C=h}else{z=a[B>>2];p=0==(z|0);b:do{if(p){var y=h}else{s=h;i=0;for(v=z;;){if(t=a[v+108>>2],0!=(t|0)&&(0==m[v+125|0]<<24>>24?(zx(v),s=1):(t=0==(a[e>>2]&1|0)?t+24|0:t+32|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),v=v+144|0,f[0]=t,a[v>>2]=b[0],a[v+4>>2]=b[1])),i=i+1|0,v=a[a[k>>2]+(i<<2)>>2],0==(v|0)){y=s;break b}}}}while(0);z=l+212|0;if(0<(a[z>>2]|0)){p=l+208|0;s=y;for(v=0;;){t=a[a[p>>2]+(v<<2)>>2];i=t>>2;A=a[i+4];g=a[i+3];if((a[A+236>>2]|0)!=(a[g+236>>2]|0)|(A|0)==(g|0)){d=s}else{for(d=t;!(u=a[d+180>>2],0==(u|0));){d=u}u=m[d+125|0];m[t+125|0]=u;w=a[i+27];0==(w|0)?d=s:0==u<<24>>24?(zx(t),d=1):(u=0==(a[e>>2]&1|0)?w+24|0:w+32|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),d=(d+144|0)>>2,w=(b[0]=a[d],b[1]=a[d+1],f[0]),f[0]=u>w?u:w,a[d]=b[0],a[d+1]=b[1],d=s)}i=v+1|0;if((i|0)<(a[z>>2]|0)){s=d,v=i}else{C=d;break a}}}else{C=y}}}while(0);l=a[l+168>>2];if(0==(l|0)){break}else{h=C}}if(0==(C|0)){return 0}qq(c);return C}function SO(b){var c;c=(b+244|0)>>1;0!=D[c]<<16>>16&&sa(Ax|0,190,UO|0,VO|0);var d=b+246|0,g=(D[d>>1]<<16>>16)+3|0,b=(b+220|0)>>2,f=a[b],g=(0==(f|0)?Cb(44*g|0):wb(f,44*g|0))+44|0;a[b]=g;f=D[d>>1];d=f<<16>>16;f=-1>16;a:do{if(f){for(var e=d,h=g;;){for(var k=e-1|0,j=(h+44*k|0)>>2,h=(h+44*e|0)>>2,m=j+11;j>2)+(11*p|0)]=0;a[(a[b]>>2)+(11*p|0)]=0;s=fa(8);a[(a[b]+12>>2)+(11*p|0)]=s;a[(a[b]+4>>2)+(11*p|0)]=s;a[(a[b]+40>>2)+(11*p|0)]=0;a[(a[b]+20>>2)+(11*p|0)]=1;a[(a[b]+16>>2)+(11*p|0)]=1;a[(a[b]+28>>2)+(11*p|0)]=1;a[(a[b]+24>>2)+(11*p|0)]=1;D[c]=D[c]-1&65535}function zx(c){var d,i,g,e,h,l,k,j;j=(c+108|0)>>2;if(0!=(a[j]|0)){k=(c+16|0)>>2;l=a[k]>>2;var z=a[l+5];i=a[l+59];h=(z+220|0)>>2;e=(c+12|0)>>2;var p=WO(a[h],a[a[e]+240>>2],i,a[l+60]);l=i-1|0;g=a[h]>>2;d=a[a[g+(11*l|0)+1]>>2];0==(d|0)?(d=a[a[g+(11*i|0)+1]>>2]+40|0,g=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])+(a[g+(11*i|0)+5]|0)+(a[z+260>>2]|0)):(i=d+40|0,g=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])-(a[g+(11*l|0)+4]|0));g&=-1;p=XO(z,l,p);d=a[j];i=d+24|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);d=d+32|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);var s=0==(a[z+152>>2]&1|0),z=s?d:i,v=p+96|0;f[0]=z;a[v>>2]=b[0];a[v+4>>2]=b[1];z=.5*z&-1;s=.5*(s?i:d);i=(p+112|0)>>2;f[0]=s;a[i]=b[0];a[i+1]=b[1];d=(p+104|0)>>2;f[0]=s;a[d]=b[0];a[d+1]=b[1];a[p+120>>2]=a[j];j=p+40|0;f[0]=z+g|0;a[j>>2]=b[0];a[j+4>>2]=b[1];j=de(p,a[k],c);g=-(b[0]=a[d],b[1]=a[d+1],f[0]);d=j+28|0;f[0]=g;a[d>>2]=b[0];a[d+4>>2]=b[1];k=a[k]+112|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);g=j+68|0;f[0]=k;a[g>>2]=b[0];a[g+4>>2]=b[1];m[j+124|0]=4;k=de(p,a[e],c);j=(b[0]=a[i],b[1]=a[i+1],f[0]);g=k+28|0;f[0]=j;a[g>>2]=b[0];a[g+4>>2]=b[1];e=a[e]+104|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);j=k+68|0;f[0]=e;a[j>>2]=b[0];a[j+4>>2]=b[1];m[k+124|0]=4;e=a[h];k=e+44*l+16|0;(a[k>>2]|0)<(z|0)?(a[k>>2]=z,h=a[h]):h=e;h=h+44*l+20|0;(a[h>>2]|0)<(z|0)&&(a[h>>2]=z);a[p+128>>2]=c|0}}function WO(b,c,d,g){var f=h;h+=24;var e=f+16,j=f+20,k=d-1|0,d=a[(b+4>>2)+(11*k|0)],n=a[(b>>2)+(11*k|0)],b=f+8|0;a[b>>2]=-1;k=f|0;a[k>>2]=-1;var m=f+12|0;a[m>>2]=n;var p=f+4|0;a[p>>2]=n;PO(g,c,e,j);for(var c=a[e>>2],j=a[j>>2],e=n,g=0,s=-1,v=n;;){n=e-1|0;if((g|0)>(n|0)){var t=s,u=v;break}Bx(a[d+(g<<2)>>2],k,c,j);(g|0)!=(n|0)&&Bx(a[d+(n<<2)>>2],k,c,j);v=a[p>>2];s=a[k>>2];if(2>(v-s|0)){t=s;u=v;break}else{e=n,g=g+1|0}}(t|0)>(u|0)?(t=a[m>>2]+a[b>>2]|0,t=(t+1|0)/2&-1):(t=(u+t|0)+1|0,t=(t|0)/2&-1);h=f;return t}function XO(b,c,d){var g,f;f=(b+220|0)>>2;var e=a[f];g=e+44*c|0;e=a[(e+4>>2)+(11*c|0)];e=0==(e|0)?Cb((a[g>>2]<<2)+8|0):wb(e,(a[g>>2]<<2)+8|0);g=e>>2;a[(a[f]+4>>2)+(11*c|0)]=e;var h=a[(a[f]>>2)+(11*c|0)],k=(h|0)>(d|0);a:do{if(k){for(var j=h;;){var m=j-1|0,p=a[(m<<2>>2)+g];a[(j<<2>>2)+g]=p;j=p+240|0;a[j>>2]=a[j>>2]+1|0;if((m|0)>(d|0)){j=m}else{break a}}}}while(0);h=Lf(b);b=(d<<2)+e|0;a[b>>2]=h;a[h+240>>2]=d;a[h+236>>2]=c;c=a[f]+44*c|0;d=a[c>>2]+1|0;a[c>>2]=d;a[(d<<2>>2)+g]=0;return a[b>>2]}function Bx(b,c,d,g){var c=c>>2,f=b>>2,e=h;h+=8;var j,k=e+4;if(1==m[b+162|0]<<24>>24){if(b=a[f+60],0!=(a[f+45]|0)){j=a[f+46];var n=a[j>>2];if(0!=(n|0)){for(var z=f=k=0;;){var p=a[a[n+12>>2]+240>>2];if((p|0)>(d|0)){var p=(p|0)<(g|0)?z:1,s=f}else{p=z,s=1}k=k+1|0;n=a[j+(k<<2)>>2];if(0==(n|0)){break}else{f=s,z=p}}0!=s<<24>>24&0==p<<24>>24&&(a[c]=b+1|0);0!=p<<24>>24&0==s<<24>>24&&(a[c+1]=b-1|0)}}else{if(2!=(a[f+47]|0)&&sa(Ax|0,63,YO|0,ZO|0),p=a[f+46],PO(a[a[a[p>>2]+12>>2]+240>>2],a[a[a[p+4>>2]+12>>2]+240>>2],e,k),p=a[k>>2],(p|0)>(d|0)){if(s=a[e>>2],(s|0)<(g|0)){if(k=(s|0)<(d|0),f=(p|0)>(g|0),!(k&f)){k?j=114:(s|0)==(d|0)&(p|0)<(g|0)&&(j=114);114==j&&(a[c+2]=b);if(!f&&!((p|0)==(g|0)&(s|0)>(d|0))){h=e;return}a[c+3]=b}}else{a[c+1]=b,a[c+3]=b}}else{a[c]=b,a[c+2]=b}}}h=e}function Cx(b){var c=b+276|0,d=a[c>>2];if(0!=(d|0)){var g=D[b+244>>1],f=b+246|0;if(g<<16>>16<=D[f>>1]<<16>>16){b=b+220|0;for(g=g<<16>>16;;){a[d+(g<<2)>>2]=a[a[(a[b>>2]+4>>2)+(11*g|0)]>>2];d=g+1|0;if((d|0)>(D[f>>1]<<16>>16|0)){break}g=d;d=a[c>>2]}}}}function lx(c,d){0!=m[ld]<<24>>24&&mk(ih);m[rq]=0;a[sd>>2]=c;var i=(rc(a[a[c+32>>2]+28>>2])<<2)+4|0,g=fa(i);a[om>>2]=g;i=fa(i);a[pm>>2]=i;a[qm>>2]=8;a[rm>>2]=24;f[0]=.995;a[sm>>2]=b[0];a[sm+4>>2]=b[1];i=V(c|0,$O|0);0!=(i|0)&&(i=wg(i,xc),0>2]|0)*i,a[qm>>2]=1>g?1:g&-1,i*=a[rm>>2]|0,a[rm>>2]=1>i?1:i&-1));Lw(c);jq(c,1);Dx(c);sq(c);a[Ex>>2]=D[c+244>>1]<<16>>16;a[Fx>>2]=D[c+246>>1]<<16>>16;i=c+228|0;g=0<(a[i>>2]|0);a:do{if(g){for(var e=0,h=0;;){var j=c,k=e;a[j+216>>2]=a[a[j+224>>2]+(k<<2)>>2];if(0<(k|0)){var n=D[j+244>>1],k=j+246|0;if(n<<16>>16<=D[k>>1]<<16>>16){j=j+220|0;for(n=n<<16>>16;;){var z=a[j>>2],p=z+44*n+4|0;a[p>>2]=(a[(z>>2)+(11*n|0)]<<2)+a[p>>2]|0;a[(a[j>>2]>>2)+(11*n|0)]=0;n=n+1|0;if((n|0)>(D[k>>1]<<16>>16|0)){break}}}}h=tq(c,0,d)+h|0;e=e+1|0;if((e|0)>=(a[i>>2]|0)){var s=h;break a}}}else{s=0}}while(0);aP(c);i=c+208|0;if(1>(a[i>>2]|0)){var v=s}else{g=c+212|0;for(e=1;;){var v=bP(a[a[g>>2]+(e<<2)>>2],d)+s|0,s=e+1|0,t=a[i>>2];if((s|0)>(t|0)){break}else{e=s,s=v}}if(0<(t|0)){t=V(c|0,cP|0);if(0!=(t|0)&&0==re(t)<<24>>24){Gx(c,v);return}Tw(c);m[rq]=1;v=tq(c,2,d)}}Gx(c,v)}function tq(c,d,i){var g=h;if(1<(d|0)){var e=tm(),Xa=c+216|0;Hx(a[Xa>>2]);var l=e}else{l=2147483647,Xa=c+216|0}for(var e=c+32|0,k=l;;){var n;if(3<=(d|0)){var z=k,p=l,s=n;break}n=a[rm>>2];if(2>(d|0)){n=4<(n|0)?4:n;(a[e>>2]|0)==(c|0)&&Ix(c,d);0==(d|0)&&Jx(c);Kx(c);var v=tm();(v|0)>(k|0)?l=k:(Hx(a[Xa>>2]),l=v)}else{(l|0)>(k|0)&&dP(c),v=l=k}for(var k=l,t=v,u=0,l=0;(l|0)<(n|0);){0!=m[ld]<<24>>24&&Va(a[oa>>2],eP|0,(j=h,h+=20,a[j>>2]=d,a[j+4>>2]=l,a[j+8>>2]=u,a[j+12>>2]=t,a[j+16>>2]=k,j));v=u+1|0;if((u|0)>=(a[qm>>2]|0)|0==(t|0)){break}t=c;u=2>(l%4|0)&1;if(0==(l&1|0)){var w=D[t+244>>1],A=1,B=t+246|0,w=(w<<16>>16)+(w<<16>>16<=D[a[sd>>2]+244>>1]<<16>>16&1)|0}else{w=D[t+246>>1],A=-1,B=t+244|0,w=((w<<16>>16>=D[a[sd>>2]+246>>1]<<16>>16)<<31>>31)+(w<<16>>16)|0}B=(D[B>>1]<<16>>16)+A|0;if((w|0)!=(B|0)){for(;!(fP(t,w,u,gP(t,w,w-A|0)&255),w=w+A|0,(w|0)==(B|0));){}}u^=1;uq(t,u);t=tm();(t|0)>(k|0)?u=k:(Hx(a[Xa>>2]),u=t,v=(t|0)<(b[0]=a[sm>>2],b[1]=a[sm+4>>2],f[0])*(k|0)?0:v);k=u;u=v;l=l+1|0}if(0==(t|0)){z=k;p=0;s=n;break}else{l=t,d=d+1|0}}(p|0)>(z|0)&&dP(c);0<(z|0)&&(uq(c,0),z=tm());if(0!=(i|0)&0<(s|0)){i=0}else{return h=g,z}for(;!(hP(c),i=i+1|0,(i|0)==(s|0));){}h=g;return z}function aP(b){var c,d=h,g;c=(b+228|0)>>2;if(2<=(a[c]|0)){for(var f=b+224|0,e=0,l=0;;){var k=a[a[f>>2]+(l<<2)>>2];0!=(e|0)&&(a[e+168>>2]=k);a[k+172>>2]=e;for(e=k;!(k=a[e+168>>2],0==(k|0));){e=k}l=l+1|0;if((l|0)>=(a[c]|0)){break}}a[c]=1;a[b+216>>2]=a[a[f>>2]>>2];D[b+244>>1]=a[Ex>>2]&65535;D[b+246>>1]=a[Fx>>2]&65535}l=D[b+244>>1];f=b+246|0;if(l<<16>>16<=D[f>>1]<<16>>16){c=(b+220|0)>>2;b=b+12|0;for(l=l<<16>>16;;){e=a[c];a[(e>>2)+(11*l|0)]=a[(e+8>>2)+(11*l|0)];e=a[c];a[(e+4>>2)+(11*l|0)]=a[(e+12>>2)+(11*l|0)];for(e=0;;){var n=a[c],z=a[(n>>2)+(11*l|0)];if((e|0)>=(z|0)){break}k=a[a[(n+4>>2)+(11*l|0)]+(e<<2)>>2];if(0==(k|0)){g=206;break}a[k+240>>2]=e;e=e+1|0}206==g&&(g=0,0==m[ld]<<24>>24?k=n:(Va(a[oa>>2],iP|0,(j=h,h+=16,a[j>>2]=a[b>>2],a[j+4>>2]=l,a[j+8>>2]=e,a[j+12>>2]=z,j)),k=a[c]),a[(k>>2)+(11*l|0)]=e);l=l+1|0;if((l|0)>(D[f>>1]<<16>>16|0)){break}}}h=d}function bP(b,c){Lw(b);a[b+228>>2]=1;a[a[b+224>>2]>>2]=a[b+216>>2];Dx(b);Ix(b,0);vN(b);nN(b);wN(b);sq(b);Jx(b);Kx(b);var d=tq(b,2,c),g=b+208|0;if(1>(a[g>>2]|0)){var f=d;Cx(b);return f}for(var e=b+212|0,h=1;;){if(d=bP(a[a[e>>2]+(h<<2)>>2],c)+d|0,h=h+1|0,(h|0)>(a[g>>2]|0)){f=d;break}}Cx(b);return f}function Gx(c,d){var i=h,g=a[pm>>2];0!=(g|0)&&(G(g),a[pm>>2]=0);g=a[om>>2];0!=(g|0)&&(G(g),a[om>>2]=0);var g=c+208|0,e=1>(a[g>>2]|0);a:do{if(!e){for(var Xa=c+212|0,l=1;;){if(qq(a[a[Xa>>2]+(l<<2)>>2]),l=l+1|0,(l|0)>(a[g>>2]|0)){break a}}}}while(0);g=D[c+244>>1];e=c+246|0;Xa=g<<16>>16>D[e>>1]<<16>>16;a:do{if(!Xa){for(var l=c+220|0,k=g<<16>>16;;){var n=a[l>>2],z=0<(a[(n>>2)+(11*k|0)]|0);b:do{if(z){for(var p=0,s=n;;){s=a[a[(s+4>>2)+(11*k|0)]+(p<<2)>>2];a[s+240>>2]=p;var s=s+192|0,v=a[s>>2],t=0==(v|0);c:do{if(!t){var u=a[v>>2];if(0!=(u|0)){for(var w=0,A=u,u=v;;){if(4==m[A+124|0]<<24>>24&&(yx(A),G(A|0),w=w-1|0,u=a[s>>2]),w=w+1|0,A=a[u+(w<<2)>>2],0==(A|0)){break c}}}}}while(0);p=p+1|0;s=a[l>>2];if((p|0)>=(a[(s>>2)+(11*k|0)]|0)){var B=s;break b}}}else{B=n}}while(0);n=a[(B+40>>2)+(11*k|0)];0!=(n|0)&&(G(a[n+8>>2]),G(n));k=k+1|0;if((k|0)>(D[e>>1]<<16>>16|0)){break a}}}}while(0);0!=m[ld]<<24>>24&&(B=a[oa>>2],g=a[c+12>>2],e=Jn(),Va(B,jP|0,(j=h,h+=16,a[j>>2]=g,a[j+4>>2]=d,f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)));h=i}function TO(b){Cx(b);var c=b+208|0;if(1<=(a[c>>2]|0)){for(var b=b+212|0,d=1;!(TO(a[a[b>>2]+(d<<2)>>2]),d=d+1|0,(d|0)>(a[c>>2]|0));){}}}function qq(b){var c;c=b+208|0;var d=1>(a[c>>2]|0);a:do{if(!d){for(var g=b+212|0,f=1;;){if(qq(a[a[g>>2]+(f<<2)>>2]),f=f+1|0,(f|0)>(a[c>>2]|0)){break a}}}}while(0);c=(b+276|0)>>2;var e=a[c];if(0!=(e|0)){var h=D[b+244>>1],d=b+246|0;if(h<<16>>16<=D[d>>1]<<16>>16){g=b+32|0;f=b+220|0;for(h=h<<16>>16;;){var k=a[e+(h<<2)>>2],e=kP(b,k,-1),k=kP(b,k,1);a[a[c]+(h<<2)>>2]=e;e=e+240|0;a[(a[f>>2]+4>>2)+(11*h|0)]=(a[e>>2]<<2)+a[(a[a[g>>2]+220>>2]+4>>2)+(11*h|0)]|0;a[(a[f>>2]>>2)+(11*h|0)]=a[k+240>>2]+1-a[e>>2]|0;h=h+1|0;if((h|0)>(D[d>>1]<<16>>16|0)){break}e=a[c]}}}}function kP(a,b,c){var d=lP(b,c);if(0==(d|0)){var f;return b}for(;;){if(b=0==(Lx(a,d)|0)?0==(Mx(a,d)|0)?b:d:d,d=lP(d,c),0==(d|0)){f=b;break}}return f}function Nx(b,c){var d,g,f=a[c+12>>2],e=a[f+192>>2],h=0==(e|0);g=(c+16|0)>>2;a:do{if(!h){for(h=0;;){d=a[e+(h<<2)>>2];if(0==(d|0)){break a}if((a[d+12>>2]|0)==(a[g]|0)){break}else{h=h+1|0}}og(c,d);f=c+180|0;0==(a[f>>2]|0)&&(a[f>>2]=d);4==m[d+124|0]<<24>>24&&(d=d+128|0,0==(a[d>>2]|0)&&(a[d>>2]=c));d=a[g]>>2;f=a[d+52];d=0==(f|0)?Cb((a[d+53]<<2)+8|0):wb(f,(a[d+53]<<2)+8|0);a[a[g]+208>>2]=d;d=a[g]+212|0;f=a[d>>2];a[d>>2]=f+1|0;a[a[a[g]+208>>2]+(f<<2)>>2]=c;g=a[g];a[a[g+208>>2]+(a[g+212>>2]<<2)>>2]=0;return}}while(0);g=pq(f,a[g],c);m[g+124|0]=4==m[c+124|0]<<24>>24?4:3;a[g+108>>2]=a[c+108>>2];gm(b,g)}function um(b,c){var d=a[b+236>>2],g=b+240|0,f=a[g>>2],e=c+240|0,h=a[e>>2];a[g>>2]=h;g=a[sd>>2]+220|0;a[a[(a[g>>2]+4>>2)+(11*d|0)]+(h<<2)>>2]=b;a[e>>2]=f;a[a[(a[g>>2]+4>>2)+(11*d|0)]+(f<<2)>>2]=c}function kN(a){return 1==m[a+162|0]<<24>>24?2:a=2>m[a+166|0]<<24>>24&1}function Dx(b){var c,d;d=(b+246|0)>>1;var g=fa((D[d]<<16>>16<<2)+8|0);c=ra(b);var f=0==(c|0);a:do{if(!f){for(var e=c;;){var h=(a[e+236>>2]<<2)+g|0;a[h>>2]=a[h>>2]+1|0;var h=Ib(b,e),k=0==(h|0);b:do{if(!k){for(var j=h;;){var m=a[a[j+16>>2]+236>>2],p=a[a[j+12>>2]+236>>2],s=(m|0)>(p|0),v=s?m:p,m=(s?p:m)+1|0,p=(m|0)<(v|0);c:do{if(p){for(s=m;;){var t=(s<<2)+g|0;a[t>>2]=a[t>>2]+1|0;s=s+1|0;if((s|0)>=(v|0)){break c}}}}while(0);j=yb(b,j);if(0==(j|0)){break b}}}}while(0);e=ba(b,e);if(0==(e|0)){break a}}}}while(0);f=fa(44*(D[d]<<16>>16)+88|0);c=(b+220|0)>>2;a[c]=f;b=D[b+244>>1];if(b<<16>>16<=D[d]<<16>>16){for(b=b<<16>>16;;){e=(b<<2)+g|0;h=a[e>>2];a[(f>>2)+(11*b|0)]=h;a[(a[c]+8>>2)+(11*b|0)]=h;f=fa((a[e>>2]<<2)+4|0);a[(a[c]+4>>2)+(11*b|0)]=f;a[(a[c]+12>>2)+(11*b|0)]=f;b=b+1|0;if((b|0)>(D[d]<<16>>16|0)){break}f=a[c]}}G(g)}function Ix(b,c){var d,g=h,f=ZE(a[b+240>>2]),e=b+216|0;d=a[e>>2];var l=0==(d|0);a:do{if(!l){for(var k=d;;){if(m[k+163|0]=0,k=a[k+168>>2],0==(k|0)){break a}}}}while(0);l=b+244|0;k=D[l>>1];d=(b+246|0)>>1;var n=k<<16>>16>D[d]<<16>>16;a:do{if(!n){for(var z=b+220|0,p=k<<16>>16;;){if(a[(a[z>>2]>>2)+(11*p|0)]=0,p=p+1|0,(p|0)>(D[d]<<16>>16|0)){break a}}}}while(0);e=a[e>>2];k=0==(e|0);a:do{if(!k){for(var n=0==(c|0),z=b,p=f,s=e;;){var v=0==(a[a[(n?s+176|0:s+184|0)>>2]>>2]|0);b:do{if(v){var t=s+163|0;if(0==m[t]<<24>>24&&(m[t]=1,Rk(f,s),t=Sk(f),0!=(t|0))){for(;;){if(7==m[t+165|0]<<24>>24?AN(z,t,c,p):(Rw(b,t),Sw(f,t,c)),t=Sk(f),0==(t|0)){break b}}}}}while(0);s=a[s+168>>2];if(0==(s|0)){break a}}}}while(0);0!=(Sk(f)|0)&&la(1,mP|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));l=D[l>>1];e=l<<16>>16>D[d]<<16>>16;a:do{if(!e){k=b+152|0;n=b+220|0;z=a[sd>>2];for(p=l<<16>>16;;){m[a[z+220>>2]+44*p+33|0]=0;s=0==(a[k>>2]&1|0);b:do{if(!s&&(v=a[n>>2],t=a[(v>>2)+(11*p|0)],0<(t|0))){for(var v=a[(v+4>>2)+(11*p|0)],t=t-1|0,u=(t|0)/2&-1,w=0;;){if(um(a[v+(w<<2)>>2],a[v+(t-w<<2)>>2]),w=w+1|0,(w|0)>(u|0)){break b}}}}while(0);p=p+1|0;if((p|0)>(D[d]<<16>>16|0)){break a}}}}while(0);(a[b+32>>2]|0)==(b|0)&&0<(tm()|0)&&uq(b,0);G(a[f>>2]);G(f);h=g}function Sw(b,c,d){if(0==(d|0)){var d=c+188|0,g=a[d>>2];if(0<(g|0)){for(var c=c+184|0,f=0;;){var e=a[a[c>>2]+(f<<2)>>2]+12|0,h=a[e>>2]+163|0;0==m[h]<<24>>24&&(m[h]=1,Rk(b,a[e>>2]),g=a[d>>2]);f=f+1|0;if((f|0)>=(g|0)){break}}}}else{if(d=c+180|0,g=a[d>>2],0<(g|0)){c=c+176|0;for(f=0;!(e=a[a[c>>2]+(f<<2)>>2]+16|0,h=a[e>>2]+163|0,0==m[h]<<24>>24&&(m[h]=1,Rk(b,a[e>>2]),g=a[d>>2]),f=f+1|0,(f|0)>=(g|0));){}}}}function tm(){var b,c=a[sd>>2],d=D[c+244>>1],g=c+246|0,f=D[g>>1];if(d<<16>>16>=f<<16>>16){var e;return 0}b=(c+220|0)>>2;for(var h=0,d=d<<16>>16;;){var k=a[b];0==m[k+44*d+33|0]<<24>>24?(f=nP(c,d),a[(a[b]+36>>2)+(11*d|0)]=f,m[a[b]+44*d+33|0]=1,k=f,f=D[g>>1]):k=a[(k+36>>2)+(11*d|0)];h=k+h|0;d=d+1|0;if((d|0)>=(f<<16>>16|0)){e=h;break}}return e}function uq(b,c){var d,g=b+244|0,f=D[g>>1];d=(b+246|0)>>1;var e=D[d],h=f<<16>>16>e<<16>>16;a:do{if(h){var k=e,j=b+220|0}else{for(var z=b+220|0,p=f<<16>>16;;){m[a[z>>2]+44*p+32|0]=1;var p=p+1|0,s=D[d];if((p|0)>(s<<16>>16|0)){k=s;j=z;break a}}}}while(0);for(f=k;;){e=D[g>>1];if(e<<16>>16>f<<16>>16){break}e=e<<16>>16;for(h=0;;){if(0==m[a[j>>2]+44*e+32|0]<<24>>24){var v=h,t=f}else{v=oP(b,e,c)+h|0,t=D[d]}f=e+1|0;if((f|0)>(t<<16>>16|0)){break}else{e=f,h=v,f=t}}if(0<(v|0)){f=t}else{break}}}function nP(b,c){var d,g;d=(b+220|0)>>2;var f=a[d],e=a[(f+4>>2)+(11*c|0)],h=c+1|0,k=a[(a[a[sd>>2]+220>>2]>>2)+(11*h|0)];(a[Ox>>2]|0)>(k|0)||(f=k+1|0,a[Ox>>2]=f,k=a[Gj>>2],f=0==(k|0)?Cb(f<<2):wb(k,f<<2),a[Gj>>2]=f,f=a[d]);k=0<(a[(f>>2)+(11*h|0)]|0);a:do{if(k){for(var j=a[Gj>>2],z=0;;){a[j+(z<<2)>>2]=0;var z=z+1|0,p=a[d];if((z|0)>=(a[(p>>2)+(11*h|0)]|0)){var s=p;break a}}}else{s=f}}while(0);f=0<(a[(s>>2)+(11*c|0)]|0);a:do{if(f){for(var v=k=0,j=0,z=s;;){var t=0<(k|0),u=(j<<2)+e|0,w=a[a[u>>2]+184>>2],p=a[w>>2];b:do{if(t){if(0==(p|0)){var A=k,B=z,C=v}else{for(var y=a[Gj>>2],F=0,E=v,G=p;;){var I=a[a[G+12>>2]+240>>2]+1|0,H=(I|0)>(k|0);c:do{if(H){var O=E}else{for(var J=D[G+162>>1]<<16>>16,K=E,L=I;;){if(K=J*a[y+(L<<2)>>2]+K|0,L=L+1|0,(L|0)>(k|0)){O=K;break c}}}}while(0);F=F+1|0;G=a[w+(F<<2)>>2];if(0==(G|0)){var N=O;g=390;break b}else{E=O}}}}else{N=v,g=390}}while(0);do{if(390==g){g=0;if(0==(p|0)){A=k,B=z}else{A=a[Gj>>2];B=1;C=k;for(v=p;;){var t=a[a[v+12>>2]+240>>2],Q=(t|0)>(C|0)?t:C,C=(t<<2)+A|0;a[C>>2]=(D[v+162>>1]<<16>>16)+a[C>>2]|0;v=a[a[a[u>>2]+184>>2]+(B<<2)>>2];if(0==(v|0)){break}B=B+1|0;C=Q}A=Q;B=a[d]}C=N}}while(0);j=j+1|0;u=a[(B>>2)+(11*c|0)];if((j|0)<(u|0)){k=A,v=C,z=B}else{break}}if(0<(u|0)){k=a[(B+4>>2)+(11*c|0)];j=C;for(z=0;;){if(p=a[k+(z<<2)>>2],j=0==m[p+161|0]<<24>>24?j:Px(a[p+184>>2],1)+j|0,z=z+1|0,(z|0)>=(u|0)){S=j;R=B;break a}}}else{var S=C,R=B}}else{S=0,R=s}}while(0);d=a[(R>>2)+(11*h|0)];if(0>=(d|0)){var U;return S}h=a[(R+4>>2)+(11*h|0)];for(R=0;;){if(g=a[h+(R<<2)>>2],S=0==m[g+161|0]<<24>>24?S:Px(a[g+176>>2],-1)+S|0,R=R+1|0,(R|0)>=(d|0)){U=S;break}}return U}function Rw(b,c){var d,g,f=h,e=a[c+236>>2];g=(b+220|0)>>2;d=a[g]>>2;var l=a[d+(11*e|0)];if(1>(a[d+(11*e|0)+2]|0)){var k=a[c+12>>2];la(1,pP|0,(j=h,h+=16,a[j>>2]=a[b+12>>2],a[j+4>>2]=k,a[j+8>>2]=e,a[j+12>>2]=l,j));S()}a[a[d+(11*e|0)+1]+(l<<2)>>2]=c;d=c+240|0;a[d>>2]=l;l=a[g]+44*e|0;a[l>>2]=a[l>>2]+1|0;l=a[g];(a[(l>>2)+(11*e|0)]|0)>(a[(l+8>>2)+(11*e|0)]|0)&&sa(rg|0,1028,qP|0,rP|0);l=a[d>>2];d=a[(a[a[sd>>2]+220>>2]+8>>2)+(11*e|0)];(l|0)>(d|0)&&S();(e|0)<(D[b+244>>1]<<16>>16|0)&&S();(e|0)>(D[b+246>>1]<<16>>16|0)&&S();g=a[g];((l<<2)+a[(g+4>>2)+(11*e|0)]|0)>>>0>((d<<2)+a[(g+12>>2)+(11*e|0)]|0)>>>0?S():h=f}function Px(c,d){var i,g=0<(d|0),e=a[c>>2];if(0==(e|0)){var h;return 0}var j=0,k=0;a:for(;;){var k=k+1|0,n=a[c+(k<<2)>>2],m=0==(n|0);b:do{if(g){if(m){h=j;i=436;break a}for(var p=a[a[e+12>>2]+240>>2],s=e+28|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),v=e+162|0,t=j,u=k,w=n;;){var A=w+28|0,t=0>(a[a[w+12>>2]+240>>2]-p|0)*((b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])-s)?(D[w+162>>1]<<16>>16)*(D[v>>1]<<16>>16)+t|0:t,u=u+1|0,w=a[c+(u<<2)>>2];if(0==(w|0)){var B=t;break b}}}else{if(m){h=j;i=437;break a}p=a[a[e+16>>2]+240>>2];s=e+68|0;s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);v=e+162|0;t=j;u=k;for(w=n;;){if(A=w+68|0,t=0>(a[a[w+16>>2]+240>>2]-p|0)*((b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])-s)?(D[w+162>>1]<<16>>16)*(D[v>>1]<<16>>16)+t|0:t,u=u+1|0,w=a[c+(u<<2)>>2],0==(w|0)){B=t;break b}}}}while(0);if(m){h=B;i=438;break}else{j=B,e=n}}if(436==i||437==i||438==i){return h}}function vq(b,c,d){var g=a[c+216>>2],f=a[d+216>>2],e=(g|0)!=(f|0);if(m[rq]){if(e){return 1}}else{if(!(0==(g|0)|e^1|0==(f|0))){return 7==m[c+165|0]<<24>>24&&1==m[c+162|0]<<24>>24||7==m[d+165|0]<<24>>24&&1==m[d+162|0]<<24>>24?0:1}}g=a[(a[b+220>>2]+40>>2)+(11*a[c+236>>2]|0)];if(0==(g|0)){return 0}b=0==(a[b+152>>2]&1|0);return c=m[a[g+8>>2]+a[g+4>>2]*a[(b?c:d)+284>>2]+a[(b?d:c)+284>>2]|0]<<24>>24}function vm(c,d){var i,g=a[d>>2];if(0==(g|0)){var e;return 0}for(var h=a[c+176>>2],j=a[h>>2],k=0==(j|0),n=d,m=0;;){var p=D[g+162>>1]<<16>>16,s=a[a[g+16>>2]+240>>2];a:do{if(k){var v=m}else{for(var t=g+28|0,u=h,w=m,A=j;;){var B=a[a[A+16>>2]+240>>2];if(0<(B-s|0)){i=464}else{if((B|0)!=(s|0)){var C=w}else{A=A+28|0,(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])>(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])?i=464:C=w}}464==i&&(i=0,C=(D[a[u>>2]+162>>1]<<16>>16)*p+w|0);u=u+4|0;A=a[u>>2];if(0==(A|0)){v=C;break a}else{w=C}}}}while(0);n=n+4|0;g=a[n>>2];if(0==(g|0)){e=v;break}else{m=v}}return e}function wm(c,d){var i,g=a[d>>2];if(0==(g|0)){var e;return 0}for(var h=a[c+184>>2],j=a[h>>2],k=0==(j|0),n=d,m=0;;){var p=D[g+162>>1]<<16>>16,s=a[a[g+12>>2]+240>>2];a:do{if(k){var v=m}else{for(var t=g+68|0,u=h,w=m,A=j;;){var B=a[a[A+12>>2]+240>>2];if(0<(B-s|0)){i=477}else{if((B|0)!=(s|0)){var C=w}else{A=A+68|0,(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])>(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])?i=477:C=w}}477==i&&(i=0,C=(D[a[u>>2]+162>>1]<<16>>16)*p+w|0);u=u+4|0;A=a[u>>2];if(0==(A|0)){v=C;break a}else{w=C}}}}while(0);n=n+4|0;g=a[n>>2];if(0==(g|0)){e=v;break}else{m=v}}return e}function sP(b){for(b>>=2;;){var c=a[b+32];if(0==(c|0)){break}else{b=c,b>>=2}}return(a[a[b+4]+216>>2]|0)!=(a[a[b+3]+216>>2]|0)&1}function lP(b,c){var d=a[b+240>>2];return 0<=(c|0)?d=a[a[(a[a[sd>>2]+220>>2]+4>>2)+(11*a[b+236>>2]|0)]+(d+1<<2)>>2]:0>=(d|0)?0:d=a[a[(a[a[sd>>2]+220>>2]+4>>2)+(11*a[b+236>>2]|0)]+(d-1<<2)>>2]}function oP(b,c,d){var g,f,e,h;h=(b+220|0)>>2;m[a[h]+44*c+32|0]=0;var k=0<(c|0),j=c+1|0,d=0!=(d|0),z=b+244|0,p=c-1|0,s=b+246|0;e=g=0;a:for(;;){for(f=e;;){var v=a[h];if((f|0)>=(a[(v>>2)+(11*c|0)]-1|0)){break a}var t=a[(v+4>>2)+(11*c|0)],v=a[t+(f<<2)>>2];e=v>>2;var u=f+1|0,t=a[t+(u<<2)>>2];f=t>>2;(a[e+60]|0)<(a[f+60]|0)||sa(rg|0,523,tP|0,Qx|0);if(0!=(vq(b,v,t)|0)){f=u}else{if(k){var w=vm(v,a[f+44]),A=vm(t,a[e+44])}else{w=A=0}0<(a[(a[h]>>2)+(11*j|0)]|0)&&(w=wm(v,a[f+46])+w|0,A=wm(t,a[e+46])+A|0);if((A|0)<(w|0)){break}if(d&0<(w|0)&(A|0)==(w|0)){break}else{f=u}}}um(v,t);e=w-A+g|0;g=(a[sd>>2]+220|0)>>2;m[a[g]+44*c+33|0]=0;m[a[h]+44*c+32|0]=1;(D[z>>1]<<16>>16|0)<(c|0)&&(m[a[g]+44*p+33|0]=0,m[a[h]+44*p+32|0]=1);(D[s>>1]<<16>>16|0)>(c|0)&&(m[a[g]+44*j+33|0]=0,m[a[h]+44*j+32|0]=1);g=e;e=u}return g}function sq(b){var c=h,d=a[Yu>>2];if(0!=(d|0)|0!=(a[El>>2]|0)){if(d=jc(b|0,d,0),0==(d|0)){var g=a[b+36>>2],d=a[g+20>>2],g=Ib(d,g),f=0==(g|0);a:do{if(!f){for(var e=g;;){var l=Yd(a[e+12>>2]);0==(0==(td(a[l+12>>2],Rx|0,7)|0)&1|0)&&sq(l);e=yb(d,e);if(0==(e|0)){break a}}}}while(0);if(0!=(a[El>>2]|0)){d=h;g=ra(b);if(0!=(g|0)){for(;;){f=g;e=jc(g|0,a[El>>2],0);l=0==(e|0);a:do{if(!l){var k=m[e];do{if(105==k<<24>>24){if(0==(ka(e,Ep|0)|0)){wq(b,f,0);break a}}else{if(111==k<<24>>24){if(0==(ka(e,Sx|0)|0)){wq(b,f,1);break a}}else{if(0==k<<24>>24){break a}}}}while(0);k=a[g+12>>2];la(1,uP|0,(j=h,h+=8,a[j>>2]=e,a[j+4>>2]=k,j))}}while(0);g=ba(b,g);if(0==(g|0)){break}}}h=d}}else{g=m[d];if(111==g<<24>>24){if(0==(ka(d,Sx|0)|0)){vP(b,1);h=c;return}}else{if(105==g<<24>>24){if(0==(ka(d,Ep|0)|0)){vP(b,0);h=c;return}}else{if(0==g<<24>>24){h=c;return}}}la(1,wP|0,(j=h,h+=4,a[j>>2]=d,j))}}h=c}function vP(a,b){var c=ra(a);if(0!=(c|0)){for(;!(wq(a,c,b),c=ba(a,c),0==(c|0));){}}}function wq(b,c,d){var g,f=a[om>>2];g=f>>2;if(0==(a[c+216>>2]|0)){d=0!=(d|0);a:do{if(d){var e=c+184|0,h=a[e>>2],k=a[h>>2];if(0==(k|0)){return}for(var j=0,z=0;;){if(0==(sP(k)|0)&&(a[(j<<2>>2)+g]=k,j=j+1|0,h=a[e>>2]),z=z+1|0,k=a[h+(z<<2)>>2],0==(k|0)){var p=j;break a}}}else{e=c+176|0;h=a[e>>2];k=a[h>>2];if(0==(k|0)){return}for(z=j=0;;){if(0==(sP(k)|0)&&(a[(j<<2>>2)+g]=k,j=j+1|0,h=a[e>>2]),z=z+1|0,k=a[h+(z<<2)>>2],0==(k|0)){p=j;break a}}}}while(0);if(2<=(p|0)){a[(p<<2>>2)+g]=0;ch(f,p,120);for(c=1;;){p=a[(c<<2>>2)+g];if(0==(p|0)){break}f=a[(c-1<<2>>2)+g];d?(p=p+12|0,f=f+12|0):(p=p+16|0,f=f+16|0);p=a[p>>2];f=a[f>>2];if(0!=(oN(f,p)|0)){break}f=pq(f,p,0);m[f+124|0]=4;gm(b,f);c=c+1|0}}}}function Lx(a,b){return(0==m[b+162|0]<<24>>24?0!=(Ed(a,b|0)|0):0)&1}function Mx(b,c){do{if(1==m[c+162|0]<<24>>24&&1==(a[c+180>>2]|0)&&1==(a[c+188>>2]|0)){for(var d=a[c+184>>2];;){var g=a[d>>2];if(0==m[g+124|0]<<24>>24){break}else{d=g+128|0}}if(0!=(Ed(b,g|0)|0)){return d=1}}}while(0);return 0}function Hx(c){if(0!=(c|0)){for(;;){var d=c+32|0;f[0]=a[c+240>>2]|0;a[d>>2]=b[0];a[d+4>>2]=b[1];c=a[c+168>>2];if(0==(c|0)){break}}}}function Jx(b){var c,d=D[b+244>>1],g=b+246|0;if(d<<16>>16<=D[g>>1]<<16>>16){c=(b+220|0)>>2;for(var d=d<<16>>16,f=a[c];;){var e=0<(a[(f>>2)+(11*d|0)]|0);a:do{if(e){for(var h=0,k=0,j=f;;){var z=a[a[(j+4>>2)+(11*d|0)]+(k<<2)>>2];m[z+164|0]=0;m[z+163|0]=0;a[z+284>>2]=k;if(0<(a[z+196>>2]|0)&0==(h|0)){var p=a[(a[c]>>2)+(11*d|0)],z=p,s=cc,h=fa(12),s=h>>2;a[s]=z;a[s+1]=p;a[s+2]=fa(p*z|0);a[(a[c]+40>>2)+(11*d|0)]=h;z=1}else{z=h}k=k+1|0;p=a[c];s=a[(p>>2)+(11*d|0)];if((k|0)<(s|0)){h=z,j=p}else{break}}if(0!=(z|0)&0<(s|0)){k=0;for(h=p;;){if(j=a[a[(h+4>>2)+(11*d|0)]+(k<<2)>>2],0==m[j+163|0]<<24>>24&&(Tx(b,j),h=a[c]),k=k+1|0,(k|0)>=(a[(h>>2)+(11*d|0)]|0)){v=h;break a}}}else{var v=p}}else{v=f}}while(0);d=d+1|0;if((d|0)>(D[g>>1]<<16>>16|0)){break}else{f=v}}}}function Kx(b){var c;if(0!=m[b+248|0]<<24>>24){var d=D[b+244>>1],g=b+246|0;if(d<<16>>16<=D[g>>1]<<16>>16){c=(b+220|0)>>2;for(var f=b+152|0,e=0,d=d<<16>>16;;){var h=a[c];if(0<(a[(h>>2)+(11*d|0)]|0)){for(var j=0;;){m[a[a[(h+4>>2)+(11*d|0)]+(j<<2)>>2]+163|0]=0;var n=j+1|0,h=a[c];if((n|0)<(a[(h>>2)+(11*d|0)]|0)){j=n}else{break}}j=(n<<2)+4|0}else{j=4}var e=j=0==(e|0)?Cb(j):wb(e,j),h=a[c],z=0<(a[(h>>2)+(11*d|0)]|0);a:do{if(z){for(var p=0,s=0,v=h;;){var t=a[a[(v+4>>2)+(11*d|0)]+(s<<2)>>2],u=t+204|0,w=a[u>>2],v=0<(w|0);b:do{if(v){for(var A=t+200|0,B=0,C=0,y=w;;){var F=a[a[A>>2]+(C<<2)>>2];0>2]&&(B=(0!=(Lx(b,a[F+16>>2])|Mx(b,a[F+16>>2])|0)&1)+B|0,y=a[u>>2]);C=C+1|0;if((C|0)>=(y|0)){var E=B;break b}}}else{E=0}}while(0);u=t+196|0;w=a[u>>2];v=0<(w|0);b:do{if(v){A=t+192|0;C=B=0;for(y=w;;){if(F=a[a[A>>2]+(C<<2)>>2],0>2]&&(B=(0!=(Lx(b,a[F+12>>2])|Mx(b,a[F+12>>2])|0)&1)+B|0,y=a[u>>2]),C=C+1|0,(C|0)>=(y|0)){var I=B;break b}}}else{I=0}}while(0);do{if(0==(I|E|0)){a[e+(p<<2)>>2]=t,u=p+1|0}else{if(0!=m[t+163|0]<<24>>24|0!=(E|0)){u=p}else{u=(p<<2)+e|0;w=Ux(b,t,u,d);v=0==(a[f>>2]&1|0);b:do{if(v&&(A=p-1+w|0,(p|0)<(A|0))){A=(A<<2)+e|0;for(B=u;;){if(C=a[B>>2],a[B>>2]=a[A>>2],a[A>>2]=C,B=B+4|0,A=A-4|0,B>>>0>=A>>>0){break b}}}}while(0);u=w+p|0}}}while(0);s=s+1|0;t=a[c];w=a[(t>>2)+(11*d|0)];if((s|0)<(w|0)){p=u,v=t}else{break}}if(0!=(u|0)&0<(w|0)){p=a[sd>>2];s=0;for(v=t;;){var H=a[e+(s<<2)>>2];a[a[(v+4>>2)+(11*d|0)]+(s<<2)>>2]=H;a[H+240>>2]=(a[(a[c]+4>>2)+(11*d|0)]-a[(a[p+220>>2]+4>>2)+(11*d|0)]>>2)+s|0;var s=s+1|0,H=a[c],J=a[(H>>2)+(11*d|0)];if((s|0)<(J|0)){v=H}else{break}}if(0<(J|0)){p=0;for(s=H;;){v=a[a[(s+4>>2)+(11*d|0)]+(p<<2)>>2]+192|0;A=a[v>>2];if(0==(A|0)){B=s}else{if(C=a[A>>2],0==(C|0)){B=s}else{B=0;y=C;for(C=A;!((a[a[y+12>>2]+240>>2]|0)<(a[a[y+16>>2]+240>>2]|0)&&(yx(y),Nx(b,y),B=B-1|0,C=a[v>>2]),B=B+1|0,y=a[C+(B<<2)>>2],0==(y|0));){}B=a[c]}}p=p+1|0;if((p|0)<(a[(B>>2)+(11*d|0)]|0)){s=B}else{break a}}}}}}while(0);m[a[a[sd>>2]+220>>2]+44*d+33|0]=0;d=d+1|0;if((d|0)>(D[g>>1]<<16>>16|0)){break}}0!=(j|0)&&G(j)}}}function dP(c){var d=a[c+216>>2],e=0==(d|0);a:do{if(!e){for(var g=d;;){var h=g+32|0;a[g+240>>2]=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])&-1;g=a[g+168>>2];if(0==(g|0)){break a}}}}while(0);e=D[c+244>>1];d=c+246|0;if(e<<16>>16<=D[d>>1]<<16>>16){c=c+220|0;for(e=e<<16>>16;!(m[a[a[sd>>2]+220>>2]+44*e+33|0]=0,g=a[c>>2],ch(a[(g+4>>2)+(11*e|0)],a[(g>>2)+(11*e|0)],380),e=e+1|0,(e|0)>(D[d>>1]<<16>>16|0));){}}}function hP(b){var c,d,g,f=D[b+246>>1],e=b+244|0;if(f<<16>>16>=D[e>>1]<<16>>16){g=(b+220|0)>>2;for(var f=f<<16>>16,h=a[g];;){m[h+44*f+32|0]=0;var h=a[g],j=0<(a[(h>>2)+(11*f|0)]-1|0);a:do{if(j){for(var n=0<(f|0),z=f+1|0,p=0,s=h;;){var v=a[(s+4>>2)+(11*f|0)],s=a[v+(p<<2)>>2];d=s>>2;p=p+1|0;v=a[v+(p<<2)>>2];c=v>>2;(a[d+60]|0)<(a[c+60]|0)||sa(rg|0,474,xP|0,Qx|0);if(0==(vq(b,s,v)|0)){if(n){var t=vm(s,a[c+44]),u=vm(v,a[d+44])}else{u=t=0}0<(a[(a[g]>>2)+(11*z|0)]|0)?(c=wm(s,a[c+46])+t|0,d=wm(v,a[d+46])+u|0):(c=t,d=u);(d|0)>(c|0)||yP(b,f,s,v)}s=a[g];if((p|0)>=(a[(s>>2)+(11*f|0)]-1|0)){var w=s;break a}}}else{w=h}}while(0);f=f-1|0;if((f|0)<(D[e>>1]<<16>>16|0)){break}else{h=w}}}}function yP(b,c,d,g){var f,e=m[d+162|0];if(e<<24>>24!=m[g+162|0]<<24>>24){var b=b+220|0,h=a[b>>2],j=a[(h>>2)+(11*c|0)],n=0<(j|0);do{if(n){for(var z=a[(h+4>>2)+(11*c|0)],p=0,s=0,v=0;;){var t=0==m[a[z+(v<<2)>>2]+162|0]<<24>>24&1,u=t+p|0,t=(t^1)+s|0,v=v+1|0;if((v|0)<(j|0)){p=u,s=t}else{break}}z=0==e<<24>>24;if((u|0)<(t|0)){var w=z?d:g}else{var A=z;f=724}}else{A=0==e<<24>>24,f=724}}while(0);724==f&&(w=A?g:d);f=h+44*c+4|0;a:do{if(n){e=a[f>>2];for(u=0;;){var B;B=(a[e+(u<<2)>>2]|0)==(w|0)?u:B;u=u+1|0;if((u|0)>=(j|0)){var C=B,y=f;break a}}}else{y=f}}while(0);B=0==m[w+162|0]<<24>>24&1;f=C;for(n=0;;){e=f-1|0;if(0>=(f|0)){var D=C,F=0;break}if((m[a[a[y>>2]+(e<<2)>>2]+162|0]<<24>>24|0)==(B|0)){f=e,n=n+1|0}else{D=C;F=0;break}}for(;;){D=D+1|0;if((D|0)>=(j|0)){break}if((m[a[a[y>>2]+(D<<2)>>2]+162|0]<<24>>24|0)==(B|0)){F=F+1|0}else{break}}um(d,g);j=a[b>>2];y=a[(j>>2)+(11*c|0)];b=0<(y|0);c=j+44*c+4|0;a:do{if(b){j=a[c>>2];D=C;for(f=0;;){if(D=(a[j+(f<<2)>>2]|0)==(w|0)?f:D,f=f+1|0,(f|0)>=(y|0)){var E=D,G=c;break a}}}else{E=C,G=c}}while(0);C=E;for(w=0;;){c=C-1|0;if(0>=(C|0)){var I=E,H=0;break}if((m[a[a[G>>2]+(c<<2)>>2]+162|0]<<24>>24|0)==(B|0)){C=c,w=w+1|0}else{I=E;H=0;break}}for(;;){E=I+1|0;if((E|0)>=(y|0)){break}if((m[a[a[G>>2]+(E<<2)>>2]+162|0]<<24>>24|0)==(B|0)){I=E,H=H+1|0}else{break}}G=w-H|0;F=n-F|0;((-1<(G|0)?G:-G|0)|0)>((-1<(F|0)?F:-F|0)|0)&&um(d,g)}}function zP(b){var c,d,b=b>>2;if(0<(a[b+51]|0)){d=a[b+50]>>2;var g=a[a[d]+16>>2],f=a[d+1],e=0==(f|0);a:do{if(e){c=g}else{for(var h=1,j=g,n=f;;){if(n=a[n+16>>2],j=(a[n+240>>2]|0)>(a[j+240>>2]|0)?n:j,h=h+1|0,n=a[(h<<2>>2)+d],0==(n|0)){c=j;break a}}}}while(0);c=a[c+244>>2];if(-1>=(c|0)){return 1}a[b+61]=c+1|0;return 0}if(0>=(a[b+49]|0)){return 1}c=a[b+48]>>2;g=a[a[c]+12>>2];f=a[c+1];e=0==(f|0);a:do{if(e){d=g}else{h=1;j=g;for(n=f;;){if(n=a[n+12>>2],j=(a[n+240>>2]|0)<(a[j+240>>2]|0)?n:j,h=h+1|0,n=a[(h<<2>>2)+c],0==(n|0)){d=j;break a}}}}while(0);c=a[d+244>>2];if(0>=(c|0)){return 1}a[b+61]=c-1|0;return 0}function gP(b,c,d){var g,f,e,h=a[pm>>2];f=h>>2;var b=(b+220|0)>>2,j=a[b],n=a[(j+4>>2)+(11*c|0)];if(0>=(a[(j>>2)+(11*c|0)]|0)){var z;return 0}for(var d=(d|0)>(c|0),j=h+4|0,p=0;;){var s=a[n+(p<<2)>>2];g=s>>2;a:do{if(d){var v=s+184|0,t=a[v>>2],u=a[t>>2];if(0==(u|0)){e=778}else{for(var w=0,A=0;;){if(0>1]<<16>>16&&(a[(A<<2>>2)+f]=m[u+100|0]&255|a[a[u+12>>2]+240>>2]<<8,A=A+1|0,t=a[v>>2]),w=w+1|0,u=a[t+(w<<2)>>2],0==(u|0)){var B=A;e=777;break a}}}}else{if(v=s+176|0,t=a[v>>2],u=a[t>>2],0==(u|0)){e=778}else{for(A=w=0;;){if(0>1]<<16>>16&&(a[(A<<2>>2)+f]=m[u+60|0]&255|a[a[u+16>>2]+240>>2]<<8,A=A+1|0,t=a[v>>2]),w=w+1|0,u=a[t+(w<<2)>>2],0==(u|0)){B=A;e=777;break a}}}}}while(0);777==e&&(e=0,0==(B|0)?e=778:2==(B|0)?a[g+61]=(a[j>>2]+a[f]|0)/2&-1:1==(B|0)?a[g+61]=a[f]:(ch(h,B,18),w=(B|0)/2&-1,0!=(B&1|0)?a[g+61]=a[(w<<2>>2)+f]:(s=a[(w<<2>>2)+f],v=a[(B-1<<2>>2)+f]-s|0,w=a[(w-1<<2>>2)+f],A=w-a[f]|0,a[g+61]=(A|0)==(v|0)?(w+s|0)/2&-1:(A*s+w*v|0)/(A+v|0)&-1)));778==e&&(e=0,a[g+61]=-1);p=p+1|0;g=a[b];s=a[(g>>2)+(11*c|0)];if((p|0)>=(s|0)){break}}if(0<(s|0)){e=f=0,h=g}else{return 0}for(;;){if(B=a[n+(f<<2)>>2],0==(a[B+188>>2]|0)&&0==(a[B+180>>2]|0)&&(e=(zP(B)|e&255)&255,h=a[b]),f=f+1|0,(f|0)>=(a[(h>>2)+(11*c|0)]|0)){z=e;break}}return z}function fP(b,c,d,g){var f,e=a[b+220>>2],h=a[(e+4>>2)+(11*c|0)],j=a[(e>>2)+(11*c|0)];if(0<(j|0)){for(var e=0==(d|0),d=0==(g|d|0),n=0,g=(j<<2)+h|0;;){var j=j-1|0,z=h,p=n;a:for(;;){n=z;b:for(;;){if(n>>>0>=g>>>0){break a}for(;;){if(n>>>0>=g>>>0){break a}var s=a[n>>2],v=a[s+244>>2];if(0>(v|0)){n=n+4|0}else{var t=n,u=0;break}}for(;;){n=0==u<<24>>24;for(z=t;;){var w=z+4|0;if(w>>>0>=g>>>0){break a}var A=a[w>>2];f=A>>2;if(n){break}if(0==(a[f+54]|0)){break}else{z=w}}if(0!=(vq(b,s,A)|0)){n=w;continue b}var B=a[f+61];if(-1<(B|0)){break}t=w;u=0==(a[f+54]|0)?u:1}if((v|0)<=(B|0)&((v|0)!=(B|0)|e)){n=w}else{break}}um(s,A);z=w;p=p+1|0}if(0<(j|0)){n=p,g=d?g-4|0:g}else{break}}0!=(p|0)&&(b=a[sd>>2]+220|0,m[a[b>>2]+44*c+33|0]=0,0<(c|0)&&(m[a[b>>2]+44*(c-1)+33|0]=0))}}function Ux(b,c,d,g){m[c+163|0]=1;var f=0<(a[c+196>>2]|0);a:do{if(f){var e=c+192|0,h=a[a[e>>2]>>2];if(0==(h|0)){var j=0}else{for(var n=b,z=0,p=0;;){if(0!=ib[h+164>>2]){var s=h+12|0,v=a[s>>2];0==m[v+162|0]<<24>>24&0==(Ed(n,v|0)|0)||(s=a[s>>2],p=(a[s+216>>2]|0)!=(a[a[h+16>>2]+216>>2]|0)?p:0!=m[s+163|0]<<24>>24?p:Ux(b,s,(p<<2)+d|0,g)+p|0)}z=z+1|0;h=a[a[e>>2]+(z<<2)>>2];if(0==(h|0)){j=p;break a}}}}else{j=0}}while(0);if((a[c+236>>2]|0)==(g|0)){return a[((j<<2)+d|0)>>2]=c,j+1|0}sa(rg|0,1161,AP|0,BP|0);a[((j<<2)+d|0)>>2]=c;return j+1|0}function Tx(b,c){var d,g,f,e,h=a[(a[b+220>>2]+40>>2)+(11*a[c+236>>2]|0)];m[c+163|0]=1;var j=c+164|0;m[j]=1;var n=0<(a[a[b+32>>2]+208>>2]|0),z=c+192|0;f=a[z>>2];if(0!=(f|0)){var p=a[f>>2];if(0!=(p|0)){var s=h|0;f=(h+4|0)>>2;var h=h+8|0,v=0;for(g=p>>2;;){n?0==(Ed(b,a[g+4]|0)|0)?d=v:0==(Ed(b,a[g+3]|0)|0)?d=v:e=842:e=842;if(842==e){e=0;if(0!=ib[g+41]){d=(p+12|0)>>2;g=a[d];var t=(a[g+284>>2]|0)<(a[s>>2]|0);if(1==m[g+164|0]<<24>>24){t||sa(rg|0,933,xm|0,Vx|0);g=p+16|0;var t=a[a[g>>2]+284>>2],u=a[f];(t|0)<(u|0)?g=t:(sa(rg|0,934,xm|0,Wx|0),u=a[f],g=a[a[g>>2]+284>>2]);m[a[h>>2]+g+u*a[a[d]+284>>2]|0]=1;yx(p);v=v-1|0;4!=m[p+124|0]<<24>>24&&Nx(b,p)}else{t||sa(rg|0,942,xm|0,Vx|0),g=p+16|0,t=a[a[g>>2]+284>>2],p=a[f],(t|0)<(p|0)?g=t:(sa(rg|0,943,xm|0,Wx|0),g=a[a[g>>2]+284>>2],p=a[f]),m[a[h>>2]+a[a[d]+284>>2]+p*g|0]=1,d=a[d],0==m[d+163|0]<<24>>24&&Tx(b,d)}}d=v}v=d+1|0;p=a[a[z>>2]+(v<<2)>>2];if(0==(p|0)){break}else{g=p>>2}}}}m[j]=0}function zO(c,d){if(0!=(a[c+216>>2]|0)){Tw(c);Xx(c);0!=m[Wi]<<24>>24&&SN(c);var e;CP(c);e=a[c+216>>2];if(0!=(e|0)){for(e>>=2;;){var g=a[e+57];0!=(g|0)&&Yx(c,g);g=a[e+58];0!=(g|0)&&Yx(c,g);var g=a[e+52],h=0==(g|0);a:do{if(!h){for(var j=0;;){if(0==(a[g+(j<<2)>>2]|0)){break a}else{j=j+1|0}}}}while(0);e=a[e+42];if(0==(e|0)){break}else{e>>=2}}}0!=(RO(c)|0)&&Xx(c);DP(a[c+216>>2]);EP(c);FP(c);0<(a[c+208>>2]|0)&&(GP(c),Zx(c),HP(c),$x(c));g=a[c+44>>2];3==(a[g+84>>2]|0)&&(e=g+64|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),g=g+72|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),1>2]&1|0)?e:g,Zc(a[c+264>>2],a[c+268>>2],65535>e?e:65535,1e3)));0!=(Oo(c,2,IP(c))|0)&&(JP(c),0!=(Oo(c,2,IP(c))|0)&&sa(by|0,133,KP|0,LP|0));e=a[c+220>>2];h=D[c+244>>1];g=c+246|0;j=D[g>>1];if(h<<16>>16<=j<<16>>16){for(var h=h<<16>>16,l=j;;){j=e+44*h|0;if(0<(a[j>>2]|0)){for(var l=e+44*h+4|0,k=0;;){var n=a[a[l>>2]+(k<<2)>>2],z=n+236|0,n=n+32|0;f[0]=a[z>>2]|0;a[n>>2]=b[0];a[n+4>>2]=b[1];a[z>>2]=h;k=k+1|0;if((k|0)>=(a[j>>2]|0)){break}}j=D[g>>1]}else{j=l}h=h+1|0;if((h|0)>(j<<16>>16|0)){break}else{l=j}}}MP(c,d);NP(c)}}function Xx(c){var d,e,g,h,j=a[c+220>>2];h=j>>2;g=(c+244|0)>>1;var l=D[g];e=(c+246|0)>>1;var k=D[e],n=l<<16>>16>k<<16>>16;a:do{if(!n){for(var z=l<<16>>16,p=k;;){var s=j+44*z|0;if(0<(a[s>>2]|0)){for(var p=j+44*z+4|0,v=j+44*z+28|0,t=j+44*z+20|0,u=j+44*z+24|0,w=j+44*z+16|0,A=0;;){var B=a[a[p>>2]+(A<<2)>>2],C=B+96|0,C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),C=(((0>C?C-.5:C+.5)&-1)+1|0)/2&-1,y=a[B+208>>2],F=0==(y|0);b:do{if(F){var E=C}else{if(d=a[y>>2],0==(d|0)){E=C}else{var G=C,I=0;for(d>>=2;;){if((a[d+4]|0)==(a[d+3]|0)&&(d=a[d+27],0!=(d|0)&&(G|=0,d=d+32|0,d=.5*(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),G=(G>d?G:d)&-1)),I=I+1|0,d=a[y+(I<<2)>>2],0==(d|0)){E=G;break b}else{d>>=2}}}}}while(0);(a[v>>2]|0)<(E|0)&&(a[t>>2]=E,a[v>>2]=E);(a[u>>2]|0)<(E|0)&&(a[w>>2]=E,a[u>>2]=E);y=a[B+216>>2];0!=(y|0)&&(C=(y|0)==(c|0)?0:8,B=B+236|0,F=a[B>>2],(F|0)==(D[y+244>>1]<<16>>16|0)?(F=y+160|0,I=a[F>>2],G=C+E|0,a[F>>2]=(I|0)>(G|0)?I:G,B=a[B>>2]):B=F,(B|0)==(D[y+246>>1]<<16>>16|0)&&(B=y+156|0,y=a[B>>2],C=C+E|0,a[B>>2]=(y|0)>(C|0)?y:C));A=A+1|0;if((A|0)>=(a[s>>2]|0)){break}}s=D[e]}else{s=p}z=z+1|0;if((z|0)>(s<<16>>16|0)){break a}else{p=s}}}}while(0);j=cy(c);n=D[e]<<16>>16;l=a[a[h+(11*n|0)+1]>>2]+40|0;f[0]=a[h+(11*n|0)+4]|0;a[l>>2]=b[0];a[l+4>>2]=b[1];s=n-1|0;z=D[g];if((s|0)<(z<<16>>16|0)){var H=0,J=z}else{l=c+260|0;k=0;E=n;for(n=s;!(J=a[h+(11*n|0)+6]+a[h+(11*E|0)+7]+a[l>>2]|0,H=a[h+(11*E|0)+5]+a[h+(11*n|0)+4]+8|0,H=(J|0)>(H|0)?J:H,0<(a[h+(11*n|0)]|0)?(J=a[a[h+(11*E|0)+1]>>2]+40|0,J=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0])+(H|0),E=a[a[h+(11*n|0)+1]>>2]+40|0,f[0]=J,a[E>>2]=b[0],a[E+4>>2]=b[1],J=D[g]):J=z,H=(k|0)>(H|0)?k:H,z=n-1|0,(z|0)<(J<<16>>16|0));){k=H,E=n,n=z,z=J}H|=0}l=c+284|0;k=0==m[l]<<24>>24;a:do{if(!k&&(E=D[e]<<16>>16,n=E-1|0,(n|0)>=(J<<16>>16|0))){for(z=J;;){if(0<(a[h+(11*n|0)]|0)&&(E=a[a[h+(11*E|0)+1]>>2]+40|0,E=(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0])+H,z=a[a[h+(11*n|0)+1]>>2]+40|0,f[0]=E,a[z>>2]=b[0],a[z+4>>2]=b[1],z=D[g]),s=n-1|0,(s|0)<(z<<16>>16|0)){break a}else{E=n,n=s}}}}while(0);0!=(j|0)&&0!=(a[c+152>>2]&1|0)&&dy(c,m[l]&255);c=a[c+216>>2];if(0!=(c|0)){for(;!(e=a[a[h+(11*a[c+236>>2]|0)+1]>>2]+40|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),g=c+40|0,f[0]=e,a[g>>2]=b[0],a[g+4>>2]=b[1],c=a[c+168>>2],0==(c|0));){}}}function IP(a){var b=V(a|0,OP|0);return 0==(b|0)?2147483647:a=wg(b,xc)*Vh(a)&-1}function JP(b){var c,d=D[b+244>>1],g=b+246|0,f=D[g>>1];if(d<<16>>16<=f<<16>>16){for(var e=b+220|0,d=d<<16>>16;;){var h=a[e>>2],j=a[(h>>2)+(11*d|0)],n=h+44*d+4|0,z=0,p=0;a:for(;;){if((z|0)>=(j|0)){c=957;break}var s=a[a[n>>2]+(z<<2)>>2],v=a[s+256>>2],t=0==(v|0);b:do{if(!t){for(var u=0;;){var w=a[v+(u<<2)>>2];if(0==(w|0)){break b}if((a[a[w+12>>2]+236>>2]|0)>(d|0)){var A=f;break a}if((a[a[w+16>>2]+236>>2]|0)>(d|0)){A=f;break a}else{u=u+1|0}}}}while(0);v=a[s+248>>2];t=0==(v|0);b:do{if(!t){for(u=0;;){w=a[v+(u<<2)>>2];if(0==(w|0)){break b}if((a[a[w+16>>2]+236>>2]|0)>(d|0)){A=f;break a}if((a[a[w+12>>2]+236>>2]|0)>(d|0)){A=f;break a}else{u=u+1|0}}}}while(0);z=z+1|0;p=s}957==c&&(c=0,0==(p|0)?A=f:(A=a[a[n>>2]>>2],h=a[a[(h+4>>2)+(11*(((d|0)<(f<<16>>16|0)?1:-1)+d)|0)]>>2],0==(h|0)&&sa(by|0,110,PP|0,QP|0),f=Lf(b),m[f+162|0]=2,Zc(f,A,0,0),Zc(f,h,0,0),A=a[A+236>>2],h=a[h+236>>2],a[f+236>>2]=(A|0)<(h|0)?A:h,A=D[g>>1]));d=d+1|0;if((d|0)>(A<<16>>16|0)){break}else{f=A}}}}function MP(c,d){var e,g,h;RP(c,c);var j=0>1]<<16>>16;a:do{if(j){var l=c+44|0,k=a[l>>2];e=a[k+84>>2];if(0!=(e|0)){h=(c+68|0)>>2;g=c+52|0;var n=(b[0]=a[h],b[1]=a[h+1],f[0])-(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])&-1;g=(c+76|0)>>2;var m=c+60|0,p=(b[0]=a[g],b[1]=a[g+1],f[0])-(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0])&-1,m=c+152|0,s=0==(a[m>>2]&1|0),v=s?p:n,n=s?n:p;4==(e|0)?(e=SP(c),l=a[l>>2]):(e=2==(e|0)&1,l=k);do{if(0==e<<24>>24){if(k=a[l+84>>2],5==(k|0)){k=l+64|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);if(0>=k){break a}k/=(b[0]=a[h],b[1]=a[h+1],f[0]);p=l+72|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])/(b[0]=a[g],b[1]=a[g+1],f[0]);if(!(1>2],b[1]=a[k+4>>2],f[0]),s=(v|0)/(n|0),s>2],b[1]=a[k+4>>2],f[0]);if(0>=k){break a}p=k/(n|0);k=l+72|0;s=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])/(v|0);1>p|1>s?p>2]&1|0))?p:k;g=g?k:p;m=a[c+216>>2];v=0==(m|0);b:do{if(!v){for(n=m;;){if(e=(n+32|0)>>2,l=(b[0]=a[e],b[1]=a[e+1],f[0])*g,f[0]=(0>l?l-.5:l+.5)&-1|0,a[e]=b[0],a[e+1]=b[1],e=(n+40|0)>>2,l=(b[0]=a[e],b[1]=a[e+1],f[0])*h,f[0]=(0>l?l-.5:l+.5)&-1|0,a[e]=b[0],a[e+1]=b[1],n=a[n+168>>2],0==(n|0)){break b}}}}while(0);TP(c,g,h)}}}while(0);0!=(d|0)&&UP(c,d)}function NP(b){var b=(b+216|0)>>2,c=a[b];do{if(0==(c|0)){var d=0,g=0}else{for(d=c;;){var g=d+184|0,f=g|0,e=a[f>>2],h=a[e>>2],j=0==(h|0);a:do{if(j){var n=e}else{for(var z=0,p=h;;){G(p|0);var z=z+1|0,s=a[f>>2],p=a[s+(z<<2)>>2];if(0==(p|0)){n=s;break a}}}}while(0);0!=(n|0)&&G(n);f=d+176|0;e=a[f>>2];0!=(e|0)&&G(e);e=d+256|0;h=a[e+4>>2];a[g>>2]=a[e>>2];a[g+4>>2]=h;g=d+248|0;e=a[g+4>>2];a[f>>2]=a[g>>2];a[f+4>>2]=e;d=a[d+168>>2];if(0==(d|0)){break}}d=0;g=a[b]}}while(0);a:for(;;){n=0==(d|0);c=d+168|0;for(f=g;;){if(0==(f|0)){break a}e=a[f+168>>2];if(2!=m[f+162|0]<<24>>24){d=f;g=e;continue a}n?a[b]=e:a[c>>2]=e;G(f|0);f=e}}a[a[b]+172>>2]=0}function Zc(b,c,d,g){var f=fa(184);a[f+16>>2]=b;a[f+12>>2]=c;65535>1]=(0>d?d-.5:d+.5)&65535;ib[f+164>>2]=g|0;xx(f);return f}function VP(c){la(1,WP|0,(j=h,h+=12,f[0]=c,a[j>>2]=b[0],a[j+4>>2]=b[1],a[j+8>>2]=65535,j));Pe()}function fm(c,d){var e=m[c+96|0];if(e<<24>>24!=m[d+96|0]<<24>>24){return 0}var g=c+68|0,h=d+68|0;if((b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])==(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])){if(g=c+76|0,h=d+76|0,!((b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])==(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])|0==e<<24>>24)){return 0}}else{if(0!=e<<24>>24){return 0}}e=c+28|0;g=d+28|0;if((b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])==(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])){if(e=c+36|0,g=d+36|0,(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])==(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])){return 1}}e=0==m[c+56|0]<<24>>24;return e&1}function XP(c,d,e,g,h){var j=c|0;f[0]=d-g;a[j>>2]=b[0];a[j+4>>2]=b[1];c=c+8|0;f[0]=e-h;a[c>>2]=b[0];a[c+4>>2]=b[1]}function YP(c,d){var e,g=(a[c+32>>2]|0)==(c|0);a:do{if(g){var h=D[c+244>>1],j=D[c+246>>1],l=h<<16>>16>j<<16>>16;b:do{if(l){var k=-2147483647,n=2147483647}else{for(var z=a[c+220>>2],p=j<<16>>16,s=-2147483647,v=2147483647,t=h<<16>>16;;){var u=a[(z>>2)+(11*t|0)];do{if(0==(u|0)){e=v;var w=s}else{if(e=a[(z+4>>2)+(11*t|0)]>>2,w=a[e],0==(w|0)){e=v,w=s}else{var A=m[w+162|0],B=0!=A<<24>>24&1<(u|0);c:do{if(B){for(var y=1;;){var F=a[(y<<2>>2)+e],y=y+1|0,E=m[F+162|0];if(!(0!=E<<24>>24&(y|0)<(u|0))){var G=F,H=E;break c}}}else{G=w,H=A}}while(0);if(0!=H<<24>>24){e=v,w=s}else{w=G+32|0;A=G+104|0;w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])-(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])&-1|0;w=v>2)+e];B=0==m[A+162|0]<<24>>24;c:do{if(B){var I=A}else{for(F=u-2|0;;){if(y=a[(F<<2>>2)+e],0==m[y+162|0]<<24>>24){I=y;break c}else{F=F-1|0}}}}while(0);e=I+32|0;A=I+112|0;A=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])&-1|0;e=w;w=s>A?s:A}}}}while(0);t=t+1|0;if((t|0)>(p|0)){k=w;n=e;break b}else{s=w,v=e}}}}while(0);l=a[c+208>>2];if(1>(l|0)){var J=n,O=k,K=j,L=h}else{z=a[c+212>>2];p=k;v=n;for(s=1;;){if(t=a[z+(s<<2)>>2],u=t+52|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])-8&-1|0,v=v>2],b[1]=a[t+4>>2],f[0])+8&-1|0,p=p>t?p:t,s=s+1|0,(s|0)>(l|0)){J=v;O=p;K=j;L=h;break a}}}}else{J=a[a[c+264>>2]+236>>2]|0,O=a[a[c+268>>2]+236>>2]|0,K=D[c+246>>1],L=D[c+244>>1]}}while(0);g=a[d+220>>2];K=a[a[(g+4>>2)+(11*(K<<16>>16)|0)]>>2]+40|0;K=(b[0]=a[K>>2],b[1]=a[K+4>>2],f[0])-(a[c+156>>2]|0);L=a[a[(g+4>>2)+(11*(L<<16>>16)|0)]>>2]+40|0;L=(b[0]=a[L>>2],b[1]=a[L+4>>2],f[0])+(a[c+160>>2]|0);g=c+52|0;f[0]=J;a[g>>2]=b[0];a[g+4>>2]=b[1];J=c+60|0;f[0]=K;a[J>>2]=b[0];a[J+4>>2]=b[1];J=c+68|0;f[0]=O;a[J>>2]=b[0];a[J+4>>2]=b[1];O=c+76|0;f[0]=L;a[O>>2]=b[0];a[O+4>>2]=b[1]}function CP(b){var c=D[b+244>>1],d=b+246|0;if(c<<16>>16<=D[d>>1]<<16>>16){b=(b+220|0)>>2;for(c=c<<16>>16;;){var g=a[b],f=a[(g>>2)+(11*c|0)],e=0<(f|0);a:do{if(e){for(var h=0,j=0,n=g;;){n=a[a[(n+4>>2)+(11*c|0)]+(j<<2)>>2];a[n+240>>2]=h;var h=(6==m[n+165|0]<<24>>24?a[n+220>>2]:1)+h|0,j=j+1|0,n=a[b],z=a[(n>>2)+(11*c|0)];if((j|0)>=(z|0)){var p=h,s=n,v=z;break a}}}else{p=0,s=g,v=f}}while(0);if((p|0)>(v|0)){g=a[(s+4>>2)+(11*c|0)];g=0==(g|0)?Cb((p<<2)+4|0):wb(g,(p<<2)+4|0);a[(a[b]+4>>2)+(11*c|0)]=g;g=a[b];f=a[(g>>2)+(11*c|0)];e=0<(f|0);a:do{if(e){h=f;for(j=g;;){if(h=h-1|0,j=a[(j+4>>2)+(11*c|0)],n=a[j+(h<<2)>>2],a[j+(a[n+240>>2]<<2)>>2]=n,j=a[b],0>=(h|0)){var t=j;break a}}}else{t=g}}while(0);a[(t>>2)+(11*c|0)]=p;a[a[(a[b]+4>>2)+(11*c|0)]+(p<<2)>>2]=0}c=c+1|0;if((c|0)>(D[d>>1]<<16>>16|0)){break}}}}function Yx(c,d){var e,g,j=d>>2,m=h;h+=24;var l=m+8,k=m+16;if(2<=(a[j+55]|0)){var n=d+32|0,z=d+104|0,p=d+40|0;ZP(m,d,(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])-(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])&-1,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])&-1);n=a[m>>2];z=a[m+4>>2];if(0<(a[j+47]|0)){if(p=a[j+60],g=Og(c,a[a[a[j+46]>>2]+12>>2]),0!=(g|0)){for(var k=l|0,j=l+4|0,s=z,v=n,z=p+1|0,n=g;;){p=n;g=n+16|0;e=a[g>>2];if((e|0)!=(d|0)&&(Zb(e)|0)==(d|0)){$P(l,a[g>>2],v,s,z);v=a[k>>2];s=a[j>>2];NO(p);g=(n+12|0)>>2;e=(a[g]+24|0)>>2;var t=a[e+38];e=0==(t|0)?Cb((a[e+39]<<2)+8|0):wb(t,(a[e+39]<<2)+8|0);a[a[g]+176>>2]=e;e=a[g]+180|0;t=a[e>>2];a[e>>2]=t+1|0;a[a[a[g]+176>>2]+(t<<2)>>2]=p;p=a[g]+24|0;a[a[p+152>>2]+(a[p+156>>2]<<2)>>2]=0;z=z+1|0}p=v;n=Ql(c,n);if(0==(n|0)){break}else{v=p}}}}else{if(p=a[j+60],g=Ib(c,a[a[a[j+44]>>2]+16>>2]),0!=(g|0)){l=k|0;j=k+4|0;s=z;v=n;z=p+1|0;for(n=g;!(p=n,g=n+12|0,e=a[g>>2],(e|0)!=(d|0)&&(Zb(e)|0)==(d|0)&&($P(k,a[g>>2],v,s,z),v=a[l>>2],s=a[j>>2],NO(p),g=(n+16|0)>>2,e=(a[g]+24|0)>>2,t=a[e+40],e=0==(t|0)?Cb((a[e+41]<<2)+8|0):wb(t,(a[e+41]<<2)+8|0),a[a[g]+184>>2]=e,e=a[g]+188|0,t=a[e>>2],a[e>>2]=t+1|0,a[a[a[g]+184>>2]+(t<<2)>>2]=p,p=a[g]+24|0,a[a[p+160>>2]+(a[p+164>>2]<<2)>>2]=0,z=z+1|0),p=v,n=yb(c,n),0==(n|0));){v=p}}}}h=m}function ZP(c,d,e,g){var h=d+20|0;et(d,a[a[h>>2]+152>>2]&1);var j=d+40|0;f[0]=g|0;a[j>>2]=b[0];a[j+4>>2]=b[1];j=d+104|0;e=(e|0)+(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);j=d+32|0;f[0]=e;a[j>>2]=b[0];a[j+4>>2]=b[1];d=d+112|0;a[c>>2]=e+(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])+a[a[h>>2]+256>>2]&-1;a[c+4>>2]=g}function $P(b,c,d,g,e){var f=a[c+20>>2],h=Zb(c);if((h|0)!=(c|0)){var j;(h|0)==(c|0)&&sa(qg|0,220,ey|0,aQ|0);var n=c+168|0;0!=(a[n>>2]|0)&&sa(qg|0,221,ey|0,bQ|0);j=(h+168|0)>>2;a[n>>2]=a[j];n=a[j];0!=(n|0)&&(a[n+172>>2]=c);n=c+172|0;a[n>>2]=h;a[j]=c}a[c+240>>2]=e;h=a[h+236>>2];a[c+236>>2]=h;a[a[(a[f+220>>2]+4>>2)+(11*h|0)]+(e<<2)>>2]=c;ZP(b,c,d,g)}function RP(b,c){var d=b+208|0;if(1<=(a[d>>2]|0)){for(var g=b+212|0,e=1;!(RP(a[a[g>>2]+(e<<2)>>2],c),e=e+1|0,(e|0)>(a[d>>2]|0));){}}YP(b,c)}function SP(c){var d,e=h;h+=32;var g=e+16;d=(c+44|0)>>2;var j=a[d],m=j+48|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),l=j+56|0,k=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);if(.001>m|.001>k){return h=e,0}l=j+32|0;l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);j=j+40|0;j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);XP(e,m,k,l,j);m=e|0;k=e+8|0;XP(g,(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),l,j);m=g|0;m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);g=g+8|0;l=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=c+68|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);c=c+76|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);j=m/g;k=l/c;if(!(1>j|1>k)){return h=e,0}j=j>2]=b[0];a[j+4>>2]=b[1];d=a[d]+72|0;f[0]=c*l;a[d>>2]=b[0];a[d+4>>2]=b[1];h=e;return 1}function TP(c,d,e){var g;g=c+208|0;var h=1>(a[g>>2]|0);a:do{if(!h){for(var j=c+212|0,l=1;;){if(TP(a[a[j>>2]+(l<<2)>>2],d,e),l=l+1|0,(l|0)>(a[g>>2]|0)){break a}}}}while(0);g=(c+52|0)>>2;h=(b[0]=a[g],b[1]=a[g+1],f[0])*d;f[0]=h;a[g]=b[0];a[g+1]=b[1];g=(c+60|0)>>2;h=(b[0]=a[g],b[1]=a[g+1],f[0])*e;f[0]=h;a[g]=b[0];a[g+1]=b[1];g=(c+68|0)>>2;d*=(b[0]=a[g],b[1]=a[g+1],f[0]);f[0]=d;a[g]=b[0];a[g+1]=b[1];c=(c+76|0)>>2;e*=(b[0]=a[c],b[1]=a[c+1],f[0]);f[0]=e;a[c]=b[0];a[c+1]=b[1]}function UP(c,d){var e=h,g=c+68|0,q=c+52|0,q=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),g=c+76|0,y=c+60|0,y=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),g=q/y;if(0!=m[ld]<<24>>24){Va(a[oa>>2],dQ|0,(j=h,h+=16,f[0]=g,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=q*y/1e4,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));q=a[oa>>2];y=ra(c);if(0==(y|0)){var l=0}else{for(var k=0;;){var n=Ib(c,y),z=0==(n|0);b:do{if(z){var p=k}else{for(var s=k,v=n;;){var t=a[a[v+12>>2]+236>>2],u=a[a[v+16>>2]+236>>2];(t|0)!=(u|0)&&(t=t-u|0,s=s-1+(-1<(t|0)?t:-t|0)|0);v=yb(c,v);if(0==(v|0)){p=s;break b}}}}while(0);y=ba(c,y);if(0==(y|0)){l=p;break}else{k=p}}}Va(q,eQ|0,(j=h,h+=4,a[j>>2]=l,j))}l=d|0;l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);if(g>1.1*l){a[d+24>>2]=l*(a[d+20>>2]-a[d+16>>2]|0)/g&-1}else{if(p=d+24|0,g>.8*l){a[p>>2]=0}else{a[p>>2]=-1;if(0==m[ld]<<24>>24){h=e;return}Lc(fQ|0,34,1,a[oa>>2])}}0!=m[ld]<<24>>24&&Va(a[oa>>2],gQ|0,(j=h,h+=4,a[j>>2]=a[d+24>>2],j));h=e}function hQ(c,d){var e,g,h,j,l=a[c+32>>2];j=a[l+220>>2]>>2;var k=D[c+246>>1]<<16>>16,n=D[c+244>>1]<<16>>16,m=a[j+(11*n|0)+5];h=(c+160|0)>>2;var p=a[h];e=m-p|0;var s=a[j+(11*k|0)+4];g=(c+156|0)>>2;var v=a[g],t=s-v|0;if((t+e|0)<(d|0)){m=k-n|0;m=(m+(d+1)|0)/(m+2|0)&-1;e=(D[l+246>>1]<<16>>16)-1|0;l=l+244|0;s=D[l>>1];if((e|0)<(s<<16>>16|0)){j=p}else{v=m;p=e;for(e=s;!(0<(a[j+(11*p|0)]|0)&&(e=(a[a[j+(11*p|0)+1]>>2]+40|0)>>2,s=(b[0]=a[e],b[1]=a[e+1],f[0])+(v|0),f[0]=s,a[e]=b[0],a[e+1]=b[1],e=D[l>>1]),p=p-1|0,(p|0)<(e<<16>>16|0));){v=v+m|0}j=a[h];v=a[g]}a[h]=j+m|0;a[g]=v+m|0}else{j=(d+1|0)/2&-1,(e|0)>(t|0)?(j|0)>(t|0)?(a[g]=s,a[h]=d-t+p|0):(a[g]=j+v|0,a[h]=d-j+p|0):(j|0)>(e|0)?(a[h]=m,a[g]=d-e+v|0):(a[h]=j+p|0,a[g]=d-j+v|0)}}function iQ(c,d){var e,g,h,j,l=a[c+32>>2];g=a[l+220>>2]>>2;var k=D[c+246>>1];e=k<<16>>16;var n=D[c+244>>1],m=n<<16>>16,p=(d+1|0)/2&-1;j=(c+156|0)>>2;var s=a[j]+p-a[g+(11*e|0)+4]|0;if(0<(s|0)){k=k<<16>>16>16;a:do{if(!k){for(var n=s|0,v=e;;){if(0<(a[g+(11*v|0)]|0)){h=(a[a[g+(11*v|0)+1]>>2]+40|0)>>2;var t=(b[0]=a[h],b[1]=a[h+1],f[0])+n;f[0]=t;a[h]=b[0];a[h+1]=b[1]}h=v-1|0;if((h|0)<(m|0)){break a}else{v=h}}}}while(0);e=a[c+160>>2];s=d-p+s+e-a[g+(11*m|0)+5]|0}else{e=a[c+160>>2],s=d-p+e-a[g+(11*m|0)+5]|0}if(0<(s|0)){k=m-1|0;l=l+244|0;n=D[l>>1];if((k|0)<(n<<16>>16|0)){g=e,l=c+160|0}else{m=s|0;s=k;for(e=n;!(0<(a[g+(11*s|0)]|0)&&(e=(a[a[g+(11*s|0)+1]>>2]+40|0)>>2,k=(b[0]=a[e],b[1]=a[e+1],f[0])+m,f[0]=k,a[e]=b[0],a[e+1]=b[1],e=D[l>>1]),s=s-1|0,(s|0)<(e<<16>>16|0));){}l=c+160|0;g=a[l>>2]}m=(d-p|0)+g|0;a[l>>2]=m}else{g=(c+160|0)>>2,m=(d-p|0)+e|0,a[g]=m}g=a[j];p=g+p|0;a[j]=p}function cy(c){var d,e,g=c+32|0,h=a[g>>2],j=a[h+220>>2];e=(c+156|0)>>2;var l=a[e];d=(c+160|0)>>2;var k=a[d],n=c+208|0;if(1>(a[n>>2]|0)){var n=k,m=l,p=0,g=h}else{for(var h=c+212|0,s=c+246|0,v=c+244|0,t=1,u=0;;){var w=a[a[h>>2]+(t<<2)>>2],p=cy(w)|u;D[w+246>>1]<<16>>16==D[s>>1]<<16>>16?(m=a[w+156>>2]+8|0,m=(l|0)>(m|0)?l:m):m=l;D[w+244>>1]<<16>>16==D[v>>1]<<16>>16?(w=a[w+160>>2]+8|0,w=(k|0)>(w|0)?k:w):w=k;t=t+1|0;if((t|0)>(a[n>>2]|0)){break}else{k=w,l=m,u=p}}n=w;g=a[g>>2]}if((g|0)==(c|0)){return a[e]=m,a[d]=n,p}0==(a[c+48>>2]|0)?(a[e]=m,d=a[d]=n,e=m,g=p):(0==(a[g+152>>2]&1|0)?(p=c+92|0,g=c+124|0,p=m+(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])&-1,g=n+(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])&-1):(p=m,g=n),a[e]=p,d=a[d]=g,e=p,g=1);p=j+44*(D[c+244>>1]<<16>>16)+20|0;n=a[p>>2];a[p>>2]=(n|0)>(d|0)?n:d;c=j+44*(D[c+246>>1]<<16>>16)+16|0;j=a[c>>2];a[c>>2]=(j|0)>(e|0)?j:e;return g}function dy(c,d){var e,g,h;h=(c+32|0)>>2;var j=a[h],l=a[j+220>>2];g=(c+156|0)>>2;var k=a[g];e=(c+160|0)>>2;var n=a[e],m=c+208|0;if(1>(a[m>>2]|0)){var m=k,p=n}else{for(var p=c+212|0,j=c+246|0,s=c+244|0,v=1;;){var t=a[a[p>>2]+(v<<2)>>2];dy(t,d);if(D[t+246>>1]<<16>>16==D[j>>1]<<16>>16){var u=a[t+156>>2]+8|0,u=(k|0)>(u|0)?k:u}else{u=k}D[t+244>>1]<<16>>16==D[s>>1]<<16>>16?(t=a[t+160>>2]+8|0,t=(n|0)>(t|0)?n:t):t=n;v=v+1|0;if((v|0)>(a[m>>2]|0)){break}else{k=u,n=t}}m=u;p=t;j=a[h]}a[g]=m;a[e]=p;(j|0)!=(c|0)&&0!=(a[c+48>>2]|0)&&(j=c+140|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),s=c+108|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),u=a[a[(l+4>>2)+(11*(D[c+244>>1]<<16>>16)|0)]>>2]+40|0,v=a[a[(l+4>>2)+(11*(D[c+246>>1]<<16>>16)|0)]>>2]+40|0,m=((j>s?j:s)&-1)-(p+m)-((b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])-(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0])&-1)|0,0<(m|0)&&(0==(d|0)?iQ(c,m):hQ(c,m)));(a[h]|0)!=(c|0)&&(h=l+44*(D[c+244>>1]<<16>>16)+20|0,m=a[h>>2],e=a[e],a[h>>2]=(m|0)>(e|0)?m:e,l=l+44*(D[c+246>>1]<<16>>16)+16|0,e=a[l>>2],g=a[g],a[l>>2]=(e|0)>(g|0)?e:g)}function DP(b){if(0!=(b|0)){for(var c=b,b=c>>2;;){var d=c+176|0,g=d,e=c+248|0,f=a[g>>2],g=a[g+4>>2];a[e>>2]=f;a[e+4>>2]=g;var h=e=c+184|0,c=c+256|0,g=a[h>>2],h=a[h+4>>2];a[c>>2]=g;a[c+4>>2]=h;c=e|0;for(e=0;0!=(a[g+(e<<2)>>2]|0);){e=e+1|0}d|=0;for(g=0;0!=(a[f+(g<<2)>>2]|0);){g=g+1|0}a[b+45]=0;a[d>>2]=fa((g+e<<2)+16|0);a[b+47]=0;a[c>>2]=fa(16);b=a[b+42];if(0==(b|0)){break}else{c=b,b=c>>2}}}}function EP(c){var d,e,g,j,y=h;h+=8;var l;j=y>>2;var k=a[c+220>>2],n=0==(m[c+149|0]&1)<<24>>24;g=(c+256|0)>>2;var z=a[g];a[j]=z;a[j+1]=n?z:5;n=c+246|0;z=D[c+244>>1]<<16>>16;a:for(;;){if((z|0)>(D[n>>1]<<16>>16|0)){l=1254;break}c=(k+44*z+4|0)>>2;a[a[a[c]>>2]+236>>2]=0;var p=k+44*z|0,s=a[((z&1)<<2>>2)+j]|0,v=0,t=0;b:for(;(t|0)<(a[p>>2]|0);){var u=a[a[c]+(t<<2)>>2];e=u>>2;d=(u+112|0)>>2;var w=(b[0]=a[d],b[1]=a[d+1],f[0]);a[e+61]=w&-1;if(0<(a[e+53]|0)){var A=a[e+52],B=a[A>>2],C=0==(B|0);c:do{if(C){var F=0}else{for(var E=0,G=0,H=B;;){if(E=(a[H+16>>2]|0)==(a[H+12>>2]|0)?HQa(H)+E|0:E,G=G+1|0,H=a[A+(G<<2)>>2],0==(H|0)){F=E;break c}}}}while(0);w+=F|0;f[0]=w;a[d]=b[0];a[d+1]=b[1]}A=w;d=t+1|0;w=a[a[c]+(d<<2)>>2];0==(w|0)?w=v:(B=w+104|0,A=A+(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0])+s,Zc(u,w,A,0),A=v+A&-1,a[w+236>>2]=A,w=A|0);A=a[e+32];0!=(A|0)&&(e=a[e+64],B=a[e>>2],C=a[e+4>>2],e=(E=(a[a[B+12>>2]+240>>2]|0)>(a[a[C+12>>2]+240>>2]|0))?B:C,E=E?C:B,B=((D[A+178>>1]&65535)*a[g]|0)/2&-1|0,C=a[E+12>>2],E=a[E+16>>2],0==(fy(E,C)|0)&&(G=E+104|0,H=C+112|0,Zc(C,E,(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0])+(B+(b[0]=a[H>>2],b[1]=a[H+4>>2],f[0]))&-1|0,ib[A+164>>2]&-1)),C=a[e+16>>2],e=a[e+12>>2],0==(fy(e,C)|0)&&(E=e+104|0,G=C+112|0,Zc(C,e,(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0])+(B+(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0]))&-1|0,ib[A+164>>2]&-1)));e=u+196|0;u=u+192|0;for(A=0;;){if((A|0)>=(a[e>>2]|0)){v=w;t=d;continue b}var B=a[a[u>>2]+(A<<2)>>2],E=a[B+16>>2],G=a[B+12>>2],C=(H=(a[E+240>>2]|0)<(a[G+240>>2]|0))?E:G,E=H?G:E,G=C+112|0,H=E+104|0,G=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0])+(b[0]=a[H>>2],b[1]=a[H+4>>2],f[0]),H=a[g],I=(D[B+178>>1]&65535)*H+G&-1,J=Zh(C,E);do{if(0==(J|0)){0==(a[B+108>>2]|0)&&Zc(C,E,I|0,ib[B+164>>2]&-1)}else{var K=I|0,L=G+(H|0),N=B+144|0,N=(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]),Q=0>N,K=(K>L+((Q?N-.5:N+.5)&-1|0)?K:L+((Q?N-.5:N+.5)&-1|0))&-1;if(65535<(K|0)){l=1248;break a}L=J+178|0;N=D[L>>1]&65535;D[L>>1]=((N|0)>(K|0)?N:K)&65535}}while(0);A=A+1|0}}z=z+1|0}1254==l?h=y:1248==l&&VP(K|0)}function FP(c){var d=a[c+216>>2];if(0!=(d|0)){for(;;){var e=d+256|0,g=a[e>>2],h=0==(g|0);a:do{if(!h){var j=a[g>>2];if(0!=(j|0)){for(var l=0,k=j;;){j=Lf(c);m[j+162|0]=2;var n=k+68|0,z=k+28|0,z=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])-(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])&-1,p=0<(z|0),n=p?0:-z|0,z=p?z:0,p=k+16|0,s=k+164|0;Zc(j,a[p>>2],z+1|0,ib[s>>2]&-1);k=k+12|0;Zc(j,a[k>>2],n+1|0,ib[s>>2]&-1);z=a[a[p>>2]+236>>2]-z-1|0;k=a[a[k>>2]+236>>2]-n-1|0;a[j+236>>2]=(z|0)<(k|0)?z:k;l=l+1|0;j=a[a[e>>2]+(l<<2)>>2];if(0==(j|0)){break a}else{k=j}}}}}while(0);d=a[d+168>>2];if(0==(d|0)){break}}}}function ay(c){var d=h;xq(c);var e=a[c+264>>2],g=a[c+268>>2],q=D[c+244>>1],m=c+246|0;if(q<<16>>16<=D[m>>1]<<16>>16){for(var l=c+220|0,k=c+12|0,n=c+132|0,c=c+100|0,q=q<<16>>16;;){var z=a[l>>2];if(0!=(a[(z>>2)+(11*q|0)]|0)){if(z=a[a[(z+4>>2)+(11*q|0)]>>2],0==(z|0)){la(1,jQ|0,(j=h,h+=8,a[j>>2]=a[k>>2],a[j+4>>2]=q,j))}else{var p=z+104|0;Zc(e,z,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])+8+(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),0);z=a[l>>2];z=a[a[(z+4>>2)+(11*q|0)]+(a[(z>>2)+(11*q|0)]-1<<2)>>2];p=z+112|0;Zc(z,g,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])+8+(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),0)}}q=q+1|0;if((q|0)>(D[m>>1]<<16>>16|0)){break}}}h=d}function xq(c){var d,e=c+264|0;if(0==(a[e>>2]|0)){d=(c+32|0)>>2;var g=Lf(a[d]);m[g+162|0]=2;var h=Lf(a[d]);m[h+162|0]=2;if(0!=(a[c+48>>2]|0)&&(d=a[d],(d|0)!=(c|0)&&0==(a[d+152>>2]&1|0))){d=c+84|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);var j=c+116|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);Zc(g,h,(d>j?d:j)&-1|0,0)}a[e>>2]=g;a[c+268>>2]=h}}function GP(b){if((a[b+32>>2]|0)!=(b|0)){ay(b);var c=a[b+264>>2],d=a[b+268>>2],g=Zh(c,d);0==(g|0)?Zc(c,d,1,128):(c=g+164|0,ib[c>>2]+=128)}c=b+208|0;if(1<=(a[c>>2]|0)){b=b+212|0;for(d=1;!(GP(a[a[b>>2]+(d<<2)>>2]),d=d+1|0,(d|0)>(a[c>>2]|0));){}}}function Zx(c){var d,e=D[c+244>>1],g=c+246|0,h=e<<16>>16>D[g>>1]<<16>>16;a:do{if(!h){for(var j=c+220|0,l=c+32|0,k=c+264|0,n=c+268|0,z=e<<16>>16;;){var p=a[j>>2],s=0==(a[(p>>2)+(11*z|0)]|0);b:do{if(!s){var v=a[a[(p+4>>2)+(11*z|0)]>>2];if(0!=(v|0)){for(var v=v+240|0,t=a[v>>2];;){var u=t-1|0;if(0>=(t|0)){break}var w=a[a[(a[a[l>>2]+220>>2]+4>>2)+(11*z|0)]+(u<<2)>>2];if(0==m[w+162|0]<<24>>24){d=1314;break}if(0==(kQ(c,w)|0)){t=u}else{d=1314;break}}1314==d&&(d=0,t=w+112|0,Zc(w,a[k>>2],(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])+8,0));for(v=a[(a[j>>2]>>2)+(11*z|0)]+a[v>>2]|0;;){t=a[a[l>>2]+220>>2];if((v|0)>=(a[(t>>2)+(11*z|0)]|0)){break b}var A=a[a[(t+4>>2)+(11*z|0)]+(v<<2)>>2];if(0==m[A+162|0]<<24>>24){break}if(0!=(kQ(c,A)|0)){break}v=v+1|0}v=A+104|0;Zc(a[n>>2],A,(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0])+8,0)}}}while(0);z=z+1|0;if((z|0)>(D[g>>1]<<16>>16|0)){break a}}}}while(0);d=c+208|0;if(1<=(a[d>>2]|0)){c=c+212|0;for(e=1;!(Zx(a[a[c>>2]+(e<<2)>>2]),e=e+1|0,(e|0)>(a[d>>2]|0));){}}}function HP(c){xq(c);var d=c+208|0;if(1<=(a[d>>2]|0)){for(var e=c+212|0,g=c+264|0,h=c+132|0,j=c+268|0,c=c+100|0,l=1;;){var k=a[a[e>>2]+(l<<2)>>2];xq(k);Zc(a[g>>2],a[k+264>>2],(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])+8,0);Zc(a[k+268>>2],a[j>>2],(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])+8,0);HP(k);l=l+1|0;if((l|0)>(a[d>>2]|0)){break}}}}function $x(b){var c;c=(b+208|0)>>2;if(1<=(a[c]|0)){for(var b=(b+212|0)>>2,d=1;;){xq(a[a[b]+(d<<2)>>2]);var d=d+1|0,g=a[c];if((d|0)>(g|0)){break}}if(1<=(g|0)){for(var d=1,e=g;;){var g=d+1|0,f=(g|0)>(e|0),h=a[b],j=a[h+(d<<2)>>2];a:do{if(f){var n=j}else{for(var m=g,p=h,s=j,v=e;;){var t=a[p+(m<<2)>>2],u=D[s+244>>1]<<16>>16>D[t+244>>1]<<16>>16,w=u?s:t,s=u?t:s,t=D[w+244>>1],u=t<<16>>16;D[s+246>>1]<<16>>16>16?w=v:(p=(a[a[a[(a[s+220>>2]+4>>2)+(11*u|0)]>>2]+240>>2]|0)<(a[a[a[(a[w+220>>2]+4>>2)+(11*u|0)]>>2]+240>>2]|0),Zc(a[(p?s:w)+268>>2],a[(p?w:s)+264>>2],8,0),w=a[c],p=a[b]);m=m+1|0;v=a[p+(d<<2)>>2];if((m|0)>(w|0)){n=v;break a}else{s=v,v=w}}}}while(0);$x(n);e=a[c];if((g|0)>(e|0)){break}else{d=g}}}}}function kQ(b,c){var d;if(1!=m[c+162|0]<<24>>24){return 0}d=a[a[c+256>>2]>>2];for(d>>=2;;){var g=a[d+32];if(0==(g|0)){break}else{d=g,d>>=2}}return 0!=(Ed(b,a[d+4]|0)|0)?0:d=0==(Ed(b,a[d+3]|0)|0)&1}function fy(b,c){var d;if((b|0)==(c|0)){var g;return 1}for(var e=a[b+184>>2],f=0;;){var h=a[e+(f<<2)>>2];if(0==(h|0)){g=0;d=1361;break}if(0==(fy(a[h+12>>2],c)|0)){f=f+1|0}else{g=1;d=1362;break}}if(1361==d||1362==d){return g}}function $N(b){var c,d,g;g=(b+244|0)>>1;D[g]=32767;d=(b+246|0)>>1;D[d]=-1;var e=ra(b);if(0==(e|0)){var f=0}else{for(var h=0;;){var j=e;c=(e+236|0)>>2;var n=a[c];(D[d]<<16>>16|0)<(n|0)&&(D[d]=n&65535,n=a[c]);(D[g]<<16>>16|0)>(n|0)&&(D[g]=n&65535);h=0==(h|0)?j:(a[c]|0)<(a[h+236>>2]|0)?j:h;e=ba(b,e);if(0==(e|0)){f=h;break}}}b=b+272|0;a[b>>2]=f}function Iw(b){var c=V(b|0,lQ|0),c=0==(c|0)?2147483647:wg(c,xc)*Vh(b)&-1,d=b+228|0;if(0<(a[d>>2]|0)){for(var g=b+224|0,e=b+216|0,f=b+208|0,h=0;!(a[e>>2]=a[a[g>>2]+(h<<2)>>2],Oo(b,0==(a[f>>2]|0)&1,c),h=h+1|0,(h|0)>=(a[d>>2]|0));){}}}function kx(b,c){var d=h;h+=8;if(0!=(m[b+149|0]&1)<<24>>24){var g=ra(b),e=0==(g|0);a:do{if(!e){for(var f=g;;){var j=Ib(b,f),k=0==(j|0);b:do{if(!k){for(var n=j;;){var z=n+178|0;D[z>>1]<<=1;n=yb(b,n);if(0==(n|0)){break b}}}}while(0);f=ba(b,f);if(0==(f|0)){break a}}}}while(0);g=b+260|0;a[g>>2]=(a[g>>2]+1|0)/2&-1}if(j=0!=(c|0)){g=ra(b);if(0!=(g|0)){for(;!(a[g+220>>2]=0,g=ba(b,g),0==(g|0));){}}g=ra(b);if(0!=(g|0)){for(;;){e=g+180|0;f=0<(a[e>>2]|0);a:do{if(f){k=g+176|0;for(n=0;;){if(m[a[a[k>>2]+(n<<2)>>2]+124|0]=0,n=n+1|0,(n|0)>=(a[e>>2]|0)){break a}}}}while(0);g=ba(b,g);if(0==(g|0)){break}}}}mQ(b,b);cN(b);nQ(d,b);g=a[d>>2];e=a[d+4>>2];jq(b,0);do{if(j){if(1>=(a[b+228>>2]|0)&&0>=(a[b+208>>2]|0)){f=c;break}a[c+32>>2]=1}f=0}while(0);j=b+228|0;if(0<(a[j>>2]|0)){k=b+224|0;n=b+216|0;for(z=0;;){var p=a[a[k>>2]+(z<<2)>>2];a[n>>2]=p;var s=0==(p|0);a:do{if(!s){for(var v=p;!(m[v+163|0]=0,v=a[v+168>>2],0==(v|0));){}v=a[n>>2];if(0!=(v|0)){for(;;){if(RM(v),v=a[v+168>>2],0==(v|0)){break a}}}}}while(0);z=z+1|0;if((z|0)>=(a[j>>2]|0)){break}}}0!=(oQ(b,g,e)|0)&&jq(b,0);0==(f|0)?Iw(b):VM(b,f);pQ(b,f);qQ(b);h=d}function mQ(b,c){var d=a[c+36>>2],g=a[d+20>>2],d=Ib(g,d);if(0!=(d|0)){for(;;){var e=Yd(a[d+12>>2]),f;f=e;if(0!=(0==(td(a[f+12>>2],Rx|0,7)|0)&1|0)){f=7}else{var h=Ds(V(f|0,nq|0),ei|0,rQ|0);m[f+282|0]=h&255;f=h}0==(f|0)?mQ(b,e):7==(f|0)&100==(a[Dl>>2]|0)?sQ(b,e):tQ(b,e,f);d=yb(g,d);if(0==(d|0)){break}}}}function uQ(b){var c;c=(b+4|0)>>2;var d=a[c];if(-1<(d|0)){for(b|=0;;){if(a[a[b>>2]+(d<<2)>>2]=0,0<(d|0)){d=d-1|0}else{break}}}a[c]=0}function nQ(b,c){var d,g,e;g=(c+236|0)>>2;e=a[g];d=(c+232|0)>>2;var f=a[d],h=0==(f|0);if(0==(e|0)){if(h){a[b>>2]=0;a[b+4>>2]=0;return}e=1425}else{if(h){var j=e;e=1426}else{e=1425}}if(1425==e){if(f=Zb(f),a[d]=f,h=a[g],0==(h|0)){var n=0,z=f}else{j=h,e=1426}}if(1426==e){n=Zb(j);a[g]=n;z=0==(n|0);a:do{if(z){var p=0}else{if(g=5==m[n+165|0]<<24>>24&1,j=n+184|0,e=a[a[j>>2]>>2],0==(e|0)){p=g}else{for(;;){if(f=a[e+12>>2],(f|0)!=(Zb(f)|0)&&sa(ym|0,363,gy|0,vQ|0),Hw(e),e=a[a[j>>2]>>2],0==(e|0)){p=g;break a}}}}}while(0);n=p;z=a[d]}d=0==(z|0);a:do{if(d){var s=0}else{if(p=3==m[z+165|0]<<24>>24&1,g=z+176|0,j=a[a[g>>2]>>2],0==(j|0)){s=p}else{for(;;){if(e=a[j+16>>2],(e|0)!=(Zb(e)|0)&&sa(ym|0,370,gy|0,wQ|0),Hw(j),j=a[a[g>>2]>>2],0==(j|0)){s=p;break a}}}}}while(0);a[b>>2]=s;a[b+4>>2]=n}function oQ(b,c,d){var g=b+236|0;if(0==(a[g>>2]|0)&&0==(a[b+232>>2]|0)){var e;return b=0}var f=ra(b);if(0==(f|0)){return b=0}for(var d=d&65535,h=b+232|0,c=c&65535,j=0;;){var n=f,m=f;if((f|0)==(Zb(m)|0)){if(0==(a[f+188>>2]|0)){var p=a[g>>2];0==(p|0)|(n|0)==(p|0)||(j=de(m,p,0),D[j+178>>1]=d)}0!=(a[f+180>>2]|0)?n=j:(p=a[h>>2],0==(p|0)|(n|0)==(p|0)?n=j:(n=de(p,m,0),D[n+178>>1]=c))}else{n=j}f=ba(b,f);if(0==(f|0)){e=n;break}else{j=n}}return b=0!=(e|0)&1}function pQ(b,c){var d,g,e=ra(b);if(0==(e|0)){D[b+246>>1]=0,D[b+244>>1]=0}else{g=(b+244|0)>>1;D[g]=32767;d=(b+246|0)>>1;D[d]=-1;for(var f=0==(c|0);;){var h=e,j=e,n=Zb(j);do{if((n|0)==(j|0)){var z=a[e+236>>2]}else{var z=e+236|0,p=a[z>>2];if(!f){if(0==(p|0)){p=0}else{z=p;break}}p=p+a[n+236>>2]|0;z=a[z>>2]=p}}while(0);(D[d]<<16>>16|0)<(z|0)?(D[d]=z&65535,n=a[e+236>>2]):n=z;(D[g]<<16>>16|0)>(n|0)&&(D[g]=n&65535);h=m[h+165|0];0==h<<24>>24||6==h<<24>>24||YE(j);e=ba(b,e);if(0==(e|0)){break}}if((a[b+32>>2]|0)==(b|0)){if(100!=(a[Dl>>2]|0)){if(g=a[b+36>>2],d=a[g+20>>2],g=Ib(d,g),0!=(g|0)){for(;!(f=Yd(a[g+12>>2]),7==m[f+282|0]<<24>>24&&sQ(b,f),g=yb(d,g),0==(g|0));){}}}else{if(d=b+208|0,1<=(a[d>>2]|0)){g=b+212|0;for(f=1;!(xQ(a[a[g>>2]+(f<<2)>>2]),f=f+1|0,(f|0)>(a[d>>2]|0));){}}}}}}function qQ(b){var c,d=b+224|0;c=(b+228|0)>>2;var g=a[c],e=0<(g|0);a:do{if(e){for(var f=d|0,h=b+216|0,j=0,n=g;;){var z=a[a[f>>2]+(j<<2)>>2];a[h>>2]=z;if(0!=(z|0)){for(n=z;!(uQ(n+176|0),uQ(n+184|0),m[n+163|0]=0,n=a[n+168>>2],0==(n|0));){}n=a[c]}j=j+1|0;if((j|0)>=(n|0)){break a}}}}while(0);g=ra(b);if(0!=(g|0)){for(;;){e=Ib(b,g);f=0==(e|0);a:do{if(!f){for(h=e;;){j=h+180|0;z=n=a[j>>2];do{if(0!=(n|0)&&(h|0)==(a[n+128>>2]|0)){var p=Ib(b,g),s=0==(p|0);b:do{if(!s){for(var v=p;;){if((h|0)!=(v|0)){var t=v+180|0,u=a[t>>2];0!=(u|0)&(z|0)==(u|0)&&(a[t>>2]=0)}v=yb(b,v);if(0==(v|0)){break b}}}}while(0);G(n|0)}}while(0);a[j>>2]=0;h=yb(b,h);if(0==(h|0)){break a}}}}while(0);g=ba(b,g);if(0==(g|0)){break}}}b=(d|0)>>2;d=a[b];G(d);a[b]=0;a[c]=0}function xQ(b){var c=a[b+272>>2]+236|0,d=b+244|0;D[d>>1]=(D[d>>1]&65535)+a[c>>2]&65535;d=b+246|0;D[d>>1]=(D[d>>1]&65535)+a[c>>2]&65535;c=b+208|0;if(1<=(a[c>>2]|0)){b=b+212|0;for(d=1;!(xQ(a[a[b>>2]+(d<<2)>>2]),d=d+1|0,(d|0)>(a[c>>2]|0));){}}}function sQ(b,c){var d=c+250|0;if(0==m[d]<<24>>24&&(m[d]=1,yQ(b,c),0!=(ra(c)|0))){var g=b+208|0,e=a[g>>2],d=e+1|0;a[g>>2]=d;var g=b+212|0,f=a[g>>2],e=0==(f|0)?fa((e<<2)+8|0):NF(f,e+2|0,4,d);a[g>>2]=e;a[e+(d<<2)>>2]=c;Vu(c);100==(a[Dl>>2]|0)?(kx(c,0),zQ(c)):$N(c)}}function yQ(b,c){var d,g=ra(c),e=0==(g|0);a:do{if(!e){for(var f=c,h=b+212|0,j=b+208|0,n=g;;){var z=ba(c,n),p=n+24|0,n=n|0;if(0==m[p+141|0]<<24>>24){for(var s=1;;){var v=a[j>>2];if((s|0)>=(v|0)){var t=v;break}if(0==(Ed(a[a[h>>2]+(s<<2)>>2],n)|0)){s=s+1|0}else{d=1535;break}}1535==d&&(d=0,t=a[j>>2]);(s|0)<(t|0)&&bl(f,n);a[p+192>>2]=0}else{bl(f,n)}if(0==(z|0)){break a}else{n=z}}}}while(0);g=ra(c);if(0!=(g|0)){for(d=c+32|0;;){e=Ib(a[d>>2],g);f=0==(e|0);a:do{if(!f){for(h=e;;){if(0!=(Ed(c,a[h+12>>2]|0)|0)&>(c,h|0),h=yb(a[d>>2],h),0==(h|0)){break a}}}}while(0);g=ba(c,g);if(0==(g|0)){break}}}}function zQ(b){var c,d=a[b+216>>2];do{if(0==(d|0)){c=1559}else{for(var g=0,e=d;;){var f=0==(a[e+236>>2]|0)?0==m[e+162|0]<<24>>24?e:g:g,e=a[e+168>>2];if(0==(e|0)){break}else{g=f}}if(0==(f|0)){c=1559}else{var h=f}}}while(0);1559==c&&(sa(ym|0,235,hy|0,AQ|0),h=0);a[b+272>>2]=h;d=ra(b);if(0!=(d|0)){for(c=h;!(g=d,2>(a[d+220>>2]|0)|(g|0)==(h|0)||sa(ym|0,239,hy|0,BQ|0),Tk(d,c),m[g+165|0]=7,d=ba(b,d),0==(d|0));){}}}function tQ(b,c,d){var g=ra(c);if(0!=(g|0)){var e=d&255,f=g+165|0;m[f]=e;var h=ba(c,g),j=0==(h|0);a:do{if(!j){for(var n=g,z=h;;){if(Tk(n,z),m[z+165|0]=m[f],z=ba(c,z),0==(z|0)){break a}}}}while(0);if(4==(d|0)||5==(d|0)){c=(b+236|0)>>2,f=a[c],a[c]=0==(f|0)?g:Tk(f,g)}else{if(2==(d|0)||3==(d|0)){c=(b+232|0)>>2,f=a[c],a[c]=0==(f|0)?g:Tk(f,g)}else{return}}5==(d|0)?m[a[b+236>>2]+165|0]=e:3==(d|0)&&(m[a[b+232>>2]+165|0]=e)}}function mx(b){var c=h;h+=120;var d,g=b+40|0,e=$(a[a[g>>2]+4>>2]|0,vx|0);a[di>>2]=e;g=$(a[a[g>>2]+4>>2]|0,wx|0);a[Ej>>2]=g;if(0!=(a[di>>2]|0)|0!=(g|0)&&(e=ra(b),0!=(e|0))){for(g=c|0;;){var f=e;a[Hj>>2]=0;var j=Ok(b,e),k=0==(j|0);a:do{if(!k){for(var n=j;;){var z=n,p=a[di>>2];(a[n+12>>2]|0)==(e|0)&0!=(p|0)?(p=mb(n|0,a[p+8>>2]),0==m[p]<<24>>24?d=1600:iy(g,f,z,p)):d=1600;1600==d&&(d=0,p=a[Ej>>2],(a[n+16>>2]|0)==(e|0)&0!=(p|0)&&(p=mb(n|0,a[p+8>>2]),0!=m[p]<<24>>24&&iy(g,f,z,p)));n=Pk(b,n,e);if(0==(n|0)){break a}}}}while(0);j=0<(a[Hj>>2]|0);a:do{if(j){for(k=0;;){if(n=c+24*k+4|0,1<(a[(c+8>>2)+(6*k|0)]|0)&&CQ(f,n),n=a[n>>2],0!=(n|0)&&G(n),k=k+1|0,(k|0)>=(a[Hj>>2]|0)){break a}}}}while(0);e=ba(b,e);if(0==(e|0)){break}}}h=c}function iy(c,d,e,g){var q,y;y=c>>2;var l=h;h+=8;for(var k=l+4,n=a[Hj>>2],z=0;;){if((z|0)>=(n|0)){q=1624;break}var p=a[y+(6*z|0)];if(m[p]<<24>>24==m[g]<<24>>24&&0==(ka(p,g)|0)){q=1619;break}z=z+1|0}if(1619==q){g=(c+24*z+4|0)>>2,q=a[g],q=0==(q|0)?Cb((a[y+(6*z|0)+2]<<2)+8|0):wb(q,(a[y+(6*z|0)+2]<<2)+8|0),a[g]=q,y=(c+24*z+8|0)>>2,n=a[y],a[y]=n+1|0,a[q+(n<<2)>>2]=e,a[a[g]+(a[y]<<2)>>2]=0}else{if(1624==q){q=n+1|0;a[Hj>>2]=q;if(5<(q|0)){la(1,DQ|0,(j=h,h+=4,a[j>>2]=a[d+12>>2],j));h=l;return}q=(c+24*z+8|0)>>2;a[q]=0;n=fa(8);p=c+24*z+4|0;a[p>>2]=n;var s=a[q];a[q]=s+1|0;a[n+(s<<2)>>2]=e;a[a[p>>2]+(a[q]<<2)>>2]=0;a[y+(6*z|0)]=g;a[y+(6*z|0)+3]=0;y=c+24*z+16|0;f[0]=0;a[y>>2]=b[0];a[y+4>>2]=b[1]}}tk(e,l,k);d=(a[e+12>>2]|0)==(d|0)?a[k>>2]:a[l>>2];0!=(d|0)&&(k=c+24*z+12|0,y=a[k>>2],a[k>>2]=y+1|0,e=0==(y|0)?Cg(e,d):0,c=c+24*z+16|0,f[0]=e,a[c>>2]=b[0],a[c+4>>2]=b[1]);h=l}function CQ(c,d){var e,g,j,y,l,k,n,z,p,s=h;h+=72;var v=s+4,t=s+8;p=(d+4|0)>>2;l=0<(a[p]|0);a:do{if(l){var u=d|0,w=c+32|0;k=c+40|0;for(var A=g=0,B=0;;){var C=a[a[u>>2]+(B<<2)>>2],D=a[C+12>>2],D=(D|0)==(c|0)?a[C+16>>2]:D,C=D+32|0,C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0])-(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),D=D+40|0,D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),F=pi(C,D),A=A+C/F;g+=D/F;B=B+1|0;if((B|0)>=(a[p]|0)){j=g;y=A;n=w;z=n>>2;n=k;n>>=2;break a}}}else{y=j=0,n=c+32|0,z=n>>2,n=c+40|0,n>>=2}}while(0);u=pi(y,j);g=(b[0]=a[z],b[1]=a[z+1],f[0]);w=(b[0]=a[n],b[1]=a[n+1],f[0]);k=(c+104|0)>>2;l=(c+112|0)>>2;B=(b[0]=a[k],b[1]=a[k+1],f[0])+(b[0]=a[l],b[1]=a[l+1],f[0]);A=c+96|0;A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])+(a[a[c+20>>2]+260>>2]|0);A=B>A?B:A;B=y/u*A+g;A=j/u*A+w;u=t|0;y=(t|0)>>2;f[0]=g;a[y]=b[0];a[y+1]=b[1];j=(t+8|0)>>2;f[0]=w;a[j]=b[0];a[j+1]=b[1];C=t+16|0;f[0]=(2*g+B)/3;a[C>>2]=b[0];a[C+4>>2]=b[1];C=t+24|0;f[0]=(2*w+A)/3;a[C>>2]=b[0];a[C+4>>2]=b[1];C=t+32|0;f[0]=(2*B+g)/3;a[C>>2]=b[0];a[C+4>>2]=b[1];g=t+40|0;f[0]=(2*A+w)/3;a[g>>2]=b[0];a[g+4>>2]=b[1];w=t+48|0;f[0]=B;a[w>>2]=b[0];a[w+4>>2]=b[1];t=t+56|0;f[0]=A;a[t>>2]=b[0];a[t+4>>2]=b[1];t=h;h+=8;w=a[c+24>>2];0!=(w|0)&&(B=w+4|0,0!=(a[a[B>>2]+12>>2]|0)&&(a[t>>2]=c,a[t+4>>2]=0,w=(c+112|0)>>2,g=(b[0]=a[w],b[1]=a[w+1],f[0])&-1,A=u|0,C=c+32|0,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])-(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),C=u+8|0,D=c+40|0,B=J[a[a[B>>2]+12>>2]](t,A,(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0])-(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])),f[0]=g|0,a[w]=b[0],a[w+1]=b[1],jp(t,c,u,B)));h=t;z=(b[0]=a[y],b[1]=a[y+1],f[0])-(b[0]=a[z],b[1]=a[z+1],f[0]);t=(b[0]=a[j],b[1]=a[j+1],f[0])-(b[0]=a[n],b[1]=a[n+1],f[0]);n=(0>z?z-.5:z+.5)&-1|0;z=(0>t?t-.5:t+.5)&-1|0;t=(b[0]=a[k],b[1]=a[k+1],f[0]);t=256*(t+n)/(t+(b[0]=a[l],b[1]=a[l+1],f[0]));t=0<=t?Math.floor(t):Math.ceil(t);if(0<(a[p]|0)){l=d|0;for(k=0;;){j=a[a[l>>2]+(k<<2)>>2];tk(j,s,v);y=0==(j|0);a:do{if(!y){for(u=j;;){w=0==(u|0);b:do{if(!w){B=u;for(g=B>>2;;){A=a[g+3];(A|0)==(c|0)&&(C=B+68|0,f[0]=n,a[C>>2]=b[0],a[C+4>>2]=b[1],C=B+76|0,f[0]=z,a[C>>2]=b[0],a[C+4>>2]=b[1],C=B+84|0,f[0]=0,a[C>>2]=b[0],a[C+4>>2]=b[1],a[g+23]=0,m[B+96|0]=1,m[B+97|0]=0,m[B+98|0]=0,m[B+99|0]=0,m[B+100|0]=t,m[B+101|0]=0,a[g+26]=0);(a[g+4]|0)==(c|0)&&(C=B+28|0,f[0]=n,a[C>>2]=b[0],a[C+4>>2]=b[1],C=B+36|0,f[0]=z,a[C>>2]=b[0],a[C+4>>2]=b[1],C=B+44|0,f[0]=0,a[C>>2]=b[0],a[C+4>>2]=b[1],a[g+13]=0,m[B+56|0]=1,m[B+57|0]=0,m[B+58|0]=0,m[B+59|0]=0,m[B+60|0]=t,m[B+61|0]=0,a[g+16]=0);if(1!=m[B+124|0]<<24>>24){var E=u;e=E>>2;break}if(1!=m[A+162|0]<<24>>24){E=u;e=E>>2;break}if(1!=(a[A+188>>2]|0)){E=u;e=E>>2;break}g=a[a[A+184>>2]>>2];if(0==(g|0)){E=u;e=E>>2;break}else{B=g,g=B>>2}}for(;;){(a[e+3]|0)==(c|0)&&(g=E+68|0,f[0]=n,a[g>>2]=b[0],a[g+4>>2]=b[1],g=E+76|0,f[0]=z,a[g>>2]=b[0],a[g+4>>2]=b[1],g=E+84|0,f[0]=0,a[g>>2]=b[0],a[g+4>>2]=b[1],a[e+23]=0,m[E+96|0]=1,m[E+97|0]=0,m[E+98|0]=0,m[E+99|0]=0,m[E+100|0]=t,m[E+101|0]=0,a[e+26]=0);g=a[e+4];(g|0)==(c|0)&&(B=E+28|0,f[0]=n,a[B>>2]=b[0],a[B+4>>2]=b[1],B=E+36|0,f[0]=z,a[B>>2]=b[0],a[B+4>>2]=b[1],B=E+44|0,f[0]=0,a[B>>2]=b[0],a[B+4>>2]=b[1],a[e+13]=0,m[E+56|0]=1,m[E+57|0]=0,m[E+58|0]=0,m[E+59|0]=0,m[E+60|0]=t,m[E+61|0]=0,a[e+16]=0);if(1!=m[E+124|0]<<24>>24){break b}if(1!=m[g+162|0]<<24>>24){break b}if(1!=(a[g+180>>2]|0)){break b}g=a[a[g+176>>2]>>2];if(0==(g|0)){break b}else{E=g,e=E>>2}}}}while(0);u=a[u+180>>2];if(0==(u|0)){break a}}}}while(0);k=k+1|0;if((k|0)>=(a[p]|0)){break}}}e=c+161|0;m[e]=1;h=s}function fi(b,c,d){var g=h;h+=1024;var e=g|0,f=Ba(d);Ma(e,EQ|0,(j=h,h+=8,a[j>>2]=c,a[j+4>>2]=f,j));b=a[Bd+(b<<2)>>2];db(b,e);db(b,d);d=(b+4|0)>>2;e=a[d];e>>>0>2]>>>0||(na(b,1),e=a[d]);b=e+1|0;a[d]=b;m[e]=32;h=g}function FQ(c){var c=a[a[c+16>>2]+8>>2],d=a[U+20>>2];if((d|0)!=(a[U+16>>2]|0)){var e=a[a[a[Kb>>2]+8>>2]+8>>2];d>>>0>2]>>>0||(na(U+16|0,1),d=a[U+20>>2]);m[d]=0;d=a[U+16>>2];a[U+20>>2]=d;qc(c|0,e,d)}d=a[U+84>>2];(d|0)!=(a[U+80>>2]|0)&&(e=a[a[a[Kb>>2]+12>>2]+8>>2],d>>>0>2]>>>0||(na(U+80|0,1),d=a[U+84>>2]),m[d]=0,d=a[U+80>>2],a[U+84>>2]=d,qc(c|0,e,d));f[0]=1;a[kc+64>>2]=b[0];a[kc+68>>2]=b[1];f[0]=1;a[kc+80>>2]=b[0];a[kc+84>>2]=b[1]}function GQ(c){var c=a[a[c+16>>2]+8>>2],d=a[U+20>>2];if((d|0)!=(a[U+16>>2]|0)){var e=a[a[a[Kb>>2]+16>>2]+8>>2];d>>>0>2]>>>0||(na(U+16|0,1),d=a[U+20>>2]);m[d]=0;d=a[U+16>>2];a[U+20>>2]=d;qc(c|0,e,d)}d=a[U+36>>2];(d|0)!=(a[U+32>>2]|0)&&(e=a[a[a[Kb>>2]+24>>2]+8>>2],d>>>0>2]>>>0||(na(U+32|0,1),d=a[U+36>>2]),m[d]=0,d=a[U+32>>2],a[U+36>>2]=d,qc(c|0,e,d));d=a[U+52>>2];(d|0)!=(a[U+48>>2]|0)&&(e=a[a[a[Kb>>2]+20>>2]+8>>2],d>>>0>2]>>>0||(na(U+48|0,1),d=a[U+52>>2]),m[d]=0,d=a[U+48>>2],a[U+52>>2]=d,qc(c|0,e,d));d=a[U+84>>2];(d|0)!=(a[U+80>>2]|0)&&(e=a[a[a[Kb>>2]+28>>2]+8>>2],d>>>0>2]>>>0||(na(U+80|0,1),d=a[U+84>>2]),m[d]=0,d=a[U+80>>2],a[U+84>>2]=d,qc(c|0,e,d));d=a[U+100>>2];(d|0)!=(a[U+96>>2]|0)&&(e=a[a[a[Kb>>2]+36>>2]+8>>2],d>>>0>2]>>>0||(na(U+96|0,1),d=a[U+100>>2]),m[d]=0,d=a[U+96>>2],a[U+100>>2]=d,qc(c|0,e,d));d=a[U+116>>2];(d|0)!=(a[U+112>>2]|0)&&(e=a[a[a[Kb>>2]+32>>2]+8>>2],d>>>0>2]>>>0||(na(U+112|0,1),d=a[U+116>>2]),m[d]=0,d=a[U+112>>2],a[U+116>>2]=d,qc(c|0,e,d));f[0]=1;a[kc+72>>2]=b[0];a[kc+76>>2]=b[1];f[0]=1;a[kc+88>>2]=b[0];a[kc+92>>2]=b[1];f[0]=1;a[kc+16>>2]=b[0];a[kc+20>>2]=b[1];f[0]=1;a[kc+24>>2]=b[0];a[kc+28>>2]=b[1];f[0]=1;a[kc+48>>2]=b[0];a[kc+52>>2]=b[1];f[0]=1;a[kc+56>>2]=b[0];a[kc+60>>2]=b[1]}function HQ(c,d,e){var g,q,m=h;h+=1024;g=a[a[c+16>>2]+12>>2];zm(c);Am(c);0==(e|0)?(c=a[Bd+(g<<2)>>2],db(c,IQ|0)):(jy(c),c=a[Bd+(g<<2)>>2],db(c,JQ|0));q=(d|0)>>2;g=(d+8|0)>>2;Ap(c,(b[0]=a[q],b[1]=a[q+1],f[0]),(b[0]=a[g],b[1]=a[g+1],f[0]));var e=m|0,l=d+16|0;q=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])-(b[0]=a[q],b[1]=a[q+1],f[0]);d=d+24|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])-(b[0]=a[g],b[1]=a[g+1],f[0]);d=0>d?d-.5&-1:d+.5&-1;Ma(e,Hl|0,(j=h,h+=8,a[j>>2]=(0>q?q-.5:q+.5)&-1,a[j+4>>2]=d,j));db(c,e);h=m}function zm(c){var d,e,g,q=h;h+=1040;var y,l=q+1024,c=(c+16|0)>>2;d=a[c];e=d+96|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);g=((a[d+12>>2]<<3)+kc|0)>>2;if(e!=(b[0]=a[g],b[1]=a[g+1],f[0])){f[0]=e,a[g]=b[0],a[g+1]=b[1],d=q|0,Ma(d,KQ|0,(j=h,h+=8,f[0]=e,a[j>>2]=b[0],a[j+4>>2]=b[1],j)),fi(a[a[c]+12>>2],ky|0,d),d=a[c]}g=a[d+104>>2];if(0!=(g|0)){fc(l,1024,q|0);var k=a[g>>2],n=0==(k|0);a:do{if(!n){e=(l+4|0)>>2;d=(l+8|0)>>2;for(var z=l|0,p=g,s=k;;){var p=p+4|0,v=m[s];102==v<<24>>24?0!=(ka(s,Hi|0)|0)&&(y=1783):115==v<<24>>24?0!=(ka(s,Cp|0)|0)&&(y=1783):98==v<<24>>24?0!=(ka(s,Wb|0)|0)&&(y=1783):y=1783;if(1783==y){y=0;for(db(l,s);;){var t=s+1|0;if(0==m[s]<<24>>24){break}else{s=t}}if(0!=m[t]<<24>>24){s=a[e];s>>>0>>0||(na(l,1),s=a[e]);v=s+1|0;a[e]=v;m[s]=40;if(0==m[t]<<24>>24){s=v}else{v=t;for(s=0;;){if(0!=(s|0)){var u=a[e];u>>>0>>0||(na(l,1),u=a[e]);a[e]=u+1|0;m[u]=44}for(db(l,v);;){var w=v+1|0;if(0==m[v]<<24>>24){break}else{v=w}}if(0==m[w]<<24>>24){break}else{v=w,s=s+1|0}}s=a[e]}s>>>0>>0||(na(l,1),s=a[e]);a[e]=s+1|0;m[s]=41}s=a[e];s>>>0>>0||(na(l,1),s=a[e]);m[s]=0;s=a[z>>2];a[e]=s;fi(a[a[c]+12>>2],ky|0,s)}s=a[p>>2];if(0==(s|0)){break a}}}}while(0);uc(l)}h=q}function Am(b){b=b+16|0;LQ(a[b>>2]+16|0);fi(a[a[b>>2]+12>>2],ly|0,yq|0)}function Bm(c,d,e,g){var q,y=h;h+=1024;c=a[Bd+(c<<2)>>2];q=(c+4|0)>>2;var l=a[q];l>>>0>2]>>>0||(na(c,1),l=a[q]);a[q]=l+1|0;m[l]=d;d=y|0;Ma(d,MQ|0,(j=h,h+=4,a[j>>2]=g,j));db(c,d);if(0<(g|0)){for(d=0;!(q=(d<<4)+e|0,l=(d<<4)+e+8|0,Ap(c,(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),d=d+1|0,(d|0)==(g|0));){}}h=y}function LQ(b){var c=h,d=m[b+1|0]&255,g=m[b+2|0]&255,e=m[b+3|0]&255;Ma(yq|0,NQ|0,(j=h,h+=16,a[j>>2]=m[b]&255,a[j+4>>2]=d,a[j+8>>2]=g,a[j+12>>2]=e,j));h=c}function jy(b){b=b+16|0;LQ(a[b>>2]+52|0);fi(a[a[b>>2]+12>>2],OQ|0,yq|0)}function PQ(c){var d=a[U+4>>2];if((d|0)==(a[U>>2]|0)){var e=c|0}else{var g=a[a[Kb>>2]>>2],e=c|0;if(0==(g|0)){var d=ac(c,e,Di|0,Y|0,202),g=a[a[Kb>>2]>>2]=d,h=a[U+4>>2]}else{h=d}d=a[g+8>>2];h>>>0>2]>>>0?g=h:(na(U|0,1),g=a[U+4>>2]);m[g]=0;g=a[U>>2];a[U+4>>2]=g;qc(e,d,g)}0!=(a[c+48>>2]|0)&&(c=a[a[a[Kb>>2]+4>>2]+8>>2],d=a[U+68>>2],d>>>0>2]>>>0||(na(U+64|0,1),d=a[U+68>>2]),m[d]=0,d=a[U+64>>2],a[U+68>>2]=d,qc(e,c,d));$J(e,QQ|0,RQ|0,Y|0);uc(U|0);uc(U+16|0);uc(U+32|0);uc(U+48|0);uc(U+64|0);uc(U+80|0);uc(U+96|0);uc(U+112|0);G(a[Kb>>2]);f[0]=1;a[kc>>2]=b[0];a[kc+4>>2]=b[1];f[0]=1;a[kc+32>>2]=b[0];a[kc+36>>2]=b[1]}function SQ(b,c,d){var g=Gb(8232);a[Kb>>2]=g;if(0==(a[b+208>>2]|0)){a[g>>2]=0;var e=g}else{g=ac(b,b|0,Di|0,Y|0,202),e=a[Kb>>2],a[e>>2]=g}g=b+149|0;0==(m[g]&8)<<24>>24?a[e+4>>2]=0:(e=ac(b,b|0,zq|0,Y|0,202),a[a[Kb>>2]+4>>2]=e);var e=b,b=(b+40|0)>>2,f=ac(e,a[a[b]>>2]|0,Di|0,Y|0,212);a[a[Kb>>2]+8>>2]=f;f=ac(e,a[a[b]>>2]|0,zq|0,Y|0,212);a[a[Kb>>2]+12>>2]=f;var f=ac(e,a[a[b]+4>>2]|0,Di|0,Y|0,286),h=a[Kb>>2];a[h+16>>2]=f;0==(d|0)?(a[h+20>>2]=0,d=h):(d=ac(e,a[a[b]+4>>2]|0,TQ|0,Y|0,286),f=a[Kb>>2],a[f+20>>2]=d,d=f);0==(c|0)?a[d+24>>2]=0:(c=ac(e,a[a[b]+4>>2]|0,UQ|0,Y|0,286),d=a[Kb>>2],a[d+24>>2]=c);c=d;0==(m[g]&1)<<24>>24?a[c+28>>2]=0:(c=ac(e,a[a[b]+4>>2]|0,zq|0,Y|0,286),d=a[Kb>>2],a[d+28>>2]=c,c=d);0==(m[g]&2)<<24>>24?a[c+32>>2]=0:(c=ac(e,a[a[b]+4>>2]|0,VQ|0,Y|0,286),d=a[Kb>>2],a[d+32>>2]=c,c=d);0==(m[g]&4)<<24>>24?(a[c+36>>2]=0,g=c+40|0):(g=ac(e,a[a[b]+4>>2]|0,WQ|0,Y|0,286),e=a[Kb>>2],a[e+36>>2]=g,g=e+40|0);fc(U|0,1024,g);g=a[Kb>>2];fc(U+16|0,1024,g+1064|0);g=a[Kb>>2];fc(U+32|0,1024,g+2088|0);g=a[Kb>>2];fc(U+48|0,1024,g+3112|0);g=a[Kb>>2];fc(U+64|0,1024,g+4136|0);g=a[Kb>>2];fc(U+80|0,1024,g+5160|0);g=a[Kb>>2];fc(U+96|0,1024,g+6184|0);g=a[Kb>>2];g=g+7208|0;fc(U+112|0,1024,g)}function Aq(c,d,e){e>>=2;1==(c|0)?(a[d>>2]=1,f[0]=10):2==(c|0)?(a[d>>2]=2,f[0]=10):(a[d>>2]=0,f[0]=0);a[e]=b[0];a[e+1]=b[1]}function XQ(b,c,d,g){var e;a[b>>2]=0;for(var f=a[my>>2],h=195075,j=-1,n=0;(n|0)<(f|0);){var m=(D[ny+(n<<1)>>1]<<16>>16)-c|0,p=(D[oy+(n<<1)>>1]<<16>>16)-d|0,s=(D[py+(n<<1)>>1]<<16>>16)-g|0,m=p*p+m*m+s*s|0;if((m|0)<(h|0)){if(0==(m|0)){var v=n;e=1876;break}else{h=m,j=n}}n=n+1|0}if(1876==e){return v}a[my>>2]=f+1|0;if(256==(f|0)){return j}D[ny+(n<<1)>>1]=c&65535;D[oy+(n<<1)>>1]=d&65535;D[py+(n<<1)>>1]=g&65535;a[b>>2]=1;return n}function YQ(c,d,e,g){var q=h,y=a[a[c+16>>2]+16>>2],l=a[rf>>2],k=g+24|0,n=c+348|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])*(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=0!=(a[c+356>>2]|0)?1.5707963267948966:0,z=a[g+4>>2],z=0==(z|0)?-1:a[z+20>>2],p=m[g+72|0]<<24>>24,p=108==(p|0)?0:114==(p|0)?2:1,d=0>d?d-.5:d+.5,e=0>e?e-.5:e+.5,g=ZQ(a[g>>2]);N(c,$Q|0,(j=h,h+=72,a[j>>2]=4,a[j+4>>2]=p,a[j+8>>2]=y,a[j+12>>2]=l,a[j+16>>2]=0,a[j+20>>2]=z,f[0]=k,a[j+24>>2]=b[0],a[j+28>>2]=b[1],f[0]=n,a[j+32>>2]=b[0],a[j+36>>2]=b[1],a[j+40>>2]=6,f[0]=0,a[j+44>>2]=b[0],a[j+48>>2]=b[1],f[0]=0,a[j+52>>2]=b[0],a[j+56>>2]=b[1],a[j+60>>2]=d&-1,a[j+64>>2]=e&-1,a[j+68>>2]=g,j));h=q}function aR(b,c){var d,g=h;h+=4;var e;d=(c+32|0)>>2;var f=a[d];if(5==(f|0)){for(f=0;;){var l=a[Mf+(f<<2)>>2];if(8==(f|0)){e=1906;break}var k=a[c>>2];if(m[l]<<24>>24==m[k]<<24>>24&&0==(ka(l,k)|0)){break}f=f+1|0}1906!=e&&(a[c>>2]=f)}else{1==(f|0)?(k=c+1|0,l=c+2|0,e=XQ(g,m[c]&255,m[k]&255,m[l]&255)+32|0,0!=(a[g>>2]|0)&&(f=m[c]&255,k=m[k]&255,l=m[l]&255,N(b,bR|0,(j=h,h+=20,a[j>>2]=0,a[j+4>>2]=e,a[j+8>>2]=f,a[j+12>>2]=k,a[j+16>>2]=l,j))),a[c>>2]=e):sa(qy|0,165,cR|0,vd|0)}a[d]=6;h=g}function dR(c,d,e){var g,q=h;h+=12;var m=q+4,l=a[c+16>>2];g=l>>2;var l=l+96|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])&-1,k=a[g+4],n=a[g+13],z=a[rf>>2];Aq(a[g+22],q,m);g=d|0;var p=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=(0>p?p-.5:p+.5)&-1;var s=d+8|0,v=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),s=(0>v?v-.5:v+.5)&-1,t=d+16|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),p=t-p,d=d+24|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),v=d-v,u=a[q>>2],m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);N(c,eR|0,(j=h,h+=88,a[j>>2]=1,a[j+4>>2]=1,a[j+8>>2]=u,a[j+12>>2]=l,a[j+16>>2]=k,a[j+20>>2]=n,a[j+24>>2]=z,a[j+28>>2]=0,a[j+32>>2]=0!=(e|0)?20:-1,f[0]=m,a[j+36>>2]=b[0],a[j+40>>2]=b[1],a[j+44>>2]=0,f[0]=0,a[j+48>>2]=b[0],a[j+52>>2]=b[1],a[j+56>>2]=g,a[j+60>>2]=s,a[j+64>>2]=(0>p?p-.5:p+.5)&-1,a[j+68>>2]=(0>v?v-.5:v+.5)&-1,a[j+72>>2]=g,a[j+76>>2]=s,a[j+80>>2]=(0>t?t-.5:t+.5)&-1,a[j+84>>2]=(0>d?d-.5:d+.5)&-1,j));h=q}function fR(c,d,e,g,q,m){var l,k,n,g=h;h+=92;var q=g+4,z=g+12,p=g+76,s=c+16|0,v=a[s>>2],t=v+96|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])&-1,u=a[v+16>>2],w=a[rf>>2],A=3<(e|0);A||sa(qy|0,354,gR|0,hR|0);var B=Gb(140*e+140|0);Aq(a[v+88>>2],g,q);0==(m|0)?(m=-1,s=0,v=4):(m=20,s=a[a[s>>2]+52>>2],v=5);var C=d|0;l=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]);C=z+48|0;n=C|0;f[0]=l;a[n>>2]=b[0];a[n+4>>2]=b[1];n=d+8|0;k=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);n=(z+56|0)>>2;f[0]=k;a[n]=b[0];a[n+1]=b[1];var D=Ma(B,Cm|0,(j=h,h+=8,a[j>>2]=(0>l?l-.5:l+.5)&-1,a[j+4>>2]=(0>k?k-.5:k+.5)&-1,j));a:do{if(A){var E=z|0;k=z>>2;l=C>>2;for(var F=p|0,H=p+8|0,I=z+16|0,J=z+24|0,K=z+32|0,L=z+40|0,Q=z+48|0,S=0,R=1,U=B+D|0,W=3;;){a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];var V=S+1|0,Y=(V<<4)+d|0,Y=(b[0]=a[Y>>2],b[1]=a[Y+4>>2],f[0]);f[0]=Y;a[I>>2]=b[0];a[I+4>>2]=b[1];V=(V<<4)+d+8|0;V=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]);f[0]=V;a[J>>2]=b[0];a[J+4>>2]=b[1];V=S+2|0;Y=(V<<4)+d|0;Y=(b[0]=a[Y>>2],b[1]=a[Y+4>>2],f[0]);f[0]=Y;a[K>>2]=b[0];a[K+4>>2]=b[1];V=(V<<4)+d+8|0;V=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]);f[0]=V;a[L>>2]=b[0];a[L+4>>2]=b[1];S=S+3|0;V=(S<<4)+d|0;V=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]);f[0]=V;a[Q>>2]=b[0];a[Q+4>>2]=b[1];S=(S<<4)+d+8|0;S=(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]);f[0]=S;a[n]=b[0];a[n+1]=b[1];for(S=1;;){Ld(p,E,3,(S|0)/6,0,0);var V=(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0]),Z=(b[0]=a[H>>2],b[1]=a[H+4>>2],f[0]),V=0>V?V-.5:V+.5,Z=0>Z?Z-.5:Z+.5,Z=U+Ma(U,Cm|0,(j=h,h+=8,a[j>>2]=V&-1,a[j+4>>2]=Z&-1,j))|0,U=S+1|0;if(7==(U|0)){break}else{S=U,U=Z}}R=R+6|0;V=W+3|0;if((V|0)<(e|0)){S=W,U=Z,W=V}else{var $=R;break a}}}else{$=1}}while(0);d=a[g>>2];e=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);N(c,iR|0,(j=h,h+=60,a[j>>2]=3,a[j+4>>2]=v,a[j+8>>2]=d,a[j+12>>2]=t,a[j+16>>2]=u,a[j+20>>2]=s,a[j+24>>2]=w,a[j+28>>2]=0,a[j+32>>2]=m,f[0]=e,a[j+36>>2]=b[0],a[j+40>>2]=b[1],a[j+44>>2]=0,a[j+48>>2]=0,a[j+52>>2]=0,a[j+56>>2]=$,j));N(c,jR|0,(j=h,h+=4,a[j>>2]=B,j));G(B);if(0<($|0)){d=$-1|0;for(e=0;!(N(c,kR|0,(j=h,h+=4,a[j>>2]=0!=(e%d|0)&1,j)),e=e+1|0,(e|0)==($|0));){}}y(c,wd|0);h=g}function ry(c,d,e,g){var q=h,m=0<(e|0);a:do{if(m){for(var l=c,k=0;;){var n=(k<<4)+d|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=0>n?n-.5:n+.5,z=(k<<4)+d+8|0,z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),z=0>z?z-.5:z+.5;N(l,Cm|0,(j=h,h+=8,a[j>>2]=n&-1,a[j+4>>2]=z&-1,j));k=k+1|0;if((k|0)==(e|0)){break a}}}}while(0);0!=(g|0)&&(e=d|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),d=d+8|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),N(c,Cm|0,(j=h,h+=8,a[j>>2]=(0>e?e-.5:e+.5)&-1,a[j+4>>2]=(0>d?d-.5:d+.5)&-1,j)));y(c,wd|0);h=q}function ZQ(b){var c=h,d=a[Ij>>2];0==(d|0)&&(a[Bq>>2]=64,d=Gb(64),a[Ij>>2]=d);var g=m[b];if(0==g<<24>>24){return m[d]=0,h=c,d}for(var e=d,d=0;;){var b=b+1|0,f=a[Bq>>2];(d|0)>(f-8|0)?(f<<=1,a[Bq>>2]=f,f=mc(a[Ij>>2],f),a[Ij>>2]=f,f=f+d|0):f=e;-1>24?(92==g<<24>>24&&(m[f]=92,d=d+1|0,f=f+1|0),m[f]=g,d=d+1|0,f=f+1|0):(m[f]=92,Ma(f+1|0,lR|0,(j=h,h+=4,a[j>>2]=g&255,j)),d=d+4|0,f=f+4|0);g=m[b];if(0==g<<24>>24){break}else{e=f}}d=a[Ij>>2];m[f]=0;h=c;return d}function mR(b){var c=a[b+16>>2],d=a[b+64>>2];if(1==(d|0)){var d=c+148|0,g=a[d>>2];0!=(g|0)&&0!=m[g]<<24>>24&&(y(b,sy|0),y(b,nc(a[d>>2])),y(b,gc|0),y(b,nc(a[a[c+8>>2]+12>>2])),y(b,wd|0))}else{3==(d|0)?(c=nc(a[a[c+8>>2]+12>>2]),y(b,nR|0),y(b,c),y(b,oR|0),y(b,c),y(b,ty|0)):0==(d|0)&&(y(b,pR|0),c=c+148|0,d=a[c>>2],0!=(d|0)&&0!=m[d]<<24>>24&&(y(b,sy|0),y(b,nc(a[c>>2])),y(b,wd|0)))}}function Cq(c,d,e,g,q,D,l,k){var n,z=h;if(!(0==(e|0)|0==(g|0))){(a[uy>>2]|0)<(g|0)&&(n=g+10|0,a[uy>>2]=n,n=mc(a[Ue>>2],n<<3),a[Ue>>2]=n);n=0<(g|0);a:do{if(n){for(var p=0;;){var s=(p<<4)+e|0,v=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),s=a[Ue>>2];a[s+(p<<3)>>2]=(0>v?v-.5:v+.5)&-1;v=(p<<4)+e+8|0;v=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]);a[s+(p<<3)+4>>2]=(0>v?v-.5:v+.5)&-1;p=p+1|0;if((p|0)==(g|0)){break a}}}}while(0);e=c+64|0;p=a[e>>2];s=0==(q|0);do{if(!(0!=(p|0)|s)&&0!=m[q]<<24>>24){if(2==(d|0)){N(c,qR|0,(j=h,h+=4,a[j>>2]=q,j));a:do{if(n){for(d=0;;){if(q=a[Ue>>2],D=a[q+(d<<3)+4>>2],N(c,rR|0,(j=h,h+=8,a[j>>2]=a[q+(d<<3)>>2],a[j+4>>2]=D,j)),d=d+1|0,(d|0)==(g|0)){break a}}}}while(0);y(c,wd|0)}else{0==(d|0)?(e=a[Ue>>2]>>2,g=a[e],d=a[e+3],D=a[e+2],e=a[e+1],N(c,sR|0,(j=h,h+=20,a[j>>2]=q,a[j+4>>2]=g,a[j+8>>2]=d,a[j+12>>2]=D,a[j+16>>2]=e,j))):1==(d|0)?(D=a[Ue>>2]>>2,g=a[D],d=a[D+1],D=a[D+2]-g|0,N(c,tR|0,(j=h,h+=16,a[j>>2]=q,a[j+4>>2]=g,a[j+8>>2]=d,a[j+12>>2]=D,j))):sa(Dq|0,65,Eq|0,vd|0)}h=z;return}}while(0);if(!(1!=(p|0)|s)&&0!=m[q]<<24>>24){0==(d|0)?(g=a[Ue>>2]>>2,d=a[g+3],e=a[g+2],n=a[g+1],N(c,uR|0,(j=h,h+=24,a[j>>2]=a[g],a[j+4>>2]=d,a[j+8>>2]=e,a[j+12>>2]=n,a[j+16>>2]=q,a[j+20>>2]=D,j))):sa(Dq|0,77,Eq|0,vd|0);h=z;return}if(2>(p-2|0)>>>0){1==(d|0)?y(c,vR|0):0==(d|0)?y(c,wR|0):2==(d|0)?y(c,xR|0):sa(Dq|0,93,Eq|0,vd|0);0!=(k|0)&&0!=m[k]<<24>>24&&(y(c,yR|0),y(c,Bo(k)),y(c,ue|0));!s&&0!=m[q]<<24>>24&&(y(c,zR|0),y(c,Bo(q)),y(c,ue|0));0!=(l|0)&&0!=m[l]<<24>>24&&(y(c,vy|0),y(c,nc(l)),y(c,ue|0));0!=(D|0)&&0!=m[D]<<24>>24&&(y(c,AR|0),y(c,nc(D)),y(c,ue|0));y(c,BR|0);y(c,CR|0);a:do{if(2==(d|0)){if(q=a[Ue>>2],D=a[q+4>>2],N(c,DR|0,(j=h,h+=8,a[j>>2]=a[q>>2],a[j+4>>2]=D,j)),1<(g|0)){for(q=1;;){if(D=a[Ue>>2],n=a[D+(q<<3)+4>>2],N(c,ER|0,(j=h,h+=8,a[j>>2]=a[D+(q<<3)>>2],a[j+4>>2]=n,j)),q=q+1|0,(q|0)==(g|0)){break a}}}}else{1==(d|0)?(n=a[Ue>>2]>>2,q=a[n],D=a[n+1],n=a[n+2]-q|0,N(c,FR|0,(j=h,h+=12,a[j>>2]=q,a[j+4>>2]=D,a[j+8>>2]=n,j))):0==(d|0)&&(q=a[Ue>>2]>>2,D=a[q+3],n=a[q+2],l=a[q+1],N(c,GR|0,(j=h,h+=16,a[j>>2]=a[q],a[j+4>>2]=D,a[j+8>>2]=n,a[j+12>>2]=l,j)))}}while(0);3==(a[e>>2]|0)?y(c,Dm|0):y(c,ty|0)}}h=z}function HR(b){var c,d=b>>2,e=h;h+=8;var f=a[d+4];m[Fq]=0;c=(b+12|0)>>2;var D=f+8|0;if(0==(a[a[c]+28>>2]|0)){N(b,IR|0,(j=h,h+=4,a[j>>2]=a[a[D>>2]+12>>2],j));var l=b+64|0;2==(a[l>>2]|0)?y(b,JR|0):y(b,KR|0);if(0==(a[a[c]+20>>2]|0)){if(2==(a[l>>2]|0)){var l=a[d+113],k=a[d+114],n=a[d+115];N(b,wy|0,(j=h,h+=16,a[j>>2]=a[d+112],a[j+4>>2]=l,a[j+8>>2]=k,a[j+12>>2]=n,j))}else{y(b,LR|0)}}y(b,MR|0);np(b,a[a[c]+24>>2],I|0);d=h;l=a[bj>>2];if(0!=(l|0)&&(l=J[a[l>>2]](l,0,128),0!=(l|0))){for(;!(0==m[l+16|0]<<24>>24&&(N(b,NR|0,(j=h,h+=4,a[j>>2]=a[l+12>>2],j)),y(b,OR|0),Pu(b,l),y(b,PR|0),y(b,QR|0)),k=a[bj>>2],l=J[a[k>>2]](k,l,8),0==(l|0));){}}h=d;c=a[a[c]+20>>2];0!=(c|0)&&(d=e|0,a[d>>2]=a[c>>2],a[e+4>>2]=0,np(b,0,d))}a[Gq>>2]=1==m[a[D>>2]+151|0]<<24>>24&1;m[Fq]||(y(b,RR|0),m[Fq]=1);f=a[f+148>>2];0!=(f|0)&&N(b,SR|0,(j=h,h+=4,a[j>>2]=f,j));h=e}function TR(c){var d,e=c>>2,g=h,q=a[e+112],m=a[e+113],l=a[e+114],k=a[e+115];d=(c+12|0)>>2;var n=a[a[d]+28>>2]+1|0;N(c,UR|0,(j=h,h+=8,a[j>>2]=n,a[j+4>>2]=n,j));0==(a[a[d]+20>>2]|0)&&N(c,VR|0,(j=h,h+=16,a[j>>2]=q,a[j+4>>2]=m,a[j+8>>2]=l,a[j+12>>2]=k,j));var z=c+356|0,n=0!=(a[z>>2]|0)?WR|0:XR|0;N(c,YR|0,(j=h,h+=4,a[j>>2]=n,j));n=c+64|0;1==(a[n>>2]|0)&&N(c,ZR|0,(j=h,h+=8,a[j>>2]=l,a[j+4>>2]=k,j));var p=a[e+49],s=a[e+50];N(c,$R|0,(j=h,h+=12,a[j>>2]=a[e+48],a[j+4>>2]=p,a[j+8>>2]=s,j));0==(a[a[d]+20>>2]|0)&&N(c,aS|0,(j=h,h+=16,a[j>>2]=q,a[j+4>>2]=m,a[j+8>>2]=l-q|0,a[j+12>>2]=k-m|0,j));var e=c+480|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),p=c+488|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),z=a[z>>2],s=c+496|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),v=c+504|0,v=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]);N(c,bS|0,(j=h,h+=36,f[0]=e,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=p,a[j+8>>2]=b[0],a[j+12>>2]=b[1],a[j+16>>2]=z,f[0]=s,a[j+20>>2]=b[0],a[j+24>>2]=b[1],f[0]=v,a[j+28>>2]=b[0],a[j+32>>2]=b[1],j));if(1==(a[n>>2]|0)){if(14399<(l|0)|14399<(k|0)){J[a[a[d]+16>>2]](cS|0,(j=h,h+=12,a[j>>2]=l,a[j+4>>2]=k,a[j+8>>2]=14400,j))}N(c,dS|0,(j=h,h+=16,a[j>>2]=q,a[j+4>>2]=m,a[j+8>>2]=l,a[j+12>>2]=k,j))}h=g}function eS(c,d,e,g){var h;h=(c+16|0)>>2;do{if(0!=(g|0)){var j=a[h],l=j+76|0;if(.5<(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])){Nf(c,j+52|0);j=c;y(j,Jj|0);var l=d|0,k=d+8|0;Hd(j,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]));y(j,Kj|0);l=1<(e|0);a:do{if(l){for(k=1;;){var n=(k<<4)+d|0,m=(k<<4)+d+8|0;Hd(j,(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]));y(j,Hq|0);k=k+1|0;if((k|0)==(e|0)){break a}}}}while(0);y(j,xy|0)}}}while(0);g=a[h]+40|0;if(.5<(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])){Em(c);Nf(c,a[h]+16|0);y(c,Jj|0);h=d|0;g=d+8|0;Hd(c,(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]));y(c,Kj|0);h=1<(e|0);a:do{if(h){for(g=1;;){if(j=(g<<4)+d|0,l=(g<<4)+d+8|0,Hd(c,(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),y(c,Hq|0),g=g+1|0,(g|0)==(e|0)){break a}}}}while(0);y(c,fS|0)}}function gS(c,d,e,g,h,j){g=(c+16|0)>>2;do{if(0!=(j|0)){var h=a[g],l=h+76|0;if(.5<(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])){Nf(c,h+52|0);h=c;y(h,Jj|0);var l=d|0,k=d+8|0;Hd(h,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]));y(h,Kj|0);l=1<(e|0);a:do{if(l){for(k=1;;){if(kf(h,(k<<4)+d|0,3),y(h,yy|0),k=k+3|0,(k|0)>=(e|0)){break a}}}}while(0);y(h,xy|0)}}}while(0);j=a[g]+40|0;if(.5<(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])){Em(c);Nf(c,a[g]+16|0);y(c,Jj|0);j=d|0;g=d+8|0;Hd(c,(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]));y(c,Kj|0);j=1<(e|0);a:do{if(j){for(g=1;;){if(kf(c,(g<<4)+d|0,3),y(c,yy|0),g=g+3|0,(g|0)>=(e|0)){break a}}}}while(0);y(c,zy|0)}}function Nf(c,d){var e=h;if(0!=(d|0)){var g=a[a[c+16>>2]+4>>2],g=2==(g|0)?jh|0:3==(g|0)?Dg|0:0==(g|0)||1==(g|0)?Yf|0:hS|0,m=d|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),y=d+8|0,y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),l=d+16|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);N(c,iS|0,(j=h,h+=28,f[0]=m,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=y,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=l,a[j+16>>2]=b[0],a[j+20>>2]=b[1],a[j+24>>2]=g,j))}h=e}function Em(c){var d=h,e,g=c+16|0,q=a[g>>2],D=q+96|0,q=a[q+104>>2];gj(c,(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]));for(y(c,jS|0);;){if(0==(q|0)){e=2216;break}D=q+4|0;q=a[q>>2];if(0==(q|0)){e=2217;break}if(0!=(ka(q,Cp|0)|0)){for(var l=q;;){var k=l+1|0;if(0==m[l]<<24>>24){break}else{l=k}}l=0==m[k]<<24>>24;a:do{if(!l){for(var n=k;;){for(N(c,kS|0,(j=h,h+=4,a[j>>2]=n,j));;){var z=n+1|0;if(0==m[n]<<24>>24){break}else{n=z}}if(0==m[z]<<24>>24){break a}else{n=z}}}}while(0);0==(ka(q,qh|0)|0)&&(l=a[g>>2]+96|0,f[0]=0,a[l>>2]=b[0],a[l+4>>2]=b[1]);N(c,lS|0,(j=h,h+=4,a[j>>2]=q,j))}q=D}2216==e?h=d:2217==e&&(h=d)}function mS(c,d,e,g){var q=h,D=a[c+16>>2];y(c,nS|0);var l=m[g+72|0]<<24>>24;108==(l|0)?y(c,oS|0):114==(l|0)?y(c,pS|0):y(c,qS|0);l=g+48|0;e=-((b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+e);N(c,rS|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));d=a[g+4>>2];if(0==(d|0)){N(c,sS|0,(j=h,h+=4,a[j>>2]=a[g+20>>2],j))}else{e=a[a[a[c>>2]+128>>2]+252>>2];if(1==(e|0)){var l=d+16|0,k=d+8|0,e=d|0}else{2==(e|0)?(l=d+32|0,k=d+28|0,e=d+24|0):(l=d+16|0,k=d+8|0,e=d+4|0)}var l=a[l>>2],k=a[k>>2],n=a[d+12>>2];N(c,tS|0,(j=h,h+=4,a[j>>2]=a[e>>2],j));d=a[d+24>>2];0!=(d|0)&&N(c,uS|0,(j=h,h+=4,a[j>>2]=d,j));y(c,ue|0);0!=(k|0)&&N(c,vS|0,(j=h,h+=4,a[j>>2]=k,j));0!=(n|0)&&N(c,wS|0,(j=h,h+=4,a[j>>2]=n,j));0!=(l|0)&&N(c,xS|0,(j=h,h+=4,a[j>>2]=l,j))}d=g+24|0;N(c,yS|0,(j=h,h+=8,f[0]=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),a[j>>2]=b[0],a[j+4>>2]=b[1],j));d=D+16|0;D=a[D+48>>2];5==(D|0)?0!=(Lb(a[d>>2],Ac|0)|0)&&N(c,zS|0,(j=h,h+=4,a[j>>2]=a[d>>2],j)):1==(D|0)?(D=m[d+1|0]&255,e=m[d+2|0]&255,N(c,AS|0,(j=h,h+=12,a[j>>2]=m[d]&255,a[j+4>>2]=D,a[j+8>>2]=e,j))):sa(Ay|0,379,BS|0,vd|0);y(c,CS|0);g=(g|0)>>2;g=a[g];g=nc(g);y(c,g);y(c,DS|0);h=q}function Fm(c,d){var e,g=h,q=a[c+16>>2];e=q>>2;y(c,ES|0);if(0==(d|0)){y(c,sg|0)}else{var D=q+52|0;FS(c,D);1==(a[e+21]|0)&&(D=m[D+3|0],0==D<<24>>24||-1==D<<24>>24||N(c,GS|0,(j=h,h+=8,f[0]=(D&255)/255,a[j>>2]=b[0],a[j+4>>2]=b[1],j)))}y(c,HS|0);D=q+16|0;FS(c,D);q=q+96|0;q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);1!=q&&N(c,IS|0,(j=h,h+=8,f[0]=q,a[j>>2]=b[0],a[j+4>>2]=b[1],j));q=a[e+22];1==(q|0)?N(c,By|0,(j=h,h+=4,a[j>>2]=JS|0,j)):2==(q|0)&&N(c,By|0,(j=h,h+=4,a[j>>2]=KS|0,j));1==(a[e+12]|0)&&(e=m[D+3|0],0==e<<24>>24||-1==e<<24>>24||N(c,LS|0,(j=h,h+=8,f[0]=(e&255)/255,a[j>>2]=b[0],a[j+4>>2]=b[1],j)));y(c,ue|0);h=g}function FS(b,c){var d=h,e=c,c=h;h+=36;for(var e=e>>2,f=c>>2,D=e+9;e>2];5==(e|0)?y(b,a[c>>2]):1==(e|0)?0==m[c+3|0]<<24>>24?y(b,sg|0):(e=a[c>>2],N(b,Iq|0,(j=h,h+=12,a[j>>2]=e&255,a[j+4>>2]=e>>>8&255,a[j+8>>2]=e>>>16&255,j))):sa(Ay|0,86,MS|0,vd|0);h=d}function NS(c,d,e,g){var q=h,D=a[c+16>>2];if(0!=(a[D+88>>2]|0)){var l=g+24|0,k=c+348|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])*(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])&-1;0!=(l|0)&&(Gm(c),y(c,OS|0),Hd(c,d,e-.55*(l|0)),y(c,PS|0),y(c,a[g>>2]),y(c,QS|0),y(c,Lj|0),gi(c,D+16|0),y(c,RS|0),d=a[g+4>>2],d=a[(0==(d|0)?g+20|0:d+4|0)>>2],y(c,ue|0),y(c,d),y(c,ue|0),N(c,SS|0,(j=h,h+=4,a[j>>2]=l,j)),g=m[g+72|0]<<24>>24,108==(g|0)?y(c,TS|0):114==(g|0)&&y(c,US|0),Mj(c),y(c,wd|0))}h=q}function VS(c,d,e){var g,h,j,l=a[c+16>>2];j=(l+88|0)>>2;if(0!=(a[j]|0)){h=d+16|0;var k=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]);h=(d|0)>>2;var n=(b[0]=a[h],b[1]=a[h+1],f[0]);g=d+24|0;var m=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=(d+8|0)>>2;var p=(b[0]=a[g],b[1]=a[g+1],f[0]);f[0]=n-(k-n);a[h]=b[0];a[h+1]=b[1];f[0]=p-(m-p);a[g]=b[0];a[g+1]=b[1];Gm(c);y(c,WS|0);kf(c,d,2);y(c,Lj|0);0==(e|0)?0==(a[tg>>2]|0)?y(c,oj|0):y(c,hf|0):gi(c,l+52|0);1==(a[tg>>2]|0)&&(a[tg>>2]=0);y(c,Jq|0);d=l+96|0;gj(c,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]));y(c,Cy|0);gi(c,l+16|0);l=a[j];1==(l|0)?(y(c,Hm|0),j=a[j]):j=l;2==(j|0)&&y(c,Im|0);Mj(c);y(c,wd|0)}}function XS(c,d,e,g){var h,j=a[c+16>>2];h=(j+88|0)>>2;0!=(a[h]|0)&&(Gm(c),y(c,YS|0),kf(c,d,e),y(c,Lj|0),0==(g|0)?0==(a[tg>>2]|0)?y(c,oj|0):y(c,hf|0):gi(c,j+52|0),1==(a[tg>>2]|0)&&(a[tg>>2]=0),y(c,Jq|0),d=j+96|0,gj(c,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])),y(c,Cy|0),gi(c,j+16|0),j=a[h],1==(j|0)?(y(c,Hm|0),h=a[h]):h=j,2==(h|0)&&y(c,Im|0),Mj(c),y(c,wd|0))}function Gm(b){0==m[b+140|0]<<24>>24?y(b,ZS|0):y(b,a[b+144>>2])}function gi(b,c){var d=h,e=c,c=h;h+=36;for(var e=e>>2,f=c>>2,D=e+9;e>2];1==(e|0)?0==m[c+3|0]<<24>>24?y(b,oj|0):(e=a[c>>2],N(b,Iq|0,(j=h,h+=12,a[j>>2]=e&255,a[j+4>>2]=e>>>8&255,a[j+8>>2]=e>>>16&255,j))):5==(e|0)?y(b,a[c>>2]):sa(Dy|0,51,$S|0,vd|0);h=d}function Mj(b){var c,d=h;c=a[b+16>>2]>>2;var e=a[c+3];if(9==(e|0)||2==(e|0)||3==(e|0)){var f=a[a[c+2]>>2]>>8,m=Dg|0,l=1}else{8==(e|0)?(f=a[a[c+2]>>2]>>8,m=jh|0,l=1):0==(e|0)?(f=a[a[c+2]>>2]>>8,m=Yf|0,l=1):4==(e|0)?(f=a[a[c+2]>>2]>>8,m=aT|0,l=0):10==(e|0)?(f=a[a[c+2]>>2]>>8,m=jh|0,l=0):11==(e|0)||6==(e|0)||7==(e|0)?(f=a[a[c+2]>>2]>>8,m=Dg|0,l=0):5==(e|0)?(f=a[a[c+2]>>2]>>8,m=Yf|0,l=0):1==(e|0)?(f=a[a[c+2]>>2]>>8,m=Yf|0,l=1):sa(Dy|0,148,bT|0,vd|0)}N(b,cT|0,(j=h,h+=12,a[j>>2]=l,a[j+4>>2]=m,a[j+8>>2]=f,j));h=d}function Of(b){var c=h;h+=16;var d,e=a[Kq>>2];if(0==(e|0)){a[Lq>>2]=64;var e=Cb(64),f=a[Kq>>2]=e}else{f=e}var e=c+15|0,j=c+14|0,l=b,k=f,n=b=0,z=0,p=0,s=f;a:for(;;){for(var v=0==(b|0),f=l,t=k,l=z,k=p,u=s;;){if(0==(f|0)){d=2456;break a}var w=m[f];if(0==w<<24>>24){d=2455;break a}var A=a[Lq>>2];(n|0)>(A-8|0)?(A<<=1,a[Lq>>2]=A,w=wb(u,A),a[Kq>>2]=w,A=w+n|0,p=m[f]):(A=t,p=w,w=u);if(32==p<<24>>24){d=2433;break}else{if(38==p<<24>>24){d=2432;break}else{if(60==p<<24>>24){var y=wo|0,C=4;d=2447;break}else{if(45==p<<24>>24){var D=k,E=l,F=5,G=kt|0;break}else{if(62==p<<24>>24){var H=4,I=yo|0;d=2449;break}}}}}if(34==p<<24>>24){y=zo|0;C=6;d=2447;break}else{if(39==p<<24>>24){H=5;I=Ao|0;d=2449;break}}if(0<=p<<24>>24){y=f;C=1;d=2447;break}for(var J=0,K=127,L=p&255;;){var N=J+1|0,S=K&L,K=K>>>1;if(K>>>0>>0){J=N,L=S}else{break}}0<(J|0)?(K=N,J=S):(K=l,J=(k<<6)+S|0);K=K-1|0;L=f+1|0;if(0<(K|0)){f=L,t=A,l=K,k=J,u=w}else{d=2443;break}}do{if(2433==d){v?d=2436:32==m[b]<<24>>24?(y=lt|0,C=6,d=2447):d=2436}else{if(2432==d){d=f+1|0;p=m[d];if(35!=p<<24>>24){for(;;){s=d+1|0;if(!(26>(p-97&255)|26>(p-65&255))){var Q=p;break}d=s;p=m[s]}}else{if(d=f+2|0,p=m[d],120==p<<24>>24||88==p<<24>>24){for(d=f+3|0;;){if(p=m[d],10>(p-48&255)|6>(p-97&255)|6>(p-65&255)){d=d+1|0}else{Q=p;break}}}else{for(;;){s=d+1|0;if(10<=(p-48&255)){Q=p;break}d=s;p=m[s]}}}d=59==Q<<24>>24;d&=1;0==(d|0)?(y=xo|0,C=5,d=2447):d=2436}else{if(2443==d){d=0;m[e]=59;p=j;s=3;for(z=J;;){var R=p-1|0;m[p]=((z>>>0)%10|48)&255;var U=Math.floor((z>>>0)/10),V=s+1|0;if(12<(V|0)){d=2445;break a}if(9>>0){p=R,s=V,z=U}else{break}}p=p-2|0;m[R]=35;m[p]=38;if(0==(V|0)){l=L;k=A;b=f;z=K;p=U;s=w;continue a}else{D=U,E=K,F=V,G=p}}else{2449==d&&(d=0,D=k,E=l,F=H,G=I)}}}}while(0);2436==d&&(y=f,C=1,d=2447);2447==d&&(d=0,D=k,E=l,F=C,G=y);n=F+n|0;l=F;b=G;for(v=A;;){l=l-1|0;m[v]=m[b];if(0==(l|0)){break}b=b+1|0;v=v+1|0}l=f+1|0;k=A+F|0;b=f;z=E;p=D;s=w}if(2445==d){Lc(dT|0,46,1,a[oa>>2]),Pe()}else{if(2455==d||2456==d){return m[t]=0,h=c,u}}}function eT(c){var d=h,e=a[c+16>>2],g=c+228|0,q=c+212|0;a[$d>>2]=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0])&-1;g=c+220|0;q=c+204|0;a[Ug>>2]=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0])&-1;y(c,fT|0);y(c,gT|0);e=a[a[e+8>>2]+12>>2];0!=m[e]<<24>>24&&(y(c,hT|0),y(c,Of(e)),y(c,iT|0));N(c,jT|0,(j=h,h+=4,a[j>>2]=a[c+164>>2]*a[c+160>>2]|0,j));y(c,kT|0);y(c,lT|0);y(c,mT|0);y(c,nT|0);y(c,oT|0);y(c,pT|0);y(c,qT|0);y(c,rT|0);y(c,sT|0);y(c,tT|0);y(c,uT|0);y(c,vT|0);y(c,wT|0);y(c,Ey|0);y(c,Fy|0);y(c,Jm|0);y(c,Gy|0);y(c,Km|0);y(c,Lm|0);y(c,Hy|0);y(c,Iy|0);y(c,Jm|0);y(c,Jy|0);y(c,Km|0);y(c,Lm|0);y(c,xT|0);y(c,Ey|0);y(c,Fy|0);y(c,Jm|0);y(c,Jy|0);y(c,Km|0);y(c,Lm|0);y(c,Hy|0);y(c,Iy|0);y(c,Jm|0);y(c,Gy|0);y(c,Km|0);y(c,Lm|0);y(c,yT|0);y(c,zT|0);y(c,AT|0);y(c,BT|0);y(c,CT|0);y(c,DT|0);e=a[Ug>>2];g=a[$d>>2]+10|0;N(c,ET|0,(j=h,h+=8,a[j>>2]=e,a[j+4>>2]=g,j));y(c,FT|0);y(c,GT|0);y(c,HT|0);y(c,IT|0);y(c,JT|0);e=a[Ug>>2];g=a[$d>>2];N(c,KT|0,(j=h,h+=8,a[j>>2]=e,a[j+4>>2]=g,j));e=a[Ug>>2];g=a[$d>>2];N(c,LT|0,(j=h,h+=8,a[j>>2]=e,a[j+4>>2]=g,j));h=d}function MT(c,d,e,g){var q,D=h,l=a[c+16>>2],k=m[g+72|0]<<24>>24;if(108==(k|0)){var n=g+56|0,k=d,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])}else{114==(k|0)?(k=g+56|0,n=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=d-n):(k=g+56|0,n=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=d-.5*n)}q=(g+64|0)>>2;var z=(b[0]=a[q],b[1]=a[q+1],f[0]),d=(g+24|0)>>2,p=(b[0]=a[d],b[1]=a[d+1],f[0]);z>2]>>>0)-e,s=p/5,p=12>p?s+1.4:s+2,z=e-z+p;N(c,NT|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(c,Ky|0,(j=h,h+=16,f[0]=q,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=z,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));N(c,Ly|0,(j=h,h+=16,f[0]=k+(n+8)-q,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e+p-z,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));y(c,OT|0);y(c,PT|0);e=(g+4|0)>>2;k=a[e];0==(k|0)?N(c,My|0,(j=h,h+=4,a[j>>2]=a[g+20>>2],j)):(N(c,My|0,(j=h,h+=4,a[j>>2]=a[k+4>>2],j)),k=a[e],n=a[k+8>>2],0!=(n|0)&&(N(c,QT|0,(j=h,h+=4,a[j>>2]=n,j)),k=a[e]),n=a[k+12>>2],0==(n|0)?e=k:(N(c,RT|0,(j=h,h+=4,a[j>>2]=n,j)),e=a[e]),e=a[e+16>>2],0!=(e|0)&&N(c,ST|0,(j=h,h+=4,a[j>>2]=e,j)));N(c,TT|0,(j=h,h+=8,f[0]=(b[0]=a[d],b[1]=a[d+1],f[0]),a[j>>2]=b[0],a[j+4>>2]=b[1],j));d=l+16|0;l=a[l+48>>2];1==(l|0)?(l=m[d+1|0]&255,e=m[d+2|0]&255,N(c,UT|0,(j=h,h+=12,a[j>>2]=m[d]&255,a[j+4>>2]=l,a[j+8>>2]=e,j))):5==(l|0)?0!=(Lb(a[d>>2],Ac|0)|0)&&N(c,VT|0,(j=h,h+=4,a[j>>2]=a[d>>2],j)):sa(Ny|0,442,WT|0,vd|0);y(c,XT|0);g=(g|0)>>2;g=a[g];g=Of(g);y(c,g);y(c,YT|0);y(c,ZT|0);h=D}function Mq(c){var d=h,e=a[c+16>>2];y(c,$T|0);aU(c,e+16|0);var g=e+96|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);1!=g&&N(c,bU|0,(j=h,h+=8,f[0]=g,a[j>>2]=b[0],a[j+4>>2]=b[1],j));e=a[e+88>>2];2==(e|0)?y(c,cU|0):1==(e|0)&&y(c,dU|0);y(c,eU|0);h=d}function aU(b,c){var d=h,e=c,c=h;h+=36;for(var e=e>>2,f=c>>2,D=e+9;e>2];1==(e|0)?0==m[c+3|0]<<24>>24?y(b,sg|0):(e=a[c>>2],N(b,Iq|0,(j=h,h+=12,a[j>>2]=e&255,a[j+4>>2]=e>>>8&255,a[j+8>>2]=e>>>16&255,j))):5==(e|0)?y(b,a[c>>2]):sa(Ny|0,95,fU|0,vd|0);h=d}function Oy(b,c){if(0==(c|0)){y(b,gU|0)}else{var d=a[b+16>>2];y(b,hU|0);aU(b,d+52|0);y(b,iU|0)}}function jU(c,d,e){var g,q=d>>2,y=h;h+=72;g=e>>2;e=h;h+=32;a[e>>2]=a[g];a[e+4>>2]=a[g+1];a[e+8>>2]=a[g+2];a[e+12>>2]=a[g+3];a[e+16>>2]=a[g+4];a[e+20>>2]=a[g+5];a[e+24>>2]=a[g+6];a[e+28>>2]=a[g+7];var l;0==(c|0)&&sa(pd|0,146,Nq|0,Nj|0);0==(d|0)&&sa(pd|0,147,Nq|0,Oh|0);0==(a[q+2]|0)&&sa(pd|0,148,Nq|0,Ph|0);g=(d+52|0)>>2;if(0==(a[g]|0)){l=2592}else{var k=d+60|0,n=a[k>>2];100!=(n|0)&&(J[n](d),a[g]=0,a[k>>2]=0,a[q+14]=0,l=2592)}if(2592==l){if(0==JK(d)<<24>>24){h=y;return}l=a[q+5];2>(a[q+6]-6|0)>>>0&&(kC(l,y),k=a[y+28>>2],a[q+14]=k,n=Gb(k),a[g]=n,sr(l,n,k),m[d+16|0]=1);0!=(a[g]|0)&&(a[q+15]=100);LK(d);if(0==(a[g]|0)){h=y;return}}g=e|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(a[q+8]|0);e=e+8|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])-(a[q+9]|0);N(c,kU|0,(j=h,h+=16,f[0]=g,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));0==m[d+16|0]<<24>>24?N(c,lU|0,(j=h,h+=4,a[j>>2]=a[q+3],j)):Pu(c,d);N(c,Mm|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));h=y}function mU(c,d,e){var g,m=h;g=e>>2;e=h;h+=32;a[e>>2]=a[g];a[e+4>>2]=a[g+1];a[e+8>>2]=a[g+2];a[e+12>>2]=a[g+3];a[e+16>>2]=a[g+4];a[e+20>>2]=a[g+5];a[e+24>>2]=a[g+6];a[e+28>>2]=a[g+7];0==(c|0)&&sa(pd|0,90,Oq|0,Nj|0);0==(d|0)&&sa(pd|0,91,Oq|0,Oh|0);d=d+8|0;0==(a[d>>2]|0)&&sa(pd|0,92,Oq|0,Ph|0);g=e|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=(0>g?g-.5:g+.5)&-1;var y=e+8|0,y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),y=(0>y?y-.5:y+.5)&-1,l=e+16|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=(0>l?l-.5:l+.5)&-1,e=e+24|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),e=(0>e?e-.5:e+.5)&-1,d=a[d>>2];N(c,nU|0,(j=h,h+=76,a[j>>2]=2,a[j+4>>2]=5,a[j+8>>2]=0,a[j+12>>2]=0,a[j+16>>2]=0,a[j+20>>2]=-1,a[j+24>>2]=1,a[j+28>>2]=-1,a[j+32>>2]=0,f[0]=0,a[j+36>>2]=b[0],a[j+40>>2]=b[1],a[j+44>>2]=0,a[j+48>>2]=0,a[j+52>>2]=0,a[j+56>>2]=0,a[j+60>>2]=0,a[j+64>>2]=5,a[j+68>>2]=0,a[j+72>>2]=d,j));N(c,oU|0,(j=h,h+=40,a[j>>2]=g,a[j+4>>2]=y,a[j+8>>2]=g,a[j+12>>2]=e,a[j+16>>2]=l,a[j+20>>2]=e,a[j+24>>2]=l,a[j+28>>2]=y,a[j+32>>2]=g,a[j+36>>2]=y,j));h=m}function pU(c,d,e){var g,m=h;g=e>>2;e=h;h+=32;a[e>>2]=a[g];a[e+4>>2]=a[g+1];a[e+8>>2]=a[g+2];a[e+12>>2]=a[g+3];a[e+16>>2]=a[g+4];a[e+20>>2]=a[g+5];a[e+24>>2]=a[g+6];a[e+28>>2]=a[g+7];0==(c|0)&&sa(pd|0,49,Pq|0,Nj|0);0==(d|0)&&sa(pd|0,50,Pq|0,Oh|0);d=d+8|0;0==(a[d>>2]|0)&&sa(pd|0,51,Pq|0,Ph|0);y(c,qU|0);y(c,a[d>>2]);var d=c+356|0,D=e+16|0;if(0==(a[d>>2]|0)){d=D|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);g=e|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);var l=e+24|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),e=e+8|0,e=l-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);N(c,rU|0,(j=h,h+=32,f[0]=d-g,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=g,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=-l,a[j+24>>2]=b[0],a[j+28>>2]=b[1],j))}else{g=e+24|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),l=e+8|0,l=g-(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),D|=0,D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),e|=0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),N(c,sU|0,(j=h,h+=32,f[0]=l,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=D-e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=e,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=g,a[j+24>>2]=b[0],a[j+28>>2]=b[1],j)),N(c,tU|0,(j=h,h+=20,a[j>>2]=a[d>>2],f[0]=e,a[j+4>>2]=b[0],a[j+8>>2]=b[1],f[0]=g,a[j+12>>2]=b[0],a[j+16>>2]=b[1],j))}y(c,Py|0);h=m}function Gb(b){do{if(245>b>>>0){var c=11>b>>>0?16:b+11&-8,d=c>>>3,e=a[E>>2],f=e>>>(d>>>0);if(0!=(f&3|0)){var h=(f&1^1)+d|0,j=h<<1,c=(j<<2)+E+40|0,d=(j+2<<2)+E+40|0,b=a[d>>2],j=b+8|0,f=a[j>>2];(c|0)==(f|0)?a[E>>2]=e&(1<>>0>2]>>>0?S():(a[d>>2]=f,a[f+12>>2]=c);h<<=3;a[b+4>>2]=h|3;h=b+(h|4)|0;a[h>>2]|=1;return j}if(c>>>0>a[E+8>>2]>>>0){if(0==(f|0)){if(0==(a[E+4>>2]|0)){e=c;break}j=uU(c);if(0==(j|0)){e=c;break}return j}var b=2<>>12&16,f=d>>>(b>>>0),d=f>>>5&8,k=f>>>(d>>>0),f=k>>>2&4,n=k>>>(f>>>0),k=n>>>1&2,n=n>>>(k>>>0),m=n>>>1&1,f=(d|b|f|k|m)+(n>>>(m>>>0))|0,b=f<<1,k=(b<<2)+E+40|0,n=(b+2<<2)+E+40|0,d=a[n>>2],b=d+8|0,m=a[b>>2];(k|0)==(m|0)?a[E>>2]=e&(1<>>0>2]>>>0?S():(a[n>>2]=m,a[m+12>>2]=k);f<<=3;e=f-c|0;a[d+4>>2]=c|3;k=d;d=k+c|0;a[k+(c|4)>>2]=e|1;a[k+f>>2]=e;m=a[E+8>>2];0!=(m|0)&&(c=a[E+20>>2],k=m>>>2&1073741822,f=(k<<2)+E+40|0,n=a[E>>2],m=1<<(m>>>3),0==(n&m|0)?(a[E>>2]=n|m,j=f,h=(k+2<<2)+E+40|0):(k=(k+2<<2)+E+40|0,n=a[k>>2],n>>>0>2]>>>0?S():(j=n,h=k)),a[h>>2]=c,a[j+12>>2]=c,a[c+8>>2]=j,a[c+12>>2]=f);a[E+8>>2]=e;a[E+20>>2]=d;return j=b}e=c}else{if(4294967231>>0){e=-1}else{if(e=b+11&-8,0!=(a[E+4>>2]|0)&&(c=vU(e),0!=(c|0))){return j=c}}}}while(0);h=a[E+8>>2];e>>>0>h>>>0?(j=a[E+12>>2],e>>>0>>0?(j=j-e|0,a[E+12>>2]=j,h=a[E+24>>2],a[E+24>>2]=h+e|0,a[e+(h+4)>>2]=j|1,a[h+4>>2]=e|3,j=h+8|0):j=wU(e)):(c=h-e|0,j=a[E+20>>2],15>>0?(a[E+20>>2]=j+e|0,a[E+8>>2]=c,a[e+(j+4)>>2]=c|1,a[j+h>>2]=c,a[j+4>>2]=e|3):(a[E+8>>2]=0,a[E+20>>2]=0,a[j+4>>2]=h|3,h=h+(j+4)|0,a[h>>2]|=1),j=j+8|0);return j}function uU(b){var c,d,e=a[E+4>>2],f=(e&-e)-1|0,e=f>>>12&16,h=f>>>(e>>>0),f=h>>>5&8;d=h>>>(f>>>0);var h=d>>>2&4,j=d>>>(h>>>0);d=j>>>1&2;var j=j>>>(d>>>0),k=j>>>1&1,e=h=f=a[E+((f|e|h|d|k)+(j>>>(k>>>0))<<2)+304>>2];d=e>>2;for(f=(a[f+4>>2]&-8)-b|0;;){j=a[h+16>>2];if(0==(j|0)){if(h=a[h+20>>2],0==(h|0)){break}else{d=h}}else{d=j}j=(a[d+4>>2]&-8)-b|0;k=j>>>0>>0;h=d;e=k?d:e;d=e>>2;f=k?j:f}var j=e,n=a[E+16>>2];j>>>0>>0&&S();h=j+b|0;j>>>0>>0||S();var k=a[d+6],m=a[d+3],p=(m|0)==(e|0);a:do{if(p){var s=e+20|0,v=a[s>>2];do{if(0==(v|0)){var t=e+16|0,u=a[t>>2];if(0==(u|0)){var w=0;c=w>>2;break a}}else{t=s,u=v}}while(0);for(;;){if(s=u+20|0,v=a[s>>2],0!=(v|0)){t=s,u=v}else{if(s=u+16|0,v=a[s>>2],0==(v|0)){break}else{t=s,u=v}}}t>>>0>>0?S():(a[t>>2]=0,w=u,c=w>>2)}else{t=a[d+2],t>>>0>>0?S():(a[t+12>>2]=m,a[m+8>>2]=t,w=m,c=w>>2)}}while(0);n=0==(k|0);a:do{if(!n){m=e+28|0;p=(a[m>>2]<<2)+E+304|0;do{if((e|0)==(a[p>>2]|0)){if(a[p>>2]=w,0==(w|0)){a[E+4>>2]&=1<>2]^-1;break a}}else{if(k>>>0>2]>>>0&&S(),t=k+16|0,(a[t>>2]|0)==(e|0)?a[t>>2]=w:a[k+20>>2]=w,0==(w|0)){break a}}}while(0);w>>>0>2]>>>0&&S();a[c+6]=k;m=a[d+4];0!=(m|0)&&(m>>>0>2]>>>0?S():(a[c+4]=m,a[m+24>>2]=w));m=a[d+5];0!=(m|0)&&(m>>>0>2]>>>0?S():(a[c+5]=m,a[m+24>>2]=w))}}while(0);if(16>f>>>0){var A=f+b|0;a[d+1]=A|3;A=A+(j+4)|0;a[A>>2]|=1;return A=e+8|0}a[d+1]=b|3;a[b+(j+4)>>2]=f|1;a[j+f+b>>2]=f;j=a[E+8>>2];if(0!=(j|0)){b=a[E+20>>2];w=j>>>2&1073741822;c=(w<<2)+E+40|0;d=a[E>>2];j=1<<(j>>>3);if(0==(d&j|0)){a[E>>2]=d|j;var A=c,y=(w+2<<2)+E+40|0}else{w=(w+2<<2)+E+40|0,d=a[w>>2],d>>>0>2]>>>0?S():(A=d,y=w)}a[y>>2]=b;a[A+12>>2]=b;a[b+8>>2]=A;a[b+12>>2]=c}a[E+8>>2]=f;a[E+20>>2]=h;return A=e+8|0}function wU(b){var c,d;0==(a[Rc>>2]|0)&&xU();var e=0==(a[E+440>>2]&4|0);a:do{if(e){var f=a[E+24>>2];if(0==(f|0)){d=2751}else{if(f=Qy(f),0==(f|0)){d=2751}else{var h=a[Rc+8>>2],h=b+47-a[E+12>>2]+h&-h;if(2147483647>h>>>0){d=Ie(h);var j=(d|0)==(a[f>>2]+a[f+4>>2]|0);c=j?d:-1;var j=j?h:0,k=h,n=d;d=2758}else{var m=0}}}if(2751==d){if(f=Ie(0),-1==(f|0)){m=0}else{var h=a[Rc+8>>2],h=h+(b+47)&-h,p=f,s=a[Rc+4>>2],v=s-1|0,h=0==(v&p|0)?h:h-p+(v+p&-s)|0;2147483647>h>>>0?(d=Ie(h),c=(j=(d|0)==(f|0))?f:-1,j=j?h:0,k=h,n=d,d=2758):m=0}}b:do{if(2758==d){d=-k|0;if(-1!=(c|0)){var t=j,u=c;d=2771;break a}do{if(-1!=(n|0)&2147483647>k>>>0){if(k>>>0<(b+48|0)>>>0){if(m=a[Rc+8>>2],m=b+47-k+m&-m,2147483647>m>>>0){if(-1==(Ie(m)|0)){Ie(d);m=j;break b}else{m=m+k|0}}else{m=k}}else{m=k}}else{m=k}}while(0);if(-1!=(n|0)){t=m;u=n;d=2771;break a}a[E+440>>2]|=4;var w=j;d=2768;break a}}while(0);a[E+440>>2]|=4;w=m}else{w=0}d=2768}while(0);2768==d&&(e=a[Rc+8>>2],e=e+(b+47)&-e,2147483647>e>>>0&&(e=Ie(e),c=Ie(0),-1!=(c|0)&-1!=(e|0)&e>>>0>>0&&(c=c-e|0,e=(j=c>>>0>(b+40|0)>>>0)?e:-1,-1!=(e|0)&&(t=j?c:w,u=e,d=2771))));do{if(2771==d){w=a[E+432>>2]+t|0;a[E+432>>2]=w;w>>>0>a[E+436>>2]>>>0&&(a[E+436>>2]=w);w=a[E+24>>2];e=0==(w|0);a:do{if(e){c=a[E+16>>2];0==(c|0)|u>>>0>>0&&(a[E+16>>2]=u);a[E+444>>2]=u;a[E+448>>2]=t;a[E+456>>2]=0;a[E+36>>2]=a[Rc>>2];a[E+32>>2]=-1;for(c=0;!(j=c<<1,k=(j<<2)+E+40|0,a[E+(j+3<<2)+40>>2]=k,a[E+(j+2<<2)+40>>2]=k,c=c+1|0,32==(c|0));){}Qq(u,t-40|0)}else{j=E+444|0;for(c=j>>2;0!=(j|0);){var A=a[c],y=j+4|0,C=a[y>>2];if((u|0)==(A+C|0)){d=2780;break}j=a[c+2];c=j>>2}do{if(2780==d&&0==(a[c+3]&8|0)&&(j=w,j>>>0>=A>>>0&j>>>0>>0)){a[y>>2]=C+t|0;Qq(a[E+24>>2],a[E+12>>2]+t|0);break a}}while(0);u>>>0>2]>>>0&&(a[E+16>>2]=u);c=u+t|0;for(j=E+444|0;0!=(j|0);){var D=j|0;if((a[D>>2]|0)==(c|0)){d=2789;break}j=a[j+8>>2]}if(2789==d&&0==(a[j+12>>2]&8|0)){return a[D>>2]=u,A=j+4|0,a[A>>2]=a[A>>2]+t|0,b=yU(u,c,b)}zU(u,t)}}while(0);w=a[E+12>>2];if(w>>>0>b>>>0){return t=w-b|0,a[E+12>>2]=t,A=u=a[E+24>>2],a[E+24>>2]=A+b|0,a[b+(A+4)>>2]=t|1,a[u+4>>2]=b|3,b=u+8|0}}}while(0);a[Ea.c>>2]=12;return 0}function vU(b){var c,d,e,f,h,j=b>>2,k,n=-b|0,m=b>>>8;if(0==(m|0)){var p=0}else{if(16777215>>0){p=31}else{var s=(m+1048320|0)>>>16&8,v=m<>>16&4,u=v<>>16&2,A=14-(t|s|w)+(u<>>15)|0,p=b>>>((A+7|0)>>>0)&1|A<<1}}var y=a[E+(p<<2)+304>>2],C=0==(y|0);a:do{if(C){var D=0,F=n,G=0}else{var H=31==(p|0)?0:25-(p>>>1)|0,I=0,J=n,K=y;h=K>>2;for(var L=b<>>0>>0){if((Q|0)==(b|0)){D=K;F=R;G=K;break a}else{var U=K,V=R}}else{U=I,V=J}var W=a[h+5],Y=a[((L>>>31<<2)+16>>2)+h],Z=0==(W|0)|(W|0)==(Y|0)?N:W;if(0==(Y|0)){D=U;F=V;G=Z;break a}else{I=U,J=V,K=Y,h=K>>2,L<<=1,N=Z}}}}while(0);if(0==(G|0)&0==(D|0)){var $=2<>2]&($|-$);if(0==(ba|0)){var ca=0;return ca}var fa=(ba&-ba)-1|0,ka=fa>>>12&16,la=fa>>>(ka>>>0),ja=la>>>5&8,aa=la>>>(ja>>>0),da=aa>>>2&4,ea=aa>>>(da>>>0),qa=ea>>>1&2,sa=ea>>>(qa>>>0),ra=sa>>>1&1,ha=a[E+((ja|ka|da|qa|ra)+(sa>>>(ra>>>0))<<2)+304>>2]}else{ha=G}var ga=0==(ha|0);a:do{if(ga){var na=F,oa=D;f=oa>>2}else{var va=ha;e=va>>2;for(var Aa=F,ya=D;;){var Ea=(a[e+1]&-8)-b|0,wa=Ea>>>0>>0,Ba=wa?Ea:Aa,Fa=wa?va:ya,Ga=a[e+4];if(0!=(Ga|0)){va=Ga,e=va>>2,Aa=Ba,ya=Fa}else{var Ma=a[e+5];if(0==(Ma|0)){na=Ba;oa=Fa;f=oa>>2;break a}else{va=Ma,e=va>>2,Aa=Ba,ya=Fa}}}}}while(0);if(0==(oa|0)||na>>>0>=(a[E+8>>2]-b|0)>>>0){return ca=0}var ta=oa;d=ta>>2;var Ka=a[E+16>>2];ta>>>0>>0&&S();var za=ta+b|0;ta>>>0>>0||S();var ma=a[f+6],pa=a[f+3],Qa=(pa|0)==(oa|0);a:do{if(Qa){var Ha=oa+20|0,Ra=a[Ha>>2];do{if(0==(Ra|0)){var Pa=oa+16|0,db=a[Pa>>2];if(0==(db|0)){var La=0;c=La>>2;break a}else{var Va=Pa,Ya=db}}else{Va=Ha,Ya=Ra}}while(0);for(;;){var hb=Ya+20|0,Za=a[hb>>2];if(0!=(Za|0)){Va=hb,Ya=Za}else{var ib=Ya+16|0,ab=a[ib>>2];if(0==(ab|0)){break}else{Va=ib,Ya=ab}}}Va>>>0>>0?S():(a[Va>>2]=0,La=Ya,c=La>>2)}else{var $a=a[f+2];$a>>>0>>0?S():(a[$a+12>>2]=pa,a[pa+8>>2]=$a,La=pa,c=La>>2)}}while(0);var jb=0==(ma|0);a:do{if(jb){var Ca=oa}else{var Ia=oa+28|0,eb=(a[Ia>>2]<<2)+E+304|0;do{if((oa|0)==(a[eb>>2]|0)){if(a[eb>>2]=La,0==(La|0)){a[E+4>>2]&=1<>2]^-1;Ca=oa;break a}}else{ma>>>0>2]>>>0&&S();var ub=ma+16|0;(a[ub>>2]|0)==(oa|0)?a[ub>>2]=La:a[ma+20>>2]=La;if(0==(La|0)){Ca=oa;break a}}}while(0);La>>>0>2]>>>0&&S();a[c+6]=ma;var Sa=a[f+4];0!=(Sa|0)&&(Sa>>>0>2]>>>0?S():(a[c+4]=Sa,a[Sa+24>>2]=La));var mb=a[f+5];0==(mb|0)?Ca=oa:mb>>>0>2]>>>0?S():(a[c+5]=mb,a[mb+24>>2]=La,Ca=oa)}}while(0);do{if(16>na>>>0){var ua=na+b|0;a[Ca+4>>2]=ua|3;var Oa=ua+(ta+4)|0;a[Oa>>2]|=1}else{if(a[Ca+4>>2]=b|3,a[j+(d+1)]=na|1,a[(na>>2)+d+j]=na,256>na>>>0){var Wa=na>>>2&1073741822,pb=(Wa<<2)+E+40|0,ob=a[E>>2],bb=1<<(na>>>3);if(0==(ob&bb|0)){a[E>>2]=ob|bb;var qb=pb,wb=(Wa+2<<2)+E+40|0}else{var kb=(Wa+2<<2)+E+40|0,Cb=a[kb>>2];Cb>>>0>2]>>>0?S():(qb=Cb,wb=kb)}a[wb>>2]=za;a[qb+12>>2]=za;a[j+(d+2)]=qb;a[j+(d+3)]=pb}else{var vb=za,xb=na>>>8;if(0==(xb|0)){var yb=0}else{if(16777215>>0){yb=31}else{var nb=(xb+1048320|0)>>>16&8,rb=xb<>>16&4,Ta=rb<>>16&2,fb=14-(lb|nb|cb)+(Ta<>>15)|0,yb=na>>>((fb+7|0)>>>0)&1|fb<<1}}var Ua=(yb<<2)+E+304|0;a[j+(d+7)]=yb;a[j+(d+5)]=0;a[j+(d+4)]=0;var sb=a[E+4>>2],Na=1<>2]=sb|Na,a[Ua>>2]=vb,a[j+(d+6)]=Ua,a[j+(d+3)]=vb,a[j+(d+2)]=vb}else{for(var Fb=na<<(31==(yb|0)?0:25-(yb>>>1)|0),Db=a[Ua>>2];(a[Db+4>>2]&-8|0)!=(na|0);){var Gb=(Fb>>>31<<2)+Db+16|0,Eb=a[Gb>>2];if(0==(Eb|0)){k=2868;break}else{Fb<<=1,Db=Eb}}if(2868==k){if(Gb>>>0>2]>>>0){S()}else{a[Gb>>2]=vb;a[j+(d+6)]=Db;a[j+(d+3)]=vb;a[j+(d+2)]=vb;break}}var Hb=Db+8|0,Bb=a[Hb>>2],Ja=a[E+16>>2];Db>>>0>>0&&S();Bb>>>0>>0?S():(a[Bb+12>>2]=vb,a[Hb>>2]=vb,a[j+(d+2)]=Bb,a[j+(d+3)]=Db,a[j+(d+6)]=0)}}}}while(0);return ca=Ca+8|0}function AU(b){var c;0==(a[Rc>>2]|0)&&xU();if(4294967232<=b>>>0){return 0}c=a[E+24>>2];if(0==(c|0)){return 0}var d=a[E+12>>2];if(d>>>0>(b+40|0)>>>0){var e=a[Rc+8>>2],d=(Math.floor(((-40-b-1+d+e|0)>>>0)/(e>>>0))-1)*e|0,f=Qy(c);if(0==(a[f+12>>2]&8|0)&&(b=Ie(0),c=(f+4|0)>>2,(b|0)==(a[f>>2]+a[c]|0)&&(d=Ie(-(2147483646>>0?-2147483648-e|0:d)|0),e=Ie(0),-1!=(d|0)&e>>>0>>0&&(d=b-e|0,(b|0)!=(e|0))))){return a[c]=a[c]-d|0,a[E+432>>2]=a[E+432>>2]-d|0,Qq(a[E+24>>2],a[E+12>>2]-d|0),1}}if(a[E+12>>2]>>>0<=a[E+28>>2]>>>0){return 0}a[E+28>>2]=-1;return 0}function G(b){var c,d,e,f,h,j,k,n=b>>2,m;if(0!=(b|0)){var p=b-8|0,s=a[E+16>>2];p>>>0>>0&&S();var v=a[b-4>>2],t=v&3;1==(t|0)&&S();var u=v&-8;k=u>>2;var w=b+(u-8)|0,A=0==(v&1|0);a:do{if(A){var y=a[p>>2];if(0==(t|0)){return}var C=-8-y|0;j=C>>2;var D=b+C|0,F=D,G=y+u|0;D>>>0>>0&&S();if((F|0)==(a[E+20>>2]|0)){h=(b+(u-4)|0)>>2;if(3!=(a[h]&3|0)){var H=F;f=H>>2;var I=G;break}a[E+8>>2]=G;a[h]&=-2;a[j+(n+1)]=G|1;a[w>>2]=G;return}var J=y>>>3;if(256>y>>>0){var K=a[j+(n+2)],L=a[j+(n+3)];if((K|0)==(L|0)){a[E>>2]&=1<>2;I=G;break}var N=((y>>>2&1073741822)<<2)+E+40|0;(K|0)!=(N|0)&K>>>0>>0&&S();if((L|0)==(N|0)|L>>>0>=s>>>0){a[K+12>>2]=L;a[L+8>>2]=K;H=F;f=H>>2;I=G;break}else{S()}}var Q=D,R=a[j+(n+6)],U=a[j+(n+3)],V=(U|0)==(Q|0);b:do{if(V){var W=C+(b+20)|0,Y=a[W>>2];do{if(0==(Y|0)){var Z=C+(b+16)|0,$=a[Z>>2];if(0==($|0)){var ba=0;e=ba>>2;break b}else{var ca=Z,fa=$}}else{ca=W,fa=Y}}while(0);for(;;){var ka=fa+20|0,la=a[ka>>2];if(0!=(la|0)){ca=ka,fa=la}else{var ja=fa+16|0,aa=a[ja>>2];if(0==(aa|0)){break}else{ca=ja,fa=aa}}}ca>>>0>>0?S():(a[ca>>2]=0,ba=fa,e=ba>>2)}else{var da=a[j+(n+2)];da>>>0>>0?S():(a[da+12>>2]=U,a[U+8>>2]=da,ba=U,e=ba>>2)}}while(0);if(0==(R|0)){H=F,f=H>>2,I=G}else{var ea=C+(b+28)|0,na=(a[ea>>2]<<2)+E+304|0;do{if((Q|0)==(a[na>>2]|0)){if(a[na>>2]=ba,0==(ba|0)){a[E+4>>2]&=1<>2]^-1;H=F;f=H>>2;I=G;break a}}else{R>>>0>2]>>>0&&S();var qa=R+16|0;(a[qa>>2]|0)==(Q|0)?a[qa>>2]=ba:a[R+20>>2]=ba;if(0==(ba|0)){H=F;f=H>>2;I=G;break a}}}while(0);ba>>>0>2]>>>0&&S();a[e+6]=R;var oa=a[j+(n+4)];0!=(oa|0)&&(oa>>>0>2]>>>0?S():(a[e+4]=oa,a[oa+24>>2]=ba));var ha=a[j+(n+5)];0==(ha|0)?(H=F,f=H>>2,I=G):ha>>>0>2]>>>0?S():(a[e+5]=ha,a[ha+24>>2]=ba,H=F,f=H>>2,I=G)}}else{H=p,f=H>>2,I=u}}while(0);var ga=H;d=ga>>2;ga>>>0>>0||S();var sa=b+(u-4)|0,ra=a[sa>>2];0==(ra&1|0)&&S();do{if(0==(ra&2|0)){if((w|0)==(a[E+24>>2]|0)){var va=a[E+12>>2]+I|0;a[E+12>>2]=va;a[E+24>>2]=H;a[f+1]=va|1;(H|0)==(a[E+20>>2]|0)&&(a[E+20>>2]=0,a[E+8>>2]=0);if(va>>>0<=a[E+28>>2]>>>0){return}AU(0);return}if((w|0)==(a[E+20>>2]|0)){var Aa=a[E+8>>2]+I|0;a[E+8>>2]=Aa;a[E+20>>2]=H;a[f+1]=Aa|1;a[(Aa>>2)+d]=Aa;return}var ya=(ra&-8)+I|0,Ea=ra>>>3,wa=256>ra>>>0;a:do{if(wa){var Ba=a[n+k],Fa=a[((u|4)>>2)+n];if((Ba|0)==(Fa|0)){a[E>>2]&=1<>>2&1073741822)<<2)+E+40|0;(Ba|0)!=(Ga|0)&&Ba>>>0>2]>>>0&&S();(Fa|0)!=(Ga|0)&&Fa>>>0>2]>>>0&&S();a[Ba+12>>2]=Fa;a[Fa+8>>2]=Ba}}else{var Ma=w,ta=a[k+(n+4)],Ka=a[((u|4)>>2)+n],za=(Ka|0)==(Ma|0);b:do{if(za){var ma=u+(b+12)|0,pa=a[ma>>2];do{if(0==(pa|0)){var Qa=u+(b+8)|0,Ha=a[Qa>>2];if(0==(Ha|0)){var Ra=0;c=Ra>>2;break b}else{var Pa=Qa,Va=Ha}}else{Pa=ma,Va=pa}}while(0);for(;;){var La=Va+20|0,db=a[La>>2];if(0!=(db|0)){Pa=La,Va=db}else{var Ya=Va+16|0,hb=a[Ya>>2];if(0==(hb|0)){break}else{Pa=Ya,Va=hb}}}Pa>>>0>2]>>>0?S():(a[Pa>>2]=0,Ra=Va,c=Ra>>2)}else{var Za=a[n+k];Za>>>0>2]>>>0?S():(a[Za+12>>2]=Ka,a[Ka+8>>2]=Za,Ra=Ka,c=Ra>>2)}}while(0);if(0!=(ta|0)){var ib=u+(b+20)|0,ab=(a[ib>>2]<<2)+E+304|0;do{if((Ma|0)==(a[ab>>2]|0)){if(a[ab>>2]=Ra,0==(Ra|0)){a[E+4>>2]&=1<>2]^-1;break a}}else{ta>>>0>2]>>>0&&S();var $a=ta+16|0;(a[$a>>2]|0)==(Ma|0)?a[$a>>2]=Ra:a[ta+20>>2]=Ra;if(0==(Ra|0)){break a}}}while(0);Ra>>>0>2]>>>0&&S();a[c+6]=ta;var jb=a[k+(n+2)];0!=(jb|0)&&(jb>>>0>2]>>>0?S():(a[c+4]=jb,a[jb+24>>2]=Ra));var Ca=a[k+(n+3)];0!=(Ca|0)&&(Ca>>>0>2]>>>0?S():(a[c+5]=Ca,a[Ca+24>>2]=Ra))}}}while(0);a[f+1]=ya|1;a[(ya>>2)+d]=ya;if((H|0)!=(a[E+20>>2]|0)){var Ia=ya}else{a[E+8>>2]=ya;return}}else{a[sa>>2]=ra&-2,a[f+1]=I|1,Ia=a[(I>>2)+d]=I}}while(0);if(256>Ia>>>0){var eb=Ia>>>2&1073741822,mb=(eb<<2)+E+40|0,Sa=a[E>>2],wb=1<<(Ia>>>3);if(0==(Sa&wb|0)){a[E>>2]=Sa|wb;var ua=mb,Oa=(eb+2<<2)+E+40|0}else{var Wa=(eb+2<<2)+E+40|0,pb=a[Wa>>2];pb>>>0>2]>>>0?S():(ua=pb,Oa=Wa)}a[Oa>>2]=H;a[ua+12>>2]=H;a[f+2]=ua;a[f+3]=mb}else{var ob=H,bb=Ia>>>8;if(0==(bb|0)){var qb=0}else{if(16777215>>0){qb=31}else{var yb=(bb+1048320|0)>>>16&8,kb=bb<>>16&4,vb=kb<>>16&2,Gb=14-(Cb|yb|xb)+(vb<>>15)|0,qb=Ia>>>((Gb+7|0)>>>0)&1|Gb<<1}}var nb=(qb<<2)+E+304|0;a[f+7]=qb;a[f+5]=0;a[f+4]=0;var rb=a[E+4>>2],lb=1<>2]=rb|lb,a[nb>>2]=ob,a[f+6]=nb,a[f+3]=H,a[f+2]=H}else{for(var Ta=Ia<<(31==(qb|0)?0:25-(qb>>>1)|0),cb=a[nb>>2];(a[cb+4>>2]&-8|0)!=(Ia|0);){var fb=(Ta>>>31<<2)+cb+16|0,Ua=a[fb>>2];if(0==(Ua|0)){m=3020;break}else{Ta<<=1,cb=Ua}}if(3020==m){if(fb>>>0>2]>>>0){S()}else{a[fb>>2]=ob;a[f+6]=cb;a[f+3]=H;a[f+2]=H;break}}var sb=cb+8|0,Na=a[sb>>2],Fb=a[E+16>>2];cb>>>0>>0&&S();Na>>>0>>0?S():(a[Na+12>>2]=ob,a[sb>>2]=ob,a[f+2]=Na,a[f+3]=cb,a[f+6]=0)}}while(0);var Db=a[E+32>>2]-1|0;a[E+32>>2]=Db;if(0==(Db|0)){for(var Hb=E+452|0;;){var Eb=a[Hb>>2];if(0==(Eb|0)){break}else{Hb=Eb+8|0}}a[E+32>>2]=-1}}}}function Yc(b,c){if(0==(b|0)){var d=0}else{d=c*b|0,d=65535<(c|b)>>>0?(Math.floor((d>>>0)/(b>>>0))|0)==(c|0)?d:-1:d}var e=Gb(d);if(0==(e|0)||0==(a[e-4>>2]&3|0)){return e}li(e,d);return e}function mc(a,b){return 0==(a|0)?Gb(b):BU(a,b)}function BU(b,c){var d,e,f;if(4294967231>>0){return a[Ea.c>>2]=12,0}var h=b-8|0;e=(b-4|0)>>2;var j=a[e],k=j&-8,n=k-8|0,m=b+n|0;h>>>0>2]>>>0&&S();var p=j&3;1!=(p|0)&-8<(n|0)||S();d=(b+(k-4)|0)>>2;0==(a[d]&1|0)&&S();n=11>c>>>0?16:c+11&-8;if(0==(p|0)){var s=0,v,j=a[h+4>>2]&-8;v=256>n>>>0?0:j>>>0>=(n+4|0)>>>0&&(j-n|0)>>>0<=a[Rc+8>>2]<<1>>>0?h:0;f=150}else{k>>>0>>0?(m|0)==(a[E+24>>2]|0)&&(d=a[E+12>>2]+k|0,d>>>0>n>>>0&&(s=d-n|0,a[e]=n|j&1|2,a[b+(n-4)>>2]=s|1,a[E+24>>2]=b+(n-8)|0,a[E+12>>2]=s,s=0,v=h,f=150)):(s=k-n|0,15>>0?(a[e]=n|j&1|2,a[b+(n-4)>>2]=s|3,a[d]|=1,s=b+n|0):s=0,v=h,f=150)}if(150==f&&0!=(v|0)){return 0!=(s|0)&&G(s),v+8|0}h=Gb(c);if(0==(h|0)){return 0}e=k-(0==(a[e]&3|0)?8:4)|0;tf(h,b,e>>>0>>0?e:c);G(b);return h}function xU(){if(0==(a[Rc>>2]|0)){var b=AQa();0!=(b-1&b|0)&&S();a[Rc+8>>2]=b;a[Rc+4>>2]=b;a[Rc+12>>2]=-1;a[Rc+16>>2]=2097152;a[Rc+20>>2]=0;a[E+440>>2]=0;b=Math.floor(Date.now()/1e3);a[Rc>>2]=b&-16^1431655768}}function Qy(b){var c,d,e=E+444|0;for(c=e>>2;;){var f=a[c];if(f>>>0<=b>>>0&&(f+a[c+1]|0)>>>0>b>>>0){var h=e;d=185;break}c=a[c+2];if(0==(c|0)){h=0;d=186;break}else{e=c,c=e>>2}}if(185==d||186==d){return h}}function Qq(b,c){var d=b+8|0,d=0==(d&7|0)?0:-d&7,e=c-d|0;a[E+24>>2]=b+d|0;a[E+12>>2]=e;a[d+(b+4)>>2]=e|1;a[c+(b+4)>>2]=40;a[E+28>>2]=a[Rc+16>>2]}function yU(b,c,d){var e,f,h,j=c>>2,k=b>>2,n,m=b+8|0,m=0==(m&7|0)?0:-m&7;f=c+8|0;var p=0==(f&7|0)?0:-f&7;h=p>>2;var s=c+p|0,v=m+d|0;f=v>>2;var v=b+v|0,t=s-(b+m)-d|0;a[(m+4>>2)+k]=d|3;if((s|0)==(a[E+24>>2]|0)){return n=a[E+12>>2]+t|0,a[E+12>>2]=n,a[E+24>>2]=v,a[f+(k+1)]=n|1,b=b+(m|8)|0}if((s|0)==(a[E+20>>2]|0)){return n=a[E+8>>2]+t|0,a[E+8>>2]=n,a[E+20>>2]=v,a[f+(k+1)]=n|1,a[(n>>2)+k+f]=n,b=b+(m|8)|0}var u=a[h+(j+1)];if(1==(u&3|0)){var d=u&-8,w=u>>>3,A=256>u>>>0;a:do{if(A){var y=a[((p|8)>>2)+j],C=a[h+(j+3)];if((y|0)==(C|0)){a[E>>2]&=1<>>2&1073741822)<<2)+E+40|0;(y|0)!=(D|0)&&y>>>0>2]>>>0&&S();(C|0)!=(D|0)&&C>>>0>2]>>>0&&S();a[y+12>>2]=C;a[C+8>>2]=y}}else{var y=s,C=a[((p|24)>>2)+j],D=a[h+(j+3)],F=(D|0)==(y|0);b:do{if(F){var G=p|16,H=G+(c+4)|0,I=a[H>>2];do{if(0==(I|0)){var J=c+G|0,K=a[J>>2];if(0==(K|0)){var L=0;e=L>>2;break b}}else{J=H,K=I}}while(0);for(;;){if(G=K+20|0,H=a[G>>2],0!=(H|0)){J=G,K=H}else{if(G=K+16|0,H=a[G>>2],0==(H|0)){break}else{J=G,K=H}}}J>>>0>2]>>>0?S():(a[J>>2]=0,L=K,e=L>>2)}else{J=a[((p|8)>>2)+j],J>>>0>2]>>>0?S():(a[J+12>>2]=D,a[D+8>>2]=J,L=D,e=L>>2)}}while(0);if(0!=(C|0)){D=p+(c+28)|0;F=(a[D>>2]<<2)+E+304|0;do{if((y|0)==(a[F>>2]|0)){if(a[F>>2]=L,0==(L|0)){a[E+4>>2]&=1<>2]^-1;break a}}else{if(C>>>0>2]>>>0&&S(),J=C+16|0,(a[J>>2]|0)==(y|0)?a[J>>2]=L:a[C+20>>2]=L,0==(L|0)){break a}}}while(0);L>>>0>2]>>>0&&S();a[e+6]=C;y=p|16;C=a[(y>>2)+j];0!=(C|0)&&(C>>>0>2]>>>0?S():(a[e+4]=C,a[C+24>>2]=L));y=a[(y+4>>2)+j];0!=(y|0)&&(y>>>0>2]>>>0?S():(a[e+5]=y,a[y+24>>2]=L))}}}while(0);e=c+(d|p)|0;c=d+t|0}else{e=s,c=t}e=e+4|0;a[e>>2]&=-2;a[f+(k+1)]=c|1;a[(c>>2)+k+f]=c;if(256>c>>>0){var N=c>>>2&1073741822;n=(N<<2)+E+40|0;e=a[E>>2];c=1<<(c>>>3);if(0==(e&c|0)){a[E>>2]=e|c;var Q=n,R=(N+2<<2)+E+40|0}else{N=(N+2<<2)+E+40|0,c=a[N>>2],c>>>0>2]>>>0?S():(Q=c,R=N)}a[R>>2]=v;a[Q+12>>2]=v;a[f+(k+2)]=Q;a[f+(k+3)]=n;return b=b+(m|8)|0}R=c>>>8;0==(R|0)?R=0:16777215>>0?R=31:(Q=(R+1048320|0)>>>16&8,e=R<>>16&4,e<<=R,j=(e+245760|0)>>>16&2,Q=14-(R|Q|j)+(e<>>15)|0,R=c>>>((Q+7|0)>>>0)&1|Q<<1);Q=(R<<2)+E+304|0;a[f+(k+7)]=R;a[f+(k+5)]=0;a[f+(k+4)]=0;e=a[E+4>>2];j=1<>2]=e|j,a[Q>>2]=v,a[f+(k+6)]=Q,a[f+(k+3)]=v,a[f+(k+2)]=v,b=b+(m|8)|0}R=c<<(31==(R|0)?0:25-(R>>>1)|0);for(Q=a[Q>>2];(a[Q+4>>2]&-8|0)!=(c|0);){if(N=(R>>>31<<2)+Q+16|0,e=a[N>>2],0==(e|0)){n=259;break}else{R<<=1,Q=e}}if(259==n){return N>>>0>2]>>>0&&S(),a[N>>2]=v,a[f+(k+6)]=Q,a[f+(k+3)]=v,a[f+(k+2)]=v,b=b+(m|8)|0}n=Q+8|0;N=a[n>>2];R=a[E+16>>2];Q>>>0>>0&&S();N>>>0>>0&&S();a[N+12>>2]=v;a[n>>2]=v;a[f+(k+2)]=N;a[f+(k+3)]=Q;a[f+(k+6)]=0;return b=b+(m|8)|0}function zU(b,c){var d,e,f,h=a[E+24>>2];e=h>>2;var j=Qy(h),k=a[j>>2];d=a[j+4>>2];var j=k+d|0,n=k+(d-39)|0,k=k+(d-47)+(0==(n&7|0)?0:-n&7)|0,k=k>>>0<(h+16|0)>>>0?h:k,n=k+8|0;d=n>>2;Qq(b,c-40|0);a[k+4>>2]=27;a[d]=a[E+444>>2];a[d+1]=a[E+448>>2];a[d+2]=a[E+452>>2];a[d+3]=a[E+456>>2];a[E+444>>2]=b;a[E+448>>2]=c;a[E+456>>2]=0;a[E+452>>2]=n;d=k+28|0;a[d>>2]=7;n=(k+32|0)>>>0>>0;a:do{if(n){for(var m=d;;){var p=m+4|0;a[p>>2]=7;if((m+8|0)>>>0>>0){m=p}else{break a}}}}while(0);if((k|0)!=(h|0)){if(j=k-h|0,k=j+(h+4)|0,a[k>>2]&=-2,a[e+1]=j|1,a[h+j>>2]=j,256>j>>>0){var s=j>>>2&1073741822;f=(s<<2)+E+40|0;k=a[E>>2];j=1<<(j>>>3);if(0==(k&j|0)){a[E>>2]=k|j;var v=f,t=(s+2<<2)+E+40|0}else{s=(s+2<<2)+E+40|0,j=a[s>>2],j>>>0>2]>>>0?S():(v=j,t=s)}a[t>>2]=h;a[v+12>>2]=h;a[e+2]=v;a[e+3]=f}else{if(t=j>>>8,0==(t|0)?t=0:16777215>>0?t=31:(v=(t+1048320|0)>>>16&8,k=t<>>16&4,k<<=t,d=(k+245760|0)>>>16&2,v=14-(t|v|d)+(k<>>15)|0,t=j>>>((v+7|0)>>>0)&1|v<<1),v=(t<<2)+E+304|0,a[e+7]=t,a[e+5]=0,a[e+4]=0,k=a[E+4>>2],d=1<>2]=k|d,a[v>>2]=h,a[e+6]=v,a[e+3]=h,a[e+2]=h}else{t=j<<(31==(t|0)?0:25-(t>>>1)|0);for(v=a[v>>2];(a[v+4>>2]&-8|0)!=(j|0);){if(s=(t>>>31<<2)+v+16|0,k=a[s>>2],0==(k|0)){f=320;break}else{t<<=1,v=k}}320==f?(s>>>0>2]>>>0&&S(),a[s>>2]=h,a[e+6]=v,a[e+3]=h,a[e+2]=h):(f=v+8|0,s=a[f>>2],t=a[E+16>>2],v>>>0>>0&&S(),s>>>0>>0&&S(),a[s+12>>2]=h,a[f>>2]=h,a[e+2]=s,a[e+3]=v,a[e+6]=0)}}}}function qr(a){function b(){var c=0;eC=wc;K._main&&(qn(CU),c=K.Na(a),K.noExitRuntime||(qn(tr),iC.print()));if(K.postRun){for("function"==typeof K.postRun&&(K.postRun=[K.postRun]);0>"+c+")<<"+c+")"}return"Math.ceil(("+a+")/"+b+")*"+b}),Ya:(function(a){return a in Qa.Ha||a in Qa.Ga}),Za:(function(a){return"*"==a[a.length-1]}),ab:(function(a){return isPointerType(a)?ee:/^\[\d+\ x\ (.*)\]/.test(a)||/?/.test(a)?wc:"%"==a[0]}),Ha:{i1:0,i8:0,i16:0,i32:0,i64:0},Ga:{"float":0,"double":0},Xc:(function(a,b,c,d){var e=Math.pow(2,d)-1;if(32>d){switch(c){case"shl":return[a<>>32-d];case"ashr":return[(a>>>d|(b&e)<<32-d)>>0>>>0,b>>d>>>0];case"lshr":return[(a>>>d|(b&e)<<32-d)>>>0,b>>>d]}}else{if(32==d){switch(c){case"shl":return[0,a];case"ashr":return[b,0>(b|0)?e:0];case"lshr":return[b,0]}}else{switch(c){case"shl":return[0,a<>d-32>>>0,0>(b|0)?e:0];case"lshr":return[b>>>d-32,0]}}}Yg("unknown bitshift64 op: "+[value,c,d])}),jd:(function(a,b){return(a|0|b|0)+4294967296*(Math.round(a/4294967296)|Math.round(b/4294967296))}),Wc:(function(a,b){return((a|0)&(b|0))+4294967296*(Math.round(a/4294967296)&Math.round(b/4294967296))}),Cd:(function(a,b){return((a|0)^(b|0))+4294967296*(Math.round(a/4294967296)^Math.round(b/4294967296))}),Y:(function(a){if(1==Qa.z){return 1}var b={"%i1":1,"%i8":1,"%i16":2,"%i32":4,"%i64":8,"%float":4,"%double":8}["%"+a];b||("*"==a.charAt(a.length-1)?b=Qa.z:"i"==a[0]&&(a=parseInt(a.substr(1)),Ae(0==a%8),b=a/8));return b}),W:(function(a){return Math.max(Qa.Y(a),Qa.z)}),Ta:(function(a,b){var c={};return b?a.filter((function(a){return c[a[b]]?ee:c[a[b]]=wc})):a.filter((function(a){return c[a]?ee:c[a]=wc}))}),set:(function(){for(var a="object"===typeof arguments[0]?arguments[0]:arguments,b={},c=0;cc){return String.fromCharCode(c)}a.push(c);b=191c?1:2;return""}if(0c?String.fromCharCode((c&31)<<6|d&63):String.fromCharCode((c&15)<<12|(d&63)<<6|e&63);a.length=0;return c});this.ib=(function(a){for(var a=unescape(encodeURIComponent(a)),b=[],c=0;c>2<<2;return b}),Ba:(function(a){var b=We;We+=a;We=We+3>>2<<2;We>=gk&&Yg("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value ( "+gk+"), (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.");return b}),B:(function(a,b){return Math.ceil(a/(b?b:4))*(b?b:4)}),cb:(function(a,b,c){return c?(a>>>0)+4294967296*(b>>>0):(a>>>0)+4294967296*(b|0)}),z:4,Uc:0},iC={Ia:0,na:0,pd:{},hd:(function(a,b){b||(this.na++,this.na>=this.Ia&&Yg("\n\nToo many corrections!"))}),print:bk()},j,Pb,ji,sQa=this;K.ccall=(function(a,b,c,d){return $B(ZB(a),b,c,d)});K.cwrap=(function(a,b,c){var d=ZB(a);return(function(){return $B(d,b,c,Array.prototype.slice.call(arguments))})});K.setValue=dk;K.getValue=ki;var sn=0,$g=1,c=2,cC=3;K.ALLOC_NORMAL=sn;K.ALLOC_STACK=$g;K.ALLOC_STATIC=c;K.ALLOC_NONE=cC;K.allocate=d;K.Pointer_stringify=Oe;K.Array_stringify=(function(a){for(var b="",c=0;c>2);ib.subarray(Nm>>2);var f=Sy.subarray(Nm>>3);Sq=Nm+8;We=Sq+4095>>12<<12;Ae(We>2]=U|0;a[Bd+4>>2]=U+16|0;a[Bd+8>>2]=U+32|0;a[Bd+12>>2]=U+48|0;a[Bd+16>>2]=U+64|0;a[Bd+20>>2]=U+80|0;a[Bd+24>>2]=U+96|0;a[Bd+28>>2]=U+112|0;a[Bd+32>>2]=U+16|0;a[Bd+36>>2]=U+16|0;a[Bd+40>>2]=U+80|0;a[Bd+44>>2]=U+80|0;a[cd>>2]=OB|0;a[cd+4>>2]=Ac|0;a[cd+8>>2]=Zj|0;a[cd+12>>2]=iB|0;a[cd+16>>2]=ir|0;a[cd+20>>2]=Yj|0;a[cd+24>>2]=RA|0;a[cd+28>>2]=hr|0;a[cd+32>>2]=fr|0;a[cd+36>>2]=MA|0;a[cd+40>>2]=er|0;a[cd+44>>2]=Vj|0;a[cd+48>>2]=HA|0;a[cd+52>>2]=GA|0;a[cd+56>>2]=hf|0;a[cd+60>>2]=Uj|0;a[L>>2]=IA|0;a[L+4>>2]=AA|0;a[L+8>>2]=OB|0;a[L+12>>2]=Xz|0;a[L+16>>2]=Mz|0;a[L+20>>2]=Bz|0;a[L+24>>2]=qz|0;a[L+28>>2]=Ac|0;a[L+32>>2]=SB|0;a[L+36>>2]=Zj|0;a[L+40>>2]=wB|0;a[L+44>>2]=mB|0;a[L+48>>2]=bB|0;a[L+52>>2]=WA|0;a[L+56>>2]=SA|0;a[L+60>>2]=QA|0;a[L+64>>2]=OA|0;a[L+68>>2]=NA|0;a[L+72>>2]=LA|0;a[L+76>>2]=JA|0;a[L+80>>2]=gn|0;a[L+84>>2]=gka|0;a[L+88>>2]=iia|0;a[L+92>>2]=EA|0;a[L+96>>2]=ega|0;a[L+100>>2]=DA|0;a[L+104>>2]=$ea|0;a[L+108>>2]=CA|0;a[L+112>>2]=dea|0;a[L+116>>2]=BA|0;a[L+120>>2]=zA|0;a[L+124>>2]=xA|0;a[L+128>>2]=Bca|0;a[L+132>>2]=wA|0;a[L+136>>2]=uA|0;a[L+140>>2]=sA|0;a[L+144>>2]=rA|0;a[L+148>>2]=qA|0;a[L+152>>2]=pA|0;a[L+156>>2]=nA|0;a[L+160>>2]=mA|0;a[L+164>>2]=lA|0;a[L+168>>2]=kA|0;a[L+172>>2]=hA|0;a[L+176>>2]=fA|0;a[L+180>>2]=dA|0;a[L+184>>2]=cA|0;a[L+188>>2]=aA|0;a[L+192>>2]=iB|0;a[L+196>>2]=Zz|0;a[L+200>>2]=Wz|0;a[L+204>>2]=Uz|0;a[L+208>>2]=Tz|0;a[L+212>>2]=ir|0;a[L+216>>2]=Yj|0;a[L+220>>2]=Sz|0;a[L+224>>2]=Rz|0;a[L+228>>2]=Pz|0;a[L+232>>2]=Oz|0;a[L+236>>2]=Nz|0;a[L+240>>2]=Lz|0;a[L+244>>2]=Kz|0;a[L+248>>2]=Jz|0;a[L+252>>2]=Iz|0;a[L+256>>2]=Hz|0;a[L+260>>2]=Gz|0;a[L+264>>2]=Fz|0;a[L+268>>2]=Ez|0;a[L+272>>2]=Dz|0;a[L+276>>2]=Cz|0;a[L+280>>2]=Az|0;a[L+284>>2]=zz|0;a[L+288>>2]=B1|0;a[L+292>>2]=qe|0;a[L+296>>2]=yz|0;a[L+300>>2]=xz|0;a[L+304>>2]=wz|0;a[L+308>>2]=uz|0;a[L+312>>2]=sz|0;a[L+316>>2]=rz|0;a[L+320>>2]=pz|0;a[L+324>>2]=oz|0;a[L+328>>2]=RA|0;a[L+332>>2]=nz|0;a[L+336>>2]=mz|0;a[L+340>>2]=Zm|0;a[L+344>>2]=hr|0;a[L+348>>2]=lz|0;a[L+352>>2]=kz|0;a[L+356>>2]=jz|0;a[L+360>>2]=iz|0;a[L+364>>2]=hz|0;a[L+368>>2]=gz|0;a[L+372>>2]=fz|0;a[L+376>>2]=ez|0;a[L+380>>2]=dz|0;a[L+384>>2]=cz|0;a[L+388>>2]=bz|0;a[L+392>>2]=UB|0;a[L+396>>2]=TB|0;a[L+400>>2]=RB|0;a[L+404>>2]=fr|0;a[L+408>>2]=PB|0;a[L+412>>2]=MA|0;a[L+416>>2]=MB|0;a[L+420>>2]=LB|0;a[L+424>>2]=KB|0;a[L+428>>2]=JB|0;a[L+432>>2]=IB|0;a[L+436>>2]=HB|0;a[L+440>>2]=GB|0;a[L+444>>2]=FB|0;a[L+448>>2]=EB|0;a[L+452>>2]=BB|0;a[L+456>>2]=AB|0;a[L+460>>2]=zB|0;a[L+464>>2]=yB|0;a[L+468>>2]=xB|0;a[L+472>>2]=er|0;a[L+476>>2]=Vj|0;a[L+480>>2]=vB|0;a[L+484>>2]=uB|0;a[L+488>>2]=tB|0;a[L+492>>2]=sB|0;a[L+496>>2]=rB|0;a[L+500>>2]=qB|0;a[L+504>>2]=pB|0;a[L+508>>2]=oB|0;a[L+512>>2]=HA|0;a[L+516>>2]=nB|0;a[L+520>>2]=lB|0;a[L+524>>2]=kB|0;a[L+528>>2]=jB|0;a[L+532>>2]=hB|0;a[L+536>>2]=gB|0;a[L+540>>2]=fB|0;a[L+544>>2]=eB|0;a[L+548>>2]=GA|0;a[L+552>>2]=dB|0;a[L+556>>2]=cB|0;a[L+560>>2]=aB|0;a[L+564>>2]=$A|0;a[L+568>>2]=ZA|0;a[L+572>>2]=hf|0;a[L+576>>2]=YA|0;a[L+580>>2]=Uj|0;a[L+584>>2]=XA|0;a[NU+16>>2]=208;a[Ty+12>>2]=cd|0;a[Uy+12>>2]=L|0;a[Vy+12>>2]=Pf|0;a[ei>>2]=p2|0;a[ei+4>>2]=H_|0;a[ei+8>>2]=jx|0;a[ei+12>>2]=BPa|0;a[ei+16>>2]=WMa|0;a[I>>2]=JMa|0;a[I+4>>2]=YMa|0;a[I+8>>2]=Foa|0;a[I+12>>2]=Y|0;a[I+16>>2]=daa|0;a[I+20>>2]=c8|0;a[I+24>>2]=m5|0;a[I+28>>2]=t2|0;a[I+32>>2]=Y|0;a[I+36>>2]=K_|0;a[I+40>>2]=WX|0;a[I+44>>2]=Y|0;a[I+48>>2]=FPa|0;a[I+52>>2]=aNa|0;a[I+56>>2]=vKa|0;a[I+60>>2]=PHa|0;a[I+64>>2]=gFa|0;a[I+68>>2]=GCa|0;a[I+72>>2]=lAa|0;a[I+76>>2]=ln|0;a[I+80>>2]=iva|0;a[I+84>>2]=jta|0;a[I+88>>2]=lra|0;a[I+92>>2]=Joa|0;a[I+96>>2]=ima|0;a[I+100>>2]=rka|0;a[I+104>>2]=tia|0;a[I+108>>2]=Lga|0;a[I+112>>2]=jga|0;a[I+116>>2]=Gfa|0;a[I+120>>2]=dfa|0;a[I+124>>2]=Bea|0;a[I+128>>2]=iea|0;a[I+132>>2]=ii|0;a[I+136>>2]=Y|0;a[I+140>>2]=tda|0;a[I+144>>2]=ada|0;a[I+148>>2]=Eca|0;a[I+152>>2]=jca|0;a[I+156>>2]=Y|0;a[I+160>>2]=Sba|0;a[I+164>>2]=yba|0;a[I+168>>2]=$aa|0;a[I+172>>2]=Jaa|0;a[I+176>>2]=ii|0;a[I+180>>2]=Y|0;a[I+184>>2]=raa|0;a[I+188>>2]=$$|0;a[I+192>>2]=L$|0;a[I+196>>2]=s$|0;a[I+200>>2]=b$|0;a[I+204>>2]=N9|0;a[I+208>>2]=y9|0;a[I+212>>2]=i9|0;a[I+216>>2]=U8|0;a[I+220>>2]=F8|0;a[I+224>>2]=Y|0;a[I+228>>2]=p8|0;a[I+232>>2]=$7|0;a[I+236>>2]=L7|0;a[I+240>>2]=x7|0;a[I+244>>2]=i7|0;a[I+248>>2]=Y|0;a[I+252>>2]=W6|0;a[I+256>>2]=H6|0;a[I+260>>2]=s6|0;a[I+264>>2]=e6|0;a[I+268>>2]=Q5|0;a[I+272>>2]=A5|0;a[I+276>>2]=j5|0;a[I+280>>2]=T4|0;a[I+284>>2]=E4|0;a[I+288>>2]=r4|0;a[I+292>>2]=c4|0;a[I+296>>2]=O3|0;a[I+300>>2]=ii|0;a[I+304>>2]=Y|0;a[I+308>>2]=y3|0;a[I+312>>2]=i3|0;a[I+316>>2]=V2|0;a[I+320>>2]=ln|0;a[I+324>>2]=Y|0;a[I+328>>2]=G2|0;a[I+332>>2]=v2|0;a[I+336>>2]=b2|0;a[I+340>>2]=N1|0;a[I+344>>2]=z1|0;a[I+348>>2]=l1|0;a[I+352>>2]=Y0|0;a[I+356>>2]=K0|0;a[I+360>>2]=x0|0;a[I+364>>2]=k0|0;a[I+368>>2]=ln|0;a[I+372>>2]=Y|0;a[I+376>>2]=X_|0;a[I+380>>2]=I_|0;a[I+384>>2]=t_|0;a[I+388>>2]=e_|0;a[I+392>>2]=RZ|0;a[I+396>>2]=BZ|0;a[I+400>>2]=nZ|0;a[I+404>>2]=ZY|0;a[I+408>>2]=ii|0;a[I+412>>2]=Y|0;a[I+416>>2]=LY|0;a[I+420>>2]=xY|0;a[I+424>>2]=iY|0;a[I+428>>2]=UX|0;a[I+432>>2]=GX|0;a[I+436>>2]=rX|0;a[I+440>>2]=dX|0;a[I+444>>2]=PW|0;a[I+448>>2]=BW|0;a[I+452>>2]=nW|0;a[I+456>>2]=aW|0;a[I+460>>2]=ii|0;a[I+464>>2]=Y|0;a[I+468>>2]=OV|0;a[I+472>>2]=RPa|0;a[I+476>>2]=Y|0;a[I+480>>2]=DPa|0;a[I+484>>2]=pPa|0;a[I+488>>2]=bPa|0;a[I+492>>2]=POa|0;a[I+496>>2]=AOa|0;a[I+500>>2]=mOa|0;a[I+504>>2]=ZNa|0;a[I+508>>2]=MNa|0;a[I+512>>2]=zNa|0;a[I+516>>2]=Y|0;a[I+520>>2]=mNa|0;a[I+524>>2]=Y|0;a[I+528>>2]=ZMa|0;a[I+532>>2]=NMa|0;a[I+536>>2]=wMa|0;a[I+540>>2]=jMa|0;a[I+544>>2]=WLa|0;a[I+548>>2]=HLa|0;a[I+552>>2]=ii|0;a[I+556>>2]=Y|0;a[I+560>>2]=tLa|0;a[I+564>>2]=Y|0;a[I+568>>2]=gLa|0;a[I+572>>2]=UKa|0;a[I+576>>2]=HKa|0;a[I+580>>2]=tKa|0;a[I+584>>2]=gKa|0;a[I+588>>2]=UJa|0;a[I+592>>2]=FJa|0;a[I+596>>2]=ln|0;a[I+600>>2]=Y|0;a[I+604>>2]=qJa|0;a[I+608>>2]=Y|0;a[I+612>>2]=cJa|0;a[I+616>>2]=SIa|0;a[I+620>>2]=CIa|0;a[I+624>>2]=pIa|0;a[I+628>>2]=aIa|0;a[I+632>>2]=NHa|0;a[I+636>>2]=AHa|0;a[I+640>>2]=Y|0;a[I+644>>2]=mHa|0;a[I+648>>2]=$Ga|0;a[I+652>>2]=NGa|0;a[I+656>>2]=BGa|0;a[I+660>>2]=hGa|0;a[I+664>>2]=TFa|0;a[I+668>>2]=GFa|0;a[I+672>>2]=tFa|0;a[I+676>>2]=Y|0;a[I+680>>2]=eFa|0;a[H>>2]=b_|0;a[H+4>>2]=Ym|0;a[H+8>>2]=QB|0;a[H+24>>2]=me|0;a[H+36>>2]=RJa|0;a[H+40>>2]=Ym|0;a[H+44>>2]=QB|0;a[H+52>>2]=vg|0;a[H+60>>2]=me|0;a[H+68>>2]=bc|0;a[H+72>>2]=dCa|0;a[H+76>>2]=Ym|0;a[H+80>>2]=mn|0;a[H+96>>2]=me|0;a[H+100>>2]=Wb|0;a[H+108>>2]=Eua|0;a[H+112>>2]=Ym|0;a[H+116>>2]=mn|0;a[H+124>>2]=vg|0;a[H+132>>2]=me|0;a[H+136>>2]=Wb|0;a[H+140>>2]=bc|0;a[H+144>>2]=Psa|0;a[H+148>>2]=jn|0;a[H+152>>2]=mn|0;a[H+168>>2]=qd|0;a[H+172>>2]=Wb|0;a[H+180>>2]=Jla|0;a[H+184>>2]=jn|0;a[H+188>>2]=mn|0;a[H+196>>2]=bc|0;a[H+204>>2]=qd|0;a[H+208>>2]=Wb|0;a[H+212>>2]=bc|0;a[H+216>>2]=Uja|0;a[H+220>>2]=jn|0;a[H+224>>2]=FA|0;a[H+240>>2]=qd|0;a[H+252>>2]=Fga|0;a[H+256>>2]=jn|0;a[H+260>>2]=FA|0;a[H+268>>2]=bc|0;a[H+276>>2]=qd|0;a[H+284>>2]=bc|0;a[H+288>>2]=Tj|0;a[H+292>>2]=Tj|0;a[H+312>>2]=fn|0;a[H+324>>2]=Vea|0;a[H+328>>2]=Tj|0;a[H+332>>2]=Wb|0;a[H+348>>2]=fn|0;a[H+352>>2]=Wb|0;a[H+360>>2]=xea|0;a[H+364>>2]=Tj|0;a[H+368>>2]=Wb|0;a[H+376>>2]=vg|0;a[H+384>>2]=fn|0;a[H+388>>2]=Wb|0;a[H+392>>2]=bc|0;a[H+396>>2]=aea|0;a[H+400>>2]=Tj|0;a[H+412>>2]=vg|0;a[H+420>>2]=fn|0;a[H+428>>2]=bc|0;a[H+432>>2]=Qf|0;a[H+436>>2]=Qf|0;a[H+456>>2]=me|0;a[H+468>>2]=pda|0;a[H+472>>2]=Qf|0;a[H+476>>2]=Wb|0;a[H+492>>2]=me|0;a[H+496>>2]=Wb|0;a[H+504>>2]=Uca|0;a[H+508>>2]=Qf|0;a[H+512>>2]=Wb|0;a[H+520>>2]=vg|0;a[H+528>>2]=me|0;a[H+532>>2]=Wb|0;a[H+536>>2]=bc|0;a[H+540>>2]=yca|0;a[H+544>>2]=Qf|0;a[H+552>>2]=en|0;a[H+564>>2]=me|0;a[H+576>>2]=Mba|0;a[H+580>>2]=Qf|0;a[H+584>>2]=Wb|0;a[H+588>>2]=en|0;a[H+600>>2]=me|0;a[H+604>>2]=Wb|0;a[H+612>>2]=sba|0;a[H+616>>2]=Qf|0;a[H+620>>2]=Wb|0;a[H+624>>2]=en|0;a[H+628>>2]=vg|0;a[H+636>>2]=me|0;a[H+640>>2]=Wb|0;a[H+644>>2]=bc|0;a[H+648>>2]=Zaa|0;a[H+652>>2]=Qf|0;a[H+660>>2]=en|0;a[H+664>>2]=vg|0;a[H+672>>2]=me|0;a[H+680>>2]=bc|0;a[H+684>>2]=Iaa|0;a[H+688>>2]=Qf|0;a[H+700>>2]=vg|0;a[H+708>>2]=me|0;a[H+716>>2]=bc|0;a[H+720>>2]=qaa|0;a[H+724>>2]=dn|0;a[H+728>>2]=Wb|0;a[H+744>>2]=qd|0;a[H+748>>2]=Wb|0;a[H+756>>2]=K$|0;a[H+760>>2]=dn|0;a[H+764>>2]=Wb|0;a[H+772>>2]=bc|0;a[H+780>>2]=qd|0;a[H+784>>2]=Wb|0;a[H+788>>2]=bc|0;a[H+792>>2]=r$|0;a[H+796>>2]=dn|0;a[H+808>>2]=bc|0;a[H+816>>2]=qd|0;a[H+824>>2]=bc|0;a[H+828>>2]=a$|0;a[H+832>>2]=dn|0;a[H+836>>2]=gA|0;a[H+852>>2]=qd|0;a[H+864>>2]=x9|0;a[H+868>>2]=cn|0;a[H+872>>2]=Wb|0;a[H+888>>2]=qd|0;a[H+892>>2]=Wb|0;a[H+900>>2]=T8|0;a[H+904>>2]=cn|0;a[H+908>>2]=Wb|0;a[H+916>>2]=bc|0;a[H+924>>2]=qd|0;a[H+928>>2]=Wb|0;a[H+932>>2]=bc|0;a[H+936>>2]=E8|0;a[H+940>>2]=cn|0;a[H+952>>2]=bc|0;a[H+960>>2]=qd|0;a[H+968>>2]=bc|0;a[H+972>>2]=o8|0;a[H+976>>2]=cn|0;a[H+980>>2]=gA|0;a[H+996>>2]=qd|0;a[H+1008>>2]=Yz|0;a[H+1012>>2]=Yz|0;a[H+1032>>2]=Vz|0;a[H+1044>>2]=w7|0;a[H+1048>>2]=bn|0;a[H+1052>>2]=Wb|0;a[H+1068>>2]=qd|0;a[H+1072>>2]=Wb|0;a[H+1080>>2]=V6|0;a[H+1084>>2]=bn|0;a[H+1088>>2]=Wb|0;a[H+1096>>2]=bc|0;a[H+1104>>2]=qd|0;a[H+1108>>2]=Wb|0;a[H+1112>>2]=bc|0;a[H+1116>>2]=G6|0;a[H+1120>>2]=bn|0;a[H+1132>>2]=bc|0;a[H+1140>>2]=qd|0;a[H+1148>>2]=bc|0;a[H+1152>>2]=Li|0;a[H+1156>>2]=bn|0;a[H+1176>>2]=qd|0;a[H+1188>>2]=c6|0;a[H+1192>>2]=O5|0;a[H+1196>>2]=y5|0;a[H+1204>>2]=bc|0;a[H+1212>>2]=qd|0;a[H+1220>>2]=bc|0;a[H+1224>>2]=h5|0;a[H+1228>>2]=R4|0;a[H+1248>>2]=Vz|0;a[rl>>2]=J3|0;a[rl+4>>2]=t3|0;a[vc>>2]=vd|0;a[vc+4>>2]=jqa|0;a[vc+8>>2]=Ena|0;a[vc+12>>2]=pla|0;a[vc+16>>2]=zja|0;a[vc+20>>2]=Bha|0;a[vc+24>>2]=Aga|0;a[vc+28>>2]=Xfa|0;a[vc+32>>2]=ufa|0;a[vc+36>>2]=Qea|0;a[vc+40>>2]=tea|0;a[vc+44>>2]=Xda|0;a[vc+48>>2]=Eda|0;a[vc+52>>2]=mda|0;a[vc+56>>2]=Qca|0;a[vc+60>>2]=tca|0;a[vc+64>>2]=bca|0;a[vc+68>>2]=Iba|0;a[vc+72>>2]=oba|0;a[vc+76>>2]=Waa|0;a[vc+80>>2]=Faa|0;a[Tq+12>>2]=164;a[Tq+16>>2]=252;a[Tq+20>>2]=132;a[vV>>2]=368;a[Qc>>2]=Hoa|0;a[Qc+12>>2]=gma|0;a[Qc+16>>2]=pka|0;a[Qc+28>>2]=jr|0;a[Qc+32>>2]=Kga|0;a[Qc+44>>2]=iga|0;a[Qc+48>>2]=Ffa|0;a[Qc+60>>2]=cfa|0;a[Qc+64>>2]=Aea|0;a[Qc+76>>2]=hea|0;a[Qc+80>>2]=Lda|0;a[Qc+92>>2]=sda|0;a[Qc+96>>2]=$ca|0;a[Qc+108>>2]=Dca|0;a[Qc+112>>2]=ica|0;a[Qc+124>>2]=Rba|0;a[Qm+4>>2]=JZ|0;a[Qm+12>>2]=KU;a[Qm+16>>2]=Ty;a[Rm+4>>2]=C$|0;a[Rm+12>>2]=LU;a[Rm+16>>2]=PU;a[Sm+4>>2]=Dp|0;a[Sm+12>>2]=MU;a[Sm+16>>2]=Uy;a[Tm+4>>2]=jr|0;a[Tm+12>>2]=TU;a[Tm+16>>2]=QU;a[Um+4>>2]=q2|0;a[Um+12>>2]=uV;a[Um+16>>2]=RU;a[Vm+4>>2]=Xca|0;a[Vm+12>>2]=wV;a[Vm+16>>2]=Vy;a[Wg+4>>2]=ok|0;a[Wg+12>>2]=AV;a[Wg+16>>2]=SU;a[Wg+24>>2]=x$|0;a[Wg+32>>2]=JU;a[Wg+36>>2]=OU;a[zn>>2]=gea|0;a[zn+4>>2]=az|0;a[yn>>2]=eea|0;a[yn+4>>2]=ed|0;a[R+4>>2]=c5|0;a[R+12>>2]=hi;a[R+24>>2]=eAa|0;a[R+32>>2]=hi;a[R+44>>2]=hga|0;a[R+52>>2]=hi;a[R+64>>2]=Pba|0;a[R+72>>2]=hi;a[R+84>>2]=A9|0;a[R+92>>2]=hi;a[R+104>>2]=J6|0;a[R+112>>2]=Rj;a[R+124>>2]=Q3|0;a[R+132>>2]=Rj;a[R+144>>2]=$0|0;a[R+152>>2]=Rj;a[R+164>>2]=pZ|0;a[R+172>>2]=Rj;a[R+184>>2]=DW|0;a[R+192>>2]=Rj;a[R+204>>2]=oOa|0;a[R+212>>2]=Pj;a[R+224>>2]=KLa|0;a[R+232>>2]=Pj;a[R+244>>2]=eJa|0;a[R+252>>2]=Pj;a[R+264>>2]=yGa|0;a[R+272>>2]=Pj;a[R+284>>2]=TDa|0;a[R+292>>2]=Pj;a[R+304>>2]=TA|0;a[R+312>>2]=Xm;a[R+324>>2]=cza|0;a[R+332>>2]=Xm;a[R+344>>2]=PA|0;a[R+352>>2]=Xm;a[R+364>>2]=fua|0;a[R+372>>2]=Xm;a[R+384>>2]=psa|0;a[R+392>>2]=xV;a[R+404>>2]=Ypa|0;a[R+412>>2]=Md;a[R+424>>2]=rna|0;a[R+432>>2]=Md;a[R+444>>2]=hla|0;a[R+452>>2]=Md;a[R+464>>2]=rja|0;a[R+472>>2]=Md;a[R+484>>2]=sha|0;a[R+492>>2]=Md;a[R+504>>2]=wga|0;a[R+512>>2]=Md;a[R+524>>2]=Tfa|0;a[R+532>>2]=Md;a[R+544>>2]=qfa|0;a[R+552>>2]=Md;a[R+564>>2]=Nea|0;a[R+572>>2]=Md;a[R+584>>2]=rea|0;a[R+592>>2]=Md;a[R+604>>2]=Vda|0;a[R+612>>2]=Md;a[R+624>>2]=Cda|0;a[R+632>>2]=Md;a[R+644>>2]=jda|0;a[R+652>>2]=Md;a[R+664>>2]=Oca|0;a[R+672>>2]=Md;a[R+684>>2]=rca|0;a[R+692>>2]=Md;a[R+704>>2]=$ba|0;a[R+712>>2]=Md;a[R+724>>2]=Gba|0;a[R+732>>2]=ug;a[R+744>>2]=lba|0;a[R+752>>2]=ug;a[R+764>>2]=Uaa|0;a[R+772>>2]=ug;a[R+784>>2]=Daa|0;a[R+792>>2]=ug;a[R+804>>2]=maa|0;a[R+812>>2]=ug;a[R+824>>2]=W$|0;a[R+832>>2]=ug;a[R+844>>2]=G$|0;a[R+852>>2]=ug;a[R+864>>2]=n$|0;a[R+872>>2]=ug;a[R+884>>2]=iA|0;a[R+892>>2]=hi;a[R+904>>2]=J9|0;a[R+912>>2]=Qj;a[R+924>>2]=t9|0;a[R+932>>2]=Qj;a[R+944>>2]=e9|0;a[R+952>>2]=Qj;a[R+964>>2]=P8|0;a[R+972>>2]=Qj;a[R+984>>2]=z8|0;a[R+992>>2]=Qj;a[Wm+4>>2]=ok|0;a[Wm+12>>2]=zV;a[Wm+16>>2]=yV;a[Oc>>2]=vba|0;a[Oc+8>>2]=VFa|0;a[Oc+16>>2]=Oia|0;a[Oc+24>>2]=Gca|0;a[Oc+32>>2]=f$|0;a[Oc+40>>2]=k7|0;a[Oc+48>>2]=q4|0;a[Oc+56>>2]=x1|0;a[Oc+64>>2]=OZ|0;a[Oc+72>>2]=$W|0;a[Oc+80>>2]=KOa|0;a[Oc+88>>2]=DB|0;a[Oc+96>>2]=xJa|0;a[Oc+104>>2]=xHa|0;a[Uq+4>>2]=WW|0;a[Uq+16>>2]=BV;a[Vq+4>>2]=IEa|0;a[Vq+16>>2]=CV;a[Wq+4>>2]=iA|0;a[Wq+16>>2]=DV;a[Xg+4>>2]=PA|0;a[Xg+16>>2]=$y;a[Xg+24>>2]=rEa|0;a[Xg+36>>2]=$y;a[Xg+44>>2]=TA|0;a[Xg+56>>2]=FV;a[De+4>>2]=Xwa|0;a[De+16>>2]=Zq;a[De+24>>2]=vfa|0;a[De+36>>2]=$q;a[De+44>>2]=mba|0;a[De+56>>2]=$q;a[De+64>>2]=c9|0;a[De+76>>2]=$q;a[De+84>>2]=l6|0;a[De+96>>2]=Zq;a[De+104>>2]=o3|0;a[De+116>>2]=Zq;a[Xq+4>>2]=xGa|0;a[Xq+16>>2]=EV;a[ae+4>>2]=C7|0;a[ae+16>>2]=Sj;a[ae+24>>2]=J4|0;a[ae+36>>2]=Sj;a[ae+44>>2]=S1|0;a[ae+56>>2]=GV;a[ae+64>>2]=j_|0;a[ae+76>>2]=Sj;a[ae+84>>2]=wX|0;a[ae+96>>2]=Sj;a[ae+104>>2]=gPa|0;a[ae+116>>2]=Sj;a[Cl>>2]=cea|0;a[Cl+4>>2]=Jda|0;a[Cl+8>>2]=sg|0;a[Bl>>2]=Yca|0;a[Bl+4>>2]=jr|0;a[Bl+8>>2]=Dp|0;a[Mf>>2]=Ac|0;a[Mf+4>>2]=Zj|0;a[Mf+8>>2]=Yj|0;a[Mf+12>>2]=gn|0;a[Mf+16>>2]=Vj|0;a[Mf+20>>2]=Zm|0;a[Mf+24>>2]=Uj|0;a[Mf+28>>2]=hf|0;a[Pf>>2]=Ac|0;a[Pf+4>>2]=Zj|0;a[Pf+8>>2]=gn|0;a[Pf+12>>2]=Yj|0;a[Pf+16>>2]=Zm|0;a[Pf+20>>2]=Vj|0;a[Pf+24>>2]=hf|0;a[Pf+28>>2]=Uj|0;a[Yq>>2]=356;a[Yq+4>>2]=82;a[F>>2]=cba|0;a[F+8>>2]=Maa|0;a[F+16>>2]=vaa|0;a[F+24>>2]=eaa|0;a[F+32>>2]=O$|0;a[F+40>>2]=v$|0;a[F+48>>2]=e$|0;a[F+56>>2]=Q9|0;a[F+64>>2]=C9|0;a[F+72>>2]=m9|0;a[F+80>>2]=X8|0;a[F+88>>2]=I8|0;a[F+96>>2]=s8|0;a[F+104>>2]=d8|0;a[F+112>>2]=O7|0;a[F+120>>2]=A7|0;a[F+128>>2]=m7|0;a[F+136>>2]=Z6|0;a[F+144>>2]=L6|0;a[F+152>>2]=w6|0;a[F+160>>2]=h6|0;a[F+168>>2]=T5|0;a[F+176>>2]=D5|0;a[F+184>>2]=n5|0;a[F+192>>2]=W4|0;a[F+200>>2]=H4|0;a[F+208>>2]=u4|0;a[F+216>>2]=f4|0;a[F+224>>2]=S3|0;a[F+232>>2]=C3|0;a[F+240>>2]=l3|0;a[F+248>>2]=Y2|0;a[F+256>>2]=J2|0;a[F+264>>2]=u2|0;a[F+272>>2]=e2|0;a[F+280>>2]=Q1|0;a[F+288>>2]=D1|0;a[F+296>>2]=o1|0;a[F+304>>2]=b1|0;a[F+312>>2]=O0|0;a[F+320>>2]=A0|0;a[F+328>>2]=n0|0;a[F+336>>2]=$_|0;a[F+344>>2]=M_|0;a[F+352>>2]=w_|0;a[F+360>>2]=h_|0;a[F+368>>2]=UZ|0;a[F+376>>2]=EZ|0;a[F+384>>2]=rZ|0;a[F+392>>2]=bZ|0;a[F+400>>2]=NY|0;a[F+408>>2]=zY|0;a[F+416>>2]=kY|0;a[F+424>>2]=XX|0;a[F+432>>2]=IX|0;a[F+440>>2]=tX|0;a[F+448>>2]=fX|0;a[F+456>>2]=RW|0;a[F+464>>2]=EW|0;a[F+472>>2]=qW|0;a[F+480>>2]=cW|0;a[F+488>>2]=QV|0;a[F+496>>2]=TPa|0;a[F+504>>2]=GPa|0;a[F+512>>2]=rPa|0;a[F+520>>2]=dPa|0;a[F+528>>2]=ROa|0;a[F+536>>2]=COa|0;a[F+544>>2]=pOa|0;a[F+552>>2]=bOa|0;a[F+560>>2]=ONa|0;a[F+568>>2]=BNa|0;a[F+576>>2]=oNa|0;a[F+584>>2]=bNa|0;a[F+592>>2]=LMa|0;a[F+600>>2]=yMa|0;a[F+608>>2]=oMa|0;a[F+616>>2]=bMa|0;a[F+624>>2]=OLa|0;a[F+632>>2]=zLa|0;a[F+640>>2]=lLa|0;a[F+648>>2]=ZKa|0;a[F+656>>2]=MKa|0;a[F+664>>2]=wKa|0;a[F+672>>2]=lKa|0;a[F+680>>2]=ZJa|0;a[F+688>>2]=LJa|0;a[F+696>>2]=vJa|0;a[F+704>>2]=iJa|0;a[F+712>>2]=VIa|0;a[F+720>>2]=HIa|0;a[F+728>>2]=uIa|0;a[F+736>>2]=gIa|0;a[F+744>>2]=THa|0;a[F+752>>2]=FHa|0;a[F+760>>2]=rHa|0;a[F+768>>2]=eHa|0;a[F+776>>2]=JGa|0;a[F+784>>2]=EGa|0;a[F+792>>2]=nGa|0;a[F+800>>2]=ZFa|0;a[F+808>>2]=LFa|0;a[F+816>>2]=yFa|0;a[F+824>>2]=kFa|0;a[F+832>>2]=XEa|0;a[F+840>>2]=KEa|0;a[F+848>>2]=wEa|0;a[F+856>>2]=jEa|0;a[F+864>>2]=YDa|0;a[F+872>>2]=KDa|0;a[F+880>>2]=xDa|0;a[F+888>>2]=kDa|0;a[F+896>>2]=WCa|0;a[F+904>>2]=KCa|0;a[F+912>>2]=wCa|0;a[F+920>>2]=kCa|0;a[F+928>>2]=YBa|0;a[F+936>>2]=MBa|0;a[F+944>>2]=ABa|0;a[F+952>>2]=nBa|0;a[F+960>>2]=aBa|0;a[F+968>>2]=PAa|0;a[F+976>>2]=CAa|0;a[F+984>>2]=pAa|0;a[F+992>>2]=bAa|0;a[F+1e3>>2]=Qza|0;a[F+1008>>2]=ap|0;a[F+1016>>2]=tza|0;a[F+1024>>2]=hza|0;a[F+1032>>2]=Uya|0;a[F+1040>>2]=Hya|0;a[F+1048>>2]=uya|0;a[F+1056>>2]=fya|0;a[F+1064>>2]=Sxa|0;a[F+1072>>2]=Exa|0;a[F+1080>>2]=qxa|0;a[F+1088>>2]=cxa|0;a[F+1096>>2]=Owa|0;a[F+1104>>2]=Awa|0;a[F+1112>>2]=mwa|0;a[F+1120>>2]=$va|0;a[F+1128>>2]=Ova|0;a[F+1136>>2]=Ava|0;a[F+1144>>2]=nva|0;a[F+1152>>2]=$ua|0;a[F+1160>>2]=Nua|0;a[F+1168>>2]=Bua|0;a[F+1176>>2]=rua|0;a[F+1184>>2]=hua|0;a[F+1192>>2]=$ta|0;a[F+1200>>2]=Pta|0;a[F+1208>>2]=Fta|0;a[F+1216>>2]=wta|0;a[F+1224>>2]=DB|0;a[F+1232>>2]=eta|0;a[F+1240>>2]=Vsa|0;a[F+1248>>2]=Msa|0;a[F+1256>>2]=Esa|0;a[F+1264>>2]=usa|0;a[F+1272>>2]=hsa|0;a[F+1280>>2]=$ra|0;a[F+1288>>2]=Pra|0;a[F+1296>>2]=Cra|0;a[F+1304>>2]=qra|0;a[F+1312>>2]=cra|0;a[F+1320>>2]=Rqa|0;a[F+1328>>2]=Fqa|0;a[F+1336>>2]=sqa|0;a[F+1344>>2]=dqa|0;a[F+1352>>2]=Ppa|0;a[F+1360>>2]=Apa|0;a[F+1368>>2]=npa|0;a[F+1376>>2]=bpa|0;a[F+1384>>2]=Ooa|0;a[F+1392>>2]=yoa|0;a[F+1400>>2]=moa|0;a[F+1408>>2]=$na|0;a[F+1416>>2]=Mna|0;a[F+1424>>2]=yna|0;a[F+1432>>2]=ina|0;a[F+1440>>2]=Vma|0;a[F+1448>>2]=Ima|0;a[F+1456>>2]=xma|0;a[F+1464>>2]=nma|0;a[F+1472>>2]=$la|0;a[F+1480>>2]=Sla|0;a[F+1488>>2]=Gla|0;a[F+1496>>2]=vla|0;a[F+1504>>2]=kla|0;a[F+1512>>2]=ala|0;a[F+1520>>2]=Qka|0;a[F+1528>>2]=Ika|0;a[F+1536>>2]=Aka|0;a[F+1544>>2]=uka|0;a[F+1552>>2]=kka|0;a[F+1560>>2]=aka|0;a[F+1568>>2]=Pja|0;a[F+1576>>2]=Gja|0;a[F+1584>>2]=vja|0;a[F+1592>>2]=lja|0;a[F+1600>>2]=aja|0;a[F+1608>>2]=Ria|0;a[F+1616>>2]=Fia|0;a[F+1624>>2]=xia|0;a[F+1632>>2]=mia|0;a[F+1640>>2]=bia|0;a[F+1648>>2]=Sha|0;a[F+1656>>2]=Iha|0;a[F+1664>>2]=nha|0;a[F+1672>>2]=lha|0;a[F+1680>>2]=$ga|0;a[F+1688>>2]=Sga|0;a[F+1696>>2]=Oga|0;a[F+1704>>2]=Mga|0;a[F+1712>>2]=Iga|0;a[F+1720>>2]=Gga|0;a[F+1728>>2]=Dga|0;a[F+1736>>2]=Bga|0;a[F+1744>>2]=yga|0;a[F+1752>>2]=tga|0;a[F+1760>>2]=qga|0;a[F+1768>>2]=oga|0;a[F+1776>>2]=mga|0;a[F+1784>>2]=kga|0;a[F+1792>>2]=fga|0;a[F+1800>>2]=cga|0;a[F+1808>>2]=aga|0;a[F+1816>>2]=Zfa|0;a[F+1824>>2]=Vfa|0;a[F+1832>>2]=Qfa|0;a[F+1840>>2]=Nfa|0;a[F+1848>>2]=Lfa|0;a[F+1856>>2]=Jfa|0;a[F+1864>>2]=Hfa|0;a[F+1872>>2]=Cfa|0;a[F+1880>>2]=Afa|0;a[F+1888>>2]=yfa|0;a[F+1896>>2]=wfa|0;a[F+1904>>2]=sfa|0;a[F+1912>>2]=nfa|0;a[F+1920>>2]=kfa|0;a[F+1928>>2]=ifa|0;a[F+1936>>2]=gfa|0;a[F+1944>>2]=efa|0;a[F+1952>>2]=afa|0;a[F+1960>>2]=Xea|0;a[F+1968>>2]=Uea|0;a[F+1976>>2]=Sea|0;a[F+1984>>2]=Pea|0;a[F+1992>>2]=Kea|0;a[F+2e3>>2]=Hea|0;a[F+2008>>2]=Fea|0;a[co>>2]=q5|0;a[co+4>>2]=Z4|0;a[e>>2]=Efa|0;a[e+12>>2]=wba|0;a[e+24>>2]=k9|0;a[e+36>>2]=u6|0;a[e+48>>2]=A3|0;a[e+60>>2]=M0|0;a[e+72>>2]=aZ|0;a[e+84>>2]=pW|0;a[e+96>>2]=aOa|0;a[e+108>>2]=vLa|0;a[e+120>>2]=QIa|0;a[e+132>>2]=iGa|0;a[e+144>>2]=FDa|0;a[e+156>>2]=iBa|0;a[e+168>>2]=Pya|0;a[e+180>>2]=hwa|0;a[e+192>>2]=Wta|0;a[e+204>>2]=gsa|0;a[e+216>>2]=Jpa|0;a[e+228>>2]=cna|0;a[e+240>>2]=Xka|0;a[e+252>>2]=gja|0;a[e+264>>2]=gha|0;a[e+276>>2]=sga|0;a[e+288>>2]=Pfa|0;a[e+300>>2]=mfa|0;a[e+312>>2]=Iea|0;a[e+324>>2]=nea|0;a[e+336>>2]=Rda|0;a[e+348>>2]=yda|0;a[e+360>>2]=fda|0;a[e+372>>2]=Kca|0;a[e+384>>2]=oca|0;a[e+396>>2]=Xba|0;a[e+408>>2]=Dba|0;a[e+420>>2]=iba|0;a[e+432>>2]=Raa|0;a[e+444>>2]=Aaa|0;a[e+456>>2]=jaa|0;a[e+468>>2]=T$|0;a[e+480>>2]=B$|0;a[e+492>>2]=k$|0;a[e+504>>2]=V9|0;a[e+516>>2]=H9|0;a[e+528>>2]=r9|0;a[e+540>>2]=b9|0;a[e+552>>2]=N8|0;a[e+564>>2]=x8|0;a[e+576>>2]=i8|0;a[e+588>>2]=T7|0;a[e+600>>2]=G7|0;a[e+612>>2]=r7|0;a[e+624>>2]=d7|0;a[e+636>>2]=Q6|0;a[e+648>>2]=B6|0;a[e+660>>2]=n6|0;a[e+672>>2]=Y5|0;a[e+684>>2]=I5|0;a[e+696>>2]=t5|0;a[e+708>>2]=b5|0;a[e+720>>2]=N4|0;a[e+732>>2]=z4|0;a[e+744>>2]=k4|0;a[e+756>>2]=X3|0;a[e+768>>2]=H3|0;a[e+780>>2]=r3|0;a[e+792>>2]=c3|0;a[e+804>>2]=P2|0;a[e+816>>2]=A2|0;a[e+828>>2]=j2|0;a[e+840>>2]=W1|0;a[e+852>>2]=I1|0;a[e+864>>2]=t1|0;a[e+876>>2]=g1|0;a[e+888>>2]=T0|0;a[e+900>>2]=F0|0;a[e+912>>2]=s0|0;a[e+924>>2]=f0|0;a[e+936>>2]=R_|0;a[e+948>>2]=B_|0;a[e+960>>2]=n_|0;a[e+972>>2]=YZ|0;a[e+984>>2]=IZ|0;a[e+996>>2]=vZ|0;a[e+1008>>2]=gZ|0;a[e+1020>>2]=SY|0;a[e+1032>>2]=EY|0;a[e+1044>>2]=qY|0;a[e+1056>>2]=bY|0;a[e+1068>>2]=NX|0;a[e+1080>>2]=zX|0;a[e+1092>>2]=kX|0;a[e+1104>>2]=XW|0;a[e+1116>>2]=JW|0;a[e+1128>>2]=vW|0;a[e+1140>>2]=hW|0;a[e+1152>>2]=VV|0;a[e+1164>>2]=IV|0;a[e+1176>>2]=LPa|0;a[e+1188>>2]=wPa|0;a[e+1200>>2]=jPa|0;a[e+1212>>2]=WOa|0;a[e+1224>>2]=HOa|0;a[e+1236>>2]=uOa|0;a[e+1248>>2]=gOa|0;a[e+1260>>2]=TNa|0;a[e+1272>>2]=GNa|0;a[e+1284>>2]=tNa|0;a[e+1296>>2]=gNa|0;a[e+1308>>2]=RMa|0;a[e+1320>>2]=DMa|0;a[e+1332>>2]=qMa|0;a[e+1344>>2]=dMa|0;a[e+1356>>2]=QLa|0;a[e+1368>>2]=BLa|0;a[e+1380>>2]=nLa|0;a[e+1392>>2]=aLa|0;a[e+1404>>2]=OKa|0;a[e+1416>>2]=BKa|0;a[e+1428>>2]=nKa|0;a[e+1440>>2]=aKa|0;a[e+1452>>2]=NJa|0;a[e+1464>>2]=zJa|0;a[e+1476>>2]=kJa|0;a[e+1488>>2]=XIa|0;a[e+1500>>2]=JIa|0;a[e+1512>>2]=wIa|0;a[e+1524>>2]=jIa|0;a[e+1536>>2]=VHa|0;a[e+1548>>2]=HHa|0;a[e+1560>>2]=tHa|0;a[e+1572>>2]=gHa|0;a[e+1584>>2]=UGa|0;a[e+1596>>2]=GGa|0;a[e+1608>>2]=pGa|0;a[e+1620>>2]=aGa|0;a[e+1632>>2]=NFa|0;a[e+1644>>2]=AFa|0;a[e+1656>>2]=mFa|0;a[e+1668>>2]=ZEa|0;a[e+1680>>2]=MEa|0;a[e+1692>>2]=yEa|0;a[e+1704>>2]=lEa|0;a[e+1716>>2]=$Da|0;a[e+1728>>2]=MDa|0;a[e+1740>>2]=zDa|0;a[e+1752>>2]=mDa|0;a[e+1764>>2]=ZCa|0;a[e+1776>>2]=MCa|0;a[e+1788>>2]=yCa|0;a[e+1800>>2]=mCa|0;a[e+1812>>2]=$Ba|0;a[e+1824>>2]=OBa|0;a[e+1836>>2]=CBa|0;a[e+1848>>2]=pBa|0;a[e+1860>>2]=cBa|0;a[e+1872>>2]=RAa|0;a[e+1884>>2]=FAa|0;a[e+1896>>2]=rAa|0;a[e+1908>>2]=dAa|0;a[e+1920>>2]=Sza|0;a[e+1932>>2]=Gza|0;a[e+1944>>2]=vza|0;a[e+1956>>2]=jza|0;a[e+1968>>2]=Wya|0;a[e+1980>>2]=Jya|0;a[e+1992>>2]=wya|0;a[e+2004>>2]=iya|0;a[e+2016>>2]=Uxa|0;a[e+2028>>2]=Gxa|0;a[e+2040>>2]=sxa|0;a[e+2052>>2]=exa|0;a[e+2064>>2]=Qwa|0;a[e+2076>>2]=Cwa|0;a[e+2088>>2]=owa|0;a[e+2100>>2]=bwa|0;a[e+2112>>2]=Qva|0;a[e+2124>>2]=Dva|0;a[e+2136>>2]=pva|0;a[e+2148>>2]=bva|0;a[e+2160>>2]=Pua|0;a[e+2172>>2]=Cua|0;a[e+2184>>2]=sua|0;a[e+2196>>2]=iua|0;a[e+2208>>2]=aua|0;a[e+2220>>2]=Qta|0;a[e+2232>>2]=Gta|0;a[e+2244>>2]=xta|0;a[e+2256>>2]=nta|0;a[e+2268>>2]=fta|0;a[e+2280>>2]=Wsa|0;a[e+2292>>2]=Nsa|0;a[e+2304>>2]=Fsa|0;a[e+2316>>2]=vsa|0;a[e+2328>>2]=isa|0;a[e+2340>>2]=asa|0;a[e+2352>>2]=Qra|0;a[e+2364>>2]=Era|0;a[e+2376>>2]=rra|0;a[e+2388>>2]=dra|0;a[e+2400>>2]=Sqa|0;a[e+2412>>2]=Gqa|0;a[e+2424>>2]=tqa|0;a[e+2436>>2]=eqa|0;a[e+2448>>2]=Qpa|0;a[e+2460>>2]=Bpa|0;a[e+2472>>2]=opa|0;a[e+2484>>2]=cpa|0;a[e+2496>>2]=Poa|0;a[e+2508>>2]=zoa|0;a[e+2520>>2]=noa|0;a[e+2532>>2]=aoa|0;a[e+2544>>2]=Nna|0;a[e+2556>>2]=zna|0;a[e+2568>>2]=jna|0;a[e+2580>>2]=Wma|0;a[e+2592>>2]=Jma|0;a[e+2604>>2]=yma|0;a[e+2616>>2]=oma|0;a[e+2628>>2]=bma|0;a[e+2640>>2]=Tla|0;a[e+2652>>2]=Hla|0;a[e+2664>>2]=wla|0;a[e+2676>>2]=lla|0;a[e+2688>>2]=bla|0;a[e+2700>>2]=Rka|0;a[e+2712>>2]=Jka|0;a[e+2724>>2]=Bka|0;a[e+2736>>2]=vka|0;a[e+2748>>2]=lka|0;a[e+2760>>2]=cka|0;a[e+2772>>2]=Qja|0;a[e+2784>>2]=Hja|0;a[e+2796>>2]=wja|0;a[e+2808>>2]=mja|0;a[e+2820>>2]=bja|0;a[e+2832>>2]=Sia|0;a[e+2844>>2]=Hia|0;a[e+2856>>2]=yia|0;a[e+2868>>2]=nia|0;a[e+2880>>2]=cia|0;a[e+2892>>2]=Tha|0;a[e+2904>>2]=Jha|0;a[e+2916>>2]=yha|0;a[e+2928>>2]=mha|0;a[e+2940>>2]=aha|0;a[e+2952>>2]=Tga|0;a[e+2964>>2]=Pga|0;a[e+2976>>2]=Nga|0;a[e+2988>>2]=Jga|0;a[e+3e3>>2]=Hga|0;a[e+3012>>2]=Ega|0;a[e+3024>>2]=Cga|0;a[e+3036>>2]=zga|0;a[e+3048>>2]=uga|0;a[e+3060>>2]=rga|0;a[e+3072>>2]=pga|0;a[e+3084>>2]=nga|0;a[e+3096>>2]=lga|0;a[e+3108>>2]=gga|0;a[e+3120>>2]=dga|0;a[e+3132>>2]=bga|0;a[e+3144>>2]=$fa|0;a[e+3156>>2]=Wfa|0;a[e+3168>>2]=Rfa|0;a[e+3180>>2]=Ofa|0;a[e+3192>>2]=Mfa|0;a[e+3204>>2]=Kfa|0;a[e+3216>>2]=Ifa|0;a[e+3228>>2]=Dfa|0;a[e+3240>>2]=Bfa|0;a[e+3252>>2]=zfa|0;a[e+3264>>2]=xfa|0;a[e+3276>>2]=tfa|0;a[e+3288>>2]=ofa|0;a[e+3300>>2]=lfa|0;a[e+3312>>2]=jfa|0;a[e+3324>>2]=hfa|0;a[e+3336>>2]=ffa|0;a[e+3348>>2]=bfa|0;a[e+3360>>2]=Yea|0;a[e+3372>>2]=Wea|0;a[e+3384>>2]=Tea|0;a[e+3396>>2]=Rea|0;a[e+3408>>2]=Oea|0;a[e+3420>>2]=Jea|0;a[e+3432>>2]=Gea|0;a[e+3444>>2]=Eea|0;a[e+3456>>2]=Dea|0;a[e+3468>>2]=Cea|0;a[e+3480>>2]=zea|0;a[e+3492>>2]=yea|0;a[e+3504>>2]=wea|0;a[e+3516>>2]=uea|0;a[e+3528>>2]=sea|0;a[e+3540>>2]=oea|0;a[e+3552>>2]=mea|0;a[e+3564>>2]=lea|0;a[e+3576>>2]=kea|0;a[e+3588>>2]=jea|0;a[e+3600>>2]=fea|0;a[e+3612>>2]=bea|0;a[e+3624>>2]=$da|0;a[e+3636>>2]=Zda|0;a[e+3648>>2]=Wda|0;a[e+3660>>2]=Sda|0;a[e+3672>>2]=Qda|0;a[e+3684>>2]=Pda|0;a[e+3696>>2]=Oda|0;a[e+3708>>2]=Nda|0;a[e+3720>>2]=Kda|0;a[e+3732>>2]=Ida|0;a[e+3744>>2]=Hda|0;a[e+3756>>2]=Gda|0;a[e+3768>>2]=Dda|0;a[e+3780>>2]=zda|0;a[e+3792>>2]=xda|0;a[e+3804>>2]=wda|0;a[e+3816>>2]=vda|0;a[e+3828>>2]=uda|0;a[e+3840>>2]=rda|0;a[e+3852>>2]=qda|0;a[e+3864>>2]=oda|0;a[e+3876>>2]=nda|0;a[e+3888>>2]=lda|0;a[e+3900>>2]=gda|0;a[e+3912>>2]=eda|0;a[e+3924>>2]=dda|0;a[e+3936>>2]=cda|0;a[e+3948>>2]=bda|0;a[e+3960>>2]=Zca|0;a[e+3972>>2]=Wca|0;a[e+3984>>2]=Tca|0;a[e+3996>>2]=Sca|0;a[e+4008>>2]=Pca|0;a[e+4020>>2]=Mca|0;a[e+4032>>2]=Jca|0;a[e+4044>>2]=Ica|0;a[e+4056>>2]=Hca|0;a[e+4068>>2]=Fca|0;a[e+4080>>2]=Cca|0;a[e+4092>>2]=Aca|0;a[e+4104>>2]=xca|0;a[e+4116>>2]=vca|0;a[e+4128>>2]=sca|0;a[e+4140>>2]=pca|0;a[e+4152>>2]=nca|0;a[e+4164>>2]=mca|0;a[e+4176>>2]=lca|0;a[e+4188>>2]=kca|0;a[e+4200>>2]=hca|0;a[e+4212>>2]=gca|0;a[e+4224>>2]=eca|0;a[e+4236>>2]=dca|0;a[e+4248>>2]=aca|0;a[e+4260>>2]=Yba|0;a[e+4272>>2]=Wba|0;a[e+4284>>2]=Vba|0;a[e+4296>>2]=Uba|0;a[e+4308>>2]=Tba|0;a[e+4320>>2]=Qba|0;a[e+4332>>2]=Oba|0;a[e+4344>>2]=Lba|0;a[e+4356>>2]=Jba|0;a[e+4368>>2]=Hba|0;a[e+4380>>2]=Eba|0;a[e+4392>>2]=Cba|0;a[e+4404>>2]=Bba|0;a[e+4416>>2]=Aba|0;a[e+4428>>2]=zba|0;a[e+4440>>2]=xba|0;a[e+4452>>2]=uba|0;a[e+4464>>2]=rba|0;a[e+4476>>2]=pba|0;a[e+4488>>2]=nba|0;a[e+4500>>2]=jba|0;a[e+4512>>2]=hba|0;a[e+4524>>2]=gba|0;a[e+4536>>2]=eba|0;a[e+4548>>2]=dba|0;a[e+4560>>2]=bba|0;a[e+4572>>2]=aba|0;a[e+4584>>2]=Yaa|0;a[e+4596>>2]=Xaa|0;a[e+4608>>2]=Vaa|0;a[e+4620>>2]=Saa|0;a[e+4632>>2]=Qaa|0;a[e+4644>>2]=Paa|0;a[e+4656>>2]=Oaa|0;a[e+4668>>2]=Naa|0;a[e+4680>>2]=Laa|0;a[e+4692>>2]=Kaa|0;a[e+4704>>2]=Haa|0;a[e+4716>>2]=Gaa|0;a[e+4728>>2]=Eaa|0;a[e+4740>>2]=Baa|0;a[e+4752>>2]=zaa|0;a[e+4764>>2]=yaa|0;a[e+4776>>2]=xaa|0;a[e+4788>>2]=waa|0;a[e+4800>>2]=uaa|0;a[e+4812>>2]=saa|0;a[e+4824>>2]=paa|0;a[e+4836>>2]=oaa|0;a[e+4848>>2]=naa|0;a[e+4860>>2]=kaa|0;a[e+4872>>2]=iaa|0;a[e+4884>>2]=haa|0;a[e+4896>>2]=gaa|0;a[e+4908>>2]=faa|0;a[e+4920>>2]=caa|0;a[e+4932>>2]=aaa|0;a[e+4944>>2]=Z$|0;a[e+4956>>2]=Y$|0;a[e+4968>>2]=X$|0;a[e+4980>>2]=U$|0;a[e+4992>>2]=S$|0;a[e+5004>>2]=R$|0;a[e+5016>>2]=Q$|0;a[e+5028>>2]=P$|0;a[e+5040>>2]=N$|0;a[e+5052>>2]=M$|0;a[e+5064>>2]=J$|0;a[e+5076>>2]=I$|0;a[e+5088>>2]=H$|0;a[e+5100>>2]=E$|0;a[e+5112>>2]=A$|0;a[e+5124>>2]=z$|0;a[e+5136>>2]=y$|0;a[e+5148>>2]=w$|0;a[e+5160>>2]=u$|0;a[e+5172>>2]=t$|0;a[e+5184>>2]=q$|0;a[e+5196>>2]=p$|0;a[e+5208>>2]=o$|0;a[e+5220>>2]=l$|0;a[e+5232>>2]=j$|0;a[e+5244>>2]=i$|0;a[e+5256>>2]=h$|0;a[e+5268>>2]=g$|0;a[e+5280>>2]=d$|0;a[e+5292>>2]=c$|0;a[e+5304>>2]=$9|0;a[e+5316>>2]=Z9|0;a[e+5328>>2]=Y9|0;a[e+5340>>2]=W9|0;a[e+5352>>2]=U9|0;a[e+5364>>2]=T9|0;a[e+5376>>2]=S9|0;a[e+5388>>2]=R9|0;a[e+5400>>2]=P9|0;a[e+5412>>2]=O9|0;a[e+5424>>2]=M9|0;a[e+5436>>2]=L9|0;a[e+5448>>2]=K9|0;a[e+5460>>2]=I9|0;a[e+5472>>2]=G9|0;a[e+5484>>2]=F9|0;a[e+5496>>2]=E9|0;a[e+5508>>2]=D9|0;a[e+5520>>2]=B9|0;a[e+5532>>2]=z9|0;a[e+5544>>2]=w9|0;a[e+5556>>2]=v9|0;a[e+5568>>2]=u9|0;a[e+5580>>2]=s9|0;a[e+5592>>2]=q9|0;a[e+5604>>2]=p9|0;a[e+5616>>2]=o9|0;a[e+5628>>2]=n9|0;a[e+5640>>2]=l9|0;a[e+5652>>2]=j9|0;a[e+5664>>2]=h9|0;a[e+5676>>2]=g9|0;a[e+5688>>2]=f9|0;a[e+5700>>2]=d9|0;a[e+5712>>2]=a9|0;a[e+5724>>2]=$8|0;a[e+5736>>2]=Z8|0;a[e+5748>>2]=Y8|0;a[e+5760>>2]=W8|0;a[e+5772>>2]=V8|0;a[e+5784>>2]=S8|0;a[e+5796>>2]=R8|0;a[e+5808>>2]=Q8|0;a[e+5820>>2]=O8|0;a[e+5832>>2]=M8|0;a[e+5844>>2]=L8|0;a[e+5856>>2]=K8|0;a[e+5868>>2]=J8|0;a[e+5880>>2]=H8|0;a[e+5892>>2]=G8|0;a[e+5904>>2]=D8|0;a[e+5916>>2]=C8|0;a[e+5928>>2]=A8|0;a[e+5940>>2]=y8|0;a[e+5952>>2]=w8|0;a[e+5964>>2]=v8|0;a[e+5976>>2]=u8|0;a[e+5988>>2]=t8|0;a[e+6e3>>2]=r8|0;a[e+6012>>2]=q8|0;a[e+6024>>2]=n8|0;a[e+6036>>2]=m8|0;a[e+6048>>2]=l8|0;a[e+6060>>2]=j8|0;a[e+6072>>2]=h8|0;a[e+6084>>2]=g8|0;a[e+6096>>2]=f8|0;a[e+6108>>2]=e8|0;a[e+6120>>2]=b8|0;a[e+6132>>2]=a8|0;a[e+6144>>2]=Z7|0;a[e+6156>>2]=Y7|0;a[e+6168>>2]=W7|0;a[e+6180>>2]=U7|0;a[e+6192>>2]=S7|0;a[e+6204>>2]=R7|0;a[e+6216>>2]=Q7|0;a[e+6228>>2]=P7|0;a[e+6240>>2]=N7|0;a[e+6252>>2]=M7|0;a[e+6264>>2]=K7|0;a[e+6276>>2]=J7|0;a[e+6288>>2]=I7|0;a[e+6300>>2]=H7|0;a[e+6312>>2]=F7|0;a[e+6324>>2]=E7|0;a[e+6336>>2]=D7|0;a[e+6348>>2]=B7|0;a[e+6360>>2]=z7|0;a[e+6372>>2]=y7|0;a[e+6384>>2]=v7|0;a[e+6396>>2]=u7|0;a[e+6408>>2]=t7|0;a[e+6420>>2]=s7|0;a[e+6432>>2]=q7|0;a[e+6444>>2]=p7|0;a[e+6456>>2]=o7|0;a[e+6468>>2]=n7|0;a[e+6480>>2]=l7|0;a[e+6492>>2]=j7|0;a[e+6504>>2]=h7|0;a[e+6516>>2]=g7|0;a[e+6528>>2]=f7|0;a[e+6540>>2]=e7|0;a[e+6552>>2]=c7|0;a[e+6564>>2]=b7|0;a[e+6576>>2]=a7|0;a[e+6588>>2]=$6|0;a[e+6600>>2]=Y6|0;a[e+6612>>2]=X6|0;a[e+6624>>2]=U6|0;a[e+6636>>2]=T6|0;a[e+6648>>2]=S6|0;a[e+6660>>2]=R6|0;a[e+6672>>2]=P6|0;a[e+6684>>2]=O6|0;a[e+6696>>2]=N6|0;a[e+6708>>2]=M6|0;a[e+6720>>2]=K6|0;a[e+6732>>2]=I6|0;a[e+6744>>2]=F6|0;a[e+6756>>2]=E6|0;a[e+6768>>2]=D6|0;a[e+6780>>2]=C6|0;a[e+6792>>2]=A6|0;a[e+6804>>2]=z6|0;a[e+6816>>2]=y6|0;a[e+6828>>2]=x6|0;a[e+6840>>2]=v6|0;a[e+6852>>2]=t6|0;a[e+6864>>2]=r6|0;a[e+6876>>2]=q6|0;a[e+6888>>2]=p6|0;a[e+6900>>2]=o6|0;a[e+6912>>2]=m6|0;a[e+6924>>2]=k6|0;a[e+6936>>2]=j6|0;a[e+6948>>2]=i6|0;a[e+6960>>2]=g6|0;a[e+6972>>2]=f6|0;a[e+6984>>2]=d6|0;a[e+6996>>2]=b6|0;a[e+7008>>2]=a6|0;a[e+7020>>2]=Z5|0;a[e+7032>>2]=X5|0;a[e+7044>>2]=W5|0;a[e+7056>>2]=V5|0;a[e+7068>>2]=U5|0;a[e+7080>>2]=S5|0;a[e+7092>>2]=R5|0;a[e+7104>>2]=P5|0;a[e+7116>>2]=N5|0;a[e+7128>>2]=L5|0;a[e+7140>>2]=J5|0;a[e+7152>>2]=H5|0;a[e+7164>>2]=G5|0;a[e+7176>>2]=F5|0;a[e+7188>>2]=E5|0;a[e+7200>>2]=C5|0;a[e+7212>>2]=B5|0;a[e+7224>>2]=z5|0;a[e+7236>>2]=x5|0;a[e+7248>>2]=v5|0;a[e+7260>>2]=u5|0;a[e+7272>>2]=s5|0;a[e+7284>>2]=r5|0;a[e+7296>>2]=p5|0;a[e+7308>>2]=o5|0;a[e+7320>>2]=l5|0;a[e+7332>>2]=k5|0;a[e+7344>>2]=i5|0;a[e+7356>>2]=g5|0;a[e+7368>>2]=e5|0;a[e+7380>>2]=d5|0;a[e+7392>>2]=a5|0;a[e+7404>>2]=$4|0;a[e+7416>>2]=Y4|0;a[e+7428>>2]=X4|0;a[e+7440>>2]=V4|0;a[e+7452>>2]=U4|0;a[e+7464>>2]=S4|0;a[e+7476>>2]=Q4|0;a[e+7488>>2]=P4|0;a[e+7500>>2]=O4|0;a[e+7512>>2]=M4|0;a[e+7524>>2]=L4|0;a[e+7536>>2]=K4|0;a[e+7548>>2]=I4|0;a[e+7560>>2]=G4|0;a[e+7572>>2]=F4|0;a[e+7584>>2]=D4|0;a[e+7596>>2]=C4|0;a[e+7608>>2]=B4|0;a[e+7620>>2]=A4|0;a[e+7632>>2]=y4|0;a[e+7644>>2]=x4|0;a[e+7656>>2]=w4|0;a[e+7668>>2]=v4|0;a[e+7680>>2]=t4|0;a[e+7692>>2]=s4|0;a[e+7704>>2]=p4|0;a[e+7716>>2]=o4|0;a[e+7728>>2]=m4|0;a[e+7740>>2]=l4|0;a[e+7752>>2]=j4|0;a[e+7764>>2]=i4|0;a[e+7776>>2]=h4|0;a[e+7788>>2]=g4|0;a[e+7800>>2]=e4|0;a[e+7812>>2]=d4|0;a[e+7824>>2]=b4|0;a[e+7836>>2]=a4|0;a[e+7848>>2]=$3|0;a[e+7860>>2]=Y3|0;a[e+7872>>2]=W3|0;a[e+7884>>2]=V3|0;a[e+7896>>2]=U3|0;a[e+7908>>2]=T3|0;a[e+7920>>2]=R3|0;a[e+7932>>2]=P3|0;a[e+7944>>2]=N3|0;a[e+7956>>2]=M3|0;a[e+7968>>2]=L3|0;a[e+7980>>2]=I3|0;a[e+7992>>2]=G3|0;a[e+8004>>2]=F3|0;a[e+8016>>2]=E3|0;a[e+8028>>2]=D3|0;a[e+8040>>2]=B3|0;a[e+8052>>2]=z3|0;a[e+8064>>2]=x3|0;a[e+8076>>2]=w3|0;a[e+8088>>2]=v3|0;a[e+8100>>2]=s3|0;a[e+8112>>2]=q3|0;a[e+8124>>2]=p3|0;a[e+8136>>2]=n3|0;a[e+8148>>2]=m3|0;a[e+8160>>2]=k3|0;a[e+8172>>2]=j3|0;a[e+8184>>2]=h3|0;a[e+8196>>2]=g3|0;a[e+8208>>2]=f3|0;a[e+8220>>2]=d3|0;a[e+8232>>2]=b3|0;a[e+8244>>2]=a3|0;a[e+8256>>2]=$2|0;a[e+8268>>2]=Z2|0;a[e+8280>>2]=X2|0;a[e+8292>>2]=W2|0;a[e+8304>>2]=U2|0;a[e+8316>>2]=T2|0;a[e+8328>>2]=S2|0;a[e+8340>>2]=Q2|0;a[e+8352>>2]=O2|0;a[e+8364>>2]=N2|0;a[e+8376>>2]=L2|0;a[e+8388>>2]=K2|0;a[e+8400>>2]=I2|0;a[e+8412>>2]=H2|0;a[e+8424>>2]=F2|0;a[e+8436>>2]=E2|0;a[e+8448>>2]=D2|0;a[e+8460>>2]=B2|0;a[e+8472>>2]=z2|0;a[e+8484>>2]=y2|0;a[e+8496>>2]=x2|0;a[e+8508>>2]=w2|0;a[e+8520>>2]=s2|0;a[e+8532>>2]=r2|0;a[e+8544>>2]=o2|0;a[e+8556>>2]=n2|0;a[e+8568>>2]=m2|0;a[e+8580>>2]=k2|0;a[e+8592>>2]=i2|0;a[e+8604>>2]=h2|0;a[e+8616>>2]=g2|0;a[e+8628>>2]=f2|0;a[e+8640>>2]=d2|0;a[e+8652>>2]=c2|0;a[e+8664>>2]=a2|0;a[e+8676>>2]=$1|0;a[e+8688>>2]=Z1|0;a[e+8700>>2]=X1|0;a[e+8712>>2]=V1|0;a[e+8724>>2]=U1|0;a[e+8736>>2]=T1|0;a[e+8748>>2]=R1|0;a[e+8760>>2]=P1|0;a[e+8772>>2]=O1|0;a[e+8784>>2]=M1|0;a[e+8796>>2]=L1|0;a[e+8808>>2]=K1|0;a[e+8820>>2]=J1|0;a[e+8832>>2]=H1|0;a[e+8844>>2]=G1|0;a[e+8856>>2]=F1|0;a[e+8868>>2]=E1|0;a[e+8880>>2]=C1|0;a[e+8892>>2]=A1|0;a[e+8904>>2]=y1|0;a[e+8916>>2]=w1|0;a[e+8928>>2]=v1|0;a[e+8940>>2]=u1|0;a[e+8952>>2]=s1|0;a[e+8964>>2]=r1|0;a[e+8976>>2]=q1|0;a[e+8988>>2]=p1|0;a[e+9e3>>2]=n1|0;a[e+9012>>2]=m1|0;a[e+9024>>2]=k1|0;a[e+9036>>2]=j1|0;a[e+9048>>2]=i1|0;a[e+9060>>2]=h1|0;a[e+9072>>2]=f1|0;a[e+9084>>2]=e1|0;a[e+9096>>2]=d1|0;a[e+9108>>2]=c1|0;a[e+9120>>2]=a1|0;a[e+9132>>2]=Z0|0;a[e+9144>>2]=X0|0;a[e+9156>>2]=W0|0;a[e+9168>>2]=V0|0;a[e+9180>>2]=U0|0;a[e+9192>>2]=S0|0;a[e+9204>>2]=R0|0;a[e+9216>>2]=Q0|0;a[e+9228>>2]=P0|0;a[e+9240>>2]=N0|0;a[e+9252>>2]=L0|0;a[e+9264>>2]=J0|0;a[e+9276>>2]=I0|0;a[e+9288>>2]=H0|0;a[e+9300>>2]=G0|0;a[e+9312>>2]=E0|0;a[e+9324>>2]=D0|0;a[e+9336>>2]=C0|0;a[e+9348>>2]=B0|0;a[e+9360>>2]=z0|0;a[e+9372>>2]=y0|0;a[e+9384>>2]=w0|0;a[e+9396>>2]=v0|0;a[e+9408>>2]=u0|0;a[e+9420>>2]=t0|0;a[e+9432>>2]=r0|0;a[e+9444>>2]=q0|0;a[e+9456>>2]=p0|0;a[e+9468>>2]=o0|0;a[e+9480>>2]=m0|0;a[e+9492>>2]=l0|0;a[e+9504>>2]=j0|0;a[e+9516>>2]=i0|0;a[e+9528>>2]=h0|0;a[e+9540>>2]=g0|0;a[e+9552>>2]=e0|0;a[e+9564>>2]=d0|0;a[e+9576>>2]=b0|0;a[e+9588>>2]=a0|0;a[e+9600>>2]=Z_|0;a[e+9612>>2]=Y_|0;a[e+9624>>2]=W_|0;a[e+9636>>2]=V_|0;a[e+9648>>2]=T_|0;a[e+9660>>2]=S_|0;a[e+9672>>2]=Q_|0;a[e+9684>>2]=P_|0;a[e+9696>>2]=O_|0;a[e+9708>>2]=N_|0;a[e+9720>>2]=L_|0;a[e+9732>>2]=J_|0;a[e+9744>>2]=G_|0;a[e+9756>>2]=F_|0;a[e+9768>>2]=D_|0;a[e+9780>>2]=C_|0;a[e+9792>>2]=A_|0;a[e+9804>>2]=z_|0;a[e+9816>>2]=y_|0;a[e+9828>>2]=x_|0;a[e+9840>>2]=v_|0;a[e+9852>>2]=u_|0;a[e+9864>>2]=s_|0;a[e+9876>>2]=r_|0;a[e+9888>>2]=p_|0;a[e+9900>>2]=o_|0;a[e+9912>>2]=m_|0;a[e+9924>>2]=l_|0;a[e+9936>>2]=k_|0;a[e+9948>>2]=i_|0;a[e+9960>>2]=g_|0;a[e+9972>>2]=f_|0;a[e+9984>>2]=d_|0;a[e+9996>>2]=c_|0;a[e+10008>>2]=a_|0;a[e+10020>>2]=$Z|0;a[e+10032>>2]=ZZ|0;a[e+10044>>2]=XZ|0;a[e+10056>>2]=WZ|0;a[e+10068>>2]=VZ|0;a[e+10080>>2]=TZ|0;a[e+10092>>2]=SZ|0;a[e+10104>>2]=QZ|0;a[e+10116>>2]=PZ|0;a[e+10128>>2]=MZ|0;a[e+10140>>2]=LZ|0;a[e+10152>>2]=KZ|0;a[e+10164>>2]=HZ|0;a[e+10176>>2]=GZ|0;a[e+10188>>2]=FZ|0;a[e+10200>>2]=DZ|0;a[e+10212>>2]=CZ|0;a[e+10224>>2]=AZ|0;a[e+10236>>2]=zZ|0;a[e+10248>>2]=yZ|0;a[e+10260>>2]=xZ|0;a[e+10272>>2]=wZ|0;a[e+10284>>2]=uZ|0;a[e+10296>>2]=tZ|0;a[e+10308>>2]=sZ|0;a[e+10320>>2]=qZ|0;a[e+10332>>2]=oZ|0;a[e+10344>>2]=mZ|0;a[e+10356>>2]=lZ|0;a[e+10368>>2]=jZ|0;a[e+10380>>2]=iZ|0;a[e+10392>>2]=hZ|0;a[e+10404>>2]=fZ|0;a[e+10416>>2]=eZ|0;a[e+10428>>2]=dZ|0;a[e+10440>>2]=cZ|0;a[e+10452>>2]=$Y|0;a[e+10464>>2]=YY|0;a[e+10476>>2]=XY|0;a[e+10488>>2]=VY|0;a[e+10500>>2]=UY|0;a[e+10512>>2]=TY|0;a[e+10524>>2]=RY|0;a[e+10536>>2]=QY|0;a[e+10548>>2]=PY|0;a[e+10560>>2]=OY|0;a[e+10572>>2]=MY|0;a[e+10584>>2]=KY|0;a[e+10596>>2]=JY|0;a[e+10608>>2]=HY|0;a[e+10620>>2]=GY|0;a[e+10632>>2]=FY|0;a[e+10644>>2]=DY|0;a[e+10656>>2]=CY|0;a[e+10668>>2]=BY|0;a[e+10680>>2]=AY|0;a[e+10692>>2]=yY|0;a[e+10704>>2]=wY|0;a[e+10716>>2]=vY|0;a[e+10728>>2]=tY|0;a[e+10740>>2]=sY|0;a[e+10752>>2]=rY|0;a[e+10764>>2]=pY|0;a[e+10776>>2]=nY|0;a[e+10788>>2]=mY|0;a[e+10800>>2]=lY|0;a[e+10812>>2]=jY|0;a[e+10824>>2]=hY|0;a[e+10836>>2]=gY|0;a[e+10848>>2]=eY|0;a[e+10860>>2]=dY|0;a[e+10872>>2]=cY|0;a[e+10884>>2]=aY|0;a[e+10896>>2]=$X|0;a[e+10908>>2]=ZX|0;a[e+10920>>2]=YX|0;a[e+10932>>2]=VX|0;a[e+10944>>2]=TX|0;a[e+10956>>2]=SX|0;a[e+10968>>2]=QX|0;a[e+10980>>2]=PX|0;a[e+10992>>2]=OX|0;a[e+11004>>2]=MX|0;a[e+11016>>2]=LX|0;a[e+11028>>2]=KX|0;a[e+11040>>2]=JX|0;a[e+11052>>2]=HX|0;a[e+11064>>2]=FX|0;a[e+11076>>2]=EX|0;a[e+11088>>2]=CX|0;a[e+11100>>2]=BX|0;a[e+11112>>2]=AX|0;a[e+11124>>2]=yX|0;a[e+11136>>2]=xX|0;a[e+11148>>2]=vX|0;a[e+11160>>2]=uX|0;a[e+11172>>2]=sX|0;a[e+11184>>2]=qX|0;a[e+11196>>2]=pX|0;a[e+11208>>2]=nX|0;a[e+11220>>2]=mX|0;a[e+11232>>2]=lX|0;a[e+11244>>2]=jX|0;a[e+11256>>2]=iX|0;a[e+11268>>2]=hX|0;a[e+11280>>2]=gX|0;a[e+11292>>2]=eX|0;a[e+11304>>2]=cX|0;a[e+11316>>2]=bX|0;a[e+11328>>2]=aX|0;a[e+11340>>2]=ZW|0;a[e+11352>>2]=YW|0;a[e+11364>>2]=VW|0;a[e+11376>>2]=UW|0;a[e+11388>>2]=TW|0;a[e+11400>>2]=SW|0;a[e+11412>>2]=QW|0;a[e+11424>>2]=OW|0;a[e+11436>>2]=NW|0;a[e+11448>>2]=MW|0;a[e+11460>>2]=LW|0;a[e+11472>>2]=KW|0;a[e+11484>>2]=IW|0;a[e+11496>>2]=HW|0;a[e+11508>>2]=GW|0;a[e+11520>>2]=FW|0;a[e+11532>>2]=CW|0;a[e+11544>>2]=AW|0;a[e+11556>>2]=zW|0;a[e+11568>>2]=yW|0;a[e+11580>>2]=xW|0;a[e+11592>>2]=wW|0;a[e+11604>>2]=uW|0;a[e+11616>>2]=tW|0;a[e+11628>>2]=sW|0;a[e+11640>>2]=rW|0;a[e+11652>>2]=oW|0;a[e+11664>>2]=mW|0;a[e+11676>>2]=lW|0;a[e+11688>>2]=kW|0;a[e+11700>>2]=jW|0;a[e+11712>>2]=iW|0;a[e+11724>>2]=gW|0;a[e+11736>>2]=fW|0;a[e+11748>>2]=eW|0;a[e+11760>>2]=dW|0;a[e+11772>>2]=bW|0;a[e+11784>>2]=$V|0;a[e+11796>>2]=ZV|0;a[e+11808>>2]=YV|0;a[e+11820>>2]=XV|0;a[e+11832>>2]=WV|0;a[e+11844>>2]=UV|0;a[e+11856>>2]=TV|0;a[e+11868>>2]=SV|0;a[e+11880>>2]=RV|0;a[e+11892>>2]=PV|0;a[e+11904>>2]=NV|0;a[e+11916>>2]=MV|0;a[e+11928>>2]=LV|0;a[e+11940>>2]=KV|0;a[e+11952>>2]=JV|0;a[e+11964>>2]=HV|0;a[e+11976>>2]=WPa|0;a[e+11988>>2]=VPa|0;a[e+12e3>>2]=UPa|0;a[e+12012>>2]=SPa|0;a[e+12024>>2]=QPa|0;a[e+12036>>2]=PPa|0;a[e+12048>>2]=OPa|0;a[e+12060>>2]=NPa|0;a[e+12072>>2]=MPa|0;a[e+12084>>2]=KPa|0;a[e+12096>>2]=JPa|0;a[e+12108>>2]=IPa|0;a[e+12120>>2]=HPa|0;a[e+12132>>2]=EPa|0;a[e+12144>>2]=CPa|0;a[e+12156>>2]=APa|0;a[e+12168>>2]=zPa|0;a[e+12180>>2]=yPa|0;a[e+12192>>2]=xPa|0;a[e+12204>>2]=vPa|0;a[e+12216>>2]=uPa|0;a[e+12228>>2]=tPa|0;a[e+12240>>2]=sPa|0;a[e+12252>>2]=qPa|0;a[e+12264>>2]=oPa|0;a[e+12276>>2]=nPa|0;a[e+12288>>2]=mPa|0;a[e+12300>>2]=lPa|0;a[e+12312>>2]=kPa|0;a[e+12324>>2]=iPa|0;a[e+12336>>2]=hPa|0;a[e+12348>>2]=fPa|0;a[e+12360>>2]=ePa|0;a[e+12372>>2]=cPa|0;a[e+12384>>2]=aPa|0;a[e+12396>>2]=$Oa|0;a[e+12408>>2]=ZOa|0;a[e+12420>>2]=YOa|0;a[e+12432>>2]=XOa|0;a[e+12444>>2]=VOa|0;a[e+12456>>2]=UOa|0;a[e+12468>>2]=TOa|0;a[e+12480>>2]=SOa|0;a[e+12492>>2]=QOa|0;a[e+12504>>2]=OOa|0;a[e+12516>>2]=NOa|0;a[e+12528>>2]=MOa|0;a[e+12540>>2]=LOa|0;a[e+12552>>2]=IOa|0;a[e+12564>>2]=GOa|0;a[e+12576>>2]=FOa|0;a[e+12588>>2]=EOa|0;a[e+12600>>2]=DOa|0;a[e+12612>>2]=BOa|0;a[e+12624>>2]=zOa|0;a[e+12636>>2]=yOa|0;a[e+12648>>2]=xOa|0;a[e+12660>>2]=wOa|0;a[e+12672>>2]=vOa|0;a[e+12684>>2]=tOa|0;a[e+12696>>2]=sOa|0;a[e+12708>>2]=rOa|0;a[e+12720>>2]=qOa|0;a[e+12732>>2]=nOa|0;a[e+12744>>2]=lOa|0;a[e+12756>>2]=kOa|0;a[e+12768>>2]=jOa|0;a[e+12780>>2]=iOa|0;a[e+12792>>2]=hOa|0;a[e+12804>>2]=fOa|0;a[e+12816>>2]=eOa|0;a[e+12828>>2]=dOa|0;a[e+12840>>2]=cOa|0;a[e+12852>>2]=$Na|0;a[e+12864>>2]=YNa|0;a[e+12876>>2]=XNa|0;a[e+12888>>2]=WNa|0;a[e+12900>>2]=VNa|0;a[e+12912>>2]=UNa|0;a[e+12924>>2]=SNa|0;a[e+12936>>2]=RNa|0;a[e+12948>>2]=QNa|0;a[e+12960>>2]=PNa|0;a[e+12972>>2]=NNa|0;a[e+12984>>2]=LNa|0;a[e+12996>>2]=KNa|0;a[e+13008>>2]=JNa|0;a[e+13020>>2]=INa|0;a[e+13032>>2]=HNa|0;a[e+13044>>2]=FNa|0;a[e+13056>>2]=ENa|0;a[e+13068>>2]=DNa|0;a[e+13080>>2]=CNa|0;a[e+13092>>2]=ANa|0;a[e+13104>>2]=yNa|0;a[e+13116>>2]=xNa|0;a[e+13128>>2]=wNa|0;a[e+13140>>2]=vNa|0;a[e+13152>>2]=uNa|0;a[e+13164>>2]=sNa|0;a[e+13176>>2]=rNa|0;a[e+13188>>2]=qNa|0;a[e+13200>>2]=pNa|0;a[e+13212>>2]=nNa|0;a[e+13224>>2]=lNa|0;a[e+13236>>2]=kNa|0;a[e+13248>>2]=jNa|0;a[e+13260>>2]=iNa|0;a[e+13272>>2]=hNa|0;a[e+13284>>2]=fNa|0;a[e+13296>>2]=eNa|0;a[e+13308>>2]=dNa|0;a[e+13320>>2]=cNa|0;a[e+13332>>2]=$Ma|0;a[e+13344>>2]=XMa|0;a[e+13356>>2]=VMa|0;a[e+13368>>2]=UMa|0;a[e+13380>>2]=TMa|0;a[e+13392>>2]=SMa|0;a[e+13404>>2]=QMa|0;a[e+13416>>2]=PMa|0;a[e+13428>>2]=OMa|0;a[e+13440>>2]=MMa|0;a[e+13452>>2]=KMa|0;a[e+13464>>2]=IMa|0;a[e+13476>>2]=HMa|0;a[e+13488>>2]=GMa|0;a[e+13500>>2]=FMa|0;a[e+13512>>2]=EMa|0;a[e+13524>>2]=CMa|0;a[e+13536>>2]=BMa|0;a[e+13548>>2]=AMa|0;a[e+13560>>2]=zMa|0;a[e+13572>>2]=xMa|0;a[e+13584>>2]=vMa|0;a[e+13596>>2]=uMa|0;a[e+13608>>2]=tMa|0;a[e+13620>>2]=sMa|0;a[e+13632>>2]=rMa|0;a[e+13644>>2]=pMa|0;a[e+13656>>2]=nMa|0;a[e+13668>>2]=mMa|0;a[e+13680>>2]=lMa|0;a[e+13692>>2]=kMa|0;a[e+13704>>2]=iMa|0;a[e+13716>>2]=hMa|0;a[e+13728>>2]=gMa|0;a[e+13740>>2]=fMa|0;a[e+13752>>2]=eMa|0;a[e+13764>>2]=cMa|0;a[e+13776>>2]=aMa|0;a[e+13788>>2]=$La|0;a[e+13800>>2]=ZLa|0;a[e+13812>>2]=XLa|0;a[e+13824>>2]=VLa|0;a[e+13836>>2]=ULa|0;a[e+13848>>2]=TLa|0;a[e+13860>>2]=SLa|0;a[e+13872>>2]=RLa|0;a[e+13884>>2]=PLa|0;a[e+13896>>2]=NLa|0;a[e+13908>>2]=MLa|0;a[e+13920>>2]=LLa|0;a[e+13932>>2]=JLa|0;a[e+13944>>2]=GLa|0;a[e+13956>>2]=FLa|0;a[e+13968>>2]=ELa|0;a[e+13980>>2]=DLa|0;a[e+13992>>2]=CLa|0;a[e+14004>>2]=ALa|0;a[e+14016>>2]=yLa|0;a[e+14028>>2]=xLa|0;a[e+14040>>2]=wLa|0;a[e+14052>>2]=uLa|0;a[e+14064>>2]=sLa|0;a[e+14076>>2]=rLa|0;a[e+14088>>2]=qLa|0;a[e+14100>>2]=pLa|0;a[e+14112>>2]=oLa|0;a[e+14124>>2]=mLa|0;a[e+14136>>2]=kLa|0;a[e+14148>>2]=jLa|0;a[e+14160>>2]=iLa|0;a[e+14172>>2]=hLa|0;a[e+14184>>2]=fLa|0;a[e+14196>>2]=eLa|0;a[e+14208>>2]=dLa|0;a[e+14220>>2]=cLa|0;a[e+14232>>2]=bLa|0;a[e+14244>>2]=$Ka|0;a[e+14256>>2]=YKa|0;a[e+14268>>2]=XKa|0;a[e+14280>>2]=WKa|0;a[e+14292>>2]=VKa|0;a[e+14304>>2]=TKa|0;a[e+14316>>2]=SKa|0;a[e+14328>>2]=RKa|0;a[e+14340>>2]=QKa|0;a[e+14352>>2]=PKa|0;a[e+14364>>2]=NKa|0;a[e+14376>>2]=LKa|0;a[e+14388>>2]=KKa|0;a[e+14400>>2]=JKa|0;a[e+14412>>2]=IKa|0;a[e+14424>>2]=GKa|0;a[e+14436>>2]=FKa|0;a[e+14448>>2]=EKa|0;a[e+14460>>2]=DKa|0;a[e+14472>>2]=CKa|0;a[e+14484>>2]=AKa|0;a[e+14496>>2]=zKa|0;a[e+14508>>2]=yKa|0;a[e+14520>>2]=xKa|0;a[e+14532>>2]=uKa|0;a[e+14544>>2]=sKa|0;a[e+14556>>2]=rKa|0;a[e+14568>>2]=qKa|0;a[e+14580>>2]=pKa|0;a[e+14592>>2]=oKa|0;a[e+14604>>2]=mKa|0;a[e+14616>>2]=kKa|0;a[e+14628>>2]=jKa|0;a[e+14640>>2]=iKa|0;a[e+14652>>2]=hKa|0;a[e+14664>>2]=fKa|0;a[e+14676>>2]=eKa|0;a[e+14688>>2]=dKa|0;a[e+14700>>2]=cKa|0;a[e+14712>>2]=bKa|0;a[e+14724>>2]=$Ja|0;a[e+14736>>2]=YJa|0;a[e+14748>>2]=XJa|0;a[e+14760>>2]=WJa|0;a[e+14772>>2]=VJa|0;a[e+14784>>2]=TJa|0;a[e+14796>>2]=SJa|0;a[e+14808>>2]=QJa|0;a[e+14820>>2]=PJa|0;a[e+14832>>2]=OJa|0;a[e+14844>>2]=MJa|0;a[e+14856>>2]=KJa|0;a[e+14868>>2]=JJa|0;a[e+14880>>2]=IJa|0;a[e+14892>>2]=GJa|0;a[e+14904>>2]=EJa|0;a[e+14916>>2]=DJa|0;a[e+14928>>2]=CJa|0;a[e+14940>>2]=BJa|0;a[e+14952>>2]=AJa|0;a[e+14964>>2]=yJa|0;a[e+14976>>2]=uJa|0;a[e+14988>>2]=tJa|0;a[e+15e3>>2]=sJa|0;a[e+15012>>2]=rJa|0;a[e+15024>>2]=pJa|0;a[e+15036>>2]=oJa|0;a[e+15048>>2]=nJa|0;a[e+15060>>2]=mJa|0;a[e+15072>>2]=lJa|0;a[e+15084>>2]=jJa|0;a[e+15096>>2]=hJa|0;a[e+15108>>2]=gJa|0;a[e+15120>>2]=fJa|0;a[e+15132>>2]=dJa|0;a[e+15144>>2]=bJa|0;a[e+15156>>2]=aJa|0;a[e+15168>>2]=$Ia|0;a[e+15180>>2]=ZIa|0;a[e+15192>>2]=YIa|0;a[e+15204>>2]=WIa|0;a[e+15216>>2]=UIa|0;a[e+15228>>2]=TIa|0;a[e+15240>>2]=RIa|0;a[e+15252>>2]=PIa|0;a[e+15264>>2]=OIa|0;a[e+15276>>2]=NIa|0;a[e+15288>>2]=MIa|0;a[e+15300>>2]=LIa|0;a[e+15312>>2]=KIa|0;a[e+15324>>2]=IIa|0;a[e+15336>>2]=GIa|0;a[e+15348>>2]=FIa|0;a[e+15360>>2]=EIa|0;a[e+15372>>2]=DIa|0;a[e+15384>>2]=BIa|0;a[e+15396>>2]=AIa|0;a[e+15408>>2]=zIa|0;a[e+15420>>2]=yIa|0;a[e+15432>>2]=xIa|0;a[e+15444>>2]=vIa|0;a[e+15456>>2]=tIa|0;a[e+15468>>2]=sIa|0;a[e+15480>>2]=rIa|0;a[e+15492>>2]=qIa|0;a[e+15504>>2]=oIa|0;a[e+15516>>2]=nIa|0;a[e+15528>>2]=mIa|0;a[e+15540>>2]=lIa|0;a[e+15552>>2]=kIa|0;a[e+15564>>2]=iIa|0;a[e+15576>>2]=fIa|0;a[e+15588>>2]=eIa|0;a[e+15600>>2]=dIa|0;a[e+15612>>2]=bIa|0;a[e+15624>>2]=$Ha|0;a[e+15636>>2]=ZHa|0;a[e+15648>>2]=YHa|0;a[e+15660>>2]=XHa|0;a[e+15672>>2]=WHa|0;a[e+15684>>2]=UHa|0;a[e+15696>>2]=SHa|0;a[e+15708>>2]=RHa|0;a[e+15720>>2]=QHa|0;a[e+15732>>2]=OHa|0;a[e+15744>>2]=MHa|0;a[e+15756>>2]=LHa|0;a[e+15768>>2]=KHa|0;a[e+15780>>2]=JHa|0;a[e+15792>>2]=IHa|0;a[e+15804>>2]=GHa|0;a[e+15816>>2]=EHa|0;a[e+15828>>2]=DHa|0;a[e+15840>>2]=CHa|0;a[e+15852>>2]=BHa|0;a[e+15864>>2]=zHa|0;a[e+15876>>2]=yHa|0;a[e+15888>>2]=wHa|0;a[e+15900>>2]=vHa|0;a[e+15912>>2]=uHa|0;a[e+15924>>2]=sHa|0;a[e+15936>>2]=qHa|0;a[e+15948>>2]=pHa|0;a[e+15960>>2]=oHa|0;a[e+15972>>2]=nHa|0;a[e+15984>>2]=lHa|0;a[e+15996>>2]=kHa|0;a[e+16008>>2]=jHa|0;a[e+16020>>2]=iHa|0;a[e+16032>>2]=hHa|0;a[e+16044>>2]=fHa|0;a[e+16056>>2]=dHa|0;a[e+16068>>2]=cHa|0;a[e+16080>>2]=bHa|0;a[e+16092>>2]=aHa|0;a[e+16104>>2]=ZGa|0;a[e+16116>>2]=YGa|0;a[e+16128>>2]=XGa|0;a[e+16140>>2]=WGa|0;a[e+16152>>2]=VGa|0;a[e+16164>>2]=TGa|0;a[e+16176>>2]=RGa|0;a[e+16188>>2]=QGa|0;a[e+16200>>2]=PGa|0;a[e+16212>>2]=OGa|0;a[e+16224>>2]=MGa|0;a[e+16236>>2]=LGa|0;a[e+16248>>2]=KGa|0;a[e+16260>>2]=IGa|0;a[e+16272>>2]=HGa|0;a[e+16284>>2]=FGa|0;a[e+16296>>2]=DGa|0;a[e+16308>>2]=CGa|0;a[e+16320>>2]=AGa|0;a[e+16332>>2]=zGa|0;a[e+16344>>2]=vGa|0;a[e+16356>>2]=uGa|0;a[e+16368>>2]=tGa|0;a[e+16380>>2]=rGa|0;a[e+16392>>2]=qGa|0;a[e+16404>>2]=oGa|0;a[e+16416>>2]=mGa|0;a[e+16428>>2]=lGa|0;a[e+16440>>2]=kGa|0;a[e+16452>>2]=jGa|0;a[e+16464>>2]=gGa|0;a[e+16476>>2]=fGa|0;a[e+16488>>2]=eGa|0;a[e+16500>>2]=cGa|0;a[e+16512>>2]=bGa|0;a[e+16524>>2]=$Fa|0;a[e+16536>>2]=YFa|0;a[e+16548>>2]=XFa|0;a[e+16560>>2]=WFa|0;a[e+16572>>2]=UFa|0;a[e+16584>>2]=SFa|0;a[e+16596>>2]=RFa|0;a[e+16608>>2]=QFa|0;a[e+16620>>2]=PFa|0;a[e+16632>>2]=OFa|0;a[e+16644>>2]=MFa|0;a[e+16656>>2]=KFa|0;a[e+16668>>2]=JFa|0;a[e+16680>>2]=IFa|0;a[e+16692>>2]=HFa|0;a[e+16704>>2]=FFa|0;a[e+16716>>2]=EFa|0;a[e+16728>>2]=DFa|0;a[e+16740>>2]=CFa|0;a[e+16752>>2]=BFa|0;a[e+16764>>2]=zFa|0;a[e+16776>>2]=xFa|0;a[e+16788>>2]=wFa|0;a[e+16800>>2]=vFa|0;a[e+16812>>2]=uFa|0;a[e+16824>>2]=sFa|0;a[e+16836>>2]=rFa|0;a[e+16848>>2]=qFa|0;a[e+16860>>2]=oFa|0;a[e+16872>>2]=nFa|0;a[e+16884>>2]=lFa|0;a[e+16896>>2]=jFa|0;a[e+16908>>2]=iFa|0;a[e+16920>>2]=hFa|0;a[e+16932>>2]=fFa|0;a[e+16944>>2]=dFa|0;a[e+16956>>2]=cFa|0;a[e+16968>>2]=bFa|0;a[e+16980>>2]=aFa|0;a[e+16992>>2]=$Ea|0;a[e+17004>>2]=YEa|0;a[e+17016>>2]=WEa|0;a[e+17028>>2]=VEa|0;a[e+17040>>2]=UEa|0;a[e+17052>>2]=TEa|0;a[e+17064>>2]=SEa|0;a[e+17076>>2]=REa|0;a[e+17088>>2]=PEa|0;a[e+17100>>2]=OEa|0;a[e+17112>>2]=NEa|0;a[e+17124>>2]=LEa|0;a[e+17136>>2]=JEa|0;a[e+17148>>2]=HEa|0;a[e+17160>>2]=GEa|0;a[e+17172>>2]=FEa|0;a[e+17184>>2]=DEa|0;a[e+17196>>2]=CEa|0;a[e+17208>>2]=BEa|0;a[e+17220>>2]=AEa|0;a[e+17232>>2]=zEa|0;a[e+17244>>2]=xEa|0;a[e+17256>>2]=vEa|0;a[e+17268>>2]=uEa|0;a[e+17280>>2]=tEa|0;a[e+17292>>2]=sEa|0;a[e+17304>>2]=qEa|0;a[e+17316>>2]=pEa|0;a[e+17328>>2]=oEa|0;a[e+17340>>2]=nEa|0;a[e+17352>>2]=mEa|0;a[e+17364>>2]=kEa|0;a[e+17376>>2]=iEa|0;a[e+17388>>2]=hEa|0;a[e+17400>>2]=gEa|0;a[e+17412>>2]=fEa|0;a[e+17424>>2]=eEa|0;a[e+17436>>2]=dEa|0;a[e+17448>>2]=cEa|0;a[e+17460>>2]=bEa|0;a[e+17472>>2]=aEa|0;a[e+17484>>2]=ZDa|0;a[e+17496>>2]=XDa|0;a[e+17508>>2]=WDa|0;a[e+17520>>2]=VDa|0;a[e+17532>>2]=UDa|0;a[e+17544>>2]=RDa|0;a[e+17556>>2]=QDa|0;a[e+17568>>2]=PDa|0;a[e+17580>>2]=ODa|0;a[e+17592>>2]=NDa|0;a[e+17604>>2]=LDa|0;a[e+17616>>2]=JDa|0;a[e+17628>>2]=IDa|0;a[e+17640>>2]=HDa|0;a[e+17652>>2]=GDa|0;a[e+17664>>2]=EDa|0;a[e+17676>>2]=DDa|0;a[e+17688>>2]=CDa|0;a[e+17700>>2]=BDa|0;a[e+17712>>2]=ADa|0;a[e+17724>>2]=yDa|0;a[e+17736>>2]=wDa|0;a[e+17748>>2]=vDa|0;a[e+17760>>2]=uDa|0;a[e+17772>>2]=tDa|0;a[e+17784>>2]=rDa|0;a[e+17796>>2]=qDa|0;a[e+17808>>2]=pDa|0;a[e+17820>>2]=oDa|0;a[e+17832>>2]=nDa|0;a[e+17844>>2]=lDa|0;a[e+17856>>2]=jDa|0;a[e+17868>>2]=iDa|0;a[e+17880>>2]=hDa|0;a[e+17892>>2]=gDa|0;a[e+17904>>2]=dDa|0;a[e+17916>>2]=cDa|0;a[e+17928>>2]=bDa|0;a[e+17940>>2]=aDa|0;a[e+17952>>2]=$Ca|0;a[e+17964>>2]=YCa|0;a[e+17976>>2]=VCa|0;a[e+17988>>2]=UCa|0;a[e+18e3>>2]=TCa|0;a[e+18012>>2]=SCa|0;a[e+18024>>2]=RCa|0;a[e+18036>>2]=QCa|0;a[e+18048>>2]=PCa|0;a[e+18060>>2]=OCa|0;a[e+18072>>2]=NCa|0;a[e+18084>>2]=LCa|0;a[e+18096>>2]=JCa|0;a[e+18108>>2]=ICa|0;a[e+18120>>2]=HCa|0;a[e+18132>>2]=FCa|0;a[e+18144>>2]=DCa|0;a[e+18156>>2]=CCa|0;a[e+18168>>2]=BCa|0;a[e+18180>>2]=ACa|0;a[e+18192>>2]=zCa|0;a[e+18204>>2]=xCa|0;a[e+18216>>2]=vCa|0;a[e+18228>>2]=uCa|0;a[e+18240>>2]=tCa|0;a[e+18252>>2]=sCa|0;a[e+18264>>2]=rCa|0;a[e+18276>>2]=qCa|0;a[e+18288>>2]=pCa|0;a[e+18300>>2]=oCa|0;a[e+18312>>2]=nCa|0;a[e+18324>>2]=lCa|0;a[e+18336>>2]=jCa|0;a[e+18348>>2]=iCa|0;a[e+18360>>2]=hCa|0;a[e+18372>>2]=gCa|0;a[e+18384>>2]=fCa|0;a[e+18396>>2]=eCa|0;a[e+18408>>2]=cCa|0;a[e+18420>>2]=bCa|0;a[e+18432>>2]=aCa|0;a[e+18444>>2]=ZBa|0;a[e+18456>>2]=XBa|0;a[e+18468>>2]=WBa|0;a[e+18480>>2]=VBa|0;a[e+18492>>2]=UBa|0;a[e+18504>>2]=TBa|0;a[e+18516>>2]=SBa|0;a[e+18528>>2]=RBa|0;a[e+18540>>2]=QBa|0;a[e+18552>>2]=PBa|0;a[e+18564>>2]=NBa|0;a[e+18576>>2]=LBa|0;a[e+18588>>2]=KBa|0;a[e+18600>>2]=JBa|0;a[e+18612>>2]=IBa|0;a[e+18624>>2]=HBa|0;a[e+18636>>2]=GBa|0;a[e+18648>>2]=FBa|0;a[e+18660>>2]=EBa|0;a[e+18672>>2]=DBa|0;a[e+18684>>2]=BBa|0;a[e+18696>>2]=zBa|0;a[e+18708>>2]=yBa|0;a[e+18720>>2]=xBa|0;a[e+18732>>2]=wBa|0;a[e+18744>>2]=uBa|0;a[e+18756>>2]=tBa|0;a[e+18768>>2]=sBa|0;a[e+18780>>2]=rBa|0;a[e+18792>>2]=qBa|0;a[e+18804>>2]=oBa|0;a[e+18816>>2]=mBa|0;a[e+18828>>2]=lBa|0;a[e+18840>>2]=kBa|0;a[e+18852>>2]=jBa|0;a[e+18864>>2]=hBa|0;a[e+18876>>2]=gBa|0;a[e+18888>>2]=fBa|0;a[e+18900>>2]=eBa|0;a[e+18912>>2]=dBa|0;a[e+18924>>2]=bBa|0;a[e+18936>>2]=$Aa|0;a[e+18948>>2]=ZAa|0;a[e+18960>>2]=YAa|0;a[e+18972>>2]=XAa|0;a[e+18984>>2]=WAa|0;a[e+18996>>2]=VAa|0;a[e+19008>>2]=UAa|0;a[e+19020>>2]=TAa|0;a[e+19032>>2]=SAa|0;a[e+19044>>2]=QAa|0;a[e+19056>>2]=OAa|0;a[e+19068>>2]=NAa|0;a[e+19080>>2]=MAa|0;a[e+19092>>2]=LAa|0;a[e+19104>>2]=KAa|0;a[e+19116>>2]=JAa|0;a[e+19128>>2]=IAa|0;a[e+19140>>2]=HAa|0;a[e+19152>>2]=GAa|0;a[e+19164>>2]=EAa|0;a[e+19176>>2]=BAa|0;a[e+19188>>2]=AAa|0;a[e+19200>>2]=zAa|0;a[e+19212>>2]=yAa|0;a[e+19224>>2]=wAa|0;a[e+19236>>2]=vAa|0;a[e+19248>>2]=uAa|0;a[e+19260>>2]=tAa|0;a[e+19272>>2]=sAa|0;a[e+19284>>2]=qAa|0;a[e+19296>>2]=oAa|0;a[e+19308>>2]=nAa|0;a[e+19320>>2]=mAa|0;a[e+19332>>2]=kAa|0;a[e+19344>>2]=jAa|0;a[e+19356>>2]=iAa|0;a[e+19368>>2]=hAa|0;a[e+19380>>2]=gAa|0;a[e+19392>>2]=fAa|0;a[e+19404>>2]=cAa|0;a[e+19416>>2]=aAa|0;a[e+19428>>2]=$za|0;a[e+19440>>2]=Zza|0;a[e+19452>>2]=Yza|0;a[e+19464>>2]=Xza|0;a[e+19476>>2]=Wza|0;a[e+19488>>2]=Vza|0;a[e+19500>>2]=Uza|0;a[e+19512>>2]=Tza|0;a[e+19524>>2]=Rza|0;a[e+19536>>2]=Pza|0;a[e+19548>>2]=Oza|0;a[e+19560>>2]=Nza|0;a[e+19572>>2]=Mza|0;a[e+19584>>2]=Lza|0;a[e+19596>>2]=Kza|0;a[e+19608>>2]=Jza|0;a[e+19620>>2]=Iza|0;a[e+19632>>2]=Hza|0;a[e+19644>>2]=Fza|0;a[e+19656>>2]=Eza|0;a[e+19668>>2]=Dza|0;a[e+19680>>2]=Cza|0;a[e+19692>>2]=Bza|0;a[e+19704>>2]=Aza|0;a[e+19716>>2]=zza|0;a[e+19728>>2]=yza|0;a[e+19740>>2]=xza|0;a[e+19752>>2]=wza|0;a[e+19764>>2]=uza|0;a[e+19776>>2]=sza|0;a[e+19788>>2]=rza|0;a[e+19800>>2]=qza|0;a[e+19812>>2]=pza|0;a[e+19824>>2]=oza|0;a[e+19836>>2]=nza|0;a[e+19848>>2]=mza|0;a[e+19860>>2]=lza|0;a[e+19872>>2]=kza|0;a[e+19884>>2]=iza|0;a[e+19896>>2]=gza|0;a[e+19908>>2]=fza|0;a[e+19920>>2]=eza|0;a[e+19932>>2]=dza|0;a[e+19944>>2]=aza|0;a[e+19956>>2]=$ya|0;a[e+19968>>2]=Zya|0;a[e+19980>>2]=Yya|0;a[e+19992>>2]=Xya|0;a[e+20004>>2]=Vya|0;a[e+20016>>2]=Tya|0;a[e+20028>>2]=Sya|0;a[e+20040>>2]=Rya|0;a[e+20052>>2]=Qya|0;a[e+20064>>2]=Oya|0;a[e+20076>>2]=Nya|0;a[e+20088>>2]=Mya|0;a[e+20100>>2]=Lya|0;a[e+20112>>2]=Kya|0;a[e+20124>>2]=Iya|0;a[e+20136>>2]=Gya|0;a[e+20148>>2]=Fya|0;a[e+20160>>2]=Eya|0;a[e+20172>>2]=Dya|0;a[e+20184>>2]=Bya|0;a[e+20196>>2]=Aya|0;a[e+20208>>2]=zya|0;a[e+20220>>2]=yya|0;a[e+20232>>2]=xya|0;a[e+20244>>2]=vya|0;a[e+20256>>2]=tya|0;a[e+20268>>2]=sya|0;a[e+20280>>2]=rya|0;a[e+20292>>2]=qya|0;a[e+20304>>2]=nya|0;a[e+20316>>2]=mya|0;a[e+20328>>2]=lya|0;a[e+20340>>2]=kya|0;a[e+20352>>2]=jya|0;a[e+20364>>2]=hya|0;a[e+20376>>2]=eya|0;a[e+20388>>2]=dya|0;a[e+20400>>2]=cya|0;a[e+20412>>2]=bya|0;a[e+20424>>2]=Zxa|0;a[e+20436>>2]=Yxa|0;a[e+20448>>2]=Xxa|0;a[e+20460>>2]=Wxa|0;a[e+20472>>2]=Vxa|0;a[e+20484>>2]=Txa|0;a[e+20496>>2]=Rxa|0;a[e+20508>>2]=Qxa|0;a[e+20520>>2]=Pxa|0;a[e+20532>>2]=Oxa|0;a[e+20544>>2]=Lxa|0;a[e+20556>>2]=Kxa|0;a[e+20568>>2]=Jxa|0;a[e+20580>>2]=Ixa|0;a[e+20592>>2]=Hxa|0;a[e+20604>>2]=Fxa|0;a[e+20616>>2]=Dxa|0;a[e+20628>>2]=Cxa|0;a[e+20640>>2]=Bxa|0;a[e+20652>>2]=Axa|0;a[e+20664>>2]=xxa|0;a[e+20676>>2]=wxa|0;a[e+20688>>2]=vxa|0;a[e+20700>>2]=uxa|0;a[e+20712>>2]=txa|0;a[e+20724>>2]=rxa|0;a[e+20736>>2]=pxa|0;a[e+20748>>2]=oxa|0;a[e+20760>>2]=nxa|0;a[e+20772>>2]=mxa|0;a[e+20784>>2]=jxa|0;a[e+20796>>2]=ixa|0;a[e+20808>>2]=hxa|0;a[e+20820>>2]=gxa|0;a[e+20832>>2]=fxa|0;a[e+20844>>2]=dxa|0;a[e+20856>>2]=bxa|0;a[e+20868>>2]=axa|0;a[e+20880>>2]=Zwa|0;a[e+20892>>2]=Ywa|0;a[e+20904>>2]=Vwa|0;a[e+20916>>2]=Uwa|0;a[e+20928>>2]=Twa|0;a[e+20940>>2]=Swa|0;a[e+20952>>2]=Rwa|0;a[e+20964>>2]=Pwa|0;a[e+20976>>2]=Nwa|0;a[e+20988>>2]=Mwa|0;a[e+21e3>>2]=Lwa|0;a[e+21012>>2]=Kwa|0;a[e+21024>>2]=Hwa|0;a[e+21036>>2]=Gwa|0;a[e+21048>>2]=Fwa|0;a[e+21060>>2]=Ewa|0;a[e+21072>>2]=Dwa|0;a[e+21084>>2]=Bwa|0;a[e+21096>>2]=zwa|0;a[e+21108>>2]=ywa|0;a[e+21120>>2]=xwa|0;a[e+21132>>2]=wwa|0;a[e+21144>>2]=twa|0;a[e+21156>>2]=swa|0;a[e+21168>>2]=rwa|0;a[e+21180>>2]=qwa|0;a[e+21192>>2]=pwa|0;a[e+21204>>2]=nwa|0;a[e+21216>>2]=lwa|0;a[e+21228>>2]=kwa|0;a[e+21240>>2]=jwa|0;a[e+21252>>2]=iwa|0;a[e+21264>>2]=gwa|0;a[e+21276>>2]=fwa|0;a[e+21288>>2]=ewa|0;a[e+21300>>2]=dwa|0;a[e+21312>>2]=cwa|0;a[e+21324>>2]=awa|0;a[e+21336>>2]=Zva|0;a[e+21348>>2]=Yva|0;a[e+21360>>2]=Xva|0;a[e+21372>>2]=Wva|0;a[e+21384>>2]=Vva|0;a[e+21396>>2]=Uva|0;a[e+21408>>2]=Tva|0;a[e+21420>>2]=Sva|0;a[e+21432>>2]=Rva|0;a[e+21444>>2]=Pva|0;a[e+21456>>2]=Nva|0;a[e+21468>>2]=Mva|0;a[e+21480>>2]=Lva|0;a[e+21492>>2]=Kva|0;a[e+21504>>2]=Iva|0;a[e+21516>>2]=Hva|0;a[e+21528>>2]=Gva|0;a[e+21540>>2]=Fva|0;a[e+21552>>2]=Eva|0;a[e+21564>>2]=Cva|0;a[e+21576>>2]=zva|0;a[e+21588>>2]=yva|0;a[e+21600>>2]=xva|0;a[e+21612>>2]=wva|0;a[e+21624>>2]=uva|0;a[e+21636>>2]=tva|0;a[e+21648>>2]=sva|0;a[e+21660>>2]=rva|0;a[e+21672>>2]=qva|0;a[e+21684>>2]=ova|0;a[e+21696>>2]=mva|0;a[e+21708>>2]=lva|0;a[e+21720>>2]=kva|0;a[e+21732>>2]=jva|0;a[e+21744>>2]=gva|0;a[e+21756>>2]=fva|0;a[e+21768>>2]=eva|0;a[e+21780>>2]=dva|0;a[e+21792>>2]=cva|0;a[e+21804>>2]=ava|0;a[e+21816>>2]=Zua|0;a[e+21828>>2]=Yua|0;a[e+21840>>2]=Xua|0;a[e+21852>>2]=Wua|0;a[e+21864>>2]=Uua|0;a[e+21876>>2]=Tua|0;a[e+21888>>2]=Sua|0;a[e+21900>>2]=Rua|0;a[e+21912>>2]=Qua|0;a[e+21924>>2]=Oua|0;a[e+21936>>2]=Mua|0;a[e+21948>>2]=Lua|0;a[e+21960>>2]=Kua|0;a[e+21972>>2]=Jua|0;a[e+21984>>2]=Hua|0;a[e+21996>>2]=Gua|0;a[e+22008>>2]=Fua|0;a[e+22020>>2]=Dua|0;a[e+22032>>2]=IA|0;a[e+22044>>2]=AA|0;a[e+22056>>2]=Aua|0;a[e+22068>>2]=zua|0;a[e+22080>>2]=yua|0;a[e+22092>>2]=xua|0;a[e+22104>>2]=Xz|0;a[e+22116>>2]=wua|0;a[e+22128>>2]=vua|0;a[e+22140>>2]=uua|0;a[e+22152>>2]=tua|0;a[e+22164>>2]=Mz|0;a[e+22176>>2]=qua|0;a[e+22188>>2]=pua|0;a[e+22200>>2]=oua|0;a[e+22212>>2]=nua|0;a[e+22224>>2]=Bz|0;a[e+22236>>2]=qz|0;a[e+22248>>2]=mua|0;a[e+22260>>2]=lua|0;a[e+22272>>2]=kua|0;a[e+22284>>2]=jua|0;a[e+22296>>2]=Ac|0;a[e+22308>>2]=SB|0;a[e+22320>>2]=Zj|0;a[e+22332>>2]=gua|0;a[e+22344>>2]=eua|0;a[e+22356>>2]=dua|0;a[e+22368>>2]=cua|0;a[e+22380>>2]=wB|0;a[e+22392>>2]=mB|0;a[e+22404>>2]=bua|0;a[e+22416>>2]=Zta|0;a[e+22428>>2]=Yta|0;a[e+22440>>2]=Xta|0;a[e+22452>>2]=bB|0;a[e+22464>>2]=Vta|0;a[e+22476>>2]=Uta|0;a[e+22488>>2]=Tta|0;a[e+22500>>2]=Sta|0;a[e+22512>>2]=WA|0;a[e+22524>>2]=Rta|0;a[e+22536>>2]=Ota|0;a[e+22548>>2]=Nta|0;a[e+22560>>2]=Mta|0;a[e+22572>>2]=SA|0;a[e+22584>>2]=Lta|0;a[e+22596>>2]=Kta|0;a[e+22608>>2]=Jta|0;a[e+22620>>2]=Ita|0;a[e+22632>>2]=QA|0;a[e+22644>>2]=Hta|0;a[e+22656>>2]=Eta|0;a[e+22668>>2]=Dta|0;a[e+22680>>2]=Cta|0;a[e+22692>>2]=OA|0;a[e+22704>>2]=Bta|0;a[e+22716>>2]=Ata|0;a[e+22728>>2]=zta|0;a[e+22740>>2]=yta|0;a[e+22752>>2]=NA|0;a[e+22764>>2]=LA|0;a[e+22776>>2]=vta|0;a[e+22788>>2]=uta|0;a[e+22800>>2]=tta|0;a[e+22812>>2]=sta|0;a[e+22824>>2]=JA|0;a[e+22836>>2]=gn|0;a[e+22848>>2]=rta|0;a[e+22860>>2]=qta|0;a[e+22872>>2]=pta|0;a[e+22884>>2]=ota|0;a[e+22896>>2]=EA|0;a[e+22908>>2]=mta|0;a[e+22920>>2]=lta|0;a[e+22932>>2]=kta|0;a[e+22944>>2]=ita|0;a[e+22956>>2]=DA|0;a[e+22968>>2]=CA|0;a[e+22980>>2]=BA|0;a[e+22992>>2]=hta|0;a[e+23004>>2]=gta|0;a[e+23016>>2]=dta|0;a[e+23028>>2]=cta|0;a[e+23040>>2]=zA|0;a[e+23052>>2]=bta|0;a[e+23064>>2]=ata|0;a[e+23076>>2]=$sa|0;a[e+23088>>2]=Zsa|0;a[e+23100>>2]=xA|0;a[e+23112>>2]=Ysa|0;a[e+23124>>2]=Xsa|0;a[e+23136>>2]=Usa|0;a[e+23148>>2]=Tsa|0;a[e+23160>>2]=wA|0;a[e+23172>>2]=uA|0;a[e+23184>>2]=Ssa|0;a[e+23196>>2]=Rsa|0;a[e+23208>>2]=Qsa|0;a[e+23220>>2]=Osa|0;a[e+23232>>2]=sA|0;a[e+23244>>2]=rA|0;a[e+23256>>2]=Lsa|0;a[e+23268>>2]=Ksa|0;a[e+23280>>2]=Jsa|0;a[e+23292>>2]=Isa|0;a[e+23304>>2]=qA|0;a[e+23316>>2]=pA|0;a[e+23328>>2]=nA|0;a[e+23340>>2]=mA|0;a[e+23352>>2]=Hsa|0;a[e+23364>>2]=Gsa|0;a[e+23376>>2]=Dsa|0;a[e+23388>>2]=Csa|0;a[e+23400>>2]=lA|0;a[e+23412>>2]=Bsa|0;a[e+23424>>2]=zsa|0;a[e+23436>>2]=xsa|0;a[e+23448>>2]=wsa|0;a[e+23460>>2]=kA|0;a[e+23472>>2]=hA|0;a[e+23484>>2]=fA|0;a[e+23496>>2]=tsa|0;a[e+23508>>2]=ssa|0;a[e+23520>>2]=rsa|0;a[e+23532>>2]=qsa|0;a[e+23544>>2]=dA|0;a[e+23556>>2]=msa|0;a[e+23568>>2]=lsa|0;a[e+23580>>2]=ksa|0;a[e+23592>>2]=jsa|0;a[e+23604>>2]=cA|0;a[e+23616>>2]=aA|0;a[e+23628>>2]=Zz|0;a[e+23640>>2]=Wz|0;a[e+23652>>2]=Uz|0;a[e+23664>>2]=fsa|0;a[e+23676>>2]=esa|0;a[e+23688>>2]=dsa|0;a[e+23700>>2]=csa|0;a[e+23712>>2]=Tz|0;a[e+23724>>2]=bsa|0;a[e+23736>>2]=Zra|0;a[e+23748>>2]=Yra|0;a[e+23760>>2]=Xra|0;a[e+23772>>2]=ir|0;a[e+23784>>2]=Wra|0;a[e+23796>>2]=Vra|0;a[e+23808>>2]=Ura|0;a[e+23820>>2]=Tra|0;a[e+23832>>2]=Sra|0;a[e+23844>>2]=Rra|0;a[e+23856>>2]=Ora|0;a[e+23868>>2]=Nra|0;a[e+23880>>2]=Mra|0;a[e+23892>>2]=Lra|0;a[e+23904>>2]=Kra|0;a[e+23916>>2]=Jra|0;a[e+23928>>2]=Ira|0;a[e+23940>>2]=Hra|0;a[e+23952>>2]=Gra|0;a[e+23964>>2]=Fra|0;a[e+23976>>2]=Bra|0;a[e+23988>>2]=Ara|0;a[e+24e3>>2]=zra|0;a[e+24012>>2]=yra|0;a[e+24024>>2]=xra|0;a[e+24036>>2]=wra|0;a[e+24048>>2]=vra|0;a[e+24060>>2]=ura|0;a[e+24072>>2]=tra|0;a[e+24084>>2]=sra|0;a[e+24096>>2]=pra|0;a[e+24108>>2]=ora|0;a[e+24120>>2]=nra|0;a[e+24132>>2]=mra|0;a[e+24144>>2]=kra|0;a[e+24156>>2]=ira|0;a[e+24168>>2]=hra|0;a[e+24180>>2]=gra|0;a[e+24192>>2]=fra|0;a[e+24204>>2]=era|0;a[e+24216>>2]=bra|0;a[e+24228>>2]=ara|0;a[e+24240>>2]=$qa|0;a[e+24252>>2]=Zqa|0;a[e+24264>>2]=Yqa|0;a[e+24276>>2]=Xqa|0;a[e+24288>>2]=Wqa|0;a[e+24300>>2]=Vqa|0;a[e+24312>>2]=Uqa|0;a[e+24324>>2]=Tqa|0;a[e+24336>>2]=Qqa|0;a[e+24348>>2]=Pqa|0;a[e+24360>>2]=Oqa|0;a[e+24372>>2]=Nqa|0;a[e+24384>>2]=Mqa|0;a[e+24396>>2]=Lqa|0;a[e+24408>>2]=Kqa|0;a[e+24420>>2]=Jqa|0;a[e+24432>>2]=Iqa|0;a[e+24444>>2]=Hqa|0;a[e+24456>>2]=Eqa|0;a[e+24468>>2]=Dqa|0;a[e+24480>>2]=Cqa|0;a[e+24492>>2]=Bqa|0;a[e+24504>>2]=zqa|0;a[e+24516>>2]=yqa|0;a[e+24528>>2]=xqa|0;a[e+24540>>2]=wqa|0;a[e+24552>>2]=vqa|0;a[e+24564>>2]=uqa|0;a[e+24576>>2]=rqa|0;a[e+24588>>2]=qqa|0;a[e+24600>>2]=pqa|0;a[e+24612>>2]=oqa|0;a[e+24624>>2]=mqa|0;a[e+24636>>2]=kqa|0;a[e+24648>>2]=iqa|0;a[e+24660>>2]=hqa|0;a[e+24672>>2]=gqa|0;a[e+24684>>2]=fqa|0;a[e+24696>>2]=cqa|0;a[e+24708>>2]=bqa|0;a[e+24720>>2]=aqa|0;a[e+24732>>2]=$pa|0;a[e+24744>>2]=Xpa|0;a[e+24756>>2]=Vpa|0;a[e+24768>>2]=Upa|0;a[e+24780>>2]=Tpa|0;a[e+24792>>2]=Spa|0;a[e+24804>>2]=Rpa|0;a[e+24816>>2]=Opa|0;a[e+24828>>2]=Npa|0;a[e+24840>>2]=Mpa|0;a[e+24852>>2]=Lpa|0;a[e+24864>>2]=Ipa|0;a[e+24876>>2]=Gpa|0;a[e+24888>>2]=Fpa|0;a[e+24900>>2]=Epa|0;a[e+24912>>2]=Dpa|0;a[e+24924>>2]=Cpa|0;a[e+24936>>2]=zpa|0;a[e+24948>>2]=ypa|0;a[e+24960>>2]=xpa|0;a[e+24972>>2]=wpa|0;a[e+24984>>2]=upa|0;a[e+24996>>2]=Yj|0;a[e+25008>>2]=spa|0;a[e+25020>>2]=rpa|0;a[e+25032>>2]=qpa|0;a[e+25044>>2]=ppa|0;a[e+25056>>2]=Sz|0;a[e+25068>>2]=Rz|0;a[e+25080>>2]=mpa|0;a[e+25092>>2]=lpa|0;a[e+25104>>2]=jpa|0;a[e+25116>>2]=hpa|0;a[e+25128>>2]=gpa|0;a[e+25140>>2]=fpa|0;a[e+25152>>2]=epa|0;a[e+25164>>2]=dpa|0;a[e+25176>>2]=apa|0;a[e+25188>>2]=$oa|0;a[e+25200>>2]=Zoa|0;a[e+25212>>2]=Yoa|0;a[e+25224>>2]=Woa|0;a[e+25236>>2]=Uoa|0;a[e+25248>>2]=Toa|0;a[e+25260>>2]=Soa|0;a[e+25272>>2]=Roa|0;a[e+25284>>2]=Qoa|0;a[e+25296>>2]=Noa|0;a[e+25308>>2]=Moa|0;a[e+25320>>2]=Loa|0;a[e+25332>>2]=Koa|0;a[e+25344>>2]=Ioa|0;a[e+25356>>2]=Eoa|0;a[e+25368>>2]=Doa|0;a[e+25380>>2]=Coa|0;a[e+25392>>2]=Boa|0;a[e+25404>>2]=Aoa|0;a[e+25416>>2]=xoa|0;a[e+25428>>2]=woa|0;a[e+25440>>2]=voa|0;a[e+25452>>2]=uoa|0;a[e+25464>>2]=toa|0;a[e+25476>>2]=soa|0;a[e+25488>>2]=roa|0;a[e+25500>>2]=qoa|0;a[e+25512>>2]=poa|0;a[e+25524>>2]=ooa|0;a[e+25536>>2]=loa|0;a[e+25548>>2]=koa|0;a[e+25560>>2]=joa|0;a[e+25572>>2]=ioa|0;a[e+25584>>2]=goa|0;a[e+25596>>2]=foa|0;a[e+25608>>2]=eoa|0;a[e+25620>>2]=doa|0;a[e+25632>>2]=coa|0;a[e+25644>>2]=boa|0;a[e+25656>>2]=Zna|0;a[e+25668>>2]=Yna|0;a[e+25680>>2]=Xna|0;a[e+25692>>2]=Wna|0;a[e+25704>>2]=Una|0;a[e+25716>>2]=Tna|0;a[e+25728>>2]=Rna|0;a[e+25740>>2]=Qna|0;a[e+25752>>2]=Pna|0;a[e+25764>>2]=Ona|0;a[e+25776>>2]=Lna|0;a[e+25788>>2]=Kna|0;a[e+25800>>2]=Jna|0;a[e+25812>>2]=Ina|0;a[e+25824>>2]=Gna|0;a[e+25836>>2]=Fna|0;a[e+25848>>2]=Dna|0;a[e+25860>>2]=Cna|0;a[e+25872>>2]=Bna|0;a[e+25884>>2]=Ana|0;a[e+25896>>2]=xna|0;a[e+25908>>2]=wna|0;a[e+25920>>2]=vna|0;a[e+25932>>2]=tna|0;a[e+25944>>2]=qna|0;a[e+25956>>2]=ona|0;a[e+25968>>2]=nna|0;a[e+25980>>2]=mna|0;a[e+25992>>2]=lna|0;a[e+26004>>2]=kna|0;a[e+26016>>2]=hna|0;a[e+26028>>2]=gna|0;a[e+26040>>2]=fna|0;a[e+26052>>2]=ena|0;a[e+26064>>2]=bna|0;a[e+26076>>2]=ana|0;a[e+26088>>2]=$ma|0;a[e+26100>>2]=Zma|0;a[e+26112>>2]=Yma|0;a[e+26124>>2]=Xma|0;a[e+26136>>2]=Uma|0;a[e+26148>>2]=Tma|0;a[e+26160>>2]=Sma|0;a[e+26172>>2]=Rma|0;a[e+26184>>2]=Pma|0;a[e+26196>>2]=Oma|0;a[e+26208>>2]=Nma|0;a[e+26220>>2]=Mma|0;a[e+26232>>2]=Lma|0;a[e+26244>>2]=Kma|0;a[e+26256>>2]=Hma|0;a[e+26268>>2]=Gma|0;a[e+26280>>2]=Fma|0;a[e+26292>>2]=Pz|0;a[e+26304>>2]=Dma|0;a[e+26316>>2]=Cma|0;a[e+26328>>2]=Bma|0;a[e+26340>>2]=Ama|0;a[e+26352>>2]=Oz|0;a[e+26364>>2]=zma|0;a[e+26376>>2]=wma|0;a[e+26388>>2]=vma|0;a[e+26400>>2]=uma|0;a[e+26412>>2]=Nz|0;a[e+26424>>2]=sma|0;a[e+26436>>2]=rma|0;a[e+26448>>2]=qma|0;a[e+26460>>2]=pma|0;a[e+26472>>2]=Lz|0;a[e+26484>>2]=qh|0;a[e+26496>>2]=Kz|0;a[e+26508>>2]=mma|0;a[e+26520>>2]=lma|0;a[e+26532>>2]=kma|0;a[e+26544>>2]=hma|0;a[e+26556>>2]=Jz|0;a[e+26568>>2]=fma|0;a[e+26580>>2]=ema|0;a[e+26592>>2]=dma|0;a[e+26604>>2]=cma|0;a[e+26616>>2]=Iz|0;a[e+26628>>2]=Hz|0;a[e+26640>>2]=ama|0;a[e+26652>>2]=Zla|0;a[e+26664>>2]=Xla|0;a[e+26676>>2]=Wla|0;a[e+26688>>2]=Gz|0;a[e+26700>>2]=Fz|0;a[e+26712>>2]=Vla|0;a[e+26724>>2]=Ula|0;a[e+26736>>2]=Rla|0;a[e+26748>>2]=Pla|0;a[e+26760>>2]=Ez|0;a[e+26772>>2]=Ola|0;a[e+26784>>2]=Mla|0;a[e+26796>>2]=Lla|0;a[e+26808>>2]=Kla|0;a[e+26820>>2]=Dz|0;a[e+26832>>2]=Cz|0;a[e+26844>>2]=Ila|0;a[e+26856>>2]=Fla|0;a[e+26868>>2]=Ela|0;a[e+26880>>2]=Dla|0;a[e+26892>>2]=Cla|0;a[e+26904>>2]=Ala|0;a[e+26916>>2]=zla|0;a[e+26928>>2]=yla|0;a[e+26940>>2]=xla|0;a[e+26952>>2]=Az|0;a[e+26964>>2]=zz|0;a[e+26976>>2]=qe|0;a[e+26988>>2]=yz|0;a[e+27e3>>2]=ula|0;a[e+27012>>2]=sla|0;a[e+27024>>2]=rla|0;a[e+27036>>2]=qla|0;a[e+27048>>2]=xz|0;a[e+27060>>2]=ola|0;a[e+27072>>2]=nla|0;a[e+27084>>2]=mla|0;a[e+27096>>2]=jla|0;a[e+27108>>2]=wz|0;a[e+27120>>2]=uz|0;a[e+27132>>2]=ila|0;a[e+27144>>2]=gla|0;a[e+27156>>2]=ela|0;a[e+27168>>2]=dla|0;a[e+27180>>2]=cla|0;a[e+27192>>2]=sz|0;a[e+27204>>2]=rz|0;a[e+27216>>2]=pz|0;a[e+27228>>2]=$ka|0;a[e+27240>>2]=Zka|0;a[e+27252>>2]=Yka|0;a[e+27264>>2]=Wka|0;a[e+27276>>2]=oz|0;a[e+27288>>2]=Vka|0;a[e+27300>>2]=Uka|0;a[e+27312>>2]=Tka|0;a[e+27324>>2]=Ska|0;a[e+27336>>2]=nz|0;a[e+27348>>2]=mz|0;a[e+27360>>2]=Zm|0;a[e+27372>>2]=Pka|0;a[e+27384>>2]=Oka|0;a[e+27396>>2]=Nka|0;a[e+27408>>2]=Mka|0;a[e+27420>>2]=hr|0;a[e+27432>>2]=Lka|0;a[e+27444>>2]=Kka|0;a[e+27456>>2]=Hka|0;a[e+27468>>2]=Gka|0;a[e+27480>>2]=lz|0;a[e+27492>>2]=kz|0;a[e+27504>>2]=jz|0;a[e+27516>>2]=Fka|0;a[e+27528>>2]=Eka|0;a[e+27540>>2]=Dka|0;a[e+27552>>2]=Cka|0;a[e+27564>>2]=iz|0;a[e+27576>>2]=zka|0;a[e+27588>>2]=yka|0;a[e+27600>>2]=xka|0;a[e+27612>>2]=wka|0;a[e+27624>>2]=hz|0;a[e+27636>>2]=gz|0;a[e+27648>>2]=fz|0;a[e+27660>>2]=ez|0;a[e+27672>>2]=dz|0;a[e+27684>>2]=cz|0;a[e+27696>>2]=bz|0;a[e+27708>>2]=UB|0;a[e+27720>>2]=tka|0;a[e+27732>>2]=ska|0;a[e+27744>>2]=qka|0;a[e+27756>>2]=oka|0;a[e+27768>>2]=TB|0;a[e+27780>>2]=RB|0;a[e+27792>>2]=nka|0;a[e+27804>>2]=mka|0;a[e+27816>>2]=jka|0;a[e+27828>>2]=ika|0;a[e+27840>>2]=fr|0;a[e+27852>>2]=hka|0;a[e+27864>>2]=sg|0;a[e+27876>>2]=PB|0;a[e+27888>>2]=MB|0;a[e+27900>>2]=fka|0;a[e+27912>>2]=eka|0;a[e+27924>>2]=dka|0;a[e+27936>>2]=$ja|0;a[e+27948>>2]=LB|0;a[e+27960>>2]=Yja|0;a[e+27972>>2]=Xja|0;a[e+27984>>2]=Wja|0;a[e+27996>>2]=Vja|0;a[e+28008>>2]=KB|0;a[e+28020>>2]=Tja|0;a[e+28032>>2]=Sja|0;a[e+28044>>2]=Rja|0;a[e+28056>>2]=Oja|0;a[e+28068>>2]=JB|0;a[e+28080>>2]=Nja|0;a[e+28092>>2]=Mja|0;a[e+28104>>2]=Lja|0;a[e+28116>>2]=Kja|0;a[e+28128>>2]=IB|0;a[e+28140>>2]=HB|0;a[e+28152>>2]=Jja|0;a[e+28164>>2]=Ija|0;a[e+28176>>2]=Fja|0;a[e+28188>>2]=Eja|0;a[e+28200>>2]=GB|0;a[e+28212>>2]=Dja|0;a[e+28224>>2]=Cja|0;a[e+28236>>2]=Bja|0;a[e+28248>>2]=Aja|0;a[e+28260>>2]=FB|0;a[e+28272>>2]=yja|0;a[e+28284>>2]=xja|0;a[e+28296>>2]=uja|0;a[e+28308>>2]=tja|0;a[e+28320>>2]=EB|0;a[e+28332>>2]=BB|0;a[e+28344>>2]=sja|0;a[e+28356>>2]=pja|0;a[e+28368>>2]=oja|0;a[e+28380>>2]=nja|0;a[e+28392>>2]=AB|0;a[e+28404>>2]=zB|0;a[e+28416>>2]=kja|0;a[e+28428>>2]=jja|0;a[e+28440>>2]=ija|0;a[e+28452>>2]=hja|0;a[e+28464>>2]=yB|0;a[e+28476>>2]=fja|0;a[e+28488>>2]=eja|0;a[e+28500>>2]=dja|0;a[e+28512>>2]=cja|0;a[e+28524>>2]=xB|0;a[e+28536>>2]=er|0;a[e+28548>>2]=$ia|0;a[e+28560>>2]=Zia|0;a[e+28572>>2]=Yia|0;a[e+28584>>2]=Xia|0;a[e+28596>>2]=Vj|0;a[e+28608>>2]=Wia|0;a[e+28620>>2]=Via|0;a[e+28632>>2]=Uia|0;a[e+28644>>2]=Tia|0;a[e+28656>>2]=vB|0;a[e+28668>>2]=Qia|0;a[e+28680>>2]=Pia|0;a[e+28692>>2]=Nia|0;a[e+28704>>2]=Mia|0;a[e+28716>>2]=uB|0;a[e+28728>>2]=Lia|0;a[e+28740>>2]=Kia|0;a[e+28752>>2]=Jia|0;a[e+28764>>2]=Iia|0;a[e+28776>>2]=tB|0;a[e+28788>>2]=sB|0;a[e+28800>>2]=Eia|0;a[e+28812>>2]=Dia|0;a[e+28824>>2]=Cia|0;a[e+28836>>2]=Bia|0;a[e+28848>>2]=rB|0;a[e+28860>>2]=qB|0;a[e+28872>>2]=Aia|0;a[e+28884>>2]=zia|0;a[e+28896>>2]=wia|0;a[e+28908>>2]=via|0;a[e+28920>>2]=pB|0;a[e+28932>>2]=uia|0;a[e+28944>>2]=sia|0;a[e+28956>>2]=ria|0;a[e+28968>>2]=qia|0;a[e+28980>>2]=oB|0;a[e+28992>>2]=pia|0;a[e+29004>>2]=oia|0;a[e+29016>>2]=lia|0;a[e+29028>>2]=kia|0;a[e+29040>>2]=nB|0;a[e+29052>>2]=jia|0;a[e+29064>>2]=hia|0;a[e+29076>>2]=gia|0;a[e+29088>>2]=fia|0;a[e+29100>>2]=lB|0;a[e+29112>>2]=eia|0;a[e+29124>>2]=dia|0;a[e+29136>>2]=aia|0;a[e+29148>>2]=$ha|0;a[e+29160>>2]=kB|0;a[e+29172>>2]=Zha|0;a[e+29184>>2]=Xha|0;a[e+29196>>2]=Wha|0;a[e+29208>>2]=Vha|0;a[e+29220>>2]=jB|0;a[e+29232>>2]=hB|0;a[e+29244>>2]=Uha|0;a[e+29256>>2]=Rha|0;a[e+29268>>2]=Qha|0;a[e+29280>>2]=Pha|0;a[e+29292>>2]=gB|0;a[e+29304>>2]=Oha|0;a[e+29316>>2]=Nha|0;a[e+29328>>2]=Mha|0;a[e+29340>>2]=Lha|0;a[e+29352>>2]=fB|0;a[e+29364>>2]=Kha|0;a[e+29376>>2]=Hha|0;a[e+29388>>2]=Gha|0;a[e+29400>>2]=Fha|0;a[e+29412>>2]=eB|0;a[e+29424>>2]=Eha|0;a[e+29436>>2]=Dha|0;a[e+29448>>2]=Cha|0;a[e+29460>>2]=Aha|0;a[e+29472>>2]=dB|0;a[e+29484>>2]=zha|0;a[e+29496>>2]=xha|0;a[e+29508>>2]=wha|0;a[e+29520>>2]=uha|0;a[e+29532>>2]=cB|0;a[e+29544>>2]=tha|0;a[e+29556>>2]=qha|0;a[e+29568>>2]=pha|0;a[e+29580>>2]=oha|0;a[e+29592>>2]=On|0;a[e+29604>>2]=aB|0;a[e+29616>>2]=kha|0;a[e+29628>>2]=jha|0;a[e+29640>>2]=iha|0;a[e+29652>>2]=hha|0;a[e+29664>>2]=$A|0;a[e+29676>>2]=fha|0;a[e+29688>>2]=eha|0;a[e+29700>>2]=dha|0;a[e+29712>>2]=cha|0;a[e+29724>>2]=bha|0;a[e+29736>>2]=ZA|0;a[e+29748>>2]=Zga|0;a[e+29760>>2]=Yga|0;a[e+29772>>2]=Xga|0;a[e+29784>>2]=Wga|0;a[e+29796>>2]=hf|0;a[e+29808>>2]=YA|0;a[e+29820>>2]=Uj|0;a[e+29832>>2]=Vga|0;a[e+29844>>2]=Uga|0;a[e+29856>>2]=Rga|0;a[e+29868>>2]=Qga|0;a[e+29880>>2]=XA|0;a[ed+4>>2]=ae|0;a[ed+12>>2]=Xq|0;a[ed+20>>2]=De|0;a[ed+28>>2]=Xg|0;a[ed+36>>2]=Wq|0;a[ed+44>>2]=Vq|0;a[ed+52>>2]=Uq|0;a[ed+60>>2]=Wg|0;a[ed+68>>2]=Vm|0;a[ed+76>>2]=Um|0;a[ed+84>>2]=Tm|0;a[ed+92>>2]=Sm|0;a[ed+100>>2]=Rm|0;a[ed+108>>2]=Qm|0;a[ed+116>>2]=R|0;a[az+4>>2]=Wm|0;a[Mh>>2]=fba|0;a[Mh+4>>2]=tv|0;a[Mh+8>>2]=yr|0;a[Mh+12>>2]=taa|0;a[Mh+16>>2]=baa|0;a[nj+20>>2]=328;a[Uh+20>>2]=244;a[aw+20>>2]=290;a[Rp+20>>2]=244;a[nn+4>>2]=ak;a[nn+8>>2]=374;a[nn+12>>2]=298;a[nn+16>>2]=42;a[on+4>>2]=pn;a[on+8>>2]=24;a[on+12>>2]=294;a[on+16>>2]=180;VB=d([2,0,0,0],["i8*",0,0,0],c);a[ak>>2]=VB+8|0;a[ak+4>>2]=YPa|0;a[ak+8>>2]=cc;a[pn>>2]=VB+8|0;a[pn+4>>2]=ZPa|0;a[pn+8>>2]=ak;a[W>>2]=NB|0;a[W+4>>2]=Jb;a[W+8>>2]=pl;a[W+16>>2]=ILa|0;a[W+20>>2]=Jb;a[W+24>>2]=aV;a[W+32>>2]=Gs|0;a[W+36>>2]=Jb;a[W+40>>2]=Yy;a[W+48>>2]=wGa|0;a[W+52>>2]=Jb;a[W+56>>2]=Yy;a[W+64>>2]=SDa|0;a[W+68>>2]=Jb;a[W+72>>2]=Zy;a[W+80>>2]=vBa|0;a[W+84>>2]=UU;a[W+88>>2]=Zy;a[W+96>>2]=bza|0;a[W+100>>2]=Jb;a[W+104>>2]=lV;a[W+112>>2]=uwa|0;a[W+116>>2]=Jb;a[W+120>>2]=WU;a[W+128>>2]=sg|0;a[W+132>>2]=Jb;a[W+136>>2]=Xy;a[W+144>>2]=osa|0;a[W+148>>2]=Jb;a[W+152>>2]=Xy;a[W+160>>2]=KA|0;a[W+164>>2]=Jb;a[W+168>>2]=oV;a[W+176>>2]=pna|0;a[W+180>>2]=Jb;a[W+184>>2]=XU;a[W+192>>2]=fla|0;a[W+196>>2]=Jb;a[W+200>>2]=cV;a[W+208>>2]=qja|0;a[W+212>>2]=Jb;a[W+216>>2]=iV;a[W+224>>2]=rha|0;a[W+228>>2]=Jb;a[W+232>>2]=bV;a[W+240>>2]=vga|0;a[W+244>>2]=Jb;a[W+248>>2]=jV;a[W+256>>2]=Sfa|0;a[W+260>>2]=Jb;a[W+264>>2]=$U;a[W+272>>2]=pfa|0;a[W+276>>2]=Jb;a[W+280>>2]=dV;a[W+288>>2]=Mea|0;a[W+292>>2]=Jb;a[W+296>>2]=eV;a[W+304>>2]=qea|0;a[W+308>>2]=Jb;a[W+312>>2]=YU;a[W+320>>2]=Uda|0;a[W+324>>2]=Jb;a[W+328>>2]=kV;a[W+336>>2]=Bda|0;a[W+340>>2]=Jb;a[W+344>>2]=qV;a[W+352>>2]=ida|0;a[W+356>>2]=Jb;a[W+360>>2]=pV;a[W+368>>2]=Nca|0;a[W+372>>2]=Jb;a[W+376>>2]=pl;a[W+384>>2]=qca|0;a[W+388>>2]=Jb;a[W+392>>2]=pl;a[W+400>>2]=Zba|0;a[W+404>>2]=Jb;a[W+408>>2]=ZU;a[W+416>>2]=Fba|0;a[W+420>>2]=Jb;a[W+424>>2]=nV;a[W+432>>2]=kba|0;a[W+436>>2]=Jb;a[W+440>>2]=mV;a[W+448>>2]=Taa|0;a[W+452>>2]=Jb;a[W+456>>2]=VU;a[W+464>>2]=Caa|0;a[W+468>>2]=Jb;a[W+472>>2]=fV;a[W+480>>2]=laa|0;a[W+484>>2]=Jb;a[W+488>>2]=gV;a[W+496>>2]=V$|0;a[W+500>>2]=Jb;a[W+504>>2]=hV;a[W+512>>2]=F$|0;a[W+516>>2]=Jb;a[W+520>>2]=sV;a[W+528>>2]=m$|0;a[W+532>>2]=Jb;a[W+536>>2]=rV;a[W+544>>2]=X9|0;a[W+548>>2]=Jb;a[W+552>>2]=tV;a[W+560>>2]=jv|0;a[W+564>>2]=Wy;a[W+576>>2]=eu|0;a[W+580>>2]=Wy;a[W+592>>2]=Hs|0;a[W+596>>2]=Yq;a[nk>>2]=QEa|0;a[nk+4>>2]=YLa|0;a[nk+8>>2]=una|0;a[Mu+16>>2]=246;a[Xc>>2]=WB;a[iQa>>2]=$Pa;a[jQa>>2]=aQa;a[Jo>>2]=bQa;a[Pn>>2]=cQa;a[kQa>>2]=WB;a[lQa>>2]=dQa;a[mQa>>2]=eQa;a[nQa>>2]=fQa;a[oQa>>2]=gQa;a[pQa>>2]=hQa;a[Mr>>2]=DAa|0;a[xe>>2]=Dra|0;a[xe+8>>2]=hIa|0;a[xe+16>>2]=Gia|0;a[xe+24>>2]=NB|0;a[xe+32>>2]=KA|0;a[xe+40>>2]=ok|0;a[xe+48>>2]=sg|0;a[xe+56>>2]=M2|0;a[xe+64>>2]=c0|0;a[xe+72>>2]=oY|0;a[xe+80>>2]=XPa|0;a[gh>>2]=ft|0;a[gh+8>>2]=cj|0;a[gh+16>>2]=SGa|0;a[gh+24>>2]=Zt|0;a[gh+32>>2]=XCa|0;a[Ai>>2]=gya|0;a[Ai+12>>2]=Bva|0;a[Ai+24>>2]=zv|0;a[Ai+36>>2]=sg|0;var $c=Math.sqrt,DQa,EQa,va={Fb:7,h:13,Gb:98,Hb:99,Ib:97,Jb:11,Kb:114,j:9,Lb:74,Mb:16,Nb:125,Ob:10,Pb:103,Qb:111,Rb:104,Sb:35,Tb:89,Ub:33,Vb:122,ha:17,Wb:14,Xb:27,Yb:113,Zb:43,$b:84,ac:115,bc:4,i:22,r:5,cc:106,N:21,Ea:40,dc:24,ec:31,fc:90,gc:72,hc:36,ic:100,jc:102,kc:101,lc:23,mc:105,nc:61,oc:19,O:2,pc:8,qc:37,rc:67,sc:12,tc:42,uc:92,vc:28,wc:63,xc:60,yc:38,zc:107,ia:20,Ac:39,Bc:131,Cc:88,Dc:95,Ec:25,ja:6,Fc:75,Gc:130,Hc:1,Ic:32,Jc:71,Kc:93,Lc:91,ka:34,Mc:30,Fa:29,Nc:3,Oc:116,Pc:62,Qc:110,Rc:26,Sc:11,Tc:18};oa=zg=Om=0;var Q={Sa:"/",gb:2,a:[xc],va:wc,bb:(function(a,b){for(var c=a[0],d=1;dthis.length-1||0>a)){var b=a%m;return this.Xa(Math.floor(a/m))[b]}});f.prototype.ob=(function(a){this.Xa=a});var h=new XMLHttpRequest;h.open("HEAD",c,ee);h.send(xc);200<=h.status&&300>h.status||304===h.status||Ub(Error("Couldn't load "+c+". Status: "+h.status));var j=Number(h.getResponseHeader("Content-length")),n,m=1048576;if(!((n=h.getResponseHeader("Accept-Ranges"))&&"bytes"===n)){m=j}var p=new f(m,j);p.ob((function(a){var b=a*p.ma,d=(a+1)*p.ma-1,d=Math.min(d,j-1);if("undefined"===typeof p.F[a]){var e=p.F;b>d&&Ub(Error("invalid range ("+b+", "+d+") or no bytes requested!"));d>j-1&&Ub(Error("only "+j+" bytes available! programmer error!"));var f=new XMLHttpRequest;f.open("GET",c,ee);j!==m&&f.setRequestHeader("Range","bytes="+b+"-"+d);"undefined"!=typeof Uint8Array&&(f.responseType="arraybuffer");f.overrideMimeType&&f.overrideMimeType("text/plain; charset=x-user-defined");f.send(xc);200<=f.status&&300>f.status||304===f.status||Ub(Error("Couldn't load "+c+". Status: "+f.status));b=f.response!==cc?new Uint8Array(f.response||[]):Nd(f.responseText||"",wc);e[a]=b}"undefined"===typeof p.F[a]&&Ub(Error("doXHR failed!"));return p.F[a]}));f={d:ee,b:p}}else{f={d:ee,url:c}}return Q.G(a,b,f,d,e)}),Ra:(function(a,b,c,d,e,f,h,j){function n(c){function i(c){j||Q.S(a,b,c,d,e);f&&f();rn("cp "+m)}var n=ee;K.preloadPlugins.forEach((function(a){!n&&a.canHandle(m)&&(a.handle(c,m,i,(function(){h&&h();rn("cp "+m)})),n=wc)}));n||i(c)}Tb.Ua();var m=Q.bb([a,b],wc);pr("cp "+m);"string"==typeof c?Tb.Ka(c,(function(a){n(a)}),h):n(c)}),Qa:(function(a,b,c,d,e){return Q.G(a,b,{d:ee,link:c},d,e)}),s:(function(a,b,c,d){!c&&!d&&Ub(Error("A device must have at least one callback defined."));return Q.G(a,b,{d:wc,input:c,l:d},Boolean(c),Boolean(d))}),ua:(function(a){if(a.d||a.e||a.link||a.b){return wc}var b=wc;"undefined"!==typeof XMLHttpRequest&&Ub(Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread."));if(K.read){try{a.b=Nd(K.read(a.url),wc)}catch(c){b=ee}}else{Ub(Error("Cannot load without read() or XMLHttpRequest."))}b||Ea(va.r);return b}),ra:(function(){Q.root||(Q.root={v:wc,write:wc,e:wc,d:ee,timestamp:Date.now(),$:1,b:{}})}),t:(function(a,b,e){function f(a){a===xc||10===a?(b.M(b.buffer.join("")),b.buffer=[]):b.buffer.push(k.wa(a))}Ae(!Q.t.Z,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");Q.t.Z=wc;Q.ra();var a=a||K.stdin,b=b||K.stdout,e=e||K.stderr,h=wc,j=wc,l=wc;a||(h=ee,a=(function(){if(!a.R||!a.R.length){var b;"undefined"!=typeof window&&"function"==typeof window.prompt?(b=window.prompt("Input: "),b===xc&&(b=String.fromCharCode(0))):"function"==typeof readline&&(b=readline());b||(b="");a.R=Nd(b+"\n",wc)}return a.R.shift()}));var k=new Qa.Q;b||(j=ee,b=f);b.M||(b.M=K.print);b.buffer||(b.buffer=[]);e||(l=ee,e=f);e.M||(e.M=K.print);e.buffer||(e.buffer=[]);try{Q.H("/","tmp",wc,wc)}catch(n){}var m=Q.H("/","dev",wc,wc),p=Q.s(m,"stdin",a),s=Q.s(m,"stdout",xc,b),e=Q.s(m,"stderr",xc,e);Q.s(m,"tty",a,b);Q.a[1]={path:"/dev/stdin",object:p,position:0,p:wc,q:ee,K:ee,aa:!h,error:ee,f:ee,g:[]};Q.a[2]={path:"/dev/stdout",object:s,position:0,p:ee,q:wc,K:ee,aa:!j,error:ee,f:ee,g:[]};Q.a[3]={path:"/dev/stderr",object:e,position:0,p:ee,q:wc,K:ee,aa:!l,error:ee,f:ee,g:[]};Om=d([1],"void*",$g);zg=d([2],"void*",$g);oa=d([3],"void*",$g);Q.pa("/","dev/shm/tmp",wc,wc);for(h=Q.a.length;h>e-6&63,e=e-6,a=a+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[k]}}2==e?(a+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(d&3)<<4],a+="=="):4==e&&(a+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(d&15)<<2],a+="=");r.src="data:audio/x-"+c.substr(-3)+";base64,"+a;f(r)}});r.src=m;setTimeout((function(){f(r)}),1e4)}else{return h()}})})}}),Yc:(function(a,b,c){try{var d=a.getContext(b?"experimental-webgl":"2d");d||Ub(":(")}catch(e){return K.print("Could not create canvas - "+e),xc}b&&(a.style.backgroundColor="black",a.addEventListener("webglcontextlost",(function(){alert("WebGL context lost. You will need to reload the page.")}),ee));c&&(K.Zc=d,K.Ad=b,Tb.eb.forEach((function(a){a()})));return d}),ca:(function(){function a(){var b=ee;if((document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement)===c){c.kb=c.requestPointerLock||c.mozRequestPointerLock||c.webkitRequestPointerLock,c.kb(),b=wc}if(K.onFullScreen){K.onFullScreen(b)}}function b(){Tb.hb=document.pointerLockElement===c||document.mozPointerLockElement===c||document.webkitPointerLockElement===c}var c=K.canvas;document.addEventListener("fullscreenchange",a,ee);document.addEventListener("mozfullscreenchange",a,ee);document.addEventListener("webkitfullscreenchange",a,ee);document.addEventListener("pointerlockchange",b,ee);document.addEventListener("mozpointerlockchange",b,ee);document.addEventListener("webkitpointerlockchange",b,ee);c.ca=c.requestFullScreen||c.mozRequestFullScreen||(c.webkitRequestFullScreen?(function(){c.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}):xc);c.ca()}),requestAnimationFrame:(function(a){window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||window.setTimeout);window.requestAnimationFrame(a)}),ed:(function(a){return a.movementX||a.mozMovementX||a.webkitMovementX||0}),fd:(function(a){return a.movementY||a.mozMovementY||a.webkitMovementY||0}),Db:(function(a,b,c){var d=new XMLHttpRequest;d.open("GET",a,wc);d.responseType="arraybuffer";d.onload=(function(){200==d.status?b(d.response):c()});d.onerror=c;d.send(xc)}),Ka:(function(a,b,c){Tb.Db(a,(function(c){Ae(c,'Loading data file "'+a+'" failed (no arrayBuffer).');b(new Uint8Array(c));rn("al "+a)}),(function(){c?c():Ub('Loading data file "'+a+'" failed.')}));pr("al "+a)}),lb:[],Cb:(function(){var a=K.canvas;Tb.lb.forEach((function(b){b(a.width,a.height)}))}),od:(function(a,b,c){var d=K.canvas;d.width=a;d.height=b;c||Tb.Cb()})};IU.unshift({U:(function(){!K.noFSInit&&!Q.t.Z&&Q.t()})});CU.push({U:(function(){Q.va=ee})});tr.push({U:(function(){Q.jb()})});K.FS_createFolder=Q.H;K.FS_createPath=Q.pa;K.FS_createDataFile=Q.S;K.FS_createPreloadedFile=Q.Ra;K.FS_createLazyFile=Q.Pa;K.FS_createLink=Q.Qa;K.FS_createDevice=Q.s;Ea(0);ni.c=d([0],"i8",c);kk.c=d([0],"i8",c);mC(Ee);pC.La=d(12,"void*",c);K.requestFullScreen=(function(){Tb.ca()});K.requestAnimationFrame=(function(a){Tb.requestAnimationFrame(a)});K.pauseMainLoop=(function(){Tb.k.pause()});K.resumeMainLoop=(function(){Tb.k.mb()});qC.X=1;K._vizRenderFromString=rC;Kc.X=1;pk.X=1;zC.X=1;Er.X=1;FC.X=1;Cn.X=1;Nc.X=1;GC.X=1;Ag.X=1;yC.X=1;JC.X=1;tk.X=1;Cg.X=1;Hn.X=1;In.X=1;LC.X=1;hh.X=1;MC.X=1;NC.X=1;OC.X=1;PC.X=1;QC.X=1;RC.X=1;Ei.X=1;Or.X=1;Kn.X=1;xk.X=1;Rr.X=1;eD.X=1;gD.X=1;hD.X=1;Ck.X=1;oh.X=1;Ji.X=1;nh.X=1;Br.X=1;HD.X=1;QD.X=1;RD.X=1;JD.X=1;GD.X=1;fs.X=1;wD.X=1;xD.X=1;yD.X=1;Qi.X=1;ms.X=1;LE.X=1;IE.X=1;yE.X=1;OE.X=1;ps.X=1;xE.X=1;UE.X=1;Gi.X=1;vD.X=1;kD.X=1;Ur.X=1;lD.X=1;Tk.X=1;Ld.X=1;Uk.X=1;NE.X=1;hF.X=1;kF.X=1;Qs.X=1;$s.X=1;at.X=1;bt.X=1;qF.X=1;rF.X=1;ct.X=1;yF.X=1;Zs.X=1;ht.X=1;so.X=1;ag.X=1;jt.X=1;Fg.X=1;nc.X=1;uF.X=1;Bo.X=1;OF.X=1;aG.X=1;nG.X=1;qt.X=1;rt.X=1;RF.X=1;AG.X=1;sG.X=1;gl.X=1;rG.X=1;hl.X=1;Oo.X=1;DG.X=1;EG.X=1;HG.X=1;RG.X=1;GG.X=1;KG.X=1;LG.X=1;fg.X=1;IG.X=1;yt.X=1;jl.X=1;Wo.X=1;Vo.X=1;SG.X=1;Xo.X=1;At.X=1;zt.X=1;Bt.X=1;Et.X=1;Dt.X=1;UG.X=1;XG.X=1;Ft.X=1;ff.X=1;Jg.X=1;cH.X=1;Ii.X=1;lH.X=1;tH.X=1;vH.X=1;xH.X=1;Yi.X=1;AH.X=1;CH.X=1;FH.X=1;GH.X=1;HH.X=1;gu.X=1;hu.X=1;LH.X=1;MH.X=1;NH.X=1;OH.X=1;dp.X=1;Wt.X=1;Xt.X=1;Yt.X=1;vk.X=1;jp.X=1;Au.X=1;Wd.X=1;QH.X=1;vl.X=1;Bu.X=1;xl.X=1;UH.X=1;YH.X=1;Du.X=1;XH.X=1;WH.X=1;Eu.X=1;$H.X=1;cI.X=1;iI.X=1;np.X=1;Pu.X=1;Qu.X=1;uI.X=1;VI.X=1;Tu.X=1;Vu.X=1;av.X=1;ev.X=1;kv.X=1;mv.X=1;An.X=1;OD.X=1;Bp.X=1;bK.X=1;YJ.X=1;fK.X=1;kK.X=1;mK.X=1;nK.X=1;rK.X=1;lK.X=1;vv.X=1;tK.X=1;sK.X=1;aK.X=1;eh.X=1;nv.X=1;Re.X=1;Bn.X=1;Ke.X=1;ut.X=1;MK.X=1;OK.X=1;PK.X=1;SK.X=1;Dv.X=1;Gp.X=1;dL.X=1;eL.X=1;gL.X=1;hL.X=1;iL.X=1;Gt.X=1;Mv.X=1;jL.X=1;Ov.X=1;mL.X=1;Hp.X=1;zL.X=1;AL.X=1;Ht.X=1;DL.X=1;CL.X=1;ng.X=1;Pl.X=1;Pk.X=1;Wv.X=1;uh.X=1;Np.X=1;Op.X=1;Sf.X=1;OL.X=1;Rl.X=1;fw.X=1;hw.X=1;iw.X=1;mw.X=1;Vl.X=1;aM.X=1;cw.X=1;pw.X=1;cM.X=1;eM.X=1;hM.X=1;uw.X=1;uM.X=1;Zv.X=1;Pp.X=1;$v.X=1;zr.X=1;Dw.X=1;Ew.X=1;UM.X=1;VM.X=1;WM.X=1;cq.X=1;ZM.X=1;cN.X=1;dN.X=1;wj.X=1;Lw.X=1;hN.X=1;hm.X=1;nN.X=1;vN.X=1;wN.X=1;Jw.X=1;gN.X=1;AN.X=1;Uw.X=1;Pw.X=1;uN.X=1;DN.X=1;jm.X=1;Ww.X=1;ON.X=1;NN.X=1;SN.X=1;Zw.X=1;Yw.X=1;jq.X=1;Cj.X=1;$w.X=1;YN.X=1;ZN.X=1;lq.X=1;bx.X=1;jO.X=1;gO.X=1;hO.X=1;dx.X=1;nO.X=1;Sg.X=1;bi.X=1;ex.X=1;hx.X=1;ix.X=1;qO.X=1;tO.X=1;fx.X=1;gx.X=1;kO.X=1;lO.X=1;cx.X=1;mO.X=1;mm.X=1;ux.X=1;uO.X=1;vO.X=1;xx.X=1;pq.X=1;gm.X=1;OO.X=1;RO.X=1;SO.X=1;zx.X=1;WO.X=1;XO.X=1;Bx.X=1;lx.X=1;tq.X=1;aP.X=1;Gx.X=1;qq.X=1;Nx.X=1;Dx.X=1;Ix.X=1;Sw.X=1;uq.X=1;nP.X=1;Rw.X=1;Px.X=1;vq.X=1;vm.X=1;wm.X=1;oP.X=1;sq.X=1;wq.X=1;Jx.X=1;Kx.X=1;hP.X=1;yP.X=1;zP.X=1;gP.X=1;fP.X=1;Ux.X=1;Tx.X=1;Xx.X=1;JP.X=1;MP.X=1;NP.X=1;YP.X=1;CP.X=1;Yx.X=1;SP.X=1;UP.X=1;hQ.X=1;iQ.X=1;cy.X=1;dy.X=1;DP.X=1;EP.X=1;FP.X=1;ay.X=1;Zx.X=1;$x.X=1;nQ.X=1;oQ.X=1;pQ.X=1;qQ.X=1;yQ.X=1;zQ.X=1;tQ.X=1;mx.X=1;iy.X=1;CQ.X=1;FQ.X=1;GQ.X=1;HQ.X=1;zm.X=1;PQ.X=1;SQ.X=1;XQ.X=1;YQ.X=1;aR.X=1;dR.X=1;fR.X=1;ry.X=1;ZQ.X=1;mR.X=1;Cq.X=1;HR.X=1;TR.X=1;eS.X=1;gS.X=1;mS.X=1;Fm.X=1;NS.X=1;VS.X=1;XS.X=1;Mj.X=1;Of.X=1;eT.X=1;MT.X=1;jU.X=1;mU.X=1;pU.X=1;Gb.X=1;uU.X=1;wU.X=1;vU.X=1;AU.X=1;G.X=1;BU.X=1;yU.X=1;zU.X=1;var hk=xc;K.Na=(function(a){function b(){for(var a=0;3>a;a++){f.push(0)}}var e=a.length+1,f=[d(Nd("/bin/this.program"),"i8",c)];b();for(var h=0;h>2],b[1]=a[d+4>>2],f[0]);d=(c+340|0)>>2;e=(b[0]=a[d],b[1]=a[d+1],f[0])-e;f[0]=e;a[d]=b[0];a[d+1]=b[1];m[c+529|0]=1;return 0}),0,PC,0,(function(b,c){var d=$M(a[b>>2]),e=$M(a[c>>2]);return((e|0)<(d|0)&1)-((e|0)>(d|0)&1)|0}),0,(function(b){var c;y(b,qba|0);c=(b+12|0)>>2;y(b,a[a[a[c]>>2]>>2]);y(b,lr|0);y(b,a[a[a[c]>>2]+4>>2]);y(b,kr|0);y(b,a[a[a[c]>>2]+8>>2]);y(b,oA|0)}),0,(function(b,c){return a[b>>2]-a[c>>2]|0}),0,(function(a,b,c,d){y(a,tz|0);0!=(b|0)&&0!=m[b]<<24>>24&&(y(a,ysa|0),y(a,Bo(b)),y(a,ue|0));0!=(c|0)&&0!=m[c]<<24>>24&&(y(a,nsa|0),y(a,nc(c)),y(a,ue|0));0!=(d|0)&&0!=m[d]<<24>>24&&(y(a,vy|0),y(a,nc(d)),y(a,ue|0));y(a,ar|0)}),0,(function(b,c,d){var e;0==(c|0)&&(a[Pm>>2]=d);for(var c=c-1|0,d=0,f=b;;){if((d|0)>=(c|0)){var h=b,j=f;break}var k=a[Pm>>2],n=m[k];if(0==n<<24>>24){e=339;break}a[Pm>>2]=k+1|0;k=f+1|0;m[f]=n;if(10==n<<24>>24){h=b;j=k;break}else{d=d+1|0,f=k}}339==e&&(0==(d|0)?(h=a[Pm>>2]=0,j=f):(m[f]=10,h=b,j=f+1|0));m[j]=0;return h}),0,(function(a){cc(a|0)}),0,(function(a){y(a,Xj|0)}),0,fR,0,MH,0,(function(b){var c,d=h;c=(b+12|0)>>2;0!=(a[a[c]+20>>2]|0)&&(y(b,vva|0),np(b,0,a[a[c]+20>>2]+4|0));y(b,hva|0);y(b,Vua|0);N(b,Iua|0,(j=h,h+=4,a[j>>2]=a[a[c]+28>>2],j));h=d}),0,CH,0,(function(c){var d;m[c+528|0]=0;d=(c+348|0)>>2;var e=1.1*(b[0]=a[d],b[1]=a[d+1],f[0]);f[0]=e;a[d]=b[0];a[d+1]=b[1];m[c+529|0]=1;return 0}),0,NC,0,jU,0,(function(){return Vca|0}),0,(function(b){var c=a[b+16>>2];y(b,Wj|0);y(b,nc(a[c+152>>2]));y(b,Wpa|0);y(b,kn|0);y(b,nc(a[a[c+8>>2]+12>>2]));y(b,hn|0)}),0,HR,0,(function(c,d,e,g,j,m,l,k){m=h;h+=32;l=.5*$c(g*g+j*j);d=.5*g+d;g=m|0;f[0]=d-l;a[g>>2]=b[0];a[g+4>>2]=b[1];e=.5*j+e;j=m+8|0;f[0]=e-l;a[j>>2]=b[0];a[j+4>>2]=b[1];j=m+16|0;f[0]=d+l;a[j>>2]=b[0];a[j+4>>2]=b[1];j=m+24|0;f[0]=e+l;a[j>>2]=b[0];a[j+4>>2]=b[1];Qk(c,m|0,(k>>>3&1^1)&255);h=m}),0,(function(a){y(a,gr|0)}),0,(function(c,d,e){var g=h;h+=16;c=a[c>>2];Ui(g,d,e,90*(a[a[c+20>>2]+152>>2]&3)|0);var d=g|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),e=g+8|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),j=c+96|0,j=.5*(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);if(e<-j|e>j){return h=g,0}e=c+104|0;if(d<-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])){return h=g,0}c=c+112|0;c=d<=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);h=g;return c&1}),0,vH,0,tH,0,(function(b,c){var d=a[c+8>>2];0!=(d|0)&&G(d);d=a[c+24>>2];0!=(d|0)&&Ho(d);d=c;G(d)}),0,nC,0,(function(c){var d=a[a[c+16>>2]+8>>2],c=d|0,e=a[a[a[Kb>>2]>>2]+8>>2],g=a[U+20>>2];g>>>0>2]>>>0||(na(U+16|0,1),g=a[U+20>>2]);m[g]=0;g=a[U+16>>2];a[U+20>>2]=g;qc(c,e,g);0!=(a[d+48>>2]|0)&&(d=a[a[a[Kb>>2]+4>>2]+8>>2],e=a[U+84>>2],e>>>0>2]>>>0||(na(U+80|0,1),e=a[U+84>>2]),m[e]=0,e=a[U+80>>2],a[U+84>>2]=e,qc(c,d,e));f[0]=1;a[kc+8>>2]=b[0];a[kc+12>>2]=b[1];f[0]=1;a[kc+40>>2]=b[0];a[kc+44>>2]=b[1]}),0,(function(b){var c=a[a[b>>2]+128>>2],d=b+572|0;0==(a[d>>2]|0)&&(a[d>>2]=c|0,d=c+148|0,m[d]|=2,vv(b,c));Rr(b,c);m[b+532|0]=1}),0,mS,0,(function(c,d,e,g,m,D){g=h;y(c,cr|0);var m=a[Ug>>2],l=a[$d>>2];N(c,eA|0,(j=h,h+=8,a[j>>2]=m,a[j+4>>2]=l,j));Oy(c,D);y(c,br|0);Mq(c);y(c,bA|0);D=h;if(0<(e|0)){m=0;for(l=$z|0;;){var k=(m<<4)+d|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=(m<<4)+d+8|0,n=(a[$d>>2]>>>0)-(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);N(c,X7|0,(j=h,h+=20,a[j>>2]=l,f[0]=k,a[j+4>>2]=b[0],a[j+8>>2]=b[1],f[0]=n,a[j+12>>2]=b[0],a[j+16>>2]=b[1],j));l=0==(m|0)?ly|0:Y|0;m=m+1|0;if((m|0)==(e|0)){break}}}y(c,ue|0);h=D;y(c,B8|0);h=g}),0,(function(b,c){var d=h,e=a[a[c+16>>2]+12>>2],f=a[a[c+12>>2]+12>>2];la(3,Zea|0,(j=h,h+=12,a[j>>2]=c,a[j+4>>2]=e,a[j+8>>2]=f,j));h=d;return 0}),0,(function(c,d,e){var g=h;y(c,ECa|0);Fm(c,0);y(c,VA|0);if(0<(e|0)){for(var m=0;;){var D=(m<<4)+d|0,D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),l=(m<<4)+d+8|0,l=-(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);N(c,UA|0,(j=h,h+=16,f[0]=D,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));m=m+1|0;if((m|0)==(e|0)){break}}}y(c,Dm|0);h=g}),0,(function(a,b){y(a,Yha|0);y(a,b);y(a,wd|0)}),0,(function(b){var c;y(b,Qma|0);c=V(a[a[b>>2]+128>>2]|0,Ema|0);0!=(c|0)&&0!=m[c]<<24>>24&&(y(b,tma|0),y(b,c),y(b,jma|0));y(b,Yla|0);y(b,Nla|0);y(b,Bla|0);c=(b+12|0)>>2;y(b,nc(a[a[a[c]>>2]>>2]));y(b,lr|0);y(b,nc(a[a[a[c]>>2]+4>>2]));y(b,kr|0);y(b,nc(a[a[a[c]>>2]+8>>2]));y(b,oA|0);y(b,dr|0)}),0,(function(b,c,d){var e,f=h;e=d>>2;d=h;h+=32;a[d>>2]=a[e];a[d+4>>2]=a[e+1];a[d+8>>2]=a[e+2];a[d+12>>2]=a[e+3];a[d+16>>2]=a[e+4];a[d+20>>2]=a[e+5];a[d+24>>2]=a[e+6];a[d+28>>2]=a[e+7];0==(b|0)&&sa(pd|0,114,$j|0,Nj|0);d=b+16|0;0==(a[d>>2]|0)&&sa(pd|0,116,$j|0,Nr|0);0==(c|0)&&sa(pd|0,117,$j|0,Oh|0);c=c+8|0;0==(a[c>>2]|0)&&sa(pd|0,118,$j|0,Ph|0);0==(a[a[d>>2]+8>>2]|0)&&sa(pd|0,121,$j|0,$t|0);N(b,Z3|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,K3|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,u3|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,e3|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,R2|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,C2|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,l2|0,(j=h,h+=4,a[j>>2]=a[c>>2],j));N(b,Y1|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,Sp|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));h=f}),0,(function(){a[tg>>2]=-1}),0,(function(b){b=a[b+28>>2];0!=(b|0)&&G(b)}),0,(function(a){y(a,NZ|0);y(a,$m|0);y(a,kZ|0);y(a,WY|0);y(a,$m|0);y(a,IY|0);y(a,uY|0);y(a,fY|0);y(a,$m|0);y(a,RX|0);y(a,DX|0);y(a,$m|0);y(a,oX|0)}),0,QC,0,(function(){a[rf>>2]=0}),0,(function(){return 0}),0,(function(b){var c=h;y(b,Aqa|0);var d=b+64|0,e=b+12|0;2!=(a[d>>2]|0)&&N(b,nqa|0,(j=h,h+=4,a[j>>2]=a[a[e>>2]+28>>2],j));if(0==(a[a[e>>2]+20>>2]|0)&&2!=(a[d>>2]|0)){var d=a[b+468>>2],e=a[b+472>>2],f=a[b+476>>2];N(b,wy|0,(j=h,h+=16,a[j>>2]=a[b+464>>2],a[j+4>>2]=d,a[j+8>>2]=e,a[j+12>>2]=f,j))}y(b,Zpa|0);y(b,Kpa|0);h=c}),0,wM,0,(function(c){var d;m[c+528|0]=0;d=(c+348|0)>>2;var e=(b[0]=a[d],b[1]=a[d+1],f[0])/1.1;f[0]=e;a[d]=b[0];a[d+1]=b[1];m[c+529|0]=1;return 0}),0,eS,0,(function(b){G(a[b+52>>2])}),0,(function(c,d,e){var g,m=h;g=e>>2;e=h;h+=32;a[e>>2]=a[g];a[e+4>>2]=a[g+1];a[e+8>>2]=a[g+2];a[e+12>>2]=a[g+3];a[e+16>>2]=a[g+4];a[e+20>>2]=a[g+5];a[e+24>>2]=a[g+6];a[e+28>>2]=a[g+7];g=c+228|0;var D=c+212|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])&-1;var d=a[d+8>>2],D=e+16|0,D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),l=e|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=e+24|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=e+8|0,e=k-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);N(c,k8|0,(j=h,h+=36,a[j>>2]=d,f[0]=D-l,a[j+4>>2]=b[0],a[j+8>>2]=b[1],f[0]=e,a[j+12>>2]=b[0],a[j+16>>2]=b[1],f[0]=l,a[j+20>>2]=b[0],a[j+24>>2]=b[1],f[0]=(g>>>0)-k,a[j+28>>2]=b[0],a[j+32>>2]=b[1],j));y(c,V7|0);h=m}),0,(function(a,b,c,d){return jg(d,a,c)}),0,gS,0,(function(b){var c;y(b,sGa|0);y(b,dGa|0);c=(b+12|0)>>2;y(b,Of(a[a[a[c]>>2]>>2]));y(b,lr|0);y(b,Of(a[a[a[c]>>2]+4>>2]));y(b,kr|0);y(b,Of(a[a[a[c]>>2]+8>>2]));y(b,pFa|0)}),0,(function(b,c){return ka(a[b>>2],a[c>>2])}),0,(function(c){var d;m[c+528|0]=0;var e=c+348|0;d=(c+340|0)>>2;e=10/(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+(b[0]=a[d],b[1]=a[d+1],f[0]);f[0]=e;a[d]=b[0];a[d+1]=b[1];m[c+529|0]=1;return 0}),0,(function(c,d,e){var g,m=h;h+=1024;g=e>>2;e=h;h+=32;a[e>>2]=a[g];a[e+4>>2]=a[g+1];a[e+8>>2]=a[g+2];a[e+12>>2]=a[g+3];a[e+16>>2]=a[g+4];a[e+20>>2]=a[g+5];a[e+24>>2]=a[g+6];a[e+28>>2]=a[g+7];c=c+16|0;g=a[Bd+(a[a[c>>2]+12>>2]<<2)>>2];db(g,cIa|0);var y=e|0,l=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),y=e+8|0,k=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]);Ap(g,l,k);var y=m|0,n=e+16|0,l=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])-l,e=e+24|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])-k;Ma(y,Hl|0,(j=h,h+=8,a[j>>2]=(0>l?l-.5:l+.5)&-1,a[j+4>>2]=(0>e?e-.5:e+.5)&-1,j));db(g,y);fi(a[a[c>>2]+12>>2],Y|0,a[d+8>>2]);h=m}),0,eT,0,(function(b){var c=a[b+16>>2];y(b,Wj|0);y(b,nc(a[c+152>>2]));y(b,lqa|0);y(b,kn|0);y(b,nc(a[a[c+8>>2]+12>>2]));y(b,hn|0)}),0,(function(b,c){return a[a[b>>2]+20>>2]-a[a[c>>2]+20>>2]|0}),0,(function(c,d,e){var g=h;y(c,f5|0);var m=d+16|0,D=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),m=d|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),D=D-m,l=d+24|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),d=d+8|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),l=l-d,d=(a[$d>>2]>>>0)-(d+l);N(c,Ky|0,(j=h,h+=16,f[0]=m-D,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=d,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));N(c,Ly|0,(j=h,h+=16,f[0]=2*D,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=2*l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));Oy(c,e);y(c,br|0);Mq(c);y(c,n4|0);h=g}),0,(function(c,d,e){var g=h;y(c,cr|0);var m=a[Ug>>2],D=a[$d>>2];N(c,vea|0,(j=h,h+=8,a[j>>2]=m,a[j+4>>2]=D,j));y(c,Yda|0);if(0<(e|0)){for(var m=e-1|0,D=d|0,l=d+8|0,k=0;;){if(0==(k|0)){y(c,Fda|0);var n=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),z=(a[$d>>2]>>>0)-(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);N(c,yA|0,(j=h,h+=16,f[0]=n,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=z,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));y(c,Rca|0)}else{n=(k<<4)+d|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),z=(k<<4)+d+8|0,z=(a[$d>>2]>>>0)-(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),N(c,yA|0,(j=h,h+=16,f[0]=n,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=z,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j))}(k|0)==(m|0)&&y(c,uca|0);k=k+1|0;if((k|0)==(e|0)){break}}}y(c,cca|0);Mq(c);y(c,tA|0);h=g}),0,kK,0,(function(b,c){return ka(a[b>>2],a[c>>2])}),0,(function(c,d,e,g){var m=h;y(c,Mxa|0);Fm(c,g);y(c,VA|0);g=0<(e|0);a:do{if(g){for(var D=0;;){var l=(D<<4)+d|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=(D<<4)+d+8|0,k=-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);N(c,UA|0,(j=h,h+=16,f[0]=l,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=k,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));D=D+1|0;if((D|0)==(e|0)){break a}}}}while(0);e=d|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);d=d+8|0;d=-(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);N(c,yxa|0,(j=h,h+=16,f[0]=e,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=d,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));y(c,Dm|0);h=m}),0,(function(b,c,d){var b=a[c>>2],e=a[d>>2];b>>>0>>0?d=-1:b>>>0>e>>>0?d=1:(c=a[c+4>>2],d=a[d+4>>2],d=c>>>0>>0?-1:c>>>0>d>>>0&1);return d}),0,(function(c,d,e){var g,j,m=h;h+=32;var l=m|0;j=m>>2;g=d>>2;a[j]=a[g];a[j+1]=a[g+1];a[j+2]=a[g+2];a[j+3]=a[g+3];g=d+16|0;j=d|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);j=m+16|0;f[0]=g;a[j>>2]=b[0];a[j+4>>2]=b[1];g=d+24|0;d=d+8|0;d=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);g=m+24|0;f[0]=d;a[g>>2]=b[0];a[g+4>>2]=b[1];d=(c+16|0)>>2;if(0!=(e|0)&&(e=a[d],g=e+76|0,.5<(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]))){Nf(c,e+52|0),kf(c,l,2),y(c,pya|0)}e=a[d]+40|0;if(.5<(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])){Em(c),Nf(c,a[d]+16|0),kf(c,l,2),y(c,aya|0)}h=m}),0,(function(c,d,e){var g=c+16|0,h=a[g>>2]+40|0;if(.5<(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])){Em(c);Nf(c,a[g>>2]+16|0);y(c,Jj|0);g=d|0;h=d+8|0;Hd(c,(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]));y(c,Kj|0);g=1<(e|0);a:do{if(g){for(h=1;;){var j=(h<<4)+d|0,l=(h<<4)+d+8|0;Hd(c,(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]));y(c,Hq|0);h=h+1|0;if((h|0)==(e|0)){break a}}}}while(0);y(c,zy|0)}}),0,(function(b,c,d){var e,f=a[b+16>>2];e=(f+88|0)>>2;0!=(a[e]|0)&&(Gm(b),y(b,jA|0),kf(b,c,d),y(b,Lj|0),gi(b,f+16|0),c=a[e],1==(c|0)?(y(b,Hm|0),e=a[e]):e=c,2==(e|0)&&y(b,Im|0),Mj(b),y(b,wd|0))}),0,(function(c){var d=c>>2,e=h,g=a[d+4];y(c,Goa|0);g=g+8|0;0!=m[a[a[g>>2]+12>>2]]<<24>>24&&(y(c,vA|0),y(c,nc(a[a[g>>2]+12>>2])));N(c,hoa|0,(j=h,h+=4,a[j>>2]=a[d+41]*a[d+40]|0,j));g=a[d+111];N(c,Vna|0,(j=h,h+=8,a[j>>2]=a[d+110],a[j+4>>2]=g,j));var d=c+376|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),g=c+384|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),q=c+392|0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),D=c+400|0,D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]);N(c,Hna|0,(j=h,h+=32,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=g,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=q,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=D,a[j+24>>2]=b[0],a[j+28>>2]=b[1],j));y(c,sna|0);y(c,dna|0);y(c,ar|0);h=e}),0,(function(c){var d=h;h+=36;JF(c,8);var e;var g=d>>2,q=h;h+=12;e=q>>2;var y=q+8;a[y>>2]=5;var l=V(c|0,tla|0);0!=(l|0)&&1<=(Cd(l,kda|0,(j=h,h+=8,a[j>>2]=q,a[j+4>>2]=y,j))|0)?(l=(b[0]=a[e],b[1]=a[e+1],f[0]),1>l?(f[0]=1,a[e]=b[0],a[e+1]=b[1],e=1):20>2]=b[0],a[l+4>>2]=b[1],a[g+6]=-1,a[g+7]=a[y>>2],a[g+8]=0,0!=m[ld]<<24>>24&&Va(a[oa>>2],D$|0,(j=h,h+=8,f[0]=e,a[j>>2]=b[0],a[j+4>>2]=b[1],j)),g=d):(a[g+6]=0,g=a[g+8]=0);h=q;e=g;XN(c);q=d+32|0;g=d+28|0;for(y=d+24|0;!(kx(c,e),0!=(a[q>>2]|0)&&(la(0,bka|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),e=a[y>>2]=0),lx(c,0!=(e|0)&1),zO(c,e),l=a[g>>2]-1|0,a[g>>2]=l,0==(a[y>>2]|0)|0==(l|0));){}mx(c);bx(c,1);if(0!=jo(V(c|0,HJa|0))<<24>>24&&(q=ra(c),0!=(q|0))){for(;;){g=Ib(c,q);y=0==(g|0);a:do{if(!y){for(e=g;;){if(DN(c,e),e=yb(c,e),0==(e|0)){break a}}}}while(0);q=ba(c,q);if(0==(q|0)){break}}}Bt(c,1);h=d}),0,(function(a,b,c){a=0==(c|0);0==(b|0)?b=a?0:Gb(c):a?(G(b),b=0):b=mc(b,c);return b}),0,mU,0,OC,0,(function(c){var d=h,e=a[c+16>>2];y(c,Wj|0);y(c,nc(a[e+152>>2]));y(c,Hpa|0);var g=c+480|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),q=c+488|0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),D=-a[c+356>>2]|0,l=c+496|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=c+504|0,k=-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);N(c,tpa|0,(j=h,h+=36,f[0]=g,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=q,a[j+8>>2]=b[0],a[j+12>>2]=b[1],a[j+16>>2]=D,f[0]=l,a[j+20>>2]=b[0],a[j+24>>2]=b[1],f[0]=k,a[j+28>>2]=b[0],a[j+32>>2]=b[1],j));e=e+8|0;0!=m[a[a[e>>2]+12>>2]]<<24>>24&&(y(c,kn|0),y(c,nc(a[a[e>>2]+12>>2])),y(c,hn|0));h=d}),0,(function(b,c,d){zm(b);Am(b);Bm(a[a[b+16>>2]+12>>2],76,c,d)}),0,(function(a){y(a,Xj|0)}),0,(function(b){var c;for(c=b>>2;!(b=a[c+32],0==(b|0));){c=b>>2}var b=a[c+3],d=a[b+236>>2];c=a[c+4];var e=a[c+236>>2];return(d|0)>(e|0)?0:(d|0)<(e|0)?1:b=(a[b+240>>2]|0)<(a[c+240>>2]|0)&1}),0,bk(),0,(function(a){y(a,Mm|0)}),0,TR,0,(function(b,c){var d,e=fa(24);d=e>>2;a[d+2]=a[c+8>>2];a[d+3]=a[c+12>>2];a[d+4]=a[c+16>>2];a[d+5]=a[c+20>>2];return e}),0,(function(c,d,e,g){var q=h,D=a[c+16>>2],l=D+40|0;if(.5<=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])){Nf(c,D+16|0),D=g+24|0,gj(c,(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])),N(c,Nxa|0,(j=h,h+=4,a[j>>2]=a[g+20>>2],j)),D=Qu(a[g>>2],a[Gq>>2]),l=m[g+72|0]<<24>>24,114==(l|0)?(l=g+56|0,d-=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])):108==(l|0)?l=g+56|0:(l=g+56|0,d-=.5*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),g=g+48|0,Hd(c,d,(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])+e),y(c,zxa|0),gj(c,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),N(c,lxa|0,(j=h,h+=4,a[j>>2]=D,j))}h=q}),0,(function(a){y(a,gr|0)}),0,(function(b){return 0!=(a[a[b>>2]+116>>2]|0)||0!=(a[b+40>>2]|0)?0:b=nC(a[b+36>>2])}),0,(function(c,d,e,g){var m=h;y(c,cr|0);var D=a[Ug>>2],l=a[$d>>2];N(c,eA|0,(j=h,h+=8,a[j>>2]=D,a[j+4>>2]=l,j));Oy(c,g);y(c,br|0);Mq(c);y(c,bA|0);if(0<(e|0)){g=e-1|0;for(D=0;;){var l=(D<<4)+d|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=(D<<4)+d+8|0,k=(a[$d>>2]>>>0)-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);0==(D|0)?(y(c,$z|0),N(c,Qz|0,(j=h,h+=16,f[0]=l,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=k,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),y(c,M5|0)):N(c,Qz|0,(j=h,h+=16,f[0]=l,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=k,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));(D|0)==(g|0)&&y(c,w5|0);D=D+1|0;if((D|0)==(e|0)){break}}}y(c,tA|0);h=m}),0,(function(c,d,e){var g,h=a[c+16>>2];g=(h+88|0)>>2;0!=(a[g]|0)&&(Gm(c),y(c,jA|0),kf(c,d,e),y(c,Lj|0),gi(c,h+16|0),y(c,Jq|0),d=h+96|0,gj(c,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])),d=a[g],1==(d|0)?(y(c,Hm|0),g=a[g]):g=d,2==(g|0)&&y(c,Im|0),y(c,Sna|0),Mj(c),y(c,wd|0))}),0,(function(b,c){var d=h;if(0!=(c|0)){var e=a[b+16>>2]+212|0;0!=(a[e>>2]|0)&&(y(b,$wa|0),kf(b,a[e>>2],2),y(b,Jwa|0),e=Qu(c,a[Gq>>2]),N(b,vwa|0,(j=h,h+=4,a[j>>2]=e,j)))}h=d}),0,YQ,0,(function(){return EEa|0}),0,Lc,0,(function(b){b=a[b+28>>2];0!=(b|0)&&(G(a[b+40>>2]),G(b))}),0,(function(b){var c=a[a[b+16>>2]+8>>2];UL(104,170);var d=a[b+64>>2];2==(d|0)?av(b,c,b,0):3==(d|0)?av(b,c,b,1):0==(d|0)||1==(d|0)?0==(a[b+148>>2]&134217728|0)&&iw(c,b):4==(d|0)&&(PQ(c),0==(a[b+148>>2]&134217728|0)&&iw(c,b));UL(0,0)}),0,(function(a){y(a,vz|0)}),0,pU,0,(function(){a[rf>>2]=2}),0,(function(c){var d;d=c+528|0;var e=0==m[d]<<24>>24;m[d]=e&1;if(!e){return 0}d=a[c+440>>2];e=a[c+444>>2];d=(d>>>0)/(d|0);var e=(e>>>0)/(e|0),g=c+348|0;f[0]=d>2]=b[0];a[g+4>>2]=b[1];d=(c+332|0)>>2;a[d]=0;a[d+1]=0;a[d+2]=0;a[d+3]=0;m[c+529|0]=1;return 0}),0,ax,0,mR,0,(function(b){var c,d=h;y(b,vpa|0);2==(a[b+64>>2]|0)?y(b,kpa|0):y(b,wd|0);c=a[a[b+12>>2]>>2]>>2;var e=a[c+1],f=a[c+2];N(b,Xoa|0,(j=h,h+=12,a[j>>2]=a[c],a[j+4>>2]=e,a[j+8>>2]=f,j));h=d}),0,Mp,0,(function(b,c){var d=h;N(b,JOa|0,(j=h,h+=4,a[j>>2]=c,j));h=d}),0,(function(b){var c=h,d=a[b+16>>2];y(b,wca|0);d=d+8|0;0!=m[a[a[d>>2]+12>>2]]<<24>>24&&(y(b,vA|0),y(b,a[a[d>>2]+12>>2]));N(b,Kba|0,(j=h,h+=4,a[j>>2]=a[b+164>>2]*a[b+160>>2]|0,j));h=c}),0,(function(b,c){Kc(a[c+8>>2]);G(c)}),0,(function(c,d,e,g){var m,y=h;m=e>>2;e=h;h+=32;a[e>>2]=a[m];a[e+4>>2]=a[m+1];a[e+8>>2]=a[m+2];a[e+12>>2]=a[m+3];a[e+16>>2]=a[m+4];a[e+20>>2]=a[m+5];a[e+24>>2]=a[m+6];a[e+28>>2]=a[m+7];0==(c|0)&&sa(pd|0,205,mr|0,Nj|0);0==(d|0)&&sa(pd|0,206,mr|0,Oh|0);m=(d+8|0)>>2;0==(a[m]|0)&&sa(pd|0,207,mr|0,Ph|0);if(0!=(a[d+52>>2]|0)){var d=e|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),l=e+8|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=e+16|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=e+24|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);0!=g<<24>>24&&(N(c,an|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),N(c,sf|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),N(c,sf|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),N(c,sf|0,(j=h,h+=16,f[0]=k,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),N(c,sf|0,(j=h,h+=16,f[0]=k,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),N(c,sf|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),g=a[m],N(c,$5|0,(j=h,h+=8,a[j>>2]=4,a[j+4>>2]=g,j)));N(c,an|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(c,sf|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));N(c,sf|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));N(c,sf|0,(j=h,h+=16,f[0]=k,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));N(c,sf|0,(j=h,h+=16,f[0]=k,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));N(c,sf|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));g=a[m];N(c,K5|0,(j=h,h+=8,a[j>>2]=4,a[j+4>>2]=g,j))}h=y}),0,xi,0,(function(){a[XB>>2]=0==(a[XB>>2]|0)&1}),0,(function(c,d,e,g,m){var D,l=h;D=(c+16|0)>>2;if(0!=(m|0)){var m=a[D],k=m+76|0;if(.5<(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])){Nf(c,m+52|0),y(c,an|0),kf(c,e,g),y(c,gc|0),m=e|0,k=e+8|0,Hd(c,(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),N(c,sDa|0,(j=h,h+=8,a[j>>2]=g,a[j+4>>2]=d,j))}}m=a[D]+40|0;if(.5<(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0])){Em(c),Nf(c,a[D]+16|0),y(c,an|0),kf(c,e,g),y(c,gc|0),D=e|0,e=e+8|0,Hd(c,(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])),N(c,fDa|0,(j=h,h+=8,a[j>>2]=g,a[j+4>>2]=d,j))}h=l}),0,(function(b){var c=h;N(b,Jva|0,(j=h,h+=4,a[j>>2]=a[a[a[b+16>>2]+8>>2]+12>>2],j));y(b,gr|0);h=c}),0,(function(a){y(a,Voa|0)}),0,(function(a){y(a,vha|0)}),0,(function(b){ju(a[b+28>>2])}),0,(function(b,c,d,e){var f=h;y(b,tz|0);0!=(c|0)&&0!=m[c]<<24>>24&&(c=Of(c),N(b,U_|0,(j=h,h+=4,a[j>>2]=c,j)));0!=(d|0)&&0!=m[d]<<24>>24&&(d=Of(d),N(b,E_|0,(j=h,h+=4,a[j>>2]=d,j)));0!=(e|0)&&0!=m[e]<<24>>24&&(e=Of(e),N(b,q_|0,(j=h,h+=4,a[j>>2]=e,j)));y(b,ar|0);h=f}),0,(function(c,d,e,g,m,D){y(c,Cya|0);Fm(c,D);y(c,oya|0);g=h;if(0<(e|0)){m=0;for(D=77;;){var l=(m<<4)+d|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=(m<<4)+d+8|0,k=-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);N(c,$xa|0,(j=h,h+=20,a[j>>2]=D,f[0]=l,a[j+4>>2]=b[0],a[j+8>>2]=b[1],f[0]=k,a[j+12>>2]=b[0],a[j+16>>2]=b[1],j));D=0==(m|0)?67:32;m=m+1|0;if((m|0)==(e|0)){break}}}h=g;y(c,Dm|0)}),0,(function(b,c){var d=a[Ul>>2];J[a[d>>2]](d,c,1);return 0}),0,(function(a,b){y(a,Wj|0);y(a,nc(b));y(a,ipa|0)}),0,(function(b,c,d){c=h;b=d>>2;d=h;h+=32;a[d>>2]=a[b];a[d+4>>2]=a[b+1];a[d+8>>2]=a[b+2];a[d+12>>2]=a[b+3];a[d+16>>2]=a[b+4];a[d+20>>2]=a[b+5];a[d+24>>2]=a[b+6];a[d+28>>2]=a[b+7];h=c}),0,AH,0,NS,0,MC,0,(function(b,c,d){b=a[b>>2];var e,f=a[a[b+128>>2]+32>>2];wC(b,c);c=a[b+124>>2];e=c>>2;a[e+14]=Bn(c,a[e+13]);if(0==(a[f+44>>2]|0)&&0==(a[e+37]&67108864|0)){Lc(Ar|0,20,1,a[oa>>2])}else{e=b+120|0;var h=a[e>>2];0==(h|0)?(h=fa(624),a[e>>2]=h,a[b+124>>2]=h,e=a[Lh>>2]=h):(e=a[Lh>>2],0==(e|0)?e=a[Lh>>2]=h:(e=a[e+4>>2],0==(e|0)&&(e=fa(624),a[a[Lh>>2]+4>>2]=e),a[Lh>>2]=e));a[e+32>>2]=d;a[e>>2]=b;Br(b,f);Cr(c);iK(c);Dr(b)}}),0,(function(b,c,d){return a[c>>2]-a[d>>2]|0}),0,(function(b,c){G(a[c+52>>2])}),0,zC,0,(function(b,c){var d=a[c+20>>2];0!=(d|0)&&ri(d);if(0!=(a[c+52>>2]|0)&&(d=a[c+60>>2],0!=(d|0))){J[d](c)}G(c)}),0,(function(a,b){G(b)}),0,(function(b,c){var d=a[c+8>>2],e=d+80|0,f=m[d+84|0];1==f<<24>>24?(e=a[e>>2],Kc(a[e+76>>2]),Io(e|0),G(e)):2==f<<24>>24&&rt(a[e>>2]);Io(d|0);G(d);G(c)}),0,(function(b,c,d,e){zm(b);Am(b);0==(e|0)?Bm(a[a[b+16>>2]+12>>2],112,c,d):(jy(b),Bm(a[a[b+16>>2]+12>>2],80,c,d))}),0,(function(c,d,e){var g,m=h;y(c,kxa|0);Fm(c,e);g=(d|0)>>2;var D=(b[0]=a[g],b[1]=a[g+1],f[0]),e=(d+8|0)>>2,l=-(b[0]=a[e],b[1]=a[e+1],f[0]);N(c,Wwa|0,(j=h,h+=16,f[0]=D,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));D=d+16|0;g=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])-(b[0]=a[g],b[1]=a[g+1],f[0]);d=d+24|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])-(b[0]=a[e],b[1]=a[e+1],f[0]);N(c,Iwa|0,(j=h,h+=16,f[0]=g,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=d,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));y(c,Py|0);h=m}),0,(function(){return 1}),0,HQ,0,NH,0,(function(b){7==(a[b>>2]|0)&&ZF(a[b+76>>2],1)}),0,(function(b,c){var d=c+12|0,e=D[d>>1];if(0!=e<<16>>16){var f=c+8|0,e=0>16;a:do{if(e){for(var h=a[f>>2],j=0;;){var k=a[h>>2];0!=(k|0)&&G(k);k=a[h+16>>2];0!=(k|0)&&Ho(k);j=j+1|0;if((j|0)<(D[d>>1]<<16>>16|0)){h=h+76|0}else{break a}}}}while(0);G(a[f>>2])}d=c;G(d)}),0,lH,0,(function(a){y(a,Mm|0)}),0,dR,0,nm,0,FQ,0,(function(a){y(a,Xj|0)}),0,(function(a){y(a,Xj|0)}),0,(function(b){var c=h;h+=8;var d=c+4,e=a[a[b+16>>2]+8>>2],b=a[b+64>>2];4==(b|0)?(ev(e,d,c),SQ(e,a[d>>2],a[c>>2])):1==(b|0)?0!=(D[e+164>>1]&1)<<16>>16&&oF(e):0==(b|0)&&(d=h,h+=8,ev(e,d+4,d),h=d);h=c}),0,Th,0,OH,0,(function(b,c,d){var b=a[c+16>>2],b=0==(b|0)?-1:a[b+16>>2],e=a[c+12>>2],e=0==(e|0)?-1:a[e+16>>2],f=a[d+16>>2],f=0==(f|0)?-1:a[f+16>>2],h=a[d+12>>2],h=0==(h|0)?-1:a[h+16>>2];return(e|0)!=(h|0)?e-h|0:c=(b|0)==(f|0)?JL(a[c+4>>2],d):b-f|0}),0,(function(b,c,d,e,f){var h;h=a[b+16>>2]>>2;Cq(b,a[h+51],a[h+53],a[h+52],c,d,e,f)}),0,(function(a){cc(a|0);0!=(a|0)&&G(a)}),0,(function(b){var c,d=h,e=a[b+16>>2];y(b,xga|0);c=a[a[b+12>>2]>>2]>>2;var f=a[c+1],m=a[c+2];N(b,Ufa|0,(j=h,h+=12,a[j>>2]=a[c],a[j+4>>2]=f,a[j+8>>2]=m,j));N(b,rfa|0,(j=h,h+=4,a[j>>2]=a[a[e+8>>2]+12>>2],j));N(b,Lea|0,(j=h,h+=4,a[j>>2]=a[b+164>>2]*a[b+160>>2]|0,j));y(b,pea|0);y(b,Tda|0);y(b,Ada|0);y(b,hda|0);y(b,Lca|0);y(b,zca|0);y(b,fca|0);y(b,Nba|0);y(b,tba|0);h=d}),0,(function(a){cc(a|0);0!=(a|0)&&G(a)}),0,MT,0,(function(a){m[a+530|0]=0;m[a+533|0]=0}),0,(function(c,d,e){var g=h;h+=12;var m=g+4,y=a[c+16>>2],l=y+96|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])&-1,k=a[y+16>>2],n=a[rf>>2];Aq(a[y+88>>2],g,m);y=a[g>>2];m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);N(c,CB|0,(j=h,h+=68,a[j>>2]=2,a[j+4>>2]=1,a[j+8>>2]=y,a[j+12>>2]=l,a[j+16>>2]=k,a[j+20>>2]=0,a[j+24>>2]=n,a[j+28>>2]=0,a[j+32>>2]=0,f[0]=m,a[j+36>>2]=b[0],a[j+40>>2]=b[1],a[j+44>>2]=0,a[j+48>>2]=0,a[j+52>>2]=0,a[j+56>>2]=0,a[j+60>>2]=0,a[j+64>>2]=e,j));ry(c,d,e,0);h=g}),0,GQ,0,(function(a,b){dc(b)}),0,(function(b,c){return Lb(a[b>>2],a[c>>2])}),0,bk(),0,(function(b,c){return Lb(a[b>>2],a[c>>2])}),0,(function(a,b){y(a,xAa|0);y(a,b);y(a,wd|0)}),0,XS,0,VS,0,jO,0,(function(c,d,e,g){var q,y=h;h+=1024;q=(c+16|0)>>2;var l=a[a[q]+12>>2],k=y|0,n=g+24|0;Ma(k,Qla|0,(j=h,h+=8,f[0]=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),a[j>>2]=b[0],a[j+4>>2]=b[1],j));l=a[Bd+(l<<2)>>2];db(l,k);fi(a[a[q]+12>>2],Y|0,a[g+20>>2]);Am(c);c=m[g+72|0]<<24>>24;c=114==(c|0)?1:108==(c|0)?-1:0;db(l,Zja|0);Ap(l,d,e);d=g+56|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])&-1;Ma(k,Hl|0,(j=h,h+=8,a[j>>2]=c,a[j+4>>2]=d,j));db(l,k);fi(a[a[q]+12>>2],Y|0,a[g>>2]);h=y}),0,FH,0,(function(b,c,d){var b=a[c+16>>2],b=0==(b|0)?-1:a[b+16>>2],e=a[c+12>>2],e=0==(e|0)?-1:a[e+16>>2],f=a[d+16>>2],f=0==(f|0)?-1:a[f+16>>2],h=a[d+12>>2],h=0==(h|0)?-1:a[h+16>>2];return(b|0)!=(f|0)?b-f|0:c=(e|0)==(h|0)?JL(a[c+4>>2],d):e-h|0}),0,(function(){a[rf>>2]=1}),0,(function(c){var d;m[c+528|0]=0;var e=c+348|0;d=(c+332|0)>>2;e=10/(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+(b[0]=a[d],b[1]=a[d+1],f[0]);f[0]=e;a[d]=b[0];a[d+1]=b[1];m[c+529|0]=1;return 0}),0,(function(c,d){var e=a[Id>>2],g=e+36*a[d>>2]+20|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),e=e+36*a[c>>2]+20|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);return(g>e&1)-(g>2],h=g|0,d=d-(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),g=g+8|0,e=e-(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),c=a[c+4>>2];return d*d+e*e<=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])&1}),0,(function(b){var c=a[b+16>>2];y(b,Wj|0);y(b,nc(a[c+152>>2]));y(b,jra|0);y(b,kn|0);c=ec(cg|0,a[c+8>>2]|0);y(b,nc(c));G(c);y(b,hn|0)}),0,GH,0,(function(a){y(a,vz|0)}),0,(function(){a[tg>>2]=1}),0,(function(b,c,d,e,f,h){zm(b);Am(b);0==(h|0)?Bm(a[a[b+16>>2]+12>>2],66,c,d):(jy(b),Bm(a[a[b+16>>2]+12>>2],98,c,d))}),0,(function(){a[rf>>2]=2}),0,nK,0,(function(b){var c;c=a[b+16>>2]>>2;var d=a[b+64>>2];3==(d|0)?(Cq(b,a[c+51],a[c+53],a[c+52],a[c+37],a[c+42],a[c+46],a[c+38]),y(b,Mda|0)):2==(d|0)&&Cq(b,a[c+51],a[c+53],a[c+52],a[c+37],a[c+42],a[c+46],a[c+38])}),0,(function(c){var d,e,g=h;e=Uk(V(c|0,Xk|0));if(0==(e|0)){la(0,wJa|0,(j=h,h+=4,a[j>>2]=a[c+12>>2],j))}else{var m=iI(e);e=m>>2;if(0!=(m|0)){var m=a[e+10],y=a[e+11];d=c+48|0;f[0]=(m|0)/72;a[d>>2]=b[0];a[d+4>>2]=b[1];d=c+56|0;f[0]=(y|0)/72;a[d>>2]=b[0];a[d+4>>2]=b[1];var l=fa(12);d=l>>2;a[c+28>>2]=l;a[d]=a[e+3];a[d+1]=((m|0)/-2&-1)-a[e+8]|0;a[d+2]=((y|0)/-2&-1)-a[e+9]|0}}h=g}),0,HH,0,GC,0,(function(a,b){y(a,eDa|0);y(a,nc(b));y(a,dr|0)}),0,(function(c,d){var e=a[a[c>>2]+108>>2],g=a[a[d>>2]+108>>2],h=0!=(g|0);if(0==(e|0)){return h&1}if(!h){return-1}var h=e+24|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),e=e+32|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),j=g+24|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),g=g+32|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);return h>j?-1:hg?-1:e>2]=d,a[j+4>>2]=e,j));h=c}),0,JC,0,(function(a){cc(a|0)}),0,(function(a){y(a,Xj|0)}),0,(function(){a[rf>>2]=2}),0,(function(b,c){return a[a[b>>2]+240>>2]-a[a[c>>2]+240>>2]|0}),0,(function(b,c){var d=a[b>>2];An(d,a[d+128>>2],c)}),0,(function(c,d,e,g){var m,y=h;h+=12;var l=y+4,k=a[c+16>>2];m=k>>2;var k=k+96|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])&-1,n=a[m+4],z=a[m+13],p=a[rf>>2];Aq(a[m+22],y,l);m=a[y>>2];l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);N(c,CB|0,(j=h,h+=68,a[j>>2]=2,a[j+4>>2]=3,a[j+8>>2]=m,a[j+12>>2]=k,a[j+16>>2]=n,a[j+20>>2]=z,a[j+24>>2]=p,a[j+28>>2]=0,a[j+32>>2]=0!=(g|0)?20:-1,f[0]=l,a[j+36>>2]=b[0],a[j+40>>2]=b[1],a[j+44>>2]=0,a[j+48>>2]=0,a[j+52>>2]=0,a[j+56>>2]=0,a[j+60>>2]=0,a[j+64>>2]=e+1|0,j));ry(c,d,e,1);h=y}),0,oi,0,(function(c){var d;m[c+528|0]=0;d=c+348|0;var e=10/(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);d=(c+332|0)>>2;e=(b[0]=a[d],b[1]=a[d+1],f[0])-e;f[0]=e;a[d]=b[0];a[d+1]=b[1];m[c+529|0]=1;return 0}),0,mK,0,(function(b,c,d,e){var f=h;h+=40;if(0==m[d]<<24>>24){c=bu>>2}else{var e=0==(e|0)?cu|0:e,y=a[c+28>>2],l=KH(y,d);0==(l|0)?0!=(Yi(c,y+16|0,f,d,15,0)|0)&&BH(a[c+12>>2],d):0!=(Yi(c,l+16|0,f,e,m[l+65|0]&255,0)|0)&&la(0,du|0,(j=h,h+=12,a[j>>2]=a[c+12>>2],a[j+4>>2]=d,a[j+8>>2]=e,j));c=f>>2}b>>=2;for(d=c+10;c + + + + + + {{.Data.Title}} + + + + + + + +

      +
      + {{.Body}} +
      + + + + + +{{- end }} diff --git a/web/template/page/config.tmpl b/web/template/page/config.tmpl new file mode 100644 index 0000000..a99da41 --- /dev/null +++ b/web/template/page/config.tmpl @@ -0,0 +1,19 @@ +{{ define "config" }} + +
      + + +{{ end }} diff --git a/web/template/page/graphviz.tmpl b/web/template/page/graphviz.tmpl new file mode 100644 index 0000000..ef61a44 --- /dev/null +++ b/web/template/page/graphviz.tmpl @@ -0,0 +1,15 @@ +{{ define "graphviz" }} + +
      + + +{{ end }} diff --git a/web/template/page/index.tmpl b/web/template/page/index.tmpl new file mode 100644 index 0000000..aff4459 --- /dev/null +++ b/web/template/page/index.tmpl @@ -0,0 +1,3 @@ +{{ define "index" }} +Flow admin interface +{{ end }} diff --git a/web/template/page/pprof.tmpl b/web/template/page/pprof.tmpl new file mode 100644 index 0000000..c383be9 --- /dev/null +++ b/web/template/page/pprof.tmpl @@ -0,0 +1,12 @@ +{{ define "pprof" }} + +{{ end }}