From 86d30c4b31c685ed3765a2dcea0889a262ec7149 Mon Sep 17 00:00:00 2001 From: acidvegas Date: Thu, 8 Jun 2023 18:52:33 -0400 Subject: [PATCH] Added worms --- worms | 1 - worms/css/bootstrap.min.css | 9 + worms/css/custom.css | 249 + worms/data/images/README.md | 1 + worms/data/images/levels/level2.png | Bin 0 -> 1008217 bytes worms/data/images/menu/xbox360controls.png | Bin 0 -> 99421 bytes worms/data/sounds/boring.wav | Bin 0 -> 22618 bytes worms/data/sounds/explosion1.wav | Bin 0 -> 11992 bytes worms/data/sounds/explosion2.wav | Bin 0 -> 43032 bytes worms/data/sounds/explosion3.wav | Bin 0 -> 10488 bytes worms/external/Box2dWeb-2.1.a.3.js | 10869 +++++++++++++++++++ worms/external/Box2dWeb-2.1.a.3.min.js | 445 + worms/external/Stats.js | 7 + worms/external/bootstrap.min.js | 6 + worms/external/jquery.1.8.2.min.js | 2 + worms/external/test/qunit.css | 242 + worms/index.html | 175 + 17 files changed, 12005 insertions(+), 1 deletion(-) delete mode 160000 worms create mode 100644 worms/css/bootstrap.min.css create mode 100644 worms/css/custom.css create mode 100644 worms/data/images/README.md create mode 100644 worms/data/images/levels/level2.png create mode 100644 worms/data/images/menu/xbox360controls.png create mode 100644 worms/data/sounds/boring.wav create mode 100644 worms/data/sounds/explosion1.wav create mode 100644 worms/data/sounds/explosion2.wav create mode 100644 worms/data/sounds/explosion3.wav create mode 100644 worms/external/Box2dWeb-2.1.a.3.js create mode 100644 worms/external/Box2dWeb-2.1.a.3.min.js create mode 100644 worms/external/Stats.js create mode 100644 worms/external/bootstrap.min.js create mode 100644 worms/external/jquery.1.8.2.min.js create mode 100644 worms/external/test/qunit.css create mode 100644 worms/index.html diff --git a/worms b/worms deleted file mode 160000 index 6b07e61..0000000 --- a/worms +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 6b07e61b9bd2e7db361d5babe8a1b9ff1d2b2a50 diff --git a/worms/css/bootstrap.min.css b/worms/css/bootstrap.min.css new file mode 100644 index 0000000..43e16d7 --- /dev/null +++ b/worms/css/bootstrap.min.css @@ -0,0 +1,9 @@ +/*! + * Bootstrap v2.2.1 + * + * Copyright 2012 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + */article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{width:auto\9;height:auto;max-width:100%;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img,.google-maps img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,html input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#333;background-color:#fff}a{color:#08c;text-decoration:none}a:hover{color:#005580;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.1);box-shadow:0 1px 3px rgba(0,0,0,0.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.127659574468085%;*margin-left:2.074468085106383%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.127659574468085%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*="span"].hide,.row-fluid [class*="span"].hide{display:none}[class*="span"].pull-right,.row-fluid [class*="span"].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;line-height:0;content:""}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;line-height:0;content:""}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:21px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:bold}em{font-style:italic}cite{font-style:normal}.muted{color:#999}.text-warning{color:#c09853}a.text-warning:hover{color:#a47e3c}.text-error{color:#b94a48}a.text-error:hover{color:#953b39}.text-info{color:#3a87ad}a.text-info:hover{color:#2d6987}.text-success{color:#468847}a.text-success:hover{color:#356635}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:bold;line-height:20px;color:inherit;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{line-height:40px}h1{font-size:38.5px}h2{font-size:31.5px}h3{font-size:24.5px}h4{font-size:17.5px}h5{font-size:14px}h6{font-size:11.9px}h1 small{font-size:24.5px}h2 small{font-size:17.5px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #eee}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:bold}dd{margin-left:10px}.dl-horizontal{*zoom:1}.dl-horizontal:before,.dl-horizontal:after{display:table;line-height:0;content:""}.dl-horizontal:after{clear:both}.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{margin-bottom:0;font-size:16px;font-weight:300;line-height:25px}blockquote small{display:block;line-height:20px;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:12px;color:#333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#333;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#999}label,input,button,select,textarea{font-size:14px;font-weight:normal;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:10px;font-size:14px;line-height:20px;color:#555;vertical-align:middle;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}input,textarea,.uneditable-input{width:206px}textarea{height:auto}textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6)}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;*margin-top:0;line-height:normal;cursor:pointer}input[type="file"],input[type="image"],input[type="submit"],input[type="reset"],input[type="button"],input[type="radio"],input[type="checkbox"]{width:auto}select,input[type="file"]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;background-color:#fff;border:1px solid #ccc}select[multiple],select[size]{height:auto}select:focus,input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#999;cursor:not-allowed;background-color:#fcfcfc;border-color:#ccc;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);box-shadow:inset 0 1px 2px rgba(0,0,0,0.025)}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#999}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.radio,.checkbox{min-height:20px;padding-left:20px}.radio input[type="radio"],.checkbox input[type="checkbox"]{float:left;margin-left:-20px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"]{float:none;margin-left:0}.input-append input[class*="span"],.input-append .uneditable-input[class*="span"],.input-prepend input[class*="span"],.input-prepend .uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"],.row-fluid .input-prepend [class*="span"],.row-fluid .input-append [class*="span"]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;line-height:0;content:""}.controls-row:after{clear:both}.controls-row [class*="span"],.row-fluid .controls-row [class*="span"]{float:left}.controls-row .checkbox[class*="span"],.controls-row .radio[class*="span"]{padding-top:5px}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#eee}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"][readonly],input[type="checkbox"][readonly]{background-color:transparent}.control-group.warning>label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#c09853}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#c09853}.control-group.warning input,.control-group.warning select,.control-group.warning textarea{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.control-group.error>label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48}.control-group.error input,.control-group.error select,.control-group.error textarea{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.control-group.success>label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847}.control-group.success input,.control-group.success select,.control-group.success textarea{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}.control-group.info>label,.control-group.info .help-block,.control-group.info .help-inline{color:#3a87ad}.control-group.info .checkbox,.control-group.info .radio,.control-group.info input,.control-group.info select,.control-group.info textarea{color:#3a87ad}.control-group.info input,.control-group.info select,.control-group.info textarea{border-color:#3a87ad;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.info input:focus,.control-group.info select:focus,.control-group.info textarea:focus{border-color:#2d6987;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3}.control-group.info .input-prepend .add-on,.control-group.info .input-append .add-on{color:#3a87ad;background-color:#d9edf7;border-color:#3a87ad}input:focus:required:invalid,textarea:focus:required:invalid,select:focus:required:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:required:invalid:focus,textarea:focus:required:invalid:focus,select:focus:required:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:#f5f5f5;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;line-height:0;content:""}.form-actions:after{clear:both}.help-block,.help-inline{color:#595959}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;padding-left:5px;vertical-align:middle;*zoom:1}.input-append,.input-prepend{margin-bottom:5px;font-size:0;white-space:nowrap}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input,.input-append .dropdown-menu,.input-prepend .dropdown-menu{font-size:14px}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;vertical-align:top;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#eee;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn{vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-append input+.btn-group .btn,.input-append select+.btn-group .btn,.input-append .uneditable-input+.btn-group .btn{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-append .add-on,.input-append .btn,.input-append .btn-group{margin-left:-1px}.input-append .add-on:last-child,.input-append .btn:last-child{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append input+.btn-group .btn,.input-prepend.input-append select+.btn-group .btn,.input-prepend.input-append .uneditable-input+.btn-group .btn{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append .btn-group:first-child{margin-left:0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;margin-bottom:0;vertical-align:middle;*zoom:1}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type="radio"],.form-search .checkbox input[type="checkbox"],.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;line-height:0;content:""}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:160px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:180px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:180px}.form-horizontal .help-block{margin-bottom:0}.form-horizontal input+.help-block,.form-horizontal select+.help-block,.form-horizontal textarea+.help-block{margin-top:10px}.form-horizontal .form-actions{padding-left:180px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}.table th{font-weight:bold}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.table-bordered th,.table-bordered td{border-left:1px solid #ddd}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child th:first-child,.table-bordered tbody:first-child tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered thead:first-child tr:first-child th:last-child,.table-bordered tbody:first-child tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-bordered thead:last-child tr:last-child th:first-child,.table-bordered tbody:last-child tr:last-child td:first-child,.table-bordered tfoot:last-child tr:last-child td:first-child{-webkit-border-radius:0 0 0 4px;-moz-border-radius:0 0 0 4px;border-radius:0 0 0 4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}.table-bordered thead:last-child tr:last-child th:last-child,.table-bordered tbody:last-child tr:last-child td:last-child,.table-bordered tfoot:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-striped tbody tr:nth-child(odd) td,.table-striped tbody tr:nth-child(odd) th{background-color:#f9f9f9}.table-hover tbody tr:hover td,.table-hover tbody tr:hover th{background-color:#f5f5f5}table td[class*="span"],table th[class*="span"],.row-fluid table td[class*="span"],.row-fluid table th[class*="span"]{display:table-cell;float:none;margin-left:0}.table td.span1,.table th.span1{float:none;width:44px;margin-left:0}.table td.span2,.table th.span2{float:none;width:124px;margin-left:0}.table td.span3,.table th.span3{float:none;width:204px;margin-left:0}.table td.span4,.table th.span4{float:none;width:284px;margin-left:0}.table td.span5,.table th.span5{float:none;width:364px;margin-left:0}.table td.span6,.table th.span6{float:none;width:444px;margin-left:0}.table td.span7,.table th.span7{float:none;width:524px;margin-left:0}.table td.span8,.table th.span8{float:none;width:604px;margin-left:0}.table td.span9,.table th.span9{float:none;width:684px;margin-left:0}.table td.span10,.table th.span10{float:none;width:764px;margin-left:0}.table td.span11,.table th.span11{float:none;width:844px;margin-left:0}.table td.span12,.table th.span12{float:none;width:924px;margin-left:0}.table tbody tr.success td{background-color:#dff0d8}.table tbody tr.error td{background-color:#f2dede}.table tbody tr.warning td{background-color:#fcf8e3}.table tbody tr.info td{background-color:#d9edf7}.table-hover tbody tr.success:hover td{background-color:#d0e9c6}.table-hover tbody tr.error:hover td{background-color:#ebcccc}.table-hover tbody tr.warning:hover td{background-color:#faf2cc}.table-hover tbody tr.info:hover td{background-color:#c4e3f3}[class^="icon-"],[class*=" icon-"]{display:inline-block;width:14px;height:14px;margin-top:1px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url("../img/glyphicons-halflings.png");background-position:14px 14px;background-repeat:no-repeat}.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*=" icon-"]{background-image:url("../img/glyphicons-halflings-white.png")}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{width:16px;background-position:-216px -120px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{background-position:-384px -120px}.icon-folder-open{width:16px;background-position:-408px -120px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.dropdown-menu li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:20px;color:#333;white-space:nowrap}.dropdown-menu li>a:hover,.dropdown-menu li>a:focus,.dropdown-submenu:hover>a{color:#fff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .active>a,.dropdown-menu .active>a:hover{color:#333;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;outline:0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .disabled>a,.dropdown-menu .disabled>a:hover{color:#999}.dropdown-menu .disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent;background-image:none}.open{*z-index:1000}.open>.dropdown-menu{display:block}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropup .dropdown-submenu>.dropdown-menu{top:auto;bottom:0;margin-top:0;margin-bottom:-2px;-webkit-border-radius:5px 5px 5px 0;-moz-border-radius:5px 5px 5px 0;border-radius:5px 5px 5px 0}.dropdown-submenu>a:after{display:block;float:right;width:0;height:0;margin-top:5px;margin-right:-10px;border-color:transparent;border-left-color:#ccc;border-style:solid;border-width:5px 0 5px 5px;content:" "}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.dropdown .dropdown-menu .nav-header{padding-right:20px;padding-left:20px}.typeahead{margin-top:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-large{padding:24px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.well-small{padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;padding:4px 12px;margin-bottom:0;*margin-left:.3em;font-size:14px;line-height:20px;*line-height:20px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-repeat:repeat-x;border:1px solid #bbb;*border:0;border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);border-bottom-color:#a2a2a2;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn:hover,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}.btn:active,.btn.active{background-color:#ccc \9}.btn:first-child{*margin-left:0}.btn:hover{color:#333;text-decoration:none;background-color:#e6e6e6;*background-color:#d9d9d9;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-color:#e6e6e6;background-color:#d9d9d9 \9;background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn.disabled,.btn[disabled]{cursor:default;background-color:#e6e6e6;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:11px 19px;font-size:17.5px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.btn-large [class^="icon-"],.btn-large [class*=" icon-"]{margin-top:2px}.btn-small{padding:2px 10px;font-size:11.9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.btn-small [class^="icon-"],.btn-small [class*=" icon-"]{margin-top:0}.btn-mini{padding:1px 6px;font-size:10.5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,0.75)}.btn{border-color:#c5c5c5;border-color:rgba(0,0,0,0.15) rgba(0,0,0,0.15) rgba(0,0,0,0.25)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#006dcc;*background-color:#04c;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-repeat:repeat-x;border-color:#04c #04c #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.btn-primary:active,.btn-primary.active{background-color:#039 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#faa732;*background-color:#f89406;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 #ad6704;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#f89406;*background-color:#df8505}.btn-warning:active,.btn-warning.active{background-color:#c67605 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-moz-linear-gradient(top,#ee5f5b,#bd362f);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#bd362f));background-image:-webkit-linear-gradient(top,#ee5f5b,#bd362f);background-image:-o-linear-gradient(top,#ee5f5b,#bd362f);background-image:linear-gradient(to bottom,#ee5f5b,#bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffbd362f',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#bd362f;*background-color:#a9302a}.btn-danger:active,.btn-danger.active{background-color:#942a25 \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#5bb75b;*background-color:#51a351;background-image:-moz-linear-gradient(top,#62c462,#51a351);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#51a351));background-image:-webkit-linear-gradient(top,#62c462,#51a351);background-image:-o-linear-gradient(top,#62c462,#51a351);background-image:linear-gradient(to bottom,#62c462,#51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 #387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff51a351',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#51a351;*background-color:#499249}.btn-success:active,.btn-success.active{background-color:#408140 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#49afcd;*background-color:#2f96b4;background-image:-moz-linear-gradient(top,#5bc0de,#2f96b4);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#2f96b4));background-image:-webkit-linear-gradient(top,#5bc0de,#2f96b4);background-image:-o-linear-gradient(top,#5bc0de,#2f96b4);background-image:linear-gradient(to bottom,#5bc0de,#2f96b4);background-repeat:repeat-x;border-color:#2f96b4 #2f96b4 #1f6377;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff2f96b4',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#2f96b4;*background-color:#2a85a0}.btn-info:active,.btn-info.active{background-color:#24748c \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#363636;*background-color:#222;background-image:-moz-linear-gradient(top,#444,#222);background-image:-webkit-gradient(linear,0 0,0 100%,from(#444),to(#222));background-image:-webkit-linear-gradient(top,#444,#222);background-image:-o-linear-gradient(top,#444,#222);background-image:linear-gradient(to bottom,#444,#222);background-repeat:repeat-x;border-color:#222 #222 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444',endColorstr='#ff222222',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#222;*background-color:#151515}.btn-inverse:active,.btn-inverse.active{background-color:#080808 \9}button.btn,input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active,.btn-link[disabled]{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{color:#08c;cursor:pointer;border-color:transparent;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover{color:#005580;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover{color:#333;text-decoration:none}.btn-group{position:relative;display:inline-block;*display:inline;*margin-left:.3em;font-size:0;white-space:nowrap;vertical-align:middle;*zoom:1}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{margin-top:10px;margin-bottom:10px;font-size:0}.btn-toolbar .btn+.btn,.btn-toolbar .btn-group+.btn,.btn-toolbar .btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu{font-size:14px}.btn-group>.btn-mini{font-size:11px}.btn-group>.btn-small{font-size:12px}.btn-group>.btn-large{font-size:16px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{*padding-top:5px;padding-right:8px;*padding-bottom:5px;padding-left:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn-group>.btn-mini+.dropdown-toggle{*padding-top:2px;padding-right:5px;*padding-bottom:2px;padding-left:5px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{*padding-top:7px;padding-right:12px;*padding-bottom:7px;padding-left:12px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn-group.open .btn.dropdown-toggle{background-color:#e6e6e6}.btn-group.open .btn-primary.dropdown-toggle{background-color:#04c}.btn-group.open .btn-warning.dropdown-toggle{background-color:#f89406}.btn-group.open .btn-danger.dropdown-toggle{background-color:#bd362f}.btn-group.open .btn-success.dropdown-toggle{background-color:#51a351}.btn-group.open .btn-info.dropdown-toggle{background-color:#2f96b4}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#222}.btn .caret{margin-top:8px;margin-left:0}.btn-mini .caret,.btn-small .caret,.btn-large .caret{margin-top:6px}.btn-large .caret{border-top-width:5px;border-right-width:5px;border-left-width:5px}.dropup .btn-large .caret{border-bottom-width:5px}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical .btn{display:block;float:none;width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical .btn+.btn{margin-top:-1px;margin-left:0}.btn-group-vertical .btn:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical .btn:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.btn-group-vertical .btn-large:first-child{-webkit-border-radius:6px 6px 0 0;-moz-border-radius:6px 6px 0 0;border-radius:6px 6px 0 0}.btn-group-vertical .btn-large:last-child{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-danger,.alert-error{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-bottom:20px;margin-left:0;list-style:none}.nav>li>a{display:block}.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,0.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-right:15px;padding-left:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-right:-15px;margin-left:-15px;text-shadow:0 1px 0 rgba(255,255,255,0.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.2);background-color:#08c}.nav-list [class^="icon-"],.nav-list [class*=" icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;line-height:0;content:""}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover{color:#fff;background-color:#08c}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.nav-tabs.nav-stacked>li>a:hover{z-index:2;border-color:#ddd}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{margin-top:6px;border-top-color:#08c;border-bottom-color:#08c}.nav .dropdown-toggle:hover .caret{border-top-color:#005580;border-bottom-color:#005580}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.nav>.dropdown.active>a:hover{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover{color:#fff;background-color:#999;border-color:#999}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover{border-color:#999}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;line-height:0;content:""}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover{border-top-color:#ddd;border-bottom-color:transparent}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover{border-color:transparent #ddd #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover{border-color:#eee #ddd #eee #eee}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover{border-color:#eee #eee #eee #ddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#999}.nav>.disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}.navbar{*position:relative;*z-index:2;margin-bottom:20px;overflow:visible;color:#777}.navbar-inner{min-height:40px;padding-right:20px;padding-left:20px;background-color:#fafafa;background-image:-moz-linear-gradient(top,#fff,#f2f2f2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#f2f2f2));background-image:-webkit-linear-gradient(top,#fff,#f2f2f2);background-image:-o-linear-gradient(top,#fff,#f2f2f2);background-image:linear-gradient(to bottom,#fff,#f2f2f2);background-repeat:repeat-x;border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff2f2f2',GradientType=0);*zoom:1;-webkit-box-shadow:0 1px 4px rgba(0,0,0,0.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,0.065);box-shadow:0 1px 4px rgba(0,0,0,0.065)}.navbar-inner:before,.navbar-inner:after{display:table;line-height:0;content:""}.navbar-inner:after{clear:both}.navbar .container{width:auto}.nav-collapse.collapse{height:auto;overflow:visible}.navbar .brand{display:block;float:left;padding:10px 20px 10px;margin-left:-20px;font-size:20px;font-weight:200;color:#777;text-shadow:0 1px 0 #fff}.navbar .brand:hover{text-decoration:none}.navbar-text{margin-bottom:0;line-height:40px}.navbar-link{color:#777}.navbar-link:hover{color:#333}.navbar .divider-vertical{height:40px;margin:0 9px;border-right:1px solid #fff;border-left:1px solid #f2f2f2}.navbar .btn,.navbar .btn-group{margin-top:5px}.navbar .btn-group .btn,.navbar .input-prepend .btn,.navbar .input-append .btn{margin-top:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;line-height:0;content:""}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:5px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type="image"],.navbar-form input[type="checkbox"],.navbar-form input[type="radio"]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:6px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:5px;margin-bottom:0}.navbar-search .search-query{padding:4px 14px;margin-bottom:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{border-width:0 0 1px}.navbar-fixed-bottom .navbar-inner{border-width:1px 0 0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-right:0;padding-left:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:0 1px 10px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 10px rgba(0,0,0,0.1);box-shadow:0 1px 10px rgba(0,0,0,0.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:0 -1px 10px rgba(0,0,0,0.1);-moz-box-shadow:0 -1px 10px rgba(0,0,0,0.1);box-shadow:0 -1px 10px rgba(0,0,0,0.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right;margin-right:0}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:10px 15px 10px;color:#777;text-decoration:none;text-shadow:0 1px 0 #fff}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{color:#333;text-decoration:none;background-color:transparent}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#555;text-decoration:none;background-color:#e5e5e5;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);box-shadow:inset 0 3px 8px rgba(0,0,0,0.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-right:5px;margin-left:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#ededed;*background-color:#e5e5e5;background-image:-moz-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f2f2f2),to(#e5e5e5));background-image:-webkit-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-o-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:linear-gradient(to bottom,#f2f2f2,#e5e5e5);background-repeat:repeat-x;border-color:#e5e5e5 #e5e5e5 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2f2f2',endColorstr='#ffe5e5e5',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#e5e5e5;*background-color:#d9d9d9}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#ccc \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,0.25);box-shadow:0 1px 0 rgba(0,0,0,0.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{position:absolute;top:-7px;left:9px;display:inline-block;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-left:7px solid transparent;border-bottom-color:rgba(0,0,0,0.2);content:''}.navbar .nav>li>.dropdown-menu:after{position:absolute;top:-6px;left:10px;display:inline-block;border-right:6px solid transparent;border-bottom:6px solid #fff;border-left:6px solid transparent;content:''}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{top:auto;bottom:-7px;border-top:7px solid #ccc;border-bottom:0;border-top-color:rgba(0,0,0,0.2)}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{top:auto;bottom:-6px;border-top:6px solid #fff;border-bottom:0}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{color:#555;background-color:#e5e5e5}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#777;border-bottom-color:#777}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{right:12px;left:auto}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{right:13px;left:auto}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{right:100%;left:auto;margin-right:-1px;margin-left:0;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse{color:#999}.navbar-inverse .navbar-inner{background-color:#1b1b1b;background-image:-moz-linear-gradient(top,#222,#111);background-image:-webkit-gradient(linear,0 0,0 100%,from(#222),to(#111));background-image:-webkit-linear-gradient(top,#222,#111);background-image:-o-linear-gradient(top,#222,#111);background-image:linear-gradient(to bottom,#222,#111);background-repeat:repeat-x;border-color:#252525;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222',endColorstr='#ff111111',GradientType=0)}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#999;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover{color:#fff}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#111}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .divider-vertical{border-right-color:#222;border-left-color:#111}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{color:#fff;background-color:#111}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#515151;border-color:#111;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#333;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;outline:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,0.15);-moz-box-shadow:0 0 3px rgba(0,0,0,0.15);box-shadow:0 0 3px rgba(0,0,0,0.15)}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e0e0e;*background-color:#040404;background-image:-moz-linear-gradient(top,#151515,#040404);background-image:-webkit-gradient(linear,0 0,0 100%,from(#151515),to(#040404));background-image:-webkit-linear-gradient(top,#151515,#040404);background-image:-o-linear-gradient(top,#151515,#040404);background-image:linear-gradient(to bottom,#151515,#040404);background-repeat:repeat-x;border-color:#040404 #040404 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff151515',endColorstr='#ff040404',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#040404;*background-color:#000}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#000 \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.breadcrumb li{display:inline-block;*display:inline;text-shadow:0 1px 0 #fff;*zoom:1}.breadcrumb .divider{padding:0 5px;color:#ccc}.breadcrumb .active{color:#999}.pagination{margin:20px 0}.pagination ul{display:inline-block;*display:inline;margin-bottom:0;margin-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;*zoom:1;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.pagination ul>li{display:inline}.pagination ul>li>a,.pagination ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;background-color:#fff;border:1px solid #ddd;border-left-width:0}.pagination ul>li>a:hover,.pagination ul>.active>a,.pagination ul>.active>span{background-color:#f5f5f5}.pagination ul>.active>a,.pagination ul>.active>span{color:#999;cursor:default}.pagination ul>.disabled>span,.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover{color:#999;cursor:default;background-color:transparent}.pagination ul>li:first-child>a,.pagination ul>li:first-child>span{border-left-width:1px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.pagination ul>li:last-child>a,.pagination ul>li:last-child>span{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pagination-large ul>li>a,.pagination-large ul>li>span{padding:11px 19px;font-size:17.5px}.pagination-large ul>li:first-child>a,.pagination-large ul>li:first-child>span{-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.pagination-large ul>li:last-child>a,.pagination-large ul>li:last-child>span{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.pagination-mini ul>li:first-child>a,.pagination-small ul>li:first-child>a,.pagination-mini ul>li:first-child>span,.pagination-small ul>li:first-child>span{-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-bottomleft:3px;-moz-border-radius-topleft:3px}.pagination-mini ul>li:last-child>a,.pagination-small ul>li:last-child>a,.pagination-mini ul>li:last-child>span,.pagination-small ul>li:last-child>span{-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;-moz-border-radius-topright:3px;-moz-border-radius-bottomright:3px}.pagination-small ul>li>a,.pagination-small ul>li>span{padding:2px 10px;font-size:11.9px}.pagination-mini ul>li>a,.pagination-mini ul>li>span{padding:1px 6px;font-size:10.5px}.pager{margin:20px 0;text-align:center;list-style:none;*zoom:1}.pager:before,.pager:after{display:table;line-height:0;content:""}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager li>a:hover{text-decoration:none;background-color:#f5f5f5}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>span{color:#999;cursor:default;background-color:#fff}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:fixed;top:50%;left:50%;z-index:1050;width:560px;margin:-250px 0 0 -280px;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.3);*border:1px solid #999;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;outline:0;-webkit-box-shadow:0 3px 7px rgba(0,0,0,0.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,0.3);box-shadow:0 3px 7px rgba(0,0,0,0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box}.modal.fade{top:-25%;-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out}.modal.fade.in{top:50%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{max-height:400px;padding:15px;overflow-y:auto}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;*zoom:1;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.modal-footer:before,.modal-footer:after{display:table;line-height:0;content:""}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.tooltip{position:absolute;z-index:1030;display:block;padding:5px;font-size:11px;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.tooltip.top{margin-top:-3px}.tooltip.right{margin-left:3px}.tooltip.bottom{margin-top:3px}.tooltip.left{margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;width:236px;padding:1px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover-content p,.popover-content ul,.popover-content ol{margin-bottom:0}.popover .arrow,.popover .arrow:after{position:absolute;display:inline-block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow:after{z-index:-1;content:""}.popover.top .arrow{bottom:-10px;left:50%;margin-left:-10px;border-top-color:#fff;border-width:10px 10px 0}.popover.top .arrow:after{bottom:-1px;left:-11px;border-top-color:rgba(0,0,0,0.25);border-width:11px 11px 0}.popover.right .arrow{top:50%;left:-10px;margin-top:-10px;border-right-color:#fff;border-width:10px 10px 10px 0}.popover.right .arrow:after{bottom:-11px;left:-1px;border-right-color:rgba(0,0,0,0.25);border-width:11px 11px 11px 0}.popover.bottom .arrow{top:-10px;left:50%;margin-left:-10px;border-bottom-color:#fff;border-width:0 10px 10px}.popover.bottom .arrow:after{top:-1px;left:-11px;border-bottom-color:rgba(0,0,0,0.25);border-width:0 11px 11px}.popover.left .arrow{top:50%;right:-10px;margin-top:-10px;border-left-color:#fff;border-width:10px 0 10px 10px}.popover.left .arrow:after{right:-1px;bottom:-11px;border-left-color:rgba(0,0,0,0.25);border-width:11px 0 11px 11px}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;line-height:0;content:""}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.055);box-shadow:0 1px 3px rgba(0,0,0,0.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover{border-color:#08c;-webkit-box-shadow:0 1px 4px rgba(0,105,214,0.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,0.25);box-shadow:0 1px 4px rgba(0,105,214,0.25)}.thumbnail>img{display:block;max-width:100%;margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#555}.media,.media-body{overflow:hidden;*overflow:visible;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media .pull-left{margin-right:10px}.media .pull-right{margin-left:10px}.media-list{margin-left:0;list-style:none}.label,.badge{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999}.label{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding-right:9px;padding-left:9px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}a.label:hover,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f89406}.label-warning[href],.badge-warning[href]{background-color:#c67605}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#3a87ad}.label-info[href],.badge-info[href]{background-color:#2d6987}.label-inverse,.badge-inverse{background-color:#333}.label-inverse[href],.badge-inverse[href]{background-color:#1a1a1a}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress .bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffc43c35',GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff57a957',GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff339bb9',GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#fbb450;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel .item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel .item>img{display:block;line-height:1}.carousel .active,.carousel .next,.carousel .prev{display:block}.carousel .active{left:0}.carousel .next,.carousel .prev{position:absolute;top:0;width:100%}.carousel .next{left:100%}.carousel .prev{left:-100%}.carousel .next.left,.carousel .prev.right{left:0}.carousel .active.left{left:-100%}.carousel .active.right{left:100%}.carousel-control{position:absolute;top:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#222;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{right:15px;left:auto}.carousel-control:hover{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-caption{position:absolute;right:0;bottom:0;left:0;padding:15px;background:#333;background:rgba(0,0,0,0.75)}.carousel-caption h4,.carousel-caption p{line-height:20px;color:#fff}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;font-size:18px;font-weight:200;line-height:30px;color:inherit;background-color:#eee;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;letter-spacing:-1px;color:inherit}.hero-unit li{line-height:30px}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed} diff --git a/worms/css/custom.css b/worms/css/custom.css new file mode 100644 index 0000000..db37785 --- /dev/null +++ b/worms/css/custom.css @@ -0,0 +1,249 @@ +body, html { + overflow: hidden; + margin: 0; + padding: 0; + background: #fff; + -moz-user-select: none; + -khtml-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + user-select: none; +} + +#action { + background: #242a4a; /* Old browsers */ + background: -moz-linear-gradient(top, #242a4a 0%, #201610 100%); /* FF3.6+ */ + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#242a4a), color-stop(100%,#201610)); /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, #242a4a 0%,#201610 100%); /* Chrome10+,Safari5.1+ */ + background: -o-linear-gradient(top, #242a4a 0%,#201610 100%); /* Opera 11.10+ */ + background: -ms-linear-gradient(top, #242a4a 0%,#201610 100%); /* IE10+ */ + background: linear-gradient(to bottom, #242a4a 0%,#201610 100%); /* W3C */ + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#242a4a', endColorstr='#201610',GradientType=0 ); /* IE6-9 */ +} + + +#startMenu { + position: absolute; + left: 50%; + top: 50%; + margin-left: -360px; + margin-top: -280px; + width: 600px; + height: 490px; + z-index: 1; +} + + +.btn-large { + margin-left: 10px; + margin-right: 10px; +} + +.thumbnail { + padding: 5px; +} + +#weaponsMenu .thumbnail { + padding: 17px; +} + + + +.thumbnails { + margin-left: auto; + list-style: none; +} + +#weaponsMenu { + position: absolute; + left: 100%; + top: 100%; + width: 275px; + height: 350px; + margin-top: -350px; + z-index: 9999999; + background: black; + border: 1px white solid; + padding: 10px; + padding-left: 2px; + padding-right: 2px; + border-radius: 3px; + cursor: default; +} + +#weaponsMenuBtn { + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + -o-transform: rotate(90deg); + transform: rotate(90deg); + cursor: pointer; + position: absolute; + left: -42.5%; + top: 20%; + padding: 20px; + font-style: bold; + background: black; + color: white; + border: white 1px solid; + border-radius: 3px; + z-index: 1; + font-size: 20px; + border-top: none; +} + + #weaponsMenuBtn:hover { + color: #08c; + } + +#weaponsMenu .thumbnail:active { + -ms-transform: scale(0.9,0.9); /* IE 9 */ + -webkit-transform: scale(0.9,0.9); /* Safari and Chrome */ + -o-transform: scale(0.9,0.9); /* Opera */ + -moz-transform: scale(0.9,0.9); + transform: scale(0.9,0.9); /* Firefox */ + cursor: pointer; +} + +#weaponsMenu .noAmmo { + -moz-opacity: 0.4; + opacity: 0.4; +} + +a.noAmmo:hover { + border-color: none; + cursor: pointer; +} + + +.span1 { + width: auto; +} + +a.thumbnail.ammo { + background: black; + cursor: pointer; +} + +.ammoCount { + position: absolute; + font-size: 11.5px; + margin-left: 26px; + margin-top: -7px; + font-weight: bold; + color: white; +} + +#turnTimeCounter { + background: black; + border: white 1px solid; + width: 70px; + height: 70px; + position: absolute; + top: 100%; + margin-top: -78px; + margin-left: 10px; + color: white; + font-size: 40px; + display: -webkit-box; + box-align: center; + -webkit-box-orient: horizontal; + -webkit-box-pack: center; + -moz-box-align: center; + -webkit-box-align: center; + border-radius: 3px; + z-index: 1; +} + +kbd { + white-space: nowrap; + color: black; + background: #EEE; + border-style: solid; + border-color: #CCC #AAA #888 #BBB; + padding: 2px 4px; + border-width: 1px 3px 3px 1px; +} + +.healthMenu { + position: absolute; + left: 50%; + bottom: 1%; + width: 150px; + z-index: 1; + margin-left: -200px; +} + + .healthMenu li { + list-style: none; + padding: 5px; + } + + .healthMenu li span { + margin-left: 10px; + margin-right: 10px; + background: black; + color: white; + font-size: 14px; + padding: 5px; + border-radius: 3px; + border: 1px white solid; + } + + + + .healthMenu span.health { + position: absolute; + height: 15px; + } + + +.modal-body h1 { + font-size: 18.5px; + line-height: normal; +} + + +.touchButton { + position: absolute; + left: 100%; + top: 100%; + width: 80px; + height: 50px; + margin-top: -78px; + margin-left: -100px; + z-index: 1; + background: black; + border: 1px white solid; + padding: 10px; + padding-left: 2px; + padding-right: 2px; + border-radius: 3px; + cursor: default; + color: white; + font-size: 30px; + display: -webkit-box; + -webkit-box-orient: horizontal; + -webkit-box-pack: center; + -webkit-box-align: center; +} + +#touchJump { + margin-left: -200px; +} + +#touchFire { + margin-left: -100px; +} + +#notifaction { + text-align: center; + z-index: 99; + position: absolute; + top: -50px; + left: 50%; + margin-left: -250px; + width: 500px; + font-size: 17px; + border-color: black; +} diff --git a/worms/data/images/README.md b/worms/data/images/README.md new file mode 100644 index 0000000..da888b9 --- /dev/null +++ b/worms/data/images/README.md @@ -0,0 +1 @@ +Game Assets are not in the git repo due to the fact I don't own the copyright to them. \ No newline at end of file diff --git a/worms/data/images/levels/level2.png b/worms/data/images/levels/level2.png new file mode 100644 index 0000000000000000000000000000000000000000..ac8b851f678f49c85aa5ce96cbf323e807ab40e4 GIT binary patch literal 1008217 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%0D^aSF_DB|$218kFPXFc;aY9o*YAKp)Vc@6tF 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

3{p^S_(SiOAe3eHm@2LlkYNzhcaF4Y8v2P) zzt^c=S3tO?5H)s?nHb}Jauy5j$E0pgEH?=i#LKPRP{`+~M;36Q2qj7cUsPt@xBuA!+gqk%d=x+tbWZeF|iA*;MD?56UdC{aC z07R|{Yf{?RhGclL8 zKBX{_|83{X=al_s)P^?HQKsv%7{-YZjsIlHi2RoZcfqrc?ZCB5vlmB#MPVY@nv0C= z?nBwU#fhT7te1JGMgg#LsgU20r&B#P=Kp$+^P6H(lfZejHtuY@ZU+|piVw>-ZO*E1 zN@n9SS>;7%7sLs*%0-yb{x$1L{2dQpf$^pB-J-=7b=^K)<)X^=+Yg`k1>8=#xOHy9 zGG_#y^OP{|Y|uA}WF4j%ehvEQ^#%(&%3^~%{dc%O>xMy#=D!gCu}Nj?Fay$&x)&Su z^hGqS;&kFx*2wb+H4ng4^mgr;M?L!Fh35J2a9c{cL9+zqZAv*3jDa2u4ft z^!u!jOKv4eEMloqB~m3Euy#O{(4jzBs0}_|p%_)ZPkegvxn)5Zapk8O8;U{bFC6XD z0Wa*k6DFNN^8E@-t+M9@KLFvqTI*xtrmUNiH+9I3Xzpz%nfwP-UkPNf7s}*ADKD4_% z&{uuNfqLGd;J4PnVC~0y*Q*-Ky#b8Z7{e>hDTUb;=9D4KlSf?ea|3w+|jbZQm%8lapm#S(HJ}uk7l;3bQGgue+ox9yudso73Q*=&B z+mHzdN6k56M@W9w614dud2lB#fUoWj+6txyM^TGN*U#S|O`Goq6^NdEoS-MgXF7`DVlK z%ERlC_I2&yjk4VpBb!*rJD$5R1BK(m7^3SKWmr$tgo5K_lQxJwp2Pas38DAjs{PHJ z6spro|F>%F?CvR9cn6DaJ}D|LEwI<|@a^l_Bh;-dW2^@BGFaX>V!Xu=lq)%ei_cD< zn{!F7VhQ^7U^d5=ImpwW(zBzAgWRRc$B?O-K1-rvpf3$BP+n3YLa7RVr8Li-$640?%% zxI0+kGMc6id@!RdQAKb>_lM8@dp*^gzj_S(LD9NUTb^QzEIvz(j z&xLXVCOHLkU2~s}`@Kt60b#)Q3o`E4%BCOdC03=ac2~^v_N|6`+dey!KDSG=DWf`X zA@b1RtzT1$lb?^Nd-#o(WB>85jh!D8x#%yp)CNchf7j!r9&QGuImFsx>EsdceO(nj z$sCuV-bhXBA9P+38$n%8ka1%aE;TU3gla^7Je)nN z*w%PeMZayvh5?(l`Tf=(377pUqd;tNVe1Bki0#vC<{=3XON5@{Xv*+R~c-i;6?&3%p*RqJ9BxzRR+dtTz z>!yQw0Rhj6l{ih^y6u21sUdUa7^7cEanYJf(~MV(&DGytwp(x%szvw-KUYW6ReL>c z_dTj)i80-+vLYEi{`zx{YLnc(C`((iYkGOlIWF`B`P%8&@A!RBsCEVUW{~N}7kFut zBcn=4O!xF&?^tHqy(^szX6*W@-uIcE3XM)i(x))P-CF(&qw9U5zdkvqW?P26x#eLn z$F{5W9^utLp?sMn1odz8UFnEQrj5wMJuidSP+d#_?+dbqPT+24Fb!ItjPGuL+h6>$ z>O#`oVSBf*-d?Te{`Bkc5*Q;#C9CtJbvCfm@=hv6b0l=<$Wh;nGU`lxgKIzw#R~nD{$?J%Ib_b zolt@8Qd_$UK%==YT)gL3H7md=I+ge!@|d~o1&~!^u3CZE8osFS?J{h(<2r00woVVkD?dJ~*46FN6#4V-R(#%W z!aDE8y7xhln$-_K-~JHj5bq$mm5k)5BwECab&eisZhP`yb~|#H+#%&rA~(zrR%=?q zmj0AvJU%N07(A{~DHP}yW$4g}9GqJ)CnIbe^xBX~-1#rXD!X;WH{y13vF^ z3;WfoM9a>-SLwMo{gWgv|Bdx0OA-mH!~n7|o19O^ic>SrR~&ENd9Y*<)5;@UqZul8 zzT8yqPYb5AIV^uBZ;GJ|o?Ae>e`V`d!#t;pKhf>(HjgW<3dWDBmy{wfhkA_m`n#LO z$Dz8plRG5ni|B2R$lHC)eLKBSXGw{b4SU=n;B}%904@j&ZjR&3RnbD9XONHzN50K? zoa}v~1{0%ANqC2EB9l383`inn?dIoPqS7FZ#N^~UEnjDcAX%%t0Wke z#&~-Nb71H5L(b*}{bgMhM2xU72EoWJ3riX6VxfI)p)V%Tf$>3E(0Lz^lSh#A`*jggC%{Hf7Ws)6)&wHq0Z5m10>$TRff)lf^($2 zhid~Cn3yz+W@$kIerOIAG(@@@=5x)l+)WOQiv5H?zAr)?HYhkD@Y9?s3VF=dN?ojS z_s7>0q?mI49;uXzQ;&)rS%*l+K_c1Pc()`t$FJA%6>eRUw{F42S?QPpdK@m6x*G^~ z4$y-%)VcA6MU%!$w_3{ZJuMI~R?lhRbx%+Y&-?6#alIF*qm0$f`f-}uT1@(70s--= zu-IJgu;2FgZELZAma?>0$lI-6IcwwaB@a!a5CYOxLC7P0d)ljw&^^}-atS_JdmEll zQDqqe``PeiXwyFTVA2mpKQQdh`E73?iKL~UgGjJb_GQpqT@z%*Q5HAfG5LWuQ0CkB zx1q03V-)Z_9ggz}X$H#~>GZXqbHx_v(6@%J7m;zjj)ur%CK+Sr)J$)=GR3+EGf;{0 zs)FnKi;I}W5VljOq#0c&)8pbxKSwAM&c$i~oU2(R%kd8Ik9mWb!|W?W$SI3Ys0VCD z8|GX%HsDOVX15ltM4L^DGi|q8p&D9p+vo$BK z|D^s;Vx%9W_RKJmSMq)1JJA2uoJ*Pw@UFP1;*GthT`AQ|;g3tbxye{lKF$UbOd>{OqQdWeLUjNbS<4MbIyn`Kc|yktRwrD6>8j()Ge*9G^Ol*tT*PPXPYI$_Nsx?QmozK zKeE5Mb@bo}weEe`>t44Y5E&r5w^)jV%D`w#SA5&shK@e^Z3uN}P^--ozJGm|6K?4J z<$ZtjsvrQN_cchUw0qHa=QoKX4V!_;%@xP%zhZc6*L~UdGc`y&ue%{c_t!&d$x6=5 z@|YUhKobOE@pN{hx123WG^S?wDYX)#7Cr{~tOC+7c)J9kKqyo;;>{iA1gGj;fxy1t z&JAiBk>{Am>R91UCz@x=-#9;e@0Sc`e`Tn;l@vExLx%cg?|ULAQ2#gYS;5Y>mp-fr zkAz0kE}UQE#98i5zH1O>TNeG%5Gpn`nFPQ_SDT;kM;kOf6o2|6vI6 zwG_@z2_ed5%H^UY_fHo9vGnxBhS7_~loy z@v`pI#A`7B5d8^yf1-MP*a<1nzv3OFA&HoiG-|~ehiJbMIi|_S%qZMCm{WS`IA+oL zx~~nCdQhAwD`?B3x!8~>Ay`o8;t1VV1GsAZAvnE5vSg~h*{}Cj$T$2dUjuL8{lalY zYd+UzPld%B)ZuNPG#T2;mmb$*T2oOjxn5OZbxBo3E@6j7eRH#$bPd|F5H$%~b<|wi%q-C6c|1uXs;cHDCwhwg*<&lW*&tq4OWZK+ zI{U+0>L{E`iKH`SGb zPH>X%!chdUS-2utr&P3aqnjb2Q#s7|at{gJ2hS<2aI8f64NlpyV4tuTOL?(G<8NUa z^6+L3qY#!&8mc}5nO)YGZtNspw8$7?Gb|8Jj#;Ui?*IHbARxSpk}F%sPW1iPpY?le zitXqqSEXoGE2_nPrV5M>X<`tHPAB*Mp84jwab8B9zcZ|XLAca?v5?D`X2&6#*F3x3 zOM)-~RoLIL$}Bp=-EBc{twQ&w{+Bxm-fo78P_=`SxW2VfM7rTC8cA7vHjJj{`$!*8 zz5aP?S@`$U7l-?s0@B$@zY)8uM|VE1zDW|K@4S~E&xa0p=7$Qsbq1}~Sk|o$Tm4yI z0dFep80;D7gUN06d0Ha7x)4m&H?P%CtMuQ;rS`TWjCW#pmORk-+IMXCdp)}$z1b(> zj4Wp1kh`X!>yv`#2x5nfBn65r{gE^}ojhRUnIoQeJ#chZvR#f~pD069Y-1O9{XLNh z?a>;1WHEa$txq4O;Uw*n`z{b4hoG-CXZsCbVFIoVK0K-NPu#4DXMjFby_*>3RZT30 zu0G8W#w8oUoez(1GH1JeY)76G=51v9PZhc;4v-D8=Pyuxa#eQ9`lK;?^w_zx0^*~qZNyxJgq_Bm1c9!v zqcaS*2bwrM&c-z#=t*-tAnn#18%s)jh8o{-7)EFyLX97;LJ1T#Q;?Q!y^-s#6+3de z{SS1*el!nu7GH@kTv#c3MM3IjgEGdw%{K-$3#KTc@oYx2wGnbl_2%;i-ay%v)#S2u~hm)`mzSgJh9!uLp- z$PNW(T0J`j*mA6OnmzRX0=s4ce!V_)S-V5x=)BtW_OhOtM9cV8xc}jJ$)tVjWn%m& zj(LZbT_IV!X<5xJj)|BOvtR*M!>n39lNtU=uJ_o4Q5$u=5)6HqdNc7^KqDWMrcMlr z1cR&%R5JhIci&a#b90+7UnVT~M9E++(&LzJXPbd^a!RU35+%^3)4Pqoc(6}47t7Of z;iEje^l^3tG}gsMQbc3eqy?W{P3yQWO{i44{c!%*Aagb3Pha?;%YGvn`D*vTHY!?G zGI8AZA72xb7AY*152;ZsXm&18OW4L>#Hl(GBQFQu@#9Mgrn*pSr!mAp#P!tvE_HEW z9PJKYS;lHccpIk}zx%S}W;yq8KH#@!{I8q+ zPo!}@Y#xd=_9~+-z5sgy-t_yM@253>5cneW!5r}7T5uHX*&Cx#Hu?C7u=9FxEAVi( z@TypFlb0{`(7%Y+|YwNaq%_iX&N z(o20PO@quF=j@!EYzcDG74}XF@S99F_6DfPMixqG=TdorjnC~vCc7d33iKzYo(ZHN z#JA`k?Yz{SQb4$+C!t^t0rDa*TjcNAsGjhw&IO@uBL+UHKK9#Q9iq3@!HpgpRSYLB zq0&6JKQGxS-ypN91VaO?%K9T1z1ojF5{eToplCG3FbGzG>~{ycP$dKjBn4|HK<{Wf zV!?+$vwe?vkhKRi!g`eIr+0hj%y7?srCsmm5RMzlGvp^siNX1RLhRYnOWtoMjol~ z@l#iycOV{jYx#Vk`k{rHqxDv#5g zlbCb?tS*FrtFZK6k$5gj3B9XO_jX5H$js(Fd>?!S*+jgVxN*ivd@p;PwYn#>>`UKS z?<+NMFik5$5$#cMP5#~N@i@9w%iceME-!+3{UCPa04Tl&!hpYDy-rZkR34Hco$?A2 zUWq`}n;x@)=_$6iryP>THHqf&o?AU)0e|Z^yk58U7wOS!jA(&(N7b4oMH)3uH?M5W zJ#4cTu2nqXay2O0jdT+gG zuIND)Z@#n1wC0m-qFRU%Ay$JMK!yn+nNFjSdfbYwGKASn(3q ztZ~6nWfWdIHrE7q%C|Y_(H;39@Npx(OnEkwb7_Qzi)twF=a~|{Z0S7Y!H;>m{o-W6 zi$z`_?uh1CFLSl$4>ryG%>RIkgJ9@yGbCw~^moOVoC>;NFvkS#O@Jf|ri3vo{)c_6 zJ8NXm@27^JhK_e%fqrvtvymr?#FAUx3uw{#;7Nd~Xwi~YYCoHHI2}3&{ytS{JEq1;)CoCO{Bj>CHL$l3;jrWRfFDff=dM%dj&kuO5sz8P)%xZ*vJyISu5hM|8 z-&G{{%0->z-@|yrdGOTj4}Un&i1Uub&@M7S3Jh1>ASOR!@9r0DJUA0hClBm2onI#5 zZ)~pNXEMkZl3b7#BB<)vT6N1$PtBQW`qI%}^g^pdri>vq?Ojf!KLNY7^lH&^MuT*1 zv4ASGRsP1n%3;!3FKjw&A@3QWci&UR$}7z6>o=YNM4T1DjXLG9aXtpK&%@&?_@(R6 zsdLm^=Y{tw+p*PTHx0RN8PU>{kiC2vDeeIxAFt-7Viav0{$gjaU;p5r%Ep7wmcVi@ zreq~6_?%?+^&dGfU&q9}MhwfE&XIi?e9W;!+ggJ(7} z`^*b>1vl#Q-7S~9e`!yfO$FXwjSCDX)EZ}x6uksv?HB8>uJIhQ<4&5t7YNYOLEmdT z$mpwqWb}FhIX08GwMu*?D%PrVJr(~f;0@uQ5)Db!_hCxd8mdK4DR{jbC~GT`BBWGc5njppkMC6*V3;g4mUf8wE2j4b4=54|tnsj15zUoC|OKS8Vb zsQGd6(J#)afopIy=*j#2F{pSABlY?)M-pIB7R)f5*E|*5?tDS|uqXIlDKH(Sc2lC6knhV)J?_BA``WW{H2(773<@5H z=%Ox?Jz@h@UlpS7csp>cTg5K_sxa+dqn1~#ZhSYkCFT;yvP~nPh(o%wiQ`%30SR=H zHLm_)V@qV$2rXzXz;hV^FKVR;vQupOT4hTm%mh5OAIKWMzaxX%n>IfifwhL9>xBdX zXr$M!xma3tlD^}c>H-vM*lRU&b-lmsmKl+EdYKS(A#^2}EJuq&wrqREc*$zuV>N60 z!lw&DvyBy9u4WG%aC>e;EK6&fjM@=p2?LTf9t+aKOMG|747_%~yhb?ozw&K<2WtbZ zxyI1BJh|?f6GCajGiJQVGO7fM({5I%r-@MaLeb9B&;-4L;1gzyQa|hdt!7&MG0W;yp)6;B`?*Rr;@cnKa{+GJ7*=W8^YW_WFpWZV?e(OhoRa|QlW<(EW)XNt z17cpuQI%NqhM-~{q<7%c@Q#cRPZyb`Ir2Lv!A_hdhn`+2X~FHT?RJ~G!o&abtZkc; zQ#Emx-~VmvFBHVYk-LXL&Z~vC3?1J=a!33m&$~DHiWDH{+leM3a+b~8?TI2B!VnxKF@(YzXbt%T@ zN}bz){4W1YrndvEuWa~|y5t$&6%x22q>+rJQI2L_ToD&QQ=AQbz6wS~xlf_)Y%2gg z%$>hfGG+=1m2~f#I3|CRgW7*YoZ6z+ERmBsWx+$ZXZO?SPum{MKDF^}`gJ-g5oy9X z_FMgi(gNp+7IRi6u3s7)BQ5z(qO~YZSyW-h-uruXEB_PeMTEuahem=xB;j930>nR& z&eK>A2_Ub>chB3NQBre1lia&IcZ=ViSMQ@clcWK63GI%|ugfpkt(PizKNU`|cj=rw zNP4cTKji-E+@FPa-Vdz7dd+TKbru8(y%I9h5aBEOt=?Rv0Y7^DMtVQbPUp3tC8XdW zX)Y6_!z{yp__Udtk%n) zmpu@MFC=H#KNW>gI;o8+^sgEigMjTccD1$MAO$oM$A96>2b`m7cZ6Col-?q0aQP1S z+hz}Xu9?=H1aBmq&|7vXA5|gEOu0I}9iF!Ap^gPl{;ehV68hIaLV#=GI2wc_*J7Q! zU>X@5JNy-*&pL7GK$Hd#C^+>cVQP$qgn!KR;jEZIii7_zwpqAfVMP#6bYyX6oJLOb zG8`cxV|ESKv_+0bYeX|n#?Bad+tq4~IBS}WIA?r?2L0kGC$*$xW;TJTiyPJ#Hrw%P zi6MI^Q}u$;O5GvnCfJ$}pfmlkUhKEAX1(1rQB}yHq~oKQVv=q#O3Slv zoDi{1H!@#ze7|`7h}MGdkVcPKGaEx|ff$fU)Fp;8{uWgC1Ue?GBB+BxEC33Ou^6{?@4Lf;4>NM{`g|Im-@-aD0$kJ#f8Rdl(39^?eGtbNx*kKh>|a6y61hpSW0 zK?};Z!yroA*2DX>4CHn6h(Sn*==>|nMDWji;0BWoR=sr8Sc^K#B>!kE`Uv>j=LBSx zu=c&~M~qb<0sX*YWGRlW9nPTy-dG~mn_)d{bBvw~52>s-u3oSRn5}&DY9b^9O1Tu| z``_L5GabuP*AUKH=*O*UnJ|r7lpl=E-Oswd&0&8zVH#l zO7G>aWyh=>p2lFD`lX8kw2>~|Ll-t=1;1)l5Tf!!-nICFyFcPuy{ z4!GDvp6!C$@kM+;=iUu{=nI7xJZROu3XvbwM1&_G1X8}`i;e9N-421k>u=fN{uCrp z3PTiY+IXZ)w>s13SWHc7q~eiSQ_H=P?t^Fa#AbqqS{mE39)$IaZ^?e(Dcr3xG%;qe zru!fmlwZQ1VK>VI>-6=6bcR*7S}GX`kE#@tuG|wViet@u9tP63K(vVa*o6y=CLq}x z9k~HtHO2wa6l1N+{l0)LA-Jg%G0!2xf&1&EirY@Cp1uY#`ZZevdB}2h8^%Jp20pPh z%eoZ{C+AFj6sw1vf>MR#FKx+e?Y^)#x(1VO!!t=53Ho7Z&$EBRXT<#8dqc&qyTdWL zU2U}x`9dXLXHHsjlS+)psqg{CV~Psxmgb~d(}udA?iWOfSU{b`7Y$e(d-R{filQA_ zxO1TjUjbstLvK+Ea2sqeWLyQi(MAjb`-G&yJ5P9c&?x|*SA8JP``rh4=eF z@#XEQU-q5I@84HusocqR9I22kj!s^9zK~nwx~6{I@G7&=KQhKmeP(xb&I9L(a@H&3 z!Pd|HnlWxfq2CAbf&-YQvQDqsc6!LW z>xSKtaOdTjOv;*3e-+#b8Y)yzkfVEZ z?U|F;zAW8IZNT}@+TKJ$?*L2DUoYJ8Ah|<8<`p%;&b8&>)iF$95JK4Z^W;*BD;!k! zw<8G>e$Aq@9M|=V#U%7{={eLx|^z^fHu zo2c}SO>g+vrQP{x8k+7)5*`jf;4Rea-R);+;jxdHMI}sw=8LjwVAsea+V}2#+w{D% zJ83CRK#B1VUQ;6^j}dfn9wc4p-J&cF=w?u|zjlNrhoOwNw*k(!+jdaeP+$G#U)R-c ztRoxk={NrCDPZSs(!H1Sy1W}!<&pbh7$fe2FD2vE2eqN9H(=7P(9w(Sqqw>a-FgFf zVe3+zq78Z80H1i|3><9(LvwF;VrQHhP91vklBg0J6ro&~Uv{yb$kpVcS@B%}XIcHP zl~!s*_0ra!fOGK_vw%7*#VVDYoz^8wK<2Chy-Dd9;?6!0 z3Bc?g6TCfg4{+HB&Yd$vleu4po?|XeqUMv*KJT&)e@y(kbDZn~)QKl@&vNkkqX&7N z6oOBx8jP8l_W@e<_49b9Uuv8ogPNHr+{u>rb5S<9_25miXD8SD7Of_UsA$o7>hbX6Q;J5cS{oG1#K&xJKF$oZEjoWSQx| z<=?t2IWJO6lc(ZVQgTHv+!FF=YJ6^M_)KHbOIFQM+^r_^iV#LbZEmPEXew=+Kou3U z=S~D+B@<*V;$!Vh*al28VD+)16s$5nkH6)wTM-W_t!)wEqpmXW*i|pBgckH@(;=+H%0PWaP@gMrrP6m^`8C zCr}eERjTPzoE>a6{F$(g{6PAXebPYvVi$GxIF{qr-eYc`si&{?*2;``NGWRN1i9u_ z_#IJsKxi12cFo>p3&aS{`PDCB0Tql?s%xO*JyQE~Tt{qCp*FCOxfeeEf@G0c>U1FG zL8S5Aa6_T1`bvv9;K+ED9WwBP{c(Na>hUWN&yjYY&g+-elYvH%aebT)_-5nx5xp->PiARy({iQ*YAWht1(&Y`LEPq-@KX@~HT)l78qn1uMf^Pj?~(lwT~ZMj%= z(52u?DM>zY z4D#dED^ROQk@oKX5ik1iWo_U-EHvV+@y5{%Ugu*d)jacJ1i4=W?DEfKRqh7SnnbaS zgGAsyi9wYi|1TP>Q(jw0KhvN(oBO=5k7$%i;5PnxBHCLF;%u*EC^FftV5K1pJXpg` z_UFjL(4lvEO@vONZJ{nz!uKi}SnMr!WmIJnJh%pJ=sh)r5>XWd<%RhG4ER7t1knkW zn3T1u;8kArz-L_2?(-zH&E5=X_7XQ$+0K+OrgG!H9o`}g!d%s^$91AngB;LisXNwb z-mni~Dprd|?cl(M}_Kp1Fw_Do|4&HJ^33_C7#f76I=;# zeYg#knCX}g^s+psM>&hZ&AKX+h#Vf;)BQ7IW(l*%es1sR%^`gti8xfovLE**;VCu! z|BR)Q*rKfES?|2Xo6~`8n|q8ke%1l;8W|JDAHjesxIBAJ%w$?N9_;;YlQeQkCrMRj zvXP`{GB4GCD2XiI9g}p#B%+wg+pX0Faw1DS#driuu}RTK7Le%Jq7qd9A_E=1|66gN zmMChbU=!Szfv?e{_3iGaifGM2JB9(sg)4uX`4!1-hGAMW!uz494Ar0;N8D?mz~Vex zHL%vv>Ze+_EU#trFu|_zAG2a4txUwKaL|3u${0dSQ^WgjaYHMXVXceQZ zy_3)|WZ+o;r*NB-{xlT+wb|3FC0YaeKxMiQo&nQp=p+g0eo12UVRm1krhg3}L4RGq z%YMVDZRM|Ujt^PSgUhCT&M4p~UI>`c@v)9}7qw{oPQOU2rK@df>>T$%!qK#jV_t~U z|H}3nI6H8LC*aZvuOal#1UxCn{`F1i+KADM#Rb;ujO5XhG(7NDGt?aghFJsO&yY2g zucghna0#d8(Ivb(r~w*w!!L&`G00^pKRb)-d5Bcs3A1!5}F6dSg=%@!<@u z+6W|QZ-0zfjv(Mhc!qaJcIIgq=Ic2K-6^ol+X^|G8`e&J+5mfeCoVB~p?pcd3GK#} zXe;Sw+?&@Q_WSgu0UzKy+QaHrr{f!b7DIp9(Y?`u|LWurW+=cTfkSfGK3}F0?5>N+ z$!4|~78Mf}!4B9>CyM*#f{J5oQ+(BSoTj$Z&Vv$1oI_iVABWoCcQ{!8~x zb*3k4A;wFOc#v}f1xp9`*buDfoA~=D#UQ)#z^7@2&5+LGHK8uA_b74AA?%jJT84{g zfkcB%8_%w=g;(_gL>!YTFBIKi3-8#t7+@LwIop1#KvZ>6oIa=Bz<(xe~6M8k%tkEx4fc*YuG%kW0w#9R?W=spFlGmlp@(? z{!BumJ&9IJEJ&oEfRHFV5Pw&89*ZW0l$F>{0 zu^Zb?gQhz+cf4cUc4OOVY&W)@G>z@-;LY#+&w0PWTGzFnHRl}9J;#_7KuZT1&+r#& z9~Z=Q+3|JyzGFv9G_9yb^+sIiAi7`898xwae#M7+V zOCUD=dALlN#2WnLaIv#NKFc7Fe)uW;k^!#wnWuk@lUDxUDtS~OIKli2l%;1|es4E+ zQQv;{i-2Noi(_QJ;3u4MEsVQe>eq+)VoFW_h;ST)l5J)dG5&tOFV-3ly>T>=9L8!r zZ*>Yk4%jdU*I@l0{?VZ^kjJX49lrD~>Ud^L1-KFUj0z0RDW4N+( z*PiAlQqPwE&%hc{$7ZiVdEyxCGBv&h3>$r`TUZBQ^;d<#M642f&4{r!RVjUDc)8J; zZwga*|K(1OfD4(|^_;<>Myb9z>NmyJvPtkgr`bRT&5U;Yw_^Xs`tbZZbLNvX6l*}} z%&FojijlOwgxGGKM>>CQSJ&AfZ_cb`JwUMVpQV3}P?T%zDyBpSa!h+mJoue)>*L;_ zldL^ImRs%dy(YWH;tzvAQY*|bAt~7F#O&z-*_Uj~jpu9|@hfY8oIYy9pljXxA2|^u z6=J97NfGCfMF z5d=L4mv1>w{gkUezD})|(&CkzUR{HC$dr5MN8Y-pWBbvS9Zj1C5cSH|d-B6^&MLej ztJw^T=?+-sjdv$PS!WJM-G2=9vBx2R1FJvYSBG#jj_)}EFaR5s+pz`*LqS<0c1v!I zof#P2vnSj38#%x*cj!~KFVt_fR)}QZcL|vTP8HG;)tF=I2d5>VVbD?~uIBO@v4Be` z=OIh|tPPe_sCE+;LAc0aW^J#0^`JgX)B3s7iA~gJPt5CQ75fR9pk1tvo=tE~@y!Wi zWQv5si`sl0B@ggISDa}|`mNJAaj`MkKSvBgPLov+H~BsWdL$7m=-H5f;Zp!Q}f;2 z5nApMeFN2M4{~kN_%#)BU-Q$32WV7)=Jy~00AABnC;$A80N0_i(V-*k@F7gv1x%gQ zR;)}5HP0R&Ax3Dj4*AS-1J#loHi6Q3Mbi8$y9NNY?~;*N#`9FM+XPSTKlT#v#Zs^s zRIe|Cq!P(;+d5lOT&j__bo#-K89U2WWj{CyWM7h8Sj4gv&>!FQ&qeL1$&%hqf5wwu zC=f8(YsIesS!Ms@dH=iSa9vLKsB*#P_KeUzr){wC4$dz8mUVmc@)O#)R&#K?@W{3z zFgY92ej}Lm2<4xR0*-~{xz7@+E5WlAtbvQmeEA;z`3(P%c}k1Th$Iffr{&-YCNN5q z8{cdF=A{#N-|m)dVP?mJBu^dA2CCUn@TB4V)0q{)(1zSG9VZOllyepXLTjcw0xia= z!~v%v zRJaHrZ2PE$GGSui3ZcJO=2aHq`5WV`O&`~hay=EZAp%m7czU8(0Q{waF*(O}t%gSg zT$F!P4I12gzu|oy;4^JQ?Wl10s9~KS-#O+R^86>G!5Y+-D)Zv0C92m2pDig&5Be1( zol>K{`x+8;mY!Z@!3k5QL8b3=j`Hy|!6|dmqeM21C8LsOxBEmX=m)pu2Oqthw|XyJ zdrqpMr@vfc|M89cL~LE;3GelYV51HFz2mVj!N=jy?x}CQTbURhqB+ge!OfMjPU<$p zv5c=0!gQ_I!DVXwa2U=SiiiYYJ>WTlotdGBj#aue{=xE_pyIOI$cB~p^em=qep_pEw{xZ zF*N3u~MBTY|67jgF=x!4@KD93D<8G-CxysUX`BrZx0Uwcm@IXg%p~du}%>@szJS2m%EX z-ZxPK8;JuAOj@q+$En)TG))MJlZwuvWF?q%?4x{1CD=th;BI2Muk`C zM798^wyXQzC-?COLd7mFl#Uec4-M5J8GXw}w53cv$C>F>yXB2N_n1}bNpLG%IkPI1 zG4oc?y?!s?gQT!mBVh@Xpb8MAfmVzn{~$*hgyBja;ns>-0}((vR3E)Zy7r9s7^g7h zI%7loEn-emHI@LPc0?~Aj(c9<7(b{Qp-{h9b{heH%*!%Aa>82Fm(=bbN<%siMLjFT zD)@SaIjCMrx%SGxDvjyka}^bHnzCLwP?f5eDF8DPHh|w1MmY!mKiJIj=5pY+n82H& zspm0SDw3E6RV`x%hS5QJZc+_HU!N1Ju3^!8PIL3)zn3ee@29e7iY=2$>~a8J%AJejPC{Hs=YU)?-jP++BxaQYVfo^VIpJy670{XZX^N)?>Wzz zp!N0l=@*tWXT#ckp!akBn<5st{iXHB&~n<_{k6{Bi|LJh)7F#rO60jyly!$FUe%+aVD^(@i>#D4)rSpsPqvcrK&I2 z%5jX&o%r7C*9l3qsf8o+81+bmXKB^y2{Ek#8*kXUExJ?8DbSt>UAC9Ar;glP+dRw$wzPRz#3;8&V2$`v`J(rp4y4ZUckk>W z6Ud!G?oMV4al1VLw%5$9jB-HZw^>>ls0}4;tnT3y;#&SwOWM(+WyRlEa(X5<&M0p| z7AvcI7A__!zS|fwq<6L!v5Eq;L~N;Ws|&rsxO-co0E#d@S*hK9YJ(L>qEw3gAH>ju zc%=0OgEgNY-9ccsBO52=$6}gTITnH@6cAZ0)Tali>2HNsGP1M%rdzk|y3M)Nz^lIf zJj|+_^?ZY@An0S4aUM!7{Qp=0U7d_!q@_S0%p9FxVj$b!#4(oZ6`h`8rB#TfZDGIUyZ3znIWs^j8w&@l#GHVE=BnU)tUOI2bB5~jGKQ;&XE^O z8;NNZAxF|YI@av1++tE4=0(cKB6(z9k))X!x;mi6UR}b5Gbw<_#K5md-Tf7FE$v=} z_X9ETQ=8-26pjtNlu>HJ&l(V87>Jy$kEY-C7&54e9Gq_nm#AU2LSi)I-hBOv$5bmn zUtC4OJ$ejNPL3*quKjlkhwQO~vhUe*gqJ_4wS~|GvKypGpWqa^UtepcP&DzgWL zhkJK(oz&a=Ewz>e|0xF%t2-jt8O0TCXY)sEH|#Rc&QvVCZr}RTWb8nSS#3H%{r$I( z-U_;(NSH4ie^@n|?&c?%aqa)uhT&iiM|(PB?QS;mxrb#u?d!tgU;9G$R1x#xM&irr z&zc2m>tJu|$-A2`2uF!HZZh=m=8Ag++`q+AZvZ*Gziq^S4gX8)X_U6gZAb#rU>v=d z2tE)QI~FI@Ng*E~kjBg3J_l2_w^j07dR>HkbzcsezcBE<)zbI1i*RLSli)-1R%-Kb zi&@@o8$KE4mY18O{_+?!f11QD!z5oG{1#{$*E0B!VgnWOI2@-_$X3@&bp9 z+^7rC-r2aJ6z9KDG^vO5CV3e|f}GOkNJ=Q7Pn*&=bhJx-UNviW9*Wl) z^&QENF=@c-{6Qn8ZHE(#>qNJ#<6npNaoM0zDsYCZV?MyoZi<*HrYTQeC2%)G>OoTI zUj@-%WBKR3mnjmWq_}?PMDJ;rNLd#58fd_O=zGm+@${;WEPL#uALYU8c}z0JpU5R{ zk=jzT^>=tuU}JSd8iB`9Tj%hw93y^M$e4yr*(iE&jR1%{9696hLH?CWp>csI0Wa~f zFB|fQr7*hwv9k6>oNqe_;lSZ(FBXfCMwd<=4LLY>f#IQ>hLQfyO&0Ru)J+I}j*+kV zM59@8!DbC;-!o0$9z8!4w2s-nFF!hppq?r|=gw=7+^Z?Ql}j9E-0!h3)?->e{@y}YF-9A z@G#j!^(NoO*6@^xArpFt{NeMBEm5Iyu zkeuF!>naN0+jrJn)ir3I7%JTF#DmSt0&;f{ZZ|`Q zU4I%`qHD7`u;mQ@Jdq1_^zFh-kY=bQFdQ1NZ{cUx0u2Ct?@0F2J$Hqch==0YkK|i} z$_Cp=r{Uq;H7+VGvc0YGW+#Oz06FBaI%Z6v-F@$1+zo?GEXCpNe?O-`Na4`KDMAe^ zv2vE^<&WjejT+(AG4Eg`r@Y$e?G1O*an7zD|iW*F2ip$2EEv$KDv>#>P$bkMoH31?<*(xLW<7Wjl9=pE~HC!ais$6Me7Libda( z^zryqN&ikN`2Bup5=jErM?UOiSF85VbqN;)qi9<8o-;q?zOVQVzfw=c_9+eo^@5rG zNZ)#0o1QVe7uTR0xXH}ZVsN@WVcYpGhTkQijDWL@ii7Xtrdpl^B4ITbuw54H6K%N} zud%HEphY$}%nCW9u%hJ&goBT)TAR^Xr%<}g`^d&6k(|ru>V9k}c%MM5KzVmLxsLgO zby#m+i?!A^JE=zn6ak+reTl&>nsztC0zX&no8^qrtyd*f(vy(T--n%jv*~fk(bBLM z94w-pUDIcH*%OI3Rj__S)TzZ1oUtaKdF6|s#t#Uwzcx7@@sfU0^Us0Pl z-pDqGe}c%3ASM>3hWf72mnFh%S9C@nnUDGW zgOxy3MtO)+Bjcf7c+KR${&A2dQCQMn;&CZ3aUav=BC+2W;qV_s-sn5;HoiQL=L!t` z%rP)#dg^?6-M7r`s*jbG+w+{rUbNM;+t~eg!vE%*OC8%e5)L}>_G7y&a-d7tPyTe` zKE+uI-_fJN?Au+)h6u-^HVbB?Eg0H`^JknxT@uFJ5Gkq)BSgAD_h)8Fr8|~PgFPZ$ zq^!gUWOCCL1f@RzlJk7iPp|yqC^&rfnsnz`JAe5I5rAno<8!d_y(S}GhWOeCb>b({ z7HyTv3)1wVb&&4={Y&76DY(I6bj%;KYbk6fQkm807beg-o!ZiO;wMUmWidr|!q_o= zLkJr5>Kbpj8QtCJi-=Q-zTYPhIfRkdo+}FC@c7Q003aes(rGslKAb_2oyJKW%S)C< zIu(;a`WN#tRZxAGLx`+WHQ(+v78E90X;FhGTt3B6$5A8>JHt??90M@}tMC&|cw=js zP6s=zOEdV><_nd7EW(rGNNh1{<)+m6)mBQMYUgR@|?-cjsJAqwJ2eG;HXoet*4>gCMX&54ng6mISv>9;fW z@teA}C!x2i65)3bQuKnbeb~E~lTP$5;d_6Gi)4 zBNpqD(@yhDOS=)16a^&nqN6%i2_InQl*1;~dlGDZVusb#N zV0R0VM-!`WjQ{moMF`?q$KXEwb_#Oggwz>F%SvJH@#z{rH+1`*|Mk;*yg2yd_1n|A zLBKh*`yu!19pUSfP-_?TJoXi1ZpiJegDW8()KvxQ-Am5v{J2kcZDo+Nqv5Re>6ePR zUTy66i%^R}BuBri9ON_`qqU$O@m>Kpp}Mtm@P0fN3u`Z@#ZEsH7nWtyTl&H9ID^G- zP#^5A9)i2qJeke~8sny*;UE+q(KZ?1fD>pmyZO9IqBrQ5 zRaY+pjDO#vc_ZbEN=yWDzDhVfdKcz9cQr-wKd7Um!ZwNJ61Fv*vo{k66vq#{8I7QeC|Nb7ah zb*k*E9cRvF#wpwaH+oHx5|H#UY2qF*F`9XQVIc^_Q=<)V&gHwIU_=qzFEJ%?q6gIz zw>Y#p8SQNiFD2uF_eh3$HK;95XnYTf&2oBL|2&7lZNASO{vg?BW(vtut*i&lm>y&U zH#(b!FW!9(wc(de^KaITR7LRNB#^>z_{2k|yaY@eeK8;eB(=tCg?)?N9(6PLOCYF2 zv+qkGok`mCmpHgJZ+*wPuQ2Zv9ds? zgoL6Dy0PyC5C~t!3cO|S(`1}F1(lrQ!)O^~q9fT&HKQ>86zwaT;An_ji zm{qItQixBA8ik0q8U-aa2H-f98B;5K<4YDpjKM%F{@ucePys&@P}h&To(?BEk@u}9 za{faUG0C&$UBKJ%i;;Y?HBbyWj+pmcwS80gA#Q7+tBnSZW_U7o$93M3!rdtnD{7Yi zGKKG_8}VO#>E@Jy7@@QIq(9x#faCcrI*2+rSsLT~zTs`X?9G)m6pt&qC+&^6&r5gR zvVm;qI1-g5iat((?5oJp%j&+|u4Cr??tA2T1l}WeY3r?#9!SATEb>rI^b*|88(8;K zwAY=Ht2LKaFy-sE-(lZMHlCmd-urWHFLK(>9#c_-#h&Zh%-NICEbRD#N2ndO;KP}2 zxhC2j$;Mhx5DR)RW9;J2Phn_-k3h1t{${sYWFi4l-tH#U<)2;lcGNo&H15W5c*Acr zLPuWaOiSYeZcb0L%qy0ZYpX{K&)@T@vxpwQ(o52R!TrqiYH=Nch;eb3Sf8Hi8l0r< zZ2X}1dP|8z@n$ZtH)?{mARNGI!O58tBnUrIRT~12l*0Mn1H<+wHqyb%0ncmWcdA#5 ze94KXYgaGpjGZ3${QX)5vVo0Tmxly-i&}`9A^p(ZjXpC z(=T-Ne2sMz8xv4b$Wb=-_6=PflS>z**`&@uwr{jnMQ9Y8;mb5jtklUL-xI0LlTjJ_ z8y|Sdo0*gZ&-lr>pkw{(!zHGNZ``(J#LQ-x5diz~NGJE4T*G)@l5V}t&9iig(AGx4 zop?8kO%WaNs*-bIbS)7pWX2JI_Vp53-`waY-75`HX z++k9C6NDV?nAWqm+*$;>F6|bKOXdbA7u3y1)J_s8TkuRMIN4*vC*1w!sK+9Vm8iMI zwb6%DgC3mu)URy|<1;fcGy*M39vsbrJ2=8%9%of%;tA>{`jue4oX z6KCSYn%4$^a^46P`o@%#?DSm_HC2a39(A#y@1;z}=lb5mLXKbJQZ0yBvwsnpSe5j> zYQ(gS@;4@ZJF$|)qE7@ESMBFz*Ds$mcF#N7Z>;Qw)mBHox%$bvRw9jFf?u6^=VaAX z3dFjG!9AhP&q*2Y=q|J9^`X0K&IFcCeRjS4u+m1^D1&eTj2g&UC=E}K-|d}uq9u@{ zP$Dta2$Q+CIK%*wfJ68&!M(!cc!VP2R+V}c?4wV&MX~VN9ad3Dd&NH3dzgae)C8T|U`!2!(>445)*>?q|6^ z34_)_O%K6`g)Lb=Ak?aZAI0ugf*}fx4z6R2^!8^1xm~E(-=3QA--2LZ#I}Gp+e_6 zirX7^BFnhCTK-Y}e3fsNF_3a{HXjO$| z?`peA7wRPm!V7Jkw(y?RH~_%+q&KDH4PU6B_U8wgG43O2E)qm@yy>qp8SnoFhG#}( z=Y}i^pJBkEY+-nia+IGtD5P@vk}|k|lpu{0>Nnm_1*+(&Bgs~f;DK<|XZTb?6BN)S ztIpEuyJ{}LI(ZC}V%4*5T?nFH4RaA^(=N`fcH7Vv7$#5&%+k`{>HlR$7z0xc`ppL! zK9q34Cytc*5ARoQj>U&z?&d!0uEEyl8IFkW1 z>cC6ra32x2WF~$XyxX@ zeO17IMDAxOW}$Ji=wuAp?QEq@Dl6STV?HaMhN={9oP4Xqki=o$>bTW|Q~l}*`>MPz zm!67#2Czu61Q9Q+-Y|Obh|nXaz)6XkqX3X3N%+NTdWWtT;MnezAnJOL8YXQVKH4<6 z_8Fc>iSrZZqO8o}SU2ugh(x^nLAV*`u?fuf=+=DjzNms_`PSR1^u(Z?vq+J+khmqA z4_2)S5#|7S_4+EoJzJ{~U7WR4R*Qd@;=j{%sxwVx>?&MXQDwzI>=&=O19@#1VeS|*O|Q-?WOhX;pv&vUm57t_8@nLSTo0{N}J z3r>|t(pb5pT+gaPv20VdCu&y73kYAkUWRsCVBs>5MLNV^mIG;TsF7tLw1sv~0wF71 zpbi%>+f-D&;~XxLyGiv;B>|r+REAVs^5CYeh{9mR!^1F1LkHaJQ%AWo z{9$6&35l;kD?B#j_3yU{~5zOl%KnDU;$NsZl-q@NRZAMj+R!E57rX(<=+v>Uel2VXW0wA{VM zO}w|=mzML_Ny-*GCu+{Z9wkLZ0A1xq*>;^5w)VFhJ#OIMk7tV>n4SkLUF~3VqO~uk zJ|bMI5GpY!MaVqVFdYs2IYgdJX~5Mrw9`QJ#Ezzpy6ph{>2X*fv?dtz$El|jkQLa- zc~x90NZ{oHt;xOf8M8e3uLum#?^#=S`tUC`|D*Y@3b^s1-_n z)NDb2x}L5D-A-}W6OLdN1#ip9pB6F*h9}}weZyR0h~|=1&E*=y)Hi*QuvrkoU@R`s zS2ulQx!mM6bOC)H$;>RhjQz74N_A{hr|iNQF_hk)BEGN?DF^yv9-f{VZL3-tw|Y~| z*+y=DVbyOWnr;u43&fnLWyQh~Tp?5aMsj-&R%12*Qwo=xK2e)lM|YU$1517WI;yTT zNumIdFEkY{7okO295co;UPKbR1L5flfGRNU;s~H~`aOXBV zgsz&xE%KU!Bxa{J^F7Kl?mXR>K)Oo6k?h>kl_$<($^Xwj$zFDV|hRC!O;r{LFq%F5~ zBt=8&r<)Z-(Mkt&AxwrF?A#pL-wN!s!+)}7*ntHfk$SD=Q~MZtKFxflJFK;vF%CQbyHnOTQM)F{-r2UJrc1>w5+(aXj~ zFf+zh*}XY->Tu_5IV`?FR{uD8)KyL+_O?X}>xGpFrL;=zeAx0bM$3cX@dIO;114!! z6-^%W_&4NUMzpv@nC&D0YTpZy?>Kz~p9txfT(w^p`&?q3tWF9XLH{T9SvEXvbY7PBR;Y>+8jB%OwfC*5w~lP|-i8 zP(|naXd1!*bn}F)FQPZ^hIRtS|erh>JG@&BD*$eKg*wI zhH({vpn4Vi!YQ_*;>5gNbKNkiPc$;Uaja`sN^w~IfUfxSp)zc*=4avip>b_l8+YK% zfJ5-$xjLrLik*2*s@}Asw5V==LZ4(6%?PMho|#r77dyl&=12r!(<@OoO@pEeOrOqV zm{qW*6yVG~vY8YpxPW+Vj<|7SE?9rHB4PH*B(&BK7q-2M+uWzW9!UEMo(P>1iN_>B zKQM~2@>KD3EV>p)GLSmqjA>Ejow~n_HKv(&fBapgXUYAw7r}|0^^4^3Y-uB&XhiJm z03S~s85UIXD+K%;B+H&#wg9}(Fp&M@45-4XAGg`_*0)};ILSzRHfuzrTUpOVixrpy zlHIMNEnZj1|J~er#dC@jMfX8ZYDuy*kECUSKG&*3JBxU)Y(cZORHvLEt+yvj^|=6! zB526Cw`_uQ>oUTrp7WL=YhN!7VU!JHRd0W`^X|K--prRTFu;Ea+cE1hQLLW|h@d!c z#OqUh<5@k48N+Y`O{-x9bnSRy3yP=9rYi)=kdT$F>?!}TMf1FxpuC8%vV0U8Hz z9qT8hg{bB3w5memY1sjb1PQFqOdI-;eKILMA9$~Ow_EE?>-V{(5_+|CR79^9xK0DZ z!P{Zb^U)RTSSJDfo)Fy67!L&|^nxB+;AO(Y0DW7*+izuO`L>3u+H7m%q>rEvvri|o z8-mxr{I6#h{#+jpnJmfvQTspP@fCItdv!XlE^^$rFTvEQH0Oqu=+m+y{s;SIMGzIO zVNW;^b!-Bv;B3Epl^o_xg2J3yN9xs$%bR6Czo7ejZYwPGOJ_&5wR^ejxSq;eLCDIo zuhn5E7JsuOkTCseCMP@G0Gn%nFV^5J@bLM1xJD-KaF(=xPkjljHBPrdn#P%I5Ee%$ z`C9TTGpBg{xPE@EblooT{&DmL{I`oX!USSwYUSk8WRNP4QUo|>L`tp3)a7)0cvT6ClxZm@6Q)8K5)YGFll+jlSOAXTWg1>cthUz^RY_J6x<|qqEM)*}1UUdzOZ_|ot)+KX* zGvKI&J^RgMhksC27>Z&1`(vxhM<4@fecRb;?HIUu7^|H>FRqVUg6MM7vn2++oBj1T zBmeo(F+#2{(8mp(79XnMGIU}3Q@0i5-}QPR6`aX zw=sV&wogvxO2Y@gdGZA?)HPy)+AB{{w{$(-b3NgfYB3!6x0*nYD%h}g^|1E+9S(TP zTp;U2sEuEQ@s~EhCd+d}nhyN^EjsIV)RkGuammrbC8#Mz@1kb1j!R_v`G61apLyL> zA}|K@6+DPnwL+(v^~*q%B`bgNbjFTn)KjTpOL+5wh2P#dn+hq)ph#5y7~2=K9qN2W z0Xy`)J|wW7(W9Fbt~C~-A*dpRz%+A8E6as|SXINMQ&^>%T|zCBR<7jjdgT#bzZyhG zFT0=Y+A=a$ytx{*#566t_s0vlLuNhb1R7bG3SMMvO9;i1ER8i=TD18pY3f#3 zrvuEyIzcIwUYHMKUX`y8tgCZQ2-3u^?sDc?ih1cyr4G}R^IVCLAj+%g`2D|rO`YJN z#IOg2|DpXYrOVEsNNH3uaAM58EQch>Re7c*LaGPL%@KxoE?>DK{b?@Gi~aw8sAM2$t&;E zD4O4rX2OBBVfEZ{=)HNVHT$Pb8>Tu<&#n)t-zj(~{P9;%CF|GT4Z=~yD$pY`6$eVi zE@ecRM7me=ut!2JA`y!siWU^c4QFEG9_wBtiWK1ztE=;VyqxpzLUa6WGxJm&PV0|~ z0NkmVx`BaihD|H-t;yfDxpR-P^yFkf&82|~FY_TVyC5wlz;eIHLKsPR$lpiM{I?%K zu{f47X=cpF@yEKD@i`Wv0Ljy??aFC&7D6}a`$~0XnlaZDp;F@`(c-LJMfg~ zs!f5^!Dkoo={6VM%q&)(G&2#E)cvN0&f5UGub}K)3mymH3ZakOB-r1BxErp*!Ow75{1+5h>A%5}GaT-n>@6#4P-R_psPF=L;s`oP$W?&qB( z;Px19;!-iCinK2VFe)pbn%RCevb&MM`$ely>*nH<)HF$=$x{N*2N-%d#vVLt6$J_| z699u$Y#edNssJ)MK=M*NdcsCfFV?1hoShq4CHm20#~s*KajX9bud7?Cyw?@Cy8}ZK zLOq)mBe-A-fzh?@neNxGD5Ei*)>AzH$}}&B!36T^$;1VVvSQAnVE~#WI<2u$uQQiX@lws0HAaDc$_{Z?cjA zSq(AT5t?l+^>3JxY(E^#8(VBb3vPOOYQ_I<6_kO|b;bh)+smol7jH|N9V6~ooLW(v zrb0#~sT}O_bgnr8X;Px%IYb)CNs<}VV{lafFk-zitYOSe^w)UO1xP%x!qS)l2)aDp1jYVA+P2jHj7@IxO@`URV+$^+}^Hc(vDo4^apEa?bL!xhh%M&Ma!IR z31b9vJ}F5tmZwhBBpTI5+RvtqTX6yV{lM>Ckf=k?&GuY0T!n8%6M(IK`m_fcztAyg zn~F$W~KHUWf$d^0vO>y%8`lJnlxP=o=G6ci3P!d-^CPY`qi)| z#lT$)ot%WSL3kp6yxejUT_BRVb!;)*9rT(dakNz3chH8dSL5kMpB;Mgy`tv7yp8}ik7Zor%JmF>5Dt3H%d?*a%7`iOnv2FgY$JuZmWHQ0^~gnuKU zEr91Q-jq*YE`|UetjkRP6YVJ7=3CPDfU8CS(YI}vCjltC%f5ABJfFUgrN0DK;Md_d z2va!UX6Q=W>lw3HGFJk49iepPw>;PTe5S5Q2Ibh1bjVZ4o{zI)0Y%TFrz zMg)RlT>9AN51S>_RmM`VJ|-4tDrlk^=Lc-kPOm$A=_zhe@F+Pi(N0IhLn!3bQuXE_ zQ0kImOQu%(is7xmenSS5I5NrZA!=|)LpsX3sjR9tRoDp26*LTYYM2&=8|0bXrA-p8dtET@r#B4A znM`;?+drGcYF0&TvY)IARq>^@K#XV=bh5_p4Cb2c_JN570y$#z40NR7+T_Hjw46ch z@yX2P*$hZ**BL~MFcOEbh1ot>xupNU=8P0?si%HLBUz|sDor^su3j~(NbTfMRp=J^ z5%sHvER{~vk|aSv2G2}3C1H?H&Qut)765O`UsDlR>IhFm{7X*G#+Lz5Cy|YNs8!D2 zzXoGV6`TYeMMyE>W4`e49gRi0dx4)leRB)kWZd&9rw4^5Q_32=bR0cLHC`yNGF{&^ zD(LcY%Gv1}w&UfUI{NEFw(}Ro4<<-5L|{dBPg%8e{O0%3&PJ!{pc&ziCkH( z?Y`Sc1Yi2@OHHxF&Yl7j0qi__GE%XpEpBkaopH;aR`uNdgaH^^dFlue$u~%KYMZO2 z+*DznXEDNF0lwu5k8TA!n#fxl52EE=k8x5vt5x=wZ!Db0Zt=#l(6*9wfG~mc-L8gh ze4Bd`b;tOqBng~(I`m%U;$qg;p3k}4?TO_|FT(+Z@7mFdkN1Ybo3|O#X{#}2!uq*o|K!o>)HRJD z^ZbI*%Q+t_4U?(o4#HpRfEp^SwYCfBCKDI$HibAW%awzy;|g5 zsGu-3=@^>c0+=DpX)3Bf38!l5`ps2?nHIjWK=(K+f2n(`t@GIEY(_lZ6> zQ6ekkjOGqPRr)?dnP?V=`kjF`_Ed6|SCvay8yGKXQr0Slv)mO{I?tP#`^S~U#yd-* z9LoLtdTES-=O=orheevcLDDd0LY6p@!q$1dX>8*2pMnFV)UtR4zPt8sOW!Ha(1xpv zQUy&3k=f&inJY3ce4O&VCNo1hCkl(!q)FYIFozkkeuN26qjpH3;;^XWIdDtE&{iem z(QxbmsET2E7*v@^-(--Nv`(6mQ*_*TI|QeTLE{5$_=3UJ>~y%dg9jFv;tfvs3~kUf zG)o>nEtI=R?stFE0LWHn#jXEQq@Sg0kDU=5?Ky;Gu(5Ie;8(YP9z~s~xR^+$R5Gfd zU%*T81Im_pnEyp9(qhQ^hE7IG>nie|_7s)?tlHpOrE1De@?@{+IQB13y)+P3;QOsu z{Asx2GTX2Mn!+xc2io>!F#gx2w5o@W2}rO@<^MT#(B~u}@ETEFd-I2-n?Lmd|DvXu zuRp~Dr+r>a3k-s)5h2*nyh`#|TveReW3#Huvso(_D>pD#2Z^WNXL?D8Q2Qnt@At7r zV`Ril!Rb{2%TLTnsb%?a$buz_8gp&svkeVTG5u`j@eOqUExIlBe7uouVzsJR#I%() zs>GH4^xd!g$=ky<^`M_7E7$Hb`D&BRh;Px_)f_j)97m=Hh<0DXn|x5aLb~cYK@%BD z^5k%xSj=00)ceqOp9|Nh+YDN65gND@u$m<ah(;QgwQ?dZ&ivYVhCjuK>=5CDI4#p();fj z1bIn)pWyE#9&05O_D3B^1+;!M509a2ZYYV3W0nuRz^ct+xXw`5 zunA)C%YEPV#Pb&(kss*Fum`9uRFRbWKKtBn-6Wld&S6EhK-tCJ{azpvId>%G9>U98 z^yf#}>fx6Cyh{Ji!W@vEYh>jc8d1+bO!%7{AaIAnixv$V)`%B2)J9A}9*OJ75ruJ! zK+itxiLqn~*c@3ysRmV@=evY9vQT#;6~lY=$*#m?@&3Q3WI#Ek#wy&ol4pja&^|OgaotMSH`?{ve zW<>1~%StwGQsaqe>#AnlD8hx3H?O1^M@y^#XtZDspX`K;Yfm<&ZkHk&~ z!}j4sy2#@PaFy*vL*u&X;g0{Cd6II6OzH9fAShAd%bq7QNn2^uG%l2N6Alo?z7rH9 zT{y-0a|-^xmSS69UMxq)_l+^lWB;Y5qiGh0gG<3DLtH+hDHWe(T2DwoM7lBwQwl49 z?39UzjzSh&Do5yDiD8N_*&gqS`>G4co3}Wk1%eiP+WFkH`?M#|fdRQCvu>@E=Xf_s zc$>F%7ON;>zr5U#$y!k8cCU5+o`n4>W%B~5*(>&VrN^Ee+CuO}E6Jhc!kyKR{MVY% z7I#+tr47aJq2f=7F3bRoBIq{7DH9VweG~ni5`(ZEt>ok?K-7wY>z)TjG2qaIwQ zVfjPhGON^Ay&#MncoiBhwWB*DGi1A(ff$mNlc)Xc%sY;eTT~SYWo+~!SI*XUMEhD$ z6^*@E_^Q3v@To7pr_YD5g%RaFbzDRSd;ys6FUvdbU7q5<|E%Gdzxi zzXM$5bZvFV5yqZsRCB~2tV>R&(~_W$`F?~!PCcb%17R5Qy|4DS2D#(ZG@^w=GfzAV zOYzEAJKtoDqH@al(56Xlw-)Ux+ve7;lYnLF*zo;u--~eUk(G4Af)dN3#OsVARdvaR zSe#foxF4_hs=tT#Xcl-6(tgveYT;L0p5M-`_}as#uJWsbrh9&aFPg-2 z=tNLPimz!fk($qNX6=wvJTfd%2cZ|~N4D5I5Q>llCc10S1!dGS`2ik34-920R9yeM%4fLGFA3XG} zIFxowgo3XAuF9oa5OQ^VX}DubqvX;Q=`Iy9MUNC`_<<#Nt>%)JyH}YZKP`TKyfbYs zSXM-RcE5A-o+P1hEulz!zB4HlFmQdB4FA*QScppb7Bw$sH8p-#V5Ty=?s% z)_OMZ_?~;^o%r4ug21%AgDIdNBn`D+o@P`t#Fp(Yup=0jjiRq}kSV2flOK$OQEA`U z01qTVFY@x}n|A>N4!fdiFQdW=M|FovX<5AmRmMf)rzhfIFQaD{)RFqes!4vk#;s~0 zM=OgRs{~8&QmPQk+h>&?EbW}ogI!Z;|%Kt?>s#t1x?4CqutW@TlOWC zoRBcG?cuG}*vQIgy|&5u@*$Gwl`-N33c;RH=-X8i^kaNW)nLZO!taZKBNNjshK?Iq zhf5E8G-GJyY?3sl+tTKA%bBB*M}QkL6=kgdMTplm z#{u0gTbfq|Xy!u7bA#~~;#2~MxJQ2=^A1~$x+)|A2sok>cs2~;*l^3Kq}<^j zU3@5NZ7aE(UQ3mvr@hz;LHAKqsOU-JvT96`<{?pJNtpN&qrFVgq7HFHt4`cu5LI=k zrp%I-2EbuJ{km>7w`DMI?9=u}70z9K%6c)W?!cAtgDn@A9s7TkmG#$#q2%_)X8t<< zUAh>&?X6ny)Ei(Ms2wcLL?vJLNp@|K2arx87Gbs=j)4$7AQDe3;+xnft>(Gs5$6?y%o;k#-K zm&Na#Tr-D?;eC%-D&=l1<2O>sHkP8 zyeroY_>Alu#$Gg{7lF7_8j@77PKDB;g?YL(Cs7A05uw&Y;$j8;UWGu)iO!TN08{Lo zH)%*5>DK7isI8|uEUDyl5$Dr0Wk=`JWN7lY-HPI35=H{ZDGgDhnEN48%Q0s$2jsSg zjpw$y{ngo}*>kyigCAUv->6ic*f9E8HVf6Pok?F5n6>Jla+bhEn#LD1H53CQ{w`Ca zwkHk zRwF`$o|gG?evSV-ro0=%h%|wl@{?@Hi@euJKlXYlI@YH zJOvr2s46;}rOY4S!3|x&K^hYq={21Sa(E9YiQR3RT>FQskfj#ma!FIpXeBF)Q&1~Y zMVS4-4#eENsve!qzV>W!ih~MI_pk_#*qz%f33I~*%8xcQIYupH`jt9y2GoUPewrxG z&2u=bzG^LIqBaGU-MSMkK0-Cs4K?zhC?wp(+M=$m@|ELaxqqL+0 zIm3pId22dTfYUHNA8$`8iOf7F-Q8K8j;5NsY*s`P`nWNOtm%MP>dFdOty`UqJ1oi293r73fj0gAJy0*Ha zmnK}X&z!>5wgLi-*_eU|PX7*;NJ7|q{&aJQ&_V9`N%GiF(fHaOXM=18`7`#KtctFI ziinC$Pdg-UD_}`uyXQ?}`NT_an&;EYUf{_lunrrw{R(Yqd+~951LZeKu%;l~Om1Lw z^rl!rugnk3@qlSE&7UQo1LkenPz%(*3r-jwr^c?k2J zR~!)cthw{@Oa#vDVF%QlZqnT_L3+pDbAN^P<0w(zDXLEshgW%X{W-YewK(cEc0?y= znLLjD%!3qV$e>d92GKWWdPU|Nu__--FYdSYuVk^Pkt+Eq$n}kw^xPCB>io1#i(2Ob zQuckn_k;Hv!>VLTu$8ZH{xx>kU6|iB(9G{)P0BC*22`?fWUz85n|gH)51Ng8Fe3z1 zT~f4wz8gfF85I*=O6z#sRMDM&qCqT;Ht3}${Q5pMEfOAk&S{&)4B}d|J8S%jJ15Sj z5e-L}SKXYQp{n;gJ|pi2p@lOJqbVveC-Ls$2!rxGNWy@Er!D&Dzi%{OND3%>umk9S zr=SvlI0nv+$YLXykXsjjpnQ9xJ{m4)DkyuW*tq2Tb~@TfIa83X`wgXQGU+IEFqAGO zIb3DyyI&y6bI%s*5Z!up-s`b$Ja&%-c z2u(+$v(pWIi7`Arj-z3|gHJ%Wq9|BI5b&mRjh!5F4^pw#JDtGm9Z;VrcH6BDhHRi4 z#I2L+7W-duEP3|7A(OQxw{y;ATyIY~n+c&*CIvWSCX6O*kyf4>cFH=OocdqeXAvT? zm06O2z^G5?5BV9QR5z&cnuK2diQFc zu3Q1RDHxrr4SEK2xh{U556io~`o?I8i$K5yREI-WXSS!b6LMof+G7WD!mQ@UIFeh5 zF)FmWc*n-7R%Ywym;S1Sj!=bIJ}dJ%95{M@K)V>#G-$8Bdo5wQe;u7a!sTgLFXfsX zfvAEHN!(ezw{LDy?eFbm5k5X?(6rmK;6K8MUG|Af3l!0|6-Bfwj$3&o!;fkptCH}r zK+wR_I)~?a&4oo;Ct;|*4{gwg8_gtu&jM&g?Z`GkZLYmm=B}VVzeS?jp==n3gS>Na zbMGq1&;j`Hu$W{qM&yCXE~sYjS){!){=aleHGd*D4cF9dJ(IsJ+Fs4!(7wJRkp{-| zLn`LEmHAjg=n9Mot8bsH`*<%c5sfQ6>Q;VK{zbjj%E0=V0#_%&&*@1^p{`BKqWw!F z!T!2oiLE@@WF&|&C`XN^+UksD&@pvXZBN0~^4!+pUfuftUVtebtvK(Xf!jeoY4?6_qH5-P#9Kl90l?Td?^a*wMwER;!>A&s_xea zxur#($&Qzy7)4rX0c5sMiz`}Hf6IaS-SydZ>8dZZ`E;pL**HF?rgoq})6}If{KHbW z!w*~8EP|31A*J;~@mOS8`S3SY(T~x$t=sja!vwFNpfsF1%{Ce4t!&=ukBXFJA^IEK zA_}s|FEFJXO6*x0{~2HK44;ieZIGDT#eZ{kS*l%#GGlYP z8N780;Se=uCgh{`(qt3b8vYYN1_&(9hr!@@FcXsP{(EIe8blN$Q_b^54@icHiPk)f zAwHZS9@nGNh@r{S)wD?KxLhO8?zH489Z=ZF@9U@R zcRZ4}Jx?ka-X!Ws3aV@+jHQYjjSAv&T;Ev*u6268gB|GtLBh#{f1m2ULAR3(I{*VT zY;#U@0f0g>GSrx4MKtVTn2=SncAH&3>w6~ol~r)KMu8lFpehGBF#sJfB=ioK{`8@{ z=4@M3)2Ooi$h!T{#%Ds0asOJ?B@Uk{xl0&5NZ7@@Yvko2VD{gmn!nSQpDAz=*Xmxn zGNSvE61B8Oqo^QnU}|Rz^z9rjt940aIT1&&7G9C1f7K{kDlzS9ytI%Q(WO8Pg^^gV z#OP~4TG-!r@7{-R-A_%GKIH5QZjZZ>vTo}KuGU|~XA#KbvO_Mn3_~lku0WZllYWl` zKId>(MT!HGGr^_10iX@Rw_~}hlJxbFmvXc|+PuJ{nU1BE6CUlIxxA0LJW58AS)dlz z?q)KS&NbCzBW~23ZzdJzT?1;Da*zswXaGv*TP;T8l+p@3BlL}rbVkSeQd(4JKo$Bp zkpffiG4_q?mPNz<0%D@Le$)!svh?VJxzI_Chl| z#5mz&DSJC#K2CJZ0@26*Af>dlLMG|kB=(uH`k+p_F#$lOW$$v7eP%kFHAXy7_9`7F zR*X8l+bg~jOJi&Bi`xYOSiqF)lhw)nztzf2#zx$G1m= z=zk}e{W^F2r36GIo`^%;;ud}ax=0w(_+{Oe)7d?zpk)^dlh_cxyjn+x^H)ZctT?sU zD)}`;Csut1bwWLJ_jRMv{~;MufkGNe9>8m1%jj%mi`lk1YW2C^Upb(K-+=PRKS#Fyx3%L{aUj>RVZILt!y9cQHIql4U?sV5p+|N5UDr)Es zXLst!E}VY{cjQDCU!Usmrblah53RrE9o3;#;g~Smp9Kb z01}wtez6JAsrbL_iLo)599TE3#E3#e0%^WM8vlvx4`4-(fD$umRE4{W$QS_(`^LHP z8GE~D)S@EPTUa%g8Ml-%GNKIeE8T#cE)?QlE@5=f;Wgy8pe-x*af;cWU zO8}_OAg-5v37PEQkJw}al{CtuR9l!BF(4S7kJHu_Rh7j^4Xr~+cZL>W+sb1yvK>9y%U7hi`Bf1~~VZIs$f4*>C z0lBs_Zm;C>Lhwk#sltHzBR_D?Gk_``TUD0*X&*k?XpK=5)3{iVo0V%9Z6oQPH|tO{ zLfyR%o2AK(^!7n2kf}e~MFLXD2ryE73w?U6TKgOvgMX!%G_6@z;ndIFH`}A)X&NQ; zO>hy^9F^N@aoihXJ>p)GG^*F=cikExxO_ui z8<97}4fAgl)GpOe2s_NgM$y$o^0z+RADH^`?5?~~vV=X&J%t+Sm?8h=0bP8Lg^s9S*t_aBSjP2t<2WnK|6 z+})Q@)lil1lbRt4nDuRINB3OSx5HUn%NOVEB;uHHBI+&i&o;_q?8_(Kys~20Fc;}g zlOR_3$ie`+g+Ur&!X=JTfeE1oYOSTXpZEXF5GpqfjpZ(?fPWom8dAa>qc&47t`8P|tcn}`SirngEn+42C8RdW3u3VLp zhdM~1+*QJmi24w&TZ1-VPw+4zf>;aq9>0tCRh0+12oofE0X2Ja{wa#{(>5P~T}yz( z3_akSq`QGn?^jFB-*YxQ4xV%bqY@NNFSLCD2AZ^D7JVsL#OGP<5u&a-q?*kjVB)Qo zeonaM4A?J-Wl1(=oB*z?!t(p9+2#_0UhBA8yzD3SgRXY$7kZ}hdDy#Ju7Eahe@T9o zSEs21-RlD3bju-D<__vpc@?pHBdcFu%ZG6DUXRP#epv)seq}01xd|2uVxtz_QCN8* zvJUzqS9}O5U-q5M!G1P+X=S~8x;C#c);ZXtq(Stxqw;F1k^?S|rj%<6{4cWTEE6!Y zr+*u3*;KPw#v6ZBc{YyA^DL)6rn=ia$IS0nH+#3t|5$g zzi@H}>(_#T-Aen@if8tfSx8D&ObT6xQ&XFc9GVv3K_!x8lx5_9T~2yCQ52M5ME!^I zJtntHd84rzbLz3W`gR1{-9g;irZ1B}&&;fU_A6P(<1`L;HOnl@T2VT`G!O zsd@y!u#3Kn-flmY#T5#)j}D1avW40(6Nxvof(^`AZw(BZLUur1$9qxuC#&h~-GP5* z5tWvqP%Ve#ct&?fv1792z364+!4rgaeOZ_GvHD(bRM}K>lH>RKWgI2~$K!yL$#pwf zu^$}AajhB$k*d>Lhw5SvzHQlw)kXa&(6EjA#ODtct^c&t10{5w&9|75B%mS>8#ZdA(y*Wj94Q$ za)(>hyXO=oT&JNRX%3NtDiKx@ooZZD#sK2S+g9x>|L^A{ST zsG;4T?Eq7Sqhmz3If~lqL?q6=GLP+fDs}oulOg&9Lby*nynG3j<3GIsWB`!KdAGpQf$XVlPlPITrvC@3ZUgrxf4gX?xZ8fv9Oii?-Dp?R` zSXRr@u^aE?j63~=OgKGjW{$`>IAiEa=yMn8?N#WhLr%Br?#6oxO~Y1RTgPwzSl#om zpW@wEkWvU4tZvx52&bhs>K+!Pn&jTdwis+owg+BwtD&03vMcB7U9vsAI-GSo*2OJj zenBU=9&Zu_t1zHExb9^oBhsPh&a_#E^X0OE-JHct;4)K?x9@L-VP~YR6{W_QpWgx# zmv+xXuAbhGv^s8kH*FVfnVEdf8Enc2X8g91{ohO#`&T63+8rLq+2a5>Usz=eu=<2P z5uVUKiTxfY;`HjJ+eDR`-pfUk>q1RuI8?zD_g-TUb*+q*6WO3ECZl?rXoT>)hrGSIECw{KK zgU~UL>=2Bt`zC7GAui0=K@kKKnq9iF;SA5^rBl5bUhWj~08vap(rjRrf{Gj#K{~dk zijFz`p196pLdR>;+-gnWcAnj$zMErwKfV*zdT8rlW2$&#(r*nD8O(`%7CW?c@9vtz zz8I>Dvtiw_$8|>%JtsaF-6UL|F5_W1(kx2kY_s3IqCqB>&e>!Cl5d;`f5?29Apa)# zt;0W#k)}s|i}FdQ>nSCrp7#lJWuOY^PQ^G}r%0D=7FyCEa8qnq0x0cNsNjBv&=^9PdE5MwVKrb?n1yyN$rEw0m_v=@oDD5t4`ieiLDw(buqgNZ z_ei0x?)L1o=T>S+cBkFJWkcPT*;0Zhk%1@>`A~#Pm9~h@U!7VfAS3 zUD9^5U35W4Zp4IZl?NSXtWanO`Z=` z+627m0o5{MbT3Q1-QI(84IbK_e(2<)br~%GeayF`n!ZTSr>#%8r)AZj-t&1T=hy_P zxm2lXWAEBRXsHLofTybcNT=?`NTXU16+Hhl(|7;e?Q3=DCk+jgU81df>|63pjxxeZJ~0U1*U-0(eu& z3hGE~V6(+SbE8*n10%AegX!NF<8D8qC*EX*v^DT4~#5f5*~sCiKoAAL2Z8|>_EB1 zKt@S`+aJI^rxxLZ^~}utg`0KD(X6EDgo&e<8f2ZeB*PWuO!i?Yt>*KnDy`w?O-s%7 z{pE(5IeoX1qgmvCVC+%(k2l?Jmd953(|#wEiMO_bBeN!9@SUZitFC|Ns*IHcq^C9o zXqL2z-d;E5|hwz_$Nx^`+C^U`4j zq*Gqj#-UOli}uEC4_!y}w0_*@_0mvSt}%xCSFf{HN;`N8VW(a>1LkKRkgfMzk)j|j zF0J2}we9skv}-=PNY9K?Zs$q6dda2^gg#bmZCJfb)cJtP){&$6()yQ z|FiBc0M}%`0Et0dufK(R7}H?9zvSA0mxkGPKhFgI7WJZ!L}?8DjLifP5 zniH{vL$X}JE!Y8l4iqL)8n`^yP7MA8ae4FT>?I@=N)UQ|$f`I&;i5Ojl3(}lWEpOD zpUci+Hx-Orf1w;73)_%NYa|_I*pqR@|J1k54$**cs>+GCbRIW^uLvg+GiqODtUV1WosU$#EnwRt%{$=Me90%sJ)}jnFyt~VO~Z^a z37~-Jr>?>Att*TV*Pb};$mQ7}i7B&=*QR(gJ=V4n?b%&U`3(M()@??R{R3<`mow^p zDo*KggY48>{sk>#a)@BdqWT_H`e6s_7TbQC1#A6ToDp~9om9V(nT(WukcLeDggeJf zx(-FEjC5L4ZHb8O65Tw(bPXVvAM3BR^|%V)02c@)9&!#u`4UXBF&&^$CN_6r6vG1% zu?T?e2u6l|+Yg_)?jJH2yt|2dJD6B{o=!z^mnG!114Grd0g6D;XZw~;nT`C|n53Ym z0+#&3*8(Ko5;s#w6iL6 z*@Ky=pwT66r+)z;I%of3a&Z#9SZG>eqL55sc>s@kml`5==x2`(FTbmU?VO+q?SyEm z_L@_P3!2?>I8+F8Ss-TVd|w6Vhso56I=tz`aN2EHSDvv(OLoQeW2b;DK2EbXRi@SM zS7V?A{g7dgbMkjuUZ0ntTc*jOloE4WzM`$I(v}8=j6*AXVFbzi>EXpBCSIE)3usVrWQt`>Bp6i&1HY8eRh_nLF&2Xq?g`80tS%+!yCn`% z>k*Jc5S>E?0YOreug#G<*idch)I=7wiQO(AHIH+@Cgh$v_@dSk<6Uz=m!inGY-h!2 zFx2db?RBP2?XHvW41t|#BvB(3Sg^t5Z^si?Al|oA!?3(JvZ{0Lt0pG?rPAh29o<)< zo`iIc{8XFT>Z_!kRJBgaWwVmo!1pWdr-mifk9p1RnV#qScvYQf6;V!tL_D6P^axG$ zSsknpND*|bVKxd_H@gxpCq%pu@aI$e?2iBQ0oq?{*c-#o6O@Cq8k{L31Mt`xb{;`4 z+eEh3*MUQqa`m5sDx&TR2ScP3y-vs~@Av2yi!<09#`(TEB=I2%ZivbLq33F))ew!HTL?wHm( zYUh)Wscs8e-LNUMlG8yb;q(BD>5&Bx&09Ql|MW{|RDgy-y|gxsthl$XSH-5t`!?|~ zT0h@#_JCu3v2GXSE`wKu*^PzmNs^q#rhyz7)`*^@kG! zFu0m@KE)UF!bi0M%e#TAf1pj$yF5FaKCPN>mTp&p4rvT`9%fZsGOWO;6)-!1wZMhG~f`R|8#x-xXDqXw((737?EBE{#;n3*U939!^W1Ntr zdHI(R@_($N>miZJh-n=$Q4w-Z3}nCD1XkUp2ZRhJ`k-%3x0^Hn2o^gTNx(yiIkIk_ z=q|P14NB<9oWX@w2BI9jGEn$DB*!~ltECIQKX7;+-*aqsc2z!<8js&A6sJ`$b~=)V z&93@Bl(aor=5^KXn+e#nZCX{~@B$+=SsZ`b+NV>YUJ|DK!MpSp*68`V!Ba|LTk8~1L~hgw^YjNaDJZnk2^dX;j8&!(b%J^CiQfBK6s0`OugVX6HzH!_qPe;sq=#nuJHmVEAZ%@Vz0B|uz}IO6mXZ@c0;9!wH`S+G()?U4 z5y4+1hnQSMS{sED@7Ea<{$O3yQ9mqR0HNnfd3oJwSy;OynMAy)L^Jv^2ukPwy#RIH zc313Ly3mG|_Z@d_5kWTE2LK$c$zEA>m`$_^%P==_!H}d z<`KIAWYQ73_BuJ7%GqSica{AxA?mVhc6%xBt-!wss2GnOD;JzaVH6{l)oEGs+e8@da*l(|})X92AB%-~7e z73|gIV2*Yg9iUyhuoG2#Er|J~56?|$|2^}Rf3RO03VTo)7g}vxP;`vK%=gaei8{ap zjS-`1pW`Q=(xt6d!inx^U%G(tAu zWdz9qfN(pYy^)S-P=U09P?Rf3TEs$MJxhmcOdorcEc_hV?b|=|s0}-UULbKxB+Z}m zbXgJOP{ynd8`>!$f8+AoP^@zpDMKMR*`?BZWMlGjyp)uhus$AIkDtg>fZyLCx<*ry?Y*uiKU0Ht-MSt{0&w9W_+f zYY6>^ek(kZ?`CMcG|87Xo(5R7Y4`HWCu3?k?kRuv!z+C{8~caJ?Dxa7tiYiM;n0O) z118TkJ+AsXffklZH|0lIX{3ti*c2cRZrKsQqLh}DxOd&3BmpKZ9;@f8cpaDYQ?IRUVk%aU z@BM9TleI%HMt!q%z>1@U;<5T7l>6s3m@_>!lQDap>#4{c!!*#rdXB92i8baR7gOjN6FaLyQzl*mF%?GUDxqjQkzzlGOd- zQDs(?GC6-2M7;Zsn_(-D8d?x+R@&8xeR$T#vP7*H?|bn$9F7_O`g%}f0Gi<8n_~rI^Mo*CR6iz6rvI}GDH&qS zTc4(Zs;9BOe|_5)_^IVmcnJ9}S7voh9VxOfxA~~5df-;s0!Cr1IM5|CTcNZmk2KW+ ztDOEpEOYjO~A(p!d@Y90FZQJO+OTHj--h{;25T%|cM_`;Xl*(HsFW6eOw)FH_}t=rdYwE~ab>P3k7E7V2#z8bx90 zy~jBqB3db+Sh+^6pyRM=_a#DoT)w5W%{&3u=Po0;imCC*-~V&%W_%H)1pB|6|9A_! zt&)1EbBOo(_~@5GZLOFBtPUy*HLod^bB4KkB3tg2!jLI!km@oKye@t{Pl&Eq>xwGM z)9PTKcYO~Gjvcb3;aSNF9;xox`0+ERj1^sNiiEg7t5nk6tjHIMJF86#jx<|q{jRw< zjvTFd8TNDBMoP=9xj6j|Q{PP$9XK_-<6jQtYEv46pN86u+;J-IXK;fTN71~m`N1o- zQpr?)x*}Qvp8k(a5}k@)9btLvXbfQc>KiCWk|=RcnUu|(r;^jn8_?PR4zl$}p?`U~ zbpp&`|Y=_|55kdvqKe4aOCO%q#Qi zHsspc*p$qfX}!4w%$l5ScW(6Fp5p~vqMj8d6@(-h1q>Yb=(fYTTG|>`NafHf#U7U5 z-?Wu;moY?$088F?`4zWPnuCE9$i&M8;fO^G%TU4$JeGkf*b-j~E#7op&)X|e#x(~% zy*h;$!HI8Tud#?r9nsKmZ@d=O2{4&-tT9m*TOPkK^*=*V5nETnX%G2To+3IQ8LH11 z-0Ej;&*t#J?msty=tn`3<)}nIPn4!rNx`2Qi8$!5A7<5^>~$(I@U*<5nEi}g*fks2 z8hH6acfP%{ki!Z$y-wX@232b>dDa&EMwKtcNm-AiPIU*u%Pc*pJ&%iPjs7RtGr11) za-ji{A+2A8z~L}fMI!M`#Ng^EaGR6z+=Jb+44Mw1gt874@HsZmFN{^`=GFhBoxogT zAjG~f(mUo62ciQ+%8Yg^x@x?Q$1edfImJ^`NVPD?HeCazVo-3Ml654s{Wwax)T%{l zrHDH(hR}KIB$~1l)B*R0kn8ir*WgQ}{|S+*L_`rQYVmb&BG=_zUWw)CPwJp8h5~Cw2`vTp;OzXu~bMb>jwM zogGb^F_bgxK8HL$FLTfEZL;A_sOR&1OLvXrLuU_R4Q#CAcP>~g*1aDL`j^)e@)CJF z&FYgP#&UnSv-`V7-TfO25rnSJuj3BIN@gwlHhO>E-g`*BP4wzVW8dO`N3j;(Sg)7Q z1~)8>%r(HvKO0QxNYVOfI&2xt^w9}@MyOc(st<$lqTHoL&`PmkZo3dm4pqm$*l(Gq zd~`dqr^j2Z`58*%3s6Ui%}c+m42(Cn#c>@SF7V}(wp@TrlS8yo(BrD_Q zH#Bz`h67&C8|65$P1Icdh&S_Wb%a*N;>Eh11lG4WaWfBiI9lbnu1lndOWusvTyJQ6+ zo5-)VsUJk|Z}Dg;G@dPK>Ul0g<$yyH&I z{~|H^e4_e$JIDy)zT_Hc@q%o&L>*ww$r!O|k9JOL5I+S&X8dtAI#|a`9eYlOV23q` zDkOI?wvHCMH5t1XnBVhcX`F{~k~eg?R{|CF0&2RApEr7R_6&VrsN!=Xj*koyRcYLt zZ(YOb>X&%P0-_UUJpn9?@#wTeULn(i;=;vi3aD=>O%8EUoZ)!)I6#%r z>&%r?KS48ZWI`!*e7;k_sgfagICB9JC#2YV+=|kZiZPQCxZnR{zxwy*cGB54}|CRZY4h|WSL-W z`m@z{_aj_%$>lFv88Nc?p=~Lj8d^g9s!OSWV6RU1GS5B9g|3(8jE6 zLia5el_}7ZU3hs;l)hiDFyoSY+qD~*acb3`IJ_G+UT?DNs_b}2aw-POlz$DXdoZf$ z4?f8fXc~kRE4v{R(OPN2Zf|*^_YYuNUVS9rC9p43WT@81lRW-=0v6J`eH@r|2khF$ zi2p;79-=4IQT{l|T1hmWO|oL7cE7$9_yE7A72%zYw7JLk{w7{}G-z*b{J94ruA1U; zKSY)}v-_0|b7@vKJ6=~-g%f7YcI|mDkVMC>ray9|JOxhpn0VY= z-|x@_eLhTsuJ+V*B2-MvH(QwB7ZfyZ_f2f~q`*7wGUD2eiD8nmpj&RkEs~$74_{MB z3q^;GY&jA(5Ob)tvB4UMa}R|CrU)OWc!B65pbo?(QEwu8htBampa$)uyEsiWUdA~b zvW|n)fcpNZJXp%V;d#vKXUT*@7g(+NGmfnl9PVHM>@UC3vVvS6C=j~3d8b@ja zx5k^<2KN*6HhZw)%FoG)U6C9BUe^!bHw%^&ylDazgueykh?J|!5p!RZA%Fii?6G=U zWhC@@F0rM8d?W2S0Zo+0{mHz8P0dWHOC_yR^Isjy!=X{aB}q`n(y;g4-m9aQc6mBk z%-(uE<@h)d;vX7w82kfcN)tc-!aNYBSes3=hOh<=nU;onYJn&{4%%YKHJfenlVB~0#|W}QNvrZNFrzbHxo=gFr! zfplu?tJ5COHhJ;-Cz!CS_JwZFevLme)!~Bb8kTzBj}WjD>b)-EAZlLV!6|BA42?;v zT=PuNUt8Y=i=2mYpwjSkz^J+k`bufp{3cvYSl;!I=?T$+_u?%wU__JhN9vC$j}x_{ zVQJXaG^NbzyWD@Pw-`kKHlCQj%k>W^QKH`QQI;%BSLrNp zcTz*awf+BH(0jZVK^fv<-U)S69a`oJH;JAd_I^$(aH^_r8I@>&?djDjh)RNivmoZi z3^=o;uv#`17{vA+>gM_h`Mp1p1I`d7`FV#vkDyX73s(_^=_b0W+aL9zg~B8@=*@R1 zyU%eJb%eFNH97uP`Se{!r?m;zwfBCnPOtmjH~?E4*uTmvwIdZpW^S{07aR*tCuOE+ zb)dLMw_2l0V-VeJwn5W+E3?_k&e0-Ng{g_H+^T8<-|;Ft3wiJ+*@)Fp@)54b^%&L}vP<`S@EYms;iJPurO^6* zY!=_%*Pd&#<2B_a2LEpVmm<8hTwlA$96t@!MNIJ!aCx++ZSoqSf*&^v6G#-$Cu(9v z9i>tDk7gE;1GrqLPwc^LYGKD)l&@L0&7K_SS2>(MA@27JS6ZO>h}%JKO3*S4h4DkQ zN?6Mq9bWg;nkuouVnSBV1lh?bt(2>sh9pu+*kAEV_ocYsjDFk_f-iyO@5+7YhTTI_d1`Ny z;i30At2dgFT#HMFhH0zLyU@U41OhCI@Xrq5#@2mW6=beKr~xF4zTC5-Vb4I#=RX8q zrx0N8xi6gmVBn?3@@i|WdTnDZxS%ztwuBm)z32M-O#Rx-evkhtvw2J@Q&wkPBuyN_ zB_D(aWKGTapHS{31#BbiPR|ar?h=oiY}0QF=4|d+n}Qa%5OG{XzFR6f4e}vyXO_hW zbTdG*DM|(B=wx&5wzD@0&gM;R^yU|jLC(^5BuaP4YpNq;{J7f~wgtjD0`r3C7h!yWX1LD zMNkHMxQCQa)5D)bUN37?gR)p~htPuYggDeS>#HgyI6NF%4@`hqaFGvgjF(5qI`*`` z5<2c$W=UuO7E)%aLx75?azATwU5N9~5S_3+5c2DO#h&0A6S}uh(qO~A0^68knaJ|Z z=1G}vTBvukGkqM?CP^@??o2py<65RFV;Yy^Siy0g?LS*hQ|o1-;;EY@ajZurMw=4p z=%hwEk?fQ+w;HMm=p^`=pV$e`Dt=aW%JfWjl*ei7`io~iwhkZrgfN0d(KJe)(-fkl#OAE0{&s7-XH8+ zUG;rS25s~;1{+|gw?H9*nXJ07_29B_h3AH82RrqsN}Bk^hOW5wagcuX*h+5v zByxDX;Sy^imByl9gAlxKBK0nOk~G^163xP3pfzrg6c0!;O62;ID0$m{QYQ6LyL#>A z`BTWfkg+nF`H&Ce_B^7bE##o>cgb_efrDrn4%nnX_p{du8_+Lo8j~sQswr%1OfMVF z%nWv%e(LKK&~5ZUilWsI7m%YOgT2H9y{}5qEn`?WqNB1Ro|zR9N~=N2Y2T$8v)aLL zgMBW)2kY)fKHazUp7G~9mv3pv%{Zec<{^~`*>!rJ9N9;y*JpySgMLBsd%5K;g&x;T zW;~r<_M?VAj_HQaPv5!{w||}t;Q2D90oS;cL(O*v>oqT2etaT^Od-ixv45W68Rm11 zADq^#s{|@znnVx+$x0*LaeoH+__Db<(xcymM9FcG8vPz zBD9l`IMh@9!zP+&qKSttY73NlaaGi>KaY9g1Zr)7XoFOv|D~E3+}ByIq9=Q(n%Pfl z)5QW1D%j588#iGy{Sq%M3zrt$rv3cNzvUaZew(yx7R@H^+SJUg<(1o8st}R$iyey6 zqCE(!19>QDup*F)u-w%wbv^L95O|9f8Gn{QgFf~JulCJWj{S6TxA1X5*nMl9{nnJ) z(CIW_tM09SdJrsFCW*LKM}OXNUc)FTN|@_v!mW(aP@@kRMzm9&zKYF3rW!x5CYreS z=w$`V))Hvg?hC_ISZH}EDs9IzUZuKA?OE00YHvNMIAHk1=Q~zcWAAcERe2AaU#;#J zguq0k!<-+!`4(H79aff?>2}(*+X-uWgj3ATLD7z?TBCfhfi_w^gO+xW98Nh`V#owm38uL z#0MU0G1peix1EH)(TbvQN)n??roq;`0o@1m8(}XPJ65zl0yFx^Y}l%yc|;Ia1cFcz zMS|=)&?XM`7{qSk5ldH0>%bDdapLy{DU;5T-eC-FCPh7HW4_v7!8dSlU z##&(x%HNCCnqSuB!7B?y@#XJ+-_2Ok*t(ql!V0%evT-m1rK{ZM=*kyV%`{njaWv)UQK8>5{XM8d z8h?9$NjrmOs=Y}!9ISjSGeubi1KmPvhZ50PvR=X`qD=5*}qC|)9E(U8Y7$clt3VG~=W4soA zioeS5l$s=-a%|47ty!d~sT@;|yB^K5VILF-TL*bLIt!Nlj{Bflu=h|q9V>TLPD$v* zqUN>TlvWs_X1-&~#Qzlq!@OXa=gke?L=*S4FSxsOYmold>ABVyI#IyL3ODZLEVd1C zpvbN3{2vIu*4SX;WhvzV_Un{UkL>xt)S>~ld#Q`hgYumbqY$g3W%1Q=l!KtM-|Kra+ z%TIpz9AA0qx_s*gw|VLE{R6Q|Is2Z{3P1Pp$K+GbpC&6xw3_%w2|^ecHn#exqQ?g= z1S~H^js;f=dFi}c$1{L$gLHq@J5Uu%uAHR9att=Ct?d!_1j726$Rtw4;pChr#*hSt zepWPXhex$G1bDzK##!JsFq#*hSe7SF&-28Y1)e;&z~iUph(g0KEy!|9e^{_H$j9ZX z@(WZQ|I~E~{eFw+)Uqguo$c<;+-m+Wu63sG`6TA0&~1l&;<*$2e_wl@KmU8-$3Fmh z&ke_orR8g)P4zcZv0*Dm9+@d|D__`IQcyLN5gF)Z@U3eQ2bzyw>N3nMg2IlUR34r* zE0>^d-noqu#q#Rvo=jCK$An#+i}_!F`-~*`cgXp(gb<}g5F1iwN#okO|aIC zkEa#nh4A>9faN)Zh?+{A5HP-Yk=YM03p7tDy{Mzzb5)^Vs(t-`oky|r$7rI7Cf?5l zb$tY%YKmi8Vz;XD-i`O>7h3&~E{XY#529iNTSEv9$Cx8H&FQ@se-cOqai_ zalX4TNRg&>-b54kyeTN9*dAqH>}SOnT46vODBfHvIkjv!z2s##4=VX;K&XgkK&gXk z_dNxxbxX0;cdz-!&#S%Wfg}CZV>}43cVJpTEXo)(hC!CGbL$RTtzmK2UQwWEB?;{$ zA&DcRC?Jkw+Ht~sH^CT9UX&E29iPWZimK4c?WuRRhRk&${`t>5&8J^H!;YkCx5F9;tH*5T8g%dHCSwgrh?mnA{(tt~{7I7S zy6^j(doye4y=S^-U*6p5nce^ZAOJ~3K~&7VH*d$o!vnF9;sOB>M8OtBhDd4)hWrZ| zA^BH__$SD}*$jtlAnfoj3d$nI2r6WU!U8N(5@nbWKmY^*ynUUur}wI^B{T0m{^4d; zWmQ*ocl9i9s}s>P-BnpxnKv`tfInSTJeuMA4W_bRRXRAR^e!eIE=li)rpXV~g^+_Dw=K@e!n1hEg z=VHBp5IQ%z@Vy(b-h?kbyTG#-W@&a@=$(Dkv(H(s-YAb+g5Mv=}{BO(j8)|Hv6c+ep1gG?ek1QzV^mas!|6auM-xMG-_b!_b@L{ZAIl(J+6T7lDW~6 zwj!a|$4}mEVk6<=$tohFoqs*RxjyRnn*+vC4{`j5d%Oh=;}u>IU@rnYl^XOyCFUB z)ySh`#Fiui%r9S4`wyN+)Q8A13gD|(MI|rwO?6OnO;+VY?foil_Zxr*;JEW{y|yZU6T3XHR@R$e!g=#OBdU z5qk~b>ysBNoLP!UUC8)H6zV9YK*iWnz%r?oK2#86MgXzLV#6A+*#nj$)?pv}m@L>a zG2yXdrwPYrlJ7A2^>$9VxH`j6-rWO}QMYjpxfTVH2GsysZ0>cort-s6o7yq+N=1CF z%B|hj_vUNyOSQ<*PJ|oxJPUJyG3Z=rP8woAiI%|E5pzwsMUW21g?ZtxW3>G6NY-p# z$5y;|U?Gd^cYPQ&nH3oi5up;th=EosV|{a*ZkpusoM5e?R9*AWN~qc6N@vP zSgf7)vobfoBEoflw8kiJXPgw#3O-30HI&s|^U`>)*M_x@PC3dUNbEA^y>3vE4(&wa(e#5bTO|>;4w7=JY@7;u(JMg(D=J|zZ7TN1MjFHKE zeHS3CD(maFA%f-QWxVr)AS{Y=@WlBg{+nNZhX47Ge)L50)a{w_hFa@dM}kR|pT5%pjUFkxFT@@~;xbxESX9S>u+AyfTEu6coa4l76c$r? z^eV72!r}H~ejiX<90RLrxe=kOn^5o?TC+98dWGvIx;%cloJsZ`v{vUO;Ux`V`OzkS*XBr4Oy(i zN*y^ji`WSNmv``gaSz_u8Y~%>hX}?N`xY>N{i@o(|7-~6x*14llJ32th5lYzfUbo@ z<@?QXvf^+08ci+-XVb8FdG+Y`*5E(gfW-=YY84hL;e9)%3T?du-@PZKehR=&?Z|d% zc}}mLT<8^R8RM`~S!4I%TWsOU%N5QnTapZ7O7#u}x;YHI>d^wjvBiUhL+@QlqjE&T ze-fv=NJt$uPB`p)+^Am(YiioBkHhRgx^!+oSY`+;_}FaMvH!yJ&7J6gUmpX-Y@RELHOi~-!s@@c*wTJ*OqG*Feu3LCqg z*WUHC+EA}pUR~eet&PSs@9=RBMN7cji%+cT=bt;v&pva8m8BVWn%!I-M#c~%bYJc= zwEvPGSX;j7%i!oh5^rdiDjXq}lL6`Q;=2MX)#JUxIUmRm&f}fKdBuB2x0|xvXpv?K zog^bkGP+4htJCFsZ#4Mvjg(({9)9z$f=ffVs~)m6graGhhprwn2Wb}m5B+b$PgZ(O zN}*|FL+iC0JMjJYV5cj5>DhUH@!4hKSo-tlaURD~URA8+)aeV%EzIM+3!rmpE;b?< zEBwiy-{61yw?CG4C+jhwr#7{z4O;YZ9{>Ti+TCxxxv|Uj)kPE`7U7k5GZyC!i?b4{ zQ)Gf2mhv2vNNMf!(T4Y1Vy@n|6!C**!Se8=vO(o^9cb<93LXOjok*zms$#cW5t_A*fEEF>-^b6H;kx%6-w z5zd{Q!&#-BN#4fY}(ix~y_(0l9t>b73A%*5ULVrXImw2Au?T9`pPP z{Ji?_ZqhM^nf5$L4UFV|M@1=Ej)J;maEWl`@z@pB5Tf414Sgcomtr{6JFT8fsQ?CijbAt0S z5YuU?;AC9S*8u>v{NjCpuSM*982eQYV86<~Z!CW{2N=CajiF%J2QbA_uN#c1lBI?> z-`nJk_trVHI?t7hCpmL!meb2~)T$9_=5S62fY@P1?801?U;n}r>~%6;es_Z(y}6;U z-`wHdySuDycck1OcD`QW@|k&k;o1sc`OIY&=PEQ?DN!^Gz6Nk%bA6reUK49g?rNJ- zv)2&-tQks(l)?6*z_6FJP>f2hP%!}zTh2F1s9&6v3A=9vEVE$qMSnjFHs`(N($dvf zXtu**QnfZe#i`T$vGju_0B$q2n6LcICH>l8xysoSGi)^zHg-B#D@6MUG&*=s8k0*A z2ll%2j?87aEXx7VJO}B0P)f=H(qdvUBE43F68_0uEkTU*o;Ar?tUjNgP!02^&x?TZ zco*c8y?3}I97oqVT+?HK;#N1pjQ{Ph=u z0MlNQlZ&)3D_l&?MUAlxKITExDi4F>Jo&iZgjd$!)qAio6Y;f|7Wn*=i{ZGlJ`rS+ zoa2Bhq6Vp9pE~Z|xs6!M{M;(%16sZCOP{*HPAk#h`_{{nIb~XmF}11fw~svl zTU4sw+HFa_66xjTIZ#Nw@Z+~Le&%{i#rBo&CQ2YoD5Z6zB*I83t)s>H{(yZAAH&4G zU?&`(iH}_%$&_=eRW=)Y>~#|s>eWXkMqJ3uRBQwlXe9}ZV8W_GB^GXPB)mOmxpsag zut#&UjUJqDn%Mjpr+QdgSam4hQ$Ci`PQ>?nBs+$IS1=|1>p{oV`~Fdq!)E_6PbxcH zfUkx0aR0NRKS4JQm1!~|_)5NyZc@SfsNANI#3`#w!peyVF(w32`8b(z$1i<=co>W= zv)Sbc$L32}R@K0^?sikWbEPH_f{`GJcyV=}rP=B~-PrB?&QwWrYE%1&*%0t5&#tOm zSwx;bg?aHb=IUZdp0rZvI%uWnRy&_eJh%)}fzvaXzw-=iw%|wWU-z$Ue4Te2=*?ZB zj00ZvfcT`a0jA9`5UXY&sdivobHIS=gyVmB zHfcEiI9!H!vM-v@jx{iot`p&q>lMRxe*E1eA*$7T{a+2R+exPn@zkdFAl3p6xqU`hSMqP;?e;LilJHwDarMX7B|-#oLH)J?fgm3otfwC>KwE6$^k&E z;GMF*)4>?w>B}ei^pmIAY9{>X&3n9kyP-RK2}zbQU$1g{d4?CCSmpfcER9x5tDRwo zz*j`UL^L)xXg9ZzqNh*+x|;EMv;mbbJDlth@U{oWq7Ied&l(wXt&f;*G$zy^9tD6k zi~)OxWU&W(!S;9H6>4z+V7(7*Ln@J_5*fPLN6%pv8O*0mZE$RgzRTxM&g!rJ;^Tbr zQy0mc=iW|-$eOXht4I!viottNx0{lsUD7nm`$8wAX-bx+B&owW*DKP^ypnlEeaKjf z0Yk3pVe{Oa&HJ(jWHf(SBcu*HgP%>52Dc*aWb3ySicN0YgmGD!{KLyx}7#8L# zVU8$!-3qlx`Rvt*KYJtN-+af@?FJCGUW1*z0nwOVU2!ku_Wi;fmrn|@fQ?|c3-4~j zk8Z$T3eQ}a@yz*I8hH=vh`b)z49brmL`~@_7Z!iJf`}uyB;oFz+t~9Lsn;qv z?*rJZ0fcqlBVzcQKYN9CH`PD-(>Eo}{1k+p+SG4I6-V64iecg9{VZusoJ;tsTsK>(mY{b3IgjUvNCaOJB z9c@9W+6Z5PPSOp5*3c0+50w~RyVYTNp~A_Ojzy zJl{m+#J6WL?38~YbREcVzC2S5lmmx5=e1FRkuXEqoRje_jNteuJ#BtQCEDn7r zJm*(uS)Q-`la1ZZ?}S9#)cKj()IJ(nfD-Wf)JZj;xq$g=S1{L?!5efhLGQJ5y|_|M zeUw)NX$TnAfF>?PZz}N8SPfm?&)WJf|KYoD(`jW7?R$-ZE2k^HYWn>y zxfu)`N_H6VI?8V!zz)kmtOc?`WKoYhUp%bqG-3SVAJ%a_is>Xj0b5!+oGMx75GuVj zrP)oVKH}7-_CQ@V;oYsK%*K%}&s3>ZlslWs{H)`N^CA6~2Io;<@}dG35q_B70Yo>n(ybGM5%g0W^uKUuL7 z(QGu?+FZwH8OBt@CS}yzzA@jWJZu)M z2#J-v zx>ylnYezahVgwOGmN~keE@`(*x7(rJ>d-iE-3{NM`)5Pvp6IzKZl^EW-opSM1g@w9cbzBAD zAx@DzU>5AiZ9lq|+`V|gg7ZqfB3LVQ5{HqDnu#U`+V1aol)8gaURzI?<`ekOCC zH*U3=ug_Ag7@RL{r-S(sy^qUbMmf*JuMPPG<3QK4xNyA-9|pm&QpB z`%=(1G5{DCDQN#b8wOvCz$Nn;txgx8d90Nq-(!N}Rmid$sum-CsiY)RF0EST>VnJi zDpk**l<*iJcI2ZbV=v7FPOqVpbjh-mY9+?y-(r9y^ISMJ$MQlIZo*VXb81uj2w1^- z1?1|onwQREe)%fq*;8mEMenxybBjo*{3;^50_1dgpHydp>{79|0hJ~r9;87pu`dn^mEcoiB z-wRfQ%z#fE`d{wA?LD}*09O`6)19L-5DOr8CW2>ADBoL?ht5=++DGFNHE`kl94|a| zn#Nw2YHYZCewm+Xr~JvEy*1Qd?!o!U#=z3N?J0EY$Z$^|SSavuaVO+MyYs;SDl7F2 z6ChO=;MW|yZ+0`8=98y3wFj6}5@@FxZ*MhzyI!$huSF421n=B-R3f;1Itnh(P&WKP z;5C0!ibDLJ?C}0*a-{TdNp9-E9^C~6M zE|_%2!t6{HmwA5h@-5zYZ-d7#p5W4jrF}pwIYX=1vk@>h6dvz&Qkw0wm%kDEGNC=sVp9 zVZZx!#JEo~kZE7EK^9qX<%+Fp_`!}Azyl@)rr0AVy zn0&?Lj8IpiHuxNLE&X`GlS}> z#Ux#^m|uB9<&!J0(GD4#M8WvJd~l(6=3GC*E?)Qf3kQL(F05qw$_D&!4OZ&##1f=g zK0XIcz`Fl66Gt( zrJYVIOr|!q2WhH`0XAFRZ@ja$_w~nD7BB+N3vb*E^wo=}LiVDFp$`LI3uWAbW!dlf zIykA1?fY8H2^=ClTx>eFr|7}#*Iumeecn%Te?y>N#|Kg3D8;)NRT(H$FJvp{>s2&U zzW?$aUVnF!$1k7c^0`IMo?c+K7Lhr{Io~Tl>h&f>u;!>Uz9PBSZgXdsjrF^@q>VL| z;D$y+YaRW9YdJzLqsRvgfZ1h6tjqT%Za^;d$ZJrE1*@Z-fRWco589s$y2d)>cQ}Pw z3^P?|cSEo7`D)Ca#)tp;E&Bh?)FPh0x}w)FEMbk|)f?NqdSmMk*0M46A3lu^}t$yuS1^?vfPGlmayC0!$y4(rg8U@^AJbynJW=5 z*F7)acKomZUis>a@bp=jtwNgszE%Wc1IWOJ##h`y9|M_E-$YBTR(r5YGm|Z{_(4_ zvzJUk*r`p8DF8ci!nw7(CzqDyv|b6#JF?X=e@y4(k6co!UX4O6 zgqK`pFx-5L^L4hj+YiO}t5u}$gXE9>Am=srM!eaVi7Kn}9CmvT`*8!=u0q;G{7Bz# z(vy-2$Ka^;f$2{72o5Bu-6+jgHUu1)o{!s@$`4O%Y7Z~3Bye-PDfQUurR6!SQBo(o zcEjNnE}ynY4#KJ&47}n)L4N@8_V@RZp?Fb;|Byjo;y~%)>>%l3e_*dt$rqC>moGjj zKjVSOq@*^(Wfey7w|WWt`FaI)%J+YIo7dmj;PJ;!a{2rcCl_Z}n5$x~kY$d{1thX8 zEjsE%wdZCBa42)0#`YH5_wM3chP81RgQ&EajR9YenqwSbwhDs{SserGvmWP$D_q$l z^n$(Lo7;Psoe^g1LbDzEz|K}8s*$CeeR#{4ihRlPT=h%8{#UPm^RIpSBC|6U)I*v% z{>v+Of9((cSM-+mHfdnM)<;u7xg#3aGf+~yGJ9yS7Qy{dA7E;+1cG; zXM2mxIU*YoS1P@Us@x}ZSV7K}!m|P3)eR=oh7|-R248*u-ev^&TC`ZpaBMeQWNC&q z_Rw!An6QymK5^bMQ>pOEt%N`L|1y5=3Han=A#6mO8_7>JgoIZW3M@||9VMDIrZ+z}C zqR8m)ee0EL+s*EqQxJA)A9tGquwxv@c9v1g0az(J#P?zLeGdE|#Z>oDLEik@IG6Q9 z4uK?f)a-+(`I-D+42Ei4q22BDWMg{ct$_`((MY(sQl)M~?o0e+z}v*R92vEc>QK*M zKUmE*CO|0{QTqLHT-e7b;B~0iYx%QBk{m9LAz7ZMH#sgabUzpU&k~ohvE3kbE=ZV6 z6d^;>t>S$je1%+%bI!0dZ?Hx}P-ip`KP5Du&%tNWA#lA6#>(ij10kq{9vCF$LFB$Z zunNB3=*R#7AOJ~3K~!plZj#{Alqj-2=hXGRpT_*~|5%_W6Yp_^c? zF5>G~Uef>jUFA+w4z21a#-gWvF`0fh<(Ph$oJ^sEYnmnsRS#gM0Vx;eCpYBBD4By;Mhlu4V76jIWLaUd_HKbD)puMBu9nKVI@4 z)$9jfB`<#2ZtT(AYvuXIqkV(PpP9s4PS4F!zgXjywI=`hwS>RC0jCzBo5G##5O!K? zxw2Z}sdF`+y*R__LY2L?venG60+AI|`x@bf@!+W(dBGaY*A5?lS&mq}vax;-BZk%0 z6Ns37Agp>NQOB1*eF+hHqkKl z^+y`r<6oH2k5dL6I7m=jtzC})ecGr`7PgQJ>sc1*mc;5fm z>sZlXKUUL!)OihquEW2N1YV^tdo#><9hTue2yh(8K^Kz4rXTPOOZONNk}PF?yFr?! z7@6!@565cp8V`g;l7j)KmnzgN((B=?y>V82aaQ?p6enG?|n^F(otvnCa;ET`gpRwY2!QGh}rR z{lW$KH*dgRdT=I5ftd>O#mBmja zg#KJFso?YRP4gx{iT*a3`v#fjjem;%06LyZQmz7=&fy>Mq!es6yCwKhddZ5JdQ2h3 z_8`|{1v+V-wATIpc)w^Z@15YvuMYm|kE%gD{3V6<@q++g^TW)J=*tygz)=DdnIK}3 zar=_v#6I^QlugR=4f39_-f+2eTq%o&>D8n(rwrJsP3@uPlmtkf=k@g+@rqtpoWUA! zD!lQY;xosEGZ4onxIGgBufxxM?~6S{OwdEX*J6KJ4zNxrJzNxhs0f{QMwYp}s96q< z_YtZl#oI1vRy%xtD*>_Id0u;Gou9sWmxcKmE}dQA%*q_g%XOCKtJEtoHjc11?;@c} znkk(mqt#82BqQxK*lq5RWhs%dSYz^hO|A$dvX22<#$=B&dyZrtEBpGb-q%!|yVU+s zxQfzuA7*Qz$7SY~dK@uZiC((52Oq}5Z;=2DefFu-`jyXIVyoG~iWw;E-)wZbxH`u_ z`r0S>-9P-HzWnZ{6kyXw-HZv(-xC*>^f$lq6if3p_BtuCH6_0`$axzPn#~q>*VfqG z*~VIfv2l2|R7cKVrsO;B171tWph{`J+5h&D@{I%6-Q^-nX0Uj%ToWrII6OPe7Q2mB zP&S;{l@pvsB$;KtZg}DR0`F|J*l1fmO^3r=C}?p;(ptE($mYX*A4O8#7=ndgfyUBG+Q zfBwyvrO}##uv7c^+7y62JYJ{OhHj?JRHP?KaGV{w36cp9DLHE#Mpleuc zOL2nFiC4BycP+;!1rH+1t520uj#ih?K5Jv#D*;-iu2yF+DT!# z0xz9X{?jelH!+vzb0f&7PN_V<0*!6}E?u6~@xRq}lXZKjY38hP}s zZTRjTI8lS=PKIsTIWXOE(8!?C31hfd(&<>JAS*MpN0JgK0@KcYVZlD$;^$4i~ zGZm=BIf&s0-J0Iw=lemW(*XGHrGc&7c3-EPew~(sP6{0l-2~bW-Akd9LC1ZWj{6p! zl-|NQd~Zwv*$-&)4rXgH`)ke>=iSK5dB3JWCxN|=QmYJV_xgSL7(sg=?3hf=kzM#w z5r?<|5zJ$OuZ17!2mQYLjw(uV+kLZY#~jyjnMMyQhU=-hd)R7ZL8T@CvI2a9%8Rhjm%3jxT@eC}^n9xx|gIGrycr8b%!xEjn zcwGkp3y~4b*f9x$!@*ZSc0WCKttgQgTJ4N(>M+I}2vYR&2BO4qLZ%Vwqa)3Yg`ZWe zMARfAO)`G^#yx)g+8QU8Yg{9;rd~l%LKdL*T*-n<(#bx z^E1Nwjv^7v)*@^!LHeNzyK-=GdA|Ck&pvY&5kZh%Z{Wfzk!5!;;lk=1|LAXhg5Uka zAL#2hx87^-`oygM!(V=eD`ywk-q-V0bNN}=+Sy|5?i#IDi#QI9a#1}Hbk*T` zEPph5onmsur{R=YMi6W=f5C&hh|!$bK-0XkWb9o}oT`mM?)97BiTT!azD zIk3iZ{qzE2JWGqh=|#)Q`50@3H1%{dWw-6HB3SE@JnQH%gA(h0$c2{!^1pJxBqjT& zr``*>thw*yPeTqBRqo!si}x9)PM;;RG7^N%9DMm_F5$e_-}}}p(rl+w5O!)GOPd0) zW9)9D#e8iM10*T@^u3H{E=5#g8CwB;SW@Pp1=$?5!W?hE6I%&vdKlAaQ2~`?N;?UX zGIn4E_b8qLlc)vQN2Y^8c4|*wZ#Ij{elH4MVpdK zZlsyg>ZT-V!gjMwmZjJU!S~+zE2LSBSBok2e)T9P7b0pE6G%!jn48>BdMa44rGo_w zeVO8sfsBs0ZOhT}h>F{uQz$~x?a*$wSy-4K=mTqv&}^lA;_3?j@rSqcy|so+9i6F7 z?L%TSF*&vZS4$CtuHu-%2*dvLpr|36<3KV1fUuP(vuJ>}JH*|+c)f1jCE`KuS9k*|wc(Tg>g zAucLtnAJ=>Zmg~snDx9ps zsafPy9a)`$-jRbbOu+#k}z28%`lLYo~qboGh{WQgb`Z%51-**!cE}xzcx9mVm3T3O&9cWYW zK>cF}@2;ghbEy(q9?N*&-xL(n;<23sJ#<5W232$9+*tv*h(Ns(fk3O7@|WB9aNY-IqS3(4%1Yt- z6E&hrg)Av_#LC6ic}0*ac-voCOYUAz>Qu&$OCd-zG6~QFUxQy+_y}&&HAVZWhog*} z9F&O~y3xui%mcsWCs(ft^_t+f6|bJTO3Xs7@};d-_gfz-4s0&t_Tm$#zWL(yRhsQQ zx1_`O8^n>J*-Ciq%pCvtSDxp8{8vBJx9{xAhY@%_+^-EDgZIk9Y=wXLm8W^}@l`f< z+f?IdkohWsthBzq!JXT;08dR7sQ~uWFNJR6=q4%6ZktA{OMFaKOjRZG z5t)m7YJIBEPCZL=hO1|*WZtvWb&%(|jYyANq$Tx4Q|iMFrq2j2Px`%Whs=(7=G|bv zai7m=!aM!Va{5UggRb3M$Ek4c%qgt3BSBb)=dXYEGG0~xk8iyy%}$CD8R-8zwW)p7 zZ3@7S33YEbT5{>cyw>wc{N3B3zUJwR5!HeT3r7NCWrAKtM@lA)4Bn3+rKJ;Wdz7S% zJY4YA0&C4IFGSo|hli?12Ra))BF7|m*&{0?B0VRgSXir8`fHs$+T$7-{0+V4M+9c3 z)GI~vTytc@qP^GgG`f!6Jx`1G+u7x{aSIt?xPOmI-+NT^1JI2LMFh-0BrF;pT$ z6bTh8#MTfLbn`^C^nqW=0c+=#B!xyRV`ncTN!zG)Fd`F!ujTP@-lA@>+SYrRn-OLz zc}ugrBu-1!al_+048}50vn>0hJ?I5@9IWSLdRy+RI#vRuy3=ZsB#TtyxZelX2;J24 zF}cxqGoz(>0IL%t9x%hgZ;CMK{r0cIn3`UG6c;8p`}wea718@_W3 z{pH8u#Z$JO;&z(aS>j6A0`s9?ebOqpAWU-9&D}9P!u%K}jRXPPNB)0g>p_^^^FKb~e z0B-GtpZQ9VXTG!u%QZMV69CuM8RW!VV74YX=$yF#u6DCQHmfPk@Iq+vZAvHU96fFK zqTJe>l1_gC()OjG`=!GrU^fR(jTJai4?iZ4zE$vvgY6F7X(_i_=++)IvMqMIC+K8@ znZ2pj{QGLPisj;|dDQn4sf7=_y|afAGtl$uK~5QWwlmJ0h*+94Bh`9F30H<&+ztBj zM|Lb94Cp!#E4j(Q*F(Rvlu+{fJm2x=582o7wi91bf7CJa{pp9J7g-h{$nEuR518oZ z-b`<**zKnKm3yW(wW&R{98)2K`{w$tI2V|()yPt*D$SPi@;e#l+J^Hh!dy*)+u%#f z`-pjGAM4eOV8)J`KOP|XTBti14J~jwsTz^76SHu@#18smku^*b^Mp;IfAV>4O1ZCy*a5Tya14 zCLK%;^;IoOZ{*=aHHO*Q5Ef)!nX5$1R^o4NwYu_Q@ktBz>*8F6&pvgUTE)^$$2V$M z6{5({Y^Pj1x5PjGl^6IQ{^0w1bG`YI0AT}=FC{jqa&n>ePyhaxpZq63|H3&o8y%{# z9Rgp&owc#K#oe`A;cu~_@PDYc=s?kkmO>X7=C8;IY3AA7&1iNUyG>84<8T_7l$le! z_q}kj5{2tgu~4npkbAU3r7Bb+OB6#K2^ACak|87&)bSrHAJ^C;HpI4;S&3gCR)TZ`vuqgmL z&MEQATN}GPzOqPcg<1vPy`zZFcw8wxu;gNs)IoIQH3P&bQ5T3Hb5paB2+6-s~PICWhOS% ztAa!(EaDQX*dRPVY3Ar=j!pubI~g9&>Ow{w30{vkqLS+J>Nipu2ZS98#DRje`WHuqTWbg5Nqc%RE_YA8ymS0bLe zw9NNjS)-e}4`D}^sZH%;mZ6IbtmYt`$RH5t2{N^@z!S@GVIJOT!n?cpfB6&S2Y2Ah zk0IAr!hYI5uc*;M_N&lmd1g5?RW4N}Y{CHi0w!Zdy zmdev7R6cz=usEY)Vbmd3e+lqa>9cJ$UqD=uz{}6QV$c-W?w~tu^j-o#U5C4S;r*2v zvEZ84`~WXX~9B5#gHi}oQUr4%UbrCRKmhoM9>8oD<$px z9u=Vk#1;W=p|NW7RoN9|lv@qh&HLEyB>S86 zOegzCm%tO@g=;IiFjJw`O>>T6xCotY3ci8J0^Uo{-*}*LOD4R0BjLqsRVtB`WE2nc z4dr;wIS)ozrNzDGGPGekV6t#y~QrSkoi7E z`?S?#gRk^m$-~kj2d+EC;!r9+Kgcx@3GVNFEyxh>G?i-AFjt8%A|IOm;+nHxKlQ{Z zed(!F?CvE22s^+DPz|!y&33|*7nk^NfAs}^_YZ%dw>S30ir_xLi>nM=R2lf&dmVUw z7H2D5KC_@-{oG@G{@Jta>?KqplaCp_iA2P(v(wzc7N|za|A!XpR+V$<_R5bG(S1DkB?0O*aIe(+q*3hM6aEkCyorY7~WY6ZrSCtmZiCV_1CBg?KsuklSpaZ zxBT#fOeXLEdMk|p^gs*0%Twez=*FI-(e?qr8zKK-%=-hr_OG`^#N;C=JsI1%y2V%- zP%C^C=EvlWdbwqWBxu~=Mm}e;sw($(GTvM7a%UqAV6zpXiVRk;jS4Vxr$I^#)#5w7 zhi22$P**5iqDF~~!PX$e(ANrRLm;V=$rxJRcT7jn);YiN8v4RYxV|@<%DcO8y9JwV zq3e&BZJXMIGHZpee*OxbZiXpI6*^UJ-`k*8P4KkobgOu8A2Pa)`GfUmBfn4UCV+V{vDP_R1j<5lW4riXfa$B3^KtWj=mCOtpAcaIv25Lhe5 z3R|t@x2OK#)TZ|S}PMr`=FAMW?f+_ry zay(i9uV!@jnz5``?QiJJ{eiDVy;!L06E+*3B!y_^I4-bY#8Zvhxd2M#{`#UGlmxZH z#!kkWWy7iE2z}M^u z;A=VGcog>QAb`I=XCb-UJ6jWGYr@8EkcOSBM9jny%_RN6yPyF$Qf8_VpSZTdY%ON9 z(e3+jxwNh^A%D_uB#HszVePVkSu_6h!{Kl-8G-E7IjmR6P0KXQZ|Zy8h_?2oGZ z`lT++R5-UXtLIndc<#zcKK0}(D~olu8wrs$Lz3ExF%f%vEpFbqO_Fsmrs(;~0F%A= z9v$+jjDR&lvy*XiJ>k9egjUBxFjrGvPaLa>9oj$X(ZJLbYPZGVQtT(iafG6l_=- z&-*%>Dzcw=jT&_;jna^DrE4HwxVOFm3g^xq48nfx=dRL8oc_yy|LR9lzI$p@8|iyY zhu|Q`Sh%&jC!l(5Wr5gQs{r>zo$F@|bn ziEI^-7OL*p{nSDZ-J{O#bL27yCze9Raq3HIl2XDxd>@D{D+v|-SIPmKj(HyMcYe~6 z+iZ-`+-tDdU7%Kt@#=dHd761Hou23E$4>Ct&7G-pGqtIG&@*x;tKVeK<^byf6TB^e zSO;?z_~a_A)ZyiA{2#swZ|`Ehd<8jKhprEklFMldE}zU?)(0zGv6zQ4`XFVNGhYkv zRdW_;mQU0(F`SxFZtY30WcT8n%K3TNO#}N?2GeVO2O!@^R>(1FzoMlA+I8ri7J7FN z-r9jTck;|Y6?y6eJhq5Dy^1`(1Pe82B>`~VO-gbM;ng3 zi}uQQHdE$i;IUJcko=Pm);LMYG4e%Q>W2)z`mt%F{ri7Z?AOC%g5${#7wp%aW{T=y zTx4y3KFqw*=w{!TKDkqy+WTWZk8!)1m%p0c^EoH{A2 zEDH-W;hD|~S>iFk>tT|^nxm@TjG9{}17C|Tj$>Hc$=GXU%v3!hI#!9{z;z5EvJPYR z=%h-P)_N*p57LZ*ZmQhebj;0IYEj<}9+np#jOisWFfR~r4o6R=?}rtmD{_=o>40_a znBePC*{@=TbB?-iLDW1aQjKAz9^BSUJ+sxAxoWJJt~1^b^-sXtdH& zYpcFG+B>(la9+9o*b1F)TFP4q*1}#V~DabNsV^{TKgqW2f^w5319z zqqGc~>ey%fpmUBRL$zX=sm3}}iyX8eu+;$vBLS4dD6_&>ZI&66QaoM zODJ2hwA%@{Zrx_D*`!j5ad|toLRNVA-Yo7dRfuw+`p!{Fi`L3R&)V#{O@>4$YLbf6I+wi=|0BTH;5frvtiQ8SoSo%nGTaCYGN@gCv| zEH4PD(}6s#DJi6A;VhQA;Q0K+51U@iecpHD=BEMtTuW@(g59jb`q~BpoGpW}G6=#N z5x(|wS9$flE&cv$_rw?}6*x?7Y9CFT0A0|Kxp>;Jyl9AQ?hyMte|bcCspCp%$>=3_mVy)C(zrcdvG~oV>Jb%>#PD=va*TdHJs1SZhuloT*LigJ#8|SdZb{Y|ef? z;^%A*kY>R7`2fcLWDCA`2Y+i1^R>s3%kzO1T13Hxysyha*dFqbGhV&#uOU9Ki1FIb z^tc=>tlA)he0wiU$a59slV^~7AFIRxFBLG<|eZ77u%L*SAh?V_d zYaUehP$+9ggRtUD+ZE1+L2{`u5*N^{nuQlm!E?ZSyKnH$F5GEtvE4mE;*OAko7!=# z5?TK47q63KuCMr!`xCp37Moj}#8F5<#5RS>9!XNiX$1PQ6Qo43J6N!KWclHI-gx^?0@ccBn9IV=|=C8XBtIM!?5nJIVL(h>8q8|rJMDs1hhv=h(boJWk}-Q?Ms0)!P& zYH^DW7H=yN-@w zzxJ83I(DZ;&SS0)b2HHDDD~JfSB;_Z!FM`~)>v21EpcIGj`iI(Q7*NoKqayn^1uJvpZrcYaeb-XNuLAB)%1M7 z4{LcCtrcpOhnzPxu}0`58SSoPW2X~jevM%5e(=>;Lnq0&dFvKC+dEXE3O*aUV@4?77KItc z3hl1)-g<|(?sdo#s8{>>Mk{3jBMGWZ8WMoM%*$4g0VdSZ$son#s3I7##KusMV^D)= z2eH~?_#b<&LCD1Ji-xNaEY8`WwrBctZjq-f#y|jV=G+%TMv-bSXDK2%0Goq(&ih`1%>n8? zKCfI;)sO=7I%XL1yE=C`ZJvydqll`BN_}cQc3AWH7{Oi0jRvQ=fR()uGCDKWutmvF z7yv#E{kDufoHgG-*bm4KKkow<;V6LnP*7BUFA%bXteeu?; znDr_alT1rCguAipW$uRkSAQCX~*WbB; zHPTD8D?)5jY}M0oReV-?pln#ptIuD#*=2sF78ncflMS$4bN|&1`KCt&Ug6<`ul~Ty z(_rXxEL9s9rjNsu@BM;RH^Eq|fz7RqW-CR9A|@jdVDf~Xu({V^T8B5aslET!0}w>m zOHzJ%cS}yq)i=*9)R&iPRjQG}RFzHwuiaFZc9hdg!tAV2pAn)cZy$d^ORQd!ywt{Y zSYB3okj7veqr<@0(7NaUXYb8}WXZ1czTdq!Gi&Yr?fbkpD`p1UfLLY#0w6$AlnII^ zg%N3s5waH0k}O9!9176>Q}Q2FIKmN*upI$}#RyAbDS{L&QZy+_ge8KcFhi^aF#F8g z_t$$@*Or<09{+JOtFo%A`&IYrH}hst2Qlb=)m52Ux!im1`Of!!ilv5SqiKnZXSH!p zHbF%YwoL~iNy_`)u#}I7*B34IlI8dTGeEN2d4ztOZ;~wa?Dbg7c%H8V*9~@NOJ>)! z=-W968IRtXbx^A+Y8AysQ*ePWT@I;+0j(r`V4ppuJ-~Tzw({+#9-60{*sPwYdN;Q* znoGCWxw+K9D8<)aIL}W#_b>-$%f9KZP+3wyoH{=F)G;pKYRK=ucu^Ux`i#{vB9|@} zksc5=Q!8;`rYzI7h)OA7rdDF6UShT$F*j9Wrs`i0!+K(2WzW-@L)<>M}tX`KB(ly=-mI16F}k zij|F&%eOi#Z6uUKL%HhP#B>1w_x+}MUC#EtN3Q5*^ZKiG8A$EH*<5mYs|i}+xU_E& zG1_1PO=LpCjN#!G<^(Oud)eN@!>dH&MEB~ABHn6kx~9=e0t}q;BZ^(gJ zHLPY>s3Gf7&_A=#qpzu{dLXJ_iWB{A{;+h z=NCWyu>8g!ysV5-SUX8hC-L5m2>?4*F~ftfw>MjArPJliTulzvDpaEo9XJxFc=ck! z;+o<3LCtJkQLm_;o!NGS-WFSkT@(~{Bc(NNH}~5mrIn6--u(x<9mmqT!-|Zwv=S#o z#_U;+cHfeCC0OURsFhZvsc`aei7517nA*XkR*E;om|65V-*yzxT712CKV_1`?XKm@ zV$8M0m`E#X^%7bJJGKhiw|%eC>}X6OQS;kZULsMziNj?Hlk|YjM#>Z3%CzyOO5*Of)IoO z>y35h+SAO=Oq04Sb;}m3&IuoT;t1b){m$oC8{MzFNYwG&#sA&em zra3s7RsEELN`QL$0IHj0uQ6JKJ@+9}8Q9o~k?U>bLI%7FsMFK%^aA?XQ*dq$T8Wnz zUhVq9Hch{6c{G4ty+FZVI3#BxY6>xe!ciK_WO;Vi@rxlzvi0FMQF1NdiH*dte z?^FqKswerzeY)Ig#Ks5MuCS#rCwJM_Fz~vQtR@A^?7f1oTh>cENDuFo{c0JH{i+xZ zfb94kEL^?aWms`WfXI}{+YPM<%gv6O_`gnK5)W9tDSMvpY_{hYn{AFw*W^&W!b~|N zGMYdO%@(||Db%atWr=H^5gUg6{+DrLn&U6WewnuqTtb=vi3ij3DnLBeI% zlU*`j#|2;e^XQoMMh9W&??a7~o1PQY+M}AzygzAuilpmsc;Z zjOA~cpQGG2_Rw5q<-kmJ?!>`5Pn??L@l*30KUkwu3jA`#I;@l4e?`zX2Pj+Jgl4Ds ztgC_j`JbxShdKbbZj+m6t-ZQhtIe&OcUW6pAv7T(ZUDO*RX6iXAP=D4T8+7Ut4q5h z%+*S0rBR|st2^d>qssKwb78S4tbAT0;%pzWXcy?O%?u+4XU0g~Ir=-Jx?7$nh%dgEY#+(9Huw@u8yzaLD z*nmgzt=o$z6eo@zMtWegzc9{06lgy4q2qk(wOjJT3(FIwzDc~NV*>A!wJ*+AN(4rsOR&gz&`eJ$>gBCK?63sLZo$_*OKHKrOKBAW zr*WjTc2i8S;%k-{Z*)j{G9RN7XN6Jv9amTr>36~9KM&1CgrVwP|DB3Wirp<##=*{H zL~&{O4JuoFY&KKQ-|Vu!X_={(2~{o?!64|HC2Dz%diXL+q03JT1etrhWHY~H3|XHL zSh?gO5b`n1P$RVCSd*F}$zatcUL7_>13idn{Z4b&jDpa{kW6j-}bSRH58F`Wao z*#YK&YCg=~4TQ}BR+|m>dW00Q6kgMeRCMmo7pk93wX%!xfkSY1?u)##C|uhd^oX6r zp5m`O_mG@CG)B zVSM&$zP+1EDV^AD86vd`Fd6u&mEz_`lV+Sw9^Oez;z6r7Q7EnpTwiahJB>CcW~#DK zuP|K-i2_9+LZ=HCuL+fsaB#*;6IUt_g_%#R%~Ck!fmgL<{pxd;QLI;nQj4NmR{lnZ z?;A{=aQRk;jm-pwA`DWDcKfnY@3X%Ym9T?WjyNqN&WvQ*?IoN*U=)qEdA;o zN%urzwquye9CY)MVOs}>8fJABh*68Y^B7l zjW+26+VL#{VW4^B#4PhuWfs?31cB+{a8Vd=<>m^PZmd!+2jHMm4!L<}gRg(Ns`QdLcnOnW;@~dff|4PCm-W~`K|B$`to|`*K%g-cIBx2Pmi3Kl_wus;OVmq zJaKA)gR^DY-IQ)(*=#3lw32~ZlIq0m#a$&fex6T3O!INqpkIZ@3DR#!l0(GCqn29oDKReH+eoN z7Uz^-8fm|XGWoMr`2Rjj*C%fK#{)uSEy$Ru@hl&!?L($Ik;drx}ce@c}Wh*ZPc`r=kuTok{jl*c&8~ashXtXTL4G+@kZTv$^k-?~U-ry?D8j>KAF7t%Nsk#3ZR^rXG=6p`BVUZPV+f%Wlg| zs>F)(vLync@?I0hXab|N?y}qy*E25yr7*b{1!OWP#&?%V<|Etlbm;pxsG+;t1GW3( zZZO=br;PW5QO=)VUCes6VZ-hO$PPb~Jz(}83!kI*;SjXetgLP@Gd)ecR>j)1pM{GM zg__TP_yjLsT>katjn1!4Sg@0r!~;@sQ@~vGN7MojoEpZ{6&p4AlWCHzCm!U~*%+`M z!yjJ!E%)>1zNl&j={OG>T9sARGJR0Vz*XBD^t0ck57N3!mbY!;(uM~{ADu-Kml0=W z#6+k3>bsS|(k8sM20vW#hyKVM>Vt>T&z(S>m_==LVKw%jiGtA@c-vO$hJFtUg{1tP z8ju`F4e5idy-7hJa0M{7FcAc~e6sWJGx;h%Lq(1BrI*c6f)xbbb62v@D;I`U>1?D>jp@mDWkzH9qmw5&5g1euQ?M5E|WY z+!DC6w8q72HwXjm?M$}0e1bwdp&WM5#uD2ANz1s5VZB#IZ2lO$bv>hmG^?IoQzS^-SgWa)gbN{_G6>cndM>$mx znW)Epbs}6{-Bgpud=is*chsCx=eW4KscvnyIX+X9*-FXRos1?h4(s6BqHt$bn45vQ zx}p{-!ZPSkpH#f`z(4;S82cYPpxqIc9)fn6s^FbC}~Ha1uJS~ z?Pf1?S*EN{6eVcmh~tPbuR`f(QKTb{U$iH2|K~dV6`3JIkBQ)=Pv&fptV-z}4&PeB--U_}nMX5k>}UUDo{W znX{YigeT7|@Jm1O=$C)v4_^7TZesfiXv5b^V1By%rB6P6>?=R}>_eP6GRjZJNj+%fL+dbe-V^UE!`!zfIT(VDOAhKcTK;QNEtZeQz-14}&P z*}zGf*Gsq78%JH8?Eu*k!^!w3?k>l^or|6x<4(#Yt(_Ha-d<#GYMOE->e)Q{l7)Y6 zP92)&KmXLj^3VR=D@yB}NHU2@ytiTk!0st2_H0-uaB-!fmYN-o&D3PB5>YDxu`8B4 zYZ)W)sg?eBG_|@Lr{~#$~^bVW+XBkfRk`y`A8a9X_Xc z$K{7Tu$D`UNRRn&Y{C05$Tr~daN@t$;@VwPs(ucF(LQ+#l)?(MW5>#-<@GCV5*y&0 zWuvu8qaD*|Sz7MiYq7aPVm*SXYDm3OqF#!KLPKC6P#U8ZVOG@kgewoo3T$CdsC}G_ z-IgMiV3fjTÓ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

}(cO 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 z

',trigger:"hover focus",title:"",delay:0,html:!1,container:!1},e.fn.tooltip.noConflict=function(){return e.fn.tooltip=n,this}}(window.jQuery),!function(e){"use strict";var t=function(e,t){this.init("popover",e,t)};t.prototype=e.extend({},e.fn.tooltip.Constructor.prototype,{constructor:t,setContent:function(){var e=this.tip(),t=this.getTitle(),n=this.getContent();e.find(".popover-title")[this.options.html?"html":"text"](t),e.find(".popover-content")[this.options.html?"html":"text"](n),e.removeClass("fade top bottom left right in")},hasContent:function(){return this.getTitle()||this.getContent()},getContent:function(){var e,t=this.$element,n=this.options;return e=(typeof n.content=="function"?n.content.call(t[0]):n.content)||t.attr("data-content"),e},tip:function(){return this.$tip||(this.$tip=e(this.options.template)),this.$tip},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}});var n=e.fn.popover;e.fn.popover=function(n){return this.each(function(){var r=e(this),i=r.data("popover"),s=typeof n=="object"&&n;i||r.data("popover",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.popover.Constructor=t,e.fn.popover.defaults=e.extend({},e.fn.tooltip.defaults,{placement:"right",trigger:"click",content:"",template:'

'}),e.fn.popover.noConflict=function(){return e.fn.popover=n,this}}(window.jQuery),!function(e){"use strict";function t(t,n){var r=e.proxy(this.process,this),i=e(t).is("body")?e(window):e(t),s;this.options=e.extend({},e.fn.scrollspy.defaults,n),this.$scrollElement=i.on("scroll.scroll-spy.data-api",r),this.selector=(this.options.target||(s=e(t).attr("href"))&&s.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.$body=e("body"),this.refresh(),this.process()}t.prototype={constructor:t,refresh:function(){var t=this,n;this.offsets=e([]),this.targets=e([]),n=this.$body.find(this.selector).map(function(){var n=e(this),r=n.data("target")||n.attr("href"),i=/^#\w/.test(r)&&e(r);return i&&i.length&&[[i.position().top+(!e.isWindow(t.$scrollElement.get(0))&&t.$scrollElement.scrollTop()),r]]||null}).sort(function(e,t){return e[0]-t[0]}).each(function(){t.offsets.push(this[0]),t.targets.push(this[1])})},process:function(){var e=this.$scrollElement.scrollTop()+this.options.offset,t=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,n=t-this.$scrollElement.height(),r=this.offsets,i=this.targets,s=this.activeTarget,o;if(e>=n)return s!=(o=i.last()[0])&&this.activate(o);for(o=r.length;o--;)s!=i[o]&&e>=r[o]&&(!r[o+1]||e<=r[o+1])&&this.activate(i[o])},activate:function(t){var n,r;this.activeTarget=t,e(this.selector).parent(".active").removeClass("active"),r=this.selector+'[data-target="'+t+'"],'+this.selector+'[href="'+t+'"]',n=e(r).parent("li").addClass("active"),n.parent(".dropdown-menu").length&&(n=n.closest("li.dropdown").addClass("active")),n.trigger("activate")}};var n=e.fn.scrollspy;e.fn.scrollspy=function(n){return this.each(function(){var r=e(this),i=r.data("scrollspy"),s=typeof n=="object"&&n;i||r.data("scrollspy",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.scrollspy.Constructor=t,e.fn.scrollspy.defaults={offset:10},e.fn.scrollspy.noConflict=function(){return e.fn.scrollspy=n,this},e(window).on("load",function(){e('[data-spy="scroll"]').each(function(){var t=e(this);t.scrollspy(t.data())})})}(window.jQuery),!function(e){"use strict";var t=function(t){this.element=e(t)};t.prototype={constructor:t,show:function(){var t=this.element,n=t.closest("ul:not(.dropdown-menu)"),r=t.attr("data-target"),i,s,o;r||(r=t.attr("href"),r=r&&r.replace(/.*(?=#[^\s]*$)/,""));if(t.parent("li").hasClass("active"))return;i=n.find(".active:last a")[0],o=e.Event("show",{relatedTarget:i}),t.trigger(o);if(o.isDefaultPrevented())return;s=e(r),this.activate(t.parent("li"),n),this.activate(s,s.parent(),function(){t.trigger({type:"shown",relatedTarget:i})})},activate:function(t,n,r){function o(){i.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),t.addClass("active"),s?(t[0].offsetWidth,t.addClass("in")):t.removeClass("fade"),t.parent(".dropdown-menu")&&t.closest("li.dropdown").addClass("active"),r&&r()}var i=n.find("> .active"),s=r&&e.support.transition&&i.hasClass("fade");s?i.one(e.support.transition.end,o):o(),i.removeClass("in")}};var n=e.fn.tab;e.fn.tab=function(n){return this.each(function(){var r=e(this),i=r.data("tab");i||r.data("tab",i=new t(this)),typeof n=="string"&&i[n]()})},e.fn.tab.Constructor=t,e.fn.tab.noConflict=function(){return e.fn.tab=n,this},e(document).on("click.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(t){t.preventDefault(),e(this).tab("show")})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.$element=e(t),this.options=e.extend({},e.fn.typeahead.defaults,n),this.matcher=this.options.matcher||this.matcher,this.sorter=this.options.sorter||this.sorter,this.highlighter=this.options.highlighter||this.highlighter,this.updater=this.options.updater||this.updater,this.source=this.options.source,this.$menu=e(this.options.menu),this.shown=!1,this.listen()};t.prototype={constructor:t,select:function(){var e=this.$menu.find(".active").attr("data-value");return this.$element.val(this.updater(e)).change(),this.hide()},updater:function(e){return e},show:function(){var t=e.extend({},this.$element.position(),{height:this.$element[0].offsetHeight});return this.$menu.insertAfter(this.$element).css({top:t.top+t.height,left:t.left}).show(),this.shown=!0,this},hide:function(){return this.$menu.hide(),this.shown=!1,this},lookup:function(t){var n;return this.query=this.$element.val(),!this.query||this.query.length"+t+""})},render:function(t){var n=this;return t=e(t).map(function(t,r){return t=e(n.options.item).attr("data-value",r),t.find("a").html(n.highlighter(r)),t[0]}),t.first().addClass("active"),this.$menu.html(t),this},next:function(t){var n=this.$menu.find(".active").removeClass("active"),r=n.next();r.length||(r=e(this.$menu.find("li")[0])),r.addClass("active")},prev:function(e){var t=this.$menu.find(".active").removeClass("active"),n=t.prev();n.length||(n=this.$menu.find("li").last()),n.addClass("active")},listen:function(){this.$element.on("focus",e.proxy(this.focus,this)).on("blur",e.proxy(this.blur,this)).on("keypress",e.proxy(this.keypress,this)).on("keyup",e.proxy(this.keyup,this)),this.eventSupported("keydown")&&this.$element.on("keydown",e.proxy(this.keydown,this)),this.$menu.on("click",e.proxy(this.click,this)).on("mouseenter","li",e.proxy(this.mouseenter,this)).on("mouseleave","li",e.proxy(this.mouseleave,this))},eventSupported:function(e){var t=e in this.$element;return t||(this.$element.setAttribute(e,"return;"),t=typeof this.$element[e]=="function"),t},move:function(e){if(!this.shown)return;switch(e.keyCode){case 9:case 13:case 27:e.preventDefault();break;case 38:e.preventDefault(),this.prev();break;case 40:e.preventDefault(),this.next()}e.stopPropagation()},keydown:function(t){this.suppressKeyPressRepeat=~e.inArray(t.keyCode,[40,38,9,13,27]),this.move(t)},keypress:function(e){if(this.suppressKeyPressRepeat)return;this.move(e)},keyup:function(e){switch(e.keyCode){case 40:case 38:case 16:case 17:case 18:break;case 9:case 13:if(!this.shown)return;this.select();break;case 27:if(!this.shown)return;this.hide();break;default:this.lookup()}e.stopPropagation(),e.preventDefault()},focus:function(e){this.focused=!0},blur:function(e){this.focused=!1,!this.mousedover&&this.shown&&this.hide()},click:function(e){e.stopPropagation(),e.preventDefault(),this.select(),this.$element.focus()},mouseenter:function(t){this.mousedover=!0,this.$menu.find(".active").removeClass("active"),e(t.currentTarget).addClass("active")},mouseleave:function(e){this.mousedover=!1,!this.focused&&this.shown&&this.hide()}};var n=e.fn.typeahead;e.fn.typeahead=function(n){return this.each(function(){var r=e(this),i=r.data("typeahead"),s=typeof n=="object"&&n;i||r.data("typeahead",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.typeahead.defaults={source:[],items:8,menu:'',item:'
  • ',minLength:1},e.fn.typeahead.Constructor=t,e.fn.typeahead.noConflict=function(){return e.fn.typeahead=n,this},e(document).on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(t){var n=e(this);if(n.data("typeahead"))return;n.typeahead(n.data())})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.options=e.extend({},e.fn.affix.defaults,n),this.$window=e(window).on("scroll.affix.data-api",e.proxy(this.checkPosition,this)).on("click.affix.data-api",e.proxy(function(){setTimeout(e.proxy(this.checkPosition,this),1)},this)),this.$element=e(t),this.checkPosition()};t.prototype.checkPosition=function(){if(!this.$element.is(":visible"))return;var t=e(document).height(),n=this.$window.scrollTop(),r=this.$element.offset(),i=this.options.offset,s=i.bottom,o=i.top,u="affix affix-top affix-bottom",a;typeof i!="object"&&(s=o=i),typeof o=="function"&&(o=i.top()),typeof s=="function"&&(s=i.bottom()),a=this.unpin!=null&&n+this.unpin<=r.top?!1:s!=null&&r.top+this.$element.height()>=t-s?"bottom":o!=null&&n<=o?"top":!1;if(this.affixed===a)return;this.affixed=a,this.unpin=a=="bottom"?r.top-n:null,this.$element.removeClass(u).addClass("affix"+(a?"-"+a:""))};var n=e.fn.affix;e.fn.affix=function(n){return this.each(function(){var r=e(this),i=r.data("affix"),s=typeof n=="object"&&n;i||r.data("affix",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.affix.Constructor=t,e.fn.affix.defaults={offset:0},e.fn.affix.noConflict=function(){return e.fn.affix=n,this},e(window).on("load",function(){e('[data-spy="affix"]').each(function(){var t=e(this),n=t.data();n.offset=n.offset||{},n.offsetBottom&&(n.offset.bottom=n.offsetBottom),n.offsetTop&&(n.offset.top=n.offsetTop),t.affix(n)})})}(window.jQuery); \ No newline at end of file diff --git a/worms/external/jquery.1.8.2.min.js b/worms/external/jquery.1.8.2.min.js new file mode 100644 index 0000000..bc3fbc8 --- /dev/null +++ b/worms/external/jquery.1.8.2.min.js @@ -0,0 +1,2 @@ +/*! jQuery v1.8.2 jquery.com | jquery.org/license */ +(function(a,b){function G(a){var b=F[a]={};return p.each(a.split(s),function(a,c){b[c]=!0}),b}function J(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(I,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:+d+""===d?+d:H.test(d)?p.parseJSON(d):d}catch(f){}p.data(a,c,d)}else d=b}return d}function K(a){var b;for(b in a){if(b==="data"&&p.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function ba(){return!1}function bb(){return!0}function bh(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function bi(a,b){do a=a[b];while(a&&a.nodeType!==1);return a}function bj(a,b,c){b=b||0;if(p.isFunction(b))return p.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return p.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=p.grep(a,function(a){return a.nodeType===1});if(be.test(b))return p.filter(b,d,!c);b=p.filter(b,d)}return p.grep(a,function(a,d){return p.inArray(a,b)>=0===c})}function bk(a){var b=bl.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function bC(a,b){return a.getElementsByTagName(b)[0]||a.appendChild(a.ownerDocument.createElement(b))}function bD(a,b){if(b.nodeType!==1||!p.hasData(a))return;var c,d,e,f=p._data(a),g=p._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;d").appendTo(e.body),c=b.css("display");b.remove();if(c==="none"||c===""){bI=e.body.appendChild(bI||p.extend(e.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!bJ||!bI.createElement)bJ=(bI.contentWindow||bI.contentDocument).document,bJ.write(""),bJ.close();b=bJ.body.appendChild(bJ.createElement(a)),c=bH(b,"display"),e.body.removeChild(bI)}return bS[a]=c,c}function ci(a,b,c,d){var e;if(p.isArray(b))p.each(b,function(b,e){c||ce.test(a)?d(a,e):ci(a+"["+(typeof e=="object"?b:"")+"]",e,c,d)});else if(!c&&p.type(b)==="object")for(e in b)ci(a+"["+e+"]",b[e],c,d);else d(a,b)}function cz(a){return function(b,c){typeof b!="string"&&(c=b,b="*");var d,e,f,g=b.toLowerCase().split(s),h=0,i=g.length;if(p.isFunction(c))for(;h)[^>]*$|#([\w\-]*)$)/,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,y=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,z=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,A=/^-ms-/,B=/-([\da-z])/gi,C=function(a,b){return(b+"").toUpperCase()},D=function(){e.addEventListener?(e.removeEventListener("DOMContentLoaded",D,!1),p.ready()):e.readyState==="complete"&&(e.detachEvent("onreadystatechange",D),p.ready())},E={};p.fn=p.prototype={constructor:p,init:function(a,c,d){var f,g,h,i;if(!a)return this;if(a.nodeType)return this.context=this[0]=a,this.length=1,this;if(typeof a=="string"){a.charAt(0)==="<"&&a.charAt(a.length-1)===">"&&a.length>=3?f=[null,a,null]:f=u.exec(a);if(f&&(f[1]||!c)){if(f[1])return c=c instanceof p?c[0]:c,i=c&&c.nodeType?c.ownerDocument||c:e,a=p.parseHTML(f[1],i,!0),v.test(f[1])&&p.isPlainObject(c)&&this.attr.call(a,c,!0),p.merge(this,a);g=e.getElementById(f[2]);if(g&&g.parentNode){if(g.id!==f[2])return d.find(a);this.length=1,this[0]=g}return this.context=e,this.selector=a,this}return!c||c.jquery?(c||d).find(a):this.constructor(c).find(a)}return p.isFunction(a)?d.ready(a):(a.selector!==b&&(this.selector=a.selector,this.context=a.context),p.makeArray(a,this))},selector:"",jquery:"1.8.2",length:0,size:function(){return this.length},toArray:function(){return k.call(this)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=p.merge(this.constructor(),a);return d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")"),d},each:function(a,b){return p.each(this,a,b)},ready:function(a){return p.ready.promise().done(a),this},eq:function(a){return a=+a,a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(k.apply(this,arguments),"slice",k.call(arguments).join(","))},map:function(a){return this.pushStack(p.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:j,sort:[].sort,splice:[].splice},p.fn.init.prototype=p.fn,p.extend=p.fn.extend=function(){var a,c,d,e,f,g,h=arguments[0]||{},i=1,j=arguments.length,k=!1;typeof h=="boolean"&&(k=h,h=arguments[1]||{},i=2),typeof h!="object"&&!p.isFunction(h)&&(h={}),j===i&&(h=this,--i);for(;i0)return;d.resolveWith(e,[p]),p.fn.trigger&&p(e).trigger("ready").off("ready")},isFunction:function(a){return p.type(a)==="function"},isArray:Array.isArray||function(a){return p.type(a)==="array"},isWindow:function(a){return a!=null&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):E[m.call(a)]||"object"},isPlainObject:function(a){if(!a||p.type(a)!=="object"||a.nodeType||p.isWindow(a))return!1;try{if(a.constructor&&!n.call(a,"constructor")&&!n.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||n.call(a,d)},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},error:function(a){throw new Error(a)},parseHTML:function(a,b,c){var d;return!a||typeof a!="string"?null:(typeof b=="boolean"&&(c=b,b=0),b=b||e,(d=v.exec(a))?[b.createElement(d[1])]:(d=p.buildFragment([a],b,c?null:[]),p.merge([],(d.cacheable?p.clone(d.fragment):d.fragment).childNodes)))},parseJSON:function(b){if(!b||typeof b!="string")return null;b=p.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(w.test(b.replace(y,"@").replace(z,"]").replace(x,"")))return(new Function("return "+b))();p.error("Invalid JSON: "+b)},parseXML:function(c){var d,e;if(!c||typeof c!="string")return null;try{a.DOMParser?(e=new DOMParser,d=e.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(f){d=b}return(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&p.error("Invalid XML: "+c),d},noop:function(){},globalEval:function(b){b&&r.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(A,"ms-").replace(B,C)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,c,d){var e,f=0,g=a.length,h=g===b||p.isFunction(a);if(d){if(h){for(e in a)if(c.apply(a[e],d)===!1)break}else for(;f0&&a[0]&&a[i-1]||i===0||p.isArray(a));if(j)for(;h-1)i.splice(c,1),e&&(c<=g&&g--,c<=h&&h--)}),this},has:function(a){return p.inArray(a,i)>-1},empty:function(){return i=[],this},disable:function(){return i=j=c=b,this},disabled:function(){return!i},lock:function(){return j=b,c||l.disable(),this},locked:function(){return!j},fireWith:function(a,b){return b=b||[],b=[a,b.slice?b.slice():b],i&&(!d||j)&&(e?j.push(b):k(b)),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!d}};return l},p.extend({Deferred:function(a){var b=[["resolve","done",p.Callbacks("once memory"),"resolved"],["reject","fail",p.Callbacks("once memory"),"rejected"],["notify","progress",p.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return p.Deferred(function(c){p.each(b,function(b,d){var f=d[0],g=a[b];e[d[1]](p.isFunction(g)?function(){var a=g.apply(this,arguments);a&&p.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f+"With"](this===e?c:this,[a])}:c[f])}),a=null}).promise()},promise:function(a){return a!=null?p.extend(a,d):d}},e={};return d.pipe=d.then,p.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[a^1][2].disable,b[2][2].lock),e[f[0]]=g.fire,e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=k.call(arguments),d=c.length,e=d!==1||a&&p.isFunction(a.promise)?d:0,f=e===1?a:p.Deferred(),g=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?k.call(arguments):d,c===h?f.notifyWith(b,c):--e||f.resolveWith(b,c)}},h,i,j;if(d>1){h=new Array(d),i=new Array(d),j=new Array(d);for(;b
    a",c=n.getElementsByTagName("*"),d=n.getElementsByTagName("a")[0],d.style.cssText="top:1px;float:left;opacity:.5";if(!c||!c.length)return{};f=e.createElement("select"),g=f.appendChild(e.createElement("option")),h=n.getElementsByTagName("input")[0],b={leadingWhitespace:n.firstChild.nodeType===3,tbody:!n.getElementsByTagName("tbody").length,htmlSerialize:!!n.getElementsByTagName("link").length,style:/top/.test(d.getAttribute("style")),hrefNormalized:d.getAttribute("href")==="/a",opacity:/^0.5/.test(d.style.opacity),cssFloat:!!d.style.cssFloat,checkOn:h.value==="on",optSelected:g.selected,getSetAttribute:n.className!=="t",enctype:!!e.createElement("form").enctype,html5Clone:e.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",boxModel:e.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},h.checked=!0,b.noCloneChecked=h.cloneNode(!0).checked,f.disabled=!0,b.optDisabled=!g.disabled;try{delete n.test}catch(o){b.deleteExpando=!1}!n.addEventListener&&n.attachEvent&&n.fireEvent&&(n.attachEvent("onclick",m=function(){b.noCloneEvent=!1}),n.cloneNode(!0).fireEvent("onclick"),n.detachEvent("onclick",m)),h=e.createElement("input"),h.value="t",h.setAttribute("type","radio"),b.radioValue=h.value==="t",h.setAttribute("checked","checked"),h.setAttribute("name","t"),n.appendChild(h),i=e.createDocumentFragment(),i.appendChild(n.lastChild),b.checkClone=i.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=h.checked,i.removeChild(h),i.appendChild(n);if(n.attachEvent)for(k in{submit:!0,change:!0,focusin:!0})j="on"+k,l=j in n,l||(n.setAttribute(j,"return;"),l=typeof n[j]=="function"),b[k+"Bubbles"]=l;return p(function(){var c,d,f,g,h="padding:0;margin:0;border:0;display:block;overflow:hidden;",i=e.getElementsByTagName("body")[0];if(!i)return;c=e.createElement("div"),c.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",i.insertBefore(c,i.firstChild),d=e.createElement("div"),c.appendChild(d),d.innerHTML="
    t
    ",f=d.getElementsByTagName("td"),f[0].style.cssText="padding:0;margin:0;border:0;display:none",l=f[0].offsetHeight===0,f[0].style.display="",f[1].style.display="none",b.reliableHiddenOffsets=l&&f[0].offsetHeight===0,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",b.boxSizing=d.offsetWidth===4,b.doesNotIncludeMarginInBodyOffset=i.offsetTop!==1,a.getComputedStyle&&(b.pixelPosition=(a.getComputedStyle(d,null)||{}).top!=="1%",b.boxSizingReliable=(a.getComputedStyle(d,null)||{width:"4px"}).width==="4px",g=e.createElement("div"),g.style.cssText=d.style.cssText=h,g.style.marginRight=g.style.width="0",d.style.width="1px",d.appendChild(g),b.reliableMarginRight=!parseFloat((a.getComputedStyle(g,null)||{}).marginRight)),typeof d.style.zoom!="undefined"&&(d.innerHTML="",d.style.cssText=h+"width:1px;padding:1px;display:inline;zoom:1",b.inlineBlockNeedsLayout=d.offsetWidth===3,d.style.display="block",d.style.overflow="visible",d.innerHTML="
    ",d.firstChild.style.width="5px",b.shrinkWrapBlocks=d.offsetWidth!==3,c.style.zoom=1),i.removeChild(c),c=d=f=g=null}),i.removeChild(n),c=d=f=g=h=i=n=null,b}();var H=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,I=/([A-Z])/g;p.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(p.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){return a=a.nodeType?p.cache[a[p.expando]]:a[p.expando],!!a&&!K(a)},data:function(a,c,d,e){if(!p.acceptData(a))return;var f,g,h=p.expando,i=typeof c=="string",j=a.nodeType,k=j?p.cache:a,l=j?a[h]:a[h]&&h;if((!l||!k[l]||!e&&!k[l].data)&&i&&d===b)return;l||(j?a[h]=l=p.deletedIds.pop()||p.guid++:l=h),k[l]||(k[l]={},j||(k[l].toJSON=p.noop));if(typeof c=="object"||typeof c=="function")e?k[l]=p.extend(k[l],c):k[l].data=p.extend(k[l].data,c);return f=k[l],e||(f.data||(f.data={}),f=f.data),d!==b&&(f[p.camelCase(c)]=d),i?(g=f[c],g==null&&(g=f[p.camelCase(c)])):g=f,g},removeData:function(a,b,c){if(!p.acceptData(a))return;var d,e,f,g=a.nodeType,h=g?p.cache:a,i=g?a[p.expando]:p.expando;if(!h[i])return;if(b){d=c?h[i]:h[i].data;if(d){p.isArray(b)||(b in d?b=[b]:(b=p.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,f=b.length;e1,null,!1))},removeData:function(a){return this.each(function(){p.removeData(this,a)})}}),p.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=p._data(a,b),c&&(!d||p.isArray(c)?d=p._data(a,b,p.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=p.queue(a,b),d=c.length,e=c.shift(),f=p._queueHooks(a,b),g=function(){p.dequeue(a,b)};e==="inprogress"&&(e=c.shift(),d--),e&&(b==="fx"&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return p._data(a,c)||p._data(a,c,{empty:p.Callbacks("once memory").add(function(){p.removeData(a,b+"queue",!0),p.removeData(a,c,!0)})})}}),p.fn.extend({queue:function(a,c){var d=2;return typeof a!="string"&&(c=a,a="fx",d--),arguments.length1)},removeAttr:function(a){return this.each(function(){p.removeAttr(this,a)})},prop:function(a,b){return p.access(this,p.prop,a,b,arguments.length>1)},removeProp:function(a){return a=p.propFix[a]||a,this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,f,g,h;if(p.isFunction(a))return this.each(function(b){p(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(s);for(c=0,d=this.length;c=0)d=d.replace(" "+c[f]+" "," ");e.className=a?p.trim(d):""}}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";return p.isFunction(a)?this.each(function(c){p(this).toggleClass(a.call(this,c,this.className,b),b)}):this.each(function(){if(c==="string"){var e,f=0,g=p(this),h=b,i=a.split(s);while(e=i[f++])h=d?h:!g.hasClass(e),g[h?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&p._data(this,"__className__",this.className),this.className=this.className||a===!1?"":p._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c=0)return!0;return!1},val:function(a){var c,d,e,f=this[0];if(!arguments.length){if(f)return c=p.valHooks[f.type]||p.valHooks[f.nodeName.toLowerCase()],c&&"get"in c&&(d=c.get(f,"value"))!==b?d:(d=f.value,typeof d=="string"?d.replace(P,""):d==null?"":d);return}return e=p.isFunction(a),this.each(function(d){var f,g=p(this);if(this.nodeType!==1)return;e?f=a.call(this,d,g.val()):f=a,f==null?f="":typeof f=="number"?f+="":p.isArray(f)&&(f=p.map(f,function(a){return a==null?"":a+""})),c=p.valHooks[this.type]||p.valHooks[this.nodeName.toLowerCase()];if(!c||!("set"in c)||c.set(this,f,"value")===b)this.value=f})}}),p.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,f=a.selectedIndex,g=[],h=a.options,i=a.type==="select-one";if(f<0)return null;c=i?f:0,d=i?f+1:h.length;for(;c=0}),c.length||(a.selectedIndex=-1),c}}},attrFn:{},attr:function(a,c,d,e){var f,g,h,i=a.nodeType;if(!a||i===3||i===8||i===2)return;if(e&&p.isFunction(p.fn[c]))return p(a)[c](d);if(typeof a.getAttribute=="undefined")return p.prop(a,c,d);h=i!==1||!p.isXMLDoc(a),h&&(c=c.toLowerCase(),g=p.attrHooks[c]||(T.test(c)?M:L));if(d!==b){if(d===null){p.removeAttr(a,c);return}return g&&"set"in g&&h&&(f=g.set(a,d,c))!==b?f:(a.setAttribute(c,d+""),d)}return g&&"get"in g&&h&&(f=g.get(a,c))!==null?f:(f=a.getAttribute(c),f===null?b:f)},removeAttr:function(a,b){var c,d,e,f,g=0;if(b&&a.nodeType===1){d=b.split(s);for(;g=0}})});var V=/^(?:textarea|input|select)$/i,W=/^([^\.]*|)(?:\.(.+)|)$/,X=/(?:^|\s)hover(\.\S+|)\b/,Y=/^key/,Z=/^(?:mouse|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=function(a){return p.event.special.hover?a:a.replace(X,"mouseenter$1 mouseleave$1")};p.event={add:function(a,c,d,e,f){var g,h,i,j,k,l,m,n,o,q,r;if(a.nodeType===3||a.nodeType===8||!c||!d||!(g=p._data(a)))return;d.handler&&(o=d,d=o.handler,f=o.selector),d.guid||(d.guid=p.guid++),i=g.events,i||(g.events=i={}),h=g.handle,h||(g.handle=h=function(a){return typeof p!="undefined"&&(!a||p.event.triggered!==a.type)?p.event.dispatch.apply(h.elem,arguments):b},h.elem=a),c=p.trim(_(c)).split(" ");for(j=0;j=0&&(s=s.slice(0,-1),i=!0),s.indexOf(".")>=0&&(t=s.split("."),s=t.shift(),t.sort());if((!f||p.event.customEvent[s])&&!p.event.global[s])return;c=typeof c=="object"?c[p.expando]?c:new p.Event(s,c):new p.Event(s),c.type=s,c.isTrigger=!0,c.exclusive=i,c.namespace=t.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+t.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,m=s.indexOf(":")<0?"on"+s:"";if(!f){h=p.cache;for(j in h)h[j].events&&h[j].events[s]&&p.event.trigger(c,d,h[j].handle.elem,!0);return}c.result=b,c.target||(c.target=f),d=d!=null?p.makeArray(d):[],d.unshift(c),n=p.event.special[s]||{};if(n.trigger&&n.trigger.apply(f,d)===!1)return;q=[[f,n.bindType||s]];if(!g&&!n.noBubble&&!p.isWindow(f)){r=n.delegateType||s,k=$.test(r+s)?f:f.parentNode;for(l=f;k;k=k.parentNode)q.push([k,r]),l=k;l===(f.ownerDocument||e)&&q.push([l.defaultView||l.parentWindow||a,r])}for(j=0;j=0:p.find(m,this,null,[f]).length),h[m]&&j.push(l);j.length&&u.push({elem:f,matches:j})}o.length>q&&u.push({elem:this,matches:o.slice(q)});for(d=0;d0?this.on(b,null,a,c):this.trigger(b)},Y.test(b)&&(p.event.fixHooks[b]=p.event.keyHooks),Z.test(b)&&(p.event.fixHooks[b]=p.event.mouseHooks)}),function(a,b){function bc(a,b,c,d){c=c||[],b=b||r;var e,f,i,j,k=b.nodeType;if(!a||typeof a!="string")return c;if(k!==1&&k!==9)return[];i=g(b);if(!i&&!d)if(e=P.exec(a))if(j=e[1]){if(k===9){f=b.getElementById(j);if(!f||!f.parentNode)return c;if(f.id===j)return c.push(f),c}else if(b.ownerDocument&&(f=b.ownerDocument.getElementById(j))&&h(b,f)&&f.id===j)return c.push(f),c}else{if(e[2])return w.apply(c,x.call(b.getElementsByTagName(a),0)),c;if((j=e[3])&&_&&b.getElementsByClassName)return w.apply(c,x.call(b.getElementsByClassName(j),0)),c}return bp(a.replace(L,"$1"),b,c,d,i)}function bd(a){return function(b){var c=b.nodeName.toLowerCase();return c==="input"&&b.type===a}}function be(a){return function(b){var c=b.nodeName.toLowerCase();return(c==="input"||c==="button")&&b.type===a}}function bf(a){return z(function(b){return b=+b,z(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function bg(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}function bh(a,b){var c,d,f,g,h,i,j,k=C[o][a];if(k)return b?0:k.slice(0);h=a,i=[],j=e.preFilter;while(h){if(!c||(d=M.exec(h)))d&&(h=h.slice(d[0].length)),i.push(f=[]);c=!1;if(d=N.exec(h))f.push(c=new q(d.shift())),h=h.slice(c.length),c.type=d[0].replace(L," ");for(g in e.filter)(d=W[g].exec(h))&&(!j[g]||(d=j[g](d,r,!0)))&&(f.push(c=new q(d.shift())),h=h.slice(c.length),c.type=g,c.matches=d);if(!c)break}return b?h.length:h?bc.error(a):C(a,i).slice(0)}function bi(a,b,d){var e=b.dir,f=d&&b.dir==="parentNode",g=u++;return b.first?function(b,c,d){while(b=b[e])if(f||b.nodeType===1)return a(b,c,d)}:function(b,d,h){if(!h){var i,j=t+" "+g+" ",k=j+c;while(b=b[e])if(f||b.nodeType===1){if((i=b[o])===k)return b.sizset;if(typeof i=="string"&&i.indexOf(j)===0){if(b.sizset)return b}else{b[o]=k;if(a(b,d,h))return b.sizset=!0,b;b.sizset=!1}}}else while(b=b[e])if(f||b.nodeType===1)if(a(b,d,h))return b}}function bj(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function bk(a,b,c,d,e){var f,g=[],h=0,i=a.length,j=b!=null;for(;h-1},h,!0),m=[function(a,c,d){return!g&&(d||c!==l)||((b=c).nodeType?j(a,c,d):k(a,c,d))}];for(;i1&&bj(m),i>1&&a.slice(0,i-1).join("").replace(L,"$1"),c,i0,f=a.length>0,g=function(h,i,j,k,m){var n,o,p,q=[],s=0,u="0",x=h&&[],y=m!=null,z=l,A=h||f&&e.find.TAG("*",m&&i.parentNode||i),B=t+=z==null?1:Math.E;y&&(l=i!==r&&i,c=g.el);for(;(n=A[u])!=null;u++){if(f&&n){for(o=0;p=a[o];o++)if(p(n,i,j)){k.push(n);break}y&&(t=B,c=++g.el)}d&&((n=!p&&n)&&s--,h&&x.push(n))}s+=u;if(d&&u!==s){for(o=0;p=b[o];o++)p(x,q,i,j);if(h){if(s>0)while(u--)!x[u]&&!q[u]&&(q[u]=v.call(k));q=bk(q)}w.apply(k,q),y&&!h&&q.length>0&&s+b.length>1&&bc.uniqueSort(k)}return y&&(t=B,l=z),x};return g.el=0,d?z(g):g}function bo(a,b,c,d){var e=0,f=b.length;for(;e2&&(j=h[0]).type==="ID"&&b.nodeType===9&&!f&&e.relative[h[1].type]){b=e.find.ID(j.matches[0].replace(V,""),b,f)[0];if(!b)return c;a=a.slice(h.shift().length)}for(g=W.POS.test(a)?-1:h.length-1;g>=0;g--){j=h[g];if(e.relative[k=j.type])break;if(l=e.find[k])if(d=l(j.matches[0].replace(V,""),R.test(h[0].type)&&b.parentNode||b,f)){h.splice(g,1),a=d.length&&h.join("");if(!a)return w.apply(c,x.call(d,0)),c;break}}}return i(a,m)(d,b,f,c,R.test(a)),c}function bq(){}var c,d,e,f,g,h,i,j,k,l,m=!0,n="undefined",o=("sizcache"+Math.random()).replace(".",""),q=String,r=a.document,s=r.documentElement,t=0,u=0,v=[].pop,w=[].push,x=[].slice,y=[].indexOf||function(a){var b=0,c=this.length;for(;be.cacheLength&&delete a[b.shift()],a[c]=d},a)},B=A(),C=A(),D=A(),E="[\\x20\\t\\r\\n\\f]",F="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",G=F.replace("w","w#"),H="([*^$|!~]?=)",I="\\["+E+"*("+F+")"+E+"*(?:"+H+E+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+G+")|)|)"+E+"*\\]",J=":("+F+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+I+")|[^:]|\\\\.)*|.*))\\)|)",K=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+E+"*((?:-\\d)?\\d*)"+E+"*\\)|)(?=[^-]|$)",L=new RegExp("^"+E+"+|((?:^|[^\\\\])(?:\\\\.)*)"+E+"+$","g"),M=new RegExp("^"+E+"*,"+E+"*"),N=new RegExp("^"+E+"*([\\x20\\t\\r\\n\\f>+~])"+E+"*"),O=new RegExp(J),P=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,Q=/^:not/,R=/[\x20\t\r\n\f]*[+~]/,S=/:not\($/,T=/h\d/i,U=/input|select|textarea|button/i,V=/\\(?!\\)/g,W={ID:new RegExp("^#("+F+")"),CLASS:new RegExp("^\\.("+F+")"),NAME:new RegExp("^\\[name=['\"]?("+F+")['\"]?\\]"),TAG:new RegExp("^("+F.replace("w","w*")+")"),ATTR:new RegExp("^"+I),PSEUDO:new RegExp("^"+J),POS:new RegExp(K,"i"),CHILD:new RegExp("^:(only|nth|first|last)-child(?:\\("+E+"*(even|odd|(([+-]|)(\\d*)n|)"+E+"*(?:([+-]|)"+E+"*(\\d+)|))"+E+"*\\)|)","i"),needsContext:new RegExp("^"+E+"*[>+~]|"+K,"i")},X=function(a){var b=r.createElement("div");try{return a(b)}catch(c){return!1}finally{b=null}},Y=X(function(a){return a.appendChild(r.createComment("")),!a.getElementsByTagName("*").length}),Z=X(function(a){return a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!==n&&a.firstChild.getAttribute("href")==="#"}),$=X(function(a){a.innerHTML="";var b=typeof a.lastChild.getAttribute("multiple");return b!=="boolean"&&b!=="string"}),_=X(function(a){return a.innerHTML="",!a.getElementsByClassName||!a.getElementsByClassName("e").length?!1:(a.lastChild.className="e",a.getElementsByClassName("e").length===2)}),ba=X(function(a){a.id=o+0,a.innerHTML="
    ",s.insertBefore(a,s.firstChild);var b=r.getElementsByName&&r.getElementsByName(o).length===2+r.getElementsByName(o+0).length;return d=!r.getElementById(o),s.removeChild(a),b});try{x.call(s.childNodes,0)[0].nodeType}catch(bb){x=function(a){var b,c=[];for(;b=this[a];a++)c.push(b);return c}}bc.matches=function(a,b){return bc(a,null,null,b)},bc.matchesSelector=function(a,b){return bc(b,null,null,[a]).length>0},f=bc.getText=function(a){var b,c="",d=0,e=a.nodeType;if(e){if(e===1||e===9||e===11){if(typeof a.textContent=="string")return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=f(a)}else if(e===3||e===4)return a.nodeValue}else for(;b=a[d];d++)c+=f(b);return c},g=bc.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?b.nodeName!=="HTML":!1},h=bc.contains=s.contains?function(a,b){var c=a.nodeType===9?a.documentElement:a,d=b&&b.parentNode;return a===d||!!(d&&d.nodeType===1&&c.contains&&c.contains(d))}:s.compareDocumentPosition?function(a,b){return b&&!!(a.compareDocumentPosition(b)&16)}:function(a,b){while(b=b.parentNode)if(b===a)return!0;return!1},bc.attr=function(a,b){var c,d=g(a);return d||(b=b.toLowerCase()),(c=e.attrHandle[b])?c(a):d||$?a.getAttribute(b):(c=a.getAttributeNode(b),c?typeof a[b]=="boolean"?a[b]?b:null:c.specified?c.value:null:null)},e=bc.selectors={cacheLength:50,createPseudo:z,match:W,attrHandle:Z?{}:{href:function(a){return a.getAttribute("href",2)},type:function(a){return a.getAttribute("type")}},find:{ID:d?function(a,b,c){if(typeof b.getElementById!==n&&!c){var d=b.getElementById(a);return d&&d.parentNode?[d]:[]}}:function(a,c,d){if(typeof c.getElementById!==n&&!d){var e=c.getElementById(a);return e?e.id===a||typeof e.getAttributeNode!==n&&e.getAttributeNode("id").value===a?[e]:b:[]}},TAG:Y?function(a,b){if(typeof b.getElementsByTagName!==n)return b.getElementsByTagName(a)}:function(a,b){var c=b.getElementsByTagName(a);if(a==="*"){var d,e=[],f=0;for(;d=c[f];f++)d.nodeType===1&&e.push(d);return e}return c},NAME:ba&&function(a,b){if(typeof b.getElementsByName!==n)return b.getElementsByName(name)},CLASS:_&&function(a,b,c){if(typeof b.getElementsByClassName!==n&&!c)return b.getElementsByClassName(a)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(V,""),a[3]=(a[4]||a[5]||"").replace(V,""),a[2]==="~="&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),a[1]==="nth"?(a[2]||bc.error(a[0]),a[3]=+(a[3]?a[4]+(a[5]||1):2*(a[2]==="even"||a[2]==="odd")),a[4]=+(a[6]+a[7]||a[2]==="odd")):a[2]&&bc.error(a[0]),a},PSEUDO:function(a){var b,c;if(W.CHILD.test(a[0]))return null;if(a[3])a[2]=a[3];else if(b=a[4])O.test(b)&&(c=bh(b,!0))&&(c=b.indexOf(")",b.length-c)-b.length)&&(b=b.slice(0,c),a[0]=a[0].slice(0,c)),a[2]=b;return a.slice(0,3)}},filter:{ID:d?function(a){return a=a.replace(V,""),function(b){return b.getAttribute("id")===a}}:function(a){return a=a.replace(V,""),function(b){var c=typeof b.getAttributeNode!==n&&b.getAttributeNode("id");return c&&c.value===a}},TAG:function(a){return a==="*"?function(){return!0}:(a=a.replace(V,"").toLowerCase(),function(b){return b.nodeName&&b.nodeName.toLowerCase()===a})},CLASS:function(a){var b=B[o][a];return b||(b=B(a,new RegExp("(^|"+E+")"+a+"("+E+"|$)"))),function(a){return b.test(a.className||typeof a.getAttribute!==n&&a.getAttribute("class")||"")}},ATTR:function(a,b,c){return function(d,e){var f=bc.attr(d,a);return f==null?b==="!=":b?(f+="",b==="="?f===c:b==="!="?f!==c:b==="^="?c&&f.indexOf(c)===0:b==="*="?c&&f.indexOf(c)>-1:b==="$="?c&&f.substr(f.length-c.length)===c:b==="~="?(" "+f+" ").indexOf(c)>-1:b==="|="?f===c||f.substr(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d){return a==="nth"?function(a){var b,e,f=a.parentNode;if(c===1&&d===0)return!0;if(f){e=0;for(b=f.firstChild;b;b=b.nextSibling)if(b.nodeType===1){e++;if(a===b)break}}return e-=d,e===c||e%c===0&&e/c>=0}:function(b){var c=b;switch(a){case"only":case"first":while(c=c.previousSibling)if(c.nodeType===1)return!1;if(a==="first")return!0;c=b;case"last":while(c=c.nextSibling)if(c.nodeType===1)return!1;return!0}}},PSEUDO:function(a,b){var c,d=e.pseudos[a]||e.setFilters[a.toLowerCase()]||bc.error("unsupported pseudo: "+a);return d[o]?d(b):d.length>1?(c=[a,a,"",b],e.setFilters.hasOwnProperty(a.toLowerCase())?z(function(a,c){var e,f=d(a,b),g=f.length;while(g--)e=y.call(a,f[g]),a[e]=!(c[e]=f[g])}):function(a){return d(a,0,c)}):d}},pseudos:{not:z(function(a){var b=[],c=[],d=i(a.replace(L,"$1"));return d[o]?z(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)if(f=g[h])a[h]=!(b[h]=f)}):function(a,e,f){return b[0]=a,d(b,null,f,c),!c.pop()}}),has:z(function(a){return function(b){return bc(a,b).length>0}}),contains:z(function(a){return function(b){return(b.textContent||b.innerText||f(b)).indexOf(a)>-1}}),enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&!!a.checked||b==="option"&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},parent:function(a){return!e.pseudos.empty(a)},empty:function(a){var b;a=a.firstChild;while(a){if(a.nodeName>"@"||(b=a.nodeType)===3||b===4)return!1;a=a.nextSibling}return!0},header:function(a){return T.test(a.nodeName)},text:function(a){var b,c;return a.nodeName.toLowerCase()==="input"&&(b=a.type)==="text"&&((c=a.getAttribute("type"))==null||c.toLowerCase()===b)},radio:bd("radio"),checkbox:bd("checkbox"),file:bd("file"),password:bd("password"),image:bd("image"),submit:be("submit"),reset:be("reset"),button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&a.type==="button"||b==="button"},input:function(a){return U.test(a.nodeName)},focus:function(a){var b=a.ownerDocument;return a===b.activeElement&&(!b.hasFocus||b.hasFocus())&&(!!a.type||!!a.href)},active:function(a){return a===a.ownerDocument.activeElement},first:bf(function(a,b,c){return[0]}),last:bf(function(a,b,c){return[b-1]}),eq:bf(function(a,b,c){return[c<0?c+b:c]}),even:bf(function(a,b,c){for(var d=0;d=0;)a.push(d);return a}),gt:bf(function(a,b,c){for(var d=c<0?c+b:c;++d",a.querySelectorAll("[selected]").length||e.push("\\["+E+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),a.querySelectorAll(":checked").length||e.push(":checked")}),X(function(a){a.innerHTML="

    ",a.querySelectorAll("[test^='']").length&&e.push("[*^$]="+E+"*(?:\"\"|'')"),a.innerHTML="",a.querySelectorAll(":enabled").length||e.push(":enabled",":disabled")}),e=new RegExp(e.join("|")),bp=function(a,d,f,g,h){if(!g&&!h&&(!e||!e.test(a))){var i,j,k=!0,l=o,m=d,n=d.nodeType===9&&a;if(d.nodeType===1&&d.nodeName.toLowerCase()!=="object"){i=bh(a),(k=d.getAttribute("id"))?l=k.replace(c,"\\$&"):d.setAttribute("id",l),l="[id='"+l+"'] ",j=i.length;while(j--)i[j]=l+i[j].join("");m=R.test(a)&&d.parentNode||d,n=i.join(",")}if(n)try{return w.apply(f,x.call(m.querySelectorAll(n),0)),f}catch(p){}finally{k||d.removeAttribute("id")}}return b(a,d,f,g,h)},h&&(X(function(b){a=h.call(b,"div");try{h.call(b,"[test!='']:sizzle"),f.push("!=",J)}catch(c){}}),f=new RegExp(f.join("|")),bc.matchesSelector=function(b,c){c=c.replace(d,"='$1']");if(!g(b)&&!f.test(c)&&(!e||!e.test(c)))try{var i=h.call(b,c);if(i||a||b.document&&b.document.nodeType!==11)return i}catch(j){}return bc(c,null,null,[b]).length>0})}(),e.pseudos.nth=e.pseudos.eq,e.filters=bq.prototype=e.pseudos,e.setFilters=new bq,bc.attr=p.attr,p.find=bc,p.expr=bc.selectors,p.expr[":"]=p.expr.pseudos,p.unique=bc.uniqueSort,p.text=bc.getText,p.isXMLDoc=bc.isXML,p.contains=bc.contains}(a);var bc=/Until$/,bd=/^(?:parents|prev(?:Until|All))/,be=/^.[^:#\[\.,]*$/,bf=p.expr.match.needsContext,bg={children:!0,contents:!0,next:!0,prev:!0};p.fn.extend({find:function(a){var b,c,d,e,f,g,h=this;if(typeof a!="string")return p(a).filter(function(){for(b=0,c=h.length;b0)for(e=d;e=0:p.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c,d=0,e=this.length,f=[],g=bf.test(a)||typeof a!="string"?p(a,b||this.context):0;for(;d-1:p.find.matchesSelector(c,a)){f.push(c);break}c=c.parentNode}}return f=f.length>1?p.unique(f):f,this.pushStack(f,"closest",a)},index:function(a){return a?typeof a=="string"?p.inArray(this[0],p(a)):p.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(a,b){var c=typeof a=="string"?p(a,b):p.makeArray(a&&a.nodeType?[a]:a),d=p.merge(this.get(),c);return this.pushStack(bh(c[0])||bh(d[0])?d:p.unique(d))},addBack:function(a){return this.add(a==null?this.prevObject:this.prevObject.filter(a))}}),p.fn.andSelf=p.fn.addBack,p.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return p.dir(a,"parentNode")},parentsUntil:function(a,b,c){return p.dir(a,"parentNode",c)},next:function(a){return bi(a,"nextSibling")},prev:function(a){return bi(a,"previousSibling")},nextAll:function(a){return p.dir(a,"nextSibling")},prevAll:function(a){return p.dir(a,"previousSibling")},nextUntil:function(a,b,c){return p.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return p.dir(a,"previousSibling",c)},siblings:function(a){return p.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return p.sibling(a.firstChild)},contents:function(a){return p.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:p.merge([],a.childNodes)}},function(a,b){p.fn[a]=function(c,d){var e=p.map(this,b,c);return bc.test(a)||(d=c),d&&typeof d=="string"&&(e=p.filter(d,e)),e=this.length>1&&!bg[a]?p.unique(e):e,this.length>1&&bd.test(a)&&(e=e.reverse()),this.pushStack(e,a,k.call(arguments).join(","))}}),p.extend({filter:function(a,b,c){return c&&(a=":not("+a+")"),b.length===1?p.find.matchesSelector(b[0],a)?[b[0]]:[]:p.find.matches(a,b)},dir:function(a,c,d){var e=[],f=a[c];while(f&&f.nodeType!==9&&(d===b||f.nodeType!==1||!p(f).is(d)))f.nodeType===1&&e.push(f),f=f[c];return e},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var bl="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",bm=/ jQuery\d+="(?:null|\d+)"/g,bn=/^\s+/,bo=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bp=/<([\w:]+)/,bq=/]","i"),bv=/^(?:checkbox|radio)$/,bw=/checked\s*(?:[^=]|=\s*.checked.)/i,bx=/\/(java|ecma)script/i,by=/^\s*\s*$/g,bz={option:[1,""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},bA=bk(e),bB=bA.appendChild(e.createElement("div"));bz.optgroup=bz.option,bz.tbody=bz.tfoot=bz.colgroup=bz.caption=bz.thead,bz.th=bz.td,p.support.htmlSerialize||(bz._default=[1,"X
    ","
    "]),p.fn.extend({text:function(a){return p.access(this,function(a){return a===b?p.text(this):this.empty().append((this[0]&&this[0].ownerDocument||e).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if(p.isFunction(a))return this.each(function(b){p(this).wrapAll(a.call(this,b))});if(this[0]){var b=p(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return p.isFunction(a)?this.each(function(b){p(this).wrapInner(a.call(this,b))}):this.each(function(){var b=p(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=p.isFunction(a);return this.each(function(c){p(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){p.nodeName(this,"body")||p(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(a,this.firstChild)})},before:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(a,this),"before",this.selector)}},after:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(this,a),"after",this.selector)}},remove:function(a,b){var c,d=0;for(;(c=this[d])!=null;d++)if(!a||p.filter(a,[c]).length)!b&&c.nodeType===1&&(p.cleanData(c.getElementsByTagName("*")),p.cleanData([c])),c.parentNode&&c.parentNode.removeChild(c);return this},empty:function(){var a,b=0;for(;(a=this[b])!=null;b++){a.nodeType===1&&p.cleanData(a.getElementsByTagName("*"));while(a.firstChild)a.removeChild(a.firstChild)}return this},clone:function(a,b){return a=a==null?!1:a,b=b==null?a:b,this.map(function(){return p.clone(this,a,b)})},html:function(a){return p.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return c.nodeType===1?c.innerHTML.replace(bm,""):b;if(typeof a=="string"&&!bs.test(a)&&(p.support.htmlSerialize||!bu.test(a))&&(p.support.leadingWhitespace||!bn.test(a))&&!bz[(bp.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(bo,"<$1>");try{for(;d1&&typeof j=="string"&&bw.test(j))return this.each(function(){p(this).domManip(a,c,d)});if(p.isFunction(j))return this.each(function(e){var f=p(this);a[0]=j.call(this,e,c?f.html():b),f.domManip(a,c,d)});if(this[0]){e=p.buildFragment(a,this,k),g=e.fragment,f=g.firstChild,g.childNodes.length===1&&(g=f);if(f){c=c&&p.nodeName(f,"tr");for(h=e.cacheable||l-1;i0?this.clone(!0):this).get(),p(g[e])[b](d),f=f.concat(d);return this.pushStack(f,a,g.selector)}}),p.extend({clone:function(a,b,c){var d,e,f,g;p.support.html5Clone||p.isXMLDoc(a)||!bu.test("<"+a.nodeName+">")?g=a.cloneNode(!0):(bB.innerHTML=a.outerHTML,bB.removeChild(g=bB.firstChild));if((!p.support.noCloneEvent||!p.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!p.isXMLDoc(a)){bE(a,g),d=bF(a),e=bF(g);for(f=0;d[f];++f)e[f]&&bE(d[f],e[f])}if(b){bD(a,g);if(c){d=bF(a),e=bF(g);for(f=0;d[f];++f)bD(d[f],e[f])}}return d=e=null,g},clean:function(a,b,c,d){var f,g,h,i,j,k,l,m,n,o,q,r,s=b===e&&bA,t=[];if(!b||typeof b.createDocumentFragment=="undefined")b=e;for(f=0;(h=a[f])!=null;f++){typeof h=="number"&&(h+="");if(!h)continue;if(typeof h=="string")if(!br.test(h))h=b.createTextNode(h);else{s=s||bk(b),l=b.createElement("div"),s.appendChild(l),h=h.replace(bo,"<$1>"),i=(bp.exec(h)||["",""])[1].toLowerCase(),j=bz[i]||bz._default,k=j[0],l.innerHTML=j[1]+h+j[2];while(k--)l=l.lastChild;if(!p.support.tbody){m=bq.test(h),n=i==="table"&&!m?l.firstChild&&l.firstChild.childNodes:j[1]===""&&!m?l.childNodes:[];for(g=n.length-1;g>=0;--g)p.nodeName(n[g],"tbody")&&!n[g].childNodes.length&&n[g].parentNode.removeChild(n[g])}!p.support.leadingWhitespace&&bn.test(h)&&l.insertBefore(b.createTextNode(bn.exec(h)[0]),l.firstChild),h=l.childNodes,l.parentNode.removeChild(l)}h.nodeType?t.push(h):p.merge(t,h)}l&&(h=l=s=null);if(!p.support.appendChecked)for(f=0;(h=t[f])!=null;f++)p.nodeName(h,"input")?bG(h):typeof h.getElementsByTagName!="undefined"&&p.grep(h.getElementsByTagName("input"),bG);if(c){q=function(a){if(!a.type||bx.test(a.type))return d?d.push(a.parentNode?a.parentNode.removeChild(a):a):c.appendChild(a)};for(f=0;(h=t[f])!=null;f++)if(!p.nodeName(h,"script")||!q(h))c.appendChild(h),typeof h.getElementsByTagName!="undefined"&&(r=p.grep(p.merge([],h.getElementsByTagName("script")),q),t.splice.apply(t,[f+1,0].concat(r)),f+=r.length)}return t},cleanData:function(a,b){var c,d,e,f,g=0,h=p.expando,i=p.cache,j=p.support.deleteExpando,k=p.event.special;for(;(e=a[g])!=null;g++)if(b||p.acceptData(e)){d=e[h],c=d&&i[d];if(c){if(c.events)for(f in c.events)k[f]?p.event.remove(e,f):p.removeEvent(e,f,c.handle);i[d]&&(delete i[d],j?delete e[h]:e.removeAttribute?e.removeAttribute(h):e[h]=null,p.deletedIds.push(d))}}}}),function(){var a,b;p.uaMatch=function(a){a=a.toLowerCase();var b=/(chrome)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},a=p.uaMatch(g.userAgent),b={},a.browser&&(b[a.browser]=!0,b.version=a.version),b.chrome?b.webkit=!0:b.webkit&&(b.safari=!0),p.browser=b,p.sub=function(){function a(b,c){return new a.fn.init(b,c)}p.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function c(c,d){return d&&d instanceof p&&!(d instanceof a)&&(d=a(d)),p.fn.init.call(this,c,d,b)},a.fn.init.prototype=a.fn;var b=a(e);return a}}();var bH,bI,bJ,bK=/alpha\([^)]*\)/i,bL=/opacity=([^)]*)/,bM=/^(top|right|bottom|left)$/,bN=/^(none|table(?!-c[ea]).+)/,bO=/^margin/,bP=new RegExp("^("+q+")(.*)$","i"),bQ=new RegExp("^("+q+")(?!px)[a-z%]+$","i"),bR=new RegExp("^([-+])=("+q+")","i"),bS={},bT={position:"absolute",visibility:"hidden",display:"block"},bU={letterSpacing:0,fontWeight:400},bV=["Top","Right","Bottom","Left"],bW=["Webkit","O","Moz","ms"],bX=p.fn.toggle;p.fn.extend({css:function(a,c){return p.access(this,function(a,c,d){return d!==b?p.style(a,c,d):p.css(a,c)},a,c,arguments.length>1)},show:function(){return b$(this,!0)},hide:function(){return b$(this)},toggle:function(a,b){var c=typeof a=="boolean";return p.isFunction(a)&&p.isFunction(b)?bX.apply(this,arguments):this.each(function(){(c?a:bZ(this))?p(this).show():p(this).hide()})}}),p.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bH(a,"opacity");return c===""?"1":c}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":p.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!a||a.nodeType===3||a.nodeType===8||!a.style)return;var f,g,h,i=p.camelCase(c),j=a.style;c=p.cssProps[i]||(p.cssProps[i]=bY(j,i)),h=p.cssHooks[c]||p.cssHooks[i];if(d===b)return h&&"get"in h&&(f=h.get(a,!1,e))!==b?f:j[c];g=typeof d,g==="string"&&(f=bR.exec(d))&&(d=(f[1]+1)*f[2]+parseFloat(p.css(a,c)),g="number");if(d==null||g==="number"&&isNaN(d))return;g==="number"&&!p.cssNumber[i]&&(d+="px");if(!h||!("set"in h)||(d=h.set(a,d,e))!==b)try{j[c]=d}catch(k){}},css:function(a,c,d,e){var f,g,h,i=p.camelCase(c);return c=p.cssProps[i]||(p.cssProps[i]=bY(a.style,i)),h=p.cssHooks[c]||p.cssHooks[i],h&&"get"in h&&(f=h.get(a,!0,e)),f===b&&(f=bH(a,c)),f==="normal"&&c in bU&&(f=bU[c]),d||e!==b?(g=parseFloat(f),d||p.isNumeric(g)?g||0:f):f},swap:function(a,b,c){var d,e,f={};for(e in b)f[e]=a.style[e],a.style[e]=b[e];d=c.call(a);for(e in b)a.style[e]=f[e];return d}}),a.getComputedStyle?bH=function(b,c){var d,e,f,g,h=a.getComputedStyle(b,null),i=b.style;return h&&(d=h[c],d===""&&!p.contains(b.ownerDocument,b)&&(d=p.style(b,c)),bQ.test(d)&&bO.test(c)&&(e=i.width,f=i.minWidth,g=i.maxWidth,i.minWidth=i.maxWidth=i.width=d,d=h.width,i.width=e,i.minWidth=f,i.maxWidth=g)),d}:e.documentElement.currentStyle&&(bH=function(a,b){var c,d,e=a.currentStyle&&a.currentStyle[b],f=a.style;return e==null&&f&&f[b]&&(e=f[b]),bQ.test(e)&&!bM.test(b)&&(c=f.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":e,e=f.pixelLeft+"px",f.left=c,d&&(a.runtimeStyle.left=d)),e===""?"auto":e}),p.each(["height","width"],function(a,b){p.cssHooks[b]={get:function(a,c,d){if(c)return a.offsetWidth===0&&bN.test(bH(a,"display"))?p.swap(a,bT,function(){return cb(a,b,d)}):cb(a,b,d)},set:function(a,c,d){return b_(a,c,d?ca(a,b,d,p.support.boxSizing&&p.css(a,"boxSizing")==="border-box"):0)}}}),p.support.opacity||(p.cssHooks.opacity={get:function(a,b){return bL.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=p.isNumeric(b)?"alpha(opacity="+b*100+")":"",f=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&p.trim(f.replace(bK,""))===""&&c.removeAttribute){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bK.test(f)?f.replace(bK,e):f+" "+e}}),p(function(){p.support.reliableMarginRight||(p.cssHooks.marginRight={get:function(a,b){return p.swap(a,{display:"inline-block"},function(){if(b)return bH(a,"marginRight")})}}),!p.support.pixelPosition&&p.fn.position&&p.each(["top","left"],function(a,b){p.cssHooks[b]={get:function(a,c){if(c){var d=bH(a,b);return bQ.test(d)?p(a).position()[b]+"px":d}}}})}),p.expr&&p.expr.filters&&(p.expr.filters.hidden=function(a){return a.offsetWidth===0&&a.offsetHeight===0||!p.support.reliableHiddenOffsets&&(a.style&&a.style.display||bH(a,"display"))==="none"},p.expr.filters.visible=function(a){return!p.expr.filters.hidden(a)}),p.each({margin:"",padding:"",border:"Width"},function(a,b){p.cssHooks[a+b]={expand:function(c){var d,e=typeof c=="string"?c.split(" "):[c],f={};for(d=0;d<4;d++)f[a+bV[d]+b]=e[d]||e[d-2]||e[0];return f}},bO.test(a)||(p.cssHooks[a+b].set=b_)});var cd=/%20/g,ce=/\[\]$/,cf=/\r?\n/g,cg=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,ch=/^(?:select|textarea)/i;p.fn.extend({serialize:function(){return p.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?p.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ch.test(this.nodeName)||cg.test(this.type))}).map(function(a,b){var c=p(this).val();return c==null?null:p.isArray(c)?p.map(c,function(a,c){return{name:b.name,value:a.replace(cf,"\r\n")}}):{name:b.name,value:c.replace(cf,"\r\n")}}).get()}}),p.param=function(a,c){var d,e=[],f=function(a,b){b=p.isFunction(b)?b():b==null?"":b,e[e.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=p.ajaxSettings&&p.ajaxSettings.traditional);if(p.isArray(a)||a.jquery&&!p.isPlainObject(a))p.each(a,function(){f(this.name,this.value)});else for(d in a)ci(d,a[d],c,f);return e.join("&").replace(cd,"+")};var cj,ck,cl=/#.*$/,cm=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,cn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,co=/^(?:GET|HEAD)$/,cp=/^\/\//,cq=/\?/,cr=/)<[^<]*)*<\/script>/gi,cs=/([?&])_=[^&]*/,ct=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,cu=p.fn.load,cv={},cw={},cx=["*/"]+["*"];try{ck=f.href}catch(cy){ck=e.createElement("a"),ck.href="",ck=ck.href}cj=ct.exec(ck.toLowerCase())||[],p.fn.load=function(a,c,d){if(typeof a!="string"&&cu)return cu.apply(this,arguments);if(!this.length)return this;var e,f,g,h=this,i=a.indexOf(" ");return i>=0&&(e=a.slice(i,a.length),a=a.slice(0,i)),p.isFunction(c)?(d=c,c=b):c&&typeof c=="object"&&(f="POST"),p.ajax({url:a,type:f,dataType:"html",data:c,complete:function(a,b){d&&h.each(d,g||[a.responseText,b,a])}}).done(function(a){g=arguments,h.html(e?p("
    ").append(a.replace(cr,"")).find(e):a)}),this},p.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){p.fn[b]=function(a){return this.on(b,a)}}),p.each(["get","post"],function(a,c){p[c]=function(a,d,e,f){return p.isFunction(d)&&(f=f||e,e=d,d=b),p.ajax({type:c,url:a,data:d,success:e,dataType:f})}}),p.extend({getScript:function(a,c){return p.get(a,b,c,"script")},getJSON:function(a,b,c){return p.get(a,b,c,"json")},ajaxSetup:function(a,b){return b?cB(a,p.ajaxSettings):(b=a,a=p.ajaxSettings),cB(a,b),a},ajaxSettings:{url:ck,isLocal:cn.test(cj[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":cx},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":p.parseJSON,"text xml":p.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:cz(cv),ajaxTransport:cz(cw),ajax:function(a,c){function y(a,c,f,i){var k,s,t,u,w,y=c;if(v===2)return;v=2,h&&clearTimeout(h),g=b,e=i||"",x.readyState=a>0?4:0,f&&(u=cC(l,x,f));if(a>=200&&a<300||a===304)l.ifModified&&(w=x.getResponseHeader("Last-Modified"),w&&(p.lastModified[d]=w),w=x.getResponseHeader("Etag"),w&&(p.etag[d]=w)),a===304?(y="notmodified",k=!0):(k=cD(l,u),y=k.state,s=k.data,t=k.error,k=!t);else{t=y;if(!y||a)y="error",a<0&&(a=0)}x.status=a,x.statusText=(c||y)+"",k?o.resolveWith(m,[s,y,x]):o.rejectWith(m,[x,y,t]),x.statusCode(r),r=b,j&&n.trigger("ajax"+(k?"Success":"Error"),[x,l,k?s:t]),q.fireWith(m,[x,y]),j&&(n.trigger("ajaxComplete",[x,l]),--p.active||p.event.trigger("ajaxStop"))}typeof a=="object"&&(c=a,a=b),c=c||{};var d,e,f,g,h,i,j,k,l=p.ajaxSetup({},c),m=l.context||l,n=m!==l&&(m.nodeType||m instanceof p)?p(m):p.event,o=p.Deferred(),q=p.Callbacks("once memory"),r=l.statusCode||{},t={},u={},v=0,w="canceled",x={readyState:0,setRequestHeader:function(a,b){if(!v){var c=a.toLowerCase();a=u[c]=u[c]||a,t[a]=b}return this},getAllResponseHeaders:function(){return v===2?e:null},getResponseHeader:function(a){var c;if(v===2){if(!f){f={};while(c=cm.exec(e))f[c[1].toLowerCase()]=c[2]}c=f[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){return v||(l.mimeType=a),this},abort:function(a){return a=a||w,g&&g.abort(a),y(0,a),this}};o.promise(x),x.success=x.done,x.error=x.fail,x.complete=q.add,x.statusCode=function(a){if(a){var b;if(v<2)for(b in a)r[b]=[r[b],a[b]];else b=a[x.status],x.always(b)}return this},l.url=((a||l.url)+"").replace(cl,"").replace(cp,cj[1]+"//"),l.dataTypes=p.trim(l.dataType||"*").toLowerCase().split(s),l.crossDomain==null&&(i=ct.exec(l.url.toLowerCase())||!1,l.crossDomain=i&&i.join(":")+(i[3]?"":i[1]==="http:"?80:443)!==cj.join(":")+(cj[3]?"":cj[1]==="http:"?80:443)),l.data&&l.processData&&typeof l.data!="string"&&(l.data=p.param(l.data,l.traditional)),cA(cv,l,c,x);if(v===2)return x;j=l.global,l.type=l.type.toUpperCase(),l.hasContent=!co.test(l.type),j&&p.active++===0&&p.event.trigger("ajaxStart");if(!l.hasContent){l.data&&(l.url+=(cq.test(l.url)?"&":"?")+l.data,delete l.data),d=l.url;if(l.cache===!1){var z=p.now(),A=l.url.replace(cs,"$1_="+z);l.url=A+(A===l.url?(cq.test(l.url)?"&":"?")+"_="+z:"")}}(l.data&&l.hasContent&&l.contentType!==!1||c.contentType)&&x.setRequestHeader("Content-Type",l.contentType),l.ifModified&&(d=d||l.url,p.lastModified[d]&&x.setRequestHeader("If-Modified-Since",p.lastModified[d]),p.etag[d]&&x.setRequestHeader("If-None-Match",p.etag[d])),x.setRequestHeader("Accept",l.dataTypes[0]&&l.accepts[l.dataTypes[0]]?l.accepts[l.dataTypes[0]]+(l.dataTypes[0]!=="*"?", "+cx+"; q=0.01":""):l.accepts["*"]);for(k in l.headers)x.setRequestHeader(k,l.headers[k]);if(!l.beforeSend||l.beforeSend.call(m,x,l)!==!1&&v!==2){w="abort";for(k in{success:1,error:1,complete:1})x[k](l[k]);g=cA(cw,l,c,x);if(!g)y(-1,"No Transport");else{x.readyState=1,j&&n.trigger("ajaxSend",[x,l]),l.async&&l.timeout>0&&(h=setTimeout(function(){x.abort("timeout")},l.timeout));try{v=1,g.send(t,y)}catch(B){if(v<2)y(-1,B);else throw B}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var cE=[],cF=/\?/,cG=/(=)\?(?=&|$)|\?\?/,cH=p.now();p.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=cE.pop()||p.expando+"_"+cH++;return this[a]=!0,a}}),p.ajaxPrefilter("json jsonp",function(c,d,e){var f,g,h,i=c.data,j=c.url,k=c.jsonp!==!1,l=k&&cG.test(j),m=k&&!l&&typeof i=="string"&&!(c.contentType||"").indexOf("application/x-www-form-urlencoded")&&cG.test(i);if(c.dataTypes[0]==="jsonp"||l||m)return f=c.jsonpCallback=p.isFunction(c.jsonpCallback)?c.jsonpCallback():c.jsonpCallback,g=a[f],l?c.url=j.replace(cG,"$1"+f):m?c.data=i.replace(cG,"$1"+f):k&&(c.url+=(cF.test(j)?"&":"?")+c.jsonp+"="+f),c.converters["script json"]=function(){return h||p.error(f+" was not called"),h[0]},c.dataTypes[0]="json",a[f]=function(){h=arguments},e.always(function(){a[f]=g,c[f]&&(c.jsonpCallback=d.jsonpCallback,cE.push(f)),h&&p.isFunction(g)&&g(h[0]),h=g=b}),"script"}),p.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){return p.globalEval(a),a}}}),p.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),p.ajaxTransport("script",function(a){if(a.crossDomain){var c,d=e.head||e.getElementsByTagName("head")[0]||e.documentElement;return{send:function(f,g){c=e.createElement("script"),c.async="async",a.scriptCharset&&(c.charset=a.scriptCharset),c.src=a.url,c.onload=c.onreadystatechange=function(a,e){if(e||!c.readyState||/loaded|complete/.test(c.readyState))c.onload=c.onreadystatechange=null,d&&c.parentNode&&d.removeChild(c),c=b,e||g(200,"success")},d.insertBefore(c,d.firstChild)},abort:function(){c&&c.onload(0,1)}}}});var cI,cJ=a.ActiveXObject?function(){for(var a in cI)cI[a](0,1)}:!1,cK=0;p.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&cL()||cM()}:cL,function(a){p.extend(p.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(p.ajaxSettings.xhr()),p.support.ajax&&p.ajaxTransport(function(c){if(!c.crossDomain||p.support.cors){var d;return{send:function(e,f){var g,h,i=c.xhr();c.username?i.open(c.type,c.url,c.async,c.username,c.password):i.open(c.type,c.url,c.async);if(c.xhrFields)for(h in c.xhrFields)i[h]=c.xhrFields[h];c.mimeType&&i.overrideMimeType&&i.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(h in e)i.setRequestHeader(h,e[h])}catch(j){}i.send(c.hasContent&&c.data||null),d=function(a,e){var h,j,k,l,m;try{if(d&&(e||i.readyState===4)){d=b,g&&(i.onreadystatechange=p.noop,cJ&&delete cI[g]);if(e)i.readyState!==4&&i.abort();else{h=i.status,k=i.getAllResponseHeaders(),l={},m=i.responseXML,m&&m.documentElement&&(l.xml=m);try{l.text=i.responseText}catch(a){}try{j=i.statusText}catch(n){j=""}!h&&c.isLocal&&!c.crossDomain?h=l.text?200:404:h===1223&&(h=204)}}}catch(o){e||f(-1,o)}l&&f(h,j,l,k)},c.async?i.readyState===4?setTimeout(d,0):(g=++cK,cJ&&(cI||(cI={},p(a).unload(cJ)),cI[g]=d),i.onreadystatechange=d):d()},abort:function(){d&&d(0,1)}}}});var cN,cO,cP=/^(?:toggle|show|hide)$/,cQ=new RegExp("^(?:([-+])=|)("+q+")([a-z%]*)$","i"),cR=/queueHooks$/,cS=[cY],cT={"*":[function(a,b){var c,d,e=this.createTween(a,b),f=cQ.exec(b),g=e.cur(),h=+g||0,i=1,j=20;if(f){c=+f[2],d=f[3]||(p.cssNumber[a]?"":"px");if(d!=="px"&&h){h=p.css(e.elem,a,!0)||c||1;do i=i||".5",h=h/i,p.style(e.elem,a,h+d);while(i!==(i=e.cur()/g)&&i!==1&&--j)}e.unit=d,e.start=h,e.end=f[1]?h+(f[1]+1)*c:c}return e}]};p.Animation=p.extend(cW,{tweener:function(a,b){p.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");var c,d=0,e=a.length;for(;d-1,j={},k={},l,m;i?(k=e.position(),l=k.top,m=k.left):(l=parseFloat(g)||0,m=parseFloat(h)||0),p.isFunction(b)&&(b=b.call(a,c,f)),b.top!=null&&(j.top=b.top-f.top+l),b.left!=null&&(j.left=b.left-f.left+m),"using"in b?b.using.call(a,j):e.css(j)}},p.fn.extend({position:function(){if(!this[0])return;var a=this[0],b=this.offsetParent(),c=this.offset(),d=c_.test(b[0].nodeName)?{top:0,left:0}:b.offset();return c.top-=parseFloat(p.css(a,"marginTop"))||0,c.left-=parseFloat(p.css(a,"marginLeft"))||0,d.top+=parseFloat(p.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(p.css(b[0],"borderLeftWidth"))||0,{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||e.body;while(a&&!c_.test(a.nodeName)&&p.css(a,"position")==="static")a=a.offsetParent;return a||e.body})}}),p.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,c){var d=/Y/.test(c);p.fn[a]=function(e){return p.access(this,function(a,e,f){var g=da(a);if(f===b)return g?c in g?g[c]:g.document.documentElement[e]:a[e];g?g.scrollTo(d?p(g).scrollLeft():f,d?f:p(g).scrollTop()):a[e]=f},a,e,arguments.length,null)}}),p.each({Height:"height",Width:"width"},function(a,c){p.each({padding:"inner"+a,content:c,"":"outer"+a},function(d,e){p.fn[e]=function(e,f){var g=arguments.length&&(d||typeof e!="boolean"),h=d||(e===!0||f===!0?"margin":"border");return p.access(this,function(c,d,e){var f;return p.isWindow(c)?c.document.documentElement["client"+a]:c.nodeType===9?(f=c.documentElement,Math.max(c.body["scroll"+a],f["scroll"+a],c.body["offset"+a],f["offset"+a],f["client"+a])):e===b?p.css(c,d,e,h):p.style(c,d,e,h)},c,g?e:b,g,null)}})}),a.jQuery=a.$=p,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return p})})(window); \ No newline at end of file diff --git a/worms/external/test/qunit.css b/worms/external/test/qunit.css new file mode 100644 index 0000000..1a55d67 --- /dev/null +++ b/worms/external/test/qunit.css @@ -0,0 +1,242 @@ +/** + * QUnit v1.10.0 - A JavaScript Unit Testing Framework + * + * http://qunitjs.com + * + * Copyright 2012 jQuery Foundation and other contributors + * Released under the MIT license. + * http://jquery.org/license + */ + +/** Font Family and Sizes */ + +#qunit-tests, #qunit-header, #qunit-banner, #qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult { + font-family: "Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial, sans-serif; +} + +#qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult, #qunit-tests li { font-size: small; } +#qunit-tests { font-size: smaller; } + + +/** Resets */ + +#qunit-tests, #qunit-tests ol, #qunit-header, #qunit-banner, #qunit-userAgent, #qunit-testresult, #qunit-modulefilter { + margin: 0; + padding: 0; +} + + +/** Header */ + +#qunit-header { + padding: 0.5em 0 0.5em 1em; + + color: #8699a4; + background-color: #0d3349; + + font-size: 1.5em; + line-height: 1em; + font-weight: normal; + + border-radius: 5px 5px 0 0; + -moz-border-radius: 5px 5px 0 0; + -webkit-border-top-right-radius: 5px; + -webkit-border-top-left-radius: 5px; +} + +#qunit-header a { + text-decoration: none; + color: #c2ccd1; +} + +#qunit-header a:hover, +#qunit-header a:focus { + color: #fff; +} + +#qunit-testrunner-toolbar label { + display: inline-block; + padding: 0 .5em 0 .1em; +} + +#qunit-banner { + height: 5px; +} + +#qunit-testrunner-toolbar { + padding: 0.5em 0 0.5em 2em; + color: #5E740B; + background-color: #eee; + overflow: hidden; +} + +#qunit-userAgent { + padding: 0.5em 0 0.5em 2.5em; + background-color: #2b81af; + color: #fff; + text-shadow: rgba(0, 0, 0, 0.5) 2px 2px 1px; +} + +#qunit-modulefilter-container { + float: right; +} + +/** Tests: Pass/Fail */ + +#qunit-tests { + list-style-position: inside; +} + +#qunit-tests li { + padding: 0.4em 0.5em 0.4em 2.5em; + border-bottom: 1px solid #fff; + list-style-position: inside; +} + +#qunit-tests.hidepass li.pass, #qunit-tests.hidepass li.running { + display: none; +} + +#qunit-tests li strong { + cursor: pointer; +} + +#qunit-tests li a { + padding: 0.5em; + color: #c2ccd1; + text-decoration: none; +} +#qunit-tests li a:hover, +#qunit-tests li a:focus { + color: #000; +} + +#qunit-tests ol { + margin-top: 0.5em; + padding: 0.5em; + + background-color: #fff; + + border-radius: 5px; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; +} + +#qunit-tests table { + border-collapse: collapse; + margin-top: .2em; +} + +#qunit-tests th { + text-align: right; + vertical-align: top; + padding: 0 .5em 0 0; +} + +#qunit-tests td { + vertical-align: top; +} + +#qunit-tests pre { + margin: 0; + white-space: pre-wrap; + word-wrap: break-word; +} + +#qunit-tests del { + background-color: #e0f2be; + color: #374e0c; + text-decoration: none; +} + +#qunit-tests ins { + background-color: #ffcaca; + color: #500; + text-decoration: none; +} + +/*** Test Counts */ + +#qunit-tests b.counts { color: black; } +#qunit-tests b.passed { color: #5E740B; } +#qunit-tests b.failed { color: #710909; } + +#qunit-tests li li { + padding: 5px; + background-color: #fff; + border-bottom: none; + list-style-position: inside; +} + +/*** Passing Styles */ + +#qunit-tests li li.pass { + color: #3c510c; + background-color: #fff; + border-left: 10px solid #C6E746; +} + +#qunit-tests .pass { color: #528CE0; background-color: #D2E0E6; } +#qunit-tests .pass .test-name { color: #366097; } + +#qunit-tests .pass .test-actual, +#qunit-tests .pass .test-expected { color: #999999; } + +#qunit-banner.qunit-pass { background-color: #C6E746; } + +/*** Failing Styles */ + +#qunit-tests li li.fail { + color: #710909; + background-color: #fff; + border-left: 10px solid #EE5757; + white-space: pre; +} + +#qunit-tests > li:last-child { + border-radius: 0 0 5px 5px; + -moz-border-radius: 0 0 5px 5px; + -webkit-border-bottom-right-radius: 5px; + -webkit-border-bottom-left-radius: 5px; +} + +#qunit-tests .fail { color: #000000; background-color: #EE5757; } +#qunit-tests .fail .test-name, +#qunit-tests .fail .module-name { color: #000000; } + +#qunit-tests .fail .test-actual { color: #EE5757; } +#qunit-tests .fail .test-expected { color: green; } + +#qunit-banner.qunit-fail { background-color: #EE5757; } + + +/** Result */ + +#qunit-testresult { + padding: 0.5em 0.5em 0.5em 2.5em; + + color: #2b81af; + background-color: #D2E0E6; + + border-bottom: 1px solid white; +} +#qunit-testresult .module-name { + font-weight: bold; +} + +/** Fixture */ + +#qunit-fixture { + position: absolute; + top: -10000px; + left: -10000px; + width: 1000px; + height: 1000px; +} + + +#qunit{ + position:absolute; + z-index: 1; + +} diff --git a/worms/index.html b/worms/index.html new file mode 100644 index 0000000..14484ce --- /dev/null +++ b/worms/index.html @@ -0,0 +1,175 @@ + + + + + + + + Worms Armageddon HTML5 Clone + + + + + + + + + + + + + + + + + + + +
    +

    +
    + + + + +
    +
    +

    Worms Armageddon HTML5 Clone

    +
    +

    + Welcome to a recreation of Team17's turn-based artillery strategy worms armageddon. + All copyright and credit for the art/sound assets belongs to Team17 + and for making such an awesome game in the first place. This clone is currently under development by Ciarán McCann as part of his final year on the IT Carlow Games Development course. + Read more.. +

    +
    + +

    + + Noobs tutorial + Local two player + Online multiplayer +

    +
    +
    + +
    + +
    + +
    +
    +
    + + +
    +
    + + +
    + + +
    + + +
    +
    +
    + +
    +
      +
      + +
      + \ No newline at end of file

      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%0DQ7;gIv#ZG{?EgK2?` zjr*RduMHZ#D5WLPM4(Kl>hV4<@r?yp#-gmP2+r{@&eNOu@lHC3fIs!Vt9asp^Ef!l ze22ZtQbhPa1*SEC*>4514Cz9aoOp; zpwuQmf?So_%e6knw1dROV}mcTR{hlJ0$OMv*pYYn4i=upJXlS_!Ujv?@LKf_G^)lT znGgqVx2|o&1*Rrml-z*RE4WL0y9G@g1Pl>K)T7?Ss&AL>ShMthsKnn#DK;wVY1X;ar z>t868e-30gf4#y^BR`Xe`vQfryRG z07f_eNDJN=)AGH)Et;3CsfQ4>IiZhuAtCe0k%b_u&!)Aa9X9 zFW+Z|Rfzzd)Znw<`5@kP`3$xX`o5t~B|{{@{=oq@H`mc28^-9VW=Sd=l?+)`hnbd` z9QGHM!s!iaL={YFiK{QWjcc$%!p279vf?dNusotxRaV4qT)j;|$9hLp^A^f|7{Gut z+;>-kZerk^6#R+6*Nvo_tQ?FQ4?~qJmZRE09M3{lT&!xm0lZpPA8x8WnMRJ&sf^oH z4{v?lHnMgE9|kplyq3=Rb2Y{RHVQ!u0qa}9+Ez)vIu<;?vHRuS!SK|O$2(2|d*RH& zU-^mu;5}GaNN~{0f(7JpSv=AEbFf%4==FQp+}OhU`g)l;j47k2vLePWwEE(7Bb17b z4))t!WG&48#Nu#93A2bVwAXhSc|N;Dg>;c}8s94bWMoSfEW411L(Maa`xgnA86*Z2 zIx3;&#gd*O%PsY~whTmj^&i)^Q+atC$SPBPM*`<)GbblL*^CxtS~Y7_ zAui)siD>~0D(#BJv~QKfWk+*-Jh`eGmLRIJqei-FQa4&&p=NCyku z8L%KY=0X8GKjz1saP+bqFKq1o!gt(z*U$R7OoXoO;K;d#rJRL zT{a`~jbnnGQ_Prynx)w2D(04Mc$H&F^lMb}&We|&>Vs(v<}wzDl#>Hq$AS00dCwLE ztOp1Pc`l7PkQ@Okltr8&V0GE&{D%Yom^AT9fgk)J@U@qLU-<&?J74nz?e>8O?>ffM z$XZ_TUv- zD#!p^NAnmn70yh+UJv+(zYF?LJ_>p7gM{5(f$6Sd<-()D^8MH!41*Fciileg7L@A#w!ERe~VT?`Hk*JHxyHY7D9s^M0s2XccyyF|y z_R_*Ng1my&sadW?Ly{thjSFM1A_0qP1B_O|x>{|}*5ITY8iaw=P#|DWXC=AY#IOo{ zg#Db{^XDu&i9wbLjEyt4#W#|M&7A|rXOz{WP_2R1pfZbIqy%(|hAk-uzf?aAVYGU^ z*8HlQY4!Dp`)Zu)s`qiJ@5zdAE!_0#q-*gSEf&Kym3N!kHLBgXCH&2dcvasqvA|Ie z*gurmCpa4%kV@72tT8bO_goUsFA0oN!HODdCIuP8u+9gJ*hClAutu#DC)Hd#D*Bcz18+(k@0%; Ru6FA-0c(*f{Jzywe-JRGueKyvp2fc=p&d0Z%`8 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�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%0A@0-Jm<(9?i2nTXdP@*1sQ$`o!Nhs_OZ^Lxt2n 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� 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[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%0DC%4xLn!ygMI(O){lSY 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 literal 0 HcmV?d00001 diff --git a/worms/data/images/menu/xbox360controls.png b/worms/data/images/menu/xbox360controls.png new file mode 100644 index 0000000000000000000000000000000000000000..2ecbb816b19da221cda9e65025646efc2d1794b4 GIT binary patch literal 99421 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 Z>x!-twg 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�YnJ{?Igw(hubpE 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%0AVsKm=K_BCi18DfIzx2hF$WEM`J^!1NWekv%^9 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 literal 0 HcmV?d00001 diff --git a/worms/data/sounds/boring.wav b/worms/data/sounds/boring.wav new file mode 100644 index 0000000000000000000000000000000000000000..9942327649bf6e60a6690c7083b0aea1fbad91a4 GIT binary patch literal 22618 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 Q{>LX@OC-K74h$>#A1ogZH~;_u literal 0 HcmV?d00001 diff --git a/worms/data/sounds/explosion2.wav b/worms/data/sounds/explosion2.wav new file mode 100644 index 0000000000000000000000000000000000000000..a38e1c52f7b2b70b6cc6762f25ad980cf69461f4 GIT binary patch literal 43032 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 literal 0 HcmV?d00001 diff --git a/worms/external/Box2dWeb-2.1.a.3.js b/worms/external/Box2dWeb-2.1.a.3.js new file mode 100644 index 0000000..aa6ed21 --- /dev/null +++ b/worms/external/Box2dWeb-2.1.a.3.js @@ -0,0 +1,10869 @@ +/* +* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com +* +* This software is provided 'as-is', without any express or implied +* warranty. In no event will the authors be held liable for any damages +* arising from the use of this software. +* Permission is granted to anyone to use this software for any purpose, +* including commercial applications, and to alter it and redistribute it +* freely, subject to the following restrictions: +* 1. The origin of this software must not be misrepresented; you must not +* claim that you wrote the original software. If you use this software +* in a product, an acknowledgment in the product documentation would be +* appreciated but is not required. +* 2. Altered source versions must be plainly marked as such, and must not be +* misrepresented as being the original software. +* 3. This notice may not be removed or altered from any source distribution. +*/ +var Box2D = {}; + +(function (a2j, undefined) { + + if(!(Object.prototype.defineProperty instanceof Function) + && Object.prototype.__defineGetter__ instanceof Function + && Object.prototype.__defineSetter__ instanceof Function) + { + Object.defineProperty = function(obj, p, cfg) { + if(cfg.get instanceof Function) + obj.__defineGetter__(p, cfg.get); + if(cfg.set instanceof Function) + obj.__defineSetter__(p, cfg.set); + } + } + + function emptyFn() {}; + a2j.inherit = function(cls, base) { + var tmpCtr = cls; + emptyFn.prototype = base.prototype; + cls.prototype = new emptyFn; + cls.prototype.constructor = tmpCtr; + }; + + a2j.generateCallback = function generateCallback(context, cb) { + return function () { + cb.apply(context, arguments); + }; + }; + + a2j.NVector = function NVector(length) { + if (length === undefined) length = 0; + var tmp = new Array(length || 0); + for (var i = 0; i < length; ++i) + tmp[i] = 0; + return tmp; + }; + + a2j.is = function is(o1, o2) { + if (o1 === null) return false; + if ((o2 instanceof Function) && (o1 instanceof o2)) return true; + if ((o1.constructor.__implements != undefined) && (o1.constructor.__implements[o2])) return true; + return false; + }; + + a2j.parseUInt = function(v) { + return Math.abs(parseInt(v)); + } + +})(Box2D); + +//#TODO remove assignments from global namespace +var Vector = Array; +var Vector_a2j_Number = Box2D.NVector; +//package structure +if (typeof(Box2D) === "undefined") Box2D = {}; +if (typeof(Box2D.Collision) === "undefined") Box2D.Collision = {}; +if (typeof(Box2D.Collision.Shapes) === "undefined") Box2D.Collision.Shapes = {}; +if (typeof(Box2D.Common) === "undefined") Box2D.Common = {}; +if (typeof(Box2D.Common.Math) === "undefined") Box2D.Common.Math = {}; +if (typeof(Box2D.Dynamics) === "undefined") Box2D.Dynamics = {}; +if (typeof(Box2D.Dynamics.Contacts) === "undefined") Box2D.Dynamics.Contacts = {}; +if (typeof(Box2D.Dynamics.Controllers) === "undefined") Box2D.Dynamics.Controllers = {}; +if (typeof(Box2D.Dynamics.Joints) === "undefined") Box2D.Dynamics.Joints = {}; +//pre-definitions +(function () { + Box2D.Collision.IBroadPhase = 'Box2D.Collision.IBroadPhase'; + + function b2AABB() { + b2AABB.b2AABB.apply(this, arguments); + }; + Box2D.Collision.b2AABB = b2AABB; + + function b2Bound() { + b2Bound.b2Bound.apply(this, arguments); + }; + Box2D.Collision.b2Bound = b2Bound; + + function b2BoundValues() { + b2BoundValues.b2BoundValues.apply(this, arguments); + if (this.constructor === b2BoundValues) this.b2BoundValues.apply(this, arguments); + }; + Box2D.Collision.b2BoundValues = b2BoundValues; + + function b2Collision() { + b2Collision.b2Collision.apply(this, arguments); + }; + Box2D.Collision.b2Collision = b2Collision; + + function b2ContactID() { + b2ContactID.b2ContactID.apply(this, arguments); + if (this.constructor === b2ContactID) this.b2ContactID.apply(this, arguments); + }; + Box2D.Collision.b2ContactID = b2ContactID; + + function b2ContactPoint() { + b2ContactPoint.b2ContactPoint.apply(this, arguments); + }; + Box2D.Collision.b2ContactPoint = b2ContactPoint; + + function b2Distance() { + b2Distance.b2Distance.apply(this, arguments); + }; + Box2D.Collision.b2Distance = b2Distance; + + function b2DistanceInput() { + b2DistanceInput.b2DistanceInput.apply(this, arguments); + }; + Box2D.Collision.b2DistanceInput = b2DistanceInput; + + function b2DistanceOutput() { + b2DistanceOutput.b2DistanceOutput.apply(this, arguments); + }; + Box2D.Collision.b2DistanceOutput = b2DistanceOutput; + + function b2DistanceProxy() { + b2DistanceProxy.b2DistanceProxy.apply(this, arguments); + }; + Box2D.Collision.b2DistanceProxy = b2DistanceProxy; + + function b2DynamicTree() { + b2DynamicTree.b2DynamicTree.apply(this, arguments); + if (this.constructor === b2DynamicTree) this.b2DynamicTree.apply(this, arguments); + }; + Box2D.Collision.b2DynamicTree = b2DynamicTree; + + function b2DynamicTreeBroadPhase() { + b2DynamicTreeBroadPhase.b2DynamicTreeBroadPhase.apply(this, arguments); + }; + Box2D.Collision.b2DynamicTreeBroadPhase = b2DynamicTreeBroadPhase; + + function b2DynamicTreeNode() { + b2DynamicTreeNode.b2DynamicTreeNode.apply(this, arguments); + }; + Box2D.Collision.b2DynamicTreeNode = b2DynamicTreeNode; + + function b2DynamicTreePair() { + b2DynamicTreePair.b2DynamicTreePair.apply(this, arguments); + }; + Box2D.Collision.b2DynamicTreePair = b2DynamicTreePair; + + function b2Manifold() { + b2Manifold.b2Manifold.apply(this, arguments); + if (this.constructor === b2Manifold) this.b2Manifold.apply(this, arguments); + }; + Box2D.Collision.b2Manifold = b2Manifold; + + function b2ManifoldPoint() { + b2ManifoldPoint.b2ManifoldPoint.apply(this, arguments); + if (this.constructor === b2ManifoldPoint) this.b2ManifoldPoint.apply(this, arguments); + }; + Box2D.Collision.b2ManifoldPoint = b2ManifoldPoint; + + function b2Point() { + b2Point.b2Point.apply(this, arguments); + }; + Box2D.Collision.b2Point = b2Point; + + function b2RayCastInput() { + b2RayCastInput.b2RayCastInput.apply(this, arguments); + if (this.constructor === b2RayCastInput) this.b2RayCastInput.apply(this, arguments); + }; + Box2D.Collision.b2RayCastInput = b2RayCastInput; + + function b2RayCastOutput() { + b2RayCastOutput.b2RayCastOutput.apply(this, arguments); + }; + Box2D.Collision.b2RayCastOutput = b2RayCastOutput; + + function b2Segment() { + b2Segment.b2Segment.apply(this, arguments); + }; + Box2D.Collision.b2Segment = b2Segment; + + function b2SeparationFunction() { + b2SeparationFunction.b2SeparationFunction.apply(this, arguments); + }; + Box2D.Collision.b2SeparationFunction = b2SeparationFunction; + + function b2Simplex() { + b2Simplex.b2Simplex.apply(this, arguments); + if (this.constructor === b2Simplex) this.b2Simplex.apply(this, arguments); + }; + Box2D.Collision.b2Simplex = b2Simplex; + + function b2SimplexCache() { + b2SimplexCache.b2SimplexCache.apply(this, arguments); + }; + Box2D.Collision.b2SimplexCache = b2SimplexCache; + + function b2SimplexVertex() { + b2SimplexVertex.b2SimplexVertex.apply(this, arguments); + }; + Box2D.Collision.b2SimplexVertex = b2SimplexVertex; + + function b2TimeOfImpact() { + b2TimeOfImpact.b2TimeOfImpact.apply(this, arguments); + }; + Box2D.Collision.b2TimeOfImpact = b2TimeOfImpact; + + function b2TOIInput() { + b2TOIInput.b2TOIInput.apply(this, arguments); + }; + Box2D.Collision.b2TOIInput = b2TOIInput; + + function b2WorldManifold() { + b2WorldManifold.b2WorldManifold.apply(this, arguments); + if (this.constructor === b2WorldManifold) this.b2WorldManifold.apply(this, arguments); + }; + Box2D.Collision.b2WorldManifold = b2WorldManifold; + + function ClipVertex() { + ClipVertex.ClipVertex.apply(this, arguments); + }; + Box2D.Collision.ClipVertex = ClipVertex; + + function Features() { + Features.Features.apply(this, arguments); + }; + Box2D.Collision.Features = Features; + + function b2CircleShape() { + b2CircleShape.b2CircleShape.apply(this, arguments); + if (this.constructor === b2CircleShape) this.b2CircleShape.apply(this, arguments); + }; + Box2D.Collision.Shapes.b2CircleShape = b2CircleShape; + + function b2EdgeChainDef() { + b2EdgeChainDef.b2EdgeChainDef.apply(this, arguments); + if (this.constructor === b2EdgeChainDef) this.b2EdgeChainDef.apply(this, arguments); + }; + Box2D.Collision.Shapes.b2EdgeChainDef = b2EdgeChainDef; + + function b2EdgeShape() { + b2EdgeShape.b2EdgeShape.apply(this, arguments); + if (this.constructor === b2EdgeShape) this.b2EdgeShape.apply(this, arguments); + }; + Box2D.Collision.Shapes.b2EdgeShape = b2EdgeShape; + + function b2MassData() { + b2MassData.b2MassData.apply(this, arguments); + }; + Box2D.Collision.Shapes.b2MassData = b2MassData; + + function b2PolygonShape() { + b2PolygonShape.b2PolygonShape.apply(this, arguments); + if (this.constructor === b2PolygonShape) this.b2PolygonShape.apply(this, arguments); + }; + Box2D.Collision.Shapes.b2PolygonShape = b2PolygonShape; + + function b2Shape() { + b2Shape.b2Shape.apply(this, arguments); + if (this.constructor === b2Shape) this.b2Shape.apply(this, arguments); + }; + Box2D.Collision.Shapes.b2Shape = b2Shape; + Box2D.Common.b2internal = 'Box2D.Common.b2internal'; + + function b2Color() { + b2Color.b2Color.apply(this, arguments); + if (this.constructor === b2Color) this.b2Color.apply(this, arguments); + }; + Box2D.Common.b2Color = b2Color; + + function b2Settings() { + b2Settings.b2Settings.apply(this, arguments); + }; + Box2D.Common.b2Settings = b2Settings; + + function b2Mat22() { + b2Mat22.b2Mat22.apply(this, arguments); + if (this.constructor === b2Mat22) this.b2Mat22.apply(this, arguments); + }; + Box2D.Common.Math.b2Mat22 = b2Mat22; + + function b2Mat33() { + b2Mat33.b2Mat33.apply(this, arguments); + if (this.constructor === b2Mat33) this.b2Mat33.apply(this, arguments); + }; + Box2D.Common.Math.b2Mat33 = b2Mat33; + + function b2Math() { + b2Math.b2Math.apply(this, arguments); + }; + Box2D.Common.Math.b2Math = b2Math; + + function b2Sweep() { + b2Sweep.b2Sweep.apply(this, arguments); + }; + Box2D.Common.Math.b2Sweep = b2Sweep; + + function b2Transform() { + b2Transform.b2Transform.apply(this, arguments); + if (this.constructor === b2Transform) this.b2Transform.apply(this, arguments); + }; + Box2D.Common.Math.b2Transform = b2Transform; + + function b2Vec2() { + b2Vec2.b2Vec2.apply(this, arguments); + if (this.constructor === b2Vec2) this.b2Vec2.apply(this, arguments); + }; + Box2D.Common.Math.b2Vec2 = b2Vec2; + + function b2Vec3() { + b2Vec3.b2Vec3.apply(this, arguments); + if (this.constructor === b2Vec3) this.b2Vec3.apply(this, arguments); + }; + Box2D.Common.Math.b2Vec3 = b2Vec3; + + function b2Body() { + b2Body.b2Body.apply(this, arguments); + if (this.constructor === b2Body) this.b2Body.apply(this, arguments); + }; + Box2D.Dynamics.b2Body = b2Body; + + function b2BodyDef() { + b2BodyDef.b2BodyDef.apply(this, arguments); + if (this.constructor === b2BodyDef) this.b2BodyDef.apply(this, arguments); + }; + Box2D.Dynamics.b2BodyDef = b2BodyDef; + + function b2ContactFilter() { + b2ContactFilter.b2ContactFilter.apply(this, arguments); + }; + Box2D.Dynamics.b2ContactFilter = b2ContactFilter; + + function b2ContactImpulse() { + b2ContactImpulse.b2ContactImpulse.apply(this, arguments); + }; + Box2D.Dynamics.b2ContactImpulse = b2ContactImpulse; + + function b2ContactListener() { + b2ContactListener.b2ContactListener.apply(this, arguments); + }; + Box2D.Dynamics.b2ContactListener = b2ContactListener; + + function b2ContactManager() { + b2ContactManager.b2ContactManager.apply(this, arguments); + if (this.constructor === b2ContactManager) this.b2ContactManager.apply(this, arguments); + }; + Box2D.Dynamics.b2ContactManager = b2ContactManager; + + function b2DebugDraw() { + b2DebugDraw.b2DebugDraw.apply(this, arguments); + if (this.constructor === b2DebugDraw) this.b2DebugDraw.apply(this, arguments); + }; + Box2D.Dynamics.b2DebugDraw = b2DebugDraw; + + function b2DestructionListener() { + b2DestructionListener.b2DestructionListener.apply(this, arguments); + }; + Box2D.Dynamics.b2DestructionListener = b2DestructionListener; + + function b2FilterData() { + b2FilterData.b2FilterData.apply(this, arguments); + }; + Box2D.Dynamics.b2FilterData = b2FilterData; + + function b2Fixture() { + b2Fixture.b2Fixture.apply(this, arguments); + if (this.constructor === b2Fixture) this.b2Fixture.apply(this, arguments); + }; + Box2D.Dynamics.b2Fixture = b2Fixture; + + function b2FixtureDef() { + b2FixtureDef.b2FixtureDef.apply(this, arguments); + if (this.constructor === b2FixtureDef) this.b2FixtureDef.apply(this, arguments); + }; + Box2D.Dynamics.b2FixtureDef = b2FixtureDef; + + function b2Island() { + b2Island.b2Island.apply(this, arguments); + if (this.constructor === b2Island) this.b2Island.apply(this, arguments); + }; + Box2D.Dynamics.b2Island = b2Island; + + function b2TimeStep() { + b2TimeStep.b2TimeStep.apply(this, arguments); + }; + Box2D.Dynamics.b2TimeStep = b2TimeStep; + + function b2World() { + b2World.b2World.apply(this, arguments); + if (this.constructor === b2World) this.b2World.apply(this, arguments); + }; + Box2D.Dynamics.b2World = b2World; + + function b2CircleContact() { + b2CircleContact.b2CircleContact.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2CircleContact = b2CircleContact; + + function b2Contact() { + b2Contact.b2Contact.apply(this, arguments); + if (this.constructor === b2Contact) this.b2Contact.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2Contact = b2Contact; + + function b2ContactConstraint() { + b2ContactConstraint.b2ContactConstraint.apply(this, arguments); + if (this.constructor === b2ContactConstraint) this.b2ContactConstraint.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2ContactConstraint = b2ContactConstraint; + + function b2ContactConstraintPoint() { + b2ContactConstraintPoint.b2ContactConstraintPoint.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2ContactConstraintPoint = b2ContactConstraintPoint; + + function b2ContactEdge() { + b2ContactEdge.b2ContactEdge.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2ContactEdge = b2ContactEdge; + + function b2ContactFactory() { + b2ContactFactory.b2ContactFactory.apply(this, arguments); + if (this.constructor === b2ContactFactory) this.b2ContactFactory.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2ContactFactory = b2ContactFactory; + + function b2ContactRegister() { + b2ContactRegister.b2ContactRegister.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2ContactRegister = b2ContactRegister; + + function b2ContactResult() { + b2ContactResult.b2ContactResult.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2ContactResult = b2ContactResult; + + function b2ContactSolver() { + b2ContactSolver.b2ContactSolver.apply(this, arguments); + if (this.constructor === b2ContactSolver) this.b2ContactSolver.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2ContactSolver = b2ContactSolver; + + function b2EdgeAndCircleContact() { + b2EdgeAndCircleContact.b2EdgeAndCircleContact.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2EdgeAndCircleContact = b2EdgeAndCircleContact; + + function b2NullContact() { + b2NullContact.b2NullContact.apply(this, arguments); + if (this.constructor === b2NullContact) this.b2NullContact.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2NullContact = b2NullContact; + + function b2PolyAndCircleContact() { + b2PolyAndCircleContact.b2PolyAndCircleContact.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2PolyAndCircleContact = b2PolyAndCircleContact; + + function b2PolyAndEdgeContact() { + b2PolyAndEdgeContact.b2PolyAndEdgeContact.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2PolyAndEdgeContact = b2PolyAndEdgeContact; + + function b2PolygonContact() { + b2PolygonContact.b2PolygonContact.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2PolygonContact = b2PolygonContact; + + function b2PositionSolverManifold() { + b2PositionSolverManifold.b2PositionSolverManifold.apply(this, arguments); + if (this.constructor === b2PositionSolverManifold) this.b2PositionSolverManifold.apply(this, arguments); + }; + Box2D.Dynamics.Contacts.b2PositionSolverManifold = b2PositionSolverManifold; + + function b2BuoyancyController() { + b2BuoyancyController.b2BuoyancyController.apply(this, arguments); + }; + Box2D.Dynamics.Controllers.b2BuoyancyController = b2BuoyancyController; + + function b2ConstantAccelController() { + b2ConstantAccelController.b2ConstantAccelController.apply(this, arguments); + }; + Box2D.Dynamics.Controllers.b2ConstantAccelController = b2ConstantAccelController; + + function b2ConstantForceController() { + b2ConstantForceController.b2ConstantForceController.apply(this, arguments); + }; + Box2D.Dynamics.Controllers.b2ConstantForceController = b2ConstantForceController; + + function b2Controller() { + b2Controller.b2Controller.apply(this, arguments); + }; + Box2D.Dynamics.Controllers.b2Controller = b2Controller; + + function b2ControllerEdge() { + b2ControllerEdge.b2ControllerEdge.apply(this, arguments); + }; + Box2D.Dynamics.Controllers.b2ControllerEdge = b2ControllerEdge; + + function b2GravityController() { + b2GravityController.b2GravityController.apply(this, arguments); + }; + Box2D.Dynamics.Controllers.b2GravityController = b2GravityController; + + function b2TensorDampingController() { + b2TensorDampingController.b2TensorDampingController.apply(this, arguments); + }; + Box2D.Dynamics.Controllers.b2TensorDampingController = b2TensorDampingController; + + function b2DistanceJoint() { + b2DistanceJoint.b2DistanceJoint.apply(this, arguments); + if (this.constructor === b2DistanceJoint) this.b2DistanceJoint.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2DistanceJoint = b2DistanceJoint; + + function b2DistanceJointDef() { + b2DistanceJointDef.b2DistanceJointDef.apply(this, arguments); + if (this.constructor === b2DistanceJointDef) this.b2DistanceJointDef.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2DistanceJointDef = b2DistanceJointDef; + + function b2FrictionJoint() { + b2FrictionJoint.b2FrictionJoint.apply(this, arguments); + if (this.constructor === b2FrictionJoint) this.b2FrictionJoint.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2FrictionJoint = b2FrictionJoint; + + function b2FrictionJointDef() { + b2FrictionJointDef.b2FrictionJointDef.apply(this, arguments); + if (this.constructor === b2FrictionJointDef) this.b2FrictionJointDef.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2FrictionJointDef = b2FrictionJointDef; + + function b2GearJoint() { + b2GearJoint.b2GearJoint.apply(this, arguments); + if (this.constructor === b2GearJoint) this.b2GearJoint.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2GearJoint = b2GearJoint; + + function b2GearJointDef() { + b2GearJointDef.b2GearJointDef.apply(this, arguments); + if (this.constructor === b2GearJointDef) this.b2GearJointDef.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2GearJointDef = b2GearJointDef; + + function b2Jacobian() { + b2Jacobian.b2Jacobian.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2Jacobian = b2Jacobian; + + function b2Joint() { + b2Joint.b2Joint.apply(this, arguments); + if (this.constructor === b2Joint) this.b2Joint.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2Joint = b2Joint; + + function b2JointDef() { + b2JointDef.b2JointDef.apply(this, arguments); + if (this.constructor === b2JointDef) this.b2JointDef.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2JointDef = b2JointDef; + + function b2JointEdge() { + b2JointEdge.b2JointEdge.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2JointEdge = b2JointEdge; + + function b2LineJoint() { + b2LineJoint.b2LineJoint.apply(this, arguments); + if (this.constructor === b2LineJoint) this.b2LineJoint.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2LineJoint = b2LineJoint; + + function b2LineJointDef() { + b2LineJointDef.b2LineJointDef.apply(this, arguments); + if (this.constructor === b2LineJointDef) this.b2LineJointDef.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2LineJointDef = b2LineJointDef; + + function b2MouseJoint() { + b2MouseJoint.b2MouseJoint.apply(this, arguments); + if (this.constructor === b2MouseJoint) this.b2MouseJoint.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2MouseJoint = b2MouseJoint; + + function b2MouseJointDef() { + b2MouseJointDef.b2MouseJointDef.apply(this, arguments); + if (this.constructor === b2MouseJointDef) this.b2MouseJointDef.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2MouseJointDef = b2MouseJointDef; + + function b2PrismaticJoint() { + b2PrismaticJoint.b2PrismaticJoint.apply(this, arguments); + if (this.constructor === b2PrismaticJoint) this.b2PrismaticJoint.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2PrismaticJoint = b2PrismaticJoint; + + function b2PrismaticJointDef() { + b2PrismaticJointDef.b2PrismaticJointDef.apply(this, arguments); + if (this.constructor === b2PrismaticJointDef) this.b2PrismaticJointDef.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2PrismaticJointDef = b2PrismaticJointDef; + + function b2PulleyJoint() { + b2PulleyJoint.b2PulleyJoint.apply(this, arguments); + if (this.constructor === b2PulleyJoint) this.b2PulleyJoint.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2PulleyJoint = b2PulleyJoint; + + function b2PulleyJointDef() { + b2PulleyJointDef.b2PulleyJointDef.apply(this, arguments); + if (this.constructor === b2PulleyJointDef) this.b2PulleyJointDef.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2PulleyJointDef = b2PulleyJointDef; + + function b2RevoluteJoint() { + b2RevoluteJoint.b2RevoluteJoint.apply(this, arguments); + if (this.constructor === b2RevoluteJoint) this.b2RevoluteJoint.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2RevoluteJoint = b2RevoluteJoint; + + function b2RevoluteJointDef() { + b2RevoluteJointDef.b2RevoluteJointDef.apply(this, arguments); + if (this.constructor === b2RevoluteJointDef) this.b2RevoluteJointDef.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2RevoluteJointDef = b2RevoluteJointDef; + + function b2WeldJoint() { + b2WeldJoint.b2WeldJoint.apply(this, arguments); + if (this.constructor === b2WeldJoint) this.b2WeldJoint.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2WeldJoint = b2WeldJoint; + + function b2WeldJointDef() { + b2WeldJointDef.b2WeldJointDef.apply(this, arguments); + if (this.constructor === b2WeldJointDef) this.b2WeldJointDef.apply(this, arguments); + }; + Box2D.Dynamics.Joints.b2WeldJointDef = b2WeldJointDef; +})(); //definitions +Box2D.postDefs = []; +(function () { + var b2CircleShape = Box2D.Collision.Shapes.b2CircleShape, + b2EdgeChainDef = Box2D.Collision.Shapes.b2EdgeChainDef, + b2EdgeShape = Box2D.Collision.Shapes.b2EdgeShape, + b2MassData = Box2D.Collision.Shapes.b2MassData, + b2PolygonShape = Box2D.Collision.Shapes.b2PolygonShape, + b2Shape = Box2D.Collision.Shapes.b2Shape, + b2Color = Box2D.Common.b2Color, + b2internal = Box2D.Common.b2internal, + b2Settings = Box2D.Common.b2Settings, + b2Mat22 = Box2D.Common.Math.b2Mat22, + b2Mat33 = Box2D.Common.Math.b2Mat33, + b2Math = Box2D.Common.Math.b2Math, + b2Sweep = Box2D.Common.Math.b2Sweep, + b2Transform = Box2D.Common.Math.b2Transform, + b2Vec2 = Box2D.Common.Math.b2Vec2, + b2Vec3 = Box2D.Common.Math.b2Vec3, + b2AABB = Box2D.Collision.b2AABB, + b2Bound = Box2D.Collision.b2Bound, + b2BoundValues = Box2D.Collision.b2BoundValues, + b2Collision = Box2D.Collision.b2Collision, + b2ContactID = Box2D.Collision.b2ContactID, + b2ContactPoint = Box2D.Collision.b2ContactPoint, + b2Distance = Box2D.Collision.b2Distance, + b2DistanceInput = Box2D.Collision.b2DistanceInput, + b2DistanceOutput = Box2D.Collision.b2DistanceOutput, + b2DistanceProxy = Box2D.Collision.b2DistanceProxy, + b2DynamicTree = Box2D.Collision.b2DynamicTree, + b2DynamicTreeBroadPhase = Box2D.Collision.b2DynamicTreeBroadPhase, + b2DynamicTreeNode = Box2D.Collision.b2DynamicTreeNode, + b2DynamicTreePair = Box2D.Collision.b2DynamicTreePair, + b2Manifold = Box2D.Collision.b2Manifold, + b2ManifoldPoint = Box2D.Collision.b2ManifoldPoint, + b2Point = Box2D.Collision.b2Point, + b2RayCastInput = Box2D.Collision.b2RayCastInput, + b2RayCastOutput = Box2D.Collision.b2RayCastOutput, + b2Segment = Box2D.Collision.b2Segment, + b2SeparationFunction = Box2D.Collision.b2SeparationFunction, + b2Simplex = Box2D.Collision.b2Simplex, + b2SimplexCache = Box2D.Collision.b2SimplexCache, + b2SimplexVertex = Box2D.Collision.b2SimplexVertex, + b2TimeOfImpact = Box2D.Collision.b2TimeOfImpact, + b2TOIInput = Box2D.Collision.b2TOIInput, + b2WorldManifold = Box2D.Collision.b2WorldManifold, + ClipVertex = Box2D.Collision.ClipVertex, + Features = Box2D.Collision.Features, + IBroadPhase = Box2D.Collision.IBroadPhase; + + b2AABB.b2AABB = function () { + this.lowerBound = new b2Vec2(); + this.upperBound = new b2Vec2(); + }; + b2AABB.prototype.IsValid = function () { + var dX = this.upperBound.x - this.lowerBound.x; + var dY = this.upperBound.y - this.lowerBound.y; + var valid = dX >= 0.0 && dY >= 0.0; + valid = valid && this.lowerBound.IsValid() && this.upperBound.IsValid(); + return valid; + } + b2AABB.prototype.GetCenter = function () { + return new b2Vec2((this.lowerBound.x + this.upperBound.x) / 2, (this.lowerBound.y + this.upperBound.y) / 2); + } + b2AABB.prototype.GetExtents = function () { + return new b2Vec2((this.upperBound.x - this.lowerBound.x) / 2, (this.upperBound.y - this.lowerBound.y) / 2); + } + b2AABB.prototype.Contains = function (aabb) { + var result = true; + result = result && this.lowerBound.x <= aabb.lowerBound.x; + result = result && this.lowerBound.y <= aabb.lowerBound.y; + result = result && aabb.upperBound.x <= this.upperBound.x; + result = result && aabb.upperBound.y <= this.upperBound.y; + return result; + } + b2AABB.prototype.RayCast = function (output, input) { + var tmin = (-Number.MAX_VALUE); + var tmax = Number.MAX_VALUE; + var pX = input.p1.x; + var pY = input.p1.y; + var dX = input.p2.x - input.p1.x; + var dY = input.p2.y - input.p1.y; + var absDX = Math.abs(dX); + var absDY = Math.abs(dY); + var normal = output.normal; + var inv_d = 0; + var t1 = 0; + var t2 = 0; + var t3 = 0; + var s = 0; { + if (absDX < Number.MIN_VALUE) { + if (pX < this.lowerBound.x || this.upperBound.x < pX) return false; + } + else { + inv_d = 1.0 / dX; + t1 = (this.lowerBound.x - pX) * inv_d; + t2 = (this.upperBound.x - pX) * inv_d; + s = (-1.0); + if (t1 > t2) { + t3 = t1; + t1 = t2; + t2 = t3; + s = 1.0; + } + if (t1 > tmin) { + normal.x = s; + normal.y = 0; + tmin = t1; + } + tmax = Math.min(tmax, t2); + if (tmin > tmax) return false; + } + } { + if (absDY < Number.MIN_VALUE) { + if (pY < this.lowerBound.y || this.upperBound.y < pY) return false; + } + else { + inv_d = 1.0 / dY; + t1 = (this.lowerBound.y - pY) * inv_d; + t2 = (this.upperBound.y - pY) * inv_d; + s = (-1.0); + if (t1 > t2) { + t3 = t1; + t1 = t2; + t2 = t3; + s = 1.0; + } + if (t1 > tmin) { + normal.y = s; + normal.x = 0; + tmin = t1; + } + tmax = Math.min(tmax, t2); + if (tmin > tmax) return false; + } + } + output.fraction = tmin; + return true; + } + b2AABB.prototype.TestOverlap = function (other) { + var d1X = other.lowerBound.x - this.upperBound.x; + var d1Y = other.lowerBound.y - this.upperBound.y; + var d2X = this.lowerBound.x - other.upperBound.x; + var d2Y = this.lowerBound.y - other.upperBound.y; + if (d1X > 0.0 || d1Y > 0.0) return false; + if (d2X > 0.0 || d2Y > 0.0) return false; + return true; + } + b2AABB.Combine = function (aabb1, aabb2) { + var aabb = new b2AABB(); + aabb.Combine(aabb1, aabb2); + return aabb; + } + b2AABB.prototype.Combine = function (aabb1, aabb2) { + this.lowerBound.x = Math.min(aabb1.lowerBound.x, aabb2.lowerBound.x); + this.lowerBound.y = Math.min(aabb1.lowerBound.y, aabb2.lowerBound.y); + this.upperBound.x = Math.max(aabb1.upperBound.x, aabb2.upperBound.x); + this.upperBound.y = Math.max(aabb1.upperBound.y, aabb2.upperBound.y); + } + b2Bound.b2Bound = function () {}; + b2Bound.prototype.IsLower = function () { + return (this.value & 1) == 0; + } + b2Bound.prototype.IsUpper = function () { + return (this.value & 1) == 1; + } + b2Bound.prototype.Swap = function (b) { + var tempValue = this.value; + var tempProxy = this.proxy; + var tempStabbingCount = this.stabbingCount; + this.value = b.value; + this.proxy = b.proxy; + this.stabbingCount = b.stabbingCount; + b.value = tempValue; + b.proxy = tempProxy; + b.stabbingCount = tempStabbingCount; + } + b2BoundValues.b2BoundValues = function () {}; + b2BoundValues.prototype.b2BoundValues = function () { + this.lowerValues = new Vector_a2j_Number(); + this.lowerValues[0] = 0.0; + this.lowerValues[1] = 0.0; + this.upperValues = new Vector_a2j_Number(); + this.upperValues[0] = 0.0; + this.upperValues[1] = 0.0; + } + b2Collision.b2Collision = function () {}; + b2Collision.ClipSegmentToLine = function (vOut, vIn, normal, offset) { + if (offset === undefined) offset = 0; + var cv; + var numOut = 0; + cv = vIn[0]; + var vIn0 = cv.v; + cv = vIn[1]; + var vIn1 = cv.v; + var distance0 = normal.x * vIn0.x + normal.y * vIn0.y - offset; + var distance1 = normal.x * vIn1.x + normal.y * vIn1.y - offset; + if (distance0 <= 0.0) vOut[numOut++].Set(vIn[0]); + if (distance1 <= 0.0) vOut[numOut++].Set(vIn[1]); + if (distance0 * distance1 < 0.0) { + var interp = distance0 / (distance0 - distance1); + cv = vOut[numOut]; + var tVec = cv.v; + tVec.x = vIn0.x + interp * (vIn1.x - vIn0.x); + tVec.y = vIn0.y + interp * (vIn1.y - vIn0.y); + cv = vOut[numOut]; + var cv2; + if (distance0 > 0.0) { + cv2 = vIn[0]; + cv.id = cv2.id; + } + else { + cv2 = vIn[1]; + cv.id = cv2.id; + }++numOut; + } + return numOut; + } + b2Collision.EdgeSeparation = function (poly1, xf1, edge1, poly2, xf2) { + if (edge1 === undefined) edge1 = 0; + var count1 = parseInt(poly1.m_vertexCount); + var vertices1 = poly1.m_vertices; + var normals1 = poly1.m_normals; + var count2 = parseInt(poly2.m_vertexCount); + var vertices2 = poly2.m_vertices; + var tMat; + var tVec; + tMat = xf1.R; + tVec = normals1[edge1]; + var normal1WorldX = (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + var normal1WorldY = (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tMat = xf2.R; + var normal1X = (tMat.col1.x * normal1WorldX + tMat.col1.y * normal1WorldY); + var normal1Y = (tMat.col2.x * normal1WorldX + tMat.col2.y * normal1WorldY); + var index = 0; + var minDot = Number.MAX_VALUE; + for (var i = 0; i < count2; ++i) { + tVec = vertices2[i]; + var dot = tVec.x * normal1X + tVec.y * normal1Y; + if (dot < minDot) { + minDot = dot; + index = i; + } + } + tVec = vertices1[edge1]; + tMat = xf1.R; + var v1X = xf1.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + var v1Y = xf1.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tVec = vertices2[index]; + tMat = xf2.R; + var v2X = xf2.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + var v2Y = xf2.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + v2X -= v1X; + v2Y -= v1Y; + var separation = v2X * normal1WorldX + v2Y * normal1WorldY; + return separation; + } + b2Collision.FindMaxSeparation = function (edgeIndex, poly1, xf1, poly2, xf2) { + var count1 = parseInt(poly1.m_vertexCount); + var normals1 = poly1.m_normals; + var tVec; + var tMat; + tMat = xf2.R; + tVec = poly2.m_centroid; + var dX = xf2.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + var dY = xf2.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tMat = xf1.R; + tVec = poly1.m_centroid; + dX -= xf1.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + dY -= xf1.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + var dLocal1X = (dX * xf1.R.col1.x + dY * xf1.R.col1.y); + var dLocal1Y = (dX * xf1.R.col2.x + dY * xf1.R.col2.y); + var edge = 0; + var maxDot = (-Number.MAX_VALUE); + for (var i = 0; i < count1; ++i) { + tVec = normals1[i]; + var dot = (tVec.x * dLocal1X + tVec.y * dLocal1Y); + if (dot > maxDot) { + maxDot = dot; + edge = i; + } + } + var s = b2Collision.EdgeSeparation(poly1, xf1, edge, poly2, xf2); + var prevEdge = parseInt(edge - 1 >= 0 ? edge - 1 : count1 - 1); + var sPrev = b2Collision.EdgeSeparation(poly1, xf1, prevEdge, poly2, xf2); + var nextEdge = parseInt(edge + 1 < count1 ? edge + 1 : 0); + var sNext = b2Collision.EdgeSeparation(poly1, xf1, nextEdge, poly2, xf2); + var bestEdge = 0; + var bestSeparation = 0; + var increment = 0; + if (sPrev > s && sPrev > sNext) { + increment = (-1); + bestEdge = prevEdge; + bestSeparation = sPrev; + } + else if (sNext > s) { + increment = 1; + bestEdge = nextEdge; + bestSeparation = sNext; + } + else { + edgeIndex[0] = edge; + return s; + } + while (true) { + if (increment == (-1)) edge = bestEdge - 1 >= 0 ? bestEdge - 1 : count1 - 1; + else edge = bestEdge + 1 < count1 ? bestEdge + 1 : 0;s = b2Collision.EdgeSeparation(poly1, xf1, edge, poly2, xf2); + if (s > bestSeparation) { + bestEdge = edge; + bestSeparation = s; + } + else { + break; + } + } + edgeIndex[0] = bestEdge; + return bestSeparation; + } + b2Collision.FindIncidentEdge = function (c, poly1, xf1, edge1, poly2, xf2) { + if (edge1 === undefined) edge1 = 0; + var count1 = parseInt(poly1.m_vertexCount); + var normals1 = poly1.m_normals; + var count2 = parseInt(poly2.m_vertexCount); + var vertices2 = poly2.m_vertices; + var normals2 = poly2.m_normals; + var tMat; + var tVec; + tMat = xf1.R; + tVec = normals1[edge1]; + var normal1X = (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + var normal1Y = (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tMat = xf2.R; + var tX = (tMat.col1.x * normal1X + tMat.col1.y * normal1Y); + normal1Y = (tMat.col2.x * normal1X + tMat.col2.y * normal1Y); + normal1X = tX; + var index = 0; + var minDot = Number.MAX_VALUE; + for (var i = 0; i < count2; ++i) { + tVec = normals2[i]; + var dot = (normal1X * tVec.x + normal1Y * tVec.y); + if (dot < minDot) { + minDot = dot; + index = i; + } + } + var tClip; + var i1 = parseInt(index); + var i2 = parseInt(i1 + 1 < count2 ? i1 + 1 : 0); + tClip = c[0]; + tVec = vertices2[i1]; + tMat = xf2.R; + tClip.v.x = xf2.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + tClip.v.y = xf2.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tClip.id.features.referenceEdge = edge1; + tClip.id.features.incidentEdge = i1; + tClip.id.features.incidentVertex = 0; + tClip = c[1]; + tVec = vertices2[i2]; + tMat = xf2.R; + tClip.v.x = xf2.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + tClip.v.y = xf2.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tClip.id.features.referenceEdge = edge1; + tClip.id.features.incidentEdge = i2; + tClip.id.features.incidentVertex = 1; + } + b2Collision.MakeClipPointVector = function () { + var r = new Vector(2); + r[0] = new ClipVertex(); + r[1] = new ClipVertex(); + return r; + } + b2Collision.CollidePolygons = function (manifold, polyA, xfA, polyB, xfB) { + var cv; + manifold.m_pointCount = 0; + var totalRadius = polyA.m_radius + polyB.m_radius; + var edgeA = 0; + b2Collision.s_edgeAO[0] = edgeA; + var separationA = b2Collision.FindMaxSeparation(b2Collision.s_edgeAO, polyA, xfA, polyB, xfB); + edgeA = b2Collision.s_edgeAO[0]; + if (separationA > totalRadius) return; + var edgeB = 0; + b2Collision.s_edgeBO[0] = edgeB; + var separationB = b2Collision.FindMaxSeparation(b2Collision.s_edgeBO, polyB, xfB, polyA, xfA); + edgeB = b2Collision.s_edgeBO[0]; + if (separationB > totalRadius) return; + var poly1; + var poly2; + var xf1; + var xf2; + var edge1 = 0; + var flip = 0; + var k_relativeTol = 0.98; + var k_absoluteTol = 0.001; + var tMat; + if (separationB > k_relativeTol * separationA + k_absoluteTol) { + poly1 = polyB; + poly2 = polyA; + xf1 = xfB; + xf2 = xfA; + edge1 = edgeB; + manifold.m_type = b2Manifold.e_faceB; + flip = 1; + } + else { + poly1 = polyA; + poly2 = polyB; + xf1 = xfA; + xf2 = xfB; + edge1 = edgeA; + manifold.m_type = b2Manifold.e_faceA; + flip = 0; + } + var incidentEdge = b2Collision.s_incidentEdge; + b2Collision.FindIncidentEdge(incidentEdge, poly1, xf1, edge1, poly2, xf2); + var count1 = parseInt(poly1.m_vertexCount); + var vertices1 = poly1.m_vertices; + var local_v11 = vertices1[edge1]; + var local_v12; + if (edge1 + 1 < count1) { + local_v12 = vertices1[parseInt(edge1 + 1)]; + } + else { + local_v12 = vertices1[0]; + } + var localTangent = b2Collision.s_localTangent; + localTangent.Set(local_v12.x - local_v11.x, local_v12.y - local_v11.y); + localTangent.Normalize(); + var localNormal = b2Collision.s_localNormal; + localNormal.x = localTangent.y; + localNormal.y = (-localTangent.x); + var planePoint = b2Collision.s_planePoint; + planePoint.Set(0.5 * (local_v11.x + local_v12.x), 0.5 * (local_v11.y + local_v12.y)); + var tangent = b2Collision.s_tangent; + tMat = xf1.R; + tangent.x = (tMat.col1.x * localTangent.x + tMat.col2.x * localTangent.y); + tangent.y = (tMat.col1.y * localTangent.x + tMat.col2.y * localTangent.y); + var tangent2 = b2Collision.s_tangent2; + tangent2.x = (-tangent.x); + tangent2.y = (-tangent.y); + var normal = b2Collision.s_normal; + normal.x = tangent.y; + normal.y = (-tangent.x); + var v11 = b2Collision.s_v11; + var v12 = b2Collision.s_v12; + v11.x = xf1.position.x + (tMat.col1.x * local_v11.x + tMat.col2.x * local_v11.y); + v11.y = xf1.position.y + (tMat.col1.y * local_v11.x + tMat.col2.y * local_v11.y); + v12.x = xf1.position.x + (tMat.col1.x * local_v12.x + tMat.col2.x * local_v12.y); + v12.y = xf1.position.y + (tMat.col1.y * local_v12.x + tMat.col2.y * local_v12.y); + var frontOffset = normal.x * v11.x + normal.y * v11.y; + var sideOffset1 = (-tangent.x * v11.x) - tangent.y * v11.y + totalRadius; + var sideOffset2 = tangent.x * v12.x + tangent.y * v12.y + totalRadius; + var clipPoints1 = b2Collision.s_clipPoints1; + var clipPoints2 = b2Collision.s_clipPoints2; + var np = 0; + np = b2Collision.ClipSegmentToLine(clipPoints1, incidentEdge, tangent2, sideOffset1); + if (np < 2) return; + np = b2Collision.ClipSegmentToLine(clipPoints2, clipPoints1, tangent, sideOffset2); + if (np < 2) return; + manifold.m_localPlaneNormal.SetV(localNormal); + manifold.m_localPoint.SetV(planePoint); + var pointCount = 0; + for (var i = 0; i < b2Settings.b2_maxManifoldPoints; ++i) { + cv = clipPoints2[i]; + var separation = normal.x * cv.v.x + normal.y * cv.v.y - frontOffset; + if (separation <= totalRadius) { + var cp = manifold.m_points[pointCount]; + tMat = xf2.R; + var tX = cv.v.x - xf2.position.x; + var tY = cv.v.y - xf2.position.y; + cp.m_localPoint.x = (tX * tMat.col1.x + tY * tMat.col1.y); + cp.m_localPoint.y = (tX * tMat.col2.x + tY * tMat.col2.y); + cp.m_id.Set(cv.id); + cp.m_id.features.flip = flip; + ++pointCount; + } + } + manifold.m_pointCount = pointCount; + } + b2Collision.CollideCircles = function (manifold, circle1, xf1, circle2, xf2) { + manifold.m_pointCount = 0; + var tMat; + var tVec; + tMat = xf1.R; + tVec = circle1.m_p; + var p1X = xf1.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + var p1Y = xf1.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tMat = xf2.R; + tVec = circle2.m_p; + var p2X = xf2.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + var p2Y = xf2.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + var dX = p2X - p1X; + var dY = p2Y - p1Y; + var distSqr = dX * dX + dY * dY; + var radius = circle1.m_radius + circle2.m_radius; + if (distSqr > radius * radius) { + return; + } + manifold.m_type = b2Manifold.e_circles; + manifold.m_localPoint.SetV(circle1.m_p); + manifold.m_localPlaneNormal.SetZero(); + manifold.m_pointCount = 1; + manifold.m_points[0].m_localPoint.SetV(circle2.m_p); + manifold.m_points[0].m_id.key = 0; + } + b2Collision.CollidePolygonAndCircle = function (manifold, polygon, xf1, circle, xf2) { + manifold.m_pointCount = 0; + var tPoint; + var dX = 0; + var dY = 0; + var positionX = 0; + var positionY = 0; + var tVec; + var tMat; + tMat = xf2.R; + tVec = circle.m_p; + var cX = xf2.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + var cY = xf2.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + dX = cX - xf1.position.x; + dY = cY - xf1.position.y; + tMat = xf1.R; + var cLocalX = (dX * tMat.col1.x + dY * tMat.col1.y); + var cLocalY = (dX * tMat.col2.x + dY * tMat.col2.y); + var dist = 0; + var normalIndex = 0; + var separation = (-Number.MAX_VALUE); + var radius = polygon.m_radius + circle.m_radius; + var vertexCount = parseInt(polygon.m_vertexCount); + var vertices = polygon.m_vertices; + var normals = polygon.m_normals; + for (var i = 0; i < vertexCount; ++i) { + tVec = vertices[i]; + dX = cLocalX - tVec.x; + dY = cLocalY - tVec.y; + tVec = normals[i]; + var s = tVec.x * dX + tVec.y * dY; + if (s > radius) { + return; + } + if (s > separation) { + separation = s; + normalIndex = i; + } + } + var vertIndex1 = parseInt(normalIndex); + var vertIndex2 = parseInt(vertIndex1 + 1 < vertexCount ? vertIndex1 + 1 : 0); + var v1 = vertices[vertIndex1]; + var v2 = vertices[vertIndex2]; + if (separation < Number.MIN_VALUE) { + manifold.m_pointCount = 1; + manifold.m_type = b2Manifold.e_faceA; + manifold.m_localPlaneNormal.SetV(normals[normalIndex]); + manifold.m_localPoint.x = 0.5 * (v1.x + v2.x); + manifold.m_localPoint.y = 0.5 * (v1.y + v2.y); + manifold.m_points[0].m_localPoint.SetV(circle.m_p); + manifold.m_points[0].m_id.key = 0; + return; + } + var u1 = (cLocalX - v1.x) * (v2.x - v1.x) + (cLocalY - v1.y) * (v2.y - v1.y); + var u2 = (cLocalX - v2.x) * (v1.x - v2.x) + (cLocalY - v2.y) * (v1.y - v2.y); + if (u1 <= 0.0) { + if ((cLocalX - v1.x) * (cLocalX - v1.x) + (cLocalY - v1.y) * (cLocalY - v1.y) > radius * radius) return; + manifold.m_pointCount = 1; + manifold.m_type = b2Manifold.e_faceA; + manifold.m_localPlaneNormal.x = cLocalX - v1.x; + manifold.m_localPlaneNormal.y = cLocalY - v1.y; + manifold.m_localPlaneNormal.Normalize(); + manifold.m_localPoint.SetV(v1); + manifold.m_points[0].m_localPoint.SetV(circle.m_p); + manifold.m_points[0].m_id.key = 0; + } + else if (u2 <= 0) { + if ((cLocalX - v2.x) * (cLocalX - v2.x) + (cLocalY - v2.y) * (cLocalY - v2.y) > radius * radius) return; + manifold.m_pointCount = 1; + manifold.m_type = b2Manifold.e_faceA; + manifold.m_localPlaneNormal.x = cLocalX - v2.x; + manifold.m_localPlaneNormal.y = cLocalY - v2.y; + manifold.m_localPlaneNormal.Normalize(); + manifold.m_localPoint.SetV(v2); + manifold.m_points[0].m_localPoint.SetV(circle.m_p); + manifold.m_points[0].m_id.key = 0; + } + else { + var faceCenterX = 0.5 * (v1.x + v2.x); + var faceCenterY = 0.5 * (v1.y + v2.y); + separation = (cLocalX - faceCenterX) * normals[vertIndex1].x + (cLocalY - faceCenterY) * normals[vertIndex1].y; + if (separation > radius) return; + manifold.m_pointCount = 1; + manifold.m_type = b2Manifold.e_faceA; + manifold.m_localPlaneNormal.x = normals[vertIndex1].x; + manifold.m_localPlaneNormal.y = normals[vertIndex1].y; + manifold.m_localPlaneNormal.Normalize(); + manifold.m_localPoint.Set(faceCenterX, faceCenterY); + manifold.m_points[0].m_localPoint.SetV(circle.m_p); + manifold.m_points[0].m_id.key = 0; + } + } + b2Collision.TestOverlap = function (a, b) { + var t1 = b.lowerBound; + var t2 = a.upperBound; + var d1X = t1.x - t2.x; + var d1Y = t1.y - t2.y; + t1 = a.lowerBound; + t2 = b.upperBound; + var d2X = t1.x - t2.x; + var d2Y = t1.y - t2.y; + if (d1X > 0.0 || d1Y > 0.0) return false; + if (d2X > 0.0 || d2Y > 0.0) return false; + return true; + } + Box2D.postDefs.push(function () { + Box2D.Collision.b2Collision.s_incidentEdge = b2Collision.MakeClipPointVector(); + Box2D.Collision.b2Collision.s_clipPoints1 = b2Collision.MakeClipPointVector(); + Box2D.Collision.b2Collision.s_clipPoints2 = b2Collision.MakeClipPointVector(); + Box2D.Collision.b2Collision.s_edgeAO = new Vector_a2j_Number(1); + Box2D.Collision.b2Collision.s_edgeBO = new Vector_a2j_Number(1); + Box2D.Collision.b2Collision.s_localTangent = new b2Vec2(); + Box2D.Collision.b2Collision.s_localNormal = new b2Vec2(); + Box2D.Collision.b2Collision.s_planePoint = new b2Vec2(); + Box2D.Collision.b2Collision.s_normal = new b2Vec2(); + Box2D.Collision.b2Collision.s_tangent = new b2Vec2(); + Box2D.Collision.b2Collision.s_tangent2 = new b2Vec2(); + Box2D.Collision.b2Collision.s_v11 = new b2Vec2(); + Box2D.Collision.b2Collision.s_v12 = new b2Vec2(); + Box2D.Collision.b2Collision.b2CollidePolyTempVec = new b2Vec2(); + Box2D.Collision.b2Collision.b2_nullFeature = 0x000000ff; + }); + b2ContactID.b2ContactID = function () { + this.features = new Features(); + }; + b2ContactID.prototype.b2ContactID = function () { + this.features._m_id = this; + } + b2ContactID.prototype.Set = function (id) { + this.key = id._key; + } + b2ContactID.prototype.Copy = function () { + var id = new b2ContactID(); + id.key = this.key; + return id; + } + Object.defineProperty(b2ContactID.prototype, 'key', { + enumerable: false, + configurable: true, + get: function () { + return this._key; + } + }); + Object.defineProperty(b2ContactID.prototype, 'key', { + enumerable: false, + configurable: true, + set: function (value) { + if (value === undefined) value = 0; + this._key = value; + this.features._referenceEdge = this._key & 0x000000ff; + this.features._incidentEdge = ((this._key & 0x0000ff00) >> 8) & 0x000000ff; + this.features._incidentVertex = ((this._key & 0x00ff0000) >> 16) & 0x000000ff; + this.features._flip = ((this._key & 0xff000000) >> 24) & 0x000000ff; + } + }); + b2ContactPoint.b2ContactPoint = function () { + this.position = new b2Vec2(); + this.velocity = new b2Vec2(); + this.normal = new b2Vec2(); + this.id = new b2ContactID(); + }; + b2Distance.b2Distance = function () {}; + b2Distance.Distance = function (output, cache, input) { + ++b2Distance.b2_gjkCalls; + var proxyA = input.proxyA; + var proxyB = input.proxyB; + var transformA = input.transformA; + var transformB = input.transformB; + var simplex = b2Distance.s_simplex; + simplex.ReadCache(cache, proxyA, transformA, proxyB, transformB); + var vertices = simplex.m_vertices; + var k_maxIters = 20; + var saveA = b2Distance.s_saveA; + var saveB = b2Distance.s_saveB; + var saveCount = 0; + var closestPoint = simplex.GetClosestPoint(); + var distanceSqr1 = closestPoint.LengthSquared(); + var distanceSqr2 = distanceSqr1; + var i = 0; + var p; + var iter = 0; + while (iter < k_maxIters) { + saveCount = simplex.m_count; + for (i = 0; + i < saveCount; i++) { + saveA[i] = vertices[i].indexA; + saveB[i] = vertices[i].indexB; + } + switch (simplex.m_count) { + case 1: + break; + case 2: + simplex.Solve2(); + break; + case 3: + simplex.Solve3(); + break; + default: + b2Settings.b2Assert(false); + } + if (simplex.m_count == 3) { + break; + } + p = simplex.GetClosestPoint(); + distanceSqr2 = p.LengthSquared(); + if (distanceSqr2 > distanceSqr1) {} + distanceSqr1 = distanceSqr2; + var d = simplex.GetSearchDirection(); + if (d.LengthSquared() < Number.MIN_VALUE * Number.MIN_VALUE) { + break; + } + var vertex = vertices[simplex.m_count]; + vertex.indexA = proxyA.GetSupport(b2Math.MulTMV(transformA.R, d.GetNegative())); + vertex.wA = b2Math.MulX(transformA, proxyA.GetVertex(vertex.indexA)); + vertex.indexB = proxyB.GetSupport(b2Math.MulTMV(transformB.R, d)); + vertex.wB = b2Math.MulX(transformB, proxyB.GetVertex(vertex.indexB)); + vertex.w = b2Math.SubtractVV(vertex.wB, vertex.wA); + ++iter; + ++b2Distance.b2_gjkIters; + var duplicate = false; + for (i = 0; + i < saveCount; i++) { + if (vertex.indexA == saveA[i] && vertex.indexB == saveB[i]) { + duplicate = true; + break; + } + } + if (duplicate) { + break; + }++simplex.m_count; + } + b2Distance.b2_gjkMaxIters = b2Math.Max(b2Distance.b2_gjkMaxIters, iter); + simplex.GetWitnessPoints(output.pointA, output.pointB); + output.distance = b2Math.SubtractVV(output.pointA, output.pointB).Length(); + output.iterations = iter; + simplex.WriteCache(cache); + if (input.useRadii) { + var rA = proxyA.m_radius; + var rB = proxyB.m_radius; + if (output.distance > rA + rB && output.distance > Number.MIN_VALUE) { + output.distance -= rA + rB; + var normal = b2Math.SubtractVV(output.pointB, output.pointA); + normal.Normalize(); + output.pointA.x += rA * normal.x; + output.pointA.y += rA * normal.y; + output.pointB.x -= rB * normal.x; + output.pointB.y -= rB * normal.y; + } + else { + p = new b2Vec2(); + p.x = .5 * (output.pointA.x + output.pointB.x); + p.y = .5 * (output.pointA.y + output.pointB.y); + output.pointA.x = output.pointB.x = p.x; + output.pointA.y = output.pointB.y = p.y; + output.distance = 0.0; + } + } + } + Box2D.postDefs.push(function () { + Box2D.Collision.b2Distance.s_simplex = new b2Simplex(); + Box2D.Collision.b2Distance.s_saveA = new Vector_a2j_Number(3); + Box2D.Collision.b2Distance.s_saveB = new Vector_a2j_Number(3); + }); + b2DistanceInput.b2DistanceInput = function () {}; + b2DistanceOutput.b2DistanceOutput = function () { + this.pointA = new b2Vec2(); + this.pointB = new b2Vec2(); + }; + b2DistanceProxy.b2DistanceProxy = function () {}; + b2DistanceProxy.prototype.Set = function (shape) { + switch (shape.GetType()) { + case b2Shape.e_circleShape: + { + var circle = (shape instanceof b2CircleShape ? shape : null); + this.m_vertices = new Vector(1, true); + this.m_vertices[0] = circle.m_p; + this.m_count = 1; + this.m_radius = circle.m_radius; + } + break; + case b2Shape.e_polygonShape: + { + var polygon = (shape instanceof b2PolygonShape ? shape : null); + this.m_vertices = polygon.m_vertices; + this.m_count = polygon.m_vertexCount; + this.m_radius = polygon.m_radius; + } + break; + default: + b2Settings.b2Assert(false); + } + } + b2DistanceProxy.prototype.GetSupport = function (d) { + var bestIndex = 0; + var bestValue = this.m_vertices[0].x * d.x + this.m_vertices[0].y * d.y; + for (var i = 1; i < this.m_count; ++i) { + var value = this.m_vertices[i].x * d.x + this.m_vertices[i].y * d.y; + if (value > bestValue) { + bestIndex = i; + bestValue = value; + } + } + return bestIndex; + } + b2DistanceProxy.prototype.GetSupportVertex = function (d) { + var bestIndex = 0; + var bestValue = this.m_vertices[0].x * d.x + this.m_vertices[0].y * d.y; + for (var i = 1; i < this.m_count; ++i) { + var value = this.m_vertices[i].x * d.x + this.m_vertices[i].y * d.y; + if (value > bestValue) { + bestIndex = i; + bestValue = value; + } + } + return this.m_vertices[bestIndex]; + } + b2DistanceProxy.prototype.GetVertexCount = function () { + return this.m_count; + } + b2DistanceProxy.prototype.GetVertex = function (index) { + if (index === undefined) index = 0; + b2Settings.b2Assert(0 <= index && index < this.m_count); + return this.m_vertices[index]; + } + b2DynamicTree.b2DynamicTree = function () {}; + b2DynamicTree.prototype.b2DynamicTree = function () { + this.m_root = null; + this.m_freeList = null; + this.m_path = 0; + this.m_insertionCount = 0; + } + b2DynamicTree.prototype.CreateProxy = function (aabb, userData) { + var node = this.AllocateNode(); + var extendX = b2Settings.b2_aabbExtension; + var extendY = b2Settings.b2_aabbExtension; + node.aabb.lowerBound.x = aabb.lowerBound.x - extendX; + node.aabb.lowerBound.y = aabb.lowerBound.y - extendY; + node.aabb.upperBound.x = aabb.upperBound.x + extendX; + node.aabb.upperBound.y = aabb.upperBound.y + extendY; + node.userData = userData; + this.InsertLeaf(node); + return node; + } + b2DynamicTree.prototype.DestroyProxy = function (proxy) { + this.RemoveLeaf(proxy); + this.FreeNode(proxy); + } + b2DynamicTree.prototype.MoveProxy = function (proxy, aabb, displacement) { + b2Settings.b2Assert(proxy.IsLeaf()); + if (proxy.aabb.Contains(aabb)) { + return false; + } + this.RemoveLeaf(proxy); + var extendX = b2Settings.b2_aabbExtension + b2Settings.b2_aabbMultiplier * (displacement.x > 0 ? displacement.x : (-displacement.x)); + var extendY = b2Settings.b2_aabbExtension + b2Settings.b2_aabbMultiplier * (displacement.y > 0 ? displacement.y : (-displacement.y)); + proxy.aabb.lowerBound.x = aabb.lowerBound.x - extendX; + proxy.aabb.lowerBound.y = aabb.lowerBound.y - extendY; + proxy.aabb.upperBound.x = aabb.upperBound.x + extendX; + proxy.aabb.upperBound.y = aabb.upperBound.y + extendY; + this.InsertLeaf(proxy); + return true; + } + b2DynamicTree.prototype.Rebalance = function (iterations) { + if (iterations === undefined) iterations = 0; + if (this.m_root == null) return; + for (var i = 0; i < iterations; i++) { + var node = this.m_root; + var bit = 0; + while (node.IsLeaf() == false) { + node = (this.m_path >> bit) & 1 ? node.child2 : node.child1; + bit = (bit + 1) & 31; + }++this.m_path; + this.RemoveLeaf(node); + this.InsertLeaf(node); + } + } + b2DynamicTree.prototype.GetFatAABB = function (proxy) { + return proxy.aabb; + } + b2DynamicTree.prototype.GetUserData = function (proxy) { + return proxy.userData; + } + b2DynamicTree.prototype.Query = function (callback, aabb) { + if (this.m_root == null) return; + var stack = new Vector(); + var count = 0; + stack[count++] = this.m_root; + while (count > 0) { + var node = stack[--count]; + if (node.aabb.TestOverlap(aabb)) { + if (node.IsLeaf()) { + var proceed = callback(node); + if (!proceed) return; + } + else { + stack[count++] = node.child1; + stack[count++] = node.child2; + } + } + } + } + b2DynamicTree.prototype.RayCast = function (callback, input) { + if (this.m_root == null) return; + var p1 = input.p1; + var p2 = input.p2; + var r = b2Math.SubtractVV(p1, p2); + r.Normalize(); + var v = b2Math.CrossFV(1.0, r); + var abs_v = b2Math.AbsV(v); + var maxFraction = input.maxFraction; + var segmentAABB = new b2AABB(); + var tX = 0; + var tY = 0; { + tX = p1.x + maxFraction * (p2.x - p1.x); + tY = p1.y + maxFraction * (p2.y - p1.y); + segmentAABB.lowerBound.x = Math.min(p1.x, tX); + segmentAABB.lowerBound.y = Math.min(p1.y, tY); + segmentAABB.upperBound.x = Math.max(p1.x, tX); + segmentAABB.upperBound.y = Math.max(p1.y, tY); + } + var stack = new Vector(); + var count = 0; + stack[count++] = this.m_root; + while (count > 0) { + var node = stack[--count]; + if (node.aabb.TestOverlap(segmentAABB) == false) { + continue; + } + var c = node.aabb.GetCenter(); + var h = node.aabb.GetExtents(); + var separation = Math.abs(v.x * (p1.x - c.x) + v.y * (p1.y - c.y)) - abs_v.x * h.x - abs_v.y * h.y; + if (separation > 0.0) continue; + if (node.IsLeaf()) { + var subInput = new b2RayCastInput(); + subInput.p1 = input.p1; + subInput.p2 = input.p2; + subInput.maxFraction = input.maxFraction; + maxFraction = callback(subInput, node); + if (maxFraction == 0.0) return; + if (maxFraction > 0.0) { + tX = p1.x + maxFraction * (p2.x - p1.x); + tY = p1.y + maxFraction * (p2.y - p1.y); + segmentAABB.lowerBound.x = Math.min(p1.x, tX); + segmentAABB.lowerBound.y = Math.min(p1.y, tY); + segmentAABB.upperBound.x = Math.max(p1.x, tX); + segmentAABB.upperBound.y = Math.max(p1.y, tY); + } + } + else { + stack[count++] = node.child1; + stack[count++] = node.child2; + } + } + } + b2DynamicTree.prototype.AllocateNode = function () { + if (this.m_freeList) { + var node = this.m_freeList; + this.m_freeList = node.parent; + node.parent = null; + node.child1 = null; + node.child2 = null; + return node; + } + return new b2DynamicTreeNode(); + } + b2DynamicTree.prototype.FreeNode = function (node) { + node.parent = this.m_freeList; + this.m_freeList = node; + } + b2DynamicTree.prototype.InsertLeaf = function (leaf) { + ++this.m_insertionCount; + if (this.m_root == null) { + this.m_root = leaf; + this.m_root.parent = null; + return; + } + var center = leaf.aabb.GetCenter(); + var sibling = this.m_root; + if (sibling.IsLeaf() == false) { + do { + var child1 = sibling.child1; + var child2 = sibling.child2; + var norm1 = Math.abs((child1.aabb.lowerBound.x + child1.aabb.upperBound.x) / 2 - center.x) + Math.abs((child1.aabb.lowerBound.y + child1.aabb.upperBound.y) / 2 - center.y); + var norm2 = Math.abs((child2.aabb.lowerBound.x + child2.aabb.upperBound.x) / 2 - center.x) + Math.abs((child2.aabb.lowerBound.y + child2.aabb.upperBound.y) / 2 - center.y); + if (norm1 < norm2) { + sibling = child1; + } + else { + sibling = child2; + } + } + while (sibling.IsLeaf() == false) + } + var node1 = sibling.parent; + var node2 = this.AllocateNode(); + node2.parent = node1; + node2.userData = null; + node2.aabb.Combine(leaf.aabb, sibling.aabb); + if (node1) { + if (sibling.parent.child1 == sibling) { + node1.child1 = node2; + } + else { + node1.child2 = node2; + } + node2.child1 = sibling; + node2.child2 = leaf; + sibling.parent = node2; + leaf.parent = node2; + do { + if (node1.aabb.Contains(node2.aabb)) break; + node1.aabb.Combine(node1.child1.aabb, node1.child2.aabb); + node2 = node1; + node1 = node1.parent; + } + while (node1) + } + else { + node2.child1 = sibling; + node2.child2 = leaf; + sibling.parent = node2; + leaf.parent = node2; + this.m_root = node2; + } + } + b2DynamicTree.prototype.RemoveLeaf = function (leaf) { + if (leaf == this.m_root) { + this.m_root = null; + return; + } + var node2 = leaf.parent; + var node1 = node2.parent; + var sibling; + if (node2.child1 == leaf) { + sibling = node2.child2; + } + else { + sibling = node2.child1; + } + if (node1) { + if (node1.child1 == node2) { + node1.child1 = sibling; + } + else { + node1.child2 = sibling; + } + sibling.parent = node1; + this.FreeNode(node2); + while (node1) { + var oldAABB = node1.aabb; + node1.aabb = b2AABB.Combine(node1.child1.aabb, node1.child2.aabb); + if (oldAABB.Contains(node1.aabb)) break; + node1 = node1.parent; + } + } + else { + this.m_root = sibling; + sibling.parent = null; + this.FreeNode(node2); + } + } + b2DynamicTreeBroadPhase.b2DynamicTreeBroadPhase = function () { + this.m_tree = new b2DynamicTree(); + this.m_moveBuffer = new Vector(); + this.m_pairBuffer = new Vector(); + this.m_pairCount = 0; + }; + b2DynamicTreeBroadPhase.prototype.CreateProxy = function (aabb, userData) { + var proxy = this.m_tree.CreateProxy(aabb, userData); + ++this.m_proxyCount; + this.BufferMove(proxy); + return proxy; + } + b2DynamicTreeBroadPhase.prototype.DestroyProxy = function (proxy) { + this.UnBufferMove(proxy); + --this.m_proxyCount; + this.m_tree.DestroyProxy(proxy); + } + b2DynamicTreeBroadPhase.prototype.MoveProxy = function (proxy, aabb, displacement) { + var buffer = this.m_tree.MoveProxy(proxy, aabb, displacement); + if (buffer) { + this.BufferMove(proxy); + } + } + b2DynamicTreeBroadPhase.prototype.TestOverlap = function (proxyA, proxyB) { + var aabbA = this.m_tree.GetFatAABB(proxyA); + var aabbB = this.m_tree.GetFatAABB(proxyB); + return aabbA.TestOverlap(aabbB); + } + b2DynamicTreeBroadPhase.prototype.GetUserData = function (proxy) { + return this.m_tree.GetUserData(proxy); + } + b2DynamicTreeBroadPhase.prototype.GetFatAABB = function (proxy) { + return this.m_tree.GetFatAABB(proxy); + } + b2DynamicTreeBroadPhase.prototype.GetProxyCount = function () { + return this.m_proxyCount; + } + b2DynamicTreeBroadPhase.prototype.UpdatePairs = function (callback) { + var __this = this; + __this.m_pairCount = 0; + var i = 0, + queryProxy; + for (i = 0; + i < __this.m_moveBuffer.length; ++i) { + queryProxy = __this.m_moveBuffer[i]; + + function QueryCallback(proxy) { + if (proxy == queryProxy) return true; + if (__this.m_pairCount == __this.m_pairBuffer.length) { + __this.m_pairBuffer[__this.m_pairCount] = new b2DynamicTreePair(); + } + var pair = __this.m_pairBuffer[__this.m_pairCount]; + pair.proxyA = proxy < queryProxy ? proxy : queryProxy; + pair.proxyB = proxy >= queryProxy ? proxy : queryProxy;++__this.m_pairCount; + return true; + }; + var fatAABB = __this.m_tree.GetFatAABB(queryProxy); + __this.m_tree.Query(QueryCallback, fatAABB); + } + __this.m_moveBuffer.length = 0; + for (var i = 0; i < __this.m_pairCount;) { + var primaryPair = __this.m_pairBuffer[i]; + var userDataA = __this.m_tree.GetUserData(primaryPair.proxyA); + var userDataB = __this.m_tree.GetUserData(primaryPair.proxyB); + callback(userDataA, userDataB); + ++i; + while (i < __this.m_pairCount) { + var pair = __this.m_pairBuffer[i]; + if (pair.proxyA != primaryPair.proxyA || pair.proxyB != primaryPair.proxyB) { + break; + }++i; + } + } + } + b2DynamicTreeBroadPhase.prototype.Query = function (callback, aabb) { + this.m_tree.Query(callback, aabb); + } + b2DynamicTreeBroadPhase.prototype.RayCast = function (callback, input) { + this.m_tree.RayCast(callback, input); + } + b2DynamicTreeBroadPhase.prototype.Validate = function () {} + b2DynamicTreeBroadPhase.prototype.Rebalance = function (iterations) { + if (iterations === undefined) iterations = 0; + this.m_tree.Rebalance(iterations); + } + b2DynamicTreeBroadPhase.prototype.BufferMove = function (proxy) { + this.m_moveBuffer[this.m_moveBuffer.length] = proxy; + } + b2DynamicTreeBroadPhase.prototype.UnBufferMove = function (proxy) { + var i = parseInt(this.m_moveBuffer.indexOf(proxy)); + this.m_moveBuffer.splice(i, 1); + } + b2DynamicTreeBroadPhase.prototype.ComparePairs = function (pair1, pair2) { + return 0; + } + b2DynamicTreeBroadPhase.__implements = {}; + b2DynamicTreeBroadPhase.__implements[IBroadPhase] = true; + b2DynamicTreeNode.b2DynamicTreeNode = function () { + this.aabb = new b2AABB(); + }; + b2DynamicTreeNode.prototype.IsLeaf = function () { + return this.child1 == null; + } + b2DynamicTreePair.b2DynamicTreePair = function () {}; + b2Manifold.b2Manifold = function () { + this.m_pointCount = 0; + }; + b2Manifold.prototype.b2Manifold = function () { + this.m_points = new Vector(b2Settings.b2_maxManifoldPoints); + for (var i = 0; i < b2Settings.b2_maxManifoldPoints; i++) { + this.m_points[i] = new b2ManifoldPoint(); + } + this.m_localPlaneNormal = new b2Vec2(); + this.m_localPoint = new b2Vec2(); + } + b2Manifold.prototype.Reset = function () { + for (var i = 0; i < b2Settings.b2_maxManifoldPoints; i++) { + ((this.m_points[i] instanceof b2ManifoldPoint ? this.m_points[i] : null)).Reset(); + } + this.m_localPlaneNormal.SetZero(); + this.m_localPoint.SetZero(); + this.m_type = 0; + this.m_pointCount = 0; + } + b2Manifold.prototype.Set = function (m) { + this.m_pointCount = m.m_pointCount; + for (var i = 0; i < b2Settings.b2_maxManifoldPoints; i++) { + ((this.m_points[i] instanceof b2ManifoldPoint ? this.m_points[i] : null)).Set(m.m_points[i]); + } + this.m_localPlaneNormal.SetV(m.m_localPlaneNormal); + this.m_localPoint.SetV(m.m_localPoint); + this.m_type = m.m_type; + } + b2Manifold.prototype.Copy = function () { + var copy = new b2Manifold(); + copy.Set(this); + return copy; + } + Box2D.postDefs.push(function () { + Box2D.Collision.b2Manifold.e_circles = 0x0001; + Box2D.Collision.b2Manifold.e_faceA = 0x0002; + Box2D.Collision.b2Manifold.e_faceB = 0x0004; + }); + b2ManifoldPoint.b2ManifoldPoint = function () { + this.m_localPoint = new b2Vec2(); + this.m_id = new b2ContactID(); + }; + b2ManifoldPoint.prototype.b2ManifoldPoint = function () { + this.Reset(); + } + b2ManifoldPoint.prototype.Reset = function () { + this.m_localPoint.SetZero(); + this.m_normalImpulse = 0.0; + this.m_tangentImpulse = 0.0; + this.m_id.key = 0; + } + b2ManifoldPoint.prototype.Set = function (m) { + this.m_localPoint.SetV(m.m_localPoint); + this.m_normalImpulse = m.m_normalImpulse; + this.m_tangentImpulse = m.m_tangentImpulse; + this.m_id.Set(m.m_id); + } + b2Point.b2Point = function () { + this.p = new b2Vec2(); + }; + b2Point.prototype.Support = function (xf, vX, vY) { + if (vX === undefined) vX = 0; + if (vY === undefined) vY = 0; + return this.p; + } + b2Point.prototype.GetFirstVertex = function (xf) { + return this.p; + } + b2RayCastInput.b2RayCastInput = function () { + this.p1 = new b2Vec2(); + this.p2 = new b2Vec2(); + }; + b2RayCastInput.prototype.b2RayCastInput = function (p1, p2, maxFraction) { + if (p1 === undefined) p1 = null; + if (p2 === undefined) p2 = null; + if (maxFraction === undefined) maxFraction = 1; + if (p1) this.p1.SetV(p1); + if (p2) this.p2.SetV(p2); + this.maxFraction = maxFraction; + } + b2RayCastOutput.b2RayCastOutput = function () { + this.normal = new b2Vec2(); + }; + b2Segment.b2Segment = function () { + this.p1 = new b2Vec2(); + this.p2 = new b2Vec2(); + }; + b2Segment.prototype.TestSegment = function (lambda, normal, segment, maxLambda) { + if (maxLambda === undefined) maxLambda = 0; + var s = segment.p1; + var rX = segment.p2.x - s.x; + var rY = segment.p2.y - s.y; + var dX = this.p2.x - this.p1.x; + var dY = this.p2.y - this.p1.y; + var nX = dY; + var nY = (-dX); + var k_slop = 100.0 * Number.MIN_VALUE; + var denom = (-(rX * nX + rY * nY)); + if (denom > k_slop) { + var bX = s.x - this.p1.x; + var bY = s.y - this.p1.y; + var a = (bX * nX + bY * nY); + if (0.0 <= a && a <= maxLambda * denom) { + var mu2 = (-rX * bY) + rY * bX; + if ((-k_slop * denom) <= mu2 && mu2 <= denom * (1.0 + k_slop)) { + a /= denom; + var nLen = Math.sqrt(nX * nX + nY * nY); + nX /= nLen; + nY /= nLen; + lambda[0] = a; + normal.Set(nX, nY); + return true; + } + } + } + return false; + } + b2Segment.prototype.Extend = function (aabb) { + this.ExtendForward(aabb); + this.ExtendBackward(aabb); + } + b2Segment.prototype.ExtendForward = function (aabb) { + var dX = this.p2.x - this.p1.x; + var dY = this.p2.y - this.p1.y; + var lambda = Math.min(dX > 0 ? (aabb.upperBound.x - this.p1.x) / dX : dX < 0 ? (aabb.lowerBound.x - this.p1.x) / dX : Number.POSITIVE_INFINITY, + dY > 0 ? (aabb.upperBound.y - this.p1.y) / dY : dY < 0 ? (aabb.lowerBound.y - this.p1.y) / dY : Number.POSITIVE_INFINITY); + this.p2.x = this.p1.x + dX * lambda; + this.p2.y = this.p1.y + dY * lambda; + } + b2Segment.prototype.ExtendBackward = function (aabb) { + var dX = (-this.p2.x) + this.p1.x; + var dY = (-this.p2.y) + this.p1.y; + var lambda = Math.min(dX > 0 ? (aabb.upperBound.x - this.p2.x) / dX : dX < 0 ? (aabb.lowerBound.x - this.p2.x) / dX : Number.POSITIVE_INFINITY, + dY > 0 ? (aabb.upperBound.y - this.p2.y) / dY : dY < 0 ? (aabb.lowerBound.y - this.p2.y) / dY : Number.POSITIVE_INFINITY); + this.p1.x = this.p2.x + dX * lambda; + this.p1.y = this.p2.y + dY * lambda; + } + b2SeparationFunction.b2SeparationFunction = function () { + this.m_localPoint = new b2Vec2(); + this.m_axis = new b2Vec2(); + }; + b2SeparationFunction.prototype.Initialize = function (cache, proxyA, transformA, proxyB, transformB) { + this.m_proxyA = proxyA; + this.m_proxyB = proxyB; + var count = parseInt(cache.count); + b2Settings.b2Assert(0 < count && count < 3); + var localPointA; + var localPointA1; + var localPointA2; + var localPointB; + var localPointB1; + var localPointB2; + var pointAX = 0; + var pointAY = 0; + var pointBX = 0; + var pointBY = 0; + var normalX = 0; + var normalY = 0; + var tMat; + var tVec; + var s = 0; + var sgn = 0; + if (count == 1) { + this.m_type = b2SeparationFunction.e_points; + localPointA = this.m_proxyA.GetVertex(cache.indexA[0]); + localPointB = this.m_proxyB.GetVertex(cache.indexB[0]); + tVec = localPointA; + tMat = transformA.R; + pointAX = transformA.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + pointAY = transformA.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tVec = localPointB; + tMat = transformB.R; + pointBX = transformB.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + pointBY = transformB.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + this.m_axis.x = pointBX - pointAX; + this.m_axis.y = pointBY - pointAY; + this.m_axis.Normalize(); + } + else if (cache.indexB[0] == cache.indexB[1]) { + this.m_type = b2SeparationFunction.e_faceA; + localPointA1 = this.m_proxyA.GetVertex(cache.indexA[0]); + localPointA2 = this.m_proxyA.GetVertex(cache.indexA[1]); + localPointB = this.m_proxyB.GetVertex(cache.indexB[0]); + this.m_localPoint.x = 0.5 * (localPointA1.x + localPointA2.x); + this.m_localPoint.y = 0.5 * (localPointA1.y + localPointA2.y); + this.m_axis = b2Math.CrossVF(b2Math.SubtractVV(localPointA2, localPointA1), 1.0); + this.m_axis.Normalize(); + tVec = this.m_axis; + tMat = transformA.R; + normalX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + normalY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + tVec = this.m_localPoint; + tMat = transformA.R; + pointAX = transformA.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + pointAY = transformA.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tVec = localPointB; + tMat = transformB.R; + pointBX = transformB.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + pointBY = transformB.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + s = (pointBX - pointAX) * normalX + (pointBY - pointAY) * normalY; + if (s < 0.0) { + this.m_axis.NegativeSelf(); + } + } + else if (cache.indexA[0] == cache.indexA[0]) { + this.m_type = b2SeparationFunction.e_faceB; + localPointB1 = this.m_proxyB.GetVertex(cache.indexB[0]); + localPointB2 = this.m_proxyB.GetVertex(cache.indexB[1]); + localPointA = this.m_proxyA.GetVertex(cache.indexA[0]); + this.m_localPoint.x = 0.5 * (localPointB1.x + localPointB2.x); + this.m_localPoint.y = 0.5 * (localPointB1.y + localPointB2.y); + this.m_axis = b2Math.CrossVF(b2Math.SubtractVV(localPointB2, localPointB1), 1.0); + this.m_axis.Normalize(); + tVec = this.m_axis; + tMat = transformB.R; + normalX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + normalY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + tVec = this.m_localPoint; + tMat = transformB.R; + pointBX = transformB.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + pointBY = transformB.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tVec = localPointA; + tMat = transformA.R; + pointAX = transformA.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + pointAY = transformA.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + s = (pointAX - pointBX) * normalX + (pointAY - pointBY) * normalY; + if (s < 0.0) { + this.m_axis.NegativeSelf(); + } + } + else { + localPointA1 = this.m_proxyA.GetVertex(cache.indexA[0]); + localPointA2 = this.m_proxyA.GetVertex(cache.indexA[1]); + localPointB1 = this.m_proxyB.GetVertex(cache.indexB[0]); + localPointB2 = this.m_proxyB.GetVertex(cache.indexB[1]); + var pA = b2Math.MulX(transformA, localPointA); + var dA = b2Math.MulMV(transformA.R, b2Math.SubtractVV(localPointA2, localPointA1)); + var pB = b2Math.MulX(transformB, localPointB); + var dB = b2Math.MulMV(transformB.R, b2Math.SubtractVV(localPointB2, localPointB1)); + var a = dA.x * dA.x + dA.y * dA.y; + var e = dB.x * dB.x + dB.y * dB.y; + var r = b2Math.SubtractVV(dB, dA); + var c = dA.x * r.x + dA.y * r.y; + var f = dB.x * r.x + dB.y * r.y; + var b = dA.x * dB.x + dA.y * dB.y; + var denom = a * e - b * b; + s = 0.0; + if (denom != 0.0) { + s = b2Math.Clamp((b * f - c * e) / denom, 0.0, 1.0); + } + var t = (b * s + f) / e; + if (t < 0.0) { + t = 0.0; + s = b2Math.Clamp((b - c) / a, 0.0, 1.0); + } + localPointA = new b2Vec2(); + localPointA.x = localPointA1.x + s * (localPointA2.x - localPointA1.x); + localPointA.y = localPointA1.y + s * (localPointA2.y - localPointA1.y); + localPointB = new b2Vec2(); + localPointB.x = localPointB1.x + s * (localPointB2.x - localPointB1.x); + localPointB.y = localPointB1.y + s * (localPointB2.y - localPointB1.y); + if (s == 0.0 || s == 1.0) { + this.m_type = b2SeparationFunction.e_faceB; + this.m_axis = b2Math.CrossVF(b2Math.SubtractVV(localPointB2, localPointB1), 1.0); + this.m_axis.Normalize(); + this.m_localPoint = localPointB; + tVec = this.m_axis; + tMat = transformB.R; + normalX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + normalY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + tVec = this.m_localPoint; + tMat = transformB.R; + pointBX = transformB.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + pointBY = transformB.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tVec = localPointA; + tMat = transformA.R; + pointAX = transformA.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + pointAY = transformA.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + sgn = (pointAX - pointBX) * normalX + (pointAY - pointBY) * normalY; + if (s < 0.0) { + this.m_axis.NegativeSelf(); + } + } + else { + this.m_type = b2SeparationFunction.e_faceA; + this.m_axis = b2Math.CrossVF(b2Math.SubtractVV(localPointA2, localPointA1), 1.0); + this.m_localPoint = localPointA; + tVec = this.m_axis; + tMat = transformA.R; + normalX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + normalY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + tVec = this.m_localPoint; + tMat = transformA.R; + pointAX = transformA.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + pointAY = transformA.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tVec = localPointB; + tMat = transformB.R; + pointBX = transformB.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + pointBY = transformB.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + sgn = (pointBX - pointAX) * normalX + (pointBY - pointAY) * normalY; + if (s < 0.0) { + this.m_axis.NegativeSelf(); + } + } + } + } + b2SeparationFunction.prototype.Evaluate = function (transformA, transformB) { + var axisA; + var axisB; + var localPointA; + var localPointB; + var pointA; + var pointB; + var seperation = 0; + var normal; + switch (this.m_type) { + case b2SeparationFunction.e_points: + { + axisA = b2Math.MulTMV(transformA.R, this.m_axis); + axisB = b2Math.MulTMV(transformB.R, this.m_axis.GetNegative()); + localPointA = this.m_proxyA.GetSupportVertex(axisA); + localPointB = this.m_proxyB.GetSupportVertex(axisB); + pointA = b2Math.MulX(transformA, localPointA); + pointB = b2Math.MulX(transformB, localPointB); + seperation = (pointB.x - pointA.x) * this.m_axis.x + (pointB.y - pointA.y) * this.m_axis.y; + return seperation; + } + case b2SeparationFunction.e_faceA: + { + normal = b2Math.MulMV(transformA.R, this.m_axis); + pointA = b2Math.MulX(transformA, this.m_localPoint); + axisB = b2Math.MulTMV(transformB.R, normal.GetNegative()); + localPointB = this.m_proxyB.GetSupportVertex(axisB); + pointB = b2Math.MulX(transformB, localPointB); + seperation = (pointB.x - pointA.x) * normal.x + (pointB.y - pointA.y) * normal.y; + return seperation; + } + case b2SeparationFunction.e_faceB: + { + normal = b2Math.MulMV(transformB.R, this.m_axis); + pointB = b2Math.MulX(transformB, this.m_localPoint); + axisA = b2Math.MulTMV(transformA.R, normal.GetNegative()); + localPointA = this.m_proxyA.GetSupportVertex(axisA); + pointA = b2Math.MulX(transformA, localPointA); + seperation = (pointA.x - pointB.x) * normal.x + (pointA.y - pointB.y) * normal.y; + return seperation; + } + default: + b2Settings.b2Assert(false); + return 0.0; + } + } + Box2D.postDefs.push(function () { + Box2D.Collision.b2SeparationFunction.e_points = 0x01; + Box2D.Collision.b2SeparationFunction.e_faceA = 0x02; + Box2D.Collision.b2SeparationFunction.e_faceB = 0x04; + }); + b2Simplex.b2Simplex = function () { + this.m_v1 = new b2SimplexVertex(); + this.m_v2 = new b2SimplexVertex(); + this.m_v3 = new b2SimplexVertex(); + this.m_vertices = new Vector(3); + }; + b2Simplex.prototype.b2Simplex = function () { + this.m_vertices[0] = this.m_v1; + this.m_vertices[1] = this.m_v2; + this.m_vertices[2] = this.m_v3; + } + b2Simplex.prototype.ReadCache = function (cache, proxyA, transformA, proxyB, transformB) { + b2Settings.b2Assert(0 <= cache.count && cache.count <= 3); + var wALocal; + var wBLocal; + this.m_count = cache.count; + var vertices = this.m_vertices; + for (var i = 0; i < this.m_count; i++) { + var v = vertices[i]; + v.indexA = cache.indexA[i]; + v.indexB = cache.indexB[i]; + wALocal = proxyA.GetVertex(v.indexA); + wBLocal = proxyB.GetVertex(v.indexB); + v.wA = b2Math.MulX(transformA, wALocal); + v.wB = b2Math.MulX(transformB, wBLocal); + v.w = b2Math.SubtractVV(v.wB, v.wA); + v.a = 0; + } + if (this.m_count > 1) { + var metric1 = cache.metric; + var metric2 = this.GetMetric(); + if (metric2 < .5 * metric1 || 2.0 * metric1 < metric2 || metric2 < Number.MIN_VALUE) { + this.m_count = 0; + } + } + if (this.m_count == 0) { + v = vertices[0]; + v.indexA = 0; + v.indexB = 0; + wALocal = proxyA.GetVertex(0); + wBLocal = proxyB.GetVertex(0); + v.wA = b2Math.MulX(transformA, wALocal); + v.wB = b2Math.MulX(transformB, wBLocal); + v.w = b2Math.SubtractVV(v.wB, v.wA); + this.m_count = 1; + } + } + b2Simplex.prototype.WriteCache = function (cache) { + cache.metric = this.GetMetric(); + cache.count = Box2D.parseUInt(this.m_count); + var vertices = this.m_vertices; + for (var i = 0; i < this.m_count; i++) { + cache.indexA[i] = Box2D.parseUInt(vertices[i].indexA); + cache.indexB[i] = Box2D.parseUInt(vertices[i].indexB); + } + } + b2Simplex.prototype.GetSearchDirection = function () { + switch (this.m_count) { + case 1: + return this.m_v1.w.GetNegative(); + case 2: + { + var e12 = b2Math.SubtractVV(this.m_v2.w, this.m_v1.w); + var sgn = b2Math.CrossVV(e12, this.m_v1.w.GetNegative()); + if (sgn > 0.0) { + return b2Math.CrossFV(1.0, e12); + } + else { + return b2Math.CrossVF(e12, 1.0); + } + } + default: + b2Settings.b2Assert(false); + return new b2Vec2(); + } + } + b2Simplex.prototype.GetClosestPoint = function () { + switch (this.m_count) { + case 0: + b2Settings.b2Assert(false); + return new b2Vec2(); + case 1: + return this.m_v1.w; + case 2: + return new b2Vec2(this.m_v1.a * this.m_v1.w.x + this.m_v2.a * this.m_v2.w.x, this.m_v1.a * this.m_v1.w.y + this.m_v2.a * this.m_v2.w.y); + default: + b2Settings.b2Assert(false); + return new b2Vec2(); + } + } + b2Simplex.prototype.GetWitnessPoints = function (pA, pB) { + switch (this.m_count) { + case 0: + b2Settings.b2Assert(false); + break; + case 1: + pA.SetV(this.m_v1.wA); + pB.SetV(this.m_v1.wB); + break; + case 2: + pA.x = this.m_v1.a * this.m_v1.wA.x + this.m_v2.a * this.m_v2.wA.x; + pA.y = this.m_v1.a * this.m_v1.wA.y + this.m_v2.a * this.m_v2.wA.y; + pB.x = this.m_v1.a * this.m_v1.wB.x + this.m_v2.a * this.m_v2.wB.x; + pB.y = this.m_v1.a * this.m_v1.wB.y + this.m_v2.a * this.m_v2.wB.y; + break; + case 3: + pB.x = pA.x = this.m_v1.a * this.m_v1.wA.x + this.m_v2.a * this.m_v2.wA.x + this.m_v3.a * this.m_v3.wA.x; + pB.y = pA.y = this.m_v1.a * this.m_v1.wA.y + this.m_v2.a * this.m_v2.wA.y + this.m_v3.a * this.m_v3.wA.y; + break; + default: + b2Settings.b2Assert(false); + break; + } + } + b2Simplex.prototype.GetMetric = function () { + switch (this.m_count) { + case 0: + b2Settings.b2Assert(false); + return 0.0; + case 1: + return 0.0; + case 2: + return b2Math.SubtractVV(this.m_v1.w, this.m_v2.w).Length(); + case 3: + return b2Math.CrossVV(b2Math.SubtractVV(this.m_v2.w, this.m_v1.w), b2Math.SubtractVV(this.m_v3.w, this.m_v1.w)); + default: + b2Settings.b2Assert(false); + return 0.0; + } + } + b2Simplex.prototype.Solve2 = function () { + var w1 = this.m_v1.w; + var w2 = this.m_v2.w; + var e12 = b2Math.SubtractVV(w2, w1); + var d12_2 = (-(w1.x * e12.x + w1.y * e12.y)); + if (d12_2 <= 0.0) { + this.m_v1.a = 1.0; + this.m_count = 1; + return; + } + var d12_1 = (w2.x * e12.x + w2.y * e12.y); + if (d12_1 <= 0.0) { + this.m_v2.a = 1.0; + this.m_count = 1; + this.m_v1.Set(this.m_v2); + return; + } + var inv_d12 = 1.0 / (d12_1 + d12_2); + this.m_v1.a = d12_1 * inv_d12; + this.m_v2.a = d12_2 * inv_d12; + this.m_count = 2; + } + b2Simplex.prototype.Solve3 = function () { + var w1 = this.m_v1.w; + var w2 = this.m_v2.w; + var w3 = this.m_v3.w; + var e12 = b2Math.SubtractVV(w2, w1); + var w1e12 = b2Math.Dot(w1, e12); + var w2e12 = b2Math.Dot(w2, e12); + var d12_1 = w2e12; + var d12_2 = (-w1e12); + var e13 = b2Math.SubtractVV(w3, w1); + var w1e13 = b2Math.Dot(w1, e13); + var w3e13 = b2Math.Dot(w3, e13); + var d13_1 = w3e13; + var d13_2 = (-w1e13); + var e23 = b2Math.SubtractVV(w3, w2); + var w2e23 = b2Math.Dot(w2, e23); + var w3e23 = b2Math.Dot(w3, e23); + var d23_1 = w3e23; + var d23_2 = (-w2e23); + var n123 = b2Math.CrossVV(e12, e13); + var d123_1 = n123 * b2Math.CrossVV(w2, w3); + var d123_2 = n123 * b2Math.CrossVV(w3, w1); + var d123_3 = n123 * b2Math.CrossVV(w1, w2); + if (d12_2 <= 0.0 && d13_2 <= 0.0) { + this.m_v1.a = 1.0; + this.m_count = 1; + return; + } + if (d12_1 > 0.0 && d12_2 > 0.0 && d123_3 <= 0.0) { + var inv_d12 = 1.0 / (d12_1 + d12_2); + this.m_v1.a = d12_1 * inv_d12; + this.m_v2.a = d12_2 * inv_d12; + this.m_count = 2; + return; + } + if (d13_1 > 0.0 && d13_2 > 0.0 && d123_2 <= 0.0) { + var inv_d13 = 1.0 / (d13_1 + d13_2); + this.m_v1.a = d13_1 * inv_d13; + this.m_v3.a = d13_2 * inv_d13; + this.m_count = 2; + this.m_v2.Set(this.m_v3); + return; + } + if (d12_1 <= 0.0 && d23_2 <= 0.0) { + this.m_v2.a = 1.0; + this.m_count = 1; + this.m_v1.Set(this.m_v2); + return; + } + if (d13_1 <= 0.0 && d23_1 <= 0.0) { + this.m_v3.a = 1.0; + this.m_count = 1; + this.m_v1.Set(this.m_v3); + return; + } + if (d23_1 > 0.0 && d23_2 > 0.0 && d123_1 <= 0.0) { + var inv_d23 = 1.0 / (d23_1 + d23_2); + this.m_v2.a = d23_1 * inv_d23; + this.m_v3.a = d23_2 * inv_d23; + this.m_count = 2; + this.m_v1.Set(this.m_v3); + return; + } + var inv_d123 = 1.0 / (d123_1 + d123_2 + d123_3); + this.m_v1.a = d123_1 * inv_d123; + this.m_v2.a = d123_2 * inv_d123; + this.m_v3.a = d123_3 * inv_d123; + this.m_count = 3; + } + b2SimplexCache.b2SimplexCache = function () { + this.indexA = new Vector_a2j_Number(3); + this.indexB = new Vector_a2j_Number(3); + }; + b2SimplexVertex.b2SimplexVertex = function () {}; + b2SimplexVertex.prototype.Set = function (other) { + this.wA.SetV(other.wA); + this.wB.SetV(other.wB); + this.w.SetV(other.w); + this.a = other.a; + this.indexA = other.indexA; + this.indexB = other.indexB; + } + b2TimeOfImpact.b2TimeOfImpact = function () {}; + b2TimeOfImpact.TimeOfImpact = function (input) { + ++b2TimeOfImpact.b2_toiCalls; + var proxyA = input.proxyA; + var proxyB = input.proxyB; + var sweepA = input.sweepA; + var sweepB = input.sweepB; + b2Settings.b2Assert(sweepA.t0 == sweepB.t0); + b2Settings.b2Assert(1.0 - sweepA.t0 > Number.MIN_VALUE); + var radius = proxyA.m_radius + proxyB.m_radius; + var tolerance = input.tolerance; + var alpha = 0.0; + var k_maxIterations = 1000; + var iter = 0; + var target = 0.0; + b2TimeOfImpact.s_cache.count = 0; + b2TimeOfImpact.s_distanceInput.useRadii = false; + for (;;) { + sweepA.GetTransform(b2TimeOfImpact.s_xfA, alpha); + sweepB.GetTransform(b2TimeOfImpact.s_xfB, alpha); + b2TimeOfImpact.s_distanceInput.proxyA = proxyA; + b2TimeOfImpact.s_distanceInput.proxyB = proxyB; + b2TimeOfImpact.s_distanceInput.transformA = b2TimeOfImpact.s_xfA; + b2TimeOfImpact.s_distanceInput.transformB = b2TimeOfImpact.s_xfB; + b2Distance.Distance(b2TimeOfImpact.s_distanceOutput, b2TimeOfImpact.s_cache, b2TimeOfImpact.s_distanceInput); + if (b2TimeOfImpact.s_distanceOutput.distance <= 0.0) { + alpha = 1.0; + break; + } + b2TimeOfImpact.s_fcn.Initialize(b2TimeOfImpact.s_cache, proxyA, b2TimeOfImpact.s_xfA, proxyB, b2TimeOfImpact.s_xfB); + var separation = b2TimeOfImpact.s_fcn.Evaluate(b2TimeOfImpact.s_xfA, b2TimeOfImpact.s_xfB); + if (separation <= 0.0) { + alpha = 1.0; + break; + } + if (iter == 0) { + if (separation > radius) { + target = b2Math.Max(radius - tolerance, 0.75 * radius); + } + else { + target = b2Math.Max(separation - tolerance, 0.02 * radius); + } + } + if (separation - target < 0.5 * tolerance) { + if (iter == 0) { + alpha = 1.0; + break; + } + break; + } + var newAlpha = alpha; { + var x1 = alpha; + var x2 = 1.0; + var f1 = separation; + sweepA.GetTransform(b2TimeOfImpact.s_xfA, x2); + sweepB.GetTransform(b2TimeOfImpact.s_xfB, x2); + var f2 = b2TimeOfImpact.s_fcn.Evaluate(b2TimeOfImpact.s_xfA, b2TimeOfImpact.s_xfB); + if (f2 >= target) { + alpha = 1.0; + break; + } + var rootIterCount = 0; + for (;;) { + var x = 0; + if (rootIterCount & 1) { + x = x1 + (target - f1) * (x2 - x1) / (f2 - f1); + } + else { + x = 0.5 * (x1 + x2); + } + sweepA.GetTransform(b2TimeOfImpact.s_xfA, x); + sweepB.GetTransform(b2TimeOfImpact.s_xfB, x); + var f = b2TimeOfImpact.s_fcn.Evaluate(b2TimeOfImpact.s_xfA, b2TimeOfImpact.s_xfB); + if (b2Math.Abs(f - target) < 0.025 * tolerance) { + newAlpha = x; + break; + } + if (f > target) { + x1 = x; + f1 = f; + } + else { + x2 = x; + f2 = f; + }++rootIterCount; + ++b2TimeOfImpact.b2_toiRootIters; + if (rootIterCount == 50) { + break; + } + } + b2TimeOfImpact.b2_toiMaxRootIters = b2Math.Max(b2TimeOfImpact.b2_toiMaxRootIters, rootIterCount); + } + if (newAlpha < (1.0 + 100.0 * Number.MIN_VALUE) * alpha) { + break; + } + alpha = newAlpha; + iter++; + ++b2TimeOfImpact.b2_toiIters; + if (iter == k_maxIterations) { + break; + } + } + b2TimeOfImpact.b2_toiMaxIters = b2Math.Max(b2TimeOfImpact.b2_toiMaxIters, iter); + return alpha; + } + Box2D.postDefs.push(function () { + Box2D.Collision.b2TimeOfImpact.b2_toiCalls = 0; + Box2D.Collision.b2TimeOfImpact.b2_toiIters = 0; + Box2D.Collision.b2TimeOfImpact.b2_toiMaxIters = 0; + Box2D.Collision.b2TimeOfImpact.b2_toiRootIters = 0; + Box2D.Collision.b2TimeOfImpact.b2_toiMaxRootIters = 0; + Box2D.Collision.b2TimeOfImpact.s_cache = new b2SimplexCache(); + Box2D.Collision.b2TimeOfImpact.s_distanceInput = new b2DistanceInput(); + Box2D.Collision.b2TimeOfImpact.s_xfA = new b2Transform(); + Box2D.Collision.b2TimeOfImpact.s_xfB = new b2Transform(); + Box2D.Collision.b2TimeOfImpact.s_fcn = new b2SeparationFunction(); + Box2D.Collision.b2TimeOfImpact.s_distanceOutput = new b2DistanceOutput(); + }); + b2TOIInput.b2TOIInput = function () { + this.proxyA = new b2DistanceProxy(); + this.proxyB = new b2DistanceProxy(); + this.sweepA = new b2Sweep(); + this.sweepB = new b2Sweep(); + }; + b2WorldManifold.b2WorldManifold = function () { + this.m_normal = new b2Vec2(); + }; + b2WorldManifold.prototype.b2WorldManifold = function () { + this.m_points = new Vector(b2Settings.b2_maxManifoldPoints); + for (var i = 0; i < b2Settings.b2_maxManifoldPoints; i++) { + this.m_points[i] = new b2Vec2(); + } + } + b2WorldManifold.prototype.Initialize = function (manifold, xfA, radiusA, xfB, radiusB) { + if (radiusA === undefined) radiusA = 0; + if (radiusB === undefined) radiusB = 0; + if (manifold.m_pointCount == 0) { + return; + } + var i = 0; + var tVec; + var tMat; + var normalX = 0; + var normalY = 0; + var planePointX = 0; + var planePointY = 0; + var clipPointX = 0; + var clipPointY = 0; + switch (manifold.m_type) { + case b2Manifold.e_circles: + { + tMat = xfA.R; + tVec = manifold.m_localPoint; + var pointAX = xfA.position.x + tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + var pointAY = xfA.position.y + tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + tMat = xfB.R; + tVec = manifold.m_points[0].m_localPoint; + var pointBX = xfB.position.x + tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + var pointBY = xfB.position.y + tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + var dX = pointBX - pointAX; + var dY = pointBY - pointAY; + var d2 = dX * dX + dY * dY; + if (d2 > Number.MIN_VALUE * Number.MIN_VALUE) { + var d = Math.sqrt(d2); + this.m_normal.x = dX / d; + this.m_normal.y = dY / d; + } + else { + this.m_normal.x = 1; + this.m_normal.y = 0; + } + var cAX = pointAX + radiusA * this.m_normal.x; + var cAY = pointAY + radiusA * this.m_normal.y; + var cBX = pointBX - radiusB * this.m_normal.x; + var cBY = pointBY - radiusB * this.m_normal.y; + this.m_points[0].x = 0.5 * (cAX + cBX); + this.m_points[0].y = 0.5 * (cAY + cBY); + } + break; + case b2Manifold.e_faceA: + { + tMat = xfA.R; + tVec = manifold.m_localPlaneNormal; + normalX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + normalY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + tMat = xfA.R; + tVec = manifold.m_localPoint; + planePointX = xfA.position.x + tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + planePointY = xfA.position.y + tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + this.m_normal.x = normalX; + this.m_normal.y = normalY; + for (i = 0; + i < manifold.m_pointCount; i++) { + tMat = xfB.R; + tVec = manifold.m_points[i].m_localPoint; + clipPointX = xfB.position.x + tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + clipPointY = xfB.position.y + tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + this.m_points[i].x = clipPointX + 0.5 * (radiusA - (clipPointX - planePointX) * normalX - (clipPointY - planePointY) * normalY - radiusB) * normalX; + this.m_points[i].y = clipPointY + 0.5 * (radiusA - (clipPointX - planePointX) * normalX - (clipPointY - planePointY) * normalY - radiusB) * normalY; + } + } + break; + case b2Manifold.e_faceB: + { + tMat = xfB.R; + tVec = manifold.m_localPlaneNormal; + normalX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + normalY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + tMat = xfB.R; + tVec = manifold.m_localPoint; + planePointX = xfB.position.x + tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + planePointY = xfB.position.y + tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + this.m_normal.x = (-normalX); + this.m_normal.y = (-normalY); + for (i = 0; + i < manifold.m_pointCount; i++) { + tMat = xfA.R; + tVec = manifold.m_points[i].m_localPoint; + clipPointX = xfA.position.x + tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + clipPointY = xfA.position.y + tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + this.m_points[i].x = clipPointX + 0.5 * (radiusB - (clipPointX - planePointX) * normalX - (clipPointY - planePointY) * normalY - radiusA) * normalX; + this.m_points[i].y = clipPointY + 0.5 * (radiusB - (clipPointX - planePointX) * normalX - (clipPointY - planePointY) * normalY - radiusA) * normalY; + } + } + break; + } + } + ClipVertex.ClipVertex = function () { + this.v = new b2Vec2(); + this.id = new b2ContactID(); + }; + ClipVertex.prototype.Set = function (other) { + this.v.SetV(other.v); + this.id.Set(other.id); + } + Features.Features = function () {}; + Object.defineProperty(Features.prototype, 'referenceEdge', { + enumerable: false, + configurable: true, + get: function () { + return this._referenceEdge; + } + }); + Object.defineProperty(Features.prototype, 'referenceEdge', { + enumerable: false, + configurable: true, + set: function (value) { + if (value === undefined) value = 0; + this._referenceEdge = value; + this._m_id._key = (this._m_id._key & 0xffffff00) | (this._referenceEdge & 0x000000ff); + } + }); + Object.defineProperty(Features.prototype, 'incidentEdge', { + enumerable: false, + configurable: true, + get: function () { + return this._incidentEdge; + } + }); + Object.defineProperty(Features.prototype, 'incidentEdge', { + enumerable: false, + configurable: true, + set: function (value) { + if (value === undefined) value = 0; + this._incidentEdge = value; + this._m_id._key = (this._m_id._key & 0xffff00ff) | ((this._incidentEdge << 8) & 0x0000ff00); + } + }); + Object.defineProperty(Features.prototype, 'incidentVertex', { + enumerable: false, + configurable: true, + get: function () { + return this._incidentVertex; + } + }); + Object.defineProperty(Features.prototype, 'incidentVertex', { + enumerable: false, + configurable: true, + set: function (value) { + if (value === undefined) value = 0; + this._incidentVertex = value; + this._m_id._key = (this._m_id._key & 0xff00ffff) | ((this._incidentVertex << 16) & 0x00ff0000); + } + }); + Object.defineProperty(Features.prototype, 'flip', { + enumerable: false, + configurable: true, + get: function () { + return this._flip; + } + }); + Object.defineProperty(Features.prototype, 'flip', { + enumerable: false, + configurable: true, + set: function (value) { + if (value === undefined) value = 0; + this._flip = value; + this._m_id._key = (this._m_id._key & 0x00ffffff) | ((this._flip << 24) & 0xff000000); + } + }); +})(); +(function () { + var b2Color = Box2D.Common.b2Color, + b2internal = Box2D.Common.b2internal, + b2Settings = Box2D.Common.b2Settings, + b2CircleShape = Box2D.Collision.Shapes.b2CircleShape, + b2EdgeChainDef = Box2D.Collision.Shapes.b2EdgeChainDef, + b2EdgeShape = Box2D.Collision.Shapes.b2EdgeShape, + b2MassData = Box2D.Collision.Shapes.b2MassData, + b2PolygonShape = Box2D.Collision.Shapes.b2PolygonShape, + b2Shape = Box2D.Collision.Shapes.b2Shape, + b2Mat22 = Box2D.Common.Math.b2Mat22, + b2Mat33 = Box2D.Common.Math.b2Mat33, + b2Math = Box2D.Common.Math.b2Math, + b2Sweep = Box2D.Common.Math.b2Sweep, + b2Transform = Box2D.Common.Math.b2Transform, + b2Vec2 = Box2D.Common.Math.b2Vec2, + b2Vec3 = Box2D.Common.Math.b2Vec3, + b2Body = Box2D.Dynamics.b2Body, + b2BodyDef = Box2D.Dynamics.b2BodyDef, + b2ContactFilter = Box2D.Dynamics.b2ContactFilter, + b2ContactImpulse = Box2D.Dynamics.b2ContactImpulse, + b2ContactListener = Box2D.Dynamics.b2ContactListener, + b2ContactManager = Box2D.Dynamics.b2ContactManager, + b2DebugDraw = Box2D.Dynamics.b2DebugDraw, + b2DestructionListener = Box2D.Dynamics.b2DestructionListener, + b2FilterData = Box2D.Dynamics.b2FilterData, + b2Fixture = Box2D.Dynamics.b2Fixture, + b2FixtureDef = Box2D.Dynamics.b2FixtureDef, + b2Island = Box2D.Dynamics.b2Island, + b2TimeStep = Box2D.Dynamics.b2TimeStep, + b2World = Box2D.Dynamics.b2World, + b2AABB = Box2D.Collision.b2AABB, + b2Bound = Box2D.Collision.b2Bound, + b2BoundValues = Box2D.Collision.b2BoundValues, + b2Collision = Box2D.Collision.b2Collision, + b2ContactID = Box2D.Collision.b2ContactID, + b2ContactPoint = Box2D.Collision.b2ContactPoint, + b2Distance = Box2D.Collision.b2Distance, + b2DistanceInput = Box2D.Collision.b2DistanceInput, + b2DistanceOutput = Box2D.Collision.b2DistanceOutput, + b2DistanceProxy = Box2D.Collision.b2DistanceProxy, + b2DynamicTree = Box2D.Collision.b2DynamicTree, + b2DynamicTreeBroadPhase = Box2D.Collision.b2DynamicTreeBroadPhase, + b2DynamicTreeNode = Box2D.Collision.b2DynamicTreeNode, + b2DynamicTreePair = Box2D.Collision.b2DynamicTreePair, + b2Manifold = Box2D.Collision.b2Manifold, + b2ManifoldPoint = Box2D.Collision.b2ManifoldPoint, + b2Point = Box2D.Collision.b2Point, + b2RayCastInput = Box2D.Collision.b2RayCastInput, + b2RayCastOutput = Box2D.Collision.b2RayCastOutput, + b2Segment = Box2D.Collision.b2Segment, + b2SeparationFunction = Box2D.Collision.b2SeparationFunction, + b2Simplex = Box2D.Collision.b2Simplex, + b2SimplexCache = Box2D.Collision.b2SimplexCache, + b2SimplexVertex = Box2D.Collision.b2SimplexVertex, + b2TimeOfImpact = Box2D.Collision.b2TimeOfImpact, + b2TOIInput = Box2D.Collision.b2TOIInput, + b2WorldManifold = Box2D.Collision.b2WorldManifold, + ClipVertex = Box2D.Collision.ClipVertex, + Features = Box2D.Collision.Features, + IBroadPhase = Box2D.Collision.IBroadPhase; + + Box2D.inherit(b2CircleShape, Box2D.Collision.Shapes.b2Shape); + b2CircleShape.prototype.__super = Box2D.Collision.Shapes.b2Shape.prototype; + b2CircleShape.b2CircleShape = function () { + Box2D.Collision.Shapes.b2Shape.b2Shape.apply(this, arguments); + this.m_p = new b2Vec2(); + }; + b2CircleShape.prototype.Copy = function () { + var s = new b2CircleShape(); + s.Set(this); + return s; + } + b2CircleShape.prototype.Set = function (other) { + this.__super.Set.call(this, other); + if (Box2D.is(other, b2CircleShape)) { + var other2 = (other instanceof b2CircleShape ? other : null); + this.m_p.SetV(other2.m_p); + } + } + b2CircleShape.prototype.TestPoint = function (transform, p) { + var tMat = transform.R; + var dX = transform.position.x + (tMat.col1.x * this.m_p.x + tMat.col2.x * this.m_p.y); + var dY = transform.position.y + (tMat.col1.y * this.m_p.x + tMat.col2.y * this.m_p.y); + dX = p.x - dX; + dY = p.y - dY; + return (dX * dX + dY * dY) <= this.m_radius * this.m_radius; + } + b2CircleShape.prototype.RayCast = function (output, input, transform) { + var tMat = transform.R; + var positionX = transform.position.x + (tMat.col1.x * this.m_p.x + tMat.col2.x * this.m_p.y); + var positionY = transform.position.y + (tMat.col1.y * this.m_p.x + tMat.col2.y * this.m_p.y); + var sX = input.p1.x - positionX; + var sY = input.p1.y - positionY; + var b = (sX * sX + sY * sY) - this.m_radius * this.m_radius; + var rX = input.p2.x - input.p1.x; + var rY = input.p2.y - input.p1.y; + var c = (sX * rX + sY * rY); + var rr = (rX * rX + rY * rY); + var sigma = c * c - rr * b; + if (sigma < 0.0 || rr < Number.MIN_VALUE) { + return false; + } + var a = (-(c + Math.sqrt(sigma))); + if (0.0 <= a && a <= input.maxFraction * rr) { + a /= rr; + output.fraction = a; + output.normal.x = sX + a * rX; + output.normal.y = sY + a * rY; + output.normal.Normalize(); + return true; + } + return false; + } + b2CircleShape.prototype.ComputeAABB = function (aabb, transform) { + var tMat = transform.R; + var pX = transform.position.x + (tMat.col1.x * this.m_p.x + tMat.col2.x * this.m_p.y); + var pY = transform.position.y + (tMat.col1.y * this.m_p.x + tMat.col2.y * this.m_p.y); + aabb.lowerBound.Set(pX - this.m_radius, pY - this.m_radius); + aabb.upperBound.Set(pX + this.m_radius, pY + this.m_radius); + } + b2CircleShape.prototype.ComputeMass = function (massData, density) { + if (density === undefined) density = 0; + massData.mass = density * b2Settings.b2_pi * this.m_radius * this.m_radius; + massData.center.SetV(this.m_p); + massData.I = massData.mass * (0.5 * this.m_radius * this.m_radius + (this.m_p.x * this.m_p.x + this.m_p.y * this.m_p.y)); + } + b2CircleShape.prototype.ComputeSubmergedArea = function (normal, offset, xf, c) { + if (offset === undefined) offset = 0; + var p = b2Math.MulX(xf, this.m_p); + var l = (-(b2Math.Dot(normal, p) - offset)); + if (l < (-this.m_radius) + Number.MIN_VALUE) { + return 0; + } + if (l > this.m_radius) { + c.SetV(p); + return Math.PI * this.m_radius * this.m_radius; + } + var r2 = this.m_radius * this.m_radius; + var l2 = l * l; + var area = r2 * (Math.asin(l / this.m_radius) + Math.PI / 2) + l * Math.sqrt(r2 - l2); + var com = (-2 / 3 * Math.pow(r2 - l2, 1.5) / area); + c.x = p.x + normal.x * com; + c.y = p.y + normal.y * com; + return area; + } + b2CircleShape.prototype.GetLocalPosition = function () { + return this.m_p; + } + b2CircleShape.prototype.SetLocalPosition = function (position) { + this.m_p.SetV(position); + } + b2CircleShape.prototype.GetRadius = function () { + return this.m_radius; + } + b2CircleShape.prototype.SetRadius = function (radius) { + if (radius === undefined) radius = 0; + this.m_radius = radius; + } + b2CircleShape.prototype.b2CircleShape = function (radius) { + if (radius === undefined) radius = 0; + this.__super.b2Shape.call(this); + this.m_type = b2Shape.e_circleShape; + this.m_radius = radius; + } + b2EdgeChainDef.b2EdgeChainDef = function () {}; + b2EdgeChainDef.prototype.b2EdgeChainDef = function () { + this.vertexCount = 0; + this.isALoop = true; + this.vertices = []; + } + Box2D.inherit(b2EdgeShape, Box2D.Collision.Shapes.b2Shape); + b2EdgeShape.prototype.__super = Box2D.Collision.Shapes.b2Shape.prototype; + b2EdgeShape.b2EdgeShape = function () { + Box2D.Collision.Shapes.b2Shape.b2Shape.apply(this, arguments); + this.s_supportVec = new b2Vec2(); + this.m_v1 = new b2Vec2(); + this.m_v2 = new b2Vec2(); + this.m_coreV1 = new b2Vec2(); + this.m_coreV2 = new b2Vec2(); + this.m_normal = new b2Vec2(); + this.m_direction = new b2Vec2(); + this.m_cornerDir1 = new b2Vec2(); + this.m_cornerDir2 = new b2Vec2(); + }; + b2EdgeShape.prototype.TestPoint = function (transform, p) { + return false; + } + b2EdgeShape.prototype.RayCast = function (output, input, transform) { + var tMat; + var rX = input.p2.x - input.p1.x; + var rY = input.p2.y - input.p1.y; + tMat = transform.R; + var v1X = transform.position.x + (tMat.col1.x * this.m_v1.x + tMat.col2.x * this.m_v1.y); + var v1Y = transform.position.y + (tMat.col1.y * this.m_v1.x + tMat.col2.y * this.m_v1.y); + var nX = transform.position.y + (tMat.col1.y * this.m_v2.x + tMat.col2.y * this.m_v2.y) - v1Y; + var nY = (-(transform.position.x + (tMat.col1.x * this.m_v2.x + tMat.col2.x * this.m_v2.y) - v1X)); + var k_slop = 100.0 * Number.MIN_VALUE; + var denom = (-(rX * nX + rY * nY)); + if (denom > k_slop) { + var bX = input.p1.x - v1X; + var bY = input.p1.y - v1Y; + var a = (bX * nX + bY * nY); + if (0.0 <= a && a <= input.maxFraction * denom) { + var mu2 = (-rX * bY) + rY * bX; + if ((-k_slop * denom) <= mu2 && mu2 <= denom * (1.0 + k_slop)) { + a /= denom; + output.fraction = a; + var nLen = Math.sqrt(nX * nX + nY * nY); + output.normal.x = nX / nLen; + output.normal.y = nY / nLen; + return true; + } + } + } + return false; + } + b2EdgeShape.prototype.ComputeAABB = function (aabb, transform) { + var tMat = transform.R; + var v1X = transform.position.x + (tMat.col1.x * this.m_v1.x + tMat.col2.x * this.m_v1.y); + var v1Y = transform.position.y + (tMat.col1.y * this.m_v1.x + tMat.col2.y * this.m_v1.y); + var v2X = transform.position.x + (tMat.col1.x * this.m_v2.x + tMat.col2.x * this.m_v2.y); + var v2Y = transform.position.y + (tMat.col1.y * this.m_v2.x + tMat.col2.y * this.m_v2.y); + if (v1X < v2X) { + aabb.lowerBound.x = v1X; + aabb.upperBound.x = v2X; + } + else { + aabb.lowerBound.x = v2X; + aabb.upperBound.x = v1X; + } + if (v1Y < v2Y) { + aabb.lowerBound.y = v1Y; + aabb.upperBound.y = v2Y; + } + else { + aabb.lowerBound.y = v2Y; + aabb.upperBound.y = v1Y; + } + } + b2EdgeShape.prototype.ComputeMass = function (massData, density) { + if (density === undefined) density = 0; + massData.mass = 0; + massData.center.SetV(this.m_v1); + massData.I = 0; + } + b2EdgeShape.prototype.ComputeSubmergedArea = function (normal, offset, xf, c) { + if (offset === undefined) offset = 0; + var v0 = new b2Vec2(normal.x * offset, normal.y * offset); + var v1 = b2Math.MulX(xf, this.m_v1); + var v2 = b2Math.MulX(xf, this.m_v2); + var d1 = b2Math.Dot(normal, v1) - offset; + var d2 = b2Math.Dot(normal, v2) - offset; + if (d1 > 0) { + if (d2 > 0) { + return 0; + } + else { + v1.x = (-d2 / (d1 - d2) * v1.x) + d1 / (d1 - d2) * v2.x; + v1.y = (-d2 / (d1 - d2) * v1.y) + d1 / (d1 - d2) * v2.y; + } + } + else { + if (d2 > 0) { + v2.x = (-d2 / (d1 - d2) * v1.x) + d1 / (d1 - d2) * v2.x; + v2.y = (-d2 / (d1 - d2) * v1.y) + d1 / (d1 - d2) * v2.y; + } + else {} + } + c.x = (v0.x + v1.x + v2.x) / 3; + c.y = (v0.y + v1.y + v2.y) / 3; + return 0.5 * ((v1.x - v0.x) * (v2.y - v0.y) - (v1.y - v0.y) * (v2.x - v0.x)); + } + b2EdgeShape.prototype.GetLength = function () { + return this.m_length; + } + b2EdgeShape.prototype.GetVertex1 = function () { + return this.m_v1; + } + b2EdgeShape.prototype.GetVertex2 = function () { + return this.m_v2; + } + b2EdgeShape.prototype.GetCoreVertex1 = function () { + return this.m_coreV1; + } + b2EdgeShape.prototype.GetCoreVertex2 = function () { + return this.m_coreV2; + } + b2EdgeShape.prototype.GetNormalVector = function () { + return this.m_normal; + } + b2EdgeShape.prototype.GetDirectionVector = function () { + return this.m_direction; + } + b2EdgeShape.prototype.GetCorner1Vector = function () { + return this.m_cornerDir1; + } + b2EdgeShape.prototype.GetCorner2Vector = function () { + return this.m_cornerDir2; + } + b2EdgeShape.prototype.Corner1IsConvex = function () { + return this.m_cornerConvex1; + } + b2EdgeShape.prototype.Corner2IsConvex = function () { + return this.m_cornerConvex2; + } + b2EdgeShape.prototype.GetFirstVertex = function (xf) { + var tMat = xf.R; + return new b2Vec2(xf.position.x + (tMat.col1.x * this.m_coreV1.x + tMat.col2.x * this.m_coreV1.y), xf.position.y + (tMat.col1.y * this.m_coreV1.x + tMat.col2.y * this.m_coreV1.y)); + } + b2EdgeShape.prototype.GetNextEdge = function () { + return this.m_nextEdge; + } + b2EdgeShape.prototype.GetPrevEdge = function () { + return this.m_prevEdge; + } + b2EdgeShape.prototype.Support = function (xf, dX, dY) { + if (dX === undefined) dX = 0; + if (dY === undefined) dY = 0; + var tMat = xf.R; + var v1X = xf.position.x + (tMat.col1.x * this.m_coreV1.x + tMat.col2.x * this.m_coreV1.y); + var v1Y = xf.position.y + (tMat.col1.y * this.m_coreV1.x + tMat.col2.y * this.m_coreV1.y); + var v2X = xf.position.x + (tMat.col1.x * this.m_coreV2.x + tMat.col2.x * this.m_coreV2.y); + var v2Y = xf.position.y + (tMat.col1.y * this.m_coreV2.x + tMat.col2.y * this.m_coreV2.y); + if ((v1X * dX + v1Y * dY) > (v2X * dX + v2Y * dY)) { + this.s_supportVec.x = v1X; + this.s_supportVec.y = v1Y; + } + else { + this.s_supportVec.x = v2X; + this.s_supportVec.y = v2Y; + } + return this.s_supportVec; + } + b2EdgeShape.prototype.b2EdgeShape = function (v1, v2) { + this.__super.b2Shape.call(this); + this.m_type = b2Shape.e_edgeShape; + this.m_prevEdge = null; + this.m_nextEdge = null; + this.m_v1 = v1; + this.m_v2 = v2; + this.m_direction.Set(this.m_v2.x - this.m_v1.x, this.m_v2.y - this.m_v1.y); + this.m_length = this.m_direction.Normalize(); + this.m_normal.Set(this.m_direction.y, (-this.m_direction.x)); + this.m_coreV1.Set((-b2Settings.b2_toiSlop * (this.m_normal.x - this.m_direction.x)) + this.m_v1.x, (-b2Settings.b2_toiSlop * (this.m_normal.y - this.m_direction.y)) + this.m_v1.y); + this.m_coreV2.Set((-b2Settings.b2_toiSlop * (this.m_normal.x + this.m_direction.x)) + this.m_v2.x, (-b2Settings.b2_toiSlop * (this.m_normal.y + this.m_direction.y)) + this.m_v2.y); + this.m_cornerDir1 = this.m_normal; + this.m_cornerDir2.Set((-this.m_normal.x), (-this.m_normal.y)); + } + b2EdgeShape.prototype.SetPrevEdge = function (edge, core, cornerDir, convex) { + this.m_prevEdge = edge; + this.m_coreV1 = core; + this.m_cornerDir1 = cornerDir; + this.m_cornerConvex1 = convex; + } + b2EdgeShape.prototype.SetNextEdge = function (edge, core, cornerDir, convex) { + this.m_nextEdge = edge; + this.m_coreV2 = core; + this.m_cornerDir2 = cornerDir; + this.m_cornerConvex2 = convex; + } + b2MassData.b2MassData = function () { + this.mass = 0.0; + this.center = new b2Vec2(0, 0); + this.I = 0.0; + }; + Box2D.inherit(b2PolygonShape, Box2D.Collision.Shapes.b2Shape); + b2PolygonShape.prototype.__super = Box2D.Collision.Shapes.b2Shape.prototype; + b2PolygonShape.b2PolygonShape = function () { + Box2D.Collision.Shapes.b2Shape.b2Shape.apply(this, arguments); + }; + b2PolygonShape.prototype.Copy = function () { + var s = new b2PolygonShape(); + s.Set(this); + return s; + } + b2PolygonShape.prototype.Set = function (other) { + this.__super.Set.call(this, other); + if (Box2D.is(other, b2PolygonShape)) { + var other2 = (other instanceof b2PolygonShape ? other : null); + this.m_centroid.SetV(other2.m_centroid); + this.m_vertexCount = other2.m_vertexCount; + this.Reserve(this.m_vertexCount); + for (var i = 0; i < this.m_vertexCount; i++) { + this.m_vertices[i].SetV(other2.m_vertices[i]); + this.m_normals[i].SetV(other2.m_normals[i]); + } + } + } + b2PolygonShape.prototype.SetAsArray = function (vertices, vertexCount) { + if (vertexCount === undefined) vertexCount = 0; + var v = new Vector(); + var i = 0, + tVec; + for (i = 0; + i < vertices.length; ++i) { + tVec = vertices[i]; + v.push(tVec); + } + this.SetAsVector(v, vertexCount); + } + b2PolygonShape.AsArray = function (vertices, vertexCount) { + if (vertexCount === undefined) vertexCount = 0; + var polygonShape = new b2PolygonShape(); + polygonShape.SetAsArray(vertices, vertexCount); + return polygonShape; + } + b2PolygonShape.prototype.SetAsVector = function (vertices, vertexCount) { + if (vertexCount === undefined) vertexCount = 0; + if (vertexCount == 0) vertexCount = vertices.length; + b2Settings.b2Assert(2 <= vertexCount); + this.m_vertexCount = vertexCount; + this.Reserve(vertexCount); + var i = 0; + for (i = 0; + i < this.m_vertexCount; i++) { + this.m_vertices[i].SetV(vertices[i]); + } + for (i = 0; + i < this.m_vertexCount; ++i) { + var i1 = parseInt(i); + var i2 = parseInt(i + 1 < this.m_vertexCount ? i + 1 : 0); + var edge = b2Math.SubtractVV(this.m_vertices[i2], this.m_vertices[i1]); + b2Settings.b2Assert(edge.LengthSquared() > Number.MIN_VALUE); + this.m_normals[i].SetV(b2Math.CrossVF(edge, 1.0)); + this.m_normals[i].Normalize(); + } + this.m_centroid = b2PolygonShape.ComputeCentroid(this.m_vertices, this.m_vertexCount); + } + b2PolygonShape.AsVector = function (vertices, vertexCount) { + if (vertexCount === undefined) vertexCount = 0; + var polygonShape = new b2PolygonShape(); + polygonShape.SetAsVector(vertices, vertexCount); + return polygonShape; + } + b2PolygonShape.prototype.SetAsBox = function (hx, hy) { + if (hx === undefined) hx = 0; + if (hy === undefined) hy = 0; + this.m_vertexCount = 4; + this.Reserve(4); + this.m_vertices[0].Set((-hx), (-hy)); + this.m_vertices[1].Set(hx, (-hy)); + this.m_vertices[2].Set(hx, hy); + this.m_vertices[3].Set((-hx), hy); + this.m_normals[0].Set(0.0, (-1.0)); + this.m_normals[1].Set(1.0, 0.0); + this.m_normals[2].Set(0.0, 1.0); + this.m_normals[3].Set((-1.0), 0.0); + this.m_centroid.SetZero(); + } + b2PolygonShape.AsBox = function (hx, hy) { + if (hx === undefined) hx = 0; + if (hy === undefined) hy = 0; + var polygonShape = new b2PolygonShape(); + polygonShape.SetAsBox(hx, hy); + return polygonShape; + } + b2PolygonShape.prototype.SetAsOrientedBox = function (hx, hy, center, angle) { + if (hx === undefined) hx = 0; + if (hy === undefined) hy = 0; + if (center === undefined) center = null; + if (angle === undefined) angle = 0.0; + this.m_vertexCount = 4; + this.Reserve(4); + this.m_vertices[0].Set((-hx), (-hy)); + this.m_vertices[1].Set(hx, (-hy)); + this.m_vertices[2].Set(hx, hy); + this.m_vertices[3].Set((-hx), hy); + this.m_normals[0].Set(0.0, (-1.0)); + this.m_normals[1].Set(1.0, 0.0); + this.m_normals[2].Set(0.0, 1.0); + this.m_normals[3].Set((-1.0), 0.0); + this.m_centroid = center; + var xf = new b2Transform(); + xf.position = center; + xf.R.Set(angle); + for (var i = 0; i < this.m_vertexCount; ++i) { + this.m_vertices[i] = b2Math.MulX(xf, this.m_vertices[i]); + this.m_normals[i] = b2Math.MulMV(xf.R, this.m_normals[i]); + } + } + b2PolygonShape.AsOrientedBox = function (hx, hy, center, angle) { + if (hx === undefined) hx = 0; + if (hy === undefined) hy = 0; + if (center === undefined) center = null; + if (angle === undefined) angle = 0.0; + var polygonShape = new b2PolygonShape(); + polygonShape.SetAsOrientedBox(hx, hy, center, angle); + return polygonShape; + } + b2PolygonShape.prototype.SetAsEdge = function (v1, v2) { + this.m_vertexCount = 2; + this.Reserve(2); + this.m_vertices[0].SetV(v1); + this.m_vertices[1].SetV(v2); + this.m_centroid.x = 0.5 * (v1.x + v2.x); + this.m_centroid.y = 0.5 * (v1.y + v2.y); + this.m_normals[0] = b2Math.CrossVF(b2Math.SubtractVV(v2, v1), 1.0); + this.m_normals[0].Normalize(); + this.m_normals[1].x = (-this.m_normals[0].x); + this.m_normals[1].y = (-this.m_normals[0].y); + } + b2PolygonShape.AsEdge = function (v1, v2) { + var polygonShape = new b2PolygonShape(); + polygonShape.SetAsEdge(v1, v2); + return polygonShape; + } + b2PolygonShape.prototype.TestPoint = function (xf, p) { + var tVec; + var tMat = xf.R; + var tX = p.x - xf.position.x; + var tY = p.y - xf.position.y; + var pLocalX = (tX * tMat.col1.x + tY * tMat.col1.y); + var pLocalY = (tX * tMat.col2.x + tY * tMat.col2.y); + for (var i = 0; i < this.m_vertexCount; ++i) { + tVec = this.m_vertices[i]; + tX = pLocalX - tVec.x; + tY = pLocalY - tVec.y; + tVec = this.m_normals[i]; + var dot = (tVec.x * tX + tVec.y * tY); + if (dot > 0.0) { + return false; + } + } + return true; + } + b2PolygonShape.prototype.RayCast = function (output, input, transform) { + var lower = 0.0; + var upper = input.maxFraction; + var tX = 0; + var tY = 0; + var tMat; + var tVec; + tX = input.p1.x - transform.position.x; + tY = input.p1.y - transform.position.y; + tMat = transform.R; + var p1X = (tX * tMat.col1.x + tY * tMat.col1.y); + var p1Y = (tX * tMat.col2.x + tY * tMat.col2.y); + tX = input.p2.x - transform.position.x; + tY = input.p2.y - transform.position.y; + tMat = transform.R; + var p2X = (tX * tMat.col1.x + tY * tMat.col1.y); + var p2Y = (tX * tMat.col2.x + tY * tMat.col2.y); + var dX = p2X - p1X; + var dY = p2Y - p1Y; + var index = parseInt((-1)); + for (var i = 0; i < this.m_vertexCount; ++i) { + tVec = this.m_vertices[i]; + tX = tVec.x - p1X; + tY = tVec.y - p1Y; + tVec = this.m_normals[i]; + var numerator = (tVec.x * tX + tVec.y * tY); + var denominator = (tVec.x * dX + tVec.y * dY); + if (denominator == 0.0) { + if (numerator < 0.0) { + return false; + } + } + else { + if (denominator < 0.0 && numerator < lower * denominator) { + lower = numerator / denominator; + index = i; + } + else if (denominator > 0.0 && numerator < upper * denominator) { + upper = numerator / denominator; + } + } + if (upper < lower - Number.MIN_VALUE) { + return false; + } + } + if (index >= 0) { + output.fraction = lower; + tMat = transform.R; + tVec = this.m_normals[index]; + output.normal.x = (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + output.normal.y = (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + return true; + } + return false; + } + b2PolygonShape.prototype.ComputeAABB = function (aabb, xf) { + var tMat = xf.R; + var tVec = this.m_vertices[0]; + var lowerX = xf.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + var lowerY = xf.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + var upperX = lowerX; + var upperY = lowerY; + for (var i = 1; i < this.m_vertexCount; ++i) { + tVec = this.m_vertices[i]; + var vX = xf.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + var vY = xf.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + lowerX = lowerX < vX ? lowerX : vX; + lowerY = lowerY < vY ? lowerY : vY; + upperX = upperX > vX ? upperX : vX; + upperY = upperY > vY ? upperY : vY; + } + aabb.lowerBound.x = lowerX - this.m_radius; + aabb.lowerBound.y = lowerY - this.m_radius; + aabb.upperBound.x = upperX + this.m_radius; + aabb.upperBound.y = upperY + this.m_radius; + } + b2PolygonShape.prototype.ComputeMass = function (massData, density) { + if (density === undefined) density = 0; + if (this.m_vertexCount == 2) { + massData.center.x = 0.5 * (this.m_vertices[0].x + this.m_vertices[1].x); + massData.center.y = 0.5 * (this.m_vertices[0].y + this.m_vertices[1].y); + massData.mass = 0.0; + massData.I = 0.0; + return; + } + var centerX = 0.0; + var centerY = 0.0; + var area = 0.0; + var I = 0.0; + var p1X = 0.0; + var p1Y = 0.0; + var k_inv3 = 1.0 / 3.0; + for (var i = 0; i < this.m_vertexCount; ++i) { + var p2 = this.m_vertices[i]; + var p3 = i + 1 < this.m_vertexCount ? this.m_vertices[parseInt(i + 1)] : this.m_vertices[0]; + var e1X = p2.x - p1X; + var e1Y = p2.y - p1Y; + var e2X = p3.x - p1X; + var e2Y = p3.y - p1Y; + var D = e1X * e2Y - e1Y * e2X; + var triangleArea = 0.5 * D;area += triangleArea; + centerX += triangleArea * k_inv3 * (p1X + p2.x + p3.x); + centerY += triangleArea * k_inv3 * (p1Y + p2.y + p3.y); + var px = p1X; + var py = p1Y; + var ex1 = e1X; + var ey1 = e1Y; + var ex2 = e2X; + var ey2 = e2Y; + var intx2 = k_inv3 * (0.25 * (ex1 * ex1 + ex2 * ex1 + ex2 * ex2) + (px * ex1 + px * ex2)) + 0.5 * px * px; + var inty2 = k_inv3 * (0.25 * (ey1 * ey1 + ey2 * ey1 + ey2 * ey2) + (py * ey1 + py * ey2)) + 0.5 * py * py;I += D * (intx2 + inty2); + } + massData.mass = density * area; + centerX *= 1.0 / area; + centerY *= 1.0 / area; + massData.center.Set(centerX, centerY); + massData.I = density * I; + } + b2PolygonShape.prototype.ComputeSubmergedArea = function (normal, offset, xf, c) { + if (offset === undefined) offset = 0; + var normalL = b2Math.MulTMV(xf.R, normal); + var offsetL = offset - b2Math.Dot(normal, xf.position); + var depths = new Vector_a2j_Number(); + var diveCount = 0; + var intoIndex = parseInt((-1)); + var outoIndex = parseInt((-1)); + var lastSubmerged = false; + var i = 0; + for (i = 0; + i < this.m_vertexCount; ++i) { + depths[i] = b2Math.Dot(normalL, this.m_vertices[i]) - offsetL; + var isSubmerged = depths[i] < (-Number.MIN_VALUE); + if (i > 0) { + if (isSubmerged) { + if (!lastSubmerged) { + intoIndex = i - 1; + diveCount++; + } + } + else { + if (lastSubmerged) { + outoIndex = i - 1; + diveCount++; + } + } + } + lastSubmerged = isSubmerged; + } + switch (diveCount) { + case 0: + if (lastSubmerged) { + var md = new b2MassData(); + this.ComputeMass(md, 1); + c.SetV(b2Math.MulX(xf, md.center)); + return md.mass; + } + else { + return 0; + } + break; + case 1: + if (intoIndex == (-1)) { + intoIndex = this.m_vertexCount - 1; + } + else { + outoIndex = this.m_vertexCount - 1; + } + break; + } + var intoIndex2 = parseInt((intoIndex + 1) % this.m_vertexCount); + var outoIndex2 = parseInt((outoIndex + 1) % this.m_vertexCount); + var intoLamdda = (0 - depths[intoIndex]) / (depths[intoIndex2] - depths[intoIndex]); + var outoLamdda = (0 - depths[outoIndex]) / (depths[outoIndex2] - depths[outoIndex]); + var intoVec = new b2Vec2(this.m_vertices[intoIndex].x * (1 - intoLamdda) + this.m_vertices[intoIndex2].x * intoLamdda, this.m_vertices[intoIndex].y * (1 - intoLamdda) + this.m_vertices[intoIndex2].y * intoLamdda); + var outoVec = new b2Vec2(this.m_vertices[outoIndex].x * (1 - outoLamdda) + this.m_vertices[outoIndex2].x * outoLamdda, this.m_vertices[outoIndex].y * (1 - outoLamdda) + this.m_vertices[outoIndex2].y * outoLamdda); + var area = 0; + var center = new b2Vec2(); + var p2 = this.m_vertices[intoIndex2]; + var p3; + i = intoIndex2; + while (i != outoIndex2) { + i = (i + 1) % this.m_vertexCount; + if (i == outoIndex2) p3 = outoVec; + else p3 = this.m_vertices[i]; + var triangleArea = 0.5 * ((p2.x - intoVec.x) * (p3.y - intoVec.y) - (p2.y - intoVec.y) * (p3.x - intoVec.x)); + area += triangleArea; + center.x += triangleArea * (intoVec.x + p2.x + p3.x) / 3; + center.y += triangleArea * (intoVec.y + p2.y + p3.y) / 3; + p2 = p3; + } + center.Multiply(1 / area); + c.SetV(b2Math.MulX(xf, center)); + return area; + } + b2PolygonShape.prototype.GetVertexCount = function () { + return this.m_vertexCount; + } + b2PolygonShape.prototype.GetVertices = function () { + return this.m_vertices; + } + b2PolygonShape.prototype.GetNormals = function () { + return this.m_normals; + } + b2PolygonShape.prototype.GetSupport = function (d) { + var bestIndex = 0; + var bestValue = this.m_vertices[0].x * d.x + this.m_vertices[0].y * d.y; + for (var i = 1; i < this.m_vertexCount; ++i) { + var value = this.m_vertices[i].x * d.x + this.m_vertices[i].y * d.y; + if (value > bestValue) { + bestIndex = i; + bestValue = value; + } + } + return bestIndex; + } + b2PolygonShape.prototype.GetSupportVertex = function (d) { + var bestIndex = 0; + var bestValue = this.m_vertices[0].x * d.x + this.m_vertices[0].y * d.y; + for (var i = 1; i < this.m_vertexCount; ++i) { + var value = this.m_vertices[i].x * d.x + this.m_vertices[i].y * d.y; + if (value > bestValue) { + bestIndex = i; + bestValue = value; + } + } + return this.m_vertices[bestIndex]; + } + b2PolygonShape.prototype.Validate = function () { + return false; + } + b2PolygonShape.prototype.b2PolygonShape = function () { + this.__super.b2Shape.call(this); + this.m_type = b2Shape.e_polygonShape; + this.m_centroid = new b2Vec2(); + this.m_vertices = new Vector(); + this.m_normals = new Vector(); + } + b2PolygonShape.prototype.Reserve = function (count) { + if (count === undefined) count = 0; + for (var i = parseInt(this.m_vertices.length); i < count; i++) { + this.m_vertices[i] = new b2Vec2(); + this.m_normals[i] = new b2Vec2(); + } + } + b2PolygonShape.ComputeCentroid = function (vs, count) { + if (count === undefined) count = 0; + var c = new b2Vec2(); + var area = 0.0; + var p1X = 0.0; + var p1Y = 0.0; + var inv3 = 1.0 / 3.0; + for (var i = 0; i < count; ++i) { + var p2 = vs[i]; + var p3 = i + 1 < count ? vs[parseInt(i + 1)] : vs[0]; + var e1X = p2.x - p1X; + var e1Y = p2.y - p1Y; + var e2X = p3.x - p1X; + var e2Y = p3.y - p1Y; + var D = (e1X * e2Y - e1Y * e2X); + var triangleArea = 0.5 * D;area += triangleArea; + c.x += triangleArea * inv3 * (p1X + p2.x + p3.x); + c.y += triangleArea * inv3 * (p1Y + p2.y + p3.y); + } + c.x *= 1.0 / area; + c.y *= 1.0 / area; + return c; + } + b2PolygonShape.ComputeOBB = function (obb, vs, count) { + if (count === undefined) count = 0; + var i = 0; + var p = new Vector(count + 1); + for (i = 0; + i < count; ++i) { + p[i] = vs[i]; + } + p[count] = p[0]; + var minArea = Number.MAX_VALUE; + for (i = 1; + i <= count; ++i) { + var root = p[parseInt(i - 1)]; + var uxX = p[i].x - root.x; + var uxY = p[i].y - root.y; + var length = Math.sqrt(uxX * uxX + uxY * uxY); + uxX /= length; + uxY /= length; + var uyX = (-uxY); + var uyY = uxX; + var lowerX = Number.MAX_VALUE; + var lowerY = Number.MAX_VALUE; + var upperX = (-Number.MAX_VALUE); + var upperY = (-Number.MAX_VALUE); + for (var j = 0; j < count; ++j) { + var dX = p[j].x - root.x; + var dY = p[j].y - root.y; + var rX = (uxX * dX + uxY * dY); + var rY = (uyX * dX + uyY * dY); + if (rX < lowerX) lowerX = rX; + if (rY < lowerY) lowerY = rY; + if (rX > upperX) upperX = rX; + if (rY > upperY) upperY = rY; + } + var area = (upperX - lowerX) * (upperY - lowerY); + if (area < 0.95 * minArea) { + minArea = area; + obb.R.col1.x = uxX; + obb.R.col1.y = uxY; + obb.R.col2.x = uyX; + obb.R.col2.y = uyY; + var centerX = 0.5 * (lowerX + upperX); + var centerY = 0.5 * (lowerY + upperY); + var tMat = obb.R; + obb.center.x = root.x + (tMat.col1.x * centerX + tMat.col2.x * centerY); + obb.center.y = root.y + (tMat.col1.y * centerX + tMat.col2.y * centerY); + obb.extents.x = 0.5 * (upperX - lowerX); + obb.extents.y = 0.5 * (upperY - lowerY); + } + } + } + Box2D.postDefs.push(function () { + Box2D.Collision.Shapes.b2PolygonShape.s_mat = new b2Mat22(); + }); + b2Shape.b2Shape = function () {}; + b2Shape.prototype.Copy = function () { + return null; + } + b2Shape.prototype.Set = function (other) { + this.m_radius = other.m_radius; + } + b2Shape.prototype.GetType = function () { + return this.m_type; + } + b2Shape.prototype.TestPoint = function (xf, p) { + return false; + } + b2Shape.prototype.RayCast = function (output, input, transform) { + return false; + } + b2Shape.prototype.ComputeAABB = function (aabb, xf) {} + b2Shape.prototype.ComputeMass = function (massData, density) { + if (density === undefined) density = 0; + } + b2Shape.prototype.ComputeSubmergedArea = function (normal, offset, xf, c) { + if (offset === undefined) offset = 0; + return 0; + } + b2Shape.TestOverlap = function (shape1, transform1, shape2, transform2) { + var input = new b2DistanceInput(); + input.proxyA = new b2DistanceProxy(); + input.proxyA.Set(shape1); + input.proxyB = new b2DistanceProxy(); + input.proxyB.Set(shape2); + input.transformA = transform1; + input.transformB = transform2; + input.useRadii = true; + var simplexCache = new b2SimplexCache(); + simplexCache.count = 0; + var output = new b2DistanceOutput(); + b2Distance.Distance(output, simplexCache, input); + return output.distance < 10.0 * Number.MIN_VALUE; + } + b2Shape.prototype.b2Shape = function () { + this.m_type = b2Shape.e_unknownShape; + this.m_radius = b2Settings.b2_linearSlop; + } + Box2D.postDefs.push(function () { + Box2D.Collision.Shapes.b2Shape.e_unknownShape = parseInt((-1)); + Box2D.Collision.Shapes.b2Shape.e_circleShape = 0; + Box2D.Collision.Shapes.b2Shape.e_polygonShape = 1; + Box2D.Collision.Shapes.b2Shape.e_edgeShape = 2; + Box2D.Collision.Shapes.b2Shape.e_shapeTypeCount = 3; + Box2D.Collision.Shapes.b2Shape.e_hitCollide = 1; + Box2D.Collision.Shapes.b2Shape.e_missCollide = 0; + Box2D.Collision.Shapes.b2Shape.e_startsInsideCollide = parseInt((-1)); + }); +})(); +(function () { + var b2Color = Box2D.Common.b2Color, + b2internal = Box2D.Common.b2internal, + b2Settings = Box2D.Common.b2Settings, + b2Mat22 = Box2D.Common.Math.b2Mat22, + b2Mat33 = Box2D.Common.Math.b2Mat33, + b2Math = Box2D.Common.Math.b2Math, + b2Sweep = Box2D.Common.Math.b2Sweep, + b2Transform = Box2D.Common.Math.b2Transform, + b2Vec2 = Box2D.Common.Math.b2Vec2, + b2Vec3 = Box2D.Common.Math.b2Vec3; + + b2Color.b2Color = function () { + this._r = 0; + this._g = 0; + this._b = 0; + }; + b2Color.prototype.b2Color = function (rr, gg, bb) { + if (rr === undefined) rr = 0; + if (gg === undefined) gg = 0; + if (bb === undefined) bb = 0; + this._r = Box2D.parseUInt(255 * b2Math.Clamp(rr, 0.0, 1.0)); + this._g = Box2D.parseUInt(255 * b2Math.Clamp(gg, 0.0, 1.0)); + this._b = Box2D.parseUInt(255 * b2Math.Clamp(bb, 0.0, 1.0)); + } + b2Color.prototype.Set = function (rr, gg, bb) { + if (rr === undefined) rr = 0; + if (gg === undefined) gg = 0; + if (bb === undefined) bb = 0; + this._r = Box2D.parseUInt(255 * b2Math.Clamp(rr, 0.0, 1.0)); + this._g = Box2D.parseUInt(255 * b2Math.Clamp(gg, 0.0, 1.0)); + this._b = Box2D.parseUInt(255 * b2Math.Clamp(bb, 0.0, 1.0)); + } + Object.defineProperty(b2Color.prototype, 'r', { + enumerable: false, + configurable: true, + set: function (rr) { + if (rr === undefined) rr = 0; + this._r = Box2D.parseUInt(255 * b2Math.Clamp(rr, 0.0, 1.0)); + } + }); + Object.defineProperty(b2Color.prototype, 'g', { + enumerable: false, + configurable: true, + set: function (gg) { + if (gg === undefined) gg = 0; + this._g = Box2D.parseUInt(255 * b2Math.Clamp(gg, 0.0, 1.0)); + } + }); + Object.defineProperty(b2Color.prototype, 'b', { + enumerable: false, + configurable: true, + set: function (bb) { + if (bb === undefined) bb = 0; + this._b = Box2D.parseUInt(255 * b2Math.Clamp(bb, 0.0, 1.0)); + } + }); + Object.defineProperty(b2Color.prototype, 'color', { + enumerable: false, + configurable: true, + get: function () { + return (this._r << 16) | (this._g << 8) | (this._b); + } + }); + b2Settings.b2Settings = function () {}; + b2Settings.b2MixFriction = function (friction1, friction2) { + if (friction1 === undefined) friction1 = 0; + if (friction2 === undefined) friction2 = 0; + return Math.sqrt(friction1 * friction2); + } + b2Settings.b2MixRestitution = function (restitution1, restitution2) { + if (restitution1 === undefined) restitution1 = 0; + if (restitution2 === undefined) restitution2 = 0; + return restitution1 > restitution2 ? restitution1 : restitution2; + } + b2Settings.b2Assert = function (a) { + if (!a) { + throw "Assertion Failed"; + } + } + Box2D.postDefs.push(function () { + Box2D.Common.b2Settings.VERSION = "2.1alpha"; + Box2D.Common.b2Settings.USHRT_MAX = 0x0000ffff; + Box2D.Common.b2Settings.b2_pi = Math.PI; + Box2D.Common.b2Settings.b2_maxManifoldPoints = 2; + Box2D.Common.b2Settings.b2_aabbExtension = 0.1; + Box2D.Common.b2Settings.b2_aabbMultiplier = 2.0; + Box2D.Common.b2Settings.b2_polygonRadius = 2.0 * b2Settings.b2_linearSlop; + Box2D.Common.b2Settings.b2_linearSlop = 0.005; + Box2D.Common.b2Settings.b2_angularSlop = 2.0 / 180.0 * b2Settings.b2_pi; + Box2D.Common.b2Settings.b2_toiSlop = 8.0 * b2Settings.b2_linearSlop; + Box2D.Common.b2Settings.b2_maxTOIContactsPerIsland = 32; + Box2D.Common.b2Settings.b2_maxTOIJointsPerIsland = 32; + Box2D.Common.b2Settings.b2_velocityThreshold = 1.0; + Box2D.Common.b2Settings.b2_maxLinearCorrection = 0.2; + Box2D.Common.b2Settings.b2_maxAngularCorrection = 8.0 / 180.0 * b2Settings.b2_pi; + Box2D.Common.b2Settings.b2_maxTranslation = 2.0; + Box2D.Common.b2Settings.b2_maxTranslationSquared = b2Settings.b2_maxTranslation * b2Settings.b2_maxTranslation; + Box2D.Common.b2Settings.b2_maxRotation = 0.5 * b2Settings.b2_pi; + Box2D.Common.b2Settings.b2_maxRotationSquared = b2Settings.b2_maxRotation * b2Settings.b2_maxRotation; + Box2D.Common.b2Settings.b2_contactBaumgarte = 0.2; + Box2D.Common.b2Settings.b2_timeToSleep = 0.5; + Box2D.Common.b2Settings.b2_linearSleepTolerance = 0.01; + Box2D.Common.b2Settings.b2_angularSleepTolerance = 2.0 / 180.0 * b2Settings.b2_pi; + }); +})(); +(function () { + var b2AABB = Box2D.Collision.b2AABB, + b2Color = Box2D.Common.b2Color, + b2internal = Box2D.Common.b2internal, + b2Settings = Box2D.Common.b2Settings, + b2Mat22 = Box2D.Common.Math.b2Mat22, + b2Mat33 = Box2D.Common.Math.b2Mat33, + b2Math = Box2D.Common.Math.b2Math, + b2Sweep = Box2D.Common.Math.b2Sweep, + b2Transform = Box2D.Common.Math.b2Transform, + b2Vec2 = Box2D.Common.Math.b2Vec2, + b2Vec3 = Box2D.Common.Math.b2Vec3; + + b2Mat22.b2Mat22 = function () { + this.col1 = new b2Vec2(); + this.col2 = new b2Vec2(); + }; + b2Mat22.prototype.b2Mat22 = function () { + this.SetIdentity(); + } + b2Mat22.FromAngle = function (angle) { + if (angle === undefined) angle = 0; + var mat = new b2Mat22(); + mat.Set(angle); + return mat; + } + b2Mat22.FromVV = function (c1, c2) { + var mat = new b2Mat22(); + mat.SetVV(c1, c2); + return mat; + } + b2Mat22.prototype.Set = function (angle) { + if (angle === undefined) angle = 0; + var c = Math.cos(angle); + var s = Math.sin(angle); + this.col1.x = c; + this.col2.x = (-s); + this.col1.y = s; + this.col2.y = c; + } + b2Mat22.prototype.SetVV = function (c1, c2) { + this.col1.SetV(c1); + this.col2.SetV(c2); + } + b2Mat22.prototype.Copy = function () { + var mat = new b2Mat22(); + mat.SetM(this); + return mat; + } + b2Mat22.prototype.SetM = function (m) { + this.col1.SetV(m.col1); + this.col2.SetV(m.col2); + } + b2Mat22.prototype.AddM = function (m) { + this.col1.x += m.col1.x; + this.col1.y += m.col1.y; + this.col2.x += m.col2.x; + this.col2.y += m.col2.y; + } + b2Mat22.prototype.SetIdentity = function () { + this.col1.x = 1.0; + this.col2.x = 0.0; + this.col1.y = 0.0; + this.col2.y = 1.0; + } + b2Mat22.prototype.SetZero = function () { + this.col1.x = 0.0; + this.col2.x = 0.0; + this.col1.y = 0.0; + this.col2.y = 0.0; + } + b2Mat22.prototype.GetAngle = function () { + return Math.atan2(this.col1.y, this.col1.x); + } + b2Mat22.prototype.GetInverse = function (out) { + var a = this.col1.x; + var b = this.col2.x; + var c = this.col1.y; + var d = this.col2.y; + var det = a * d - b * c; + if (det != 0.0) { + det = 1.0 / det; + } + out.col1.x = det * d; + out.col2.x = (-det * b); + out.col1.y = (-det * c); + out.col2.y = det * a; + return out; + } + b2Mat22.prototype.Solve = function (out, bX, bY) { + if (bX === undefined) bX = 0; + if (bY === undefined) bY = 0; + var a11 = this.col1.x; + var a12 = this.col2.x; + var a21 = this.col1.y; + var a22 = this.col2.y; + var det = a11 * a22 - a12 * a21; + if (det != 0.0) { + det = 1.0 / det; + } + out.x = det * (a22 * bX - a12 * bY); + out.y = det * (a11 * bY - a21 * bX); + return out; + } + b2Mat22.prototype.Abs = function () { + this.col1.Abs(); + this.col2.Abs(); + } + b2Mat33.b2Mat33 = function () { + this.col1 = new b2Vec3(); + this.col2 = new b2Vec3(); + this.col3 = new b2Vec3(); + }; + b2Mat33.prototype.b2Mat33 = function (c1, c2, c3) { + if (c1 === undefined) c1 = null; + if (c2 === undefined) c2 = null; + if (c3 === undefined) c3 = null; + if (!c1 && !c2 && !c3) { + this.col1.SetZero(); + this.col2.SetZero(); + this.col3.SetZero(); + } + else { + this.col1.SetV(c1); + this.col2.SetV(c2); + this.col3.SetV(c3); + } + } + b2Mat33.prototype.SetVVV = function (c1, c2, c3) { + this.col1.SetV(c1); + this.col2.SetV(c2); + this.col3.SetV(c3); + } + b2Mat33.prototype.Copy = function () { + return new b2Mat33(this.col1, this.col2, this.col3); + } + b2Mat33.prototype.SetM = function (m) { + this.col1.SetV(m.col1); + this.col2.SetV(m.col2); + this.col3.SetV(m.col3); + } + b2Mat33.prototype.AddM = function (m) { + this.col1.x += m.col1.x; + this.col1.y += m.col1.y; + this.col1.z += m.col1.z; + this.col2.x += m.col2.x; + this.col2.y += m.col2.y; + this.col2.z += m.col2.z; + this.col3.x += m.col3.x; + this.col3.y += m.col3.y; + this.col3.z += m.col3.z; + } + b2Mat33.prototype.SetIdentity = function () { + this.col1.x = 1.0; + this.col2.x = 0.0; + this.col3.x = 0.0; + this.col1.y = 0.0; + this.col2.y = 1.0; + this.col3.y = 0.0; + this.col1.z = 0.0; + this.col2.z = 0.0; + this.col3.z = 1.0; + } + b2Mat33.prototype.SetZero = function () { + this.col1.x = 0.0; + this.col2.x = 0.0; + this.col3.x = 0.0; + this.col1.y = 0.0; + this.col2.y = 0.0; + this.col3.y = 0.0; + this.col1.z = 0.0; + this.col2.z = 0.0; + this.col3.z = 0.0; + } + b2Mat33.prototype.Solve22 = function (out, bX, bY) { + if (bX === undefined) bX = 0; + if (bY === undefined) bY = 0; + var a11 = this.col1.x; + var a12 = this.col2.x; + var a21 = this.col1.y; + var a22 = this.col2.y; + var det = a11 * a22 - a12 * a21; + if (det != 0.0) { + det = 1.0 / det; + } + out.x = det * (a22 * bX - a12 * bY); + out.y = det * (a11 * bY - a21 * bX); + return out; + } + b2Mat33.prototype.Solve33 = function (out, bX, bY, bZ) { + if (bX === undefined) bX = 0; + if (bY === undefined) bY = 0; + if (bZ === undefined) bZ = 0; + var a11 = this.col1.x; + var a21 = this.col1.y; + var a31 = this.col1.z; + var a12 = this.col2.x; + var a22 = this.col2.y; + var a32 = this.col2.z; + var a13 = this.col3.x; + var a23 = this.col3.y; + var a33 = this.col3.z; + var det = a11 * (a22 * a33 - a32 * a23) + a21 * (a32 * a13 - a12 * a33) + a31 * (a12 * a23 - a22 * a13); + if (det != 0.0) { + det = 1.0 / det; + } + out.x = det * (bX * (a22 * a33 - a32 * a23) + bY * (a32 * a13 - a12 * a33) + bZ * (a12 * a23 - a22 * a13)); + out.y = det * (a11 * (bY * a33 - bZ * a23) + a21 * (bZ * a13 - bX * a33) + a31 * (bX * a23 - bY * a13)); + out.z = det * (a11 * (a22 * bZ - a32 * bY) + a21 * (a32 * bX - a12 * bZ) + a31 * (a12 * bY - a22 * bX)); + return out; + } + b2Math.b2Math = function () {}; + b2Math.IsValid = function (x) { + if (x === undefined) x = 0; + return isFinite(x); + } + b2Math.Dot = function (a, b) { + return a.x * b.x + a.y * b.y; + } + b2Math.CrossVV = function (a, b) { + return a.x * b.y - a.y * b.x; + } + b2Math.CrossVF = function (a, s) { + if (s === undefined) s = 0; + var v = new b2Vec2(s * a.y, (-s * a.x)); + return v; + } + b2Math.CrossFV = function (s, a) { + if (s === undefined) s = 0; + var v = new b2Vec2((-s * a.y), s * a.x); + return v; + } + b2Math.MulMV = function (A, v) { + var u = new b2Vec2(A.col1.x * v.x + A.col2.x * v.y, A.col1.y * v.x + A.col2.y * v.y); + return u; + } + b2Math.MulTMV = function (A, v) { + var u = new b2Vec2(b2Math.Dot(v, A.col1), b2Math.Dot(v, A.col2)); + return u; + } + b2Math.MulX = function (T, v) { + var a = b2Math.MulMV(T.R, v); + a.x += T.position.x; + a.y += T.position.y; + return a; + } + b2Math.MulXT = function (T, v) { + var a = b2Math.SubtractVV(v, T.position); + var tX = (a.x * T.R.col1.x + a.y * T.R.col1.y); + a.y = (a.x * T.R.col2.x + a.y * T.R.col2.y); + a.x = tX; + return a; + } + b2Math.AddVV = function (a, b) { + var v = new b2Vec2(a.x + b.x, a.y + b.y); + return v; + } + b2Math.SubtractVV = function (a, b) { + var v = new b2Vec2(a.x - b.x, a.y - b.y); + return v; + } + b2Math.Distance = function (a, b) { + var cX = a.x - b.x; + var cY = a.y - b.y; + return Math.sqrt(cX * cX + cY * cY); + } + b2Math.DistanceSquared = function (a, b) { + var cX = a.x - b.x; + var cY = a.y - b.y; + return (cX * cX + cY * cY); + } + b2Math.MulFV = function (s, a) { + if (s === undefined) s = 0; + var v = new b2Vec2(s * a.x, s * a.y); + return v; + } + b2Math.AddMM = function (A, B) { + var C = b2Mat22.FromVV(b2Math.AddVV(A.col1, B.col1), b2Math.AddVV(A.col2, B.col2)); + return C; + } + b2Math.MulMM = function (A, B) { + var C = b2Mat22.FromVV(b2Math.MulMV(A, B.col1), b2Math.MulMV(A, B.col2)); + return C; + } + b2Math.MulTMM = function (A, B) { + var c1 = new b2Vec2(b2Math.Dot(A.col1, B.col1), b2Math.Dot(A.col2, B.col1)); + var c2 = new b2Vec2(b2Math.Dot(A.col1, B.col2), b2Math.Dot(A.col2, B.col2)); + var C = b2Mat22.FromVV(c1, c2); + return C; + } + b2Math.Abs = function (a) { + if (a === undefined) a = 0; + return a > 0.0 ? a : (-a); + } + b2Math.AbsV = function (a) { + var b = new b2Vec2(b2Math.Abs(a.x), b2Math.Abs(a.y)); + return b; + } + b2Math.AbsM = function (A) { + var B = b2Mat22.FromVV(b2Math.AbsV(A.col1), b2Math.AbsV(A.col2)); + return B; + } + b2Math.Min = function (a, b) { + if (a === undefined) a = 0; + if (b === undefined) b = 0; + return a < b ? a : b; + } + b2Math.MinV = function (a, b) { + var c = new b2Vec2(b2Math.Min(a.x, b.x), b2Math.Min(a.y, b.y)); + return c; + } + b2Math.Max = function (a, b) { + if (a === undefined) a = 0; + if (b === undefined) b = 0; + return a > b ? a : b; + } + b2Math.MaxV = function (a, b) { + var c = new b2Vec2(b2Math.Max(a.x, b.x), b2Math.Max(a.y, b.y)); + return c; + } + b2Math.Clamp = function (a, low, high) { + if (a === undefined) a = 0; + if (low === undefined) low = 0; + if (high === undefined) high = 0; + return a < low ? low : a > high ? high : a; + } + b2Math.ClampV = function (a, low, high) { + return b2Math.MaxV(low, b2Math.MinV(a, high)); + } + b2Math.Swap = function (a, b) { + var tmp = a[0]; + a[0] = b[0]; + b[0] = tmp; + } + b2Math.Random = function () { + return Math.random() * 2 - 1; + } + b2Math.RandomRange = function (lo, hi) { + if (lo === undefined) lo = 0; + if (hi === undefined) hi = 0; + var r = Math.random(); + r = (hi - lo) * r + lo; + return r; + } + b2Math.NextPowerOfTwo = function (x) { + if (x === undefined) x = 0; + x |= (x >> 1) & 0x7FFFFFFF; + x |= (x >> 2) & 0x3FFFFFFF; + x |= (x >> 4) & 0x0FFFFFFF; + x |= (x >> 8) & 0x00FFFFFF; + x |= (x >> 16) & 0x0000FFFF; + return x + 1; + } + b2Math.IsPowerOfTwo = function (x) { + if (x === undefined) x = 0; + var result = x > 0 && (x & (x - 1)) == 0; + return result; + } + Box2D.postDefs.push(function () { + Box2D.Common.Math.b2Math.b2Vec2_zero = new b2Vec2(0.0, 0.0); + Box2D.Common.Math.b2Math.b2Mat22_identity = b2Mat22.FromVV(new b2Vec2(1.0, 0.0), new b2Vec2(0.0, 1.0)); + Box2D.Common.Math.b2Math.b2Transform_identity = new b2Transform(b2Math.b2Vec2_zero, b2Math.b2Mat22_identity); + }); + b2Sweep.b2Sweep = function () { + this.localCenter = new b2Vec2(); + this.c0 = new b2Vec2; + this.c = new b2Vec2(); + }; + b2Sweep.prototype.Set = function (other) { + this.localCenter.SetV(other.localCenter); + this.c0.SetV(other.c0); + this.c.SetV(other.c); + this.a0 = other.a0; + this.a = other.a; + this.t0 = other.t0; + } + b2Sweep.prototype.Copy = function () { + var copy = new b2Sweep(); + copy.localCenter.SetV(this.localCenter); + copy.c0.SetV(this.c0); + copy.c.SetV(this.c); + copy.a0 = this.a0; + copy.a = this.a; + copy.t0 = this.t0; + return copy; + } + b2Sweep.prototype.GetTransform = function (xf, alpha) { + if (alpha === undefined) alpha = 0; + xf.position.x = (1.0 - alpha) * this.c0.x + alpha * this.c.x; + xf.position.y = (1.0 - alpha) * this.c0.y + alpha * this.c.y; + var angle = (1.0 - alpha) * this.a0 + alpha * this.a; + xf.R.Set(angle); + var tMat = xf.R; + xf.position.x -= (tMat.col1.x * this.localCenter.x + tMat.col2.x * this.localCenter.y); + xf.position.y -= (tMat.col1.y * this.localCenter.x + tMat.col2.y * this.localCenter.y); + } + b2Sweep.prototype.Advance = function (t) { + if (t === undefined) t = 0; + if (this.t0 < t && 1.0 - this.t0 > Number.MIN_VALUE) { + var alpha = (t - this.t0) / (1.0 - this.t0); + this.c0.x = (1.0 - alpha) * this.c0.x + alpha * this.c.x; + this.c0.y = (1.0 - alpha) * this.c0.y + alpha * this.c.y; + this.a0 = (1.0 - alpha) * this.a0 + alpha * this.a; + this.t0 = t; + } + } + b2Transform.b2Transform = function () { + this.position = new b2Vec2; + this.R = new b2Mat22(); + }; + b2Transform.prototype.b2Transform = function (pos, r) { + if (pos === undefined) pos = null; + if (r === undefined) r = null; + if (pos) { + this.position.SetV(pos); + this.R.SetM(r); + } + } + b2Transform.prototype.Initialize = function (pos, r) { + this.position.SetV(pos); + this.R.SetM(r); + } + b2Transform.prototype.SetIdentity = function () { + this.position.SetZero(); + this.R.SetIdentity(); + } + b2Transform.prototype.Set = function (x) { + this.position.SetV(x.position); + this.R.SetM(x.R); + } + b2Transform.prototype.GetAngle = function () { + return Math.atan2(this.R.col1.y, this.R.col1.x); + } + b2Vec2.b2Vec2 = function () {}; + b2Vec2.prototype.b2Vec2 = function (x_, y_) { + if (x_ === undefined) x_ = 0; + if (y_ === undefined) y_ = 0; + this.x = x_; + this.y = y_; + } + b2Vec2.prototype.SetZero = function () { + this.x = 0.0; + this.y = 0.0; + } + b2Vec2.prototype.Set = function (x_, y_) { + if (x_ === undefined) x_ = 0; + if (y_ === undefined) y_ = 0; + this.x = x_; + this.y = y_; + } + b2Vec2.prototype.SetV = function (v) { + this.x = v.x; + this.y = v.y; + } + b2Vec2.prototype.GetNegative = function () { + return new b2Vec2((-this.x), (-this.y)); + } + b2Vec2.prototype.NegativeSelf = function () { + this.x = (-this.x); + this.y = (-this.y); + } + b2Vec2.Make = function (x_, y_) { + if (x_ === undefined) x_ = 0; + if (y_ === undefined) y_ = 0; + return new b2Vec2(x_, y_); + } + b2Vec2.prototype.Copy = function () { + return new b2Vec2(this.x, this.y); + } + b2Vec2.prototype.Add = function (v) { + this.x += v.x; + this.y += v.y; + } + b2Vec2.prototype.Subtract = function (v) { + this.x -= v.x; + this.y -= v.y; + } + b2Vec2.prototype.Multiply = function (a) { + if (a === undefined) a = 0; + this.x *= a; + this.y *= a; + } + b2Vec2.prototype.MulM = function (A) { + var tX = this.x; + this.x = A.col1.x * tX + A.col2.x * this.y; + this.y = A.col1.y * tX + A.col2.y * this.y; + } + b2Vec2.prototype.MulTM = function (A) { + var tX = b2Math.Dot(this, A.col1); + this.y = b2Math.Dot(this, A.col2); + this.x = tX; + } + b2Vec2.prototype.CrossVF = function (s) { + if (s === undefined) s = 0; + var tX = this.x; + this.x = s * this.y; + this.y = (-s * tX); + } + b2Vec2.prototype.CrossFV = function (s) { + if (s === undefined) s = 0; + var tX = this.x; + this.x = (-s * this.y); + this.y = s * tX; + } + b2Vec2.prototype.MinV = function (b) { + this.x = this.x < b.x ? this.x : b.x; + this.y = this.y < b.y ? this.y : b.y; + } + b2Vec2.prototype.MaxV = function (b) { + this.x = this.x > b.x ? this.x : b.x; + this.y = this.y > b.y ? this.y : b.y; + } + b2Vec2.prototype.Abs = function () { + if (this.x < 0) this.x = (-this.x); + if (this.y < 0) this.y = (-this.y); + } + b2Vec2.prototype.Length = function () { + return Math.sqrt(this.x * this.x + this.y * this.y); + } + b2Vec2.prototype.LengthSquared = function () { + return (this.x * this.x + this.y * this.y); + } + b2Vec2.prototype.Normalize = function () { + var length = Math.sqrt(this.x * this.x + this.y * this.y); + if (length < Number.MIN_VALUE) { + return 0.0; + } + var invLength = 1.0 / length; + this.x *= invLength; + this.y *= invLength; + return length; + } + b2Vec2.prototype.IsValid = function () { + return b2Math.IsValid(this.x) && b2Math.IsValid(this.y); + } + b2Vec3.b2Vec3 = function () {}; + b2Vec3.prototype.b2Vec3 = function (x, y, z) { + if (x === undefined) x = 0; + if (y === undefined) y = 0; + if (z === undefined) z = 0; + this.x = x; + this.y = y; + this.z = z; + } + b2Vec3.prototype.SetZero = function () { + this.x = this.y = this.z = 0.0; + } + b2Vec3.prototype.Set = function (x, y, z) { + if (x === undefined) x = 0; + if (y === undefined) y = 0; + if (z === undefined) z = 0; + this.x = x; + this.y = y; + this.z = z; + } + b2Vec3.prototype.SetV = function (v) { + this.x = v.x; + this.y = v.y; + this.z = v.z; + } + b2Vec3.prototype.GetNegative = function () { + return new b2Vec3((-this.x), (-this.y), (-this.z)); + } + b2Vec3.prototype.NegativeSelf = function () { + this.x = (-this.x); + this.y = (-this.y); + this.z = (-this.z); + } + b2Vec3.prototype.Copy = function () { + return new b2Vec3(this.x, this.y, this.z); + } + b2Vec3.prototype.Add = function (v) { + this.x += v.x; + this.y += v.y; + this.z += v.z; + } + b2Vec3.prototype.Subtract = function (v) { + this.x -= v.x; + this.y -= v.y; + this.z -= v.z; + } + b2Vec3.prototype.Multiply = function (a) { + if (a === undefined) a = 0; + this.x *= a; + this.y *= a; + this.z *= a; + } +})(); +(function () { + var b2ControllerEdge = Box2D.Dynamics.Controllers.b2ControllerEdge, + b2Mat22 = Box2D.Common.Math.b2Mat22, + b2Mat33 = Box2D.Common.Math.b2Mat33, + b2Math = Box2D.Common.Math.b2Math, + b2Sweep = Box2D.Common.Math.b2Sweep, + b2Transform = Box2D.Common.Math.b2Transform, + b2Vec2 = Box2D.Common.Math.b2Vec2, + b2Vec3 = Box2D.Common.Math.b2Vec3, + b2Color = Box2D.Common.b2Color, + b2internal = Box2D.Common.b2internal, + b2Settings = Box2D.Common.b2Settings, + b2AABB = Box2D.Collision.b2AABB, + b2Bound = Box2D.Collision.b2Bound, + b2BoundValues = Box2D.Collision.b2BoundValues, + b2Collision = Box2D.Collision.b2Collision, + b2ContactID = Box2D.Collision.b2ContactID, + b2ContactPoint = Box2D.Collision.b2ContactPoint, + b2Distance = Box2D.Collision.b2Distance, + b2DistanceInput = Box2D.Collision.b2DistanceInput, + b2DistanceOutput = Box2D.Collision.b2DistanceOutput, + b2DistanceProxy = Box2D.Collision.b2DistanceProxy, + b2DynamicTree = Box2D.Collision.b2DynamicTree, + b2DynamicTreeBroadPhase = Box2D.Collision.b2DynamicTreeBroadPhase, + b2DynamicTreeNode = Box2D.Collision.b2DynamicTreeNode, + b2DynamicTreePair = Box2D.Collision.b2DynamicTreePair, + b2Manifold = Box2D.Collision.b2Manifold, + b2ManifoldPoint = Box2D.Collision.b2ManifoldPoint, + b2Point = Box2D.Collision.b2Point, + b2RayCastInput = Box2D.Collision.b2RayCastInput, + b2RayCastOutput = Box2D.Collision.b2RayCastOutput, + b2Segment = Box2D.Collision.b2Segment, + b2SeparationFunction = Box2D.Collision.b2SeparationFunction, + b2Simplex = Box2D.Collision.b2Simplex, + b2SimplexCache = Box2D.Collision.b2SimplexCache, + b2SimplexVertex = Box2D.Collision.b2SimplexVertex, + b2TimeOfImpact = Box2D.Collision.b2TimeOfImpact, + b2TOIInput = Box2D.Collision.b2TOIInput, + b2WorldManifold = Box2D.Collision.b2WorldManifold, + ClipVertex = Box2D.Collision.ClipVertex, + Features = Box2D.Collision.Features, + IBroadPhase = Box2D.Collision.IBroadPhase, + b2CircleShape = Box2D.Collision.Shapes.b2CircleShape, + b2EdgeChainDef = Box2D.Collision.Shapes.b2EdgeChainDef, + b2EdgeShape = Box2D.Collision.Shapes.b2EdgeShape, + b2MassData = Box2D.Collision.Shapes.b2MassData, + b2PolygonShape = Box2D.Collision.Shapes.b2PolygonShape, + b2Shape = Box2D.Collision.Shapes.b2Shape, + b2Body = Box2D.Dynamics.b2Body, + b2BodyDef = Box2D.Dynamics.b2BodyDef, + b2ContactFilter = Box2D.Dynamics.b2ContactFilter, + b2ContactImpulse = Box2D.Dynamics.b2ContactImpulse, + b2ContactListener = Box2D.Dynamics.b2ContactListener, + b2ContactManager = Box2D.Dynamics.b2ContactManager, + b2DebugDraw = Box2D.Dynamics.b2DebugDraw, + b2DestructionListener = Box2D.Dynamics.b2DestructionListener, + b2FilterData = Box2D.Dynamics.b2FilterData, + b2Fixture = Box2D.Dynamics.b2Fixture, + b2FixtureDef = Box2D.Dynamics.b2FixtureDef, + b2Island = Box2D.Dynamics.b2Island, + b2TimeStep = Box2D.Dynamics.b2TimeStep, + b2World = Box2D.Dynamics.b2World, + b2CircleContact = Box2D.Dynamics.Contacts.b2CircleContact, + b2Contact = Box2D.Dynamics.Contacts.b2Contact, + b2ContactConstraint = Box2D.Dynamics.Contacts.b2ContactConstraint, + b2ContactConstraintPoint = Box2D.Dynamics.Contacts.b2ContactConstraintPoint, + b2ContactEdge = Box2D.Dynamics.Contacts.b2ContactEdge, + b2ContactFactory = Box2D.Dynamics.Contacts.b2ContactFactory, + b2ContactRegister = Box2D.Dynamics.Contacts.b2ContactRegister, + b2ContactResult = Box2D.Dynamics.Contacts.b2ContactResult, + b2ContactSolver = Box2D.Dynamics.Contacts.b2ContactSolver, + b2EdgeAndCircleContact = Box2D.Dynamics.Contacts.b2EdgeAndCircleContact, + b2NullContact = Box2D.Dynamics.Contacts.b2NullContact, + b2PolyAndCircleContact = Box2D.Dynamics.Contacts.b2PolyAndCircleContact, + b2PolyAndEdgeContact = Box2D.Dynamics.Contacts.b2PolyAndEdgeContact, + b2PolygonContact = Box2D.Dynamics.Contacts.b2PolygonContact, + b2PositionSolverManifold = Box2D.Dynamics.Contacts.b2PositionSolverManifold, + b2Controller = Box2D.Dynamics.Controllers.b2Controller, + b2DistanceJoint = Box2D.Dynamics.Joints.b2DistanceJoint, + b2DistanceJointDef = Box2D.Dynamics.Joints.b2DistanceJointDef, + b2FrictionJoint = Box2D.Dynamics.Joints.b2FrictionJoint, + b2FrictionJointDef = Box2D.Dynamics.Joints.b2FrictionJointDef, + b2GearJoint = Box2D.Dynamics.Joints.b2GearJoint, + b2GearJointDef = Box2D.Dynamics.Joints.b2GearJointDef, + b2Jacobian = Box2D.Dynamics.Joints.b2Jacobian, + b2Joint = Box2D.Dynamics.Joints.b2Joint, + b2JointDef = Box2D.Dynamics.Joints.b2JointDef, + b2JointEdge = Box2D.Dynamics.Joints.b2JointEdge, + b2LineJoint = Box2D.Dynamics.Joints.b2LineJoint, + b2LineJointDef = Box2D.Dynamics.Joints.b2LineJointDef, + b2MouseJoint = Box2D.Dynamics.Joints.b2MouseJoint, + b2MouseJointDef = Box2D.Dynamics.Joints.b2MouseJointDef, + b2PrismaticJoint = Box2D.Dynamics.Joints.b2PrismaticJoint, + b2PrismaticJointDef = Box2D.Dynamics.Joints.b2PrismaticJointDef, + b2PulleyJoint = Box2D.Dynamics.Joints.b2PulleyJoint, + b2PulleyJointDef = Box2D.Dynamics.Joints.b2PulleyJointDef, + b2RevoluteJoint = Box2D.Dynamics.Joints.b2RevoluteJoint, + b2RevoluteJointDef = Box2D.Dynamics.Joints.b2RevoluteJointDef, + b2WeldJoint = Box2D.Dynamics.Joints.b2WeldJoint, + b2WeldJointDef = Box2D.Dynamics.Joints.b2WeldJointDef; + + b2Body.b2Body = function () { + this.m_xf = new b2Transform(); + this.m_sweep = new b2Sweep(); + this.m_linearVelocity = new b2Vec2(); + this.m_force = new b2Vec2(); + }; + b2Body.prototype.connectEdges = function (s1, s2, angle1) { + if (angle1 === undefined) angle1 = 0; + var angle2 = Math.atan2(s2.GetDirectionVector().y, s2.GetDirectionVector().x); + var coreOffset = Math.tan((angle2 - angle1) * 0.5); + var core = b2Math.MulFV(coreOffset, s2.GetDirectionVector()); + core = b2Math.SubtractVV(core, s2.GetNormalVector()); + core = b2Math.MulFV(b2Settings.b2_toiSlop, core); + core = b2Math.AddVV(core, s2.GetVertex1()); + var cornerDir = b2Math.AddVV(s1.GetDirectionVector(), s2.GetDirectionVector()); + cornerDir.Normalize(); + var convex = b2Math.Dot(s1.GetDirectionVector(), s2.GetNormalVector()) > 0.0; + s1.SetNextEdge(s2, core, cornerDir, convex); + s2.SetPrevEdge(s1, core, cornerDir, convex); + return angle2; + } + b2Body.prototype.CreateFixture = function (def) { + if (this.m_world.IsLocked() == true) { + return null; + } + var fixture = new b2Fixture(); + fixture.Create(this, this.m_xf, def); + if (this.m_flags & b2Body.e_activeFlag) { + var broadPhase = this.m_world.m_contactManager.m_broadPhase; + fixture.CreateProxy(broadPhase, this.m_xf); + } + fixture.m_next = this.m_fixtureList; + this.m_fixtureList = fixture; + ++this.m_fixtureCount; + fixture.m_body = this; + if (fixture.m_density > 0.0) { + this.ResetMassData(); + } + this.m_world.m_flags |= b2World.e_newFixture; + return fixture; + } + b2Body.prototype.CreateFixture2 = function (shape, density) { + if (density === undefined) density = 0.0; + var def = new b2FixtureDef(); + def.shape = shape; + def.density = density; + return this.CreateFixture(def); + } + b2Body.prototype.DestroyFixture = function (fixture) { + if (this.m_world.IsLocked() == true) { + return; + } + var node = this.m_fixtureList; + var ppF = null; + var found = false; + while (node != null) { + if (node == fixture) { + if (ppF) ppF.m_next = fixture.m_next; + else this.m_fixtureList = fixture.m_next; + found = true; + break; + } + ppF = node; + node = node.m_next; + } + var edge = this.m_contactList; + while (edge) { + var c = edge.contact; + edge = edge.next; + var fixtureA = c.GetFixtureA(); + var fixtureB = c.GetFixtureB(); + if (fixture == fixtureA || fixture == fixtureB) { + this.m_world.m_contactManager.Destroy(c); + } + } + if (this.m_flags & b2Body.e_activeFlag) { + var broadPhase = this.m_world.m_contactManager.m_broadPhase; + fixture.DestroyProxy(broadPhase); + } + else {} + fixture.Destroy(); + fixture.m_body = null; + fixture.m_next = null; + --this.m_fixtureCount; + this.ResetMassData(); + } + b2Body.prototype.SetPositionAndAngle = function (position, angle) { + if (angle === undefined) angle = 0; + var f; + if (this.m_world.IsLocked() == true) { + return; + } + this.m_xf.R.Set(angle); + this.m_xf.position.SetV(position); + var tMat = this.m_xf.R; + var tVec = this.m_sweep.localCenter; + this.m_sweep.c.x = (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + this.m_sweep.c.y = (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + this.m_sweep.c.x += this.m_xf.position.x; + this.m_sweep.c.y += this.m_xf.position.y; + this.m_sweep.c0.SetV(this.m_sweep.c); + this.m_sweep.a0 = this.m_sweep.a = angle; + var broadPhase = this.m_world.m_contactManager.m_broadPhase; + for (f = this.m_fixtureList; + f; f = f.m_next) { + f.Synchronize(broadPhase, this.m_xf, this.m_xf); + } + this.m_world.m_contactManager.FindNewContacts(); + } + b2Body.prototype.SetTransform = function (xf) { + this.SetPositionAndAngle(xf.position, xf.GetAngle()); + } + b2Body.prototype.GetTransform = function () { + return this.m_xf; + } + b2Body.prototype.GetPosition = function () { + return this.m_xf.position; + } + b2Body.prototype.SetPosition = function (position) { + this.SetPositionAndAngle(position, this.GetAngle()); + } + b2Body.prototype.GetAngle = function () { + return this.m_sweep.a; + } + b2Body.prototype.SetAngle = function (angle) { + if (angle === undefined) angle = 0; + this.SetPositionAndAngle(this.GetPosition(), angle); + } + b2Body.prototype.GetWorldCenter = function () { + return this.m_sweep.c; + } + b2Body.prototype.GetLocalCenter = function () { + return this.m_sweep.localCenter; + } + b2Body.prototype.SetLinearVelocity = function (v) { + if (this.m_type == b2Body.b2_staticBody) { + return; + } + this.m_linearVelocity.SetV(v); + } + b2Body.prototype.GetLinearVelocity = function () { + return this.m_linearVelocity; + } + b2Body.prototype.SetAngularVelocity = function (omega) { + if (omega === undefined) omega = 0; + if (this.m_type == b2Body.b2_staticBody) { + return; + } + this.m_angularVelocity = omega; + } + b2Body.prototype.GetAngularVelocity = function () { + return this.m_angularVelocity; + } + b2Body.prototype.GetDefinition = function () { + var bd = new b2BodyDef(); + bd.type = this.GetType(); + bd.allowSleep = (this.m_flags & b2Body.e_allowSleepFlag) == b2Body.e_allowSleepFlag; + bd.angle = this.GetAngle(); + bd.angularDamping = this.m_angularDamping; + bd.angularVelocity = this.m_angularVelocity; + bd.fixedRotation = (this.m_flags & b2Body.e_fixedRotationFlag) == b2Body.e_fixedRotationFlag; + bd.bullet = (this.m_flags & b2Body.e_bulletFlag) == b2Body.e_bulletFlag; + bd.awake = (this.m_flags & b2Body.e_awakeFlag) == b2Body.e_awakeFlag; + bd.linearDamping = this.m_linearDamping; + bd.linearVelocity.SetV(this.GetLinearVelocity()); + bd.position = this.GetPosition(); + bd.userData = this.GetUserData(); + return bd; + } + b2Body.prototype.ApplyForce = function (force, point) { + if (this.m_type != b2Body.b2_dynamicBody) { + return; + } + if (this.IsAwake() == false) { + this.SetAwake(true); + } + this.m_force.x += force.x; + this.m_force.y += force.y; + this.m_torque += ((point.x - this.m_sweep.c.x) * force.y - (point.y - this.m_sweep.c.y) * force.x); + } + b2Body.prototype.ApplyTorque = function (torque) { + if (torque === undefined) torque = 0; + if (this.m_type != b2Body.b2_dynamicBody) { + return; + } + if (this.IsAwake() == false) { + this.SetAwake(true); + } + this.m_torque += torque; + } + b2Body.prototype.ApplyImpulse = function (impulse, point) { + if (this.m_type != b2Body.b2_dynamicBody) { + return; + } + if (this.IsAwake() == false) { + this.SetAwake(true); + } + this.m_linearVelocity.x += this.m_invMass * impulse.x; + this.m_linearVelocity.y += this.m_invMass * impulse.y; + this.m_angularVelocity += this.m_invI * ((point.x - this.m_sweep.c.x) * impulse.y - (point.y - this.m_sweep.c.y) * impulse.x); + } + b2Body.prototype.Split = function (callback) { + var linearVelocity = this.GetLinearVelocity().Copy(); + var angularVelocity = this.GetAngularVelocity(); + var center = this.GetWorldCenter(); + var body1 = this; + var body2 = this.m_world.CreateBody(this.GetDefinition()); + var prev; + for (var f = body1.m_fixtureList; f;) { + if (callback(f)) { + var next = f.m_next; + if (prev) { + prev.m_next = next; + } + else { + body1.m_fixtureList = next; + } + body1.m_fixtureCount--; + f.m_next = body2.m_fixtureList; + body2.m_fixtureList = f; + body2.m_fixtureCount++; + f.m_body = body2; + f = next; + } + else { + prev = f; + f = f.m_next; + } + } + body1.ResetMassData(); + body2.ResetMassData(); + var center1 = body1.GetWorldCenter(); + var center2 = body2.GetWorldCenter(); + var velocity1 = b2Math.AddVV(linearVelocity, b2Math.CrossFV(angularVelocity, b2Math.SubtractVV(center1, center))); + var velocity2 = b2Math.AddVV(linearVelocity, b2Math.CrossFV(angularVelocity, b2Math.SubtractVV(center2, center))); + body1.SetLinearVelocity(velocity1); + body2.SetLinearVelocity(velocity2); + body1.SetAngularVelocity(angularVelocity); + body2.SetAngularVelocity(angularVelocity); + body1.SynchronizeFixtures(); + body2.SynchronizeFixtures(); + return body2; + } + b2Body.prototype.Merge = function (other) { + var f; + for (f = other.m_fixtureList; + f;) { + var next = f.m_next; + other.m_fixtureCount--; + f.m_next = this.m_fixtureList; + this.m_fixtureList = f; + this.m_fixtureCount++; + f.m_body = body2; + f = next; + } + body1.m_fixtureCount = 0; + var body1 = this; + var body2 = other; + var center1 = body1.GetWorldCenter(); + var center2 = body2.GetWorldCenter(); + var velocity1 = body1.GetLinearVelocity().Copy(); + var velocity2 = body2.GetLinearVelocity().Copy(); + var angular1 = body1.GetAngularVelocity(); + var angular = body2.GetAngularVelocity(); + body1.ResetMassData(); + this.SynchronizeFixtures(); + } + b2Body.prototype.GetMass = function () { + return this.m_mass; + } + b2Body.prototype.GetInertia = function () { + return this.m_I; + } + b2Body.prototype.GetMassData = function (data) { + data.mass = this.m_mass; + data.I = this.m_I; + data.center.SetV(this.m_sweep.localCenter); + } + b2Body.prototype.SetMassData = function (massData) { + b2Settings.b2Assert(this.m_world.IsLocked() == false); + if (this.m_world.IsLocked() == true) { + return; + } + if (this.m_type != b2Body.b2_dynamicBody) { + return; + } + this.m_invMass = 0.0; + this.m_I = 0.0; + this.m_invI = 0.0; + this.m_mass = massData.mass; + if (this.m_mass <= 0.0) { + this.m_mass = 1.0; + } + this.m_invMass = 1.0 / this.m_mass; + if (massData.I > 0.0 && (this.m_flags & b2Body.e_fixedRotationFlag) == 0) { + this.m_I = massData.I - this.m_mass * (massData.center.x * massData.center.x + massData.center.y * massData.center.y); + this.m_invI = 1.0 / this.m_I; + } + var oldCenter = this.m_sweep.c.Copy(); + this.m_sweep.localCenter.SetV(massData.center); + this.m_sweep.c0.SetV(b2Math.MulX(this.m_xf, this.m_sweep.localCenter)); + this.m_sweep.c.SetV(this.m_sweep.c0); + this.m_linearVelocity.x += this.m_angularVelocity * (-(this.m_sweep.c.y - oldCenter.y)); + this.m_linearVelocity.y += this.m_angularVelocity * (+(this.m_sweep.c.x - oldCenter.x)); + } + b2Body.prototype.ResetMassData = function () { + this.m_mass = 0.0; + this.m_invMass = 0.0; + this.m_I = 0.0; + this.m_invI = 0.0; + this.m_sweep.localCenter.SetZero(); + if (this.m_type == b2Body.b2_staticBody || this.m_type == b2Body.b2_kinematicBody) { + return; + } + var center = b2Vec2.Make(0, 0); + for (var f = this.m_fixtureList; f; f = f.m_next) { + if (f.m_density == 0.0) { + continue; + } + var massData = f.GetMassData(); + this.m_mass += massData.mass; + center.x += massData.center.x * massData.mass; + center.y += massData.center.y * massData.mass; + this.m_I += massData.I; + } + if (this.m_mass > 0.0) { + this.m_invMass = 1.0 / this.m_mass; + center.x *= this.m_invMass; + center.y *= this.m_invMass; + } + else { + this.m_mass = 1.0; + this.m_invMass = 1.0; + } + if (this.m_I > 0.0 && (this.m_flags & b2Body.e_fixedRotationFlag) == 0) { + this.m_I -= this.m_mass * (center.x * center.x + center.y * center.y); + this.m_I *= this.m_inertiaScale; + b2Settings.b2Assert(this.m_I > 0); + this.m_invI = 1.0 / this.m_I; + } + else { + this.m_I = 0.0; + this.m_invI = 0.0; + } + var oldCenter = this.m_sweep.c.Copy(); + this.m_sweep.localCenter.SetV(center); + this.m_sweep.c0.SetV(b2Math.MulX(this.m_xf, this.m_sweep.localCenter)); + this.m_sweep.c.SetV(this.m_sweep.c0); + this.m_linearVelocity.x += this.m_angularVelocity * (-(this.m_sweep.c.y - oldCenter.y)); + this.m_linearVelocity.y += this.m_angularVelocity * (+(this.m_sweep.c.x - oldCenter.x)); + } + b2Body.prototype.GetWorldPoint = function (localPoint) { + var A = this.m_xf.R; + var u = new b2Vec2(A.col1.x * localPoint.x + A.col2.x * localPoint.y, A.col1.y * localPoint.x + A.col2.y * localPoint.y); + u.x += this.m_xf.position.x; + u.y += this.m_xf.position.y; + return u; + } + b2Body.prototype.GetWorldVector = function (localVector) { + return b2Math.MulMV(this.m_xf.R, localVector); + } + b2Body.prototype.GetLocalPoint = function (worldPoint) { + return b2Math.MulXT(this.m_xf, worldPoint); + } + b2Body.prototype.GetLocalVector = function (worldVector) { + return b2Math.MulTMV(this.m_xf.R, worldVector); + } + b2Body.prototype.GetLinearVelocityFromWorldPoint = function (worldPoint) { + return new b2Vec2(this.m_linearVelocity.x - this.m_angularVelocity * (worldPoint.y - this.m_sweep.c.y), this.m_linearVelocity.y + this.m_angularVelocity * (worldPoint.x - this.m_sweep.c.x)); + } + b2Body.prototype.GetLinearVelocityFromLocalPoint = function (localPoint) { + var A = this.m_xf.R; + var worldPoint = new b2Vec2(A.col1.x * localPoint.x + A.col2.x * localPoint.y, A.col1.y * localPoint.x + A.col2.y * localPoint.y); + worldPoint.x += this.m_xf.position.x; + worldPoint.y += this.m_xf.position.y; + return new b2Vec2(this.m_linearVelocity.x - this.m_angularVelocity * (worldPoint.y - this.m_sweep.c.y), this.m_linearVelocity.y + this.m_angularVelocity * (worldPoint.x - this.m_sweep.c.x)); + } + b2Body.prototype.GetLinearDamping = function () { + return this.m_linearDamping; + } + b2Body.prototype.SetLinearDamping = function (linearDamping) { + if (linearDamping === undefined) linearDamping = 0; + this.m_linearDamping = linearDamping; + } + b2Body.prototype.GetAngularDamping = function () { + return this.m_angularDamping; + } + b2Body.prototype.SetAngularDamping = function (angularDamping) { + if (angularDamping === undefined) angularDamping = 0; + this.m_angularDamping = angularDamping; + } + b2Body.prototype.SetType = function (type) { + if (type === undefined) type = 0; + if (this.m_type == type) { + return; + } + this.m_type = type; + this.ResetMassData(); + if (this.m_type == b2Body.b2_staticBody) { + this.m_linearVelocity.SetZero(); + this.m_angularVelocity = 0.0; + } + this.SetAwake(true); + this.m_force.SetZero(); + this.m_torque = 0.0; + for (var ce = this.m_contactList; ce; ce = ce.next) { + ce.contact.FlagForFiltering(); + } + } + b2Body.prototype.GetType = function () { + return this.m_type; + } + b2Body.prototype.SetBullet = function (flag) { + if (flag) { + this.m_flags |= b2Body.e_bulletFlag; + } + else { + this.m_flags &= ~b2Body.e_bulletFlag; + } + } + b2Body.prototype.IsBullet = function () { + return (this.m_flags & b2Body.e_bulletFlag) == b2Body.e_bulletFlag; + } + b2Body.prototype.SetSleepingAllowed = function (flag) { + if (flag) { + this.m_flags |= b2Body.e_allowSleepFlag; + } + else { + this.m_flags &= ~b2Body.e_allowSleepFlag; + this.SetAwake(true); + } + } + b2Body.prototype.SetAwake = function (flag) { + if (flag) { + this.m_flags |= b2Body.e_awakeFlag; + this.m_sleepTime = 0.0; + } + else { + this.m_flags &= ~b2Body.e_awakeFlag; + this.m_sleepTime = 0.0; + this.m_linearVelocity.SetZero(); + this.m_angularVelocity = 0.0; + this.m_force.SetZero(); + this.m_torque = 0.0; + } + } + b2Body.prototype.IsAwake = function () { + return (this.m_flags & b2Body.e_awakeFlag) == b2Body.e_awakeFlag; + } + b2Body.prototype.SetFixedRotation = function (fixed) { + if (fixed) { + this.m_flags |= b2Body.e_fixedRotationFlag; + } + else { + this.m_flags &= ~b2Body.e_fixedRotationFlag; + } + this.ResetMassData(); + } + b2Body.prototype.IsFixedRotation = function () { + return (this.m_flags & b2Body.e_fixedRotationFlag) == b2Body.e_fixedRotationFlag; + } + b2Body.prototype.SetActive = function (flag) { + if (flag == this.IsActive()) { + return; + } + var broadPhase; + var f; + if (flag) { + this.m_flags |= b2Body.e_activeFlag; + broadPhase = this.m_world.m_contactManager.m_broadPhase; + for (f = this.m_fixtureList; + f; f = f.m_next) { + f.CreateProxy(broadPhase, this.m_xf); + } + } + else { + this.m_flags &= ~b2Body.e_activeFlag; + broadPhase = this.m_world.m_contactManager.m_broadPhase; + for (f = this.m_fixtureList; + f; f = f.m_next) { + f.DestroyProxy(broadPhase); + } + var ce = this.m_contactList; + while (ce) { + var ce0 = ce; + ce = ce.next; + this.m_world.m_contactManager.Destroy(ce0.contact); + } + this.m_contactList = null; + } + } + b2Body.prototype.IsActive = function () { + return (this.m_flags & b2Body.e_activeFlag) == b2Body.e_activeFlag; + } + b2Body.prototype.IsSleepingAllowed = function () { + return (this.m_flags & b2Body.e_allowSleepFlag) == b2Body.e_allowSleepFlag; + } + b2Body.prototype.GetFixtureList = function () { + return this.m_fixtureList; + } + b2Body.prototype.GetJointList = function () { + return this.m_jointList; + } + b2Body.prototype.GetControllerList = function () { + return this.m_controllerList; + } + b2Body.prototype.GetContactList = function () { + return this.m_contactList; + } + b2Body.prototype.GetNext = function () { + return this.m_next; + } + b2Body.prototype.GetUserData = function () { + return this.m_userData; + } + b2Body.prototype.SetUserData = function (data) { + this.m_userData = data; + } + b2Body.prototype.GetWorld = function () { + return this.m_world; + } + b2Body.prototype.b2Body = function (bd, world) { + this.m_flags = 0; + if (bd.bullet) { + this.m_flags |= b2Body.e_bulletFlag; + } + if (bd.fixedRotation) { + this.m_flags |= b2Body.e_fixedRotationFlag; + } + if (bd.allowSleep) { + this.m_flags |= b2Body.e_allowSleepFlag; + } + if (bd.awake) { + this.m_flags |= b2Body.e_awakeFlag; + } + if (bd.active) { + this.m_flags |= b2Body.e_activeFlag; + } + this.m_world = world; + this.m_xf.position.SetV(bd.position); + this.m_xf.R.Set(bd.angle); + this.m_sweep.localCenter.SetZero(); + this.m_sweep.t0 = 1.0; + this.m_sweep.a0 = this.m_sweep.a = bd.angle; + var tMat = this.m_xf.R; + var tVec = this.m_sweep.localCenter; + this.m_sweep.c.x = (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + this.m_sweep.c.y = (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + this.m_sweep.c.x += this.m_xf.position.x; + this.m_sweep.c.y += this.m_xf.position.y; + this.m_sweep.c0.SetV(this.m_sweep.c); + this.m_jointList = null; + this.m_controllerList = null; + this.m_contactList = null; + this.m_controllerCount = 0; + this.m_prev = null; + this.m_next = null; + this.m_linearVelocity.SetV(bd.linearVelocity); + this.m_angularVelocity = bd.angularVelocity; + this.m_linearDamping = bd.linearDamping; + this.m_angularDamping = bd.angularDamping; + this.m_force.Set(0.0, 0.0); + this.m_torque = 0.0; + this.m_sleepTime = 0.0; + this.m_type = bd.type; + if (this.m_type == b2Body.b2_dynamicBody) { + this.m_mass = 1.0; + this.m_invMass = 1.0; + } + else { + this.m_mass = 0.0; + this.m_invMass = 0.0; + } + this.m_I = 0.0; + this.m_invI = 0.0; + this.m_inertiaScale = bd.inertiaScale; + this.m_userData = bd.userData; + this.m_fixtureList = null; + this.m_fixtureCount = 0; + } + b2Body.prototype.SynchronizeFixtures = function () { + var xf1 = b2Body.s_xf1; + xf1.R.Set(this.m_sweep.a0); + var tMat = xf1.R; + var tVec = this.m_sweep.localCenter; + xf1.position.x = this.m_sweep.c0.x - (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + xf1.position.y = this.m_sweep.c0.y - (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + var f; + var broadPhase = this.m_world.m_contactManager.m_broadPhase; + for (f = this.m_fixtureList; + f; f = f.m_next) { + f.Synchronize(broadPhase, xf1, this.m_xf); + } + } + b2Body.prototype.SynchronizeTransform = function () { + this.m_xf.R.Set(this.m_sweep.a); + var tMat = this.m_xf.R; + var tVec = this.m_sweep.localCenter; + this.m_xf.position.x = this.m_sweep.c.x - (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + this.m_xf.position.y = this.m_sweep.c.y - (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + } + b2Body.prototype.ShouldCollide = function (other) { + if (this.m_type != b2Body.b2_dynamicBody && other.m_type != b2Body.b2_dynamicBody) { + return false; + } + for (var jn = this.m_jointList; jn; jn = jn.next) { + if (jn.other == other) if (jn.joint.m_collideConnected == false) { + return false; + } + } + return true; + } + b2Body.prototype.Advance = function (t) { + if (t === undefined) t = 0; + this.m_sweep.Advance(t); + this.m_sweep.c.SetV(this.m_sweep.c0); + this.m_sweep.a = this.m_sweep.a0; + this.SynchronizeTransform(); + } + Box2D.postDefs.push(function () { + Box2D.Dynamics.b2Body.s_xf1 = new b2Transform(); + Box2D.Dynamics.b2Body.e_islandFlag = 0x0001; + Box2D.Dynamics.b2Body.e_awakeFlag = 0x0002; + Box2D.Dynamics.b2Body.e_allowSleepFlag = 0x0004; + Box2D.Dynamics.b2Body.e_bulletFlag = 0x0008; + Box2D.Dynamics.b2Body.e_fixedRotationFlag = 0x0010; + Box2D.Dynamics.b2Body.e_activeFlag = 0x0020; + Box2D.Dynamics.b2Body.b2_staticBody = 0; + Box2D.Dynamics.b2Body.b2_kinematicBody = 1; + Box2D.Dynamics.b2Body.b2_dynamicBody = 2; + }); + b2BodyDef.b2BodyDef = function () { + this.position = new b2Vec2(); + this.linearVelocity = new b2Vec2(); + }; + b2BodyDef.prototype.b2BodyDef = function () { + this.userData = null; + this.position.Set(0.0, 0.0); + this.angle = 0.0; + this.linearVelocity.Set(0, 0); + this.angularVelocity = 0.0; + this.linearDamping = 0.0; + this.angularDamping = 0.0; + this.allowSleep = true; + this.awake = true; + this.fixedRotation = false; + this.bullet = false; + this.type = b2Body.b2_staticBody; + this.active = true; + this.inertiaScale = 1.0; + } + b2ContactFilter.b2ContactFilter = function () {}; + b2ContactFilter.prototype.ShouldCollide = function (fixtureA, fixtureB) { + var filter1 = fixtureA.GetFilterData(); + var filter2 = fixtureB.GetFilterData(); + if (filter1.groupIndex == filter2.groupIndex && filter1.groupIndex != 0) { + return filter1.groupIndex > 0; + } + var collide = (filter1.maskBits & filter2.categoryBits) != 0 && (filter1.categoryBits & filter2.maskBits) != 0; + return collide; + } + b2ContactFilter.prototype.RayCollide = function (userData, fixture) { + if (!userData) return true; + return this.ShouldCollide((userData instanceof b2Fixture ? userData : null), fixture); + } + Box2D.postDefs.push(function () { + Box2D.Dynamics.b2ContactFilter.b2_defaultFilter = new b2ContactFilter(); + }); + b2ContactImpulse.b2ContactImpulse = function () { + this.normalImpulses = new Vector_a2j_Number(b2Settings.b2_maxManifoldPoints); + this.tangentImpulses = new Vector_a2j_Number(b2Settings.b2_maxManifoldPoints); + }; + b2ContactListener.b2ContactListener = function () {}; + b2ContactListener.prototype.BeginContact = function (contact) {} + b2ContactListener.prototype.EndContact = function (contact) {} + b2ContactListener.prototype.PreSolve = function (contact, oldManifold) {} + b2ContactListener.prototype.PostSolve = function (contact, impulse) {} + Box2D.postDefs.push(function () { + Box2D.Dynamics.b2ContactListener.b2_defaultListener = new b2ContactListener(); + }); + b2ContactManager.b2ContactManager = function () {}; + b2ContactManager.prototype.b2ContactManager = function () { + this.m_world = null; + this.m_contactCount = 0; + this.m_contactFilter = b2ContactFilter.b2_defaultFilter; + this.m_contactListener = b2ContactListener.b2_defaultListener; + this.m_contactFactory = new b2ContactFactory(this.m_allocator); + this.m_broadPhase = new b2DynamicTreeBroadPhase(); + } + b2ContactManager.prototype.AddPair = function (proxyUserDataA, proxyUserDataB) { + var fixtureA = (proxyUserDataA instanceof b2Fixture ? proxyUserDataA : null); + var fixtureB = (proxyUserDataB instanceof b2Fixture ? proxyUserDataB : null); + var bodyA = fixtureA.GetBody(); + var bodyB = fixtureB.GetBody(); + if (bodyA == bodyB) return; + var edge = bodyB.GetContactList(); + while (edge) { + if (edge.other == bodyA) { + var fA = edge.contact.GetFixtureA(); + var fB = edge.contact.GetFixtureB(); + if (fA == fixtureA && fB == fixtureB) return; + if (fA == fixtureB && fB == fixtureA) return; + } + edge = edge.next; + } + if (bodyB.ShouldCollide(bodyA) == false) { + return; + } + if (this.m_contactFilter.ShouldCollide(fixtureA, fixtureB) == false) { + return; + } + var c = this.m_contactFactory.Create(fixtureA, fixtureB); + fixtureA = c.GetFixtureA(); + fixtureB = c.GetFixtureB(); + bodyA = fixtureA.m_body; + bodyB = fixtureB.m_body; + c.m_prev = null; + c.m_next = this.m_world.m_contactList; + if (this.m_world.m_contactList != null) { + this.m_world.m_contactList.m_prev = c; + } + this.m_world.m_contactList = c; + c.m_nodeA.contact = c; + c.m_nodeA.other = bodyB; + c.m_nodeA.prev = null; + c.m_nodeA.next = bodyA.m_contactList; + if (bodyA.m_contactList != null) { + bodyA.m_contactList.prev = c.m_nodeA; + } + bodyA.m_contactList = c.m_nodeA; + c.m_nodeB.contact = c; + c.m_nodeB.other = bodyA; + c.m_nodeB.prev = null; + c.m_nodeB.next = bodyB.m_contactList; + if (bodyB.m_contactList != null) { + bodyB.m_contactList.prev = c.m_nodeB; + } + bodyB.m_contactList = c.m_nodeB; + ++this.m_world.m_contactCount; + return; + } + b2ContactManager.prototype.FindNewContacts = function () { + this.m_broadPhase.UpdatePairs(Box2D.generateCallback(this, this.AddPair)); + } + b2ContactManager.prototype.Destroy = function (c) { + var fixtureA = c.GetFixtureA(); + var fixtureB = c.GetFixtureB(); + var bodyA = fixtureA.GetBody(); + var bodyB = fixtureB.GetBody(); + if (c.IsTouching()) { + this.m_contactListener.EndContact(c); + } + if (c.m_prev) { + c.m_prev.m_next = c.m_next; + } + if (c.m_next) { + c.m_next.m_prev = c.m_prev; + } + if (c == this.m_world.m_contactList) { + this.m_world.m_contactList = c.m_next; + } + if (c.m_nodeA.prev) { + c.m_nodeA.prev.next = c.m_nodeA.next; + } + if (c.m_nodeA.next) { + c.m_nodeA.next.prev = c.m_nodeA.prev; + } + if (c.m_nodeA == bodyA.m_contactList) { + bodyA.m_contactList = c.m_nodeA.next; + } + if (c.m_nodeB.prev) { + c.m_nodeB.prev.next = c.m_nodeB.next; + } + if (c.m_nodeB.next) { + c.m_nodeB.next.prev = c.m_nodeB.prev; + } + if (c.m_nodeB == bodyB.m_contactList) { + bodyB.m_contactList = c.m_nodeB.next; + } + this.m_contactFactory.Destroy(c); + --this.m_contactCount; + } + b2ContactManager.prototype.Collide = function () { + var c = this.m_world.m_contactList; + while (c) { + var fixtureA = c.GetFixtureA(); + var fixtureB = c.GetFixtureB(); + var bodyA = fixtureA.GetBody(); + var bodyB = fixtureB.GetBody(); + if (bodyA.IsAwake() == false && bodyB.IsAwake() == false) { + c = c.GetNext(); + continue; + } + if (c.m_flags & b2Contact.e_filterFlag) { + if (bodyB.ShouldCollide(bodyA) == false) { + var cNuke = c; + c = cNuke.GetNext(); + this.Destroy(cNuke); + continue; + } + if (this.m_contactFilter.ShouldCollide(fixtureA, fixtureB) == false) { + cNuke = c; + c = cNuke.GetNext(); + this.Destroy(cNuke); + continue; + } + c.m_flags &= ~b2Contact.e_filterFlag; + } + var proxyA = fixtureA.m_proxy; + var proxyB = fixtureB.m_proxy; + var overlap = this.m_broadPhase.TestOverlap(proxyA, proxyB); + if (overlap == false) { + cNuke = c; + c = cNuke.GetNext(); + this.Destroy(cNuke); + continue; + } + c.Update(this.m_contactListener); + c = c.GetNext(); + } + } + Box2D.postDefs.push(function () { + Box2D.Dynamics.b2ContactManager.s_evalCP = new b2ContactPoint(); + }); + b2DebugDraw.b2DebugDraw = function () {}; + b2DebugDraw.prototype.b2DebugDraw = function () {} + b2DebugDraw.prototype.SetFlags = function (flags) { + if (flags === undefined) flags = 0; + } + b2DebugDraw.prototype.GetFlags = function () {} + b2DebugDraw.prototype.AppendFlags = function (flags) { + if (flags === undefined) flags = 0; + } + b2DebugDraw.prototype.ClearFlags = function (flags) { + if (flags === undefined) flags = 0; + } + b2DebugDraw.prototype.SetSprite = function (sprite) {} + b2DebugDraw.prototype.GetSprite = function () {} + b2DebugDraw.prototype.SetDrawScale = function (drawScale) { + if (drawScale === undefined) drawScale = 0; + } + b2DebugDraw.prototype.GetDrawScale = function () {} + b2DebugDraw.prototype.SetLineThickness = function (lineThickness) { + if (lineThickness === undefined) lineThickness = 0; + } + b2DebugDraw.prototype.GetLineThickness = function () {} + b2DebugDraw.prototype.SetAlpha = function (alpha) { + if (alpha === undefined) alpha = 0; + } + b2DebugDraw.prototype.GetAlpha = function () {} + b2DebugDraw.prototype.SetFillAlpha = function (alpha) { + if (alpha === undefined) alpha = 0; + } + b2DebugDraw.prototype.GetFillAlpha = function () {} + b2DebugDraw.prototype.SetXFormScale = function (xformScale) { + if (xformScale === undefined) xformScale = 0; + } + b2DebugDraw.prototype.GetXFormScale = function () {} + b2DebugDraw.prototype.DrawPolygon = function (vertices, vertexCount, color) { + if (vertexCount === undefined) vertexCount = 0; + } + b2DebugDraw.prototype.DrawSolidPolygon = function (vertices, vertexCount, color) { + if (vertexCount === undefined) vertexCount = 0; + } + b2DebugDraw.prototype.DrawCircle = function (center, radius, color) { + if (radius === undefined) radius = 0; + } + b2DebugDraw.prototype.DrawSolidCircle = function (center, radius, axis, color) { + if (radius === undefined) radius = 0; + } + b2DebugDraw.prototype.DrawSegment = function (p1, p2, color) {} + b2DebugDraw.prototype.DrawTransform = function (xf) {} + Box2D.postDefs.push(function () { + Box2D.Dynamics.b2DebugDraw.e_shapeBit = 0x0001; + Box2D.Dynamics.b2DebugDraw.e_jointBit = 0x0002; + Box2D.Dynamics.b2DebugDraw.e_aabbBit = 0x0004; + Box2D.Dynamics.b2DebugDraw.e_pairBit = 0x0008; + Box2D.Dynamics.b2DebugDraw.e_centerOfMassBit = 0x0010; + Box2D.Dynamics.b2DebugDraw.e_controllerBit = 0x0020; + }); + b2DestructionListener.b2DestructionListener = function () {}; + b2DestructionListener.prototype.SayGoodbyeJoint = function (joint) {} + b2DestructionListener.prototype.SayGoodbyeFixture = function (fixture) {} + b2FilterData.b2FilterData = function () { + this.categoryBits = 0x0001; + this.maskBits = 0xFFFF; + this.groupIndex = 0; + }; + b2FilterData.prototype.Copy = function () { + var copy = new b2FilterData(); + copy.categoryBits = this.categoryBits; + copy.maskBits = this.maskBits; + copy.groupIndex = this.groupIndex; + return copy; + } + b2Fixture.b2Fixture = function () { + this.m_filter = new b2FilterData(); + }; + b2Fixture.prototype.GetType = function () { + return this.m_shape.GetType(); + } + b2Fixture.prototype.GetShape = function () { + return this.m_shape; + } + b2Fixture.prototype.SetSensor = function (sensor) { + if (this.m_isSensor == sensor) return; + this.m_isSensor = sensor; + if (this.m_body == null) return; + var edge = this.m_body.GetContactList(); + while (edge) { + var contact = edge.contact; + var fixtureA = contact.GetFixtureA(); + var fixtureB = contact.GetFixtureB(); + if (fixtureA == this || fixtureB == this) contact.SetSensor(fixtureA.IsSensor() || fixtureB.IsSensor()); + edge = edge.next; + } + } + b2Fixture.prototype.IsSensor = function () { + return this.m_isSensor; + } + b2Fixture.prototype.SetFilterData = function (filter) { + this.m_filter = filter.Copy(); + if (this.m_body) return; + var edge = this.m_body.GetContactList(); + while (edge) { + var contact = edge.contact; + var fixtureA = contact.GetFixtureA(); + var fixtureB = contact.GetFixtureB(); + if (fixtureA == this || fixtureB == this) contact.FlagForFiltering(); + edge = edge.next; + } + } + b2Fixture.prototype.GetFilterData = function () { + return this.m_filter.Copy(); + } + b2Fixture.prototype.GetBody = function () { + return this.m_body; + } + b2Fixture.prototype.GetNext = function () { + return this.m_next; + } + b2Fixture.prototype.GetUserData = function () { + return this.m_userData; + } + b2Fixture.prototype.SetUserData = function (data) { + this.m_userData = data; + } + b2Fixture.prototype.TestPoint = function (p) { + return this.m_shape.TestPoint(this.m_body.GetTransform(), p); + } + b2Fixture.prototype.RayCast = function (output, input) { + return this.m_shape.RayCast(output, input, this.m_body.GetTransform()); + } + b2Fixture.prototype.GetMassData = function (massData) { + if (massData === undefined) massData = null; + if (massData == null) { + massData = new b2MassData(); + } + this.m_shape.ComputeMass(massData, this.m_density); + return massData; + } + b2Fixture.prototype.SetDensity = function (density) { + if (density === undefined) density = 0; + this.m_density = density; + } + b2Fixture.prototype.GetDensity = function () { + return this.m_density; + } + b2Fixture.prototype.GetFriction = function () { + return this.m_friction; + } + b2Fixture.prototype.SetFriction = function (friction) { + if (friction === undefined) friction = 0; + this.m_friction = friction; + } + b2Fixture.prototype.GetRestitution = function () { + return this.m_restitution; + } + b2Fixture.prototype.SetRestitution = function (restitution) { + if (restitution === undefined) restitution = 0; + this.m_restitution = restitution; + } + b2Fixture.prototype.GetAABB = function () { + return this.m_aabb; + } + b2Fixture.prototype.b2Fixture = function () { + this.m_aabb = new b2AABB(); + this.m_userData = null; + this.m_body = null; + this.m_next = null; + this.m_shape = null; + this.m_density = 0.0; + this.m_friction = 0.0; + this.m_restitution = 0.0; + } + b2Fixture.prototype.Create = function (body, xf, def) { + this.m_userData = def.userData; + this.m_friction = def.friction; + this.m_restitution = def.restitution; + this.m_body = body; + this.m_next = null; + this.m_filter = def.filter.Copy(); + this.m_isSensor = def.isSensor; + this.m_shape = def.shape.Copy(); + this.m_density = def.density; + } + b2Fixture.prototype.Destroy = function () { + this.m_shape = null; + } + b2Fixture.prototype.CreateProxy = function (broadPhase, xf) { + this.m_shape.ComputeAABB(this.m_aabb, xf); + this.m_proxy = broadPhase.CreateProxy(this.m_aabb, this); + } + b2Fixture.prototype.DestroyProxy = function (broadPhase) { + if (this.m_proxy == null) { + return; + } + broadPhase.DestroyProxy(this.m_proxy); + this.m_proxy = null; + } + b2Fixture.prototype.Synchronize = function (broadPhase, transform1, transform2) { + if (!this.m_proxy) return; + var aabb1 = new b2AABB(); + var aabb2 = new b2AABB(); + this.m_shape.ComputeAABB(aabb1, transform1); + this.m_shape.ComputeAABB(aabb2, transform2); + this.m_aabb.Combine(aabb1, aabb2); + var displacement = b2Math.SubtractVV(transform2.position, transform1.position); + broadPhase.MoveProxy(this.m_proxy, this.m_aabb, displacement); + } + b2FixtureDef.b2FixtureDef = function () { + this.filter = new b2FilterData(); + }; + b2FixtureDef.prototype.b2FixtureDef = function () { + this.shape = null; + this.userData = null; + this.friction = 0.2; + this.restitution = 0.0; + this.density = 0.0; + this.filter.categoryBits = 0x0001; + this.filter.maskBits = 0xFFFF; + this.filter.groupIndex = 0; + this.isSensor = false; + } + b2Island.b2Island = function () {}; + b2Island.prototype.b2Island = function () { + this.m_bodies = new Vector(); + this.m_contacts = new Vector(); + this.m_joints = new Vector(); + } + b2Island.prototype.Initialize = function (bodyCapacity, contactCapacity, jointCapacity, allocator, listener, contactSolver) { + if (bodyCapacity === undefined) bodyCapacity = 0; + if (contactCapacity === undefined) contactCapacity = 0; + if (jointCapacity === undefined) jointCapacity = 0; + var i = 0; + this.m_bodyCapacity = bodyCapacity; + this.m_contactCapacity = contactCapacity; + this.m_jointCapacity = jointCapacity; + this.m_bodyCount = 0; + this.m_contactCount = 0; + this.m_jointCount = 0; + this.m_allocator = allocator; + this.m_listener = listener; + this.m_contactSolver = contactSolver; + for (i = this.m_bodies.length; + i < bodyCapacity; i++) + this.m_bodies[i] = null; + for (i = this.m_contacts.length; + i < contactCapacity; i++) + this.m_contacts[i] = null; + for (i = this.m_joints.length; + i < jointCapacity; i++) + this.m_joints[i] = null; + } + b2Island.prototype.Clear = function () { + this.m_bodyCount = 0; + this.m_contactCount = 0; + this.m_jointCount = 0; + } + b2Island.prototype.Solve = function (step, gravity, allowSleep) { + var i = 0; + var j = 0; + var b; + var joint; + for (i = 0; + i < this.m_bodyCount; ++i) { + b = this.m_bodies[i]; + if (b.GetType() != b2Body.b2_dynamicBody) continue; + b.m_linearVelocity.x += step.dt * (gravity.x + b.m_invMass * b.m_force.x); + b.m_linearVelocity.y += step.dt * (gravity.y + b.m_invMass * b.m_force.y); + b.m_angularVelocity += step.dt * b.m_invI * b.m_torque; + b.m_linearVelocity.Multiply(b2Math.Clamp(1.0 - step.dt * b.m_linearDamping, 0.0, 1.0)); + b.m_angularVelocity *= b2Math.Clamp(1.0 - step.dt * b.m_angularDamping, 0.0, 1.0); + } + this.m_contactSolver.Initialize(step, this.m_contacts, this.m_contactCount, this.m_allocator); + var contactSolver = this.m_contactSolver; + contactSolver.InitVelocityConstraints(step); + for (i = 0; + i < this.m_jointCount; ++i) { + joint = this.m_joints[i]; + joint.InitVelocityConstraints(step); + } + for (i = 0; + i < step.velocityIterations; ++i) { + for (j = 0; + j < this.m_jointCount; ++j) { + joint = this.m_joints[j]; + joint.SolveVelocityConstraints(step); + } + contactSolver.SolveVelocityConstraints(); + } + for (i = 0; + i < this.m_jointCount; ++i) { + joint = this.m_joints[i]; + joint.FinalizeVelocityConstraints(); + } + contactSolver.FinalizeVelocityConstraints(); + for (i = 0; + i < this.m_bodyCount; ++i) { + b = this.m_bodies[i]; + if (b.GetType() == b2Body.b2_staticBody) continue; + var translationX = step.dt * b.m_linearVelocity.x; + var translationY = step.dt * b.m_linearVelocity.y; + if ((translationX * translationX + translationY * translationY) > b2Settings.b2_maxTranslationSquared) { + b.m_linearVelocity.Normalize(); + b.m_linearVelocity.x *= b2Settings.b2_maxTranslation * step.inv_dt; + b.m_linearVelocity.y *= b2Settings.b2_maxTranslation * step.inv_dt; + } + var rotation = step.dt * b.m_angularVelocity; + if (rotation * rotation > b2Settings.b2_maxRotationSquared) { + if (b.m_angularVelocity < 0.0) { + b.m_angularVelocity = (-b2Settings.b2_maxRotation * step.inv_dt); + } + else { + b.m_angularVelocity = b2Settings.b2_maxRotation * step.inv_dt; + } + } + b.m_sweep.c0.SetV(b.m_sweep.c); + b.m_sweep.a0 = b.m_sweep.a; + b.m_sweep.c.x += step.dt * b.m_linearVelocity.x; + b.m_sweep.c.y += step.dt * b.m_linearVelocity.y; + b.m_sweep.a += step.dt * b.m_angularVelocity; + b.SynchronizeTransform(); + } + for (i = 0; + i < step.positionIterations; ++i) { + var contactsOkay = contactSolver.SolvePositionConstraints(b2Settings.b2_contactBaumgarte); + var jointsOkay = true; + for (j = 0; + j < this.m_jointCount; ++j) { + joint = this.m_joints[j]; + var jointOkay = joint.SolvePositionConstraints(b2Settings.b2_contactBaumgarte); + jointsOkay = jointsOkay && jointOkay; + } + if (contactsOkay && jointsOkay) { + break; + } + } + this.Report(contactSolver.m_constraints); + if (allowSleep) { + var minSleepTime = Number.MAX_VALUE; + var linTolSqr = b2Settings.b2_linearSleepTolerance * b2Settings.b2_linearSleepTolerance; + var angTolSqr = b2Settings.b2_angularSleepTolerance * b2Settings.b2_angularSleepTolerance; + for (i = 0; + i < this.m_bodyCount; ++i) { + b = this.m_bodies[i]; + if (b.GetType() == b2Body.b2_staticBody) { + continue; + } + if ((b.m_flags & b2Body.e_allowSleepFlag) == 0) { + b.m_sleepTime = 0.0; + minSleepTime = 0.0; + } + if ((b.m_flags & b2Body.e_allowSleepFlag) == 0 || b.m_angularVelocity * b.m_angularVelocity > angTolSqr || b2Math.Dot(b.m_linearVelocity, b.m_linearVelocity) > linTolSqr) { + b.m_sleepTime = 0.0; + minSleepTime = 0.0; + } + else { + b.m_sleepTime += step.dt; + minSleepTime = b2Math.Min(minSleepTime, b.m_sleepTime); + } + } + if (minSleepTime >= b2Settings.b2_timeToSleep) { + for (i = 0; + i < this.m_bodyCount; ++i) { + b = this.m_bodies[i]; + b.SetAwake(false); + } + } + } + } + b2Island.prototype.SolveTOI = function (subStep) { + var i = 0; + var j = 0; + this.m_contactSolver.Initialize(subStep, this.m_contacts, this.m_contactCount, this.m_allocator); + var contactSolver = this.m_contactSolver; + for (i = 0; + i < this.m_jointCount; ++i) { + this.m_joints[i].InitVelocityConstraints(subStep); + } + for (i = 0; + i < subStep.velocityIterations; ++i) { + contactSolver.SolveVelocityConstraints(); + for (j = 0; + j < this.m_jointCount; ++j) { + this.m_joints[j].SolveVelocityConstraints(subStep); + } + } + for (i = 0; + i < this.m_bodyCount; ++i) { + var b = this.m_bodies[i]; + if (b.GetType() == b2Body.b2_staticBody) continue; + var translationX = subStep.dt * b.m_linearVelocity.x; + var translationY = subStep.dt * b.m_linearVelocity.y; + if ((translationX * translationX + translationY * translationY) > b2Settings.b2_maxTranslationSquared) { + b.m_linearVelocity.Normalize(); + b.m_linearVelocity.x *= b2Settings.b2_maxTranslation * subStep.inv_dt; + b.m_linearVelocity.y *= b2Settings.b2_maxTranslation * subStep.inv_dt; + } + var rotation = subStep.dt * b.m_angularVelocity; + if (rotation * rotation > b2Settings.b2_maxRotationSquared) { + if (b.m_angularVelocity < 0.0) { + b.m_angularVelocity = (-b2Settings.b2_maxRotation * subStep.inv_dt); + } + else { + b.m_angularVelocity = b2Settings.b2_maxRotation * subStep.inv_dt; + } + } + b.m_sweep.c0.SetV(b.m_sweep.c); + b.m_sweep.a0 = b.m_sweep.a; + b.m_sweep.c.x += subStep.dt * b.m_linearVelocity.x; + b.m_sweep.c.y += subStep.dt * b.m_linearVelocity.y; + b.m_sweep.a += subStep.dt * b.m_angularVelocity; + b.SynchronizeTransform(); + } + var k_toiBaumgarte = 0.75; + for (i = 0; + i < subStep.positionIterations; ++i) { + var contactsOkay = contactSolver.SolvePositionConstraints(k_toiBaumgarte); + var jointsOkay = true; + for (j = 0; + j < this.m_jointCount; ++j) { + var jointOkay = this.m_joints[j].SolvePositionConstraints(b2Settings.b2_contactBaumgarte); + jointsOkay = jointsOkay && jointOkay; + } + if (contactsOkay && jointsOkay) { + break; + } + } + this.Report(contactSolver.m_constraints); + } + b2Island.prototype.Report = function (constraints) { + if (this.m_listener == null) { + return; + } + for (var i = 0; i < this.m_contactCount; ++i) { + var c = this.m_contacts[i]; + var cc = constraints[i]; + for (var j = 0; j < cc.pointCount; ++j) { + b2Island.s_impulse.normalImpulses[j] = cc.points[j].normalImpulse; + b2Island.s_impulse.tangentImpulses[j] = cc.points[j].tangentImpulse; + } + this.m_listener.PostSolve(c, b2Island.s_impulse); + } + } + b2Island.prototype.AddBody = function (body) { + body.m_islandIndex = this.m_bodyCount; + this.m_bodies[this.m_bodyCount++] = body; + } + b2Island.prototype.AddContact = function (contact) { + this.m_contacts[this.m_contactCount++] = contact; + } + b2Island.prototype.AddJoint = function (joint) { + this.m_joints[this.m_jointCount++] = joint; + } + Box2D.postDefs.push(function () { + Box2D.Dynamics.b2Island.s_impulse = new b2ContactImpulse(); + }); + b2TimeStep.b2TimeStep = function () {}; + b2TimeStep.prototype.Set = function (step) { + this.dt = step.dt; + this.inv_dt = step.inv_dt; + this.positionIterations = step.positionIterations; + this.velocityIterations = step.velocityIterations; + this.warmStarting = step.warmStarting; + } + b2World.b2World = function () { + this.s_stack = new Vector(); + this.m_contactManager = new b2ContactManager(); + this.m_contactSolver = new b2ContactSolver(); + this.m_island = new b2Island(); + }; + b2World.prototype.b2World = function (gravity, doSleep) { + this.m_destructionListener = null; + this.m_debugDraw = null; + this.m_bodyList = null; + this.m_contactList = null; + this.m_jointList = null; + this.m_controllerList = null; + this.m_bodyCount = 0; + this.m_contactCount = 0; + this.m_jointCount = 0; + this.m_controllerCount = 0; + b2World.m_warmStarting = true; + b2World.m_continuousPhysics = true; + this.m_allowSleep = doSleep; + this.m_gravity = gravity; + this.m_inv_dt0 = 0.0; + this.m_contactManager.m_world = this; + var bd = new b2BodyDef(); + this.m_groundBody = this.CreateBody(bd); + } + b2World.prototype.SetDestructionListener = function (listener) { + this.m_destructionListener = listener; + } + b2World.prototype.SetContactFilter = function (filter) { + this.m_contactManager.m_contactFilter = filter; + } + b2World.prototype.SetContactListener = function (listener) { + this.m_contactManager.m_contactListener = listener; + } + b2World.prototype.SetDebugDraw = function (debugDraw) { + this.m_debugDraw = debugDraw; + } + b2World.prototype.SetBroadPhase = function (broadPhase) { + var oldBroadPhase = this.m_contactManager.m_broadPhase; + this.m_contactManager.m_broadPhase = broadPhase; + for (var b = this.m_bodyList; b; b = b.m_next) { + for (var f = b.m_fixtureList; f; f = f.m_next) { + f.m_proxy = broadPhase.CreateProxy(oldBroadPhase.GetFatAABB(f.m_proxy), f); + } + } + } + b2World.prototype.Validate = function () { + this.m_contactManager.m_broadPhase.Validate(); + } + b2World.prototype.GetProxyCount = function () { + return this.m_contactManager.m_broadPhase.GetProxyCount(); + } + b2World.prototype.CreateBody = function (def) { + if (this.IsLocked() == true) { + return null; + } + var b = new b2Body(def, this); + b.m_prev = null; + b.m_next = this.m_bodyList; + if (this.m_bodyList) { + this.m_bodyList.m_prev = b; + } + this.m_bodyList = b; + ++this.m_bodyCount; + return b; + } + b2World.prototype.DestroyBody = function (b) { + if (this.IsLocked() == true) { + return; + } + var jn = b.m_jointList; + while (jn) { + var jn0 = jn; + jn = jn.next; + if (this.m_destructionListener) { + this.m_destructionListener.SayGoodbyeJoint(jn0.joint); + } + this.DestroyJoint(jn0.joint); + } + var coe = b.m_controllerList; + while (coe) { + var coe0 = coe; + coe = coe.nextController; + coe0.controller.RemoveBody(b); + } + var ce = b.m_contactList; + while (ce) { + var ce0 = ce; + ce = ce.next; + this.m_contactManager.Destroy(ce0.contact); + } + b.m_contactList = null; + var f = b.m_fixtureList; + while (f) { + var f0 = f; + f = f.m_next; + if (this.m_destructionListener) { + this.m_destructionListener.SayGoodbyeFixture(f0); + } + f0.DestroyProxy(this.m_contactManager.m_broadPhase); + f0.Destroy(); + } + b.m_fixtureList = null; + b.m_fixtureCount = 0; + if (b.m_prev) { + b.m_prev.m_next = b.m_next; + } + if (b.m_next) { + b.m_next.m_prev = b.m_prev; + } + if (b == this.m_bodyList) { + this.m_bodyList = b.m_next; + }--this.m_bodyCount; + } + b2World.prototype.CreateJoint = function (def) { + var j = b2Joint.Create(def, null); + j.m_prev = null; + j.m_next = this.m_jointList; + if (this.m_jointList) { + this.m_jointList.m_prev = j; + } + this.m_jointList = j; + ++this.m_jointCount; + j.m_edgeA.joint = j; + j.m_edgeA.other = j.m_bodyB; + j.m_edgeA.prev = null; + j.m_edgeA.next = j.m_bodyA.m_jointList; + if (j.m_bodyA.m_jointList) j.m_bodyA.m_jointList.prev = j.m_edgeA; + j.m_bodyA.m_jointList = j.m_edgeA; + j.m_edgeB.joint = j; + j.m_edgeB.other = j.m_bodyA; + j.m_edgeB.prev = null; + j.m_edgeB.next = j.m_bodyB.m_jointList; + if (j.m_bodyB.m_jointList) j.m_bodyB.m_jointList.prev = j.m_edgeB; + j.m_bodyB.m_jointList = j.m_edgeB; + var bodyA = def.bodyA; + var bodyB = def.bodyB; + if (def.collideConnected == false) { + var edge = bodyB.GetContactList(); + while (edge) { + if (edge.other == bodyA) { + edge.contact.FlagForFiltering(); + } + edge = edge.next; + } + } + return j; + } + b2World.prototype.DestroyJoint = function (j) { + var collideConnected = j.m_collideConnected; + if (j.m_prev) { + j.m_prev.m_next = j.m_next; + } + if (j.m_next) { + j.m_next.m_prev = j.m_prev; + } + if (j == this.m_jointList) { + this.m_jointList = j.m_next; + } + var bodyA = j.m_bodyA; + var bodyB = j.m_bodyB; + bodyA.SetAwake(true); + bodyB.SetAwake(true); + if (j.m_edgeA.prev) { + j.m_edgeA.prev.next = j.m_edgeA.next; + } + if (j.m_edgeA.next) { + j.m_edgeA.next.prev = j.m_edgeA.prev; + } + if (j.m_edgeA == bodyA.m_jointList) { + bodyA.m_jointList = j.m_edgeA.next; + } + j.m_edgeA.prev = null; + j.m_edgeA.next = null; + if (j.m_edgeB.prev) { + j.m_edgeB.prev.next = j.m_edgeB.next; + } + if (j.m_edgeB.next) { + j.m_edgeB.next.prev = j.m_edgeB.prev; + } + if (j.m_edgeB == bodyB.m_jointList) { + bodyB.m_jointList = j.m_edgeB.next; + } + j.m_edgeB.prev = null; + j.m_edgeB.next = null; + b2Joint.Destroy(j, null); + --this.m_jointCount; + if (collideConnected == false) { + var edge = bodyB.GetContactList(); + while (edge) { + if (edge.other == bodyA) { + edge.contact.FlagForFiltering(); + } + edge = edge.next; + } + } + } + b2World.prototype.AddController = function (c) { + c.m_next = this.m_controllerList; + c.m_prev = null; + this.m_controllerList = c; + c.m_world = this; + this.m_controllerCount++; + return c; + } + b2World.prototype.RemoveController = function (c) { + if (c.m_prev) c.m_prev.m_next = c.m_next; + if (c.m_next) c.m_next.m_prev = c.m_prev; + if (this.m_controllerList == c) this.m_controllerList = c.m_next; + this.m_controllerCount--; + } + b2World.prototype.CreateController = function (controller) { + if (controller.m_world != this) throw new Error("Controller can only be a member of one world"); + controller.m_next = this.m_controllerList; + controller.m_prev = null; + if (this.m_controllerList) this.m_controllerList.m_prev = controller; + this.m_controllerList = controller; + ++this.m_controllerCount; + controller.m_world = this; + return controller; + } + b2World.prototype.DestroyController = function (controller) { + controller.Clear(); + if (controller.m_next) controller.m_next.m_prev = controller.m_prev; + if (controller.m_prev) controller.m_prev.m_next = controller.m_next; + if (controller == this.m_controllerList) this.m_controllerList = controller.m_next; + --this.m_controllerCount; + } + b2World.prototype.SetWarmStarting = function (flag) { + b2World.m_warmStarting = flag; + } + b2World.prototype.SetContinuousPhysics = function (flag) { + b2World.m_continuousPhysics = flag; + } + b2World.prototype.GetBodyCount = function () { + return this.m_bodyCount; + } + b2World.prototype.GetJointCount = function () { + return this.m_jointCount; + } + b2World.prototype.GetContactCount = function () { + return this.m_contactCount; + } + b2World.prototype.SetGravity = function (gravity) { + this.m_gravity = gravity; + } + b2World.prototype.GetGravity = function () { + return this.m_gravity; + } + b2World.prototype.GetGroundBody = function () { + return this.m_groundBody; + } + b2World.prototype.Step = function (dt, velocityIterations, positionIterations) { + if (dt === undefined) dt = 0; + if (velocityIterations === undefined) velocityIterations = 0; + if (positionIterations === undefined) positionIterations = 0; + if (this.m_flags & b2World.e_newFixture) { + this.m_contactManager.FindNewContacts(); + this.m_flags &= ~b2World.e_newFixture; + } + this.m_flags |= b2World.e_locked; + var step = b2World.s_timestep2; + step.dt = dt; + step.velocityIterations = velocityIterations; + step.positionIterations = positionIterations; + if (dt > 0.0) { + step.inv_dt = 1.0 / dt; + } + else { + step.inv_dt = 0.0; + } + step.dtRatio = this.m_inv_dt0 * dt; + step.warmStarting = b2World.m_warmStarting; + this.m_contactManager.Collide(); + if (step.dt > 0.0) { + this.Solve(step); + } + if (b2World.m_continuousPhysics && step.dt > 0.0) { + this.SolveTOI(step); + } + if (step.dt > 0.0) { + this.m_inv_dt0 = step.inv_dt; + } + this.m_flags &= ~b2World.e_locked; + } + b2World.prototype.ClearForces = function () { + for (var body = this.m_bodyList; body; body = body.m_next) { + body.m_force.SetZero(); + body.m_torque = 0.0; + } + } + b2World.prototype.DrawDebugData = function () { + if (this.m_debugDraw == null) { + return; + } + this.m_debugDraw.m_sprite.graphics.clear(); + var flags = this.m_debugDraw.GetFlags(); + var i = 0; + var b; + var f; + var s; + var j; + var bp; + var invQ = new b2Vec2; + var x1 = new b2Vec2; + var x2 = new b2Vec2; + var xf; + var b1 = new b2AABB(); + var b2 = new b2AABB(); + var vs = [new b2Vec2(), new b2Vec2(), new b2Vec2(), new b2Vec2()]; + var color = new b2Color(0, 0, 0); + if (flags & b2DebugDraw.e_shapeBit) { + for (b = this.m_bodyList; + b; b = b.m_next) { + xf = b.m_xf; + for (f = b.GetFixtureList(); + f; f = f.m_next) { + s = f.GetShape(); + if (b.IsActive() == false) { + color.Set(0.5, 0.5, 0.3); + this.DrawShape(s, xf, color); + } + else if (b.GetType() == b2Body.b2_staticBody) { + color.Set(0.5, 0.9, 0.5); + this.DrawShape(s, xf, color); + } + else if (b.GetType() == b2Body.b2_kinematicBody) { + color.Set(0.5, 0.5, 0.9); + this.DrawShape(s, xf, color); + } + else if (b.IsAwake() == false) { + color.Set(0.6, 0.6, 0.6); + this.DrawShape(s, xf, color); + } + else { + color.Set(0.9, 0.7, 0.7); + this.DrawShape(s, xf, color); + } + } + } + } + if (flags & b2DebugDraw.e_jointBit) { + for (j = this.m_jointList; + j; j = j.m_next) { + this.DrawJoint(j); + } + } + if (flags & b2DebugDraw.e_controllerBit) { + for (var c = this.m_controllerList; c; c = c.m_next) { + c.Draw(this.m_debugDraw); + } + } + if (flags & b2DebugDraw.e_pairBit) { + color.Set(0.3, 0.9, 0.9); + for (var contact = this.m_contactManager.m_contactList; contact; contact = contact.GetNext()) { + var fixtureA = contact.GetFixtureA(); + var fixtureB = contact.GetFixtureB(); + var cA = fixtureA.GetAABB().GetCenter(); + var cB = fixtureB.GetAABB().GetCenter(); + this.m_debugDraw.DrawSegment(cA, cB, color); + } + } + if (flags & b2DebugDraw.e_aabbBit) { + bp = this.m_contactManager.m_broadPhase; + vs = [new b2Vec2(), new b2Vec2(), new b2Vec2(), new b2Vec2()]; + for (b = this.m_bodyList; + b; b = b.GetNext()) { + if (b.IsActive() == false) { + continue; + } + for (f = b.GetFixtureList(); + f; f = f.GetNext()) { + var aabb = bp.GetFatAABB(f.m_proxy); + vs[0].Set(aabb.lowerBound.x, aabb.lowerBound.y); + vs[1].Set(aabb.upperBound.x, aabb.lowerBound.y); + vs[2].Set(aabb.upperBound.x, aabb.upperBound.y); + vs[3].Set(aabb.lowerBound.x, aabb.upperBound.y); + this.m_debugDraw.DrawPolygon(vs, 4, color); + } + } + } + if (flags & b2DebugDraw.e_centerOfMassBit) { + for (b = this.m_bodyList; + b; b = b.m_next) { + xf = b2World.s_xf; + xf.R = b.m_xf.R; + xf.position = b.GetWorldCenter(); + this.m_debugDraw.DrawTransform(xf); + } + } + } + b2World.prototype.QueryAABB = function (callback, aabb) { + var __this = this; + var broadPhase = __this.m_contactManager.m_broadPhase; + + function WorldQueryWrapper(proxy) { + return callback(broadPhase.GetUserData(proxy)); + }; + broadPhase.Query(WorldQueryWrapper, aabb); + } + b2World.prototype.QueryShape = function (callback, shape, transform) { + var __this = this; + if (transform === undefined) transform = null; + if (transform == null) { + transform = new b2Transform(); + transform.SetIdentity(); + } + var broadPhase = __this.m_contactManager.m_broadPhase; + + function WorldQueryWrapper(proxy) { + var fixture = (broadPhase.GetUserData(proxy) instanceof b2Fixture ? broadPhase.GetUserData(proxy) : null); + if (b2Shape.TestOverlap(shape, transform, fixture.GetShape(), fixture.GetBody().GetTransform())) return callback(fixture); + return true; + }; + var aabb = new b2AABB(); + shape.ComputeAABB(aabb, transform); + broadPhase.Query(WorldQueryWrapper, aabb); + } + b2World.prototype.QueryPoint = function (callback, p) { + var __this = this; + var broadPhase = __this.m_contactManager.m_broadPhase; + + function WorldQueryWrapper(proxy) { + var fixture = (broadPhase.GetUserData(proxy) instanceof b2Fixture ? broadPhase.GetUserData(proxy) : null); + if (fixture.TestPoint(p)) return callback(fixture); + return true; + }; + var aabb = new b2AABB(); + aabb.lowerBound.Set(p.x - b2Settings.b2_linearSlop, p.y - b2Settings.b2_linearSlop); + aabb.upperBound.Set(p.x + b2Settings.b2_linearSlop, p.y + b2Settings.b2_linearSlop); + broadPhase.Query(WorldQueryWrapper, aabb); + } + b2World.prototype.RayCast = function (callback, point1, point2) { + var __this = this; + var broadPhase = __this.m_contactManager.m_broadPhase; + var output = new b2RayCastOutput; + + function RayCastWrapper(input, proxy) { + var userData = broadPhase.GetUserData(proxy); + var fixture = (userData instanceof b2Fixture ? userData : null); + var hit = fixture.RayCast(output, input); + if (hit) { + var fraction = output.fraction; + var point = new b2Vec2((1.0 - fraction) * point1.x + fraction * point2.x, (1.0 - fraction) * point1.y + fraction * point2.y); + return callback(fixture, point, output.normal, fraction); + } + return input.maxFraction; + }; + var input = new b2RayCastInput(point1, point2); + broadPhase.RayCast(RayCastWrapper, input); + } + b2World.prototype.RayCastOne = function (point1, point2) { + var __this = this; + var result; + + function RayCastOneWrapper(fixture, point, normal, fraction) { + if (fraction === undefined) fraction = 0; + result = fixture; + return fraction; + }; + __this.RayCast(RayCastOneWrapper, point1, point2); + return result; + } + b2World.prototype.RayCastAll = function (point1, point2) { + var __this = this; + var result = new Vector(); + + function RayCastAllWrapper(fixture, point, normal, fraction) { + if (fraction === undefined) fraction = 0; + result[result.length] = fixture; + return 1; + }; + __this.RayCast(RayCastAllWrapper, point1, point2); + return result; + } + b2World.prototype.GetBodyList = function () { + return this.m_bodyList; + } + b2World.prototype.GetJointList = function () { + return this.m_jointList; + } + b2World.prototype.GetContactList = function () { + return this.m_contactList; + } + b2World.prototype.IsLocked = function () { + return (this.m_flags & b2World.e_locked) > 0; + } + b2World.prototype.Solve = function (step) { + var b; + for (var controller = this.m_controllerList; controller; controller = controller.m_next) { + controller.Step(step); + } + var island = this.m_island; + island.Initialize(this.m_bodyCount, this.m_contactCount, this.m_jointCount, null, this.m_contactManager.m_contactListener, this.m_contactSolver); + for (b = this.m_bodyList; + b; b = b.m_next) { + b.m_flags &= ~b2Body.e_islandFlag; + } + for (var c = this.m_contactList; c; c = c.m_next) { + c.m_flags &= ~b2Contact.e_islandFlag; + } + for (var j = this.m_jointList; j; j = j.m_next) { + j.m_islandFlag = false; + } + var stackSize = parseInt(this.m_bodyCount); + var stack = this.s_stack; + for (var seed = this.m_bodyList; seed; seed = seed.m_next) { + if (seed.m_flags & b2Body.e_islandFlag) { + continue; + } + if (seed.IsAwake() == false || seed.IsActive() == false) { + continue; + } + if (seed.GetType() == b2Body.b2_staticBody) { + continue; + } + island.Clear(); + var stackCount = 0; + stack[stackCount++] = seed; + seed.m_flags |= b2Body.e_islandFlag; + while (stackCount > 0) { + b = stack[--stackCount]; + island.AddBody(b); + if (b.IsAwake() == false) { + b.SetAwake(true); + } + if (b.GetType() == b2Body.b2_staticBody) { + continue; + } + var other; + for (var ce = b.m_contactList; ce; ce = ce.next) { + if (ce.contact.m_flags & b2Contact.e_islandFlag) { + continue; + } + if (ce.contact.IsSensor() == true || ce.contact.IsEnabled() == false || ce.contact.IsTouching() == false) { + continue; + } + island.AddContact(ce.contact); + ce.contact.m_flags |= b2Contact.e_islandFlag; + other = ce.other; + if (other.m_flags & b2Body.e_islandFlag) { + continue; + } + stack[stackCount++] = other; + other.m_flags |= b2Body.e_islandFlag; + } + for (var jn = b.m_jointList; jn; jn = jn.next) { + if (jn.joint.m_islandFlag == true) { + continue; + } + other = jn.other; + if (other.IsActive() == false) { + continue; + } + island.AddJoint(jn.joint); + jn.joint.m_islandFlag = true; + if (other.m_flags & b2Body.e_islandFlag) { + continue; + } + stack[stackCount++] = other; + other.m_flags |= b2Body.e_islandFlag; + } + } + island.Solve(step, this.m_gravity, this.m_allowSleep); + for (var i = 0; i < island.m_bodyCount; ++i) { + b = island.m_bodies[i]; + if (b.GetType() == b2Body.b2_staticBody) { + b.m_flags &= ~b2Body.e_islandFlag; + } + } + } + for (i = 0; + i < stack.length; ++i) { + if (!stack[i]) break; + stack[i] = null; + } + for (b = this.m_bodyList; + b; b = b.m_next) { + if (b.IsAwake() == false || b.IsActive() == false) { + continue; + } + if (b.GetType() == b2Body.b2_staticBody) { + continue; + } + b.SynchronizeFixtures(); + } + this.m_contactManager.FindNewContacts(); + } + b2World.prototype.SolveTOI = function (step) { + var b; + var fA; + var fB; + var bA; + var bB; + var cEdge; + var j; + var island = this.m_island; + island.Initialize(this.m_bodyCount, b2Settings.b2_maxTOIContactsPerIsland, b2Settings.b2_maxTOIJointsPerIsland, null, this.m_contactManager.m_contactListener, this.m_contactSolver); + var queue = b2World.s_queue; + for (b = this.m_bodyList; + b; b = b.m_next) { + b.m_flags &= ~b2Body.e_islandFlag; + b.m_sweep.t0 = 0.0; + } + var c; + for (c = this.m_contactList; + c; c = c.m_next) { + c.m_flags &= ~ (b2Contact.e_toiFlag | b2Contact.e_islandFlag); + } + for (j = this.m_jointList; + j; j = j.m_next) { + j.m_islandFlag = false; + } + for (;;) { + var minContact = null; + var minTOI = 1.0; + for (c = this.m_contactList; + c; c = c.m_next) { + if (c.IsSensor() == true || c.IsEnabled() == false || c.IsContinuous() == false) { + continue; + } + var toi = 1.0; + if (c.m_flags & b2Contact.e_toiFlag) { + toi = c.m_toi; + } + else { + fA = c.m_fixtureA; + fB = c.m_fixtureB; + bA = fA.m_body; + bB = fB.m_body; + if ((bA.GetType() != b2Body.b2_dynamicBody || bA.IsAwake() == false) && (bB.GetType() != b2Body.b2_dynamicBody || bB.IsAwake() == false)) { + continue; + } + var t0 = bA.m_sweep.t0; + if (bA.m_sweep.t0 < bB.m_sweep.t0) { + t0 = bB.m_sweep.t0; + bA.m_sweep.Advance(t0); + } + else if (bB.m_sweep.t0 < bA.m_sweep.t0) { + t0 = bA.m_sweep.t0; + bB.m_sweep.Advance(t0); + } + toi = c.ComputeTOI(bA.m_sweep, bB.m_sweep); + b2Settings.b2Assert(0.0 <= toi && toi <= 1.0); + if (toi > 0.0 && toi < 1.0) { + toi = (1.0 - toi) * t0 + toi; + if (toi > 1) toi = 1; + } + c.m_toi = toi; + c.m_flags |= b2Contact.e_toiFlag; + } + if (Number.MIN_VALUE < toi && toi < minTOI) { + minContact = c; + minTOI = toi; + } + } + if (minContact == null || 1.0 - 100.0 * Number.MIN_VALUE < minTOI) { + break; + } + fA = minContact.m_fixtureA; + fB = minContact.m_fixtureB; + bA = fA.m_body; + bB = fB.m_body; + b2World.s_backupA.Set(bA.m_sweep); + b2World.s_backupB.Set(bB.m_sweep); + bA.Advance(minTOI); + bB.Advance(minTOI); + minContact.Update(this.m_contactManager.m_contactListener); + minContact.m_flags &= ~b2Contact.e_toiFlag; + if (minContact.IsSensor() == true || minContact.IsEnabled() == false) { + bA.m_sweep.Set(b2World.s_backupA); + bB.m_sweep.Set(b2World.s_backupB); + bA.SynchronizeTransform(); + bB.SynchronizeTransform(); + continue; + } + if (minContact.IsTouching() == false) { + continue; + } + var seed = bA; + if (seed.GetType() != b2Body.b2_dynamicBody) { + seed = bB; + } + island.Clear(); + var queueStart = 0; + var queueSize = 0; + queue[queueStart + queueSize++] = seed; + seed.m_flags |= b2Body.e_islandFlag; + while (queueSize > 0) { + b = queue[queueStart++]; + --queueSize; + island.AddBody(b); + if (b.IsAwake() == false) { + b.SetAwake(true); + } + if (b.GetType() != b2Body.b2_dynamicBody) { + continue; + } + for (cEdge = b.m_contactList; + cEdge; cEdge = cEdge.next) { + if (island.m_contactCount == island.m_contactCapacity) { + break; + } + if (cEdge.contact.m_flags & b2Contact.e_islandFlag) { + continue; + } + if (cEdge.contact.IsSensor() == true || cEdge.contact.IsEnabled() == false || cEdge.contact.IsTouching() == false) { + continue; + } + island.AddContact(cEdge.contact); + cEdge.contact.m_flags |= b2Contact.e_islandFlag; + var other = cEdge.other; + if (other.m_flags & b2Body.e_islandFlag) { + continue; + } + if (other.GetType() != b2Body.b2_staticBody) { + other.Advance(minTOI); + other.SetAwake(true); + } + queue[queueStart + queueSize] = other; + ++queueSize; + other.m_flags |= b2Body.e_islandFlag; + } + for (var jEdge = b.m_jointList; jEdge; jEdge = jEdge.next) { + if (island.m_jointCount == island.m_jointCapacity) continue; + if (jEdge.joint.m_islandFlag == true) continue; + other = jEdge.other; + if (other.IsActive() == false) { + continue; + } + island.AddJoint(jEdge.joint); + jEdge.joint.m_islandFlag = true; + if (other.m_flags & b2Body.e_islandFlag) continue; + if (other.GetType() != b2Body.b2_staticBody) { + other.Advance(minTOI); + other.SetAwake(true); + } + queue[queueStart + queueSize] = other; + ++queueSize; + other.m_flags |= b2Body.e_islandFlag; + } + } + var subStep = b2World.s_timestep; + subStep.warmStarting = false; + subStep.dt = (1.0 - minTOI) * step.dt; + subStep.inv_dt = 1.0 / subStep.dt; + subStep.dtRatio = 0.0; + subStep.velocityIterations = step.velocityIterations; + subStep.positionIterations = step.positionIterations; + island.SolveTOI(subStep); + var i = 0; + for (i = 0; + i < island.m_bodyCount; ++i) { + b = island.m_bodies[i]; + b.m_flags &= ~b2Body.e_islandFlag; + if (b.IsAwake() == false) { + continue; + } + if (b.GetType() != b2Body.b2_dynamicBody) { + continue; + } + b.SynchronizeFixtures(); + for (cEdge = b.m_contactList; + cEdge; cEdge = cEdge.next) { + cEdge.contact.m_flags &= ~b2Contact.e_toiFlag; + } + } + for (i = 0; + i < island.m_contactCount; ++i) { + c = island.m_contacts[i]; + c.m_flags &= ~ (b2Contact.e_toiFlag | b2Contact.e_islandFlag); + } + for (i = 0; + i < island.m_jointCount; ++i) { + j = island.m_joints[i]; + j.m_islandFlag = false; + } + this.m_contactManager.FindNewContacts(); + } + } + b2World.prototype.DrawJoint = function (joint) { + var b1 = joint.GetBodyA(); + var b2 = joint.GetBodyB(); + var xf1 = b1.m_xf; + var xf2 = b2.m_xf; + var x1 = xf1.position; + var x2 = xf2.position; + var p1 = joint.GetAnchorA(); + var p2 = joint.GetAnchorB(); + var color = b2World.s_jointColor; + switch (joint.m_type) { + case b2Joint.e_distanceJoint: + this.m_debugDraw.DrawSegment(p1, p2, color); + break; + case b2Joint.e_pulleyJoint: + { + var pulley = ((joint instanceof b2PulleyJoint ? joint : null)); + var s1 = pulley.GetGroundAnchorA(); + var s2 = pulley.GetGroundAnchorB(); + this.m_debugDraw.DrawSegment(s1, p1, color); + this.m_debugDraw.DrawSegment(s2, p2, color); + this.m_debugDraw.DrawSegment(s1, s2, color); + } + break; + case b2Joint.e_mouseJoint: + this.m_debugDraw.DrawSegment(p1, p2, color); + break; + default: + if (b1 != this.m_groundBody) this.m_debugDraw.DrawSegment(x1, p1, color); + this.m_debugDraw.DrawSegment(p1, p2, color); + if (b2 != this.m_groundBody) this.m_debugDraw.DrawSegment(x2, p2, color); + } + } + b2World.prototype.DrawShape = function (shape, xf, color) { + switch (shape.m_type) { + case b2Shape.e_circleShape: + { + var circle = ((shape instanceof b2CircleShape ? shape : null)); + var center = b2Math.MulX(xf, circle.m_p); + var radius = circle.m_radius; + var axis = xf.R.col1; + this.m_debugDraw.DrawSolidCircle(center, radius, axis, color); + } + break; + case b2Shape.e_polygonShape: + { + var i = 0; + var poly = ((shape instanceof b2PolygonShape ? shape : null)); + var vertexCount = parseInt(poly.GetVertexCount()); + var localVertices = poly.GetVertices(); + var vertices = new Vector(vertexCount); + for (i = 0; + i < vertexCount; ++i) { + vertices[i] = b2Math.MulX(xf, localVertices[i]); + } + this.m_debugDraw.DrawSolidPolygon(vertices, vertexCount, color); + } + break; + case b2Shape.e_edgeShape: + { + var edge = (shape instanceof b2EdgeShape ? shape : null); + this.m_debugDraw.DrawSegment(b2Math.MulX(xf, edge.GetVertex1()), b2Math.MulX(xf, edge.GetVertex2()), color); + } + break; + } + } + Box2D.postDefs.push(function () { + Box2D.Dynamics.b2World.s_timestep2 = new b2TimeStep(); + Box2D.Dynamics.b2World.s_xf = new b2Transform(); + Box2D.Dynamics.b2World.s_backupA = new b2Sweep(); + Box2D.Dynamics.b2World.s_backupB = new b2Sweep(); + Box2D.Dynamics.b2World.s_timestep = new b2TimeStep(); + Box2D.Dynamics.b2World.s_queue = new Vector(); + Box2D.Dynamics.b2World.s_jointColor = new b2Color(0.5, 0.8, 0.8); + Box2D.Dynamics.b2World.e_newFixture = 0x0001; + Box2D.Dynamics.b2World.e_locked = 0x0002; + }); +})(); +(function () { + var b2CircleShape = Box2D.Collision.Shapes.b2CircleShape, + b2EdgeChainDef = Box2D.Collision.Shapes.b2EdgeChainDef, + b2EdgeShape = Box2D.Collision.Shapes.b2EdgeShape, + b2MassData = Box2D.Collision.Shapes.b2MassData, + b2PolygonShape = Box2D.Collision.Shapes.b2PolygonShape, + b2Shape = Box2D.Collision.Shapes.b2Shape, + b2CircleContact = Box2D.Dynamics.Contacts.b2CircleContact, + b2Contact = Box2D.Dynamics.Contacts.b2Contact, + b2ContactConstraint = Box2D.Dynamics.Contacts.b2ContactConstraint, + b2ContactConstraintPoint = Box2D.Dynamics.Contacts.b2ContactConstraintPoint, + b2ContactEdge = Box2D.Dynamics.Contacts.b2ContactEdge, + b2ContactFactory = Box2D.Dynamics.Contacts.b2ContactFactory, + b2ContactRegister = Box2D.Dynamics.Contacts.b2ContactRegister, + b2ContactResult = Box2D.Dynamics.Contacts.b2ContactResult, + b2ContactSolver = Box2D.Dynamics.Contacts.b2ContactSolver, + b2EdgeAndCircleContact = Box2D.Dynamics.Contacts.b2EdgeAndCircleContact, + b2NullContact = Box2D.Dynamics.Contacts.b2NullContact, + b2PolyAndCircleContact = Box2D.Dynamics.Contacts.b2PolyAndCircleContact, + b2PolyAndEdgeContact = Box2D.Dynamics.Contacts.b2PolyAndEdgeContact, + b2PolygonContact = Box2D.Dynamics.Contacts.b2PolygonContact, + b2PositionSolverManifold = Box2D.Dynamics.Contacts.b2PositionSolverManifold, + b2Body = Box2D.Dynamics.b2Body, + b2BodyDef = Box2D.Dynamics.b2BodyDef, + b2ContactFilter = Box2D.Dynamics.b2ContactFilter, + b2ContactImpulse = Box2D.Dynamics.b2ContactImpulse, + b2ContactListener = Box2D.Dynamics.b2ContactListener, + b2ContactManager = Box2D.Dynamics.b2ContactManager, + b2DebugDraw = Box2D.Dynamics.b2DebugDraw, + b2DestructionListener = Box2D.Dynamics.b2DestructionListener, + b2FilterData = Box2D.Dynamics.b2FilterData, + b2Fixture = Box2D.Dynamics.b2Fixture, + b2FixtureDef = Box2D.Dynamics.b2FixtureDef, + b2Island = Box2D.Dynamics.b2Island, + b2TimeStep = Box2D.Dynamics.b2TimeStep, + b2World = Box2D.Dynamics.b2World, + b2Color = Box2D.Common.b2Color, + b2internal = Box2D.Common.b2internal, + b2Settings = Box2D.Common.b2Settings, + b2Mat22 = Box2D.Common.Math.b2Mat22, + b2Mat33 = Box2D.Common.Math.b2Mat33, + b2Math = Box2D.Common.Math.b2Math, + b2Sweep = Box2D.Common.Math.b2Sweep, + b2Transform = Box2D.Common.Math.b2Transform, + b2Vec2 = Box2D.Common.Math.b2Vec2, + b2Vec3 = Box2D.Common.Math.b2Vec3, + b2AABB = Box2D.Collision.b2AABB, + b2Bound = Box2D.Collision.b2Bound, + b2BoundValues = Box2D.Collision.b2BoundValues, + b2Collision = Box2D.Collision.b2Collision, + b2ContactID = Box2D.Collision.b2ContactID, + b2ContactPoint = Box2D.Collision.b2ContactPoint, + b2Distance = Box2D.Collision.b2Distance, + b2DistanceInput = Box2D.Collision.b2DistanceInput, + b2DistanceOutput = Box2D.Collision.b2DistanceOutput, + b2DistanceProxy = Box2D.Collision.b2DistanceProxy, + b2DynamicTree = Box2D.Collision.b2DynamicTree, + b2DynamicTreeBroadPhase = Box2D.Collision.b2DynamicTreeBroadPhase, + b2DynamicTreeNode = Box2D.Collision.b2DynamicTreeNode, + b2DynamicTreePair = Box2D.Collision.b2DynamicTreePair, + b2Manifold = Box2D.Collision.b2Manifold, + b2ManifoldPoint = Box2D.Collision.b2ManifoldPoint, + b2Point = Box2D.Collision.b2Point, + b2RayCastInput = Box2D.Collision.b2RayCastInput, + b2RayCastOutput = Box2D.Collision.b2RayCastOutput, + b2Segment = Box2D.Collision.b2Segment, + b2SeparationFunction = Box2D.Collision.b2SeparationFunction, + b2Simplex = Box2D.Collision.b2Simplex, + b2SimplexCache = Box2D.Collision.b2SimplexCache, + b2SimplexVertex = Box2D.Collision.b2SimplexVertex, + b2TimeOfImpact = Box2D.Collision.b2TimeOfImpact, + b2TOIInput = Box2D.Collision.b2TOIInput, + b2WorldManifold = Box2D.Collision.b2WorldManifold, + ClipVertex = Box2D.Collision.ClipVertex, + Features = Box2D.Collision.Features, + IBroadPhase = Box2D.Collision.IBroadPhase; + + Box2D.inherit(b2CircleContact, Box2D.Dynamics.Contacts.b2Contact); + b2CircleContact.prototype.__super = Box2D.Dynamics.Contacts.b2Contact.prototype; + b2CircleContact.b2CircleContact = function () { + Box2D.Dynamics.Contacts.b2Contact.b2Contact.apply(this, arguments); + }; + b2CircleContact.Create = function (allocator) { + return new b2CircleContact(); + } + b2CircleContact.Destroy = function (contact, allocator) {} + b2CircleContact.prototype.Reset = function (fixtureA, fixtureB) { + this.__super.Reset.call(this, fixtureA, fixtureB); + } + b2CircleContact.prototype.Evaluate = function () { + var bA = this.m_fixtureA.GetBody(); + var bB = this.m_fixtureB.GetBody(); + b2Collision.CollideCircles(this.m_manifold, (this.m_fixtureA.GetShape() instanceof b2CircleShape ? this.m_fixtureA.GetShape() : null), bA.m_xf, (this.m_fixtureB.GetShape() instanceof b2CircleShape ? this.m_fixtureB.GetShape() : null), bB.m_xf); + } + b2Contact.b2Contact = function () { + this.m_nodeA = new b2ContactEdge(); + this.m_nodeB = new b2ContactEdge(); + this.m_manifold = new b2Manifold(); + this.m_oldManifold = new b2Manifold(); + }; + b2Contact.prototype.GetManifold = function () { + return this.m_manifold; + } + b2Contact.prototype.GetWorldManifold = function (worldManifold) { + var bodyA = this.m_fixtureA.GetBody(); + var bodyB = this.m_fixtureB.GetBody(); + var shapeA = this.m_fixtureA.GetShape(); + var shapeB = this.m_fixtureB.GetShape(); + worldManifold.Initialize(this.m_manifold, bodyA.GetTransform(), shapeA.m_radius, bodyB.GetTransform(), shapeB.m_radius); + } + b2Contact.prototype.IsTouching = function () { + return (this.m_flags & b2Contact.e_touchingFlag) == b2Contact.e_touchingFlag; + } + b2Contact.prototype.IsContinuous = function () { + return (this.m_flags & b2Contact.e_continuousFlag) == b2Contact.e_continuousFlag; + } + b2Contact.prototype.SetSensor = function (sensor) { + if (sensor) { + this.m_flags |= b2Contact.e_sensorFlag; + } + else { + this.m_flags &= ~b2Contact.e_sensorFlag; + } + } + b2Contact.prototype.IsSensor = function () { + return (this.m_flags & b2Contact.e_sensorFlag) == b2Contact.e_sensorFlag; + } + b2Contact.prototype.SetEnabled = function (flag) { + if (flag) { + this.m_flags |= b2Contact.e_enabledFlag; + } + else { + this.m_flags &= ~b2Contact.e_enabledFlag; + } + } + b2Contact.prototype.IsEnabled = function () { + return (this.m_flags & b2Contact.e_enabledFlag) == b2Contact.e_enabledFlag; + } + b2Contact.prototype.GetNext = function () { + return this.m_next; + } + b2Contact.prototype.GetFixtureA = function () { + return this.m_fixtureA; + } + b2Contact.prototype.GetFixtureB = function () { + return this.m_fixtureB; + } + b2Contact.prototype.FlagForFiltering = function () { + this.m_flags |= b2Contact.e_filterFlag; + } + b2Contact.prototype.b2Contact = function () {} + b2Contact.prototype.Reset = function (fixtureA, fixtureB) { + if (fixtureA === undefined) fixtureA = null; + if (fixtureB === undefined) fixtureB = null; + this.m_flags = b2Contact.e_enabledFlag; + if (!fixtureA || !fixtureB) { + this.m_fixtureA = null; + this.m_fixtureB = null; + return; + } + if (fixtureA.IsSensor() || fixtureB.IsSensor()) { + this.m_flags |= b2Contact.e_sensorFlag; + } + var bodyA = fixtureA.GetBody(); + var bodyB = fixtureB.GetBody(); + if (bodyA.GetType() != b2Body.b2_dynamicBody || bodyA.IsBullet() || bodyB.GetType() != b2Body.b2_dynamicBody || bodyB.IsBullet()) { + this.m_flags |= b2Contact.e_continuousFlag; + } + this.m_fixtureA = fixtureA; + this.m_fixtureB = fixtureB; + this.m_manifold.m_pointCount = 0; + this.m_prev = null; + this.m_next = null; + this.m_nodeA.contact = null; + this.m_nodeA.prev = null; + this.m_nodeA.next = null; + this.m_nodeA.other = null; + this.m_nodeB.contact = null; + this.m_nodeB.prev = null; + this.m_nodeB.next = null; + this.m_nodeB.other = null; + } + b2Contact.prototype.Update = function (listener) { + var tManifold = this.m_oldManifold; + this.m_oldManifold = this.m_manifold; + this.m_manifold = tManifold; + this.m_flags |= b2Contact.e_enabledFlag; + var touching = false; + var wasTouching = (this.m_flags & b2Contact.e_touchingFlag) == b2Contact.e_touchingFlag; + var bodyA = this.m_fixtureA.m_body; + var bodyB = this.m_fixtureB.m_body; + var aabbOverlap = this.m_fixtureA.m_aabb.TestOverlap(this.m_fixtureB.m_aabb); + if (this.m_flags & b2Contact.e_sensorFlag) { + if (aabbOverlap) { + var shapeA = this.m_fixtureA.GetShape(); + var shapeB = this.m_fixtureB.GetShape(); + var xfA = bodyA.GetTransform(); + var xfB = bodyB.GetTransform(); + touching = b2Shape.TestOverlap(shapeA, xfA, shapeB, xfB); + } + this.m_manifold.m_pointCount = 0; + } + else { + if (bodyA.GetType() != b2Body.b2_dynamicBody || bodyA.IsBullet() || bodyB.GetType() != b2Body.b2_dynamicBody || bodyB.IsBullet()) { + this.m_flags |= b2Contact.e_continuousFlag; + } + else { + this.m_flags &= ~b2Contact.e_continuousFlag; + } + if (aabbOverlap) { + this.Evaluate(); + touching = this.m_manifold.m_pointCount > 0; + for (var i = 0; i < this.m_manifold.m_pointCount; ++i) { + var mp2 = this.m_manifold.m_points[i]; + mp2.m_normalImpulse = 0.0; + mp2.m_tangentImpulse = 0.0; + var id2 = mp2.m_id; + for (var j = 0; j < this.m_oldManifold.m_pointCount; ++j) { + var mp1 = this.m_oldManifold.m_points[j]; + if (mp1.m_id.key == id2.key) { + mp2.m_normalImpulse = mp1.m_normalImpulse; + mp2.m_tangentImpulse = mp1.m_tangentImpulse; + break; + } + } + } + } + else { + this.m_manifold.m_pointCount = 0; + } + if (touching != wasTouching) { + bodyA.SetAwake(true); + bodyB.SetAwake(true); + } + } + if (touching) { + this.m_flags |= b2Contact.e_touchingFlag; + } + else { + this.m_flags &= ~b2Contact.e_touchingFlag; + } + if (wasTouching == false && touching == true) { + listener.BeginContact(this); + } + if (wasTouching == true && touching == false) { + listener.EndContact(this); + } + if ((this.m_flags & b2Contact.e_sensorFlag) == 0) { + listener.PreSolve(this, this.m_oldManifold); + } + } + b2Contact.prototype.Evaluate = function () {} + b2Contact.prototype.ComputeTOI = function (sweepA, sweepB) { + b2Contact.s_input.proxyA.Set(this.m_fixtureA.GetShape()); + b2Contact.s_input.proxyB.Set(this.m_fixtureB.GetShape()); + b2Contact.s_input.sweepA = sweepA; + b2Contact.s_input.sweepB = sweepB; + b2Contact.s_input.tolerance = b2Settings.b2_linearSlop; + return b2TimeOfImpact.TimeOfImpact(b2Contact.s_input); + } + Box2D.postDefs.push(function () { + Box2D.Dynamics.Contacts.b2Contact.e_sensorFlag = 0x0001; + Box2D.Dynamics.Contacts.b2Contact.e_continuousFlag = 0x0002; + Box2D.Dynamics.Contacts.b2Contact.e_islandFlag = 0x0004; + Box2D.Dynamics.Contacts.b2Contact.e_toiFlag = 0x0008; + Box2D.Dynamics.Contacts.b2Contact.e_touchingFlag = 0x0010; + Box2D.Dynamics.Contacts.b2Contact.e_enabledFlag = 0x0020; + Box2D.Dynamics.Contacts.b2Contact.e_filterFlag = 0x0040; + Box2D.Dynamics.Contacts.b2Contact.s_input = new b2TOIInput(); + }); + b2ContactConstraint.b2ContactConstraint = function () { + this.localPlaneNormal = new b2Vec2(); + this.localPoint = new b2Vec2(); + this.normal = new b2Vec2(); + this.normalMass = new b2Mat22(); + this.K = new b2Mat22(); + }; + b2ContactConstraint.prototype.b2ContactConstraint = function () { + this.points = new Vector(b2Settings.b2_maxManifoldPoints); + for (var i = 0; i < b2Settings.b2_maxManifoldPoints; i++) { + this.points[i] = new b2ContactConstraintPoint(); + } + } + b2ContactConstraintPoint.b2ContactConstraintPoint = function () { + this.localPoint = new b2Vec2(); + this.rA = new b2Vec2(); + this.rB = new b2Vec2(); + }; + b2ContactEdge.b2ContactEdge = function () {}; + b2ContactFactory.b2ContactFactory = function () {}; + b2ContactFactory.prototype.b2ContactFactory = function (allocator) { + this.m_allocator = allocator; + this.InitializeRegisters(); + } + b2ContactFactory.prototype.AddType = function (createFcn, destroyFcn, type1, type2) { + if (type1 === undefined) type1 = 0; + if (type2 === undefined) type2 = 0; + this.m_registers[type1][type2].createFcn = createFcn; + this.m_registers[type1][type2].destroyFcn = destroyFcn; + this.m_registers[type1][type2].primary = true; + if (type1 != type2) { + this.m_registers[type2][type1].createFcn = createFcn; + this.m_registers[type2][type1].destroyFcn = destroyFcn; + this.m_registers[type2][type1].primary = false; + } + } + b2ContactFactory.prototype.InitializeRegisters = function () { + this.m_registers = new Vector(b2Shape.e_shapeTypeCount); + for (var i = 0; i < b2Shape.e_shapeTypeCount; i++) { + this.m_registers[i] = new Vector(b2Shape.e_shapeTypeCount); + for (var j = 0; j < b2Shape.e_shapeTypeCount; j++) { + this.m_registers[i][j] = new b2ContactRegister(); + } + } + this.AddType(b2CircleContact.Create, b2CircleContact.Destroy, b2Shape.e_circleShape, b2Shape.e_circleShape); + this.AddType(b2PolyAndCircleContact.Create, b2PolyAndCircleContact.Destroy, b2Shape.e_polygonShape, b2Shape.e_circleShape); + this.AddType(b2PolygonContact.Create, b2PolygonContact.Destroy, b2Shape.e_polygonShape, b2Shape.e_polygonShape); + this.AddType(b2EdgeAndCircleContact.Create, b2EdgeAndCircleContact.Destroy, b2Shape.e_edgeShape, b2Shape.e_circleShape); + this.AddType(b2PolyAndEdgeContact.Create, b2PolyAndEdgeContact.Destroy, b2Shape.e_polygonShape, b2Shape.e_edgeShape); + } + b2ContactFactory.prototype.Create = function (fixtureA, fixtureB) { + var type1 = parseInt(fixtureA.GetType()); + var type2 = parseInt(fixtureB.GetType()); + var reg = this.m_registers[type1][type2]; + var c; + if (reg.pool) { + c = reg.pool; + reg.pool = c.m_next; + reg.poolCount--; + c.Reset(fixtureA, fixtureB); + return c; + } + var createFcn = reg.createFcn; + if (createFcn != null) { + if (reg.primary) { + c = createFcn(this.m_allocator); + c.Reset(fixtureA, fixtureB); + return c; + } + else { + c = createFcn(this.m_allocator); + c.Reset(fixtureB, fixtureA); + return c; + } + } + else { + return null; + } + } + b2ContactFactory.prototype.Destroy = function (contact) { + if (contact.m_manifold.m_pointCount > 0) { + contact.m_fixtureA.m_body.SetAwake(true); + contact.m_fixtureB.m_body.SetAwake(true); + } + var type1 = parseInt(contact.m_fixtureA.GetType()); + var type2 = parseInt(contact.m_fixtureB.GetType()); + var reg = this.m_registers[type1][type2]; + if (true) { + reg.poolCount++; + contact.m_next = reg.pool; + reg.pool = contact; + } + var destroyFcn = reg.destroyFcn; + destroyFcn(contact, this.m_allocator); + } + b2ContactRegister.b2ContactRegister = function () {}; + b2ContactResult.b2ContactResult = function () { + this.position = new b2Vec2(); + this.normal = new b2Vec2(); + this.id = new b2ContactID(); + }; + b2ContactSolver.b2ContactSolver = function () { + this.m_step = new b2TimeStep(); + this.m_constraints = new Vector(); + }; + b2ContactSolver.prototype.b2ContactSolver = function () {} + b2ContactSolver.prototype.Initialize = function (step, contacts, contactCount, allocator) { + if (contactCount === undefined) contactCount = 0; + var contact; + this.m_step.Set(step); + this.m_allocator = allocator; + var i = 0; + var tVec; + var tMat; + this.m_constraintCount = contactCount; + while (this.m_constraints.length < this.m_constraintCount) { + this.m_constraints[this.m_constraints.length] = new b2ContactConstraint(); + } + for (i = 0; + i < contactCount; ++i) { + contact = contacts[i]; + var fixtureA = contact.m_fixtureA; + var fixtureB = contact.m_fixtureB; + var shapeA = fixtureA.m_shape; + var shapeB = fixtureB.m_shape; + var radiusA = shapeA.m_radius; + var radiusB = shapeB.m_radius; + var bodyA = fixtureA.m_body; + var bodyB = fixtureB.m_body; + var manifold = contact.GetManifold(); + var friction = b2Settings.b2MixFriction(fixtureA.GetFriction(), fixtureB.GetFriction()); + var restitution = b2Settings.b2MixRestitution(fixtureA.GetRestitution(), fixtureB.GetRestitution()); + var vAX = bodyA.m_linearVelocity.x; + var vAY = bodyA.m_linearVelocity.y; + var vBX = bodyB.m_linearVelocity.x; + var vBY = bodyB.m_linearVelocity.y; + var wA = bodyA.m_angularVelocity; + var wB = bodyB.m_angularVelocity; + b2Settings.b2Assert(manifold.m_pointCount > 0); + b2ContactSolver.s_worldManifold.Initialize(manifold, bodyA.m_xf, radiusA, bodyB.m_xf, radiusB); + var normalX = b2ContactSolver.s_worldManifold.m_normal.x; + var normalY = b2ContactSolver.s_worldManifold.m_normal.y; + var cc = this.m_constraints[i]; + cc.bodyA = bodyA; + cc.bodyB = bodyB; + cc.manifold = manifold; + cc.normal.x = normalX; + cc.normal.y = normalY; + cc.pointCount = manifold.m_pointCount; + cc.friction = friction; + cc.restitution = restitution; + cc.localPlaneNormal.x = manifold.m_localPlaneNormal.x; + cc.localPlaneNormal.y = manifold.m_localPlaneNormal.y; + cc.localPoint.x = manifold.m_localPoint.x; + cc.localPoint.y = manifold.m_localPoint.y; + cc.radius = radiusA + radiusB; + cc.type = manifold.m_type; + for (var k = 0; k < cc.pointCount; ++k) { + var cp = manifold.m_points[k]; + var ccp = cc.points[k]; + ccp.normalImpulse = cp.m_normalImpulse; + ccp.tangentImpulse = cp.m_tangentImpulse; + ccp.localPoint.SetV(cp.m_localPoint); + var rAX = ccp.rA.x = b2ContactSolver.s_worldManifold.m_points[k].x - bodyA.m_sweep.c.x; + var rAY = ccp.rA.y = b2ContactSolver.s_worldManifold.m_points[k].y - bodyA.m_sweep.c.y; + var rBX = ccp.rB.x = b2ContactSolver.s_worldManifold.m_points[k].x - bodyB.m_sweep.c.x; + var rBY = ccp.rB.y = b2ContactSolver.s_worldManifold.m_points[k].y - bodyB.m_sweep.c.y; + var rnA = rAX * normalY - rAY * normalX; + var rnB = rBX * normalY - rBY * normalX; + rnA *= rnA; + rnB *= rnB; + var kNormal = bodyA.m_invMass + bodyB.m_invMass + bodyA.m_invI * rnA + bodyB.m_invI * rnB; + ccp.normalMass = 1.0 / kNormal; + var kEqualized = bodyA.m_mass * bodyA.m_invMass + bodyB.m_mass * bodyB.m_invMass; + kEqualized += bodyA.m_mass * bodyA.m_invI * rnA + bodyB.m_mass * bodyB.m_invI * rnB; + ccp.equalizedMass = 1.0 / kEqualized; + var tangentX = normalY; + var tangentY = (-normalX); + var rtA = rAX * tangentY - rAY * tangentX; + var rtB = rBX * tangentY - rBY * tangentX; + rtA *= rtA; + rtB *= rtB; + var kTangent = bodyA.m_invMass + bodyB.m_invMass + bodyA.m_invI * rtA + bodyB.m_invI * rtB; + ccp.tangentMass = 1.0 / kTangent; + ccp.velocityBias = 0.0; + var tX = vBX + ((-wB * rBY)) - vAX - ((-wA * rAY)); + var tY = vBY + (wB * rBX) - vAY - (wA * rAX); + var vRel = cc.normal.x * tX + cc.normal.y * tY; + if (vRel < (-b2Settings.b2_velocityThreshold)) { + ccp.velocityBias += (-cc.restitution * vRel); + } + } + if (cc.pointCount == 2) { + var ccp1 = cc.points[0]; + var ccp2 = cc.points[1]; + var invMassA = bodyA.m_invMass; + var invIA = bodyA.m_invI; + var invMassB = bodyB.m_invMass; + var invIB = bodyB.m_invI; + var rn1A = ccp1.rA.x * normalY - ccp1.rA.y * normalX; + var rn1B = ccp1.rB.x * normalY - ccp1.rB.y * normalX; + var rn2A = ccp2.rA.x * normalY - ccp2.rA.y * normalX; + var rn2B = ccp2.rB.x * normalY - ccp2.rB.y * normalX; + var k11 = invMassA + invMassB + invIA * rn1A * rn1A + invIB * rn1B * rn1B; + var k22 = invMassA + invMassB + invIA * rn2A * rn2A + invIB * rn2B * rn2B; + var k12 = invMassA + invMassB + invIA * rn1A * rn2A + invIB * rn1B * rn2B; + var k_maxConditionNumber = 100.0; + if (k11 * k11 < k_maxConditionNumber * (k11 * k22 - k12 * k12)) { + cc.K.col1.Set(k11, k12); + cc.K.col2.Set(k12, k22); + cc.K.GetInverse(cc.normalMass); + } + else { + cc.pointCount = 1; + } + } + } + } + b2ContactSolver.prototype.InitVelocityConstraints = function (step) { + var tVec; + var tVec2; + var tMat; + for (var i = 0; i < this.m_constraintCount; ++i) { + var c = this.m_constraints[i]; + var bodyA = c.bodyA; + var bodyB = c.bodyB; + var invMassA = bodyA.m_invMass; + var invIA = bodyA.m_invI; + var invMassB = bodyB.m_invMass; + var invIB = bodyB.m_invI; + var normalX = c.normal.x; + var normalY = c.normal.y; + var tangentX = normalY; + var tangentY = (-normalX); + var tX = 0; + var j = 0; + var tCount = 0; + if (step.warmStarting) { + tCount = c.pointCount; + for (j = 0; + j < tCount; ++j) { + var ccp = c.points[j]; + ccp.normalImpulse *= step.dtRatio; + ccp.tangentImpulse *= step.dtRatio; + var PX = ccp.normalImpulse * normalX + ccp.tangentImpulse * tangentX; + var PY = ccp.normalImpulse * normalY + ccp.tangentImpulse * tangentY; + bodyA.m_angularVelocity -= invIA * (ccp.rA.x * PY - ccp.rA.y * PX); + bodyA.m_linearVelocity.x -= invMassA * PX; + bodyA.m_linearVelocity.y -= invMassA * PY; + bodyB.m_angularVelocity += invIB * (ccp.rB.x * PY - ccp.rB.y * PX); + bodyB.m_linearVelocity.x += invMassB * PX; + bodyB.m_linearVelocity.y += invMassB * PY; + } + } + else { + tCount = c.pointCount; + for (j = 0; + j < tCount; ++j) { + var ccp2 = c.points[j]; + ccp2.normalImpulse = 0.0; + ccp2.tangentImpulse = 0.0; + } + } + } + } + b2ContactSolver.prototype.SolveVelocityConstraints = function () { + var j = 0; + var ccp; + var rAX = 0; + var rAY = 0; + var rBX = 0; + var rBY = 0; + var dvX = 0; + var dvY = 0; + var vn = 0; + var vt = 0; + var lambda = 0; + var maxFriction = 0; + var newImpulse = 0; + var PX = 0; + var PY = 0; + var dX = 0; + var dY = 0; + var P1X = 0; + var P1Y = 0; + var P2X = 0; + var P2Y = 0; + var tMat; + var tVec; + for (var i = 0; i < this.m_constraintCount; ++i) { + var c = this.m_constraints[i]; + var bodyA = c.bodyA; + var bodyB = c.bodyB; + var wA = bodyA.m_angularVelocity; + var wB = bodyB.m_angularVelocity; + var vA = bodyA.m_linearVelocity; + var vB = bodyB.m_linearVelocity; + var invMassA = bodyA.m_invMass; + var invIA = bodyA.m_invI; + var invMassB = bodyB.m_invMass; + var invIB = bodyB.m_invI; + var normalX = c.normal.x; + var normalY = c.normal.y; + var tangentX = normalY; + var tangentY = (-normalX); + var friction = c.friction; + var tX = 0; + for (j = 0; + j < c.pointCount; j++) { + ccp = c.points[j]; + dvX = vB.x - wB * ccp.rB.y - vA.x + wA * ccp.rA.y; + dvY = vB.y + wB * ccp.rB.x - vA.y - wA * ccp.rA.x; + vt = dvX * tangentX + dvY * tangentY; + lambda = ccp.tangentMass * (-vt); + maxFriction = friction * ccp.normalImpulse; + newImpulse = b2Math.Clamp(ccp.tangentImpulse + lambda, (-maxFriction), maxFriction); + lambda = newImpulse - ccp.tangentImpulse; + PX = lambda * tangentX; + PY = lambda * tangentY; + vA.x -= invMassA * PX; + vA.y -= invMassA * PY; + wA -= invIA * (ccp.rA.x * PY - ccp.rA.y * PX); + vB.x += invMassB * PX; + vB.y += invMassB * PY; + wB += invIB * (ccp.rB.x * PY - ccp.rB.y * PX); + ccp.tangentImpulse = newImpulse; + } + var tCount = parseInt(c.pointCount); + if (c.pointCount == 1) { + ccp = c.points[0]; + dvX = vB.x + ((-wB * ccp.rB.y)) - vA.x - ((-wA * ccp.rA.y)); + dvY = vB.y + (wB * ccp.rB.x) - vA.y - (wA * ccp.rA.x); + vn = dvX * normalX + dvY * normalY; + lambda = (-ccp.normalMass * (vn - ccp.velocityBias)); + newImpulse = ccp.normalImpulse + lambda; + newImpulse = newImpulse > 0 ? newImpulse : 0.0; + lambda = newImpulse - ccp.normalImpulse; + PX = lambda * normalX; + PY = lambda * normalY; + vA.x -= invMassA * PX; + vA.y -= invMassA * PY; + wA -= invIA * (ccp.rA.x * PY - ccp.rA.y * PX); + vB.x += invMassB * PX; + vB.y += invMassB * PY; + wB += invIB * (ccp.rB.x * PY - ccp.rB.y * PX); + ccp.normalImpulse = newImpulse; + } + else { + var cp1 = c.points[0]; + var cp2 = c.points[1]; + var aX = cp1.normalImpulse; + var aY = cp2.normalImpulse; + var dv1X = vB.x - wB * cp1.rB.y - vA.x + wA * cp1.rA.y; + var dv1Y = vB.y + wB * cp1.rB.x - vA.y - wA * cp1.rA.x; + var dv2X = vB.x - wB * cp2.rB.y - vA.x + wA * cp2.rA.y; + var dv2Y = vB.y + wB * cp2.rB.x - vA.y - wA * cp2.rA.x; + var vn1 = dv1X * normalX + dv1Y * normalY; + var vn2 = dv2X * normalX + dv2Y * normalY; + var bX = vn1 - cp1.velocityBias; + var bY = vn2 - cp2.velocityBias; + tMat = c.K; + bX -= tMat.col1.x * aX + tMat.col2.x * aY; + bY -= tMat.col1.y * aX + tMat.col2.y * aY; + var k_errorTol = 0.001; + for (;;) { + tMat = c.normalMass; + var xX = (-(tMat.col1.x * bX + tMat.col2.x * bY)); + var xY = (-(tMat.col1.y * bX + tMat.col2.y * bY)); + if (xX >= 0.0 && xY >= 0.0) { + dX = xX - aX; + dY = xY - aY; + P1X = dX * normalX; + P1Y = dX * normalY; + P2X = dY * normalX; + P2Y = dY * normalY; + vA.x -= invMassA * (P1X + P2X); + vA.y -= invMassA * (P1Y + P2Y); + wA -= invIA * (cp1.rA.x * P1Y - cp1.rA.y * P1X + cp2.rA.x * P2Y - cp2.rA.y * P2X); + vB.x += invMassB * (P1X + P2X); + vB.y += invMassB * (P1Y + P2Y); + wB += invIB * (cp1.rB.x * P1Y - cp1.rB.y * P1X + cp2.rB.x * P2Y - cp2.rB.y * P2X); + cp1.normalImpulse = xX; + cp2.normalImpulse = xY; + break; + } + xX = (-cp1.normalMass * bX); + xY = 0.0; + vn1 = 0.0; + vn2 = c.K.col1.y * xX + bY; + if (xX >= 0.0 && vn2 >= 0.0) { + dX = xX - aX; + dY = xY - aY; + P1X = dX * normalX; + P1Y = dX * normalY; + P2X = dY * normalX; + P2Y = dY * normalY; + vA.x -= invMassA * (P1X + P2X); + vA.y -= invMassA * (P1Y + P2Y); + wA -= invIA * (cp1.rA.x * P1Y - cp1.rA.y * P1X + cp2.rA.x * P2Y - cp2.rA.y * P2X); + vB.x += invMassB * (P1X + P2X); + vB.y += invMassB * (P1Y + P2Y); + wB += invIB * (cp1.rB.x * P1Y - cp1.rB.y * P1X + cp2.rB.x * P2Y - cp2.rB.y * P2X); + cp1.normalImpulse = xX; + cp2.normalImpulse = xY; + break; + } + xX = 0.0; + xY = (-cp2.normalMass * bY); + vn1 = c.K.col2.x * xY + bX; + vn2 = 0.0; + if (xY >= 0.0 && vn1 >= 0.0) { + dX = xX - aX; + dY = xY - aY; + P1X = dX * normalX; + P1Y = dX * normalY; + P2X = dY * normalX; + P2Y = dY * normalY; + vA.x -= invMassA * (P1X + P2X); + vA.y -= invMassA * (P1Y + P2Y); + wA -= invIA * (cp1.rA.x * P1Y - cp1.rA.y * P1X + cp2.rA.x * P2Y - cp2.rA.y * P2X); + vB.x += invMassB * (P1X + P2X); + vB.y += invMassB * (P1Y + P2Y); + wB += invIB * (cp1.rB.x * P1Y - cp1.rB.y * P1X + cp2.rB.x * P2Y - cp2.rB.y * P2X); + cp1.normalImpulse = xX; + cp2.normalImpulse = xY; + break; + } + xX = 0.0; + xY = 0.0; + vn1 = bX; + vn2 = bY; + if (vn1 >= 0.0 && vn2 >= 0.0) { + dX = xX - aX; + dY = xY - aY; + P1X = dX * normalX; + P1Y = dX * normalY; + P2X = dY * normalX; + P2Y = dY * normalY; + vA.x -= invMassA * (P1X + P2X); + vA.y -= invMassA * (P1Y + P2Y); + wA -= invIA * (cp1.rA.x * P1Y - cp1.rA.y * P1X + cp2.rA.x * P2Y - cp2.rA.y * P2X); + vB.x += invMassB * (P1X + P2X); + vB.y += invMassB * (P1Y + P2Y); + wB += invIB * (cp1.rB.x * P1Y - cp1.rB.y * P1X + cp2.rB.x * P2Y - cp2.rB.y * P2X); + cp1.normalImpulse = xX; + cp2.normalImpulse = xY; + break; + } + break; + } + } + bodyA.m_angularVelocity = wA; + bodyB.m_angularVelocity = wB; + } + } + b2ContactSolver.prototype.FinalizeVelocityConstraints = function () { + for (var i = 0; i < this.m_constraintCount; ++i) { + var c = this.m_constraints[i]; + var m = c.manifold; + for (var j = 0; j < c.pointCount; ++j) { + var point1 = m.m_points[j]; + var point2 = c.points[j]; + point1.m_normalImpulse = point2.normalImpulse; + point1.m_tangentImpulse = point2.tangentImpulse; + } + } + } + b2ContactSolver.prototype.SolvePositionConstraints = function (baumgarte) { + if (baumgarte === undefined) baumgarte = 0; + var minSeparation = 0.0; + for (var i = 0; i < this.m_constraintCount; i++) { + var c = this.m_constraints[i]; + var bodyA = c.bodyA; + var bodyB = c.bodyB; + var invMassA = bodyA.m_mass * bodyA.m_invMass; + var invIA = bodyA.m_mass * bodyA.m_invI; + var invMassB = bodyB.m_mass * bodyB.m_invMass; + var invIB = bodyB.m_mass * bodyB.m_invI; + b2ContactSolver.s_psm.Initialize(c); + var normal = b2ContactSolver.s_psm.m_normal; + for (var j = 0; j < c.pointCount; j++) { + var ccp = c.points[j]; + var point = b2ContactSolver.s_psm.m_points[j]; + var separation = b2ContactSolver.s_psm.m_separations[j]; + var rAX = point.x - bodyA.m_sweep.c.x; + var rAY = point.y - bodyA.m_sweep.c.y; + var rBX = point.x - bodyB.m_sweep.c.x; + var rBY = point.y - bodyB.m_sweep.c.y; + minSeparation = minSeparation < separation ? minSeparation : separation; + var C = b2Math.Clamp(baumgarte * (separation + b2Settings.b2_linearSlop), (-b2Settings.b2_maxLinearCorrection), 0.0); + var impulse = (-ccp.equalizedMass * C); + var PX = impulse * normal.x; + var PY = impulse * normal.y;bodyA.m_sweep.c.x -= invMassA * PX; + bodyA.m_sweep.c.y -= invMassA * PY; + bodyA.m_sweep.a -= invIA * (rAX * PY - rAY * PX); + bodyA.SynchronizeTransform(); + bodyB.m_sweep.c.x += invMassB * PX; + bodyB.m_sweep.c.y += invMassB * PY; + bodyB.m_sweep.a += invIB * (rBX * PY - rBY * PX); + bodyB.SynchronizeTransform(); + } + } + return minSeparation > (-1.5 * b2Settings.b2_linearSlop); + } + Box2D.postDefs.push(function () { + Box2D.Dynamics.Contacts.b2ContactSolver.s_worldManifold = new b2WorldManifold(); + Box2D.Dynamics.Contacts.b2ContactSolver.s_psm = new b2PositionSolverManifold(); + }); + Box2D.inherit(b2EdgeAndCircleContact, Box2D.Dynamics.Contacts.b2Contact); + b2EdgeAndCircleContact.prototype.__super = Box2D.Dynamics.Contacts.b2Contact.prototype; + b2EdgeAndCircleContact.b2EdgeAndCircleContact = function () { + Box2D.Dynamics.Contacts.b2Contact.b2Contact.apply(this, arguments); + }; + b2EdgeAndCircleContact.Create = function (allocator) { + return new b2EdgeAndCircleContact(); + } + b2EdgeAndCircleContact.Destroy = function (contact, allocator) {} + b2EdgeAndCircleContact.prototype.Reset = function (fixtureA, fixtureB) { + this.__super.Reset.call(this, fixtureA, fixtureB); + } + b2EdgeAndCircleContact.prototype.Evaluate = function () { + var bA = this.m_fixtureA.GetBody(); + var bB = this.m_fixtureB.GetBody(); + this.b2CollideEdgeAndCircle(this.m_manifold, (this.m_fixtureA.GetShape() instanceof b2EdgeShape ? this.m_fixtureA.GetShape() : null), bA.m_xf, (this.m_fixtureB.GetShape() instanceof b2CircleShape ? this.m_fixtureB.GetShape() : null), bB.m_xf); + } + b2EdgeAndCircleContact.prototype.b2CollideEdgeAndCircle = function (manifold, edge, xf1, circle, xf2) {} + Box2D.inherit(b2NullContact, Box2D.Dynamics.Contacts.b2Contact); + b2NullContact.prototype.__super = Box2D.Dynamics.Contacts.b2Contact.prototype; + b2NullContact.b2NullContact = function () { + Box2D.Dynamics.Contacts.b2Contact.b2Contact.apply(this, arguments); + }; + b2NullContact.prototype.b2NullContact = function () { + this.__super.b2Contact.call(this); + } + b2NullContact.prototype.Evaluate = function () {} + Box2D.inherit(b2PolyAndCircleContact, Box2D.Dynamics.Contacts.b2Contact); + b2PolyAndCircleContact.prototype.__super = Box2D.Dynamics.Contacts.b2Contact.prototype; + b2PolyAndCircleContact.b2PolyAndCircleContact = function () { + Box2D.Dynamics.Contacts.b2Contact.b2Contact.apply(this, arguments); + }; + b2PolyAndCircleContact.Create = function (allocator) { + return new b2PolyAndCircleContact(); + } + b2PolyAndCircleContact.Destroy = function (contact, allocator) {} + b2PolyAndCircleContact.prototype.Reset = function (fixtureA, fixtureB) { + this.__super.Reset.call(this, fixtureA, fixtureB); + b2Settings.b2Assert(fixtureA.GetType() == b2Shape.e_polygonShape); + b2Settings.b2Assert(fixtureB.GetType() == b2Shape.e_circleShape); + } + b2PolyAndCircleContact.prototype.Evaluate = function () { + var bA = this.m_fixtureA.m_body; + var bB = this.m_fixtureB.m_body; + b2Collision.CollidePolygonAndCircle(this.m_manifold, (this.m_fixtureA.GetShape() instanceof b2PolygonShape ? this.m_fixtureA.GetShape() : null), bA.m_xf, (this.m_fixtureB.GetShape() instanceof b2CircleShape ? this.m_fixtureB.GetShape() : null), bB.m_xf); + } + Box2D.inherit(b2PolyAndEdgeContact, Box2D.Dynamics.Contacts.b2Contact); + b2PolyAndEdgeContact.prototype.__super = Box2D.Dynamics.Contacts.b2Contact.prototype; + b2PolyAndEdgeContact.b2PolyAndEdgeContact = function () { + Box2D.Dynamics.Contacts.b2Contact.b2Contact.apply(this, arguments); + }; + b2PolyAndEdgeContact.Create = function (allocator) { + return new b2PolyAndEdgeContact(); + } + b2PolyAndEdgeContact.Destroy = function (contact, allocator) {} + b2PolyAndEdgeContact.prototype.Reset = function (fixtureA, fixtureB) { + this.__super.Reset.call(this, fixtureA, fixtureB); + b2Settings.b2Assert(fixtureA.GetType() == b2Shape.e_polygonShape); + b2Settings.b2Assert(fixtureB.GetType() == b2Shape.e_edgeShape); + } + b2PolyAndEdgeContact.prototype.Evaluate = function () { + var bA = this.m_fixtureA.GetBody(); + var bB = this.m_fixtureB.GetBody(); + this.b2CollidePolyAndEdge(this.m_manifold, (this.m_fixtureA.GetShape() instanceof b2PolygonShape ? this.m_fixtureA.GetShape() : null), bA.m_xf, (this.m_fixtureB.GetShape() instanceof b2EdgeShape ? this.m_fixtureB.GetShape() : null), bB.m_xf); + } + b2PolyAndEdgeContact.prototype.b2CollidePolyAndEdge = function (manifold, polygon, xf1, edge, xf2) {} + Box2D.inherit(b2PolygonContact, Box2D.Dynamics.Contacts.b2Contact); + b2PolygonContact.prototype.__super = Box2D.Dynamics.Contacts.b2Contact.prototype; + b2PolygonContact.b2PolygonContact = function () { + Box2D.Dynamics.Contacts.b2Contact.b2Contact.apply(this, arguments); + }; + b2PolygonContact.Create = function (allocator) { + return new b2PolygonContact(); + } + b2PolygonContact.Destroy = function (contact, allocator) {} + b2PolygonContact.prototype.Reset = function (fixtureA, fixtureB) { + this.__super.Reset.call(this, fixtureA, fixtureB); + } + b2PolygonContact.prototype.Evaluate = function () { + var bA = this.m_fixtureA.GetBody(); + var bB = this.m_fixtureB.GetBody(); + b2Collision.CollidePolygons(this.m_manifold, (this.m_fixtureA.GetShape() instanceof b2PolygonShape ? this.m_fixtureA.GetShape() : null), bA.m_xf, (this.m_fixtureB.GetShape() instanceof b2PolygonShape ? this.m_fixtureB.GetShape() : null), bB.m_xf); + } + b2PositionSolverManifold.b2PositionSolverManifold = function () {}; + b2PositionSolverManifold.prototype.b2PositionSolverManifold = function () { + this.m_normal = new b2Vec2(); + this.m_separations = new Vector_a2j_Number(b2Settings.b2_maxManifoldPoints); + this.m_points = new Vector(b2Settings.b2_maxManifoldPoints); + for (var i = 0; i < b2Settings.b2_maxManifoldPoints; i++) { + this.m_points[i] = new b2Vec2(); + } + } + b2PositionSolverManifold.prototype.Initialize = function (cc) { + b2Settings.b2Assert(cc.pointCount > 0); + var i = 0; + var clipPointX = 0; + var clipPointY = 0; + var tMat; + var tVec; + var planePointX = 0; + var planePointY = 0; + switch (cc.type) { + case b2Manifold.e_circles: + { + tMat = cc.bodyA.m_xf.R; + tVec = cc.localPoint; + var pointAX = cc.bodyA.m_xf.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + var pointAY = cc.bodyA.m_xf.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tMat = cc.bodyB.m_xf.R; + tVec = cc.points[0].localPoint; + var pointBX = cc.bodyB.m_xf.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + var pointBY = cc.bodyB.m_xf.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + var dX = pointBX - pointAX; + var dY = pointBY - pointAY; + var d2 = dX * dX + dY * dY; + if (d2 > Number.MIN_VALUE * Number.MIN_VALUE) { + var d = Math.sqrt(d2); + this.m_normal.x = dX / d; + this.m_normal.y = dY / d; + } + else { + this.m_normal.x = 1.0; + this.m_normal.y = 0.0; + } + this.m_points[0].x = 0.5 * (pointAX + pointBX); + this.m_points[0].y = 0.5 * (pointAY + pointBY); + this.m_separations[0] = dX * this.m_normal.x + dY * this.m_normal.y - cc.radius; + } + break; + case b2Manifold.e_faceA: + { + tMat = cc.bodyA.m_xf.R; + tVec = cc.localPlaneNormal; + this.m_normal.x = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + this.m_normal.y = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + tMat = cc.bodyA.m_xf.R; + tVec = cc.localPoint; + planePointX = cc.bodyA.m_xf.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + planePointY = cc.bodyA.m_xf.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tMat = cc.bodyB.m_xf.R; + for (i = 0; + i < cc.pointCount; ++i) { + tVec = cc.points[i].localPoint; + clipPointX = cc.bodyB.m_xf.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + clipPointY = cc.bodyB.m_xf.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + this.m_separations[i] = (clipPointX - planePointX) * this.m_normal.x + (clipPointY - planePointY) * this.m_normal.y - cc.radius; + this.m_points[i].x = clipPointX; + this.m_points[i].y = clipPointY; + } + } + break; + case b2Manifold.e_faceB: + { + tMat = cc.bodyB.m_xf.R; + tVec = cc.localPlaneNormal; + this.m_normal.x = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + this.m_normal.y = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + tMat = cc.bodyB.m_xf.R; + tVec = cc.localPoint; + planePointX = cc.bodyB.m_xf.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + planePointY = cc.bodyB.m_xf.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + tMat = cc.bodyA.m_xf.R; + for (i = 0; + i < cc.pointCount; ++i) { + tVec = cc.points[i].localPoint; + clipPointX = cc.bodyA.m_xf.position.x + (tMat.col1.x * tVec.x + tMat.col2.x * tVec.y); + clipPointY = cc.bodyA.m_xf.position.y + (tMat.col1.y * tVec.x + tMat.col2.y * tVec.y); + this.m_separations[i] = (clipPointX - planePointX) * this.m_normal.x + (clipPointY - planePointY) * this.m_normal.y - cc.radius; + this.m_points[i].Set(clipPointX, clipPointY); + } + this.m_normal.x *= (-1); + this.m_normal.y *= (-1); + } + break; + } + } + Box2D.postDefs.push(function () { + Box2D.Dynamics.Contacts.b2PositionSolverManifold.circlePointA = new b2Vec2(); + Box2D.Dynamics.Contacts.b2PositionSolverManifold.circlePointB = new b2Vec2(); + }); +})(); +(function () { + var b2Body = Box2D.Dynamics.b2Body, + b2BodyDef = Box2D.Dynamics.b2BodyDef, + b2ContactFilter = Box2D.Dynamics.b2ContactFilter, + b2ContactImpulse = Box2D.Dynamics.b2ContactImpulse, + b2ContactListener = Box2D.Dynamics.b2ContactListener, + b2ContactManager = Box2D.Dynamics.b2ContactManager, + b2DebugDraw = Box2D.Dynamics.b2DebugDraw, + b2DestructionListener = Box2D.Dynamics.b2DestructionListener, + b2FilterData = Box2D.Dynamics.b2FilterData, + b2Fixture = Box2D.Dynamics.b2Fixture, + b2FixtureDef = Box2D.Dynamics.b2FixtureDef, + b2Island = Box2D.Dynamics.b2Island, + b2TimeStep = Box2D.Dynamics.b2TimeStep, + b2World = Box2D.Dynamics.b2World, + b2Mat22 = Box2D.Common.Math.b2Mat22, + b2Mat33 = Box2D.Common.Math.b2Mat33, + b2Math = Box2D.Common.Math.b2Math, + b2Sweep = Box2D.Common.Math.b2Sweep, + b2Transform = Box2D.Common.Math.b2Transform, + b2Vec2 = Box2D.Common.Math.b2Vec2, + b2Vec3 = Box2D.Common.Math.b2Vec3, + b2Color = Box2D.Common.b2Color, + b2internal = Box2D.Common.b2internal, + b2Settings = Box2D.Common.b2Settings, + b2CircleShape = Box2D.Collision.Shapes.b2CircleShape, + b2EdgeChainDef = Box2D.Collision.Shapes.b2EdgeChainDef, + b2EdgeShape = Box2D.Collision.Shapes.b2EdgeShape, + b2MassData = Box2D.Collision.Shapes.b2MassData, + b2PolygonShape = Box2D.Collision.Shapes.b2PolygonShape, + b2Shape = Box2D.Collision.Shapes.b2Shape, + b2BuoyancyController = Box2D.Dynamics.Controllers.b2BuoyancyController, + b2ConstantAccelController = Box2D.Dynamics.Controllers.b2ConstantAccelController, + b2ConstantForceController = Box2D.Dynamics.Controllers.b2ConstantForceController, + b2Controller = Box2D.Dynamics.Controllers.b2Controller, + b2ControllerEdge = Box2D.Dynamics.Controllers.b2ControllerEdge, + b2GravityController = Box2D.Dynamics.Controllers.b2GravityController, + b2TensorDampingController = Box2D.Dynamics.Controllers.b2TensorDampingController; + + Box2D.inherit(b2BuoyancyController, Box2D.Dynamics.Controllers.b2Controller); + b2BuoyancyController.prototype.__super = Box2D.Dynamics.Controllers.b2Controller.prototype; + b2BuoyancyController.b2BuoyancyController = function () { + Box2D.Dynamics.Controllers.b2Controller.b2Controller.apply(this, arguments); + this.normal = new b2Vec2(0, (-1)); + this.offset = 0; + this.density = 0; + this.velocity = new b2Vec2(0, 0); + this.linearDrag = 2; + this.angularDrag = 1; + this.useDensity = false; + this.useWorldGravity = true; + this.gravity = null; + }; + b2BuoyancyController.prototype.Step = function (step) { + if (!this.m_bodyList) return; + if (this.useWorldGravity) { + this.gravity = this.GetWorld().GetGravity().Copy(); + } + for (var i = this.m_bodyList; i; i = i.nextBody) { + var body = i.body; + if (body.IsAwake() == false) { + continue; + } + var areac = new b2Vec2(); + var massc = new b2Vec2(); + var area = 0.0; + var mass = 0.0; + for (var fixture = body.GetFixtureList(); fixture; fixture = fixture.GetNext()) { + var sc = new b2Vec2(); + var sarea = fixture.GetShape().ComputeSubmergedArea(this.normal, this.offset, body.GetTransform(), sc); + area += sarea; + areac.x += sarea * sc.x; + areac.y += sarea * sc.y; + var shapeDensity = 0; + if (this.useDensity) { + shapeDensity = 1; + } + else { + shapeDensity = 1; + } + mass += sarea * shapeDensity; + massc.x += sarea * sc.x * shapeDensity; + massc.y += sarea * sc.y * shapeDensity; + } + areac.x /= area; + areac.y /= area; + massc.x /= mass; + massc.y /= mass; + if (area < Number.MIN_VALUE) continue; + var buoyancyForce = this.gravity.GetNegative(); + buoyancyForce.Multiply(this.density * area); + body.ApplyForce(buoyancyForce, massc); + var dragForce = body.GetLinearVelocityFromWorldPoint(areac); + dragForce.Subtract(this.velocity); + dragForce.Multiply((-this.linearDrag * area)); + body.ApplyForce(dragForce, areac); + body.ApplyTorque((-body.GetInertia() / body.GetMass() * area * body.GetAngularVelocity() * this.angularDrag)); + } + } + b2BuoyancyController.prototype.Draw = function (debugDraw) { + var r = 1000; + var p1 = new b2Vec2(); + var p2 = new b2Vec2(); + p1.x = this.normal.x * this.offset + this.normal.y * r; + p1.y = this.normal.y * this.offset - this.normal.x * r; + p2.x = this.normal.x * this.offset - this.normal.y * r; + p2.y = this.normal.y * this.offset + this.normal.x * r; + var color = new b2Color(0, 0, 1); + debugDraw.DrawSegment(p1, p2, color); + } + Box2D.inherit(b2ConstantAccelController, Box2D.Dynamics.Controllers.b2Controller); + b2ConstantAccelController.prototype.__super = Box2D.Dynamics.Controllers.b2Controller.prototype; + b2ConstantAccelController.b2ConstantAccelController = function () { + Box2D.Dynamics.Controllers.b2Controller.b2Controller.apply(this, arguments); + this.A = new b2Vec2(0, 0); + }; + b2ConstantAccelController.prototype.Step = function (step) { + var smallA = new b2Vec2(this.A.x * step.dt, this.A.y * step.dt); + for (var i = this.m_bodyList; i; i = i.nextBody) { + var body = i.body; + if (!body.IsAwake()) continue; + body.SetLinearVelocity(new b2Vec2(body.GetLinearVelocity().x + smallA.x, body.GetLinearVelocity().y + smallA.y)); + } + } + Box2D.inherit(b2ConstantForceController, Box2D.Dynamics.Controllers.b2Controller); + b2ConstantForceController.prototype.__super = Box2D.Dynamics.Controllers.b2Controller.prototype; + b2ConstantForceController.b2ConstantForceController = function () { + Box2D.Dynamics.Controllers.b2Controller.b2Controller.apply(this, arguments); + this.F = new b2Vec2(0, 0); + }; + b2ConstantForceController.prototype.Step = function (step) { + for (var i = this.m_bodyList; i; i = i.nextBody) { + var body = i.body; + if (!body.IsAwake()) continue; + body.ApplyForce(this.F, body.GetWorldCenter()); + } + } + b2Controller.b2Controller = function () {}; + b2Controller.prototype.Step = function (step) {} + b2Controller.prototype.Draw = function (debugDraw) {} + b2Controller.prototype.AddBody = function (body) { + var edge = new b2ControllerEdge(); + edge.controller = this; + edge.body = body; + edge.nextBody = this.m_bodyList; + edge.prevBody = null; + this.m_bodyList = edge; + if (edge.nextBody) edge.nextBody.prevBody = edge; + this.m_bodyCount++; + edge.nextController = body.m_controllerList; + edge.prevController = null; + body.m_controllerList = edge; + if (edge.nextController) edge.nextController.prevController = edge; + body.m_controllerCount++; + } + b2Controller.prototype.RemoveBody = function (body) { + var edge = body.m_controllerList; + while (edge && edge.controller != this) + edge = edge.nextController; + if (edge.prevBody) edge.prevBody.nextBody = edge.nextBody; + if (edge.nextBody) edge.nextBody.prevBody = edge.prevBody; + if (edge.nextController) edge.nextController.prevController = edge.prevController; + if (edge.prevController) edge.prevController.nextController = edge.nextController; + if (this.m_bodyList == edge) this.m_bodyList = edge.nextBody; + if (body.m_controllerList == edge) body.m_controllerList = edge.nextController; + body.m_controllerCount--; + this.m_bodyCount--; + } + b2Controller.prototype.Clear = function () { + while (this.m_bodyList) + this.RemoveBody(this.m_bodyList.body); + } + b2Controller.prototype.GetNext = function () { + return this.m_next; + } + b2Controller.prototype.GetWorld = function () { + return this.m_world; + } + b2Controller.prototype.GetBodyList = function () { + return this.m_bodyList; + } + b2ControllerEdge.b2ControllerEdge = function () {}; + Box2D.inherit(b2GravityController, Box2D.Dynamics.Controllers.b2Controller); + b2GravityController.prototype.__super = Box2D.Dynamics.Controllers.b2Controller.prototype; + b2GravityController.b2GravityController = function () { + Box2D.Dynamics.Controllers.b2Controller.b2Controller.apply(this, arguments); + this.G = 1; + this.invSqr = true; + }; + b2GravityController.prototype.Step = function (step) { + var i = null; + var body1 = null; + var p1 = null; + var mass1 = 0; + var j = null; + var body2 = null; + var p2 = null; + var dx = 0; + var dy = 0; + var r2 = 0; + var f = null; + if (this.invSqr) { + for (i = this.m_bodyList; + i; i = i.nextBody) { + body1 = i.body; + p1 = body1.GetWorldCenter(); + mass1 = body1.GetMass(); + for (j = this.m_bodyList; + j != i; j = j.nextBody) { + body2 = j.body; + p2 = body2.GetWorldCenter(); + dx = p2.x - p1.x; + dy = p2.y - p1.y; + r2 = dx * dx + dy * dy; + if (r2 < Number.MIN_VALUE) continue; + f = new b2Vec2(dx, dy); + f.Multiply(this.G / r2 / Math.sqrt(r2) * mass1 * body2.GetMass()); + if (body1.IsAwake()) body1.ApplyForce(f, p1); + f.Multiply((-1)); + if (body2.IsAwake()) body2.ApplyForce(f, p2); + } + } + } + else { + for (i = this.m_bodyList; + i; i = i.nextBody) { + body1 = i.body; + p1 = body1.GetWorldCenter(); + mass1 = body1.GetMass(); + for (j = this.m_bodyList; + j != i; j = j.nextBody) { + body2 = j.body; + p2 = body2.GetWorldCenter(); + dx = p2.x - p1.x; + dy = p2.y - p1.y; + r2 = dx * dx + dy * dy; + if (r2 < Number.MIN_VALUE) continue; + f = new b2Vec2(dx, dy); + f.Multiply(this.G / r2 * mass1 * body2.GetMass()); + if (body1.IsAwake()) body1.ApplyForce(f, p1); + f.Multiply((-1)); + if (body2.IsAwake()) body2.ApplyForce(f, p2); + } + } + } + } + Box2D.inherit(b2TensorDampingController, Box2D.Dynamics.Controllers.b2Controller); + b2TensorDampingController.prototype.__super = Box2D.Dynamics.Controllers.b2Controller.prototype; + b2TensorDampingController.b2TensorDampingController = function () { + Box2D.Dynamics.Controllers.b2Controller.b2Controller.apply(this, arguments); + this.T = new b2Mat22(); + this.maxTimestep = 0; + }; + b2TensorDampingController.prototype.SetAxisAligned = function (xDamping, yDamping) { + if (xDamping === undefined) xDamping = 0; + if (yDamping === undefined) yDamping = 0; + this.T.col1.x = (-xDamping); + this.T.col1.y = 0; + this.T.col2.x = 0; + this.T.col2.y = (-yDamping); + if (xDamping > 0 || yDamping > 0) { + this.maxTimestep = 1 / Math.max(xDamping, yDamping); + } + else { + this.maxTimestep = 0; + } + } + b2TensorDampingController.prototype.Step = function (step) { + var timestep = step.dt; + if (timestep <= Number.MIN_VALUE) return; + if (timestep > this.maxTimestep && this.maxTimestep > 0) timestep = this.maxTimestep; + for (var i = this.m_bodyList; i; i = i.nextBody) { + var body = i.body; + if (!body.IsAwake()) { + continue; + } + var damping = body.GetWorldVector(b2Math.MulMV(this.T, body.GetLocalVector(body.GetLinearVelocity()))); + body.SetLinearVelocity(new b2Vec2(body.GetLinearVelocity().x + damping.x * timestep, body.GetLinearVelocity().y + damping.y * timestep)); + } + } +})(); +(function () { + var b2Color = Box2D.Common.b2Color, + b2internal = Box2D.Common.b2internal, + b2Settings = Box2D.Common.b2Settings, + b2Mat22 = Box2D.Common.Math.b2Mat22, + b2Mat33 = Box2D.Common.Math.b2Mat33, + b2Math = Box2D.Common.Math.b2Math, + b2Sweep = Box2D.Common.Math.b2Sweep, + b2Transform = Box2D.Common.Math.b2Transform, + b2Vec2 = Box2D.Common.Math.b2Vec2, + b2Vec3 = Box2D.Common.Math.b2Vec3, + b2DistanceJoint = Box2D.Dynamics.Joints.b2DistanceJoint, + b2DistanceJointDef = Box2D.Dynamics.Joints.b2DistanceJointDef, + b2FrictionJoint = Box2D.Dynamics.Joints.b2FrictionJoint, + b2FrictionJointDef = Box2D.Dynamics.Joints.b2FrictionJointDef, + b2GearJoint = Box2D.Dynamics.Joints.b2GearJoint, + b2GearJointDef = Box2D.Dynamics.Joints.b2GearJointDef, + b2Jacobian = Box2D.Dynamics.Joints.b2Jacobian, + b2Joint = Box2D.Dynamics.Joints.b2Joint, + b2JointDef = Box2D.Dynamics.Joints.b2JointDef, + b2JointEdge = Box2D.Dynamics.Joints.b2JointEdge, + b2LineJoint = Box2D.Dynamics.Joints.b2LineJoint, + b2LineJointDef = Box2D.Dynamics.Joints.b2LineJointDef, + b2MouseJoint = Box2D.Dynamics.Joints.b2MouseJoint, + b2MouseJointDef = Box2D.Dynamics.Joints.b2MouseJointDef, + b2PrismaticJoint = Box2D.Dynamics.Joints.b2PrismaticJoint, + b2PrismaticJointDef = Box2D.Dynamics.Joints.b2PrismaticJointDef, + b2PulleyJoint = Box2D.Dynamics.Joints.b2PulleyJoint, + b2PulleyJointDef = Box2D.Dynamics.Joints.b2PulleyJointDef, + b2RevoluteJoint = Box2D.Dynamics.Joints.b2RevoluteJoint, + b2RevoluteJointDef = Box2D.Dynamics.Joints.b2RevoluteJointDef, + b2WeldJoint = Box2D.Dynamics.Joints.b2WeldJoint, + b2WeldJointDef = Box2D.Dynamics.Joints.b2WeldJointDef, + b2Body = Box2D.Dynamics.b2Body, + b2BodyDef = Box2D.Dynamics.b2BodyDef, + b2ContactFilter = Box2D.Dynamics.b2ContactFilter, + b2ContactImpulse = Box2D.Dynamics.b2ContactImpulse, + b2ContactListener = Box2D.Dynamics.b2ContactListener, + b2ContactManager = Box2D.Dynamics.b2ContactManager, + b2DebugDraw = Box2D.Dynamics.b2DebugDraw, + b2DestructionListener = Box2D.Dynamics.b2DestructionListener, + b2FilterData = Box2D.Dynamics.b2FilterData, + b2Fixture = Box2D.Dynamics.b2Fixture, + b2FixtureDef = Box2D.Dynamics.b2FixtureDef, + b2Island = Box2D.Dynamics.b2Island, + b2TimeStep = Box2D.Dynamics.b2TimeStep, + b2World = Box2D.Dynamics.b2World; + + Box2D.inherit(b2DistanceJoint, Box2D.Dynamics.Joints.b2Joint); + b2DistanceJoint.prototype.__super = Box2D.Dynamics.Joints.b2Joint.prototype; + b2DistanceJoint.b2DistanceJoint = function () { + Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this, arguments); + this.m_localAnchor1 = new b2Vec2(); + this.m_localAnchor2 = new b2Vec2(); + this.m_u = new b2Vec2(); + }; + b2DistanceJoint.prototype.GetAnchorA = function () { + return this.m_bodyA.GetWorldPoint(this.m_localAnchor1); + } + b2DistanceJoint.prototype.GetAnchorB = function () { + return this.m_bodyB.GetWorldPoint(this.m_localAnchor2); + } + b2DistanceJoint.prototype.GetReactionForce = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return new b2Vec2(inv_dt * this.m_impulse * this.m_u.x, inv_dt * this.m_impulse * this.m_u.y); + } + b2DistanceJoint.prototype.GetReactionTorque = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return 0.0; + } + b2DistanceJoint.prototype.GetLength = function () { + return this.m_length; + } + b2DistanceJoint.prototype.SetLength = function (length) { + if (length === undefined) length = 0; + this.m_length = length; + } + b2DistanceJoint.prototype.GetFrequency = function () { + return this.m_frequencyHz; + } + b2DistanceJoint.prototype.SetFrequency = function (hz) { + if (hz === undefined) hz = 0; + this.m_frequencyHz = hz; + } + b2DistanceJoint.prototype.GetDampingRatio = function () { + return this.m_dampingRatio; + } + b2DistanceJoint.prototype.SetDampingRatio = function (ratio) { + if (ratio === undefined) ratio = 0; + this.m_dampingRatio = ratio; + } + b2DistanceJoint.prototype.b2DistanceJoint = function (def) { + this.__super.b2Joint.call(this, def); + var tMat; + var tX = 0; + var tY = 0; + this.m_localAnchor1.SetV(def.localAnchorA); + this.m_localAnchor2.SetV(def.localAnchorB); + this.m_length = def.length; + this.m_frequencyHz = def.frequencyHz; + this.m_dampingRatio = def.dampingRatio; + this.m_impulse = 0.0; + this.m_gamma = 0.0; + this.m_bias = 0.0; + } + b2DistanceJoint.prototype.InitVelocityConstraints = function (step) { + var tMat; + var tX = 0; + var bA = this.m_bodyA; + var bB = this.m_bodyB; + tMat = bA.m_xf.R; + var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + this.m_u.x = bB.m_sweep.c.x + r2X - bA.m_sweep.c.x - r1X; + this.m_u.y = bB.m_sweep.c.y + r2Y - bA.m_sweep.c.y - r1Y; + var length = Math.sqrt(this.m_u.x * this.m_u.x + this.m_u.y * this.m_u.y); + if (length > b2Settings.b2_linearSlop) { + this.m_u.Multiply(1.0 / length); + } + else { + this.m_u.SetZero(); + } + var cr1u = (r1X * this.m_u.y - r1Y * this.m_u.x); + var cr2u = (r2X * this.m_u.y - r2Y * this.m_u.x); + var invMass = bA.m_invMass + bA.m_invI * cr1u * cr1u + bB.m_invMass + bB.m_invI * cr2u * cr2u; + this.m_mass = invMass != 0.0 ? 1.0 / invMass : 0.0; + if (this.m_frequencyHz > 0.0) { + var C = length - this.m_length; + var omega = 2.0 * Math.PI * this.m_frequencyHz; + var d = 2.0 * this.m_mass * this.m_dampingRatio * omega; + var k = this.m_mass * omega * omega; + this.m_gamma = step.dt * (d + step.dt * k); + this.m_gamma = this.m_gamma != 0.0 ? 1 / this.m_gamma : 0.0; + this.m_bias = C * step.dt * k * this.m_gamma; + this.m_mass = invMass + this.m_gamma; + this.m_mass = this.m_mass != 0.0 ? 1.0 / this.m_mass : 0.0; + } + if (step.warmStarting) { + this.m_impulse *= step.dtRatio; + var PX = this.m_impulse * this.m_u.x; + var PY = this.m_impulse * this.m_u.y; + bA.m_linearVelocity.x -= bA.m_invMass * PX; + bA.m_linearVelocity.y -= bA.m_invMass * PY; + bA.m_angularVelocity -= bA.m_invI * (r1X * PY - r1Y * PX); + bB.m_linearVelocity.x += bB.m_invMass * PX; + bB.m_linearVelocity.y += bB.m_invMass * PY; + bB.m_angularVelocity += bB.m_invI * (r2X * PY - r2Y * PX); + } + else { + this.m_impulse = 0.0; + } + } + b2DistanceJoint.prototype.SolveVelocityConstraints = function (step) { + var tMat; + var bA = this.m_bodyA; + var bB = this.m_bodyB; + tMat = bA.m_xf.R; + var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + var tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var v1X = bA.m_linearVelocity.x + ((-bA.m_angularVelocity * r1Y)); + var v1Y = bA.m_linearVelocity.y + (bA.m_angularVelocity * r1X); + var v2X = bB.m_linearVelocity.x + ((-bB.m_angularVelocity * r2Y)); + var v2Y = bB.m_linearVelocity.y + (bB.m_angularVelocity * r2X); + var Cdot = (this.m_u.x * (v2X - v1X) + this.m_u.y * (v2Y - v1Y)); + var impulse = (-this.m_mass * (Cdot + this.m_bias + this.m_gamma * this.m_impulse)); + this.m_impulse += impulse; + var PX = impulse * this.m_u.x; + var PY = impulse * this.m_u.y; + bA.m_linearVelocity.x -= bA.m_invMass * PX; + bA.m_linearVelocity.y -= bA.m_invMass * PY; + bA.m_angularVelocity -= bA.m_invI * (r1X * PY - r1Y * PX); + bB.m_linearVelocity.x += bB.m_invMass * PX; + bB.m_linearVelocity.y += bB.m_invMass * PY; + bB.m_angularVelocity += bB.m_invI * (r2X * PY - r2Y * PX); + } + b2DistanceJoint.prototype.SolvePositionConstraints = function (baumgarte) { + if (baumgarte === undefined) baumgarte = 0; + var tMat; + if (this.m_frequencyHz > 0.0) { + return true; + } + var bA = this.m_bodyA; + var bB = this.m_bodyB; + tMat = bA.m_xf.R; + var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + var tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var dX = bB.m_sweep.c.x + r2X - bA.m_sweep.c.x - r1X; + var dY = bB.m_sweep.c.y + r2Y - bA.m_sweep.c.y - r1Y; + var length = Math.sqrt(dX * dX + dY * dY); + dX /= length; + dY /= length; + var C = length - this.m_length; + C = b2Math.Clamp(C, (-b2Settings.b2_maxLinearCorrection), b2Settings.b2_maxLinearCorrection); + var impulse = (-this.m_mass * C); + this.m_u.Set(dX, dY); + var PX = impulse * this.m_u.x; + var PY = impulse * this.m_u.y; + bA.m_sweep.c.x -= bA.m_invMass * PX; + bA.m_sweep.c.y -= bA.m_invMass * PY; + bA.m_sweep.a -= bA.m_invI * (r1X * PY - r1Y * PX); + bB.m_sweep.c.x += bB.m_invMass * PX; + bB.m_sweep.c.y += bB.m_invMass * PY; + bB.m_sweep.a += bB.m_invI * (r2X * PY - r2Y * PX); + bA.SynchronizeTransform(); + bB.SynchronizeTransform(); + return b2Math.Abs(C) < b2Settings.b2_linearSlop; + } + Box2D.inherit(b2DistanceJointDef, Box2D.Dynamics.Joints.b2JointDef); + b2DistanceJointDef.prototype.__super = Box2D.Dynamics.Joints.b2JointDef.prototype; + b2DistanceJointDef.b2DistanceJointDef = function () { + Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this, arguments); + this.localAnchorA = new b2Vec2(); + this.localAnchorB = new b2Vec2(); + }; + b2DistanceJointDef.prototype.b2DistanceJointDef = function () { + this.__super.b2JointDef.call(this); + this.type = b2Joint.e_distanceJoint; + this.length = 1.0; + this.frequencyHz = 0.0; + this.dampingRatio = 0.0; + } + b2DistanceJointDef.prototype.Initialize = function (bA, bB, anchorA, anchorB) { + this.bodyA = bA; + this.bodyB = bB; + this.localAnchorA.SetV(this.bodyA.GetLocalPoint(anchorA)); + this.localAnchorB.SetV(this.bodyB.GetLocalPoint(anchorB)); + var dX = anchorB.x - anchorA.x; + var dY = anchorB.y - anchorA.y; + this.length = Math.sqrt(dX * dX + dY * dY); + this.frequencyHz = 0.0; + this.dampingRatio = 0.0; + } + Box2D.inherit(b2FrictionJoint, Box2D.Dynamics.Joints.b2Joint); + b2FrictionJoint.prototype.__super = Box2D.Dynamics.Joints.b2Joint.prototype; + b2FrictionJoint.b2FrictionJoint = function () { + Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this, arguments); + this.m_localAnchorA = new b2Vec2(); + this.m_localAnchorB = new b2Vec2(); + this.m_linearMass = new b2Mat22(); + this.m_linearImpulse = new b2Vec2(); + }; + b2FrictionJoint.prototype.GetAnchorA = function () { + return this.m_bodyA.GetWorldPoint(this.m_localAnchorA); + } + b2FrictionJoint.prototype.GetAnchorB = function () { + return this.m_bodyB.GetWorldPoint(this.m_localAnchorB); + } + b2FrictionJoint.prototype.GetReactionForce = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return new b2Vec2(inv_dt * this.m_linearImpulse.x, inv_dt * this.m_linearImpulse.y); + } + b2FrictionJoint.prototype.GetReactionTorque = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return inv_dt * this.m_angularImpulse; + } + b2FrictionJoint.prototype.SetMaxForce = function (force) { + if (force === undefined) force = 0; + this.m_maxForce = force; + } + b2FrictionJoint.prototype.GetMaxForce = function () { + return this.m_maxForce; + } + b2FrictionJoint.prototype.SetMaxTorque = function (torque) { + if (torque === undefined) torque = 0; + this.m_maxTorque = torque; + } + b2FrictionJoint.prototype.GetMaxTorque = function () { + return this.m_maxTorque; + } + b2FrictionJoint.prototype.b2FrictionJoint = function (def) { + this.__super.b2Joint.call(this, def); + this.m_localAnchorA.SetV(def.localAnchorA); + this.m_localAnchorB.SetV(def.localAnchorB); + this.m_linearMass.SetZero(); + this.m_angularMass = 0.0; + this.m_linearImpulse.SetZero(); + this.m_angularImpulse = 0.0; + this.m_maxForce = def.maxForce; + this.m_maxTorque = def.maxTorque; + } + b2FrictionJoint.prototype.InitVelocityConstraints = function (step) { + var tMat; + var tX = 0; + var bA = this.m_bodyA; + var bB = this.m_bodyB; + tMat = bA.m_xf.R; + var rAX = this.m_localAnchorA.x - bA.m_sweep.localCenter.x; + var rAY = this.m_localAnchorA.y - bA.m_sweep.localCenter.y; + tX = (tMat.col1.x * rAX + tMat.col2.x * rAY); + rAY = (tMat.col1.y * rAX + tMat.col2.y * rAY); + rAX = tX; + tMat = bB.m_xf.R; + var rBX = this.m_localAnchorB.x - bB.m_sweep.localCenter.x; + var rBY = this.m_localAnchorB.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * rBX + tMat.col2.x * rBY); + rBY = (tMat.col1.y * rBX + tMat.col2.y * rBY); + rBX = tX; + var mA = bA.m_invMass; + var mB = bB.m_invMass; + var iA = bA.m_invI; + var iB = bB.m_invI; + var K = new b2Mat22(); + K.col1.x = mA + mB; + K.col2.x = 0.0; + K.col1.y = 0.0; + K.col2.y = mA + mB; + K.col1.x += iA * rAY * rAY; + K.col2.x += (-iA * rAX * rAY); + K.col1.y += (-iA * rAX * rAY); + K.col2.y += iA * rAX * rAX; + K.col1.x += iB * rBY * rBY; + K.col2.x += (-iB * rBX * rBY); + K.col1.y += (-iB * rBX * rBY); + K.col2.y += iB * rBX * rBX; + K.GetInverse(this.m_linearMass); + this.m_angularMass = iA + iB; + if (this.m_angularMass > 0.0) { + this.m_angularMass = 1.0 / this.m_angularMass; + } + if (step.warmStarting) { + this.m_linearImpulse.x *= step.dtRatio; + this.m_linearImpulse.y *= step.dtRatio; + this.m_angularImpulse *= step.dtRatio; + var P = this.m_linearImpulse; + bA.m_linearVelocity.x -= mA * P.x; + bA.m_linearVelocity.y -= mA * P.y; + bA.m_angularVelocity -= iA * (rAX * P.y - rAY * P.x + this.m_angularImpulse); + bB.m_linearVelocity.x += mB * P.x; + bB.m_linearVelocity.y += mB * P.y; + bB.m_angularVelocity += iB * (rBX * P.y - rBY * P.x + this.m_angularImpulse); + } + else { + this.m_linearImpulse.SetZero(); + this.m_angularImpulse = 0.0; + } + } + b2FrictionJoint.prototype.SolveVelocityConstraints = function (step) { + var tMat; + var tX = 0; + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var vA = bA.m_linearVelocity; + var wA = bA.m_angularVelocity; + var vB = bB.m_linearVelocity; + var wB = bB.m_angularVelocity; + var mA = bA.m_invMass; + var mB = bB.m_invMass; + var iA = bA.m_invI; + var iB = bB.m_invI; + tMat = bA.m_xf.R; + var rAX = this.m_localAnchorA.x - bA.m_sweep.localCenter.x; + var rAY = this.m_localAnchorA.y - bA.m_sweep.localCenter.y; + tX = (tMat.col1.x * rAX + tMat.col2.x * rAY); + rAY = (tMat.col1.y * rAX + tMat.col2.y * rAY); + rAX = tX; + tMat = bB.m_xf.R; + var rBX = this.m_localAnchorB.x - bB.m_sweep.localCenter.x; + var rBY = this.m_localAnchorB.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * rBX + tMat.col2.x * rBY); + rBY = (tMat.col1.y * rBX + tMat.col2.y * rBY); + rBX = tX; + var maxImpulse = 0; { + var Cdot = wB - wA; + var impulse = (-this.m_angularMass * Cdot); + var oldImpulse = this.m_angularImpulse; + maxImpulse = step.dt * this.m_maxTorque; + this.m_angularImpulse = b2Math.Clamp(this.m_angularImpulse + impulse, (-maxImpulse), maxImpulse); + impulse = this.m_angularImpulse - oldImpulse; + wA -= iA * impulse; + wB += iB * impulse; + } { + var CdotX = vB.x - wB * rBY - vA.x + wA * rAY; + var CdotY = vB.y + wB * rBX - vA.y - wA * rAX; + var impulseV = b2Math.MulMV(this.m_linearMass, new b2Vec2((-CdotX), (-CdotY))); + var oldImpulseV = this.m_linearImpulse.Copy(); + this.m_linearImpulse.Add(impulseV); + maxImpulse = step.dt * this.m_maxForce; + if (this.m_linearImpulse.LengthSquared() > maxImpulse * maxImpulse) { + this.m_linearImpulse.Normalize(); + this.m_linearImpulse.Multiply(maxImpulse); + } + impulseV = b2Math.SubtractVV(this.m_linearImpulse, oldImpulseV); + vA.x -= mA * impulseV.x; + vA.y -= mA * impulseV.y; + wA -= iA * (rAX * impulseV.y - rAY * impulseV.x); + vB.x += mB * impulseV.x; + vB.y += mB * impulseV.y; + wB += iB * (rBX * impulseV.y - rBY * impulseV.x); + } + bA.m_angularVelocity = wA; + bB.m_angularVelocity = wB; + } + b2FrictionJoint.prototype.SolvePositionConstraints = function (baumgarte) { + if (baumgarte === undefined) baumgarte = 0; + return true; + } + Box2D.inherit(b2FrictionJointDef, Box2D.Dynamics.Joints.b2JointDef); + b2FrictionJointDef.prototype.__super = Box2D.Dynamics.Joints.b2JointDef.prototype; + b2FrictionJointDef.b2FrictionJointDef = function () { + Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this, arguments); + this.localAnchorA = new b2Vec2(); + this.localAnchorB = new b2Vec2(); + }; + b2FrictionJointDef.prototype.b2FrictionJointDef = function () { + this.__super.b2JointDef.call(this); + this.type = b2Joint.e_frictionJoint; + this.maxForce = 0.0; + this.maxTorque = 0.0; + } + b2FrictionJointDef.prototype.Initialize = function (bA, bB, anchor) { + this.bodyA = bA; + this.bodyB = bB; + this.localAnchorA.SetV(this.bodyA.GetLocalPoint(anchor)); + this.localAnchorB.SetV(this.bodyB.GetLocalPoint(anchor)); + } + Box2D.inherit(b2GearJoint, Box2D.Dynamics.Joints.b2Joint); + b2GearJoint.prototype.__super = Box2D.Dynamics.Joints.b2Joint.prototype; + b2GearJoint.b2GearJoint = function () { + Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this, arguments); + this.m_groundAnchor1 = new b2Vec2(); + this.m_groundAnchor2 = new b2Vec2(); + this.m_localAnchor1 = new b2Vec2(); + this.m_localAnchor2 = new b2Vec2(); + this.m_J = new b2Jacobian(); + }; + b2GearJoint.prototype.GetAnchorA = function () { + return this.m_bodyA.GetWorldPoint(this.m_localAnchor1); + } + b2GearJoint.prototype.GetAnchorB = function () { + return this.m_bodyB.GetWorldPoint(this.m_localAnchor2); + } + b2GearJoint.prototype.GetReactionForce = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return new b2Vec2(inv_dt * this.m_impulse * this.m_J.linearB.x, inv_dt * this.m_impulse * this.m_J.linearB.y); + } + b2GearJoint.prototype.GetReactionTorque = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + var tMat = this.m_bodyB.m_xf.R; + var rX = this.m_localAnchor1.x - this.m_bodyB.m_sweep.localCenter.x; + var rY = this.m_localAnchor1.y - this.m_bodyB.m_sweep.localCenter.y; + var tX = tMat.col1.x * rX + tMat.col2.x * rY; + rY = tMat.col1.y * rX + tMat.col2.y * rY; + rX = tX; + var PX = this.m_impulse * this.m_J.linearB.x; + var PY = this.m_impulse * this.m_J.linearB.y; + return inv_dt * (this.m_impulse * this.m_J.angularB - rX * PY + rY * PX); + } + b2GearJoint.prototype.GetRatio = function () { + return this.m_ratio; + } + b2GearJoint.prototype.SetRatio = function (ratio) { + if (ratio === undefined) ratio = 0; + this.m_ratio = ratio; + } + b2GearJoint.prototype.b2GearJoint = function (def) { + this.__super.b2Joint.call(this, def); + var type1 = parseInt(def.joint1.m_type); + var type2 = parseInt(def.joint2.m_type); + this.m_revolute1 = null; + this.m_prismatic1 = null; + this.m_revolute2 = null; + this.m_prismatic2 = null; + var coordinate1 = 0; + var coordinate2 = 0; + this.m_ground1 = def.joint1.GetBodyA(); + this.m_bodyA = def.joint1.GetBodyB(); + if (type1 == b2Joint.e_revoluteJoint) { + this.m_revolute1 = (def.joint1 instanceof b2RevoluteJoint ? def.joint1 : null); + this.m_groundAnchor1.SetV(this.m_revolute1.m_localAnchor1); + this.m_localAnchor1.SetV(this.m_revolute1.m_localAnchor2); + coordinate1 = this.m_revolute1.GetJointAngle(); + } + else { + this.m_prismatic1 = (def.joint1 instanceof b2PrismaticJoint ? def.joint1 : null); + this.m_groundAnchor1.SetV(this.m_prismatic1.m_localAnchor1); + this.m_localAnchor1.SetV(this.m_prismatic1.m_localAnchor2); + coordinate1 = this.m_prismatic1.GetJointTranslation(); + } + this.m_ground2 = def.joint2.GetBodyA(); + this.m_bodyB = def.joint2.GetBodyB(); + if (type2 == b2Joint.e_revoluteJoint) { + this.m_revolute2 = (def.joint2 instanceof b2RevoluteJoint ? def.joint2 : null); + this.m_groundAnchor2.SetV(this.m_revolute2.m_localAnchor1); + this.m_localAnchor2.SetV(this.m_revolute2.m_localAnchor2); + coordinate2 = this.m_revolute2.GetJointAngle(); + } + else { + this.m_prismatic2 = (def.joint2 instanceof b2PrismaticJoint ? def.joint2 : null); + this.m_groundAnchor2.SetV(this.m_prismatic2.m_localAnchor1); + this.m_localAnchor2.SetV(this.m_prismatic2.m_localAnchor2); + coordinate2 = this.m_prismatic2.GetJointTranslation(); + } + this.m_ratio = def.ratio; + this.m_constant = coordinate1 + this.m_ratio * coordinate2; + this.m_impulse = 0.0; + } + b2GearJoint.prototype.InitVelocityConstraints = function (step) { + var g1 = this.m_ground1; + var g2 = this.m_ground2; + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var ugX = 0; + var ugY = 0; + var rX = 0; + var rY = 0; + var tMat; + var tVec; + var crug = 0; + var tX = 0; + var K = 0.0; + this.m_J.SetZero(); + if (this.m_revolute1) { + this.m_J.angularA = (-1.0); + K += bA.m_invI; + } + else { + tMat = g1.m_xf.R; + tVec = this.m_prismatic1.m_localXAxis1; + ugX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + ugY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + tMat = bA.m_xf.R; + rX = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + rY = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + tX = tMat.col1.x * rX + tMat.col2.x * rY; + rY = tMat.col1.y * rX + tMat.col2.y * rY; + rX = tX; + crug = rX * ugY - rY * ugX; + this.m_J.linearA.Set((-ugX), (-ugY)); + this.m_J.angularA = (-crug); + K += bA.m_invMass + bA.m_invI * crug * crug; + } + if (this.m_revolute2) { + this.m_J.angularB = (-this.m_ratio); + K += this.m_ratio * this.m_ratio * bB.m_invI; + } + else { + tMat = g2.m_xf.R; + tVec = this.m_prismatic2.m_localXAxis1; + ugX = tMat.col1.x * tVec.x + tMat.col2.x * tVec.y; + ugY = tMat.col1.y * tVec.x + tMat.col2.y * tVec.y; + tMat = bB.m_xf.R; + rX = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + rY = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = tMat.col1.x * rX + tMat.col2.x * rY; + rY = tMat.col1.y * rX + tMat.col2.y * rY; + rX = tX; + crug = rX * ugY - rY * ugX; + this.m_J.linearB.Set((-this.m_ratio * ugX), (-this.m_ratio * ugY)); + this.m_J.angularB = (-this.m_ratio * crug); + K += this.m_ratio * this.m_ratio * (bB.m_invMass + bB.m_invI * crug * crug); + } + this.m_mass = K > 0.0 ? 1.0 / K : 0.0; + if (step.warmStarting) { + bA.m_linearVelocity.x += bA.m_invMass * this.m_impulse * this.m_J.linearA.x; + bA.m_linearVelocity.y += bA.m_invMass * this.m_impulse * this.m_J.linearA.y; + bA.m_angularVelocity += bA.m_invI * this.m_impulse * this.m_J.angularA; + bB.m_linearVelocity.x += bB.m_invMass * this.m_impulse * this.m_J.linearB.x; + bB.m_linearVelocity.y += bB.m_invMass * this.m_impulse * this.m_J.linearB.y; + bB.m_angularVelocity += bB.m_invI * this.m_impulse * this.m_J.angularB; + } + else { + this.m_impulse = 0.0; + } + } + b2GearJoint.prototype.SolveVelocityConstraints = function (step) { + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var Cdot = this.m_J.Compute(bA.m_linearVelocity, bA.m_angularVelocity, bB.m_linearVelocity, bB.m_angularVelocity); + var impulse = (-this.m_mass * Cdot); + this.m_impulse += impulse; + bA.m_linearVelocity.x += bA.m_invMass * impulse * this.m_J.linearA.x; + bA.m_linearVelocity.y += bA.m_invMass * impulse * this.m_J.linearA.y; + bA.m_angularVelocity += bA.m_invI * impulse * this.m_J.angularA; + bB.m_linearVelocity.x += bB.m_invMass * impulse * this.m_J.linearB.x; + bB.m_linearVelocity.y += bB.m_invMass * impulse * this.m_J.linearB.y; + bB.m_angularVelocity += bB.m_invI * impulse * this.m_J.angularB; + } + b2GearJoint.prototype.SolvePositionConstraints = function (baumgarte) { + if (baumgarte === undefined) baumgarte = 0; + var linearError = 0.0; + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var coordinate1 = 0; + var coordinate2 = 0; + if (this.m_revolute1) { + coordinate1 = this.m_revolute1.GetJointAngle(); + } + else { + coordinate1 = this.m_prismatic1.GetJointTranslation(); + } + if (this.m_revolute2) { + coordinate2 = this.m_revolute2.GetJointAngle(); + } + else { + coordinate2 = this.m_prismatic2.GetJointTranslation(); + } + var C = this.m_constant - (coordinate1 + this.m_ratio * coordinate2); + var impulse = (-this.m_mass * C); + bA.m_sweep.c.x += bA.m_invMass * impulse * this.m_J.linearA.x; + bA.m_sweep.c.y += bA.m_invMass * impulse * this.m_J.linearA.y; + bA.m_sweep.a += bA.m_invI * impulse * this.m_J.angularA; + bB.m_sweep.c.x += bB.m_invMass * impulse * this.m_J.linearB.x; + bB.m_sweep.c.y += bB.m_invMass * impulse * this.m_J.linearB.y; + bB.m_sweep.a += bB.m_invI * impulse * this.m_J.angularB; + bA.SynchronizeTransform(); + bB.SynchronizeTransform(); + return linearError < b2Settings.b2_linearSlop; + } + Box2D.inherit(b2GearJointDef, Box2D.Dynamics.Joints.b2JointDef); + b2GearJointDef.prototype.__super = Box2D.Dynamics.Joints.b2JointDef.prototype; + b2GearJointDef.b2GearJointDef = function () { + Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this, arguments); + }; + b2GearJointDef.prototype.b2GearJointDef = function () { + this.__super.b2JointDef.call(this); + this.type = b2Joint.e_gearJoint; + this.joint1 = null; + this.joint2 = null; + this.ratio = 1.0; + } + b2Jacobian.b2Jacobian = function () { + this.linearA = new b2Vec2(); + this.linearB = new b2Vec2(); + }; + b2Jacobian.prototype.SetZero = function () { + this.linearA.SetZero(); + this.angularA = 0.0; + this.linearB.SetZero(); + this.angularB = 0.0; + } + b2Jacobian.prototype.Set = function (x1, a1, x2, a2) { + if (a1 === undefined) a1 = 0; + if (a2 === undefined) a2 = 0; + this.linearA.SetV(x1); + this.angularA = a1; + this.linearB.SetV(x2); + this.angularB = a2; + } + b2Jacobian.prototype.Compute = function (x1, a1, x2, a2) { + if (a1 === undefined) a1 = 0; + if (a2 === undefined) a2 = 0; + return (this.linearA.x * x1.x + this.linearA.y * x1.y) + this.angularA * a1 + (this.linearB.x * x2.x + this.linearB.y * x2.y) + this.angularB * a2; + } + b2Joint.b2Joint = function () { + this.m_edgeA = new b2JointEdge(); + this.m_edgeB = new b2JointEdge(); + this.m_localCenterA = new b2Vec2(); + this.m_localCenterB = new b2Vec2(); + }; + b2Joint.prototype.GetType = function () { + return this.m_type; + } + b2Joint.prototype.GetAnchorA = function () { + return null; + } + b2Joint.prototype.GetAnchorB = function () { + return null; + } + b2Joint.prototype.GetReactionForce = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return null; + } + b2Joint.prototype.GetReactionTorque = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return 0.0; + } + b2Joint.prototype.GetBodyA = function () { + return this.m_bodyA; + } + b2Joint.prototype.GetBodyB = function () { + return this.m_bodyB; + } + b2Joint.prototype.GetNext = function () { + return this.m_next; + } + b2Joint.prototype.GetUserData = function () { + return this.m_userData; + } + b2Joint.prototype.SetUserData = function (data) { + this.m_userData = data; + } + b2Joint.prototype.IsActive = function () { + return this.m_bodyA.IsActive() && this.m_bodyB.IsActive(); + } + b2Joint.Create = function (def, allocator) { + var joint = null; + switch (def.type) { + case b2Joint.e_distanceJoint: + { + joint = new b2DistanceJoint((def instanceof b2DistanceJointDef ? def : null)); + } + break; + case b2Joint.e_mouseJoint: + { + joint = new b2MouseJoint((def instanceof b2MouseJointDef ? def : null)); + } + break; + case b2Joint.e_prismaticJoint: + { + joint = new b2PrismaticJoint((def instanceof b2PrismaticJointDef ? def : null)); + } + break; + case b2Joint.e_revoluteJoint: + { + joint = new b2RevoluteJoint((def instanceof b2RevoluteJointDef ? def : null)); + } + break; + case b2Joint.e_pulleyJoint: + { + joint = new b2PulleyJoint((def instanceof b2PulleyJointDef ? def : null)); + } + break; + case b2Joint.e_gearJoint: + { + joint = new b2GearJoint((def instanceof b2GearJointDef ? def : null)); + } + break; + case b2Joint.e_lineJoint: + { + joint = new b2LineJoint((def instanceof b2LineJointDef ? def : null)); + } + break; + case b2Joint.e_weldJoint: + { + joint = new b2WeldJoint((def instanceof b2WeldJointDef ? def : null)); + } + break; + case b2Joint.e_frictionJoint: + { + joint = new b2FrictionJoint((def instanceof b2FrictionJointDef ? def : null)); + } + break; + default: + break; + } + return joint; + } + b2Joint.Destroy = function (joint, allocator) {} + b2Joint.prototype.b2Joint = function (def) { + b2Settings.b2Assert(def.bodyA != def.bodyB); + this.m_type = def.type; + this.m_prev = null; + this.m_next = null; + this.m_bodyA = def.bodyA; + this.m_bodyB = def.bodyB; + this.m_collideConnected = def.collideConnected; + this.m_islandFlag = false; + this.m_userData = def.userData; + } + b2Joint.prototype.InitVelocityConstraints = function (step) {} + b2Joint.prototype.SolveVelocityConstraints = function (step) {} + b2Joint.prototype.FinalizeVelocityConstraints = function () {} + b2Joint.prototype.SolvePositionConstraints = function (baumgarte) { + if (baumgarte === undefined) baumgarte = 0; + return false; + } + Box2D.postDefs.push(function () { + Box2D.Dynamics.Joints.b2Joint.e_unknownJoint = 0; + Box2D.Dynamics.Joints.b2Joint.e_revoluteJoint = 1; + Box2D.Dynamics.Joints.b2Joint.e_prismaticJoint = 2; + Box2D.Dynamics.Joints.b2Joint.e_distanceJoint = 3; + Box2D.Dynamics.Joints.b2Joint.e_pulleyJoint = 4; + Box2D.Dynamics.Joints.b2Joint.e_mouseJoint = 5; + Box2D.Dynamics.Joints.b2Joint.e_gearJoint = 6; + Box2D.Dynamics.Joints.b2Joint.e_lineJoint = 7; + Box2D.Dynamics.Joints.b2Joint.e_weldJoint = 8; + Box2D.Dynamics.Joints.b2Joint.e_frictionJoint = 9; + Box2D.Dynamics.Joints.b2Joint.e_inactiveLimit = 0; + Box2D.Dynamics.Joints.b2Joint.e_atLowerLimit = 1; + Box2D.Dynamics.Joints.b2Joint.e_atUpperLimit = 2; + Box2D.Dynamics.Joints.b2Joint.e_equalLimits = 3; + }); + b2JointDef.b2JointDef = function () {}; + b2JointDef.prototype.b2JointDef = function () { + this.type = b2Joint.e_unknownJoint; + this.userData = null; + this.bodyA = null; + this.bodyB = null; + this.collideConnected = false; + } + b2JointEdge.b2JointEdge = function () {}; + Box2D.inherit(b2LineJoint, Box2D.Dynamics.Joints.b2Joint); + b2LineJoint.prototype.__super = Box2D.Dynamics.Joints.b2Joint.prototype; + b2LineJoint.b2LineJoint = function () { + Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this, arguments); + this.m_localAnchor1 = new b2Vec2(); + this.m_localAnchor2 = new b2Vec2(); + this.m_localXAxis1 = new b2Vec2(); + this.m_localYAxis1 = new b2Vec2(); + this.m_axis = new b2Vec2(); + this.m_perp = new b2Vec2(); + this.m_K = new b2Mat22(); + this.m_impulse = new b2Vec2(); + }; + b2LineJoint.prototype.GetAnchorA = function () { + return this.m_bodyA.GetWorldPoint(this.m_localAnchor1); + } + b2LineJoint.prototype.GetAnchorB = function () { + return this.m_bodyB.GetWorldPoint(this.m_localAnchor2); + } + b2LineJoint.prototype.GetReactionForce = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return new b2Vec2(inv_dt * (this.m_impulse.x * this.m_perp.x + (this.m_motorImpulse + this.m_impulse.y) * this.m_axis.x), inv_dt * (this.m_impulse.x * this.m_perp.y + (this.m_motorImpulse + this.m_impulse.y) * this.m_axis.y)); + } + b2LineJoint.prototype.GetReactionTorque = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return inv_dt * this.m_impulse.y; + } + b2LineJoint.prototype.GetJointTranslation = function () { + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var tMat; + var p1 = bA.GetWorldPoint(this.m_localAnchor1); + var p2 = bB.GetWorldPoint(this.m_localAnchor2); + var dX = p2.x - p1.x; + var dY = p2.y - p1.y; + var axis = bA.GetWorldVector(this.m_localXAxis1); + var translation = axis.x * dX + axis.y * dY; + return translation; + } + b2LineJoint.prototype.GetJointSpeed = function () { + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var tMat; + tMat = bA.m_xf.R; + var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + var tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var p1X = bA.m_sweep.c.x + r1X; + var p1Y = bA.m_sweep.c.y + r1Y; + var p2X = bB.m_sweep.c.x + r2X; + var p2Y = bB.m_sweep.c.y + r2Y; + var dX = p2X - p1X; + var dY = p2Y - p1Y; + var axis = bA.GetWorldVector(this.m_localXAxis1); + var v1 = bA.m_linearVelocity; + var v2 = bB.m_linearVelocity; + var w1 = bA.m_angularVelocity; + var w2 = bB.m_angularVelocity; + var speed = (dX * ((-w1 * axis.y)) + dY * (w1 * axis.x)) + (axis.x * (((v2.x + ((-w2 * r2Y))) - v1.x) - ((-w1 * r1Y))) + axis.y * (((v2.y + (w2 * r2X)) - v1.y) - (w1 * r1X))); + return speed; + } + b2LineJoint.prototype.IsLimitEnabled = function () { + return this.m_enableLimit; + } + b2LineJoint.prototype.EnableLimit = function (flag) { + this.m_bodyA.SetAwake(true); + this.m_bodyB.SetAwake(true); + this.m_enableLimit = flag; + } + b2LineJoint.prototype.GetLowerLimit = function () { + return this.m_lowerTranslation; + } + b2LineJoint.prototype.GetUpperLimit = function () { + return this.m_upperTranslation; + } + b2LineJoint.prototype.SetLimits = function (lower, upper) { + if (lower === undefined) lower = 0; + if (upper === undefined) upper = 0; + this.m_bodyA.SetAwake(true); + this.m_bodyB.SetAwake(true); + this.m_lowerTranslation = lower; + this.m_upperTranslation = upper; + } + b2LineJoint.prototype.IsMotorEnabled = function () { + return this.m_enableMotor; + } + b2LineJoint.prototype.EnableMotor = function (flag) { + this.m_bodyA.SetAwake(true); + this.m_bodyB.SetAwake(true); + this.m_enableMotor = flag; + } + b2LineJoint.prototype.SetMotorSpeed = function (speed) { + if (speed === undefined) speed = 0; + this.m_bodyA.SetAwake(true); + this.m_bodyB.SetAwake(true); + this.m_motorSpeed = speed; + } + b2LineJoint.prototype.GetMotorSpeed = function () { + return this.m_motorSpeed; + } + b2LineJoint.prototype.SetMaxMotorForce = function (force) { + if (force === undefined) force = 0; + this.m_bodyA.SetAwake(true); + this.m_bodyB.SetAwake(true); + this.m_maxMotorForce = force; + } + b2LineJoint.prototype.GetMaxMotorForce = function () { + return this.m_maxMotorForce; + } + b2LineJoint.prototype.GetMotorForce = function () { + return this.m_motorImpulse; + } + b2LineJoint.prototype.b2LineJoint = function (def) { + this.__super.b2Joint.call(this, def); + var tMat; + var tX = 0; + var tY = 0; + this.m_localAnchor1.SetV(def.localAnchorA); + this.m_localAnchor2.SetV(def.localAnchorB); + this.m_localXAxis1.SetV(def.localAxisA); + this.m_localYAxis1.x = (-this.m_localXAxis1.y); + this.m_localYAxis1.y = this.m_localXAxis1.x; + this.m_impulse.SetZero(); + this.m_motorMass = 0.0; + this.m_motorImpulse = 0.0; + this.m_lowerTranslation = def.lowerTranslation; + this.m_upperTranslation = def.upperTranslation; + this.m_maxMotorForce = def.maxMotorForce; + this.m_motorSpeed = def.motorSpeed; + this.m_enableLimit = def.enableLimit; + this.m_enableMotor = def.enableMotor; + this.m_limitState = b2Joint.e_inactiveLimit; + this.m_axis.SetZero(); + this.m_perp.SetZero(); + } + b2LineJoint.prototype.InitVelocityConstraints = function (step) { + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var tMat; + var tX = 0; + this.m_localCenterA.SetV(bA.GetLocalCenter()); + this.m_localCenterB.SetV(bB.GetLocalCenter()); + var xf1 = bA.GetTransform(); + var xf2 = bB.GetTransform(); + tMat = bA.m_xf.R; + var r1X = this.m_localAnchor1.x - this.m_localCenterA.x; + var r1Y = this.m_localAnchor1.y - this.m_localCenterA.y; + tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + var r2X = this.m_localAnchor2.x - this.m_localCenterB.x; + var r2Y = this.m_localAnchor2.y - this.m_localCenterB.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var dX = bB.m_sweep.c.x + r2X - bA.m_sweep.c.x - r1X; + var dY = bB.m_sweep.c.y + r2Y - bA.m_sweep.c.y - r1Y; + this.m_invMassA = bA.m_invMass; + this.m_invMassB = bB.m_invMass; + this.m_invIA = bA.m_invI; + this.m_invIB = bB.m_invI; { + this.m_axis.SetV(b2Math.MulMV(xf1.R, this.m_localXAxis1)); + this.m_a1 = (dX + r1X) * this.m_axis.y - (dY + r1Y) * this.m_axis.x; + this.m_a2 = r2X * this.m_axis.y - r2Y * this.m_axis.x; + this.m_motorMass = this.m_invMassA + this.m_invMassB + this.m_invIA * this.m_a1 * this.m_a1 + this.m_invIB * this.m_a2 * this.m_a2; + this.m_motorMass = this.m_motorMass > Number.MIN_VALUE ? 1.0 / this.m_motorMass : 0.0; + } { + this.m_perp.SetV(b2Math.MulMV(xf1.R, this.m_localYAxis1)); + this.m_s1 = (dX + r1X) * this.m_perp.y - (dY + r1Y) * this.m_perp.x; + this.m_s2 = r2X * this.m_perp.y - r2Y * this.m_perp.x; + var m1 = this.m_invMassA; + var m2 = this.m_invMassB; + var i1 = this.m_invIA; + var i2 = this.m_invIB; + this.m_K.col1.x = m1 + m2 + i1 * this.m_s1 * this.m_s1 + i2 * this.m_s2 * this.m_s2; + this.m_K.col1.y = i1 * this.m_s1 * this.m_a1 + i2 * this.m_s2 * this.m_a2; + this.m_K.col2.x = this.m_K.col1.y; + this.m_K.col2.y = m1 + m2 + i1 * this.m_a1 * this.m_a1 + i2 * this.m_a2 * this.m_a2; + } + if (this.m_enableLimit) { + var jointTransition = this.m_axis.x * dX + this.m_axis.y * dY; + if (b2Math.Abs(this.m_upperTranslation - this.m_lowerTranslation) < 2.0 * b2Settings.b2_linearSlop) { + this.m_limitState = b2Joint.e_equalLimits; + } + else if (jointTransition <= this.m_lowerTranslation) { + if (this.m_limitState != b2Joint.e_atLowerLimit) { + this.m_limitState = b2Joint.e_atLowerLimit; + this.m_impulse.y = 0.0; + } + } + else if (jointTransition >= this.m_upperTranslation) { + if (this.m_limitState != b2Joint.e_atUpperLimit) { + this.m_limitState = b2Joint.e_atUpperLimit; + this.m_impulse.y = 0.0; + } + } + else { + this.m_limitState = b2Joint.e_inactiveLimit; + this.m_impulse.y = 0.0; + } + } + else { + this.m_limitState = b2Joint.e_inactiveLimit; + } + if (this.m_enableMotor == false) { + this.m_motorImpulse = 0.0; + } + if (step.warmStarting) { + this.m_impulse.x *= step.dtRatio; + this.m_impulse.y *= step.dtRatio; + this.m_motorImpulse *= step.dtRatio; + var PX = this.m_impulse.x * this.m_perp.x + (this.m_motorImpulse + this.m_impulse.y) * this.m_axis.x; + var PY = this.m_impulse.x * this.m_perp.y + (this.m_motorImpulse + this.m_impulse.y) * this.m_axis.y; + var L1 = this.m_impulse.x * this.m_s1 + (this.m_motorImpulse + this.m_impulse.y) * this.m_a1; + var L2 = this.m_impulse.x * this.m_s2 + (this.m_motorImpulse + this.m_impulse.y) * this.m_a2; + bA.m_linearVelocity.x -= this.m_invMassA * PX; + bA.m_linearVelocity.y -= this.m_invMassA * PY; + bA.m_angularVelocity -= this.m_invIA * L1; + bB.m_linearVelocity.x += this.m_invMassB * PX; + bB.m_linearVelocity.y += this.m_invMassB * PY; + bB.m_angularVelocity += this.m_invIB * L2; + } + else { + this.m_impulse.SetZero(); + this.m_motorImpulse = 0.0; + } + } + b2LineJoint.prototype.SolveVelocityConstraints = function (step) { + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var v1 = bA.m_linearVelocity; + var w1 = bA.m_angularVelocity; + var v2 = bB.m_linearVelocity; + var w2 = bB.m_angularVelocity; + var PX = 0; + var PY = 0; + var L1 = 0; + var L2 = 0; + if (this.m_enableMotor && this.m_limitState != b2Joint.e_equalLimits) { + var Cdot = this.m_axis.x * (v2.x - v1.x) + this.m_axis.y * (v2.y - v1.y) + this.m_a2 * w2 - this.m_a1 * w1; + var impulse = this.m_motorMass * (this.m_motorSpeed - Cdot); + var oldImpulse = this.m_motorImpulse; + var maxImpulse = step.dt * this.m_maxMotorForce; + this.m_motorImpulse = b2Math.Clamp(this.m_motorImpulse + impulse, (-maxImpulse), maxImpulse); + impulse = this.m_motorImpulse - oldImpulse; + PX = impulse * this.m_axis.x; + PY = impulse * this.m_axis.y; + L1 = impulse * this.m_a1; + L2 = impulse * this.m_a2; + v1.x -= this.m_invMassA * PX; + v1.y -= this.m_invMassA * PY; + w1 -= this.m_invIA * L1; + v2.x += this.m_invMassB * PX; + v2.y += this.m_invMassB * PY; + w2 += this.m_invIB * L2; + } + var Cdot1 = this.m_perp.x * (v2.x - v1.x) + this.m_perp.y * (v2.y - v1.y) + this.m_s2 * w2 - this.m_s1 * w1; + if (this.m_enableLimit && this.m_limitState != b2Joint.e_inactiveLimit) { + var Cdot2 = this.m_axis.x * (v2.x - v1.x) + this.m_axis.y * (v2.y - v1.y) + this.m_a2 * w2 - this.m_a1 * w1; + var f1 = this.m_impulse.Copy(); + var df = this.m_K.Solve(new b2Vec2(), (-Cdot1), (-Cdot2)); + this.m_impulse.Add(df); + if (this.m_limitState == b2Joint.e_atLowerLimit) { + this.m_impulse.y = b2Math.Max(this.m_impulse.y, 0.0); + } + else if (this.m_limitState == b2Joint.e_atUpperLimit) { + this.m_impulse.y = b2Math.Min(this.m_impulse.y, 0.0); + } + var b = (-Cdot1) - (this.m_impulse.y - f1.y) * this.m_K.col2.x; + var f2r = 0; + if (this.m_K.col1.x != 0.0) { + f2r = b / this.m_K.col1.x + f1.x; + } + else { + f2r = f1.x; + } + this.m_impulse.x = f2r; + df.x = this.m_impulse.x - f1.x; + df.y = this.m_impulse.y - f1.y; + PX = df.x * this.m_perp.x + df.y * this.m_axis.x; + PY = df.x * this.m_perp.y + df.y * this.m_axis.y; + L1 = df.x * this.m_s1 + df.y * this.m_a1; + L2 = df.x * this.m_s2 + df.y * this.m_a2; + v1.x -= this.m_invMassA * PX; + v1.y -= this.m_invMassA * PY; + w1 -= this.m_invIA * L1; + v2.x += this.m_invMassB * PX; + v2.y += this.m_invMassB * PY; + w2 += this.m_invIB * L2; + } + else { + var df2 = 0; + if (this.m_K.col1.x != 0.0) { + df2 = ((-Cdot1)) / this.m_K.col1.x; + } + else { + df2 = 0.0; + } + this.m_impulse.x += df2; + PX = df2 * this.m_perp.x; + PY = df2 * this.m_perp.y; + L1 = df2 * this.m_s1; + L2 = df2 * this.m_s2; + v1.x -= this.m_invMassA * PX; + v1.y -= this.m_invMassA * PY; + w1 -= this.m_invIA * L1; + v2.x += this.m_invMassB * PX; + v2.y += this.m_invMassB * PY; + w2 += this.m_invIB * L2; + } + bA.m_linearVelocity.SetV(v1); + bA.m_angularVelocity = w1; + bB.m_linearVelocity.SetV(v2); + bB.m_angularVelocity = w2; + } + b2LineJoint.prototype.SolvePositionConstraints = function (baumgarte) { + if (baumgarte === undefined) baumgarte = 0; + var limitC = 0; + var oldLimitImpulse = 0; + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var c1 = bA.m_sweep.c; + var a1 = bA.m_sweep.a; + var c2 = bB.m_sweep.c; + var a2 = bB.m_sweep.a; + var tMat; + var tX = 0; + var m1 = 0; + var m2 = 0; + var i1 = 0; + var i2 = 0; + var linearError = 0.0; + var angularError = 0.0; + var active = false; + var C2 = 0.0; + var R1 = b2Mat22.FromAngle(a1); + var R2 = b2Mat22.FromAngle(a2); + tMat = R1; + var r1X = this.m_localAnchor1.x - this.m_localCenterA.x; + var r1Y = this.m_localAnchor1.y - this.m_localCenterA.y; + tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = R2; + var r2X = this.m_localAnchor2.x - this.m_localCenterB.x; + var r2Y = this.m_localAnchor2.y - this.m_localCenterB.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var dX = c2.x + r2X - c1.x - r1X; + var dY = c2.y + r2Y - c1.y - r1Y; + if (this.m_enableLimit) { + this.m_axis = b2Math.MulMV(R1, this.m_localXAxis1); + this.m_a1 = (dX + r1X) * this.m_axis.y - (dY + r1Y) * this.m_axis.x; + this.m_a2 = r2X * this.m_axis.y - r2Y * this.m_axis.x; + var translation = this.m_axis.x * dX + this.m_axis.y * dY; + if (b2Math.Abs(this.m_upperTranslation - this.m_lowerTranslation) < 2.0 * b2Settings.b2_linearSlop) { + C2 = b2Math.Clamp(translation, (-b2Settings.b2_maxLinearCorrection), b2Settings.b2_maxLinearCorrection); + linearError = b2Math.Abs(translation); + active = true; + } + else if (translation <= this.m_lowerTranslation) { + C2 = b2Math.Clamp(translation - this.m_lowerTranslation + b2Settings.b2_linearSlop, (-b2Settings.b2_maxLinearCorrection), 0.0); + linearError = this.m_lowerTranslation - translation; + active = true; + } + else if (translation >= this.m_upperTranslation) { + C2 = b2Math.Clamp(translation - this.m_upperTranslation + b2Settings.b2_linearSlop, 0.0, b2Settings.b2_maxLinearCorrection); + linearError = translation - this.m_upperTranslation; + active = true; + } + } + this.m_perp = b2Math.MulMV(R1, this.m_localYAxis1); + this.m_s1 = (dX + r1X) * this.m_perp.y - (dY + r1Y) * this.m_perp.x; + this.m_s2 = r2X * this.m_perp.y - r2Y * this.m_perp.x; + var impulse = new b2Vec2(); + var C1 = this.m_perp.x * dX + this.m_perp.y * dY; + linearError = b2Math.Max(linearError, b2Math.Abs(C1)); + angularError = 0.0; + if (active) { + m1 = this.m_invMassA; + m2 = this.m_invMassB; + i1 = this.m_invIA; + i2 = this.m_invIB; + this.m_K.col1.x = m1 + m2 + i1 * this.m_s1 * this.m_s1 + i2 * this.m_s2 * this.m_s2; + this.m_K.col1.y = i1 * this.m_s1 * this.m_a1 + i2 * this.m_s2 * this.m_a2; + this.m_K.col2.x = this.m_K.col1.y; + this.m_K.col2.y = m1 + m2 + i1 * this.m_a1 * this.m_a1 + i2 * this.m_a2 * this.m_a2; + this.m_K.Solve(impulse, (-C1), (-C2)); + } + else { + m1 = this.m_invMassA; + m2 = this.m_invMassB; + i1 = this.m_invIA; + i2 = this.m_invIB; + var k11 = m1 + m2 + i1 * this.m_s1 * this.m_s1 + i2 * this.m_s2 * this.m_s2; + var impulse1 = 0; + if (k11 != 0.0) { + impulse1 = ((-C1)) / k11; + } + else { + impulse1 = 0.0; + } + impulse.x = impulse1; + impulse.y = 0.0; + } + var PX = impulse.x * this.m_perp.x + impulse.y * this.m_axis.x; + var PY = impulse.x * this.m_perp.y + impulse.y * this.m_axis.y; + var L1 = impulse.x * this.m_s1 + impulse.y * this.m_a1; + var L2 = impulse.x * this.m_s2 + impulse.y * this.m_a2; + c1.x -= this.m_invMassA * PX; + c1.y -= this.m_invMassA * PY; + a1 -= this.m_invIA * L1; + c2.x += this.m_invMassB * PX; + c2.y += this.m_invMassB * PY; + a2 += this.m_invIB * L2; + bA.m_sweep.a = a1; + bB.m_sweep.a = a2; + bA.SynchronizeTransform(); + bB.SynchronizeTransform(); + return linearError <= b2Settings.b2_linearSlop && angularError <= b2Settings.b2_angularSlop; + } + Box2D.inherit(b2LineJointDef, Box2D.Dynamics.Joints.b2JointDef); + b2LineJointDef.prototype.__super = Box2D.Dynamics.Joints.b2JointDef.prototype; + b2LineJointDef.b2LineJointDef = function () { + Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this, arguments); + this.localAnchorA = new b2Vec2(); + this.localAnchorB = new b2Vec2(); + this.localAxisA = new b2Vec2(); + }; + b2LineJointDef.prototype.b2LineJointDef = function () { + this.__super.b2JointDef.call(this); + this.type = b2Joint.e_lineJoint; + this.localAxisA.Set(1.0, 0.0); + this.enableLimit = false; + this.lowerTranslation = 0.0; + this.upperTranslation = 0.0; + this.enableMotor = false; + this.maxMotorForce = 0.0; + this.motorSpeed = 0.0; + } + b2LineJointDef.prototype.Initialize = function (bA, bB, anchor, axis) { + this.bodyA = bA; + this.bodyB = bB; + this.localAnchorA = this.bodyA.GetLocalPoint(anchor); + this.localAnchorB = this.bodyB.GetLocalPoint(anchor); + this.localAxisA = this.bodyA.GetLocalVector(axis); + } + Box2D.inherit(b2MouseJoint, Box2D.Dynamics.Joints.b2Joint); + b2MouseJoint.prototype.__super = Box2D.Dynamics.Joints.b2Joint.prototype; + b2MouseJoint.b2MouseJoint = function () { + Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this, arguments); + this.K = new b2Mat22(); + this.K1 = new b2Mat22(); + this.K2 = new b2Mat22(); + this.m_localAnchor = new b2Vec2(); + this.m_target = new b2Vec2(); + this.m_impulse = new b2Vec2(); + this.m_mass = new b2Mat22(); + this.m_C = new b2Vec2(); + }; + b2MouseJoint.prototype.GetAnchorA = function () { + return this.m_target; + } + b2MouseJoint.prototype.GetAnchorB = function () { + return this.m_bodyB.GetWorldPoint(this.m_localAnchor); + } + b2MouseJoint.prototype.GetReactionForce = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return new b2Vec2(inv_dt * this.m_impulse.x, inv_dt * this.m_impulse.y); + } + b2MouseJoint.prototype.GetReactionTorque = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return 0.0; + } + b2MouseJoint.prototype.GetTarget = function () { + return this.m_target; + } + b2MouseJoint.prototype.SetTarget = function (target) { + if (this.m_bodyB.IsAwake() == false) { + this.m_bodyB.SetAwake(true); + } + this.m_target = target; + } + b2MouseJoint.prototype.GetMaxForce = function () { + return this.m_maxForce; + } + b2MouseJoint.prototype.SetMaxForce = function (maxForce) { + if (maxForce === undefined) maxForce = 0; + this.m_maxForce = maxForce; + } + b2MouseJoint.prototype.GetFrequency = function () { + return this.m_frequencyHz; + } + b2MouseJoint.prototype.SetFrequency = function (hz) { + if (hz === undefined) hz = 0; + this.m_frequencyHz = hz; + } + b2MouseJoint.prototype.GetDampingRatio = function () { + return this.m_dampingRatio; + } + b2MouseJoint.prototype.SetDampingRatio = function (ratio) { + if (ratio === undefined) ratio = 0; + this.m_dampingRatio = ratio; + } + b2MouseJoint.prototype.b2MouseJoint = function (def) { + this.__super.b2Joint.call(this, def); + this.m_target.SetV(def.target); + var tX = this.m_target.x - this.m_bodyB.m_xf.position.x; + var tY = this.m_target.y - this.m_bodyB.m_xf.position.y; + var tMat = this.m_bodyB.m_xf.R; + this.m_localAnchor.x = (tX * tMat.col1.x + tY * tMat.col1.y); + this.m_localAnchor.y = (tX * tMat.col2.x + tY * tMat.col2.y); + this.m_maxForce = def.maxForce; + this.m_impulse.SetZero(); + this.m_frequencyHz = def.frequencyHz; + this.m_dampingRatio = def.dampingRatio; + this.m_beta = 0.0; + this.m_gamma = 0.0; + } + b2MouseJoint.prototype.InitVelocityConstraints = function (step) { + var b = this.m_bodyB; + var mass = b.GetMass(); + var omega = 2.0 * Math.PI * this.m_frequencyHz; + var d = 2.0 * mass * this.m_dampingRatio * omega; + var k = mass * omega * omega; + this.m_gamma = step.dt * (d + step.dt * k); + this.m_gamma = this.m_gamma != 0 ? 1 / this.m_gamma : 0.0; + this.m_beta = step.dt * k * this.m_gamma; + var tMat;tMat = b.m_xf.R; + var rX = this.m_localAnchor.x - b.m_sweep.localCenter.x; + var rY = this.m_localAnchor.y - b.m_sweep.localCenter.y; + var tX = (tMat.col1.x * rX + tMat.col2.x * rY);rY = (tMat.col1.y * rX + tMat.col2.y * rY); + rX = tX; + var invMass = b.m_invMass; + var invI = b.m_invI;this.K1.col1.x = invMass; + this.K1.col2.x = 0.0; + this.K1.col1.y = 0.0; + this.K1.col2.y = invMass; + this.K2.col1.x = invI * rY * rY; + this.K2.col2.x = (-invI * rX * rY); + this.K2.col1.y = (-invI * rX * rY); + this.K2.col2.y = invI * rX * rX; + this.K.SetM(this.K1); + this.K.AddM(this.K2); + this.K.col1.x += this.m_gamma; + this.K.col2.y += this.m_gamma; + this.K.GetInverse(this.m_mass); + this.m_C.x = b.m_sweep.c.x + rX - this.m_target.x; + this.m_C.y = b.m_sweep.c.y + rY - this.m_target.y; + b.m_angularVelocity *= 0.98; + this.m_impulse.x *= step.dtRatio; + this.m_impulse.y *= step.dtRatio; + b.m_linearVelocity.x += invMass * this.m_impulse.x; + b.m_linearVelocity.y += invMass * this.m_impulse.y; + b.m_angularVelocity += invI * (rX * this.m_impulse.y - rY * this.m_impulse.x); + } + b2MouseJoint.prototype.SolveVelocityConstraints = function (step) { + var b = this.m_bodyB; + var tMat; + var tX = 0; + var tY = 0; + tMat = b.m_xf.R; + var rX = this.m_localAnchor.x - b.m_sweep.localCenter.x; + var rY = this.m_localAnchor.y - b.m_sweep.localCenter.y; + tX = (tMat.col1.x * rX + tMat.col2.x * rY); + rY = (tMat.col1.y * rX + tMat.col2.y * rY); + rX = tX; + var CdotX = b.m_linearVelocity.x + ((-b.m_angularVelocity * rY)); + var CdotY = b.m_linearVelocity.y + (b.m_angularVelocity * rX); + tMat = this.m_mass; + tX = CdotX + this.m_beta * this.m_C.x + this.m_gamma * this.m_impulse.x; + tY = CdotY + this.m_beta * this.m_C.y + this.m_gamma * this.m_impulse.y; + var impulseX = (-(tMat.col1.x * tX + tMat.col2.x * tY)); + var impulseY = (-(tMat.col1.y * tX + tMat.col2.y * tY)); + var oldImpulseX = this.m_impulse.x; + var oldImpulseY = this.m_impulse.y; + this.m_impulse.x += impulseX; + this.m_impulse.y += impulseY; + var maxImpulse = step.dt * this.m_maxForce; + if (this.m_impulse.LengthSquared() > maxImpulse * maxImpulse) { + this.m_impulse.Multiply(maxImpulse / this.m_impulse.Length()); + } + impulseX = this.m_impulse.x - oldImpulseX; + impulseY = this.m_impulse.y - oldImpulseY; + b.m_linearVelocity.x += b.m_invMass * impulseX; + b.m_linearVelocity.y += b.m_invMass * impulseY; + b.m_angularVelocity += b.m_invI * (rX * impulseY - rY * impulseX); + } + b2MouseJoint.prototype.SolvePositionConstraints = function (baumgarte) { + if (baumgarte === undefined) baumgarte = 0; + return true; + } + Box2D.inherit(b2MouseJointDef, Box2D.Dynamics.Joints.b2JointDef); + b2MouseJointDef.prototype.__super = Box2D.Dynamics.Joints.b2JointDef.prototype; + b2MouseJointDef.b2MouseJointDef = function () { + Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this, arguments); + this.target = new b2Vec2(); + }; + b2MouseJointDef.prototype.b2MouseJointDef = function () { + this.__super.b2JointDef.call(this); + this.type = b2Joint.e_mouseJoint; + this.maxForce = 0.0; + this.frequencyHz = 5.0; + this.dampingRatio = 0.7; + } + Box2D.inherit(b2PrismaticJoint, Box2D.Dynamics.Joints.b2Joint); + b2PrismaticJoint.prototype.__super = Box2D.Dynamics.Joints.b2Joint.prototype; + b2PrismaticJoint.b2PrismaticJoint = function () { + Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this, arguments); + this.m_localAnchor1 = new b2Vec2(); + this.m_localAnchor2 = new b2Vec2(); + this.m_localXAxis1 = new b2Vec2(); + this.m_localYAxis1 = new b2Vec2(); + this.m_axis = new b2Vec2(); + this.m_perp = new b2Vec2(); + this.m_K = new b2Mat33(); + this.m_impulse = new b2Vec3(); + }; + b2PrismaticJoint.prototype.GetAnchorA = function () { + return this.m_bodyA.GetWorldPoint(this.m_localAnchor1); + } + b2PrismaticJoint.prototype.GetAnchorB = function () { + return this.m_bodyB.GetWorldPoint(this.m_localAnchor2); + } + b2PrismaticJoint.prototype.GetReactionForce = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return new b2Vec2(inv_dt * (this.m_impulse.x * this.m_perp.x + (this.m_motorImpulse + this.m_impulse.z) * this.m_axis.x), inv_dt * (this.m_impulse.x * this.m_perp.y + (this.m_motorImpulse + this.m_impulse.z) * this.m_axis.y)); + } + b2PrismaticJoint.prototype.GetReactionTorque = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return inv_dt * this.m_impulse.y; + } + b2PrismaticJoint.prototype.GetJointTranslation = function () { + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var tMat; + var p1 = bA.GetWorldPoint(this.m_localAnchor1); + var p2 = bB.GetWorldPoint(this.m_localAnchor2); + var dX = p2.x - p1.x; + var dY = p2.y - p1.y; + var axis = bA.GetWorldVector(this.m_localXAxis1); + var translation = axis.x * dX + axis.y * dY; + return translation; + } + b2PrismaticJoint.prototype.GetJointSpeed = function () { + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var tMat; + tMat = bA.m_xf.R; + var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + var tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var p1X = bA.m_sweep.c.x + r1X; + var p1Y = bA.m_sweep.c.y + r1Y; + var p2X = bB.m_sweep.c.x + r2X; + var p2Y = bB.m_sweep.c.y + r2Y; + var dX = p2X - p1X; + var dY = p2Y - p1Y; + var axis = bA.GetWorldVector(this.m_localXAxis1); + var v1 = bA.m_linearVelocity; + var v2 = bB.m_linearVelocity; + var w1 = bA.m_angularVelocity; + var w2 = bB.m_angularVelocity; + var speed = (dX * ((-w1 * axis.y)) + dY * (w1 * axis.x)) + (axis.x * (((v2.x + ((-w2 * r2Y))) - v1.x) - ((-w1 * r1Y))) + axis.y * (((v2.y + (w2 * r2X)) - v1.y) - (w1 * r1X))); + return speed; + } + b2PrismaticJoint.prototype.IsLimitEnabled = function () { + return this.m_enableLimit; + } + b2PrismaticJoint.prototype.EnableLimit = function (flag) { + this.m_bodyA.SetAwake(true); + this.m_bodyB.SetAwake(true); + this.m_enableLimit = flag; + } + b2PrismaticJoint.prototype.GetLowerLimit = function () { + return this.m_lowerTranslation; + } + b2PrismaticJoint.prototype.GetUpperLimit = function () { + return this.m_upperTranslation; + } + b2PrismaticJoint.prototype.SetLimits = function (lower, upper) { + if (lower === undefined) lower = 0; + if (upper === undefined) upper = 0; + this.m_bodyA.SetAwake(true); + this.m_bodyB.SetAwake(true); + this.m_lowerTranslation = lower; + this.m_upperTranslation = upper; + } + b2PrismaticJoint.prototype.IsMotorEnabled = function () { + return this.m_enableMotor; + } + b2PrismaticJoint.prototype.EnableMotor = function (flag) { + this.m_bodyA.SetAwake(true); + this.m_bodyB.SetAwake(true); + this.m_enableMotor = flag; + } + b2PrismaticJoint.prototype.SetMotorSpeed = function (speed) { + if (speed === undefined) speed = 0; + this.m_bodyA.SetAwake(true); + this.m_bodyB.SetAwake(true); + this.m_motorSpeed = speed; + } + b2PrismaticJoint.prototype.GetMotorSpeed = function () { + return this.m_motorSpeed; + } + b2PrismaticJoint.prototype.SetMaxMotorForce = function (force) { + if (force === undefined) force = 0; + this.m_bodyA.SetAwake(true); + this.m_bodyB.SetAwake(true); + this.m_maxMotorForce = force; + } + b2PrismaticJoint.prototype.GetMotorForce = function () { + return this.m_motorImpulse; + } + b2PrismaticJoint.prototype.b2PrismaticJoint = function (def) { + this.__super.b2Joint.call(this, def); + var tMat; + var tX = 0; + var tY = 0; + this.m_localAnchor1.SetV(def.localAnchorA); + this.m_localAnchor2.SetV(def.localAnchorB); + this.m_localXAxis1.SetV(def.localAxisA); + this.m_localYAxis1.x = (-this.m_localXAxis1.y); + this.m_localYAxis1.y = this.m_localXAxis1.x; + this.m_refAngle = def.referenceAngle; + this.m_impulse.SetZero(); + this.m_motorMass = 0.0; + this.m_motorImpulse = 0.0; + this.m_lowerTranslation = def.lowerTranslation; + this.m_upperTranslation = def.upperTranslation; + this.m_maxMotorForce = def.maxMotorForce; + this.m_motorSpeed = def.motorSpeed; + this.m_enableLimit = def.enableLimit; + this.m_enableMotor = def.enableMotor; + this.m_limitState = b2Joint.e_inactiveLimit; + this.m_axis.SetZero(); + this.m_perp.SetZero(); + } + b2PrismaticJoint.prototype.InitVelocityConstraints = function (step) { + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var tMat; + var tX = 0; + this.m_localCenterA.SetV(bA.GetLocalCenter()); + this.m_localCenterB.SetV(bB.GetLocalCenter()); + var xf1 = bA.GetTransform(); + var xf2 = bB.GetTransform(); + tMat = bA.m_xf.R; + var r1X = this.m_localAnchor1.x - this.m_localCenterA.x; + var r1Y = this.m_localAnchor1.y - this.m_localCenterA.y; + tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + var r2X = this.m_localAnchor2.x - this.m_localCenterB.x; + var r2Y = this.m_localAnchor2.y - this.m_localCenterB.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var dX = bB.m_sweep.c.x + r2X - bA.m_sweep.c.x - r1X; + var dY = bB.m_sweep.c.y + r2Y - bA.m_sweep.c.y - r1Y; + this.m_invMassA = bA.m_invMass; + this.m_invMassB = bB.m_invMass; + this.m_invIA = bA.m_invI; + this.m_invIB = bB.m_invI; { + this.m_axis.SetV(b2Math.MulMV(xf1.R, this.m_localXAxis1)); + this.m_a1 = (dX + r1X) * this.m_axis.y - (dY + r1Y) * this.m_axis.x; + this.m_a2 = r2X * this.m_axis.y - r2Y * this.m_axis.x; + this.m_motorMass = this.m_invMassA + this.m_invMassB + this.m_invIA * this.m_a1 * this.m_a1 + this.m_invIB * this.m_a2 * this.m_a2; + if (this.m_motorMass > Number.MIN_VALUE) this.m_motorMass = 1.0 / this.m_motorMass; + } { + this.m_perp.SetV(b2Math.MulMV(xf1.R, this.m_localYAxis1)); + this.m_s1 = (dX + r1X) * this.m_perp.y - (dY + r1Y) * this.m_perp.x; + this.m_s2 = r2X * this.m_perp.y - r2Y * this.m_perp.x; + var m1 = this.m_invMassA; + var m2 = this.m_invMassB; + var i1 = this.m_invIA; + var i2 = this.m_invIB; + this.m_K.col1.x = m1 + m2 + i1 * this.m_s1 * this.m_s1 + i2 * this.m_s2 * this.m_s2; + this.m_K.col1.y = i1 * this.m_s1 + i2 * this.m_s2; + this.m_K.col1.z = i1 * this.m_s1 * this.m_a1 + i2 * this.m_s2 * this.m_a2; + this.m_K.col2.x = this.m_K.col1.y; + this.m_K.col2.y = i1 + i2; + this.m_K.col2.z = i1 * this.m_a1 + i2 * this.m_a2; + this.m_K.col3.x = this.m_K.col1.z; + this.m_K.col3.y = this.m_K.col2.z; + this.m_K.col3.z = m1 + m2 + i1 * this.m_a1 * this.m_a1 + i2 * this.m_a2 * this.m_a2; + } + if (this.m_enableLimit) { + var jointTransition = this.m_axis.x * dX + this.m_axis.y * dY; + if (b2Math.Abs(this.m_upperTranslation - this.m_lowerTranslation) < 2.0 * b2Settings.b2_linearSlop) { + this.m_limitState = b2Joint.e_equalLimits; + } + else if (jointTransition <= this.m_lowerTranslation) { + if (this.m_limitState != b2Joint.e_atLowerLimit) { + this.m_limitState = b2Joint.e_atLowerLimit; + this.m_impulse.z = 0.0; + } + } + else if (jointTransition >= this.m_upperTranslation) { + if (this.m_limitState != b2Joint.e_atUpperLimit) { + this.m_limitState = b2Joint.e_atUpperLimit; + this.m_impulse.z = 0.0; + } + } + else { + this.m_limitState = b2Joint.e_inactiveLimit; + this.m_impulse.z = 0.0; + } + } + else { + this.m_limitState = b2Joint.e_inactiveLimit; + } + if (this.m_enableMotor == false) { + this.m_motorImpulse = 0.0; + } + if (step.warmStarting) { + this.m_impulse.x *= step.dtRatio; + this.m_impulse.y *= step.dtRatio; + this.m_motorImpulse *= step.dtRatio; + var PX = this.m_impulse.x * this.m_perp.x + (this.m_motorImpulse + this.m_impulse.z) * this.m_axis.x; + var PY = this.m_impulse.x * this.m_perp.y + (this.m_motorImpulse + this.m_impulse.z) * this.m_axis.y; + var L1 = this.m_impulse.x * this.m_s1 + this.m_impulse.y + (this.m_motorImpulse + this.m_impulse.z) * this.m_a1; + var L2 = this.m_impulse.x * this.m_s2 + this.m_impulse.y + (this.m_motorImpulse + this.m_impulse.z) * this.m_a2; + bA.m_linearVelocity.x -= this.m_invMassA * PX; + bA.m_linearVelocity.y -= this.m_invMassA * PY; + bA.m_angularVelocity -= this.m_invIA * L1; + bB.m_linearVelocity.x += this.m_invMassB * PX; + bB.m_linearVelocity.y += this.m_invMassB * PY; + bB.m_angularVelocity += this.m_invIB * L2; + } + else { + this.m_impulse.SetZero(); + this.m_motorImpulse = 0.0; + } + } + b2PrismaticJoint.prototype.SolveVelocityConstraints = function (step) { + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var v1 = bA.m_linearVelocity; + var w1 = bA.m_angularVelocity; + var v2 = bB.m_linearVelocity; + var w2 = bB.m_angularVelocity; + var PX = 0; + var PY = 0; + var L1 = 0; + var L2 = 0; + if (this.m_enableMotor && this.m_limitState != b2Joint.e_equalLimits) { + var Cdot = this.m_axis.x * (v2.x - v1.x) + this.m_axis.y * (v2.y - v1.y) + this.m_a2 * w2 - this.m_a1 * w1; + var impulse = this.m_motorMass * (this.m_motorSpeed - Cdot); + var oldImpulse = this.m_motorImpulse; + var maxImpulse = step.dt * this.m_maxMotorForce; + this.m_motorImpulse = b2Math.Clamp(this.m_motorImpulse + impulse, (-maxImpulse), maxImpulse); + impulse = this.m_motorImpulse - oldImpulse; + PX = impulse * this.m_axis.x; + PY = impulse * this.m_axis.y; + L1 = impulse * this.m_a1; + L2 = impulse * this.m_a2; + v1.x -= this.m_invMassA * PX; + v1.y -= this.m_invMassA * PY; + w1 -= this.m_invIA * L1; + v2.x += this.m_invMassB * PX; + v2.y += this.m_invMassB * PY; + w2 += this.m_invIB * L2; + } + var Cdot1X = this.m_perp.x * (v2.x - v1.x) + this.m_perp.y * (v2.y - v1.y) + this.m_s2 * w2 - this.m_s1 * w1; + var Cdot1Y = w2 - w1; + if (this.m_enableLimit && this.m_limitState != b2Joint.e_inactiveLimit) { + var Cdot2 = this.m_axis.x * (v2.x - v1.x) + this.m_axis.y * (v2.y - v1.y) + this.m_a2 * w2 - this.m_a1 * w1; + var f1 = this.m_impulse.Copy(); + var df = this.m_K.Solve33(new b2Vec3(), (-Cdot1X), (-Cdot1Y), (-Cdot2)); + this.m_impulse.Add(df); + if (this.m_limitState == b2Joint.e_atLowerLimit) { + this.m_impulse.z = b2Math.Max(this.m_impulse.z, 0.0); + } + else if (this.m_limitState == b2Joint.e_atUpperLimit) { + this.m_impulse.z = b2Math.Min(this.m_impulse.z, 0.0); + } + var bX = (-Cdot1X) - (this.m_impulse.z - f1.z) * this.m_K.col3.x; + var bY = (-Cdot1Y) - (this.m_impulse.z - f1.z) * this.m_K.col3.y; + var f2r = this.m_K.Solve22(new b2Vec2(), bX, bY); + f2r.x += f1.x; + f2r.y += f1.y; + this.m_impulse.x = f2r.x; + this.m_impulse.y = f2r.y; + df.x = this.m_impulse.x - f1.x; + df.y = this.m_impulse.y - f1.y; + df.z = this.m_impulse.z - f1.z; + PX = df.x * this.m_perp.x + df.z * this.m_axis.x; + PY = df.x * this.m_perp.y + df.z * this.m_axis.y; + L1 = df.x * this.m_s1 + df.y + df.z * this.m_a1; + L2 = df.x * this.m_s2 + df.y + df.z * this.m_a2; + v1.x -= this.m_invMassA * PX; + v1.y -= this.m_invMassA * PY; + w1 -= this.m_invIA * L1; + v2.x += this.m_invMassB * PX; + v2.y += this.m_invMassB * PY; + w2 += this.m_invIB * L2; + } + else { + var df2 = this.m_K.Solve22(new b2Vec2(), (-Cdot1X), (-Cdot1Y)); + this.m_impulse.x += df2.x; + this.m_impulse.y += df2.y; + PX = df2.x * this.m_perp.x; + PY = df2.x * this.m_perp.y; + L1 = df2.x * this.m_s1 + df2.y; + L2 = df2.x * this.m_s2 + df2.y; + v1.x -= this.m_invMassA * PX; + v1.y -= this.m_invMassA * PY; + w1 -= this.m_invIA * L1; + v2.x += this.m_invMassB * PX; + v2.y += this.m_invMassB * PY; + w2 += this.m_invIB * L2; + } + bA.m_linearVelocity.SetV(v1); + bA.m_angularVelocity = w1; + bB.m_linearVelocity.SetV(v2); + bB.m_angularVelocity = w2; + } + b2PrismaticJoint.prototype.SolvePositionConstraints = function (baumgarte) { + if (baumgarte === undefined) baumgarte = 0; + var limitC = 0; + var oldLimitImpulse = 0; + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var c1 = bA.m_sweep.c; + var a1 = bA.m_sweep.a; + var c2 = bB.m_sweep.c; + var a2 = bB.m_sweep.a; + var tMat; + var tX = 0; + var m1 = 0; + var m2 = 0; + var i1 = 0; + var i2 = 0; + var linearError = 0.0; + var angularError = 0.0; + var active = false; + var C2 = 0.0; + var R1 = b2Mat22.FromAngle(a1); + var R2 = b2Mat22.FromAngle(a2); + tMat = R1; + var r1X = this.m_localAnchor1.x - this.m_localCenterA.x; + var r1Y = this.m_localAnchor1.y - this.m_localCenterA.y; + tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = R2; + var r2X = this.m_localAnchor2.x - this.m_localCenterB.x; + var r2Y = this.m_localAnchor2.y - this.m_localCenterB.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var dX = c2.x + r2X - c1.x - r1X; + var dY = c2.y + r2Y - c1.y - r1Y; + if (this.m_enableLimit) { + this.m_axis = b2Math.MulMV(R1, this.m_localXAxis1); + this.m_a1 = (dX + r1X) * this.m_axis.y - (dY + r1Y) * this.m_axis.x; + this.m_a2 = r2X * this.m_axis.y - r2Y * this.m_axis.x; + var translation = this.m_axis.x * dX + this.m_axis.y * dY; + if (b2Math.Abs(this.m_upperTranslation - this.m_lowerTranslation) < 2.0 * b2Settings.b2_linearSlop) { + C2 = b2Math.Clamp(translation, (-b2Settings.b2_maxLinearCorrection), b2Settings.b2_maxLinearCorrection); + linearError = b2Math.Abs(translation); + active = true; + } + else if (translation <= this.m_lowerTranslation) { + C2 = b2Math.Clamp(translation - this.m_lowerTranslation + b2Settings.b2_linearSlop, (-b2Settings.b2_maxLinearCorrection), 0.0); + linearError = this.m_lowerTranslation - translation; + active = true; + } + else if (translation >= this.m_upperTranslation) { + C2 = b2Math.Clamp(translation - this.m_upperTranslation + b2Settings.b2_linearSlop, 0.0, b2Settings.b2_maxLinearCorrection); + linearError = translation - this.m_upperTranslation; + active = true; + } + } + this.m_perp = b2Math.MulMV(R1, this.m_localYAxis1); + this.m_s1 = (dX + r1X) * this.m_perp.y - (dY + r1Y) * this.m_perp.x; + this.m_s2 = r2X * this.m_perp.y - r2Y * this.m_perp.x; + var impulse = new b2Vec3(); + var C1X = this.m_perp.x * dX + this.m_perp.y * dY; + var C1Y = a2 - a1 - this.m_refAngle; + linearError = b2Math.Max(linearError, b2Math.Abs(C1X)); + angularError = b2Math.Abs(C1Y); + if (active) { + m1 = this.m_invMassA; + m2 = this.m_invMassB; + i1 = this.m_invIA; + i2 = this.m_invIB; + this.m_K.col1.x = m1 + m2 + i1 * this.m_s1 * this.m_s1 + i2 * this.m_s2 * this.m_s2; + this.m_K.col1.y = i1 * this.m_s1 + i2 * this.m_s2; + this.m_K.col1.z = i1 * this.m_s1 * this.m_a1 + i2 * this.m_s2 * this.m_a2; + this.m_K.col2.x = this.m_K.col1.y; + this.m_K.col2.y = i1 + i2; + this.m_K.col2.z = i1 * this.m_a1 + i2 * this.m_a2; + this.m_K.col3.x = this.m_K.col1.z; + this.m_K.col3.y = this.m_K.col2.z; + this.m_K.col3.z = m1 + m2 + i1 * this.m_a1 * this.m_a1 + i2 * this.m_a2 * this.m_a2; + this.m_K.Solve33(impulse, (-C1X), (-C1Y), (-C2)); + } + else { + m1 = this.m_invMassA; + m2 = this.m_invMassB; + i1 = this.m_invIA; + i2 = this.m_invIB; + var k11 = m1 + m2 + i1 * this.m_s1 * this.m_s1 + i2 * this.m_s2 * this.m_s2; + var k12 = i1 * this.m_s1 + i2 * this.m_s2; + var k22 = i1 + i2; + this.m_K.col1.Set(k11, k12, 0.0); + this.m_K.col2.Set(k12, k22, 0.0); + var impulse1 = this.m_K.Solve22(new b2Vec2(), (-C1X), (-C1Y)); + impulse.x = impulse1.x; + impulse.y = impulse1.y; + impulse.z = 0.0; + } + var PX = impulse.x * this.m_perp.x + impulse.z * this.m_axis.x; + var PY = impulse.x * this.m_perp.y + impulse.z * this.m_axis.y; + var L1 = impulse.x * this.m_s1 + impulse.y + impulse.z * this.m_a1; + var L2 = impulse.x * this.m_s2 + impulse.y + impulse.z * this.m_a2; + c1.x -= this.m_invMassA * PX; + c1.y -= this.m_invMassA * PY; + a1 -= this.m_invIA * L1; + c2.x += this.m_invMassB * PX; + c2.y += this.m_invMassB * PY; + a2 += this.m_invIB * L2; + bA.m_sweep.a = a1; + bB.m_sweep.a = a2; + bA.SynchronizeTransform(); + bB.SynchronizeTransform(); + return linearError <= b2Settings.b2_linearSlop && angularError <= b2Settings.b2_angularSlop; + } + Box2D.inherit(b2PrismaticJointDef, Box2D.Dynamics.Joints.b2JointDef); + b2PrismaticJointDef.prototype.__super = Box2D.Dynamics.Joints.b2JointDef.prototype; + b2PrismaticJointDef.b2PrismaticJointDef = function () { + Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this, arguments); + this.localAnchorA = new b2Vec2(); + this.localAnchorB = new b2Vec2(); + this.localAxisA = new b2Vec2(); + }; + b2PrismaticJointDef.prototype.b2PrismaticJointDef = function () { + this.__super.b2JointDef.call(this); + this.type = b2Joint.e_prismaticJoint; + this.localAxisA.Set(1.0, 0.0); + this.referenceAngle = 0.0; + this.enableLimit = false; + this.lowerTranslation = 0.0; + this.upperTranslation = 0.0; + this.enableMotor = false; + this.maxMotorForce = 0.0; + this.motorSpeed = 0.0; + } + b2PrismaticJointDef.prototype.Initialize = function (bA, bB, anchor, axis) { + this.bodyA = bA; + this.bodyB = bB; + this.localAnchorA = this.bodyA.GetLocalPoint(anchor); + this.localAnchorB = this.bodyB.GetLocalPoint(anchor); + this.localAxisA = this.bodyA.GetLocalVector(axis); + this.referenceAngle = this.bodyB.GetAngle() - this.bodyA.GetAngle(); + } + Box2D.inherit(b2PulleyJoint, Box2D.Dynamics.Joints.b2Joint); + b2PulleyJoint.prototype.__super = Box2D.Dynamics.Joints.b2Joint.prototype; + b2PulleyJoint.b2PulleyJoint = function () { + Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this, arguments); + this.m_groundAnchor1 = new b2Vec2(); + this.m_groundAnchor2 = new b2Vec2(); + this.m_localAnchor1 = new b2Vec2(); + this.m_localAnchor2 = new b2Vec2(); + this.m_u1 = new b2Vec2(); + this.m_u2 = new b2Vec2(); + }; + b2PulleyJoint.prototype.GetAnchorA = function () { + return this.m_bodyA.GetWorldPoint(this.m_localAnchor1); + } + b2PulleyJoint.prototype.GetAnchorB = function () { + return this.m_bodyB.GetWorldPoint(this.m_localAnchor2); + } + b2PulleyJoint.prototype.GetReactionForce = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return new b2Vec2(inv_dt * this.m_impulse * this.m_u2.x, inv_dt * this.m_impulse * this.m_u2.y); + } + b2PulleyJoint.prototype.GetReactionTorque = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return 0.0; + } + b2PulleyJoint.prototype.GetGroundAnchorA = function () { + var a = this.m_ground.m_xf.position.Copy(); + a.Add(this.m_groundAnchor1); + return a; + } + b2PulleyJoint.prototype.GetGroundAnchorB = function () { + var a = this.m_ground.m_xf.position.Copy(); + a.Add(this.m_groundAnchor2); + return a; + } + b2PulleyJoint.prototype.GetLength1 = function () { + var p = this.m_bodyA.GetWorldPoint(this.m_localAnchor1); + var sX = this.m_ground.m_xf.position.x + this.m_groundAnchor1.x; + var sY = this.m_ground.m_xf.position.y + this.m_groundAnchor1.y; + var dX = p.x - sX; + var dY = p.y - sY; + return Math.sqrt(dX * dX + dY * dY); + } + b2PulleyJoint.prototype.GetLength2 = function () { + var p = this.m_bodyB.GetWorldPoint(this.m_localAnchor2); + var sX = this.m_ground.m_xf.position.x + this.m_groundAnchor2.x; + var sY = this.m_ground.m_xf.position.y + this.m_groundAnchor2.y; + var dX = p.x - sX; + var dY = p.y - sY; + return Math.sqrt(dX * dX + dY * dY); + } + b2PulleyJoint.prototype.GetRatio = function () { + return this.m_ratio; + } + b2PulleyJoint.prototype.b2PulleyJoint = function (def) { + this.__super.b2Joint.call(this, def); + var tMat; + var tX = 0; + var tY = 0; + this.m_ground = this.m_bodyA.m_world.m_groundBody; + this.m_groundAnchor1.x = def.groundAnchorA.x - this.m_ground.m_xf.position.x; + this.m_groundAnchor1.y = def.groundAnchorA.y - this.m_ground.m_xf.position.y; + this.m_groundAnchor2.x = def.groundAnchorB.x - this.m_ground.m_xf.position.x; + this.m_groundAnchor2.y = def.groundAnchorB.y - this.m_ground.m_xf.position.y; + this.m_localAnchor1.SetV(def.localAnchorA); + this.m_localAnchor2.SetV(def.localAnchorB); + this.m_ratio = def.ratio; + this.m_constant = def.lengthA + this.m_ratio * def.lengthB; + this.m_maxLength1 = b2Math.Min(def.maxLengthA, this.m_constant - this.m_ratio * b2PulleyJoint.b2_minPulleyLength); + this.m_maxLength2 = b2Math.Min(def.maxLengthB, (this.m_constant - b2PulleyJoint.b2_minPulleyLength) / this.m_ratio); + this.m_impulse = 0.0; + this.m_limitImpulse1 = 0.0; + this.m_limitImpulse2 = 0.0; + } + b2PulleyJoint.prototype.InitVelocityConstraints = function (step) { + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var tMat; + tMat = bA.m_xf.R; + var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + var tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var p1X = bA.m_sweep.c.x + r1X; + var p1Y = bA.m_sweep.c.y + r1Y; + var p2X = bB.m_sweep.c.x + r2X; + var p2Y = bB.m_sweep.c.y + r2Y; + var s1X = this.m_ground.m_xf.position.x + this.m_groundAnchor1.x; + var s1Y = this.m_ground.m_xf.position.y + this.m_groundAnchor1.y; + var s2X = this.m_ground.m_xf.position.x + this.m_groundAnchor2.x; + var s2Y = this.m_ground.m_xf.position.y + this.m_groundAnchor2.y; + this.m_u1.Set(p1X - s1X, p1Y - s1Y); + this.m_u2.Set(p2X - s2X, p2Y - s2Y); + var length1 = this.m_u1.Length(); + var length2 = this.m_u2.Length(); + if (length1 > b2Settings.b2_linearSlop) { + this.m_u1.Multiply(1.0 / length1); + } + else { + this.m_u1.SetZero(); + } + if (length2 > b2Settings.b2_linearSlop) { + this.m_u2.Multiply(1.0 / length2); + } + else { + this.m_u2.SetZero(); + } + var C = this.m_constant - length1 - this.m_ratio * length2; + if (C > 0.0) { + this.m_state = b2Joint.e_inactiveLimit; + this.m_impulse = 0.0; + } + else { + this.m_state = b2Joint.e_atUpperLimit; + } + if (length1 < this.m_maxLength1) { + this.m_limitState1 = b2Joint.e_inactiveLimit; + this.m_limitImpulse1 = 0.0; + } + else { + this.m_limitState1 = b2Joint.e_atUpperLimit; + } + if (length2 < this.m_maxLength2) { + this.m_limitState2 = b2Joint.e_inactiveLimit; + this.m_limitImpulse2 = 0.0; + } + else { + this.m_limitState2 = b2Joint.e_atUpperLimit; + } + var cr1u1 = r1X * this.m_u1.y - r1Y * this.m_u1.x; + var cr2u2 = r2X * this.m_u2.y - r2Y * this.m_u2.x; + this.m_limitMass1 = bA.m_invMass + bA.m_invI * cr1u1 * cr1u1; + this.m_limitMass2 = bB.m_invMass + bB.m_invI * cr2u2 * cr2u2; + this.m_pulleyMass = this.m_limitMass1 + this.m_ratio * this.m_ratio * this.m_limitMass2; + this.m_limitMass1 = 1.0 / this.m_limitMass1; + this.m_limitMass2 = 1.0 / this.m_limitMass2; + this.m_pulleyMass = 1.0 / this.m_pulleyMass; + if (step.warmStarting) { + this.m_impulse *= step.dtRatio; + this.m_limitImpulse1 *= step.dtRatio; + this.m_limitImpulse2 *= step.dtRatio; + var P1X = ((-this.m_impulse) - this.m_limitImpulse1) * this.m_u1.x; + var P1Y = ((-this.m_impulse) - this.m_limitImpulse1) * this.m_u1.y; + var P2X = ((-this.m_ratio * this.m_impulse) - this.m_limitImpulse2) * this.m_u2.x; + var P2Y = ((-this.m_ratio * this.m_impulse) - this.m_limitImpulse2) * this.m_u2.y; + bA.m_linearVelocity.x += bA.m_invMass * P1X; + bA.m_linearVelocity.y += bA.m_invMass * P1Y; + bA.m_angularVelocity += bA.m_invI * (r1X * P1Y - r1Y * P1X); + bB.m_linearVelocity.x += bB.m_invMass * P2X; + bB.m_linearVelocity.y += bB.m_invMass * P2Y; + bB.m_angularVelocity += bB.m_invI * (r2X * P2Y - r2Y * P2X); + } + else { + this.m_impulse = 0.0; + this.m_limitImpulse1 = 0.0; + this.m_limitImpulse2 = 0.0; + } + } + b2PulleyJoint.prototype.SolveVelocityConstraints = function (step) { + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var tMat; + tMat = bA.m_xf.R; + var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + var tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var v1X = 0; + var v1Y = 0; + var v2X = 0; + var v2Y = 0; + var P1X = 0; + var P1Y = 0; + var P2X = 0; + var P2Y = 0; + var Cdot = 0; + var impulse = 0; + var oldImpulse = 0; + if (this.m_state == b2Joint.e_atUpperLimit) { + v1X = bA.m_linearVelocity.x + ((-bA.m_angularVelocity * r1Y)); + v1Y = bA.m_linearVelocity.y + (bA.m_angularVelocity * r1X); + v2X = bB.m_linearVelocity.x + ((-bB.m_angularVelocity * r2Y)); + v2Y = bB.m_linearVelocity.y + (bB.m_angularVelocity * r2X); + Cdot = (-(this.m_u1.x * v1X + this.m_u1.y * v1Y)) - this.m_ratio * (this.m_u2.x * v2X + this.m_u2.y * v2Y); + impulse = this.m_pulleyMass * ((-Cdot)); + oldImpulse = this.m_impulse; + this.m_impulse = b2Math.Max(0.0, this.m_impulse + impulse); + impulse = this.m_impulse - oldImpulse; + P1X = (-impulse * this.m_u1.x); + P1Y = (-impulse * this.m_u1.y); + P2X = (-this.m_ratio * impulse * this.m_u2.x); + P2Y = (-this.m_ratio * impulse * this.m_u2.y); + bA.m_linearVelocity.x += bA.m_invMass * P1X; + bA.m_linearVelocity.y += bA.m_invMass * P1Y; + bA.m_angularVelocity += bA.m_invI * (r1X * P1Y - r1Y * P1X); + bB.m_linearVelocity.x += bB.m_invMass * P2X; + bB.m_linearVelocity.y += bB.m_invMass * P2Y; + bB.m_angularVelocity += bB.m_invI * (r2X * P2Y - r2Y * P2X); + } + if (this.m_limitState1 == b2Joint.e_atUpperLimit) { + v1X = bA.m_linearVelocity.x + ((-bA.m_angularVelocity * r1Y)); + v1Y = bA.m_linearVelocity.y + (bA.m_angularVelocity * r1X); + Cdot = (-(this.m_u1.x * v1X + this.m_u1.y * v1Y)); + impulse = (-this.m_limitMass1 * Cdot); + oldImpulse = this.m_limitImpulse1; + this.m_limitImpulse1 = b2Math.Max(0.0, this.m_limitImpulse1 + impulse); + impulse = this.m_limitImpulse1 - oldImpulse; + P1X = (-impulse * this.m_u1.x); + P1Y = (-impulse * this.m_u1.y); + bA.m_linearVelocity.x += bA.m_invMass * P1X; + bA.m_linearVelocity.y += bA.m_invMass * P1Y; + bA.m_angularVelocity += bA.m_invI * (r1X * P1Y - r1Y * P1X); + } + if (this.m_limitState2 == b2Joint.e_atUpperLimit) { + v2X = bB.m_linearVelocity.x + ((-bB.m_angularVelocity * r2Y)); + v2Y = bB.m_linearVelocity.y + (bB.m_angularVelocity * r2X); + Cdot = (-(this.m_u2.x * v2X + this.m_u2.y * v2Y)); + impulse = (-this.m_limitMass2 * Cdot); + oldImpulse = this.m_limitImpulse2; + this.m_limitImpulse2 = b2Math.Max(0.0, this.m_limitImpulse2 + impulse); + impulse = this.m_limitImpulse2 - oldImpulse; + P2X = (-impulse * this.m_u2.x); + P2Y = (-impulse * this.m_u2.y); + bB.m_linearVelocity.x += bB.m_invMass * P2X; + bB.m_linearVelocity.y += bB.m_invMass * P2Y; + bB.m_angularVelocity += bB.m_invI * (r2X * P2Y - r2Y * P2X); + } + } + b2PulleyJoint.prototype.SolvePositionConstraints = function (baumgarte) { + if (baumgarte === undefined) baumgarte = 0; + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var tMat; + var s1X = this.m_ground.m_xf.position.x + this.m_groundAnchor1.x; + var s1Y = this.m_ground.m_xf.position.y + this.m_groundAnchor1.y; + var s2X = this.m_ground.m_xf.position.x + this.m_groundAnchor2.x; + var s2Y = this.m_ground.m_xf.position.y + this.m_groundAnchor2.y; + var r1X = 0; + var r1Y = 0; + var r2X = 0; + var r2Y = 0; + var p1X = 0; + var p1Y = 0; + var p2X = 0; + var p2Y = 0; + var length1 = 0; + var length2 = 0; + var C = 0; + var impulse = 0; + var oldImpulse = 0; + var oldLimitPositionImpulse = 0; + var tX = 0; + var linearError = 0.0; + if (this.m_state == b2Joint.e_atUpperLimit) { + tMat = bA.m_xf.R; + r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + p1X = bA.m_sweep.c.x + r1X; + p1Y = bA.m_sweep.c.y + r1Y; + p2X = bB.m_sweep.c.x + r2X; + p2Y = bB.m_sweep.c.y + r2Y; + this.m_u1.Set(p1X - s1X, p1Y - s1Y); + this.m_u2.Set(p2X - s2X, p2Y - s2Y); + length1 = this.m_u1.Length(); + length2 = this.m_u2.Length(); + if (length1 > b2Settings.b2_linearSlop) { + this.m_u1.Multiply(1.0 / length1); + } + else { + this.m_u1.SetZero(); + } + if (length2 > b2Settings.b2_linearSlop) { + this.m_u2.Multiply(1.0 / length2); + } + else { + this.m_u2.SetZero(); + } + C = this.m_constant - length1 - this.m_ratio * length2; + linearError = b2Math.Max(linearError, (-C)); + C = b2Math.Clamp(C + b2Settings.b2_linearSlop, (-b2Settings.b2_maxLinearCorrection), 0.0); + impulse = (-this.m_pulleyMass * C); + p1X = (-impulse * this.m_u1.x); + p1Y = (-impulse * this.m_u1.y); + p2X = (-this.m_ratio * impulse * this.m_u2.x); + p2Y = (-this.m_ratio * impulse * this.m_u2.y); + bA.m_sweep.c.x += bA.m_invMass * p1X; + bA.m_sweep.c.y += bA.m_invMass * p1Y; + bA.m_sweep.a += bA.m_invI * (r1X * p1Y - r1Y * p1X); + bB.m_sweep.c.x += bB.m_invMass * p2X; + bB.m_sweep.c.y += bB.m_invMass * p2Y; + bB.m_sweep.a += bB.m_invI * (r2X * p2Y - r2Y * p2X); + bA.SynchronizeTransform(); + bB.SynchronizeTransform(); + } + if (this.m_limitState1 == b2Joint.e_atUpperLimit) { + tMat = bA.m_xf.R; + r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + p1X = bA.m_sweep.c.x + r1X; + p1Y = bA.m_sweep.c.y + r1Y; + this.m_u1.Set(p1X - s1X, p1Y - s1Y); + length1 = this.m_u1.Length(); + if (length1 > b2Settings.b2_linearSlop) { + this.m_u1.x *= 1.0 / length1; + this.m_u1.y *= 1.0 / length1; + } + else { + this.m_u1.SetZero(); + } + C = this.m_maxLength1 - length1; + linearError = b2Math.Max(linearError, (-C)); + C = b2Math.Clamp(C + b2Settings.b2_linearSlop, (-b2Settings.b2_maxLinearCorrection), 0.0); + impulse = (-this.m_limitMass1 * C); + p1X = (-impulse * this.m_u1.x); + p1Y = (-impulse * this.m_u1.y); + bA.m_sweep.c.x += bA.m_invMass * p1X; + bA.m_sweep.c.y += bA.m_invMass * p1Y; + bA.m_sweep.a += bA.m_invI * (r1X * p1Y - r1Y * p1X); + bA.SynchronizeTransform(); + } + if (this.m_limitState2 == b2Joint.e_atUpperLimit) { + tMat = bB.m_xf.R; + r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + p2X = bB.m_sweep.c.x + r2X; + p2Y = bB.m_sweep.c.y + r2Y; + this.m_u2.Set(p2X - s2X, p2Y - s2Y); + length2 = this.m_u2.Length(); + if (length2 > b2Settings.b2_linearSlop) { + this.m_u2.x *= 1.0 / length2; + this.m_u2.y *= 1.0 / length2; + } + else { + this.m_u2.SetZero(); + } + C = this.m_maxLength2 - length2; + linearError = b2Math.Max(linearError, (-C)); + C = b2Math.Clamp(C + b2Settings.b2_linearSlop, (-b2Settings.b2_maxLinearCorrection), 0.0); + impulse = (-this.m_limitMass2 * C); + p2X = (-impulse * this.m_u2.x); + p2Y = (-impulse * this.m_u2.y); + bB.m_sweep.c.x += bB.m_invMass * p2X; + bB.m_sweep.c.y += bB.m_invMass * p2Y; + bB.m_sweep.a += bB.m_invI * (r2X * p2Y - r2Y * p2X); + bB.SynchronizeTransform(); + } + return linearError < b2Settings.b2_linearSlop; + } + Box2D.postDefs.push(function () { + Box2D.Dynamics.Joints.b2PulleyJoint.b2_minPulleyLength = 2.0; + }); + Box2D.inherit(b2PulleyJointDef, Box2D.Dynamics.Joints.b2JointDef); + b2PulleyJointDef.prototype.__super = Box2D.Dynamics.Joints.b2JointDef.prototype; + b2PulleyJointDef.b2PulleyJointDef = function () { + Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this, arguments); + this.groundAnchorA = new b2Vec2(); + this.groundAnchorB = new b2Vec2(); + this.localAnchorA = new b2Vec2(); + this.localAnchorB = new b2Vec2(); + }; + b2PulleyJointDef.prototype.b2PulleyJointDef = function () { + this.__super.b2JointDef.call(this); + this.type = b2Joint.e_pulleyJoint; + this.groundAnchorA.Set((-1.0), 1.0); + this.groundAnchorB.Set(1.0, 1.0); + this.localAnchorA.Set((-1.0), 0.0); + this.localAnchorB.Set(1.0, 0.0); + this.lengthA = 0.0; + this.maxLengthA = 0.0; + this.lengthB = 0.0; + this.maxLengthB = 0.0; + this.ratio = 1.0; + this.collideConnected = true; + } + b2PulleyJointDef.prototype.Initialize = function (bA, bB, gaA, gaB, anchorA, anchorB, r) { + if (r === undefined) r = 0; + this.bodyA = bA; + this.bodyB = bB; + this.groundAnchorA.SetV(gaA); + this.groundAnchorB.SetV(gaB); + this.localAnchorA = this.bodyA.GetLocalPoint(anchorA); + this.localAnchorB = this.bodyB.GetLocalPoint(anchorB); + var d1X = anchorA.x - gaA.x; + var d1Y = anchorA.y - gaA.y; + this.lengthA = Math.sqrt(d1X * d1X + d1Y * d1Y); + var d2X = anchorB.x - gaB.x; + var d2Y = anchorB.y - gaB.y; + this.lengthB = Math.sqrt(d2X * d2X + d2Y * d2Y); + this.ratio = r; + var C = this.lengthA + this.ratio * this.lengthB; + this.maxLengthA = C - this.ratio * b2PulleyJoint.b2_minPulleyLength; + this.maxLengthB = (C - b2PulleyJoint.b2_minPulleyLength) / this.ratio; + } + Box2D.inherit(b2RevoluteJoint, Box2D.Dynamics.Joints.b2Joint); + b2RevoluteJoint.prototype.__super = Box2D.Dynamics.Joints.b2Joint.prototype; + b2RevoluteJoint.b2RevoluteJoint = function () { + Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this, arguments); + this.K = new b2Mat22(); + this.K1 = new b2Mat22(); + this.K2 = new b2Mat22(); + this.K3 = new b2Mat22(); + this.impulse3 = new b2Vec3(); + this.impulse2 = new b2Vec2(); + this.reduced = new b2Vec2(); + this.m_localAnchor1 = new b2Vec2(); + this.m_localAnchor2 = new b2Vec2(); + this.m_impulse = new b2Vec3(); + this.m_mass = new b2Mat33(); + }; + b2RevoluteJoint.prototype.GetAnchorA = function () { + return this.m_bodyA.GetWorldPoint(this.m_localAnchor1); + } + b2RevoluteJoint.prototype.GetAnchorB = function () { + return this.m_bodyB.GetWorldPoint(this.m_localAnchor2); + } + b2RevoluteJoint.prototype.GetReactionForce = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return new b2Vec2(inv_dt * this.m_impulse.x, inv_dt * this.m_impulse.y); + } + b2RevoluteJoint.prototype.GetReactionTorque = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return inv_dt * this.m_impulse.z; + } + b2RevoluteJoint.prototype.GetJointAngle = function () { + return this.m_bodyB.m_sweep.a - this.m_bodyA.m_sweep.a - this.m_referenceAngle; + } + b2RevoluteJoint.prototype.GetJointSpeed = function () { + return this.m_bodyB.m_angularVelocity - this.m_bodyA.m_angularVelocity; + } + b2RevoluteJoint.prototype.IsLimitEnabled = function () { + return this.m_enableLimit; + } + b2RevoluteJoint.prototype.EnableLimit = function (flag) { + this.m_enableLimit = flag; + } + b2RevoluteJoint.prototype.GetLowerLimit = function () { + return this.m_lowerAngle; + } + b2RevoluteJoint.prototype.GetUpperLimit = function () { + return this.m_upperAngle; + } + b2RevoluteJoint.prototype.SetLimits = function (lower, upper) { + if (lower === undefined) lower = 0; + if (upper === undefined) upper = 0; + this.m_lowerAngle = lower; + this.m_upperAngle = upper; + } + b2RevoluteJoint.prototype.IsMotorEnabled = function () { + this.m_bodyA.SetAwake(true); + this.m_bodyB.SetAwake(true); + return this.m_enableMotor; + } + b2RevoluteJoint.prototype.EnableMotor = function (flag) { + this.m_enableMotor = flag; + } + b2RevoluteJoint.prototype.SetMotorSpeed = function (speed) { + if (speed === undefined) speed = 0; + this.m_bodyA.SetAwake(true); + this.m_bodyB.SetAwake(true); + this.m_motorSpeed = speed; + } + b2RevoluteJoint.prototype.GetMotorSpeed = function () { + return this.m_motorSpeed; + } + b2RevoluteJoint.prototype.SetMaxMotorTorque = function (torque) { + if (torque === undefined) torque = 0; + this.m_maxMotorTorque = torque; + } + b2RevoluteJoint.prototype.GetMotorTorque = function () { + return this.m_maxMotorTorque; + } + b2RevoluteJoint.prototype.b2RevoluteJoint = function (def) { + this.__super.b2Joint.call(this, def); + this.m_localAnchor1.SetV(def.localAnchorA); + this.m_localAnchor2.SetV(def.localAnchorB); + this.m_referenceAngle = def.referenceAngle; + this.m_impulse.SetZero(); + this.m_motorImpulse = 0.0; + this.m_lowerAngle = def.lowerAngle; + this.m_upperAngle = def.upperAngle; + this.m_maxMotorTorque = def.maxMotorTorque; + this.m_motorSpeed = def.motorSpeed; + this.m_enableLimit = def.enableLimit; + this.m_enableMotor = def.enableMotor; + this.m_limitState = b2Joint.e_inactiveLimit; + } + b2RevoluteJoint.prototype.InitVelocityConstraints = function (step) { + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var tMat; + var tX = 0; + if (this.m_enableMotor || this.m_enableLimit) {} + tMat = bA.m_xf.R; + var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var m1 = bA.m_invMass; + var m2 = bB.m_invMass; + var i1 = bA.m_invI; + var i2 = bB.m_invI; + this.m_mass.col1.x = m1 + m2 + r1Y * r1Y * i1 + r2Y * r2Y * i2; + this.m_mass.col2.x = (-r1Y * r1X * i1) - r2Y * r2X * i2; + this.m_mass.col3.x = (-r1Y * i1) - r2Y * i2; + this.m_mass.col1.y = this.m_mass.col2.x; + this.m_mass.col2.y = m1 + m2 + r1X * r1X * i1 + r2X * r2X * i2; + this.m_mass.col3.y = r1X * i1 + r2X * i2; + this.m_mass.col1.z = this.m_mass.col3.x; + this.m_mass.col2.z = this.m_mass.col3.y; + this.m_mass.col3.z = i1 + i2; + this.m_motorMass = 1.0 / (i1 + i2); + if (this.m_enableMotor == false) { + this.m_motorImpulse = 0.0; + } + if (this.m_enableLimit) { + var jointAngle = bB.m_sweep.a - bA.m_sweep.a - this.m_referenceAngle; + if (b2Math.Abs(this.m_upperAngle - this.m_lowerAngle) < 2.0 * b2Settings.b2_angularSlop) { + this.m_limitState = b2Joint.e_equalLimits; + } + else if (jointAngle <= this.m_lowerAngle) { + if (this.m_limitState != b2Joint.e_atLowerLimit) { + this.m_impulse.z = 0.0; + } + this.m_limitState = b2Joint.e_atLowerLimit; + } + else if (jointAngle >= this.m_upperAngle) { + if (this.m_limitState != b2Joint.e_atUpperLimit) { + this.m_impulse.z = 0.0; + } + this.m_limitState = b2Joint.e_atUpperLimit; + } + else { + this.m_limitState = b2Joint.e_inactiveLimit; + this.m_impulse.z = 0.0; + } + } + else { + this.m_limitState = b2Joint.e_inactiveLimit; + } + if (step.warmStarting) { + this.m_impulse.x *= step.dtRatio; + this.m_impulse.y *= step.dtRatio; + this.m_motorImpulse *= step.dtRatio; + var PX = this.m_impulse.x; + var PY = this.m_impulse.y; + bA.m_linearVelocity.x -= m1 * PX; + bA.m_linearVelocity.y -= m1 * PY; + bA.m_angularVelocity -= i1 * ((r1X * PY - r1Y * PX) + this.m_motorImpulse + this.m_impulse.z); + bB.m_linearVelocity.x += m2 * PX; + bB.m_linearVelocity.y += m2 * PY; + bB.m_angularVelocity += i2 * ((r2X * PY - r2Y * PX) + this.m_motorImpulse + this.m_impulse.z); + } + else { + this.m_impulse.SetZero(); + this.m_motorImpulse = 0.0; + } + } + b2RevoluteJoint.prototype.SolveVelocityConstraints = function (step) { + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var tMat; + var tX = 0; + var newImpulse = 0; + var r1X = 0; + var r1Y = 0; + var r2X = 0; + var r2Y = 0; + var v1 = bA.m_linearVelocity; + var w1 = bA.m_angularVelocity; + var v2 = bB.m_linearVelocity; + var w2 = bB.m_angularVelocity; + var m1 = bA.m_invMass; + var m2 = bB.m_invMass; + var i1 = bA.m_invI; + var i2 = bB.m_invI; + if (this.m_enableMotor && this.m_limitState != b2Joint.e_equalLimits) { + var Cdot = w2 - w1 - this.m_motorSpeed; + var impulse = this.m_motorMass * ((-Cdot)); + var oldImpulse = this.m_motorImpulse; + var maxImpulse = step.dt * this.m_maxMotorTorque; + this.m_motorImpulse = b2Math.Clamp(this.m_motorImpulse + impulse, (-maxImpulse), maxImpulse); + impulse = this.m_motorImpulse - oldImpulse; + w1 -= i1 * impulse; + w2 += i2 * impulse; + } + if (this.m_enableLimit && this.m_limitState != b2Joint.e_inactiveLimit) { + tMat = bA.m_xf.R; + r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var Cdot1X = v2.x + ((-w2 * r2Y)) - v1.x - ((-w1 * r1Y)); + var Cdot1Y = v2.y + (w2 * r2X) - v1.y - (w1 * r1X); + var Cdot2 = w2 - w1; + this.m_mass.Solve33(this.impulse3, (-Cdot1X), (-Cdot1Y), (-Cdot2)); + if (this.m_limitState == b2Joint.e_equalLimits) { + this.m_impulse.Add(this.impulse3); + } + else if (this.m_limitState == b2Joint.e_atLowerLimit) { + newImpulse = this.m_impulse.z + this.impulse3.z; + if (newImpulse < 0.0) { + this.m_mass.Solve22(this.reduced, (-Cdot1X), (-Cdot1Y)); + this.impulse3.x = this.reduced.x; + this.impulse3.y = this.reduced.y; + this.impulse3.z = (-this.m_impulse.z); + this.m_impulse.x += this.reduced.x; + this.m_impulse.y += this.reduced.y; + this.m_impulse.z = 0.0; + } + } + else if (this.m_limitState == b2Joint.e_atUpperLimit) { + newImpulse = this.m_impulse.z + this.impulse3.z; + if (newImpulse > 0.0) { + this.m_mass.Solve22(this.reduced, (-Cdot1X), (-Cdot1Y)); + this.impulse3.x = this.reduced.x; + this.impulse3.y = this.reduced.y; + this.impulse3.z = (-this.m_impulse.z); + this.m_impulse.x += this.reduced.x; + this.m_impulse.y += this.reduced.y; + this.m_impulse.z = 0.0; + } + } + v1.x -= m1 * this.impulse3.x; + v1.y -= m1 * this.impulse3.y; + w1 -= i1 * (r1X * this.impulse3.y - r1Y * this.impulse3.x + this.impulse3.z); + v2.x += m2 * this.impulse3.x; + v2.y += m2 * this.impulse3.y; + w2 += i2 * (r2X * this.impulse3.y - r2Y * this.impulse3.x + this.impulse3.z); + } + else { + tMat = bA.m_xf.R; + r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var CdotX = v2.x + ((-w2 * r2Y)) - v1.x - ((-w1 * r1Y)); + var CdotY = v2.y + (w2 * r2X) - v1.y - (w1 * r1X); + this.m_mass.Solve22(this.impulse2, (-CdotX), (-CdotY)); + this.m_impulse.x += this.impulse2.x; + this.m_impulse.y += this.impulse2.y; + v1.x -= m1 * this.impulse2.x; + v1.y -= m1 * this.impulse2.y; + w1 -= i1 * (r1X * this.impulse2.y - r1Y * this.impulse2.x); + v2.x += m2 * this.impulse2.x; + v2.y += m2 * this.impulse2.y; + w2 += i2 * (r2X * this.impulse2.y - r2Y * this.impulse2.x); + } + bA.m_linearVelocity.SetV(v1); + bA.m_angularVelocity = w1; + bB.m_linearVelocity.SetV(v2); + bB.m_angularVelocity = w2; + } + b2RevoluteJoint.prototype.SolvePositionConstraints = function (baumgarte) { + if (baumgarte === undefined) baumgarte = 0; + var oldLimitImpulse = 0; + var C = 0; + var tMat; + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var angularError = 0.0; + var positionError = 0.0; + var tX = 0; + var impulseX = 0; + var impulseY = 0; + if (this.m_enableLimit && this.m_limitState != b2Joint.e_inactiveLimit) { + var angle = bB.m_sweep.a - bA.m_sweep.a - this.m_referenceAngle; + var limitImpulse = 0.0; + if (this.m_limitState == b2Joint.e_equalLimits) { + C = b2Math.Clamp(angle - this.m_lowerAngle, (-b2Settings.b2_maxAngularCorrection), b2Settings.b2_maxAngularCorrection); + limitImpulse = (-this.m_motorMass * C); + angularError = b2Math.Abs(C); + } + else if (this.m_limitState == b2Joint.e_atLowerLimit) { + C = angle - this.m_lowerAngle; + angularError = (-C); + C = b2Math.Clamp(C + b2Settings.b2_angularSlop, (-b2Settings.b2_maxAngularCorrection), 0.0); + limitImpulse = (-this.m_motorMass * C); + } + else if (this.m_limitState == b2Joint.e_atUpperLimit) { + C = angle - this.m_upperAngle; + angularError = C; + C = b2Math.Clamp(C - b2Settings.b2_angularSlop, 0.0, b2Settings.b2_maxAngularCorrection); + limitImpulse = (-this.m_motorMass * C); + } + bA.m_sweep.a -= bA.m_invI * limitImpulse; + bB.m_sweep.a += bB.m_invI * limitImpulse; + bA.SynchronizeTransform(); + bB.SynchronizeTransform(); + } { + tMat = bA.m_xf.R; + var r1X = this.m_localAnchor1.x - bA.m_sweep.localCenter.x; + var r1Y = this.m_localAnchor1.y - bA.m_sweep.localCenter.y; + tX = (tMat.col1.x * r1X + tMat.col2.x * r1Y); + r1Y = (tMat.col1.y * r1X + tMat.col2.y * r1Y); + r1X = tX; + tMat = bB.m_xf.R; + var r2X = this.m_localAnchor2.x - bB.m_sweep.localCenter.x; + var r2Y = this.m_localAnchor2.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * r2X + tMat.col2.x * r2Y); + r2Y = (tMat.col1.y * r2X + tMat.col2.y * r2Y); + r2X = tX; + var CX = bB.m_sweep.c.x + r2X - bA.m_sweep.c.x - r1X; + var CY = bB.m_sweep.c.y + r2Y - bA.m_sweep.c.y - r1Y; + var CLengthSquared = CX * CX + CY * CY; + var CLength = Math.sqrt(CLengthSquared); + positionError = CLength; + var invMass1 = bA.m_invMass; + var invMass2 = bB.m_invMass; + var invI1 = bA.m_invI; + var invI2 = bB.m_invI; + var k_allowedStretch = 10.0 * b2Settings.b2_linearSlop; + if (CLengthSquared > k_allowedStretch * k_allowedStretch) { + var uX = CX / CLength; + var uY = CY / CLength; + var k = invMass1 + invMass2; + var m = 1.0 / k; + impulseX = m * ((-CX)); + impulseY = m * ((-CY)); + var k_beta = 0.5; + bA.m_sweep.c.x -= k_beta * invMass1 * impulseX; + bA.m_sweep.c.y -= k_beta * invMass1 * impulseY; + bB.m_sweep.c.x += k_beta * invMass2 * impulseX; + bB.m_sweep.c.y += k_beta * invMass2 * impulseY; + CX = bB.m_sweep.c.x + r2X - bA.m_sweep.c.x - r1X; + CY = bB.m_sweep.c.y + r2Y - bA.m_sweep.c.y - r1Y; + } + this.K1.col1.x = invMass1 + invMass2; + this.K1.col2.x = 0.0; + this.K1.col1.y = 0.0; + this.K1.col2.y = invMass1 + invMass2; + this.K2.col1.x = invI1 * r1Y * r1Y; + this.K2.col2.x = (-invI1 * r1X * r1Y); + this.K2.col1.y = (-invI1 * r1X * r1Y); + this.K2.col2.y = invI1 * r1X * r1X; + this.K3.col1.x = invI2 * r2Y * r2Y; + this.K3.col2.x = (-invI2 * r2X * r2Y); + this.K3.col1.y = (-invI2 * r2X * r2Y); + this.K3.col2.y = invI2 * r2X * r2X; + this.K.SetM(this.K1); + this.K.AddM(this.K2); + this.K.AddM(this.K3); + this.K.Solve(b2RevoluteJoint.tImpulse, (-CX), (-CY)); + impulseX = b2RevoluteJoint.tImpulse.x; + impulseY = b2RevoluteJoint.tImpulse.y; + bA.m_sweep.c.x -= bA.m_invMass * impulseX; + bA.m_sweep.c.y -= bA.m_invMass * impulseY; + bA.m_sweep.a -= bA.m_invI * (r1X * impulseY - r1Y * impulseX); + bB.m_sweep.c.x += bB.m_invMass * impulseX; + bB.m_sweep.c.y += bB.m_invMass * impulseY; + bB.m_sweep.a += bB.m_invI * (r2X * impulseY - r2Y * impulseX); + bA.SynchronizeTransform(); + bB.SynchronizeTransform(); + } + return positionError <= b2Settings.b2_linearSlop && angularError <= b2Settings.b2_angularSlop; + } + Box2D.postDefs.push(function () { + Box2D.Dynamics.Joints.b2RevoluteJoint.tImpulse = new b2Vec2(); + }); + Box2D.inherit(b2RevoluteJointDef, Box2D.Dynamics.Joints.b2JointDef); + b2RevoluteJointDef.prototype.__super = Box2D.Dynamics.Joints.b2JointDef.prototype; + b2RevoluteJointDef.b2RevoluteJointDef = function () { + Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this, arguments); + this.localAnchorA = new b2Vec2(); + this.localAnchorB = new b2Vec2(); + }; + b2RevoluteJointDef.prototype.b2RevoluteJointDef = function () { + this.__super.b2JointDef.call(this); + this.type = b2Joint.e_revoluteJoint; + this.localAnchorA.Set(0.0, 0.0); + this.localAnchorB.Set(0.0, 0.0); + this.referenceAngle = 0.0; + this.lowerAngle = 0.0; + this.upperAngle = 0.0; + this.maxMotorTorque = 0.0; + this.motorSpeed = 0.0; + this.enableLimit = false; + this.enableMotor = false; + } + b2RevoluteJointDef.prototype.Initialize = function (bA, bB, anchor) { + this.bodyA = bA; + this.bodyB = bB; + this.localAnchorA = this.bodyA.GetLocalPoint(anchor); + this.localAnchorB = this.bodyB.GetLocalPoint(anchor); + this.referenceAngle = this.bodyB.GetAngle() - this.bodyA.GetAngle(); + } + Box2D.inherit(b2WeldJoint, Box2D.Dynamics.Joints.b2Joint); + b2WeldJoint.prototype.__super = Box2D.Dynamics.Joints.b2Joint.prototype; + b2WeldJoint.b2WeldJoint = function () { + Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this, arguments); + this.m_localAnchorA = new b2Vec2(); + this.m_localAnchorB = new b2Vec2(); + this.m_impulse = new b2Vec3(); + this.m_mass = new b2Mat33(); + }; + b2WeldJoint.prototype.GetAnchorA = function () { + return this.m_bodyA.GetWorldPoint(this.m_localAnchorA); + } + b2WeldJoint.prototype.GetAnchorB = function () { + return this.m_bodyB.GetWorldPoint(this.m_localAnchorB); + } + b2WeldJoint.prototype.GetReactionForce = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return new b2Vec2(inv_dt * this.m_impulse.x, inv_dt * this.m_impulse.y); + } + b2WeldJoint.prototype.GetReactionTorque = function (inv_dt) { + if (inv_dt === undefined) inv_dt = 0; + return inv_dt * this.m_impulse.z; + } + b2WeldJoint.prototype.b2WeldJoint = function (def) { + this.__super.b2Joint.call(this, def); + this.m_localAnchorA.SetV(def.localAnchorA); + this.m_localAnchorB.SetV(def.localAnchorB); + this.m_referenceAngle = def.referenceAngle; + this.m_impulse.SetZero(); + this.m_mass = new b2Mat33(); + } + b2WeldJoint.prototype.InitVelocityConstraints = function (step) { + var tMat; + var tX = 0; + var bA = this.m_bodyA; + var bB = this.m_bodyB; + tMat = bA.m_xf.R; + var rAX = this.m_localAnchorA.x - bA.m_sweep.localCenter.x; + var rAY = this.m_localAnchorA.y - bA.m_sweep.localCenter.y; + tX = (tMat.col1.x * rAX + tMat.col2.x * rAY); + rAY = (tMat.col1.y * rAX + tMat.col2.y * rAY); + rAX = tX; + tMat = bB.m_xf.R; + var rBX = this.m_localAnchorB.x - bB.m_sweep.localCenter.x; + var rBY = this.m_localAnchorB.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * rBX + tMat.col2.x * rBY); + rBY = (tMat.col1.y * rBX + tMat.col2.y * rBY); + rBX = tX; + var mA = bA.m_invMass; + var mB = bB.m_invMass; + var iA = bA.m_invI; + var iB = bB.m_invI; + this.m_mass.col1.x = mA + mB + rAY * rAY * iA + rBY * rBY * iB; + this.m_mass.col2.x = (-rAY * rAX * iA) - rBY * rBX * iB; + this.m_mass.col3.x = (-rAY * iA) - rBY * iB; + this.m_mass.col1.y = this.m_mass.col2.x; + this.m_mass.col2.y = mA + mB + rAX * rAX * iA + rBX * rBX * iB; + this.m_mass.col3.y = rAX * iA + rBX * iB; + this.m_mass.col1.z = this.m_mass.col3.x; + this.m_mass.col2.z = this.m_mass.col3.y; + this.m_mass.col3.z = iA + iB; + if (step.warmStarting) { + this.m_impulse.x *= step.dtRatio; + this.m_impulse.y *= step.dtRatio; + this.m_impulse.z *= step.dtRatio; + bA.m_linearVelocity.x -= mA * this.m_impulse.x; + bA.m_linearVelocity.y -= mA * this.m_impulse.y; + bA.m_angularVelocity -= iA * (rAX * this.m_impulse.y - rAY * this.m_impulse.x + this.m_impulse.z); + bB.m_linearVelocity.x += mB * this.m_impulse.x; + bB.m_linearVelocity.y += mB * this.m_impulse.y; + bB.m_angularVelocity += iB * (rBX * this.m_impulse.y - rBY * this.m_impulse.x + this.m_impulse.z); + } + else { + this.m_impulse.SetZero(); + } + } + b2WeldJoint.prototype.SolveVelocityConstraints = function (step) { + var tMat; + var tX = 0; + var bA = this.m_bodyA; + var bB = this.m_bodyB; + var vA = bA.m_linearVelocity; + var wA = bA.m_angularVelocity; + var vB = bB.m_linearVelocity; + var wB = bB.m_angularVelocity; + var mA = bA.m_invMass; + var mB = bB.m_invMass; + var iA = bA.m_invI; + var iB = bB.m_invI; + tMat = bA.m_xf.R; + var rAX = this.m_localAnchorA.x - bA.m_sweep.localCenter.x; + var rAY = this.m_localAnchorA.y - bA.m_sweep.localCenter.y; + tX = (tMat.col1.x * rAX + tMat.col2.x * rAY); + rAY = (tMat.col1.y * rAX + tMat.col2.y * rAY); + rAX = tX; + tMat = bB.m_xf.R; + var rBX = this.m_localAnchorB.x - bB.m_sweep.localCenter.x; + var rBY = this.m_localAnchorB.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * rBX + tMat.col2.x * rBY); + rBY = (tMat.col1.y * rBX + tMat.col2.y * rBY); + rBX = tX; + var Cdot1X = vB.x - wB * rBY - vA.x + wA * rAY; + var Cdot1Y = vB.y + wB * rBX - vA.y - wA * rAX; + var Cdot2 = wB - wA; + var impulse = new b2Vec3(); + this.m_mass.Solve33(impulse, (-Cdot1X), (-Cdot1Y), (-Cdot2)); + this.m_impulse.Add(impulse); + vA.x -= mA * impulse.x; + vA.y -= mA * impulse.y; + wA -= iA * (rAX * impulse.y - rAY * impulse.x + impulse.z); + vB.x += mB * impulse.x; + vB.y += mB * impulse.y; + wB += iB * (rBX * impulse.y - rBY * impulse.x + impulse.z); + bA.m_angularVelocity = wA; + bB.m_angularVelocity = wB; + } + b2WeldJoint.prototype.SolvePositionConstraints = function (baumgarte) { + if (baumgarte === undefined) baumgarte = 0; + var tMat; + var tX = 0; + var bA = this.m_bodyA; + var bB = this.m_bodyB; + tMat = bA.m_xf.R; + var rAX = this.m_localAnchorA.x - bA.m_sweep.localCenter.x; + var rAY = this.m_localAnchorA.y - bA.m_sweep.localCenter.y; + tX = (tMat.col1.x * rAX + tMat.col2.x * rAY); + rAY = (tMat.col1.y * rAX + tMat.col2.y * rAY); + rAX = tX; + tMat = bB.m_xf.R; + var rBX = this.m_localAnchorB.x - bB.m_sweep.localCenter.x; + var rBY = this.m_localAnchorB.y - bB.m_sweep.localCenter.y; + tX = (tMat.col1.x * rBX + tMat.col2.x * rBY); + rBY = (tMat.col1.y * rBX + tMat.col2.y * rBY); + rBX = tX; + var mA = bA.m_invMass; + var mB = bB.m_invMass; + var iA = bA.m_invI; + var iB = bB.m_invI; + var C1X = bB.m_sweep.c.x + rBX - bA.m_sweep.c.x - rAX; + var C1Y = bB.m_sweep.c.y + rBY - bA.m_sweep.c.y - rAY; + var C2 = bB.m_sweep.a - bA.m_sweep.a - this.m_referenceAngle; + var k_allowedStretch = 10.0 * b2Settings.b2_linearSlop; + var positionError = Math.sqrt(C1X * C1X + C1Y * C1Y); + var angularError = b2Math.Abs(C2); + if (positionError > k_allowedStretch) { + iA *= 1.0; + iB *= 1.0; + } + this.m_mass.col1.x = mA + mB + rAY * rAY * iA + rBY * rBY * iB; + this.m_mass.col2.x = (-rAY * rAX * iA) - rBY * rBX * iB; + this.m_mass.col3.x = (-rAY * iA) - rBY * iB; + this.m_mass.col1.y = this.m_mass.col2.x; + this.m_mass.col2.y = mA + mB + rAX * rAX * iA + rBX * rBX * iB; + this.m_mass.col3.y = rAX * iA + rBX * iB; + this.m_mass.col1.z = this.m_mass.col3.x; + this.m_mass.col2.z = this.m_mass.col3.y; + this.m_mass.col3.z = iA + iB; + var impulse = new b2Vec3(); + this.m_mass.Solve33(impulse, (-C1X), (-C1Y), (-C2)); + bA.m_sweep.c.x -= mA * impulse.x; + bA.m_sweep.c.y -= mA * impulse.y; + bA.m_sweep.a -= iA * (rAX * impulse.y - rAY * impulse.x + impulse.z); + bB.m_sweep.c.x += mB * impulse.x; + bB.m_sweep.c.y += mB * impulse.y; + bB.m_sweep.a += iB * (rBX * impulse.y - rBY * impulse.x + impulse.z); + bA.SynchronizeTransform(); + bB.SynchronizeTransform(); + return positionError <= b2Settings.b2_linearSlop && angularError <= b2Settings.b2_angularSlop; + } + Box2D.inherit(b2WeldJointDef, Box2D.Dynamics.Joints.b2JointDef); + b2WeldJointDef.prototype.__super = Box2D.Dynamics.Joints.b2JointDef.prototype; + b2WeldJointDef.b2WeldJointDef = function () { + Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this, arguments); + this.localAnchorA = new b2Vec2(); + this.localAnchorB = new b2Vec2(); + }; + b2WeldJointDef.prototype.b2WeldJointDef = function () { + this.__super.b2JointDef.call(this); + this.type = b2Joint.e_weldJoint; + this.referenceAngle = 0.0; + } + b2WeldJointDef.prototype.Initialize = function (bA, bB, anchor) { + this.bodyA = bA; + this.bodyB = bB; + this.localAnchorA.SetV(this.bodyA.GetLocalPoint(anchor)); + this.localAnchorB.SetV(this.bodyB.GetLocalPoint(anchor)); + this.referenceAngle = this.bodyB.GetAngle() - this.bodyA.GetAngle(); + } +})(); +(function () { + var b2DebugDraw = Box2D.Dynamics.b2DebugDraw; + b2DebugDraw.b2DebugDraw = function () { + this.m_drawScale = 1.0; + this.m_lineThickness = 1.0; + this.m_alpha = 1.0; + this.m_fillAlpha = 1.0; + this.m_xformScale = 1.0; + var __this = this; + //#WORKAROUND + this.m_sprite = { + graphics: { + clear: function () + { + + //__this.m_ctx.clearRect(0, 0, __this.m_ctx.canvas.width, __this.m_ctx.canvas.height) + //__this.m_ctx.translate(100, 100); + } + } + }; + }; + b2DebugDraw.prototype._color = function (color, alpha) { + return "rgba(" + ((color & 0xFF0000) >> 16) + "," + ((color & 0xFF00) >> 8) + "," + (color & 0xFF) + "," + alpha + ")"; + }; + b2DebugDraw.prototype.b2DebugDraw = function () { + this.m_drawFlags = 0; + }; + b2DebugDraw.prototype.SetFlags = function (flags) { + if (flags === undefined) flags = 0; + this.m_drawFlags = flags; + }; + b2DebugDraw.prototype.GetFlags = function () { + return this.m_drawFlags; + }; + b2DebugDraw.prototype.AppendFlags = function (flags) { + if (flags === undefined) flags = 0; + this.m_drawFlags |= flags; + }; + b2DebugDraw.prototype.ClearFlags = function (flags) { + if (flags === undefined) flags = 0; + this.m_drawFlags &= ~flags; + }; + b2DebugDraw.prototype.SetSprite = function (sprite) { + this.m_ctx = sprite; + }; + b2DebugDraw.prototype.GetSprite = function () { + return this.m_ctx; + }; + b2DebugDraw.prototype.SetDrawScale = function (drawScale) { + if (drawScale === undefined) drawScale = 0; + this.m_drawScale = drawScale; + }; + b2DebugDraw.prototype.GetDrawScale = function () { + return this.m_drawScale; + }; + b2DebugDraw.prototype.SetLineThickness = function (lineThickness) { + if (lineThickness === undefined) lineThickness = 0; + this.m_lineThickness = lineThickness; + this.m_ctx.strokeWidth = lineThickness; + }; + b2DebugDraw.prototype.GetLineThickness = function () { + return this.m_lineThickness; + }; + b2DebugDraw.prototype.SetAlpha = function (alpha) { + if (alpha === undefined) alpha = 0; + this.m_alpha = alpha; + }; + b2DebugDraw.prototype.GetAlpha = function () { + return this.m_alpha; + }; + b2DebugDraw.prototype.SetFillAlpha = function (alpha) { + if (alpha === undefined) alpha = 0; + this.m_fillAlpha = alpha; + }; + b2DebugDraw.prototype.GetFillAlpha = function () { + return this.m_fillAlpha; + }; + b2DebugDraw.prototype.SetXFormScale = function (xformScale) { + if (xformScale === undefined) xformScale = 0; + this.m_xformScale = xformScale; + }; + b2DebugDraw.prototype.GetXFormScale = function () { + return this.m_xformScale; + }; + b2DebugDraw.prototype.DrawPolygon = function (vertices, vertexCount, color) { + if (!vertexCount) return; + var s = this.m_ctx; + var drawScale = this.m_drawScale; + s.beginPath(); + s.strokeStyle = this._color(color.color, this.m_alpha); + s.moveTo(vertices[0].x * drawScale, vertices[0].y * drawScale); + for (var i = 1; i < vertexCount; i++) { + s.lineTo(vertices[i].x * drawScale, vertices[i].y * drawScale); + } + s.lineTo(vertices[0].x * drawScale, vertices[0].y * drawScale); + s.closePath(); + s.stroke(); + }; + b2DebugDraw.prototype.DrawSolidPolygon = function (vertices, vertexCount, color) { + if (!vertexCount) return; + var s = this.m_ctx; + var drawScale = this.m_drawScale; + s.beginPath(); + s.strokeStyle = this._color(color.color, this.m_alpha); + s.fillStyle = this._color(color.color, this.m_fillAlpha); + s.moveTo(vertices[0].x * drawScale, vertices[0].y * drawScale); + for (var i = 1; i < vertexCount; i++) { + s.lineTo(vertices[i].x * drawScale, vertices[i].y * drawScale); + } + s.lineTo(vertices[0].x * drawScale, vertices[0].y * drawScale); + s.closePath(); + s.fill(); + s.stroke(); + }; + b2DebugDraw.prototype.DrawCircle = function (center, radius, color) { + if (!radius) return; + var s = this.m_ctx; + var drawScale = this.m_drawScale; + s.beginPath(); + s.strokeStyle = this._color(color.color, this.m_alpha); + s.arc(center.x * drawScale, center.y * drawScale, radius * drawScale, 0, Math.PI * 2, true); + s.closePath(); + s.stroke(); + }; + b2DebugDraw.prototype.DrawSolidCircle = function (center, radius, axis, color) { + if (!radius) return; + var s = this.m_ctx, + drawScale = this.m_drawScale, + cx = center.x * drawScale, + cy = center.y * drawScale; + s.moveTo(0, 0); + s.beginPath(); + s.strokeStyle = this._color(color.color, this.m_alpha); + s.fillStyle = this._color(color.color, this.m_fillAlpha); + s.arc(cx, cy, radius * drawScale, 0, Math.PI * 2, true); + s.moveTo(cx, cy); + s.lineTo((center.x + axis.x * radius) * drawScale, (center.y + axis.y * radius) * drawScale); + s.closePath(); + s.fill(); + s.stroke(); + }; + b2DebugDraw.prototype.DrawSegment = function (p1, p2, color) { + var s = this.m_ctx, + drawScale = this.m_drawScale; + s.strokeStyle = this._color(color.color, this.m_alpha); + s.beginPath(); + s.moveTo(p1.x * drawScale, p1.y * drawScale); + s.lineTo(p2.x * drawScale, p2.y * drawScale); + s.closePath(); + s.stroke(); + }; + b2DebugDraw.prototype.DrawTransform = function (xf) { + var s = this.m_ctx, + drawScale = this.m_drawScale; + s.beginPath(); + s.strokeStyle = this._color(0xff0000, this.m_alpha); + s.moveTo(xf.position.x * drawScale, xf.position.y * drawScale); + s.lineTo((xf.position.x + this.m_xformScale * xf.R.col1.x) * drawScale, (xf.position.y + this.m_xformScale * xf.R.col1.y) * drawScale); + + s.strokeStyle = this._color(0xff00, this.m_alpha); + s.moveTo(xf.position.x * drawScale, xf.position.y * drawScale); + s.lineTo((xf.position.x + this.m_xformScale * xf.R.col2.x) * drawScale, (xf.position.y + this.m_xformScale * xf.R.col2.y) * drawScale); + s.closePath(); + s.stroke(); + }; +})(); //post-definitions +var i; +for (i = 0; i < Box2D.postDefs.length; ++i) Box2D.postDefs[i](); +delete Box2D.postDefs; \ No newline at end of file diff --git a/worms/external/Box2dWeb-2.1.a.3.min.js b/worms/external/Box2dWeb-2.1.a.3.min.js new file mode 100644 index 0000000..f005184 --- /dev/null +++ b/worms/external/Box2dWeb-2.1.a.3.min.js @@ -0,0 +1,445 @@ +var Box2D={}; +(function(F,G){function K(){}if(!(Object.prototype.defineProperty instanceof Function)&&Object.prototype.__defineGetter__ instanceof Function&&Object.prototype.__defineSetter__ instanceof Function)Object.defineProperty=function(y,w,A){A.get instanceof Function&&y.__defineGetter__(w,A.get);A.set instanceof Function&&y.__defineSetter__(w,A.set)};F.inherit=function(y,w){K.prototype=w.prototype;y.prototype=new K;y.prototype.constructor=y};F.generateCallback=function(y,w){return function(){w.apply(y,arguments)}}; +F.NVector=function(y){if(y===G)y=0;for(var w=Array(y||0),A=0;A=0&&b>=0)&&this.lowerBound.IsValid()&&this.upperBound.IsValid()};B.prototype.GetCenter=function(){return new p((this.lowerBound.x+ +this.upperBound.x)/2,(this.lowerBound.y+this.upperBound.y)/2)};B.prototype.GetExtents=function(){return new p((this.upperBound.x-this.lowerBound.x)/2,(this.upperBound.y-this.lowerBound.y)/2)};B.prototype.Contains=function(b){var e=true;return e=(e=(e=(e=e&&this.lowerBound.x<=b.lowerBound.x)&&this.lowerBound.y<=b.lowerBound.y)&&b.upperBound.x<=this.upperBound.x)&&b.upperBound.y<=this.upperBound.y};B.prototype.RayCast=function(b,e){var f=-Number.MAX_VALUE,m=Number.MAX_VALUE,r=e.p1.x,s=e.p1.y,v=e.p2.x- +e.p1.x,t=e.p2.y-e.p1.y,x=Math.abs(t),C=b.normal,J=0,T=0,P=J=0;P=0;if(Math.abs(v)J){P=T;T=J;J=P;P=1}if(T>f){C.x=P;C.y=0;f=T}m=Math.min(m,J);if(f>m)return false}if(xJ){P=T;T=J;J=P;P=1}if(T>f){C.y=P;C.x=0;f= +T}m=Math.min(m,J);if(f>m)return false}b.fraction=f;return true};B.prototype.TestOverlap=function(b){var e=b.lowerBound.y-this.upperBound.y,f=this.lowerBound.y-b.upperBound.y;if(b.lowerBound.x-this.upperBound.x>0||e>0)return false;if(this.lowerBound.x-b.upperBound.x>0||f>0)return false;return true};B.Combine=function(b,e){var f=new B;f.Combine(b,e);return f};B.prototype.Combine=function(b,e){this.lowerBound.x=Math.min(b.lowerBound.x,e.lowerBound.x);this.lowerBound.y=Math.min(b.lowerBound.y,e.lowerBound.y); +this.upperBound.x=Math.max(b.upperBound.x,e.upperBound.x);this.upperBound.y=Math.max(b.upperBound.y,e.upperBound.y)};Q.b2Bound=function(){};Q.prototype.IsLower=function(){return(this.value&1)==0};Q.prototype.IsUpper=function(){return(this.value&1)==1};Q.prototype.Swap=function(b){var e=this.value,f=this.proxy,m=this.stabbingCount;this.value=b.value;this.proxy=b.proxy;this.stabbingCount=b.stabbingCount;b.value=e;b.proxy=f;b.stabbingCount=m};V.b2BoundValues=function(){};V.prototype.b2BoundValues=function(){this.lowerValues= +new Vector_a2j_Number;this.lowerValues[0]=0;this.lowerValues[1]=0;this.upperValues=new Vector_a2j_Number;this.upperValues[0]=0;this.upperValues[1]=0};M.b2Collision=function(){};M.ClipSegmentToLine=function(b,e,f,m){if(m===undefined)m=0;var r,s=0;r=e[0];var v=r.v;r=e[1];var t=r.v,x=f.x*v.x+f.y*v.y-m;r=f.x*t.x+f.y*t.y-m;x<=0&&b[s++].Set(e[0]);r<=0&&b[s++].Set(e[1]);if(x*r<0){f=x/(x-r);r=b[s];r=r.v;r.x=v.x+f*(t.x-v.x);r.y=v.y+f*(t.y-v.y);r=b[s];r.id=(x>0?e[0]:e[1]).id;++s}return s};M.EdgeSeparation= +function(b,e,f,m,r){if(f===undefined)f=0;parseInt(b.m_vertexCount);var s=b.m_vertices;b=b.m_normals;var v=parseInt(m.m_vertexCount),t=m.m_vertices,x,C;x=e.R;C=b[f];b=x.col1.x*C.x+x.col2.x*C.y;m=x.col1.y*C.x+x.col2.y*C.y;x=r.R;var J=x.col1.x*b+x.col1.y*m;x=x.col2.x*b+x.col2.y*m;for(var T=0,P=Number.MAX_VALUE,X=0;XT){T=t;C=P}}v=M.EdgeSeparation(e,f,C,m,r);t=parseInt(C-1>=0?C-1:s-1);x=M.EdgeSeparation(e,f,t,m,r);J=parseInt(C+1v&&x>T){$=-1;P=t;X=x}else if(T>v){$=1;P=J;X=T}else{b[0]=C;return v}for(;;){C=$==-1?P-1>=0?P-1:s-1:P+1X){P=C;X=v}else break}b[0]=P;return X};M.FindIncidentEdge=function(b,e,f,m,r,s){if(m===undefined)m=0;parseInt(e.m_vertexCount);var v=e.m_normals,t=parseInt(r.m_vertexCount); +e=r.m_vertices;r=r.m_normals;var x;x=f.R;f=v[m];v=x.col1.x*f.x+x.col2.x*f.y;var C=x.col1.y*f.x+x.col2.y*f.y;x=s.R;f=x.col1.x*v+x.col1.y*C;C=x.col2.x*v+x.col2.y*C;v=f;x=0;for(var J=Number.MAX_VALUE,T=0;Tv)){var x=0;M.s_edgeBO[0]=x;var C=M.FindMaxSeparation(M.s_edgeBO, +m,r,e,f);x=M.s_edgeBO[0];if(!(C>v)){var J=0,T=0;if(C>0.98*t+0.0010){t=m;m=e;e=r;f=f;J=x;b.m_type=E.e_faceB;T=1}else{t=e;m=m;e=f;f=r;J=s;b.m_type=E.e_faceA;T=0}s=M.s_incidentEdge;M.FindIncidentEdge(s,t,e,J,m,f);x=parseInt(t.m_vertexCount);r=t.m_vertices;t=r[J];var P;P=J+1s*s)){b.m_type=E.e_circles;b.m_localPoint.SetV(e.m_p);b.m_localPlaneNormal.SetZero();b.m_pointCount=1;b.m_points[0].m_localPoint.SetV(m.m_p);b.m_points[0].m_id.key=0}};M.CollidePolygonAndCircle=function(b,e,f,m,r){var s=b.m_pointCount=0,v=0,t,x;x=r.R;t=m.m_p;var C=r.position.y+(x.col1.y*t.x+x.col2.y*t.y);s=r.position.x+(x.col1.x*t.x+x.col2.x*t.y)-f.position.x;v=C-f.position.y;x=f.R;f=s* +x.col1.x+v*x.col1.y;x=s*x.col2.x+v*x.col2.y;var J=0;C=-Number.MAX_VALUE;r=e.m_radius+m.m_radius;var T=parseInt(e.m_vertexCount),P=e.m_vertices;e=e.m_normals;for(var X=0;Xr)return;if(s>C){C=s;J=X}}s=parseInt(J);v=parseInt(s+1r*r)return;b.m_pointCount=1;b.m_type=E.e_faceA;b.m_localPlaneNormal.x=f-t.x;b.m_localPlaneNormal.y=x-t.y;b.m_localPlaneNormal.Normalize();b.m_localPoint.SetV(t)}else if(C<=0){if((f-P.x)*(f-P.x)+(x-P.y)*(x-P.y)>r*r)return;b.m_pointCount=1;b.m_type=E.e_faceA;b.m_localPlaneNormal.x=f-P.x;b.m_localPlaneNormal.y=x-P.y;b.m_localPlaneNormal.Normalize();b.m_localPoint.SetV(P)}else{J=0.5*(t.x+P.x);t=0.5*(t.y+P.y);C=(f-J)*e[s].x+ +(x-t)*e[s].y;if(C>r)return;b.m_pointCount=1;b.m_type=E.e_faceA;b.m_localPlaneNormal.x=e[s].x;b.m_localPlaneNormal.y=e[s].y;b.m_localPlaneNormal.Normalize();b.m_localPoint.Set(J,t)}}b.m_points[0].m_localPoint.SetV(m.m_p);b.m_points[0].m_id.key=0};M.TestOverlap=function(b,e){var f=e.lowerBound,m=b.upperBound,r=f.x-m.x,s=f.y-m.y;f=b.lowerBound;m=e.upperBound;var v=f.y-m.y;if(r>0||s>0)return false;if(f.x-m.x>0||v>0)return false;return true};Box2D.postDefs.push(function(){Box2D.Collision.b2Collision.s_incidentEdge= +M.MakeClipPointVector();Box2D.Collision.b2Collision.s_clipPoints1=M.MakeClipPointVector();Box2D.Collision.b2Collision.s_clipPoints2=M.MakeClipPointVector();Box2D.Collision.b2Collision.s_edgeAO=new Vector_a2j_Number(1);Box2D.Collision.b2Collision.s_edgeBO=new Vector_a2j_Number(1);Box2D.Collision.b2Collision.s_localTangent=new p;Box2D.Collision.b2Collision.s_localNormal=new p;Box2D.Collision.b2Collision.s_planePoint=new p;Box2D.Collision.b2Collision.s_normal=new p;Box2D.Collision.b2Collision.s_tangent= +new p;Box2D.Collision.b2Collision.s_tangent2=new p;Box2D.Collision.b2Collision.s_v11=new p;Box2D.Collision.b2Collision.s_v12=new p;Box2D.Collision.b2Collision.b2CollidePolyTempVec=new p;Box2D.Collision.b2Collision.b2_nullFeature=255});L.b2ContactID=function(){this.features=new c};L.prototype.b2ContactID=function(){this.features._m_id=this};L.prototype.Set=function(b){this.key=b._key};L.prototype.Copy=function(){var b=new L;b.key=this.key;return b};Object.defineProperty(L.prototype,"key",{enumerable:false, +configurable:true,get:function(){return this._key}});Object.defineProperty(L.prototype,"key",{enumerable:false,configurable:true,set:function(b){if(b===undefined)b=0;this._key=b;this.features._referenceEdge=this._key&255;this.features._incidentEdge=(this._key&65280)>>8&255;this.features._incidentVertex=(this._key&16711680)>>16&255;this.features._flip=(this._key&4278190080)>>24&255}});I.b2ContactPoint=function(){this.position=new p;this.velocity=new p;this.normal=new p;this.id=new L};W.b2Distance= +function(){};W.Distance=function(b,e,f){++W.b2_gjkCalls;var m=f.proxyA,r=f.proxyB,s=f.transformA,v=f.transformB,t=W.s_simplex;t.ReadCache(e,m,s,r,v);var x=t.m_vertices,C=W.s_saveA,J=W.s_saveB,T=0;t.GetClosestPoint().LengthSquared();for(var P=0,X,$=0;$<20;){T=t.m_count;for(P=0;Pe+r&&b.distance>Number.MIN_VALUE){b.distance-=e+r;f=w.SubtractVV(b.pointB,b.pointA);f.Normalize();b.pointA.x+=e*f.x;b.pointA.y+=e*f.y;b.pointB.x-=r*f.x;b.pointB.y-=r*f.y}else{X=new p;X.x=0.5*(b.pointA.x+b.pointB.x);X.y=0.5*(b.pointA.y+b.pointB.y);b.pointA.x=b.pointB.x=X.x;b.pointA.y=b.pointB.y=X.y;b.distance=0}}};Box2D.postDefs.push(function(){Box2D.Collision.b2Distance.s_simplex=new h;Box2D.Collision.b2Distance.s_saveA= +new Vector_a2j_Number(3);Box2D.Collision.b2Distance.s_saveB=new Vector_a2j_Number(3)});Y.b2DistanceInput=function(){};k.b2DistanceOutput=function(){this.pointA=new p;this.pointB=new p};z.b2DistanceProxy=function(){};z.prototype.Set=function(b){switch(b.GetType()){case K.e_circleShape:b=b instanceof F?b:null;this.m_vertices=new Vector(1,true);this.m_vertices[0]=b.m_p;this.m_count=1;this.m_radius=b.m_radius;break;case K.e_polygonShape:b=b instanceof G?b:null;this.m_vertices=b.m_vertices;this.m_count= +b.m_vertexCount;this.m_radius=b.m_radius;break;default:y.b2Assert(false)}};z.prototype.GetSupport=function(b){for(var e=0,f=this.m_vertices[0].x*b.x+this.m_vertices[0].y*b.y,m=1;mf){e=m;f=r}}return e};z.prototype.GetSupportVertex=function(b){for(var e=0,f=this.m_vertices[0].x*b.x+this.m_vertices[0].y*b.y,m=1;mf){e=m;f=r}}return this.m_vertices[e]}; +z.prototype.GetVertexCount=function(){return this.m_count};z.prototype.GetVertex=function(b){if(b===undefined)b=0;y.b2Assert(0<=b&&b0?f.x:-f.x);f=y.b2_aabbExtension+y.b2_aabbMultiplier*(f.y>0?f.y:-f.y);b.aabb.lowerBound.x=e.lowerBound.x-m;b.aabb.lowerBound.y=e.lowerBound.y-f;b.aabb.upperBound.x=e.upperBound.x+ +m;b.aabb.upperBound.y=e.upperBound.y+f;this.InsertLeaf(b);return true};u.prototype.Rebalance=function(b){if(b===undefined)b=0;if(this.m_root!=null)for(var e=0;e>m&1?f.child2:f.child1;m=m+1&31}++this.m_path;this.RemoveLeaf(f);this.InsertLeaf(f)}};u.prototype.GetFatAABB=function(b){return b.aabb};u.prototype.GetUserData=function(b){return b.userData};u.prototype.Query=function(b,e){if(this.m_root!=null){var f=new Vector,m=0;for(f[m++]= +this.m_root;m>0;){var r=f[--m];if(r.aabb.TestOverlap(e))if(r.IsLeaf()){if(!b(r))break}else{f[m++]=r.child1;f[m++]=r.child2}}}};u.prototype.RayCast=function(b,e){if(this.m_root!=null){var f=e.p1,m=e.p2,r=w.SubtractVV(f,m);r.Normalize();r=w.CrossFV(1,r);var s=w.AbsV(r),v=e.maxFraction,t=new B,x=0,C=0;x=f.x+v*(m.x-f.x);C=f.y+v*(m.y-f.y);t.lowerBound.x=Math.min(f.x,x);t.lowerBound.y=Math.min(f.y,C);t.upperBound.x=Math.max(f.x,x);t.upperBound.y=Math.max(f.y,C);var J=new Vector,T=0;for(J[T++]=this.m_root;T> +0;){v=J[--T];if(v.aabb.TestOverlap(t)!=false){x=v.aabb.GetCenter();C=v.aabb.GetExtents();if(!(Math.abs(r.x*(f.x-x.x)+r.y*(f.y-x.y))-s.x*C.x-s.y*C.y>0))if(v.IsLeaf()){x=new S;x.p1=e.p1;x.p2=e.p2;x.maxFraction=e.maxFraction;v=b(x,v);if(v==0)break;if(v>0){x=f.x+v*(m.x-f.x);C=f.y+v*(m.y-f.y);t.lowerBound.x=Math.min(f.x,x);t.lowerBound.y=Math.min(f.y,C);t.upperBound.x=Math.max(f.x,x);t.upperBound.y=Math.max(f.y,C)}}else{J[T++]=v.child1;J[T++]=v.child2}}}}};u.prototype.AllocateNode=function(){if(this.m_freeList){var b= +this.m_freeList;this.m_freeList=b.parent;b.parent=null;b.child1=null;b.child2=null;return b}return new H};u.prototype.FreeNode=function(b){b.parent=this.m_freeList;this.m_freeList=b};u.prototype.InsertLeaf=function(b){++this.m_insertionCount;if(this.m_root==null){this.m_root=b;this.m_root.parent=null}else{var e=b.aabb.GetCenter(),f=this.m_root;if(f.IsLeaf()==false){do{var m=f.child1;f=f.child2;f=Math.abs((m.aabb.lowerBound.x+m.aabb.upperBound.x)/2-e.x)+Math.abs((m.aabb.lowerBound.y+m.aabb.upperBound.y)/ +2-e.y)=m?t:m;++e.m_pairCount;return true}, +r)}for(f=e.m_moveBuffer.length=0;fx){var J=r.x-this.p1.x,T=r.y-this.p1.y;r=J*f+T*t;if(0<=r&&r<=m*C){m=-s*T+v*J;if(-x*C<=m&&m<=C*(1+x)){r/=C;m=Math.sqrt(f*f+t*t);f/=m;t/=m;b[0]=r;e.Set(f, +t);return true}}}return false};Z.prototype.Extend=function(b){this.ExtendForward(b);this.ExtendBackward(b)};Z.prototype.ExtendForward=function(b){var e=this.p2.x-this.p1.x,f=this.p2.y-this.p1.y;b=Math.min(e>0?(b.upperBound.x-this.p1.x)/e:e<0?(b.lowerBound.x-this.p1.x)/e:Number.POSITIVE_INFINITY,f>0?(b.upperBound.y-this.p1.y)/f:f<0?(b.lowerBound.y-this.p1.y)/f:Number.POSITIVE_INFINITY);this.p2.x=this.p1.x+e*b;this.p2.y=this.p1.y+f*b};Z.prototype.ExtendBackward=function(b){var e=-this.p2.x+this.p1.x, +f=-this.p2.y+this.p1.y;b=Math.min(e>0?(b.upperBound.x-this.p2.x)/e:e<0?(b.lowerBound.x-this.p2.x)/e:Number.POSITIVE_INFINITY,f>0?(b.upperBound.y-this.p2.y)/f:f<0?(b.lowerBound.y-this.p2.y)/f:Number.POSITIVE_INFINITY);this.p1.x=this.p2.x+e*b;this.p1.y=this.p2.y+f*b};d.b2SeparationFunction=function(){this.m_localPoint=new p;this.m_axis=new p};d.prototype.Initialize=function(b,e,f,m,r){this.m_proxyA=e;this.m_proxyB=m;var s=parseInt(b.count);y.b2Assert(01){b=b.metric;s=this.GetMetric();if(s<0.5*b||2*b0?w.CrossFV(1,b):w.CrossVF(b,1);default:y.b2Assert(false);return new p}};h.prototype.GetClosestPoint= +function(){switch(this.m_count){case 0:y.b2Assert(false);return new p;case 1:return this.m_v1.w;case 2:return new p(this.m_v1.a*this.m_v1.w.x+this.m_v2.a*this.m_v2.w.x,this.m_v1.a*this.m_v1.w.y+this.m_v2.a*this.m_v2.w.y);default:y.b2Assert(false);return new p}};h.prototype.GetWitnessPoints=function(b,e){switch(this.m_count){case 0:y.b2Assert(false);break;case 1:b.SetV(this.m_v1.wA);e.SetV(this.m_v1.wB);break;case 2:b.x=this.m_v1.a*this.m_v1.wA.x+this.m_v2.a*this.m_v2.wA.x;b.y=this.m_v1.a*this.m_v1.wA.y+ +this.m_v2.a*this.m_v2.wA.y;e.x=this.m_v1.a*this.m_v1.wB.x+this.m_v2.a*this.m_v2.wB.x;e.y=this.m_v1.a*this.m_v1.wB.y+this.m_v2.a*this.m_v2.wB.y;break;case 3:e.x=b.x=this.m_v1.a*this.m_v1.wA.x+this.m_v2.a*this.m_v2.wA.x+this.m_v3.a*this.m_v3.wA.x;e.y=b.y=this.m_v1.a*this.m_v1.wA.y+this.m_v2.a*this.m_v2.wA.y+this.m_v3.a*this.m_v3.wA.y;break;default:y.b2Assert(false)}};h.prototype.GetMetric=function(){switch(this.m_count){case 0:y.b2Assert(false);return 0;case 1:return 0;case 2:return w.SubtractVV(this.m_v1.w, +this.m_v2.w).Length();case 3:return w.CrossVV(w.SubtractVV(this.m_v2.w,this.m_v1.w),w.SubtractVV(this.m_v3.w,this.m_v1.w));default:y.b2Assert(false);return 0}};h.prototype.Solve2=function(){var b=this.m_v1.w,e=this.m_v2.w,f=w.SubtractVV(e,b);b=-(b.x*f.x+b.y*f.y);if(b<=0)this.m_count=this.m_v1.a=1;else{e=e.x*f.x+e.y*f.y;if(e<=0){this.m_count=this.m_v2.a=1;this.m_v1.Set(this.m_v2)}else{f=1/(e+b);this.m_v1.a=e*f;this.m_v2.a=b*f;this.m_count=2}}};h.prototype.Solve3=function(){var b=this.m_v1.w,e=this.m_v2.w, +f=this.m_v3.w,m=w.SubtractVV(e,b),r=w.Dot(b,m),s=w.Dot(e,m);r=-r;var v=w.SubtractVV(f,b),t=w.Dot(b,v),x=w.Dot(f,v);t=-t;var C=w.SubtractVV(f,e),J=w.Dot(e,C);C=w.Dot(f,C);J=-J;v=w.CrossVV(m,v);m=v*w.CrossVV(e,f);f=v*w.CrossVV(f,b);b=v*w.CrossVV(b,e);if(r<=0&&t<=0)this.m_count=this.m_v1.a=1;else if(s>0&&r>0&&b<=0){x=1/(s+r);this.m_v1.a=s*x;this.m_v2.a=r*x;this.m_count=2}else if(x>0&&t>0&&f<=0){s=1/(x+t);this.m_v1.a=x*s;this.m_v3.a=t*s;this.m_count=2;this.m_v2.Set(this.m_v3)}else if(s<=0&&J<=0){this.m_count= +this.m_v2.a=1;this.m_v1.Set(this.m_v2)}else if(x<=0&&C<=0){this.m_count=this.m_v3.a=1;this.m_v1.Set(this.m_v3)}else if(C>0&&J>0&&m<=0){s=1/(C+J);this.m_v2.a=C*s;this.m_v3.a=J*s;this.m_count=2;this.m_v1.Set(this.m_v3)}else{s=1/(m+f+b);this.m_v1.a=m*s;this.m_v2.a=f*s;this.m_v3.a=b*s;this.m_count=3}};l.b2SimplexCache=function(){this.indexA=new Vector_a2j_Number(3);this.indexB=new Vector_a2j_Number(3)};j.b2SimplexVertex=function(){};j.prototype.Set=function(b){this.wA.SetV(b.wA);this.wB.SetV(b.wB);this.w.SetV(b.w); +this.a=b.a;this.indexA=b.indexA;this.indexB=b.indexB};o.b2TimeOfImpact=function(){};o.TimeOfImpact=function(b){++o.b2_toiCalls;var e=b.proxyA,f=b.proxyB,m=b.sweepA,r=b.sweepB;y.b2Assert(m.t0==r.t0);y.b2Assert(1-m.t0>Number.MIN_VALUE);var s=e.m_radius+f.m_radius;b=b.tolerance;var v=0,t=0,x=0;o.s_cache.count=0;for(o.s_distanceInput.useRadii=false;;){m.GetTransform(o.s_xfA,v);r.GetTransform(o.s_xfB,v);o.s_distanceInput.proxyA=e;o.s_distanceInput.proxyB=f;o.s_distanceInput.transformA=o.s_xfA;o.s_distanceInput.transformB= +o.s_xfB;W.Distance(o.s_distanceOutput,o.s_cache,o.s_distanceInput);if(o.s_distanceOutput.distance<=0){v=1;break}o.s_fcn.Initialize(o.s_cache,e,o.s_xfA,f,o.s_xfB);var C=o.s_fcn.Evaluate(o.s_xfA,o.s_xfB);if(C<=0){v=1;break}if(t==0)x=C>s?w.Max(s-b,0.75*s):w.Max(C-b,0.02*s);if(C-x<0.5*b){if(t==0){v=1;break}break}var J=v,T=v,P=1;C=C;m.GetTransform(o.s_xfA,P);r.GetTransform(o.s_xfB,P);var X=o.s_fcn.Evaluate(o.s_xfA,o.s_xfB);if(X>=x){v=1;break}for(var $=0;;){var ba=0;ba=$&1?T+(x-C)*(P-T)/(X-C):0.5*(T+P); +m.GetTransform(o.s_xfA,ba);r.GetTransform(o.s_xfB,ba);var ca=o.s_fcn.Evaluate(o.s_xfA,o.s_xfB);if(w.Abs(ca-x)<0.025*b){J=ba;break}if(ca>x){T=ba;C=ca}else{P=ba;X=ca}++$;++o.b2_toiRootIters;if($==50)break}o.b2_toiMaxRootIters=w.Max(o.b2_toiMaxRootIters,$);if(J<(1+100*Number.MIN_VALUE)*v)break;v=J;t++;++o.b2_toiIters;if(t==1E3)break}o.b2_toiMaxIters=w.Max(o.b2_toiMaxIters,t);return v};Box2D.postDefs.push(function(){Box2D.Collision.b2TimeOfImpact.b2_toiCalls=0;Box2D.Collision.b2TimeOfImpact.b2_toiIters= +0;Box2D.Collision.b2TimeOfImpact.b2_toiMaxIters=0;Box2D.Collision.b2TimeOfImpact.b2_toiRootIters=0;Box2D.Collision.b2TimeOfImpact.b2_toiMaxRootIters=0;Box2D.Collision.b2TimeOfImpact.s_cache=new l;Box2D.Collision.b2TimeOfImpact.s_distanceInput=new Y;Box2D.Collision.b2TimeOfImpact.s_xfA=new U;Box2D.Collision.b2TimeOfImpact.s_xfB=new U;Box2D.Collision.b2TimeOfImpact.s_fcn=new d;Box2D.Collision.b2TimeOfImpact.s_distanceOutput=new k});q.b2TOIInput=function(){this.proxyA=new z;this.proxyB=new z;this.sweepA= +new A;this.sweepB=new A};n.b2WorldManifold=function(){this.m_normal=new p};n.prototype.b2WorldManifold=function(){this.m_points=new Vector(y.b2_maxManifoldPoints);for(var b=0;bNumber.MIN_VALUE*Number.MIN_VALUE){x=Math.sqrt(x);this.m_normal.x=v/x;this.m_normal.y=t/x}else{this.m_normal.x=1;this.m_normal.y=0}v=e+f*this.m_normal.y;m=m-r*this.m_normal.y;this.m_points[0].x=0.5*(s+f*this.m_normal.x+(b-r*this.m_normal.x));this.m_points[0].y=0.5*(v+m);break;case E.e_faceA:t=e.R;v=b.m_localPlaneNormal;x=t.col1.x*v.x+t.col2.x*v.y;C=t.col1.y* +v.x+t.col2.y*v.y;t=e.R;v=b.m_localPoint;J=e.position.x+t.col1.x*v.x+t.col2.x*v.y;T=e.position.y+t.col1.y*v.x+t.col2.y*v.y;this.m_normal.x=x;this.m_normal.y=C;for(s=0;sthis.m_radius){D.SetV(u);return Math.PI*this.m_radius*this.m_radius}z=this.m_radius*this.m_radius;var O=H*H;H=z*(Math.asin(H/this.m_radius)+Math.PI/2)+H*Math.sqrt(z-O);z=-2/3*Math.pow(z-O,1.5)/H;D.x=u.x+k.x*z;D.y=u.y+k.y*z;return H};G.prototype.GetLocalPosition= +function(){return this.m_p};G.prototype.SetLocalPosition=function(k){this.m_p.SetV(k)};G.prototype.GetRadius=function(){return this.m_radius};G.prototype.SetRadius=function(k){if(k===undefined)k=0;this.m_radius=k};G.prototype.b2CircleShape=function(k){if(k===undefined)k=0;this.__super.b2Shape.call(this);this.m_type=U.e_circleShape;this.m_radius=k};K.b2EdgeChainDef=function(){};K.prototype.b2EdgeChainDef=function(){this.vertexCount=0;this.isALoop=true;this.vertices=[]};Box2D.inherit(y,Box2D.Collision.Shapes.b2Shape); +y.prototype.__super=Box2D.Collision.Shapes.b2Shape.prototype;y.b2EdgeShape=function(){Box2D.Collision.Shapes.b2Shape.b2Shape.apply(this,arguments);this.s_supportVec=new V;this.m_v1=new V;this.m_v2=new V;this.m_coreV1=new V;this.m_coreV2=new V;this.m_normal=new V;this.m_direction=new V;this.m_cornerDir1=new V;this.m_cornerDir2=new V};y.prototype.TestPoint=function(){return false};y.prototype.RayCast=function(k,z,u){var D,H=z.p2.x-z.p1.x,O=z.p2.y-z.p1.y;D=u.R;var E=u.position.x+(D.col1.x*this.m_v1.x+ +D.col2.x*this.m_v1.y),R=u.position.y+(D.col1.y*this.m_v1.x+D.col2.y*this.m_v1.y),N=u.position.y+(D.col1.y*this.m_v2.x+D.col2.y*this.m_v2.y)-R;u=-(u.position.x+(D.col1.x*this.m_v2.x+D.col2.x*this.m_v2.y)-E);D=100*Number.MIN_VALUE;var S=-(H*N+O*u);if(S>D){E=z.p1.x-E;var aa=z.p1.y-R;R=E*N+aa*u;if(0<=R&&R<=z.maxFraction*S){z=-H*aa+O*E;if(-D*S<=z&&z<=S*(1+D)){R/=S;k.fraction=R;z=Math.sqrt(N*N+u*u);k.normal.x=N/z;k.normal.y=u/z;return true}}}return false};y.prototype.ComputeAABB=function(k,z){var u=z.R, +D=z.position.x+(u.col1.x*this.m_v1.x+u.col2.x*this.m_v1.y),H=z.position.y+(u.col1.y*this.m_v1.x+u.col2.y*this.m_v1.y),O=z.position.x+(u.col1.x*this.m_v2.x+u.col2.x*this.m_v2.y);u=z.position.y+(u.col1.y*this.m_v2.x+u.col2.y*this.m_v2.y);if(D0)if(k>0)return 0;else{O.x=-k/(E-k)*O.x+E/(E-k)*u.x;O.y=-k/(E-k)*O.y+E/(E-k)*u.y}else if(k>0){u.x=-k/(E-k)*O.x+E/(E-k)*u.x;u.y=-k/(E-k)*O.y+E/(E-k)*u.y}D.x=(H.x+O.x+u.x)/3;D.y=(H.y+O.y+u.y)/3;return 0.5*((O.x-H.x)*(u.y-H.y)-(O.y-H.y)*(u.x-H.x))};y.prototype.GetLength=function(){return this.m_length};y.prototype.GetVertex1=function(){return this.m_v1};y.prototype.GetVertex2= +function(){return this.m_v2};y.prototype.GetCoreVertex1=function(){return this.m_coreV1};y.prototype.GetCoreVertex2=function(){return this.m_coreV2};y.prototype.GetNormalVector=function(){return this.m_normal};y.prototype.GetDirectionVector=function(){return this.m_direction};y.prototype.GetCorner1Vector=function(){return this.m_cornerDir1};y.prototype.GetCorner2Vector=function(){return this.m_cornerDir2};y.prototype.Corner1IsConvex=function(){return this.m_cornerConvex1};y.prototype.Corner2IsConvex= +function(){return this.m_cornerConvex2};y.prototype.GetFirstVertex=function(k){var z=k.R;return new V(k.position.x+(z.col1.x*this.m_coreV1.x+z.col2.x*this.m_coreV1.y),k.position.y+(z.col1.y*this.m_coreV1.x+z.col2.y*this.m_coreV1.y))};y.prototype.GetNextEdge=function(){return this.m_nextEdge};y.prototype.GetPrevEdge=function(){return this.m_prevEdge};y.prototype.Support=function(k,z,u){if(z===undefined)z=0;if(u===undefined)u=0;var D=k.R,H=k.position.x+(D.col1.x*this.m_coreV1.x+D.col2.x*this.m_coreV1.y), +O=k.position.y+(D.col1.y*this.m_coreV1.x+D.col2.y*this.m_coreV1.y),E=k.position.x+(D.col1.x*this.m_coreV2.x+D.col2.x*this.m_coreV2.y);k=k.position.y+(D.col1.y*this.m_coreV2.x+D.col2.y*this.m_coreV2.y);if(H*z+O*u>E*z+k*u){this.s_supportVec.x=H;this.s_supportVec.y=O}else{this.s_supportVec.x=E;this.s_supportVec.y=k}return this.s_supportVec};y.prototype.b2EdgeShape=function(k,z){this.__super.b2Shape.call(this);this.m_type=U.e_edgeShape;this.m_nextEdge=this.m_prevEdge=null;this.m_v1=k;this.m_v2=z;this.m_direction.Set(this.m_v2.x- +this.m_v1.x,this.m_v2.y-this.m_v1.y);this.m_length=this.m_direction.Normalize();this.m_normal.Set(this.m_direction.y,-this.m_direction.x);this.m_coreV1.Set(-F.b2_toiSlop*(this.m_normal.x-this.m_direction.x)+this.m_v1.x,-F.b2_toiSlop*(this.m_normal.y-this.m_direction.y)+this.m_v1.y);this.m_coreV2.Set(-F.b2_toiSlop*(this.m_normal.x+this.m_direction.x)+this.m_v2.x,-F.b2_toiSlop*(this.m_normal.y+this.m_direction.y)+this.m_v2.y);this.m_cornerDir1=this.m_normal;this.m_cornerDir2.Set(-this.m_normal.x,-this.m_normal.y)}; +y.prototype.SetPrevEdge=function(k,z,u,D){this.m_prevEdge=k;this.m_coreV1=z;this.m_cornerDir1=u;this.m_cornerConvex1=D};y.prototype.SetNextEdge=function(k,z,u,D){this.m_nextEdge=k;this.m_coreV2=z;this.m_cornerDir2=u;this.m_cornerConvex2=D};w.b2MassData=function(){this.mass=0;this.center=new V(0,0);this.I=0};Box2D.inherit(A,Box2D.Collision.Shapes.b2Shape);A.prototype.__super=Box2D.Collision.Shapes.b2Shape.prototype;A.b2PolygonShape=function(){Box2D.Collision.Shapes.b2Shape.b2Shape.apply(this,arguments)}; +A.prototype.Copy=function(){var k=new A;k.Set(this);return k};A.prototype.Set=function(k){this.__super.Set.call(this,k);if(Box2D.is(k,A)){k=k instanceof A?k:null;this.m_centroid.SetV(k.m_centroid);this.m_vertexCount=k.m_vertexCount;this.Reserve(this.m_vertexCount);for(var z=0;zNumber.MIN_VALUE);this.m_normals[u].SetV(B.CrossVF(D, +1));this.m_normals[u].Normalize()}this.m_centroid=A.ComputeCentroid(this.m_vertices,this.m_vertexCount)};A.AsVector=function(k,z){if(z===undefined)z=0;var u=new A;u.SetAsVector(k,z);return u};A.prototype.SetAsBox=function(k,z){if(k===undefined)k=0;if(z===undefined)z=0;this.m_vertexCount=4;this.Reserve(4);this.m_vertices[0].Set(-k,-z);this.m_vertices[1].Set(k,-z);this.m_vertices[2].Set(k,z);this.m_vertices[3].Set(-k,z);this.m_normals[0].Set(0,-1);this.m_normals[1].Set(1,0);this.m_normals[2].Set(0, +1);this.m_normals[3].Set(-1,0);this.m_centroid.SetZero()};A.AsBox=function(k,z){if(k===undefined)k=0;if(z===undefined)z=0;var u=new A;u.SetAsBox(k,z);return u};A.prototype.SetAsOrientedBox=function(k,z,u,D){if(k===undefined)k=0;if(z===undefined)z=0;if(u===undefined)u=null;if(D===undefined)D=0;this.m_vertexCount=4;this.Reserve(4);this.m_vertices[0].Set(-k,-z);this.m_vertices[1].Set(k,-z);this.m_vertices[2].Set(k,z);this.m_vertices[3].Set(-k,z);this.m_normals[0].Set(0,-1);this.m_normals[1].Set(1,0); +this.m_normals[2].Set(0,1);this.m_normals[3].Set(-1,0);this.m_centroid=u;k=new Q;k.position=u;k.R.Set(D);for(u=0;u0)return false}return true};A.prototype.RayCast=function(k,z,u){var D=0,H=z.maxFraction,O=0,E=0,R,N;O=z.p1.x-u.position.x;E=z.p1.y-u.position.y;R=u.R;var S=O*R.col1.x+E*R.col1.y,aa=O*R.col2.x+E*R.col2.y;O=z.p2.x-u.position.x;E=z.p2.y-u.position.y;R=u.R;z=O*R.col1.x+E*R.col1.y-S;R=O*R.col2.x+E*R.col2.y-aa;for(var Z=parseInt(-1),d=0;d0&&O=0){k.fraction=D;R=u.R;N=this.m_normals[Z];k.normal.x=R.col1.x*N.x+R.col2.x*N.y;k.normal.y=R.col1.y*N.x+R.col2.y*N.y;return true}return false};A.prototype.ComputeAABB=function(k,z){for(var u=z.R,D=this.m_vertices[0],H=z.position.x+(u.col1.x*D.x+u.col2.x*D.y),O=z.position.y+(u.col1.y*D.x+u.col2.y*D.y),E=H,R=O,N=1;NS?E:S;R=R>D?R:D}k.lowerBound.x=H-this.m_radius;k.lowerBound.y=O-this.m_radius;k.upperBound.x=E+this.m_radius;k.upperBound.y=R+this.m_radius};A.prototype.ComputeMass=function(k,z){if(z===undefined)z=0;if(this.m_vertexCount==2){k.center.x=0.5*(this.m_vertices[0].x+this.m_vertices[1].x);k.center.y=0.5*(this.m_vertices[0].y+this.m_vertices[1].y);k.mass=0;k.I=0}else{for(var u=0,D=0,H=0,O=0,E=1/3,R=0;R0)if(aa){if(!S){N=k-1;R++}}else if(S){z=k-1;R++}S=aa}switch(R){case 0:if(S){k=new w;this.ComputeMass(k,1);D.SetV(B.MulX(u,k.center));return k.mass}else return 0;case 1:if(N==-1)N=this.m_vertexCount-1;else z=this.m_vertexCount-1}k=parseInt((N+1)%this.m_vertexCount);H=parseInt((z+1)%this.m_vertexCount);O=(0-E[N])/(E[k]-E[N]);E=(0-E[z])/(E[H]-E[z]);N=new V(this.m_vertices[N].x* +(1-O)+this.m_vertices[k].x*O,this.m_vertices[N].y*(1-O)+this.m_vertices[k].y*O);z=new V(this.m_vertices[z].x*(1-E)+this.m_vertices[H].x*E,this.m_vertices[z].y*(1-E)+this.m_vertices[H].y*E);E=0;O=new V;R=this.m_vertices[k];for(k=k;k!=H;){k=(k+1)%this.m_vertexCount;S=k==H?z:this.m_vertices[k];aa=0.5*((R.x-N.x)*(S.y-N.y)-(R.y-N.y)*(S.x-N.x));E+=aa;O.x+=aa*(N.x+R.x+S.x)/3;O.y+=aa*(N.y+R.y+S.y)/3;R=S}O.Multiply(1/E);D.SetV(B.MulX(u,O));return E};A.prototype.GetVertexCount=function(){return this.m_vertexCount}; +A.prototype.GetVertices=function(){return this.m_vertices};A.prototype.GetNormals=function(){return this.m_normals};A.prototype.GetSupport=function(k){for(var z=0,u=this.m_vertices[0].x*k.x+this.m_vertices[0].y*k.y,D=1;Du){z=D;u=H}}return z};A.prototype.GetSupportVertex=function(k){for(var z=0,u=this.m_vertices[0].x*k.x+this.m_vertices[0].y*k.y,D=1;Du){z=D;u=H}}return this.m_vertices[z]};A.prototype.Validate=function(){return false};A.prototype.b2PolygonShape=function(){this.__super.b2Shape.call(this);this.m_type=U.e_polygonShape;this.m_centroid=new V;this.m_vertices=new Vector;this.m_normals=new Vector};A.prototype.Reserve=function(k){if(k===undefined)k=0;for(var z=parseInt(this.m_vertices.length);zd)d=q;if(j>h)h=j}l=(d-N)*(h-Z);if(l<0.95*z){z=l;k.R.col1.x=E;k.R.col1.y=R;k.R.col2.x=S;k.R.col2.y=aa;E=0.5*(N+d);R=0.5*(Z+h);S=k.R;k.center.x=O.x+(S.col1.x*E+S.col2.x*R);k.center.y=O.y+(S.col1.y*E+S.col2.y*R);k.extents.x=0.5*(d-N);k.extents.y=0.5*(h-Z)}}};Box2D.postDefs.push(function(){Box2D.Collision.Shapes.b2PolygonShape.s_mat=new p});U.b2Shape=function(){};U.prototype.Copy=function(){return null};U.prototype.Set=function(k){this.m_radius= +k.m_radius};U.prototype.GetType=function(){return this.m_type};U.prototype.TestPoint=function(){return false};U.prototype.RayCast=function(){return false};U.prototype.ComputeAABB=function(){};U.prototype.ComputeMass=function(){};U.prototype.ComputeSubmergedArea=function(){return 0};U.TestOverlap=function(k,z,u,D){var H=new L;H.proxyA=new W;H.proxyA.Set(k);H.proxyB=new W;H.proxyB.Set(u);H.transformA=z;H.transformB=D;H.useRadii=true;k=new Y;k.count=0;z=new I;M.Distance(z,k,H);return z.distance<10*Number.MIN_VALUE}; +U.prototype.b2Shape=function(){this.m_type=U.e_unknownShape;this.m_radius=F.b2_linearSlop};Box2D.postDefs.push(function(){Box2D.Collision.Shapes.b2Shape.e_unknownShape=parseInt(-1);Box2D.Collision.Shapes.b2Shape.e_circleShape=0;Box2D.Collision.Shapes.b2Shape.e_polygonShape=1;Box2D.Collision.Shapes.b2Shape.e_edgeShape=2;Box2D.Collision.Shapes.b2Shape.e_shapeTypeCount=3;Box2D.Collision.Shapes.b2Shape.e_hitCollide=1;Box2D.Collision.Shapes.b2Shape.e_missCollide=0;Box2D.Collision.Shapes.b2Shape.e_startsInsideCollide= +parseInt(-1)})})(); +(function(){var F=Box2D.Common.b2Color,G=Box2D.Common.b2Settings,K=Box2D.Common.Math.b2Math;F.b2Color=function(){this._b=this._g=this._r=0};F.prototype.b2Color=function(y,w,A){if(y===undefined)y=0;if(w===undefined)w=0;if(A===undefined)A=0;this._r=Box2D.parseUInt(255*K.Clamp(y,0,1));this._g=Box2D.parseUInt(255*K.Clamp(w,0,1));this._b=Box2D.parseUInt(255*K.Clamp(A,0,1))};F.prototype.Set=function(y,w,A){if(y===undefined)y=0;if(w===undefined)w=0;if(A===undefined)A=0;this._r=Box2D.parseUInt(255*K.Clamp(y, +0,1));this._g=Box2D.parseUInt(255*K.Clamp(w,0,1));this._b=Box2D.parseUInt(255*K.Clamp(A,0,1))};Object.defineProperty(F.prototype,"r",{enumerable:false,configurable:true,set:function(y){if(y===undefined)y=0;this._r=Box2D.parseUInt(255*K.Clamp(y,0,1))}});Object.defineProperty(F.prototype,"g",{enumerable:false,configurable:true,set:function(y){if(y===undefined)y=0;this._g=Box2D.parseUInt(255*K.Clamp(y,0,1))}});Object.defineProperty(F.prototype,"b",{enumerable:false,configurable:true,set:function(y){if(y=== +undefined)y=0;this._b=Box2D.parseUInt(255*K.Clamp(y,0,1))}});Object.defineProperty(F.prototype,"color",{enumerable:false,configurable:true,get:function(){return this._r<<16|this._g<<8|this._b}});G.b2Settings=function(){};G.b2MixFriction=function(y,w){if(y===undefined)y=0;if(w===undefined)w=0;return Math.sqrt(y*w)};G.b2MixRestitution=function(y,w){if(y===undefined)y=0;if(w===undefined)w=0;return y>w?y:w};G.b2Assert=function(y){if(!y)throw"Assertion Failed";};Box2D.postDefs.push(function(){Box2D.Common.b2Settings.VERSION= +"2.1alpha";Box2D.Common.b2Settings.USHRT_MAX=65535;Box2D.Common.b2Settings.b2_pi=Math.PI;Box2D.Common.b2Settings.b2_maxManifoldPoints=2;Box2D.Common.b2Settings.b2_aabbExtension=0.1;Box2D.Common.b2Settings.b2_aabbMultiplier=2;Box2D.Common.b2Settings.b2_polygonRadius=2*G.b2_linearSlop;Box2D.Common.b2Settings.b2_linearSlop=0.0050;Box2D.Common.b2Settings.b2_angularSlop=2/180*G.b2_pi;Box2D.Common.b2Settings.b2_toiSlop=8*G.b2_linearSlop;Box2D.Common.b2Settings.b2_maxTOIContactsPerIsland=32;Box2D.Common.b2Settings.b2_maxTOIJointsPerIsland= +32;Box2D.Common.b2Settings.b2_velocityThreshold=1;Box2D.Common.b2Settings.b2_maxLinearCorrection=0.2;Box2D.Common.b2Settings.b2_maxAngularCorrection=8/180*G.b2_pi;Box2D.Common.b2Settings.b2_maxTranslation=2;Box2D.Common.b2Settings.b2_maxTranslationSquared=G.b2_maxTranslation*G.b2_maxTranslation;Box2D.Common.b2Settings.b2_maxRotation=0.5*G.b2_pi;Box2D.Common.b2Settings.b2_maxRotationSquared=G.b2_maxRotation*G.b2_maxRotation;Box2D.Common.b2Settings.b2_contactBaumgarte=0.2;Box2D.Common.b2Settings.b2_timeToSleep= +0.5;Box2D.Common.b2Settings.b2_linearSleepTolerance=0.01;Box2D.Common.b2Settings.b2_angularSleepTolerance=2/180*G.b2_pi})})(); +(function(){var F=Box2D.Common.Math.b2Mat22,G=Box2D.Common.Math.b2Mat33,K=Box2D.Common.Math.b2Math,y=Box2D.Common.Math.b2Sweep,w=Box2D.Common.Math.b2Transform,A=Box2D.Common.Math.b2Vec2,U=Box2D.Common.Math.b2Vec3;F.b2Mat22=function(){this.col1=new A;this.col2=new A};F.prototype.b2Mat22=function(){this.SetIdentity()};F.FromAngle=function(p){if(p===undefined)p=0;var B=new F;B.Set(p);return B};F.FromVV=function(p,B){var Q=new F;Q.SetVV(p,B);return Q};F.prototype.Set=function(p){if(p===undefined)p=0; +var B=Math.cos(p);p=Math.sin(p);this.col1.x=B;this.col2.x=-p;this.col1.y=p;this.col2.y=B};F.prototype.SetVV=function(p,B){this.col1.SetV(p);this.col2.SetV(B)};F.prototype.Copy=function(){var p=new F;p.SetM(this);return p};F.prototype.SetM=function(p){this.col1.SetV(p.col1);this.col2.SetV(p.col2)};F.prototype.AddM=function(p){this.col1.x+=p.col1.x;this.col1.y+=p.col1.y;this.col2.x+=p.col2.x;this.col2.y+=p.col2.y};F.prototype.SetIdentity=function(){this.col1.x=1;this.col2.x=0;this.col1.y=0;this.col2.y= +1};F.prototype.SetZero=function(){this.col1.x=0;this.col2.x=0;this.col1.y=0;this.col2.y=0};F.prototype.GetAngle=function(){return Math.atan2(this.col1.y,this.col1.x)};F.prototype.GetInverse=function(p){var B=this.col1.x,Q=this.col2.x,V=this.col1.y,M=this.col2.y,L=B*M-Q*V;if(L!=0)L=1/L;p.col1.x=L*M;p.col2.x=-L*Q;p.col1.y=-L*V;p.col2.y=L*B;return p};F.prototype.Solve=function(p,B,Q){if(B===undefined)B=0;if(Q===undefined)Q=0;var V=this.col1.x,M=this.col2.x,L=this.col1.y,I=this.col2.y,W=V*I-M*L;if(W!= +0)W=1/W;p.x=W*(I*B-M*Q);p.y=W*(V*Q-L*B);return p};F.prototype.Abs=function(){this.col1.Abs();this.col2.Abs()};G.b2Mat33=function(){this.col1=new U;this.col2=new U;this.col3=new U};G.prototype.b2Mat33=function(p,B,Q){if(p===undefined)p=null;if(B===undefined)B=null;if(Q===undefined)Q=null;if(!p&&!B&&!Q){this.col1.SetZero();this.col2.SetZero();this.col3.SetZero()}else{this.col1.SetV(p);this.col2.SetV(B);this.col3.SetV(Q)}};G.prototype.SetVVV=function(p,B,Q){this.col1.SetV(p);this.col2.SetV(B);this.col3.SetV(Q)}; +G.prototype.Copy=function(){return new G(this.col1,this.col2,this.col3)};G.prototype.SetM=function(p){this.col1.SetV(p.col1);this.col2.SetV(p.col2);this.col3.SetV(p.col3)};G.prototype.AddM=function(p){this.col1.x+=p.col1.x;this.col1.y+=p.col1.y;this.col1.z+=p.col1.z;this.col2.x+=p.col2.x;this.col2.y+=p.col2.y;this.col2.z+=p.col2.z;this.col3.x+=p.col3.x;this.col3.y+=p.col3.y;this.col3.z+=p.col3.z};G.prototype.SetIdentity=function(){this.col1.x=1;this.col2.x=0;this.col3.x=0;this.col1.y=0;this.col2.y= +1;this.col3.y=0;this.col1.z=0;this.col2.z=0;this.col3.z=1};G.prototype.SetZero=function(){this.col1.x=0;this.col2.x=0;this.col3.x=0;this.col1.y=0;this.col2.y=0;this.col3.y=0;this.col1.z=0;this.col2.z=0;this.col3.z=0};G.prototype.Solve22=function(p,B,Q){if(B===undefined)B=0;if(Q===undefined)Q=0;var V=this.col1.x,M=this.col2.x,L=this.col1.y,I=this.col2.y,W=V*I-M*L;if(W!=0)W=1/W;p.x=W*(I*B-M*Q);p.y=W*(V*Q-L*B);return p};G.prototype.Solve33=function(p,B,Q,V){if(B===undefined)B=0;if(Q===undefined)Q=0; +if(V===undefined)V=0;var M=this.col1.x,L=this.col1.y,I=this.col1.z,W=this.col2.x,Y=this.col2.y,k=this.col2.z,z=this.col3.x,u=this.col3.y,D=this.col3.z,H=M*(Y*D-k*u)+L*(k*z-W*D)+I*(W*u-Y*z);if(H!=0)H=1/H;p.x=H*(B*(Y*D-k*u)+Q*(k*z-W*D)+V*(W*u-Y*z));p.y=H*(M*(Q*D-V*u)+L*(V*z-B*D)+I*(B*u-Q*z));p.z=H*(M*(Y*V-k*Q)+L*(k*B-W*V)+I*(W*Q-Y*B));return p};K.b2Math=function(){};K.IsValid=function(p){if(p===undefined)p=0;return isFinite(p)};K.Dot=function(p,B){return p.x*B.x+p.y*B.y};K.CrossVV=function(p,B){return p.x* +B.y-p.y*B.x};K.CrossVF=function(p,B){if(B===undefined)B=0;return new A(B*p.y,-B*p.x)};K.CrossFV=function(p,B){if(p===undefined)p=0;return new A(-p*B.y,p*B.x)};K.MulMV=function(p,B){return new A(p.col1.x*B.x+p.col2.x*B.y,p.col1.y*B.x+p.col2.y*B.y)};K.MulTMV=function(p,B){return new A(K.Dot(B,p.col1),K.Dot(B,p.col2))};K.MulX=function(p,B){var Q=K.MulMV(p.R,B);Q.x+=p.position.x;Q.y+=p.position.y;return Q};K.MulXT=function(p,B){var Q=K.SubtractVV(B,p.position),V=Q.x*p.R.col1.x+Q.y*p.R.col1.y;Q.y=Q.x* +p.R.col2.x+Q.y*p.R.col2.y;Q.x=V;return Q};K.AddVV=function(p,B){return new A(p.x+B.x,p.y+B.y)};K.SubtractVV=function(p,B){return new A(p.x-B.x,p.y-B.y)};K.Distance=function(p,B){var Q=p.x-B.x,V=p.y-B.y;return Math.sqrt(Q*Q+V*V)};K.DistanceSquared=function(p,B){var Q=p.x-B.x,V=p.y-B.y;return Q*Q+V*V};K.MulFV=function(p,B){if(p===undefined)p=0;return new A(p*B.x,p*B.y)};K.AddMM=function(p,B){return F.FromVV(K.AddVV(p.col1,B.col1),K.AddVV(p.col2,B.col2))};K.MulMM=function(p,B){return F.FromVV(K.MulMV(p, +B.col1),K.MulMV(p,B.col2))};K.MulTMM=function(p,B){var Q=new A(K.Dot(p.col1,B.col1),K.Dot(p.col2,B.col1)),V=new A(K.Dot(p.col1,B.col2),K.Dot(p.col2,B.col2));return F.FromVV(Q,V)};K.Abs=function(p){if(p===undefined)p=0;return p>0?p:-p};K.AbsV=function(p){return new A(K.Abs(p.x),K.Abs(p.y))};K.AbsM=function(p){return F.FromVV(K.AbsV(p.col1),K.AbsV(p.col2))};K.Min=function(p,B){if(p===undefined)p=0;if(B===undefined)B=0;return pB?p:B};K.MaxV=function(p,B){return new A(K.Max(p.x,B.x),K.Max(p.y,B.y))};K.Clamp=function(p,B,Q){if(p===undefined)p=0;if(B===undefined)B=0;if(Q===undefined)Q=0;return pQ?Q:p};K.ClampV=function(p,B,Q){return K.MaxV(B,K.MinV(p,Q))};K.Swap=function(p,B){var Q=p[0];p[0]=B[0];B[0]=Q};K.Random=function(){return Math.random()*2-1};K.RandomRange=function(p,B){if(p===undefined)p=0;if(B===undefined)B=0;var Q=Math.random();return Q= +(B-p)*Q+p};K.NextPowerOfTwo=function(p){if(p===undefined)p=0;p|=p>>1&2147483647;p|=p>>2&1073741823;p|=p>>4&268435455;p|=p>>8&16777215;p|=p>>16&65535;return p+1};K.IsPowerOfTwo=function(p){if(p===undefined)p=0;return p>0&&(p&p-1)==0};Box2D.postDefs.push(function(){Box2D.Common.Math.b2Math.b2Vec2_zero=new A(0,0);Box2D.Common.Math.b2Math.b2Mat22_identity=F.FromVV(new A(1,0),new A(0,1));Box2D.Common.Math.b2Math.b2Transform_identity=new w(K.b2Vec2_zero,K.b2Mat22_identity)});y.b2Sweep=function(){this.localCenter= +new A;this.c0=new A;this.c=new A};y.prototype.Set=function(p){this.localCenter.SetV(p.localCenter);this.c0.SetV(p.c0);this.c.SetV(p.c);this.a0=p.a0;this.a=p.a;this.t0=p.t0};y.prototype.Copy=function(){var p=new y;p.localCenter.SetV(this.localCenter);p.c0.SetV(this.c0);p.c.SetV(this.c);p.a0=this.a0;p.a=this.a;p.t0=this.t0;return p};y.prototype.GetTransform=function(p,B){if(B===undefined)B=0;p.position.x=(1-B)*this.c0.x+B*this.c.x;p.position.y=(1-B)*this.c0.y+B*this.c.y;p.R.Set((1-B)*this.a0+B*this.a); +var Q=p.R;p.position.x-=Q.col1.x*this.localCenter.x+Q.col2.x*this.localCenter.y;p.position.y-=Q.col1.y*this.localCenter.x+Q.col2.y*this.localCenter.y};y.prototype.Advance=function(p){if(p===undefined)p=0;if(this.t0Number.MIN_VALUE){var B=(p-this.t0)/(1-this.t0);this.c0.x=(1-B)*this.c0.x+B*this.c.x;this.c0.y=(1-B)*this.c0.y+B*this.c.y;this.a0=(1-B)*this.a0+B*this.a;this.t0=p}};w.b2Transform=function(){this.position=new A;this.R=new F};w.prototype.b2Transform=function(p,B){if(p===undefined)p= +null;if(B===undefined)B=null;if(p){this.position.SetV(p);this.R.SetM(B)}};w.prototype.Initialize=function(p,B){this.position.SetV(p);this.R.SetM(B)};w.prototype.SetIdentity=function(){this.position.SetZero();this.R.SetIdentity()};w.prototype.Set=function(p){this.position.SetV(p.position);this.R.SetM(p.R)};w.prototype.GetAngle=function(){return Math.atan2(this.R.col1.y,this.R.col1.x)};A.b2Vec2=function(){};A.prototype.b2Vec2=function(p,B){if(p===undefined)p=0;if(B===undefined)B=0;this.x=p;this.y=B}; +A.prototype.SetZero=function(){this.y=this.x=0};A.prototype.Set=function(p,B){if(p===undefined)p=0;if(B===undefined)B=0;this.x=p;this.y=B};A.prototype.SetV=function(p){this.x=p.x;this.y=p.y};A.prototype.GetNegative=function(){return new A(-this.x,-this.y)};A.prototype.NegativeSelf=function(){this.x=-this.x;this.y=-this.y};A.Make=function(p,B){if(p===undefined)p=0;if(B===undefined)B=0;return new A(p,B)};A.prototype.Copy=function(){return new A(this.x,this.y)};A.prototype.Add=function(p){this.x+=p.x; +this.y+=p.y};A.prototype.Subtract=function(p){this.x-=p.x;this.y-=p.y};A.prototype.Multiply=function(p){if(p===undefined)p=0;this.x*=p;this.y*=p};A.prototype.MulM=function(p){var B=this.x;this.x=p.col1.x*B+p.col2.x*this.y;this.y=p.col1.y*B+p.col2.y*this.y};A.prototype.MulTM=function(p){var B=K.Dot(this,p.col1);this.y=K.Dot(this,p.col2);this.x=B};A.prototype.CrossVF=function(p){if(p===undefined)p=0;var B=this.x;this.x=p*this.y;this.y=-p*B};A.prototype.CrossFV=function(p){if(p===undefined)p=0;var B= +this.x;this.x=-p*this.y;this.y=p*B};A.prototype.MinV=function(p){this.x=this.xp.x?this.x:p.x;this.y=this.y>p.y?this.y:p.y};A.prototype.Abs=function(){if(this.x<0)this.x=-this.x;if(this.y<0)this.y=-this.y};A.prototype.Length=function(){return Math.sqrt(this.x*this.x+this.y*this.y)};A.prototype.LengthSquared=function(){return this.x*this.x+this.y*this.y};A.prototype.Normalize=function(){var p=Math.sqrt(this.x*this.x+ +this.y*this.y);if(p0;a.SetNextEdge(c,g,e,f);c.SetPrevEdge(a,g,e,f);return b};k.prototype.CreateFixture=function(a){if(this.m_world.IsLocked()==true)return null;var c=new S;c.Create(this,this.m_xf,a);this.m_flags&k.e_activeFlag&&c.CreateProxy(this.m_world.m_contactManager.m_broadPhase,this.m_xf);c.m_next=this.m_fixtureList;this.m_fixtureList=c;++this.m_fixtureCount;c.m_body=this;c.m_density>0&&this.ResetMassData();this.m_world.m_flags|= +h.e_newFixture;return c};k.prototype.CreateFixture2=function(a,c){if(c===undefined)c=0;var g=new aa;g.shape=a;g.density=c;return this.CreateFixture(g)};k.prototype.DestroyFixture=function(a){if(this.m_world.IsLocked()!=true){for(var c=this.m_fixtureList,g=null;c!=null;){if(c==a){if(g)g.m_next=a.m_next;else this.m_fixtureList=a.m_next;break}g=c;c=c.m_next}for(c=this.m_contactList;c;){g=c.contact;c=c.next;var b=g.GetFixtureA(),e=g.GetFixtureB();if(a==b||a==e)this.m_world.m_contactManager.Destroy(g)}this.m_flags& +k.e_activeFlag&&a.DestroyProxy(this.m_world.m_contactManager.m_broadPhase);a.Destroy();a.m_body=null;a.m_next=null;--this.m_fixtureCount;this.ResetMassData()}};k.prototype.SetPositionAndAngle=function(a,c){if(c===undefined)c=0;var g;if(this.m_world.IsLocked()!=true){this.m_xf.R.Set(c);this.m_xf.position.SetV(a);g=this.m_xf.R;var b=this.m_sweep.localCenter;this.m_sweep.c.x=g.col1.x*b.x+g.col2.x*b.y;this.m_sweep.c.y=g.col1.y*b.x+g.col2.y*b.y;this.m_sweep.c.x+=this.m_xf.position.x;this.m_sweep.c.y+= +this.m_xf.position.y;this.m_sweep.c0.SetV(this.m_sweep.c);this.m_sweep.a0=this.m_sweep.a=c;b=this.m_world.m_contactManager.m_broadPhase;for(g=this.m_fixtureList;g;g=g.m_next)g.Synchronize(b,this.m_xf,this.m_xf);this.m_world.m_contactManager.FindNewContacts()}};k.prototype.SetTransform=function(a){this.SetPositionAndAngle(a.position,a.GetAngle())};k.prototype.GetTransform=function(){return this.m_xf};k.prototype.GetPosition=function(){return this.m_xf.position};k.prototype.SetPosition=function(a){this.SetPositionAndAngle(a, +this.GetAngle())};k.prototype.GetAngle=function(){return this.m_sweep.a};k.prototype.SetAngle=function(a){if(a===undefined)a=0;this.SetPositionAndAngle(this.GetPosition(),a)};k.prototype.GetWorldCenter=function(){return this.m_sweep.c};k.prototype.GetLocalCenter=function(){return this.m_sweep.localCenter};k.prototype.SetLinearVelocity=function(a){this.m_type!=k.b2_staticBody&&this.m_linearVelocity.SetV(a)};k.prototype.GetLinearVelocity=function(){return this.m_linearVelocity};k.prototype.SetAngularVelocity= +function(a){if(a===undefined)a=0;if(this.m_type!=k.b2_staticBody)this.m_angularVelocity=a};k.prototype.GetAngularVelocity=function(){return this.m_angularVelocity};k.prototype.GetDefinition=function(){var a=new z;a.type=this.GetType();a.allowSleep=(this.m_flags&k.e_allowSleepFlag)==k.e_allowSleepFlag;a.angle=this.GetAngle();a.angularDamping=this.m_angularDamping;a.angularVelocity=this.m_angularVelocity;a.fixedRotation=(this.m_flags&k.e_fixedRotationFlag)==k.e_fixedRotationFlag;a.bullet=(this.m_flags& +k.e_bulletFlag)==k.e_bulletFlag;a.awake=(this.m_flags&k.e_awakeFlag)==k.e_awakeFlag;a.linearDamping=this.m_linearDamping;a.linearVelocity.SetV(this.GetLinearVelocity());a.position=this.GetPosition();a.userData=this.GetUserData();return a};k.prototype.ApplyForce=function(a,c){if(this.m_type==k.b2_dynamicBody){this.IsAwake()==false&&this.SetAwake(true);this.m_force.x+=a.x;this.m_force.y+=a.y;this.m_torque+=(c.x-this.m_sweep.c.x)*a.y-(c.y-this.m_sweep.c.y)*a.x}};k.prototype.ApplyTorque=function(a){if(a=== +undefined)a=0;if(this.m_type==k.b2_dynamicBody){this.IsAwake()==false&&this.SetAwake(true);this.m_torque+=a}};k.prototype.ApplyImpulse=function(a,c){if(this.m_type==k.b2_dynamicBody){this.IsAwake()==false&&this.SetAwake(true);this.m_linearVelocity.x+=this.m_invMass*a.x;this.m_linearVelocity.y+=this.m_invMass*a.y;this.m_angularVelocity+=this.m_invI*((c.x-this.m_sweep.c.x)*a.y-(c.y-this.m_sweep.c.y)*a.x)}};k.prototype.Split=function(a){for(var c=this.GetLinearVelocity().Copy(),g=this.GetAngularVelocity(), +b=this.GetWorldCenter(),e=this.m_world.CreateBody(this.GetDefinition()),f,m=this.m_fixtureList;m;)if(a(m)){var r=m.m_next;if(f)f.m_next=r;else this.m_fixtureList=r;this.m_fixtureCount--;m.m_next=e.m_fixtureList;e.m_fixtureList=m;e.m_fixtureCount++;m.m_body=e;m=r}else{f=m;m=m.m_next}this.ResetMassData();e.ResetMassData();f=this.GetWorldCenter();a=e.GetWorldCenter();f=F.AddVV(c,F.CrossFV(g,F.SubtractVV(f,b)));c=F.AddVV(c,F.CrossFV(g,F.SubtractVV(a,b)));this.SetLinearVelocity(f);e.SetLinearVelocity(c); +this.SetAngularVelocity(g);e.SetAngularVelocity(g);this.SynchronizeFixtures();e.SynchronizeFixtures();return e};k.prototype.Merge=function(a){var c;for(c=a.m_fixtureList;c;){var g=c.m_next;a.m_fixtureCount--;c.m_next=this.m_fixtureList;this.m_fixtureList=c;this.m_fixtureCount++;c.m_body=e;c=g}b.m_fixtureCount=0;var b=this,e=a;b.GetWorldCenter();e.GetWorldCenter();b.GetLinearVelocity().Copy();e.GetLinearVelocity().Copy();b.GetAngularVelocity();e.GetAngularVelocity();b.ResetMassData();this.SynchronizeFixtures()}; +k.prototype.GetMass=function(){return this.m_mass};k.prototype.GetInertia=function(){return this.m_I};k.prototype.GetMassData=function(a){a.mass=this.m_mass;a.I=this.m_I;a.center.SetV(this.m_sweep.localCenter)};k.prototype.SetMassData=function(a){A.b2Assert(this.m_world.IsLocked()==false);if(this.m_world.IsLocked()!=true)if(this.m_type==k.b2_dynamicBody){this.m_invI=this.m_I=this.m_invMass=0;this.m_mass=a.mass;if(this.m_mass<=0)this.m_mass=1;this.m_invMass=1/this.m_mass;if(a.I>0&&(this.m_flags&k.e_fixedRotationFlag)== +0){this.m_I=a.I-this.m_mass*(a.center.x*a.center.x+a.center.y*a.center.y);this.m_invI=1/this.m_I}var c=this.m_sweep.c.Copy();this.m_sweep.localCenter.SetV(a.center);this.m_sweep.c0.SetV(F.MulX(this.m_xf,this.m_sweep.localCenter));this.m_sweep.c.SetV(this.m_sweep.c0);this.m_linearVelocity.x+=this.m_angularVelocity*-(this.m_sweep.c.y-c.y);this.m_linearVelocity.y+=this.m_angularVelocity*+(this.m_sweep.c.x-c.x)}};k.prototype.ResetMassData=function(){this.m_invI=this.m_I=this.m_invMass=this.m_mass=0;this.m_sweep.localCenter.SetZero(); +if(!(this.m_type==k.b2_staticBody||this.m_type==k.b2_kinematicBody)){for(var a=y.Make(0,0),c=this.m_fixtureList;c;c=c.m_next)if(c.m_density!=0){var g=c.GetMassData();this.m_mass+=g.mass;a.x+=g.center.x*g.mass;a.y+=g.center.y*g.mass;this.m_I+=g.I}if(this.m_mass>0){this.m_invMass=1/this.m_mass;a.x*=this.m_invMass;a.y*=this.m_invMass}else this.m_invMass=this.m_mass=1;if(this.m_I>0&&(this.m_flags&k.e_fixedRotationFlag)==0){this.m_I-=this.m_mass*(a.x*a.x+a.y*a.y);this.m_I*=this.m_inertiaScale;A.b2Assert(this.m_I> +0);this.m_invI=1/this.m_I}else this.m_invI=this.m_I=0;c=this.m_sweep.c.Copy();this.m_sweep.localCenter.SetV(a);this.m_sweep.c0.SetV(F.MulX(this.m_xf,this.m_sweep.localCenter));this.m_sweep.c.SetV(this.m_sweep.c0);this.m_linearVelocity.x+=this.m_angularVelocity*-(this.m_sweep.c.y-c.y);this.m_linearVelocity.y+=this.m_angularVelocity*+(this.m_sweep.c.x-c.x)}};k.prototype.GetWorldPoint=function(a){var c=this.m_xf.R;a=new y(c.col1.x*a.x+c.col2.x*a.y,c.col1.y*a.x+c.col2.y*a.y);a.x+=this.m_xf.position.x; +a.y+=this.m_xf.position.y;return a};k.prototype.GetWorldVector=function(a){return F.MulMV(this.m_xf.R,a)};k.prototype.GetLocalPoint=function(a){return F.MulXT(this.m_xf,a)};k.prototype.GetLocalVector=function(a){return F.MulTMV(this.m_xf.R,a)};k.prototype.GetLinearVelocityFromWorldPoint=function(a){return new y(this.m_linearVelocity.x-this.m_angularVelocity*(a.y-this.m_sweep.c.y),this.m_linearVelocity.y+this.m_angularVelocity*(a.x-this.m_sweep.c.x))};k.prototype.GetLinearVelocityFromLocalPoint=function(a){var c= +this.m_xf.R;a=new y(c.col1.x*a.x+c.col2.x*a.y,c.col1.y*a.x+c.col2.y*a.y);a.x+=this.m_xf.position.x;a.y+=this.m_xf.position.y;return new y(this.m_linearVelocity.x-this.m_angularVelocity*(a.y-this.m_sweep.c.y),this.m_linearVelocity.y+this.m_angularVelocity*(a.x-this.m_sweep.c.x))};k.prototype.GetLinearDamping=function(){return this.m_linearDamping};k.prototype.SetLinearDamping=function(a){if(a===undefined)a=0;this.m_linearDamping=a};k.prototype.GetAngularDamping=function(){return this.m_angularDamping}; +k.prototype.SetAngularDamping=function(a){if(a===undefined)a=0;this.m_angularDamping=a};k.prototype.SetType=function(a){if(a===undefined)a=0;if(this.m_type!=a){this.m_type=a;this.ResetMassData();if(this.m_type==k.b2_staticBody){this.m_linearVelocity.SetZero();this.m_angularVelocity=0}this.SetAwake(true);this.m_force.SetZero();this.m_torque=0;for(a=this.m_contactList;a;a=a.next)a.contact.FlagForFiltering()}};k.prototype.GetType=function(){return this.m_type};k.prototype.SetBullet=function(a){if(a)this.m_flags|= +k.e_bulletFlag;else this.m_flags&=~k.e_bulletFlag};k.prototype.IsBullet=function(){return(this.m_flags&k.e_bulletFlag)==k.e_bulletFlag};k.prototype.SetSleepingAllowed=function(a){if(a)this.m_flags|=k.e_allowSleepFlag;else{this.m_flags&=~k.e_allowSleepFlag;this.SetAwake(true)}};k.prototype.SetAwake=function(a){if(a){this.m_flags|=k.e_awakeFlag;this.m_sleepTime=0}else{this.m_flags&=~k.e_awakeFlag;this.m_sleepTime=0;this.m_linearVelocity.SetZero();this.m_angularVelocity=0;this.m_force.SetZero();this.m_torque= +0}};k.prototype.IsAwake=function(){return(this.m_flags&k.e_awakeFlag)==k.e_awakeFlag};k.prototype.SetFixedRotation=function(a){if(a)this.m_flags|=k.e_fixedRotationFlag;else this.m_flags&=~k.e_fixedRotationFlag;this.ResetMassData()};k.prototype.IsFixedRotation=function(){return(this.m_flags&k.e_fixedRotationFlag)==k.e_fixedRotationFlag};k.prototype.SetActive=function(a){if(a!=this.IsActive()){var c;if(a){this.m_flags|=k.e_activeFlag;a=this.m_world.m_contactManager.m_broadPhase;for(c=this.m_fixtureList;c;c= +c.m_next)c.CreateProxy(a,this.m_xf)}else{this.m_flags&=~k.e_activeFlag;a=this.m_world.m_contactManager.m_broadPhase;for(c=this.m_fixtureList;c;c=c.m_next)c.DestroyProxy(a);for(a=this.m_contactList;a;){c=a;a=a.next;this.m_world.m_contactManager.Destroy(c.contact)}this.m_contactList=null}}};k.prototype.IsActive=function(){return(this.m_flags&k.e_activeFlag)==k.e_activeFlag};k.prototype.IsSleepingAllowed=function(){return(this.m_flags&k.e_allowSleepFlag)==k.e_allowSleepFlag};k.prototype.GetFixtureList= +function(){return this.m_fixtureList};k.prototype.GetJointList=function(){return this.m_jointList};k.prototype.GetControllerList=function(){return this.m_controllerList};k.prototype.GetContactList=function(){return this.m_contactList};k.prototype.GetNext=function(){return this.m_next};k.prototype.GetUserData=function(){return this.m_userData};k.prototype.SetUserData=function(a){this.m_userData=a};k.prototype.GetWorld=function(){return this.m_world};k.prototype.b2Body=function(a,c){this.m_flags=0; +if(a.bullet)this.m_flags|=k.e_bulletFlag;if(a.fixedRotation)this.m_flags|=k.e_fixedRotationFlag;if(a.allowSleep)this.m_flags|=k.e_allowSleepFlag;if(a.awake)this.m_flags|=k.e_awakeFlag;if(a.active)this.m_flags|=k.e_activeFlag;this.m_world=c;this.m_xf.position.SetV(a.position);this.m_xf.R.Set(a.angle);this.m_sweep.localCenter.SetZero();this.m_sweep.t0=1;this.m_sweep.a0=this.m_sweep.a=a.angle;var g=this.m_xf.R,b=this.m_sweep.localCenter;this.m_sweep.c.x=g.col1.x*b.x+g.col2.x*b.y;this.m_sweep.c.y=g.col1.y* +b.x+g.col2.y*b.y;this.m_sweep.c.x+=this.m_xf.position.x;this.m_sweep.c.y+=this.m_xf.position.y;this.m_sweep.c0.SetV(this.m_sweep.c);this.m_contactList=this.m_controllerList=this.m_jointList=null;this.m_controllerCount=0;this.m_next=this.m_prev=null;this.m_linearVelocity.SetV(a.linearVelocity);this.m_angularVelocity=a.angularVelocity;this.m_linearDamping=a.linearDamping;this.m_angularDamping=a.angularDamping;this.m_force.Set(0,0);this.m_sleepTime=this.m_torque=0;this.m_type=a.type;if(this.m_type== +k.b2_dynamicBody)this.m_invMass=this.m_mass=1;else this.m_invMass=this.m_mass=0;this.m_invI=this.m_I=0;this.m_inertiaScale=a.inertiaScale;this.m_userData=a.userData;this.m_fixtureList=null;this.m_fixtureCount=0};k.prototype.SynchronizeFixtures=function(){var a=k.s_xf1;a.R.Set(this.m_sweep.a0);var c=a.R,g=this.m_sweep.localCenter;a.position.x=this.m_sweep.c0.x-(c.col1.x*g.x+c.col2.x*g.y);a.position.y=this.m_sweep.c0.y-(c.col1.y*g.x+c.col2.y*g.y);g=this.m_world.m_contactManager.m_broadPhase;for(c=this.m_fixtureList;c;c= +c.m_next)c.Synchronize(g,a,this.m_xf)};k.prototype.SynchronizeTransform=function(){this.m_xf.R.Set(this.m_sweep.a);var a=this.m_xf.R,c=this.m_sweep.localCenter;this.m_xf.position.x=this.m_sweep.c.x-(a.col1.x*c.x+a.col2.x*c.y);this.m_xf.position.y=this.m_sweep.c.y-(a.col1.y*c.x+a.col2.y*c.y)};k.prototype.ShouldCollide=function(a){if(this.m_type!=k.b2_dynamicBody&&a.m_type!=k.b2_dynamicBody)return false;for(var c=this.m_jointList;c;c=c.next)if(c.other==a)if(c.joint.m_collideConnected==false)return false; +return true};k.prototype.Advance=function(a){if(a===undefined)a=0;this.m_sweep.Advance(a);this.m_sweep.c.SetV(this.m_sweep.c0);this.m_sweep.a=this.m_sweep.a0;this.SynchronizeTransform()};Box2D.postDefs.push(function(){Box2D.Dynamics.b2Body.s_xf1=new K;Box2D.Dynamics.b2Body.e_islandFlag=1;Box2D.Dynamics.b2Body.e_awakeFlag=2;Box2D.Dynamics.b2Body.e_allowSleepFlag=4;Box2D.Dynamics.b2Body.e_bulletFlag=8;Box2D.Dynamics.b2Body.e_fixedRotationFlag=16;Box2D.Dynamics.b2Body.e_activeFlag=32;Box2D.Dynamics.b2Body.b2_staticBody= +0;Box2D.Dynamics.b2Body.b2_kinematicBody=1;Box2D.Dynamics.b2Body.b2_dynamicBody=2});z.b2BodyDef=function(){this.position=new y;this.linearVelocity=new y};z.prototype.b2BodyDef=function(){this.userData=null;this.position.Set(0,0);this.angle=0;this.linearVelocity.Set(0,0);this.angularDamping=this.linearDamping=this.angularVelocity=0;this.awake=this.allowSleep=true;this.bullet=this.fixedRotation=false;this.type=k.b2_staticBody;this.active=true;this.inertiaScale=1};u.b2ContactFilter=function(){};u.prototype.ShouldCollide= +function(a,c){var g=a.GetFilterData(),b=c.GetFilterData();if(g.groupIndex==b.groupIndex&&g.groupIndex!=0)return g.groupIndex>0;return(g.maskBits&b.categoryBits)!=0&&(g.categoryBits&b.maskBits)!=0};u.prototype.RayCollide=function(a,c){if(!a)return true;return this.ShouldCollide(a instanceof S?a:null,c)};Box2D.postDefs.push(function(){Box2D.Dynamics.b2ContactFilter.b2_defaultFilter=new u});D.b2ContactImpulse=function(){this.normalImpulses=new Vector_a2j_Number(A.b2_maxManifoldPoints);this.tangentImpulses= +new Vector_a2j_Number(A.b2_maxManifoldPoints)};H.b2ContactListener=function(){};H.prototype.BeginContact=function(){};H.prototype.EndContact=function(){};H.prototype.PreSolve=function(){};H.prototype.PostSolve=function(){};Box2D.postDefs.push(function(){Box2D.Dynamics.b2ContactListener.b2_defaultListener=new H});O.b2ContactManager=function(){};O.prototype.b2ContactManager=function(){this.m_world=null;this.m_contactCount=0;this.m_contactFilter=u.b2_defaultFilter;this.m_contactListener=H.b2_defaultListener; +this.m_contactFactory=new j(this.m_allocator);this.m_broadPhase=new B};O.prototype.AddPair=function(a,c){var g=a instanceof S?a:null,b=c instanceof S?c:null,e=g.GetBody(),f=b.GetBody();if(e!=f){for(var m=f.GetContactList();m;){if(m.other==e){var r=m.contact.GetFixtureA(),s=m.contact.GetFixtureB();if(r==g&&s==b)return;if(r==b&&s==g)return}m=m.next}if(f.ShouldCollide(e)!=false)if(this.m_contactFilter.ShouldCollide(g,b)!=false){m=this.m_contactFactory.Create(g,b);g=m.GetFixtureA();b=m.GetFixtureB(); +e=g.m_body;f=b.m_body;m.m_prev=null;m.m_next=this.m_world.m_contactList;if(this.m_world.m_contactList!=null)this.m_world.m_contactList.m_prev=m;this.m_world.m_contactList=m;m.m_nodeA.contact=m;m.m_nodeA.other=f;m.m_nodeA.prev=null;m.m_nodeA.next=e.m_contactList;if(e.m_contactList!=null)e.m_contactList.prev=m.m_nodeA;e.m_contactList=m.m_nodeA;m.m_nodeB.contact=m;m.m_nodeB.other=e;m.m_nodeB.prev=null;m.m_nodeB.next=f.m_contactList;if(f.m_contactList!=null)f.m_contactList.prev=m.m_nodeB;f.m_contactList= +m.m_nodeB;++this.m_world.m_contactCount}}};O.prototype.FindNewContacts=function(){this.m_broadPhase.UpdatePairs(Box2D.generateCallback(this,this.AddPair))};O.prototype.Destroy=function(a){var c=a.GetFixtureA(),g=a.GetFixtureB();c=c.GetBody();g=g.GetBody();a.IsTouching()&&this.m_contactListener.EndContact(a);if(a.m_prev)a.m_prev.m_next=a.m_next;if(a.m_next)a.m_next.m_prev=a.m_prev;if(a==this.m_world.m_contactList)this.m_world.m_contactList=a.m_next;if(a.m_nodeA.prev)a.m_nodeA.prev.next=a.m_nodeA.next; +if(a.m_nodeA.next)a.m_nodeA.next.prev=a.m_nodeA.prev;if(a.m_nodeA==c.m_contactList)c.m_contactList=a.m_nodeA.next;if(a.m_nodeB.prev)a.m_nodeB.prev.next=a.m_nodeB.next;if(a.m_nodeB.next)a.m_nodeB.next.prev=a.m_nodeB.prev;if(a.m_nodeB==g.m_contactList)g.m_contactList=a.m_nodeB.next;this.m_contactFactory.Destroy(a);--this.m_contactCount};O.prototype.Collide=function(){for(var a=this.m_world.m_contactList;a;){var c=a.GetFixtureA(),g=a.GetFixtureB(),b=c.GetBody(),e=g.GetBody();if(b.IsAwake()==false&&e.IsAwake()== +false)a=a.GetNext();else{if(a.m_flags&l.e_filterFlag){if(e.ShouldCollide(b)==false){c=a;a=c.GetNext();this.Destroy(c);continue}if(this.m_contactFilter.ShouldCollide(c,g)==false){c=a;a=c.GetNext();this.Destroy(c);continue}a.m_flags&=~l.e_filterFlag}if(this.m_broadPhase.TestOverlap(c.m_proxy,g.m_proxy)==false){c=a;a=c.GetNext();this.Destroy(c)}else{a.Update(this.m_contactListener);a=a.GetNext()}}}};Box2D.postDefs.push(function(){Box2D.Dynamics.b2ContactManager.s_evalCP=new p});E.b2DebugDraw=function(){}; +E.prototype.b2DebugDraw=function(){};E.prototype.SetFlags=function(){};E.prototype.GetFlags=function(){};E.prototype.AppendFlags=function(){};E.prototype.ClearFlags=function(){};E.prototype.SetSprite=function(){};E.prototype.GetSprite=function(){};E.prototype.SetDrawScale=function(){};E.prototype.GetDrawScale=function(){};E.prototype.SetLineThickness=function(){};E.prototype.GetLineThickness=function(){};E.prototype.SetAlpha=function(){};E.prototype.GetAlpha=function(){};E.prototype.SetFillAlpha= +function(){};E.prototype.GetFillAlpha=function(){};E.prototype.SetXFormScale=function(){};E.prototype.GetXFormScale=function(){};E.prototype.DrawPolygon=function(){};E.prototype.DrawSolidPolygon=function(){};E.prototype.DrawCircle=function(){};E.prototype.DrawSolidCircle=function(){};E.prototype.DrawSegment=function(){};E.prototype.DrawTransform=function(){};Box2D.postDefs.push(function(){Box2D.Dynamics.b2DebugDraw.e_shapeBit=1;Box2D.Dynamics.b2DebugDraw.e_jointBit=2;Box2D.Dynamics.b2DebugDraw.e_aabbBit= +4;Box2D.Dynamics.b2DebugDraw.e_pairBit=8;Box2D.Dynamics.b2DebugDraw.e_centerOfMassBit=16;Box2D.Dynamics.b2DebugDraw.e_controllerBit=32});R.b2DestructionListener=function(){};R.prototype.SayGoodbyeJoint=function(){};R.prototype.SayGoodbyeFixture=function(){};N.b2FilterData=function(){this.categoryBits=1;this.maskBits=65535;this.groupIndex=0};N.prototype.Copy=function(){var a=new N;a.categoryBits=this.categoryBits;a.maskBits=this.maskBits;a.groupIndex=this.groupIndex;return a};S.b2Fixture=function(){this.m_filter= +new N};S.prototype.GetType=function(){return this.m_shape.GetType()};S.prototype.GetShape=function(){return this.m_shape};S.prototype.SetSensor=function(a){if(this.m_isSensor!=a){this.m_isSensor=a;if(this.m_body!=null)for(a=this.m_body.GetContactList();a;){var c=a.contact,g=c.GetFixtureA(),b=c.GetFixtureB();if(g==this||b==this)c.SetSensor(g.IsSensor()||b.IsSensor());a=a.next}}};S.prototype.IsSensor=function(){return this.m_isSensor};S.prototype.SetFilterData=function(a){this.m_filter=a.Copy();if(!this.m_body)for(a= +this.m_body.GetContactList();a;){var c=a.contact,g=c.GetFixtureA(),b=c.GetFixtureB();if(g==this||b==this)c.FlagForFiltering();a=a.next}};S.prototype.GetFilterData=function(){return this.m_filter.Copy()};S.prototype.GetBody=function(){return this.m_body};S.prototype.GetNext=function(){return this.m_next};S.prototype.GetUserData=function(){return this.m_userData};S.prototype.SetUserData=function(a){this.m_userData=a};S.prototype.TestPoint=function(a){return this.m_shape.TestPoint(this.m_body.GetTransform(), +a)};S.prototype.RayCast=function(a,c){return this.m_shape.RayCast(a,c,this.m_body.GetTransform())};S.prototype.GetMassData=function(a){if(a===undefined)a=null;if(a==null)a=new I;this.m_shape.ComputeMass(a,this.m_density);return a};S.prototype.SetDensity=function(a){if(a===undefined)a=0;this.m_density=a};S.prototype.GetDensity=function(){return this.m_density};S.prototype.GetFriction=function(){return this.m_friction};S.prototype.SetFriction=function(a){if(a===undefined)a=0;this.m_friction=a};S.prototype.GetRestitution= +function(){return this.m_restitution};S.prototype.SetRestitution=function(a){if(a===undefined)a=0;this.m_restitution=a};S.prototype.GetAABB=function(){return this.m_aabb};S.prototype.b2Fixture=function(){this.m_aabb=new U;this.m_shape=this.m_next=this.m_body=this.m_userData=null;this.m_restitution=this.m_friction=this.m_density=0};S.prototype.Create=function(a,c,g){this.m_userData=g.userData;this.m_friction=g.friction;this.m_restitution=g.restitution;this.m_body=a;this.m_next=null;this.m_filter=g.filter.Copy(); +this.m_isSensor=g.isSensor;this.m_shape=g.shape.Copy();this.m_density=g.density};S.prototype.Destroy=function(){this.m_shape=null};S.prototype.CreateProxy=function(a,c){this.m_shape.ComputeAABB(this.m_aabb,c);this.m_proxy=a.CreateProxy(this.m_aabb,this)};S.prototype.DestroyProxy=function(a){if(this.m_proxy!=null){a.DestroyProxy(this.m_proxy);this.m_proxy=null}};S.prototype.Synchronize=function(a,c,g){if(this.m_proxy){var b=new U,e=new U;this.m_shape.ComputeAABB(b,c);this.m_shape.ComputeAABB(e,g); +this.m_aabb.Combine(b,e);c=F.SubtractVV(g.position,c.position);a.MoveProxy(this.m_proxy,this.m_aabb,c)}};aa.b2FixtureDef=function(){this.filter=new N};aa.prototype.b2FixtureDef=function(){this.userData=this.shape=null;this.friction=0.2;this.density=this.restitution=0;this.filter.categoryBits=1;this.filter.maskBits=65535;this.filter.groupIndex=0;this.isSensor=false};Z.b2Island=function(){};Z.prototype.b2Island=function(){this.m_bodies=new Vector;this.m_contacts=new Vector;this.m_joints=new Vector}; +Z.prototype.Initialize=function(a,c,g,b,e,f){if(a===undefined)a=0;if(c===undefined)c=0;if(g===undefined)g=0;var m=0;this.m_bodyCapacity=a;this.m_contactCapacity=c;this.m_jointCapacity=g;this.m_jointCount=this.m_contactCount=this.m_bodyCount=0;this.m_allocator=b;this.m_listener=e;this.m_contactSolver=f;for(m=this.m_bodies.length;mA.b2_maxTranslationSquared){e.m_linearVelocity.Normalize();e.m_linearVelocity.x*=A.b2_maxTranslation*a.inv_dt;e.m_linearVelocity.y*=A.b2_maxTranslation*a.inv_dt}m=a.dt*e.m_angularVelocity;if(m*m>A.b2_maxRotationSquared)e.m_angularVelocity=e.m_angularVelocity<0?-A.b2_maxRotation*a.inv_dt:A.b2_maxRotation*a.inv_dt;e.m_sweep.c0.SetV(e.m_sweep.c);e.m_sweep.a0=e.m_sweep.a;e.m_sweep.c.x+=a.dt*e.m_linearVelocity.x;e.m_sweep.c.y+= +a.dt*e.m_linearVelocity.y;e.m_sweep.a+=a.dt*e.m_angularVelocity;e.SynchronizeTransform()}}for(b=0;bm||F.Dot(e.m_linearVelocity,e.m_linearVelocity)>c)g=e.m_sleepTime=0;else{e.m_sleepTime+=a.dt;g=F.Min(g,e.m_sleepTime)}}}if(g>=A.b2_timeToSleep)for(b=0;bA.b2_maxTranslationSquared){g.m_linearVelocity.Normalize();g.m_linearVelocity.x*=A.b2_maxTranslation* +a.inv_dt;g.m_linearVelocity.y*=A.b2_maxTranslation*a.inv_dt}e=a.dt*g.m_angularVelocity;if(e*e>A.b2_maxRotationSquared)g.m_angularVelocity=g.m_angularVelocity<0?-A.b2_maxRotation*a.inv_dt:A.b2_maxRotation*a.inv_dt;g.m_sweep.c0.SetV(g.m_sweep.c);g.m_sweep.a0=g.m_sweep.a;g.m_sweep.c.x+=a.dt*g.m_linearVelocity.x;g.m_sweep.c.y+=a.dt*g.m_linearVelocity.y;g.m_sweep.a+=a.dt*g.m_angularVelocity;g.SynchronizeTransform()}}for(c=0;c0?1/a:0;b.dtRatio=this.m_inv_dt0*a;b.warmStarting=h.m_warmStarting;this.m_contactManager.Collide();b.dt>0&&this.Solve(b);h.m_continuousPhysics&&b.dt>0&&this.SolveTOI(b);if(b.dt>0)this.m_inv_dt0=b.inv_dt;this.m_flags&=~h.e_locked};h.prototype.ClearForces=function(){for(var a=this.m_bodyList;a;a=a.m_next){a.m_force.SetZero();a.m_torque=0}};h.prototype.DrawDebugData= +function(){if(this.m_debugDraw!=null){this.m_debugDraw.m_sprite.graphics.clear();var a=this.m_debugDraw.GetFlags(),c,g,b;new y;new y;new y;var e;new U;new U;e=[new y,new y,new y,new y];var f=new w(0,0,0);if(a&E.e_shapeBit)for(c=this.m_bodyList;c;c=c.m_next){e=c.m_xf;for(g=c.GetFixtureList();g;g=g.m_next){b=g.GetShape();if(c.IsActive()==false)f.Set(0.5,0.5,0.3);else if(c.GetType()==k.b2_staticBody)f.Set(0.5,0.9,0.5);else if(c.GetType()==k.b2_kinematicBody)f.Set(0.5,0.5,0.9);else c.IsAwake()==false? +f.Set(0.6,0.6,0.6):f.Set(0.9,0.7,0.7);this.DrawShape(b,e,f)}}if(a&E.e_jointBit)for(c=this.m_jointList;c;c=c.m_next)this.DrawJoint(c);if(a&E.e_controllerBit)for(c=this.m_controllerList;c;c=c.m_next)c.Draw(this.m_debugDraw);if(a&E.e_pairBit){f.Set(0.3,0.9,0.9);for(c=this.m_contactManager.m_contactList;c;c=c.GetNext()){b=c.GetFixtureA();g=c.GetFixtureB();b=b.GetAABB().GetCenter();g=g.GetAABB().GetCenter();this.m_debugDraw.DrawSegment(b,g,f)}}if(a&E.e_aabbBit){b=this.m_contactManager.m_broadPhase;e=[new y, +new y,new y,new y];for(c=this.m_bodyList;c;c=c.GetNext())if(c.IsActive()!=false)for(g=c.GetFixtureList();g;g=g.GetNext()){var m=b.GetFatAABB(g.m_proxy);e[0].Set(m.lowerBound.x,m.lowerBound.y);e[1].Set(m.upperBound.x,m.lowerBound.y);e[2].Set(m.upperBound.x,m.upperBound.y);e[3].Set(m.lowerBound.x,m.upperBound.y);this.m_debugDraw.DrawPolygon(e,4,f)}}if(a&E.e_centerOfMassBit)for(c=this.m_bodyList;c;c=c.m_next){e=h.s_xf;e.R=c.m_xf.R;e.position=c.GetWorldCenter();this.m_debugDraw.DrawTransform(e)}}};h.prototype.QueryAABB= +function(a,c){var g=this.m_contactManager.m_broadPhase;g.Query(function(b){return a(g.GetUserData(b))},c)};h.prototype.QueryShape=function(a,c,g){if(g===undefined)g=null;if(g==null){g=new K;g.SetIdentity()}var b=this.m_contactManager.m_broadPhase,e=new U;c.ComputeAABB(e,g);b.Query(function(f){f=b.GetUserData(f)instanceof S?b.GetUserData(f):null;if(Y.TestOverlap(c,g,f.GetShape(),f.GetBody().GetTransform()))return a(f);return true},e)};h.prototype.QueryPoint=function(a,c){var g=this.m_contactManager.m_broadPhase, +b=new U;b.lowerBound.Set(c.x-A.b2_linearSlop,c.y-A.b2_linearSlop);b.upperBound.Set(c.x+A.b2_linearSlop,c.y+A.b2_linearSlop);g.Query(function(e){e=g.GetUserData(e)instanceof S?g.GetUserData(e):null;if(e.TestPoint(c))return a(e);return true},b)};h.prototype.RayCast=function(a,c,g){var b=this.m_contactManager.m_broadPhase,e=new V,f=new Q(c,g);b.RayCast(function(m,r){var s=b.GetUserData(r);s=s instanceof S?s:null;if(s.RayCast(e,m)){var v=e.fraction,t=new y((1-v)*c.x+v*g.x,(1-v)*c.y+v*g.y);return a(s, +t,e.normal,v)}return m.maxFraction},f)};h.prototype.RayCastOne=function(a,c){var g;this.RayCast(function(b,e,f,m){if(m===undefined)m=0;g=b;return m},a,c);return g};h.prototype.RayCastAll=function(a,c){var g=new Vector;this.RayCast(function(b){g[g.length]=b;return 1},a,c);return g};h.prototype.GetBodyList=function(){return this.m_bodyList};h.prototype.GetJointList=function(){return this.m_jointList};h.prototype.GetContactList=function(){return this.m_contactList};h.prototype.IsLocked=function(){return(this.m_flags& +h.e_locked)>0};h.prototype.Solve=function(a){for(var c,g=this.m_controllerList;g;g=g.m_next)g.Step(a);g=this.m_island;g.Initialize(this.m_bodyCount,this.m_contactCount,this.m_jointCount,null,this.m_contactManager.m_contactListener,this.m_contactSolver);for(c=this.m_bodyList;c;c=c.m_next)c.m_flags&=~k.e_islandFlag;for(var b=this.m_contactList;b;b=b.m_next)b.m_flags&=~l.e_islandFlag;for(b=this.m_jointList;b;b=b.m_next)b.m_islandFlag=false;parseInt(this.m_bodyCount);b=this.s_stack;for(var e=this.m_bodyList;e;e= +e.m_next)if(!(e.m_flags&k.e_islandFlag))if(!(e.IsAwake()==false||e.IsActive()==false))if(e.GetType()!=k.b2_staticBody){g.Clear();var f=0;b[f++]=e;for(e.m_flags|=k.e_islandFlag;f>0;){c=b[--f];g.AddBody(c);c.IsAwake()==false&&c.SetAwake(true);if(c.GetType()!=k.b2_staticBody){for(var m,r=c.m_contactList;r;r=r.next)if(!(r.contact.m_flags&l.e_islandFlag))if(!(r.contact.IsSensor()==true||r.contact.IsEnabled()==false||r.contact.IsTouching()==false)){g.AddContact(r.contact);r.contact.m_flags|=l.e_islandFlag; +m=r.other;if(!(m.m_flags&k.e_islandFlag)){b[f++]=m;m.m_flags|=k.e_islandFlag}}for(c=c.m_jointList;c;c=c.next)if(c.joint.m_islandFlag!=true){m=c.other;if(m.IsActive()!=false){g.AddJoint(c.joint);c.joint.m_islandFlag=true;if(!(m.m_flags&k.e_islandFlag)){b[f++]=m;m.m_flags|=k.e_islandFlag}}}}}g.Solve(a,this.m_gravity,this.m_allowSleep);for(f=0;f0&&c<1){c=(1-c)*s+c;if(c>1)c=1}b.m_toi=c;b.m_flags|=l.e_toiFlag}if(Number.MIN_VALUE0;){c=f[b++];--m;e.AddBody(c);c.IsAwake()==false&&c.SetAwake(true);if(c.GetType()==k.b2_dynamicBody){for(g=c.m_contactList;g;g=g.next){if(e.m_contactCount==e.m_contactCapacity)break;if(!(g.contact.m_flags&l.e_islandFlag))if(!(g.contact.IsSensor()==true||g.contact.IsEnabled()== +false||g.contact.IsTouching()==false)){e.AddContact(g.contact);g.contact.m_flags|=l.e_islandFlag;s=g.other;if(!(s.m_flags&k.e_islandFlag)){if(s.GetType()!=k.b2_staticBody){s.Advance(r);s.SetAwake(true)}f[b+m]=s;++m;s.m_flags|=k.e_islandFlag}}}for(c=c.m_jointList;c;c=c.next)if(e.m_jointCount!=e.m_jointCapacity)if(c.joint.m_islandFlag!=true){s=c.other;if(s.IsActive()!=false){e.AddJoint(c.joint);c.joint.m_islandFlag=true;if(!(s.m_flags&k.e_islandFlag)){if(s.GetType()!=k.b2_staticBody){s.Advance(r);s.SetAwake(true)}f[b+ +m]=s;++m;s.m_flags|=k.e_islandFlag}}}}}b=h.s_timestep;b.warmStarting=false;b.dt=(1-r)*a.dt;b.inv_dt=1/b.dt;b.dtRatio=0;b.velocityIterations=a.velocityIterations;b.positionIterations=a.positionIterations;e.SolveTOI(b);for(r=r=0;r0;for(c=0;c0){j.m_fixtureA.m_body.SetAwake(true);j.m_fixtureB.m_body.SetAwake(true)}var o=parseInt(j.m_fixtureA.GetType()), +q=parseInt(j.m_fixtureB.GetType());o=this.m_registers[o][q];o.poolCount++;j.m_next=o.pool;o.pool=j;o=o.destroyFcn;o(j,this.m_allocator)};V.b2ContactRegister=function(){};M.b2ContactResult=function(){this.position=new N;this.normal=new N;this.id=new aa};L.b2ContactSolver=function(){this.m_step=new H;this.m_constraints=new Vector};L.prototype.b2ContactSolver=function(){};L.prototype.Initialize=function(j,o,q,n){if(q===undefined)q=0;var a;this.m_step.Set(j);this.m_allocator=n;j=0;for(this.m_constraintCount= +q;this.m_constraints.length +0);L.s_worldManifold.Initialize(m,e.m_xf,g,f.m_xf,b);c=L.s_worldManifold.m_normal.x;a=L.s_worldManifold.m_normal.y;n=this.m_constraints[j];n.bodyA=e;n.bodyB=f;n.manifold=m;n.normal.x=c;n.normal.y=a;n.pointCount=m.m_pointCount;n.friction=r;n.restitution=s;n.localPlaneNormal.x=m.m_localPlaneNormal.x;n.localPlaneNormal.y=m.m_localPlaneNormal.y;n.localPoint.x=m.m_localPoint.x;n.localPoint.y=m.m_localPoint.y;n.radius=g+b;n.type=m.m_type;for(g=0;g0?n:0;q=n-o.normalImpulse;c=q*b;q=q*e;x.x-=J*c;x.y-=J*q;v-=T*(o.rA.x*q-o.rA.y*c);C.x+=P*c;C.y+=P*q;t+=X*(o.rB.x*q-o.rB.y*c);o.normalImpulse=n}else{o=a.points[0];j=a.points[1];q=o.normalImpulse;g=j.normalImpulse;var ba=(C.x-t*o.rB.y-x.x+v*o.rA.y)*b+(C.y+t*o.rB.x-x.y-v*o.rA.x)*e,ca=(C.x-t*j.rB.y-x.x+v*j.rA.y)*b+(C.y+ +t*j.rB.x-x.y-v*j.rA.x)*e;n=ba-o.velocityBias;c=ca-j.velocityBias;f=a.K;n-=f.col1.x*q+f.col2.x*g;for(c-=f.col1.y*q+f.col2.y*g;;){f=a.normalMass;$=-(f.col1.x*n+f.col2.x*c);f=-(f.col1.y*n+f.col2.y*c);if($>=0&&f>=0){q=$-q;g=f-g;a=q*b;q=q*e;b=g*b;e=g*e;x.x-=J*(a+b);x.y-=J*(q+e);v-=T*(o.rA.x*q-o.rA.y*a+j.rA.x*e-j.rA.y*b);C.x+=P*(a+b);C.y+=P*(q+e);t+=X*(o.rB.x*q-o.rB.y*a+j.rB.x*e-j.rB.y*b);o.normalImpulse=$;j.normalImpulse=f;break}$=-o.normalMass*n;f=0;ca=a.K.col1.y*$+c;if($>=0&&ca>=0){q=$-q;g=f-g;a=q*b; +q=q*e;b=g*b;e=g*e;x.x-=J*(a+b);x.y-=J*(q+e);v-=T*(o.rA.x*q-o.rA.y*a+j.rA.x*e-j.rA.y*b);C.x+=P*(a+b);C.y+=P*(q+e);t+=X*(o.rB.x*q-o.rB.y*a+j.rB.x*e-j.rB.y*b);o.normalImpulse=$;j.normalImpulse=f;break}$=0;f=-j.normalMass*c;ba=a.K.col2.x*f+n;if(f>=0&&ba>=0){q=$-q;g=f-g;a=q*b;q=q*e;b=g*b;e=g*e;x.x-=J*(a+b);x.y-=J*(q+e);v-=T*(o.rA.x*q-o.rA.y*a+j.rA.x*e-j.rA.y*b);C.x+=P*(a+b);C.y+=P*(q+e);t+=X*(o.rB.x*q-o.rB.y*a+j.rB.x*e-j.rB.y*b);o.normalImpulse=$;j.normalImpulse=f;break}f=$=0;ba=n;ca=c;if(ba>=0&&ca>=0){q= +$-q;g=f-g;a=q*b;q=q*e;b=g*b;e=g*e;x.x-=J*(a+b);x.y-=J*(q+e);v-=T*(o.rA.x*q-o.rA.y*a+j.rA.x*e-j.rA.y*b);C.x+=P*(a+b);C.y+=P*(q+e);t+=X*(o.rB.x*q-o.rB.y*a+j.rB.x*e-j.rB.y*b);o.normalImpulse=$;j.normalImpulse=f;break}break}}r.m_angularVelocity=v;s.m_angularVelocity=t}};L.prototype.FinalizeVelocityConstraints=function(){for(var j=0;j-1.5*O.b2_linearSlop};Box2D.postDefs.push(function(){Box2D.Dynamics.Contacts.b2ContactSolver.s_worldManifold=new l;Box2D.Dynamics.Contacts.b2ContactSolver.s_psm=new u});Box2D.inherit(I,Box2D.Dynamics.Contacts.b2Contact); +I.prototype.__super=Box2D.Dynamics.Contacts.b2Contact.prototype;I.b2EdgeAndCircleContact=function(){Box2D.Dynamics.Contacts.b2Contact.b2Contact.apply(this,arguments)};I.Create=function(){return new I};I.Destroy=function(){};I.prototype.Reset=function(j,o){this.__super.Reset.call(this,j,o)};I.prototype.Evaluate=function(){var j=this.m_fixtureA.GetBody(),o=this.m_fixtureB.GetBody();this.b2CollideEdgeAndCircle(this.m_manifold,this.m_fixtureA.GetShape()instanceof G?this.m_fixtureA.GetShape():null,j.m_xf, +this.m_fixtureB.GetShape()instanceof F?this.m_fixtureB.GetShape():null,o.m_xf)};I.prototype.b2CollideEdgeAndCircle=function(){};Box2D.inherit(W,Box2D.Dynamics.Contacts.b2Contact);W.prototype.__super=Box2D.Dynamics.Contacts.b2Contact.prototype;W.b2NullContact=function(){Box2D.Dynamics.Contacts.b2Contact.b2Contact.apply(this,arguments)};W.prototype.b2NullContact=function(){this.__super.b2Contact.call(this)};W.prototype.Evaluate=function(){};Box2D.inherit(Y,Box2D.Dynamics.Contacts.b2Contact);Y.prototype.__super= +Box2D.Dynamics.Contacts.b2Contact.prototype;Y.b2PolyAndCircleContact=function(){Box2D.Dynamics.Contacts.b2Contact.b2Contact.apply(this,arguments)};Y.Create=function(){return new Y};Y.Destroy=function(){};Y.prototype.Reset=function(j,o){this.__super.Reset.call(this,j,o);O.b2Assert(j.GetType()==y.e_polygonShape);O.b2Assert(o.GetType()==y.e_circleShape)};Y.prototype.Evaluate=function(){var j=this.m_fixtureA.m_body,o=this.m_fixtureB.m_body;S.CollidePolygonAndCircle(this.m_manifold,this.m_fixtureA.GetShape()instanceof +K?this.m_fixtureA.GetShape():null,j.m_xf,this.m_fixtureB.GetShape()instanceof F?this.m_fixtureB.GetShape():null,o.m_xf)};Box2D.inherit(k,Box2D.Dynamics.Contacts.b2Contact);k.prototype.__super=Box2D.Dynamics.Contacts.b2Contact.prototype;k.b2PolyAndEdgeContact=function(){Box2D.Dynamics.Contacts.b2Contact.b2Contact.apply(this,arguments)};k.Create=function(){return new k};k.Destroy=function(){};k.prototype.Reset=function(j,o){this.__super.Reset.call(this,j,o);O.b2Assert(j.GetType()==y.e_polygonShape); +O.b2Assert(o.GetType()==y.e_edgeShape)};k.prototype.Evaluate=function(){var j=this.m_fixtureA.GetBody(),o=this.m_fixtureB.GetBody();this.b2CollidePolyAndEdge(this.m_manifold,this.m_fixtureA.GetShape()instanceof K?this.m_fixtureA.GetShape():null,j.m_xf,this.m_fixtureB.GetShape()instanceof G?this.m_fixtureB.GetShape():null,o.m_xf)};k.prototype.b2CollidePolyAndEdge=function(){};Box2D.inherit(z,Box2D.Dynamics.Contacts.b2Contact);z.prototype.__super=Box2D.Dynamics.Contacts.b2Contact.prototype;z.b2PolygonContact= +function(){Box2D.Dynamics.Contacts.b2Contact.b2Contact.apply(this,arguments)};z.Create=function(){return new z};z.Destroy=function(){};z.prototype.Reset=function(j,o){this.__super.Reset.call(this,j,o)};z.prototype.Evaluate=function(){var j=this.m_fixtureA.GetBody(),o=this.m_fixtureB.GetBody();S.CollidePolygons(this.m_manifold,this.m_fixtureA.GetShape()instanceof K?this.m_fixtureA.GetShape():null,j.m_xf,this.m_fixtureB.GetShape()instanceof K?this.m_fixtureB.GetShape():null,o.m_xf)};u.b2PositionSolverManifold= +function(){};u.prototype.b2PositionSolverManifold=function(){this.m_normal=new N;this.m_separations=new Vector_a2j_Number(O.b2_maxManifoldPoints);this.m_points=new Vector(O.b2_maxManifoldPoints);for(var j=0;j0);var o=0,q=0,n=0,a,c=0,g=0;switch(j.type){case Z.e_circles:a=j.bodyA.m_xf.R;n=j.localPoint;o=j.bodyA.m_xf.position.x+(a.col1.x*n.x+a.col2.x*n.y);q=j.bodyA.m_xf.position.y+(a.col1.y* +n.x+a.col2.y*n.y);a=j.bodyB.m_xf.R;n=j.points[0].localPoint;c=j.bodyB.m_xf.position.x+(a.col1.x*n.x+a.col2.x*n.y);a=j.bodyB.m_xf.position.y+(a.col1.y*n.x+a.col2.y*n.y);n=c-o;g=a-q;var b=n*n+g*g;if(b>Number.MIN_VALUE*Number.MIN_VALUE){b=Math.sqrt(b);this.m_normal.x=n/b;this.m_normal.y=g/b}else{this.m_normal.x=1;this.m_normal.y=0}this.m_points[0].x=0.5*(o+c);this.m_points[0].y=0.5*(q+a);this.m_separations[0]=n*this.m_normal.x+g*this.m_normal.y-j.radius;break;case Z.e_faceA:a=j.bodyA.m_xf.R;n=j.localPlaneNormal; +this.m_normal.x=a.col1.x*n.x+a.col2.x*n.y;this.m_normal.y=a.col1.y*n.x+a.col2.y*n.y;a=j.bodyA.m_xf.R;n=j.localPoint;c=j.bodyA.m_xf.position.x+(a.col1.x*n.x+a.col2.x*n.y);g=j.bodyA.m_xf.position.y+(a.col1.y*n.x+a.col2.y*n.y);a=j.bodyB.m_xf.R;for(o=0;o0||L>0?1/Math.max(M,L):0};V.prototype.Step=function(M){M=M.dt;if(!(M<=Number.MIN_VALUE)){if(M>this.maxTimestep&&this.maxTimestep>0)M=this.maxTimestep; +for(var L=this.m_bodyList;L;L=L.nextBody){var I=L.body;if(I.IsAwake()){var W=I.GetWorldVector(G.MulMV(this.T,I.GetLocalVector(I.GetLinearVelocity())));I.SetLinearVelocity(new K(I.GetLinearVelocity().x+W.x*M,I.GetLinearVelocity().y+W.y*M))}}}}})(); +(function(){var F=Box2D.Common.b2Settings,G=Box2D.Common.Math.b2Mat22,K=Box2D.Common.Math.b2Mat33,y=Box2D.Common.Math.b2Math,w=Box2D.Common.Math.b2Vec2,A=Box2D.Common.Math.b2Vec3,U=Box2D.Dynamics.Joints.b2DistanceJoint,p=Box2D.Dynamics.Joints.b2DistanceJointDef,B=Box2D.Dynamics.Joints.b2FrictionJoint,Q=Box2D.Dynamics.Joints.b2FrictionJointDef,V=Box2D.Dynamics.Joints.b2GearJoint,M=Box2D.Dynamics.Joints.b2GearJointDef,L=Box2D.Dynamics.Joints.b2Jacobian,I=Box2D.Dynamics.Joints.b2Joint,W=Box2D.Dynamics.Joints.b2JointDef, +Y=Box2D.Dynamics.Joints.b2JointEdge,k=Box2D.Dynamics.Joints.b2LineJoint,z=Box2D.Dynamics.Joints.b2LineJointDef,u=Box2D.Dynamics.Joints.b2MouseJoint,D=Box2D.Dynamics.Joints.b2MouseJointDef,H=Box2D.Dynamics.Joints.b2PrismaticJoint,O=Box2D.Dynamics.Joints.b2PrismaticJointDef,E=Box2D.Dynamics.Joints.b2PulleyJoint,R=Box2D.Dynamics.Joints.b2PulleyJointDef,N=Box2D.Dynamics.Joints.b2RevoluteJoint,S=Box2D.Dynamics.Joints.b2RevoluteJointDef,aa=Box2D.Dynamics.Joints.b2WeldJoint,Z=Box2D.Dynamics.Joints.b2WeldJointDef; +Box2D.inherit(U,Box2D.Dynamics.Joints.b2Joint);U.prototype.__super=Box2D.Dynamics.Joints.b2Joint.prototype;U.b2DistanceJoint=function(){Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this,arguments);this.m_localAnchor1=new w;this.m_localAnchor2=new w;this.m_u=new w};U.prototype.GetAnchorA=function(){return this.m_bodyA.GetWorldPoint(this.m_localAnchor1)};U.prototype.GetAnchorB=function(){return this.m_bodyB.GetWorldPoint(this.m_localAnchor2)};U.prototype.GetReactionForce=function(d){if(d===undefined)d= +0;return new w(d*this.m_impulse*this.m_u.x,d*this.m_impulse*this.m_u.y)};U.prototype.GetReactionTorque=function(){return 0};U.prototype.GetLength=function(){return this.m_length};U.prototype.SetLength=function(d){if(d===undefined)d=0;this.m_length=d};U.prototype.GetFrequency=function(){return this.m_frequencyHz};U.prototype.SetFrequency=function(d){if(d===undefined)d=0;this.m_frequencyHz=d};U.prototype.GetDampingRatio=function(){return this.m_dampingRatio};U.prototype.SetDampingRatio=function(d){if(d=== +undefined)d=0;this.m_dampingRatio=d};U.prototype.b2DistanceJoint=function(d){this.__super.b2Joint.call(this,d);this.m_localAnchor1.SetV(d.localAnchorA);this.m_localAnchor2.SetV(d.localAnchorB);this.m_length=d.length;this.m_frequencyHz=d.frequencyHz;this.m_dampingRatio=d.dampingRatio;this.m_bias=this.m_gamma=this.m_impulse=0};U.prototype.InitVelocityConstraints=function(d){var h,l=0,j=this.m_bodyA,o=this.m_bodyB;h=j.m_xf.R;var q=this.m_localAnchor1.x-j.m_sweep.localCenter.x,n=this.m_localAnchor1.y- +j.m_sweep.localCenter.y;l=h.col1.x*q+h.col2.x*n;n=h.col1.y*q+h.col2.y*n;q=l;h=o.m_xf.R;var a=this.m_localAnchor2.x-o.m_sweep.localCenter.x,c=this.m_localAnchor2.y-o.m_sweep.localCenter.y;l=h.col1.x*a+h.col2.x*c;c=h.col1.y*a+h.col2.y*c;a=l;this.m_u.x=o.m_sweep.c.x+a-j.m_sweep.c.x-q;this.m_u.y=o.m_sweep.c.y+c-j.m_sweep.c.y-n;l=Math.sqrt(this.m_u.x*this.m_u.x+this.m_u.y*this.m_u.y);l>F.b2_linearSlop?this.m_u.Multiply(1/l):this.m_u.SetZero();h=q*this.m_u.y-n*this.m_u.x;var g=a*this.m_u.y-c*this.m_u.x; +h=j.m_invMass+j.m_invI*h*h+o.m_invMass+o.m_invI*g*g;this.m_mass=h!=0?1/h:0;if(this.m_frequencyHz>0){l=l-this.m_length;g=2*Math.PI*this.m_frequencyHz;var b=this.m_mass*g*g;this.m_gamma=d.dt*(2*this.m_mass*this.m_dampingRatio*g+d.dt*b);this.m_gamma=this.m_gamma!=0?1/this.m_gamma:0;this.m_bias=l*d.dt*b*this.m_gamma;this.m_mass=h+this.m_gamma;this.m_mass=this.m_mass!=0?1/this.m_mass:0}if(d.warmStarting){this.m_impulse*=d.dtRatio;d=this.m_impulse*this.m_u.x;h=this.m_impulse*this.m_u.y;j.m_linearVelocity.x-= +j.m_invMass*d;j.m_linearVelocity.y-=j.m_invMass*h;j.m_angularVelocity-=j.m_invI*(q*h-n*d);o.m_linearVelocity.x+=o.m_invMass*d;o.m_linearVelocity.y+=o.m_invMass*h;o.m_angularVelocity+=o.m_invI*(a*h-c*d)}else this.m_impulse=0};U.prototype.SolveVelocityConstraints=function(){var d,h=this.m_bodyA,l=this.m_bodyB;d=h.m_xf.R;var j=this.m_localAnchor1.x-h.m_sweep.localCenter.x,o=this.m_localAnchor1.y-h.m_sweep.localCenter.y,q=d.col1.x*j+d.col2.x*o;o=d.col1.y*j+d.col2.y*o;j=q;d=l.m_xf.R;var n=this.m_localAnchor2.x- +l.m_sweep.localCenter.x,a=this.m_localAnchor2.y-l.m_sweep.localCenter.y;q=d.col1.x*n+d.col2.x*a;a=d.col1.y*n+d.col2.y*a;n=q;q=-this.m_mass*(this.m_u.x*(l.m_linearVelocity.x+-l.m_angularVelocity*a-(h.m_linearVelocity.x+-h.m_angularVelocity*o))+this.m_u.y*(l.m_linearVelocity.y+l.m_angularVelocity*n-(h.m_linearVelocity.y+h.m_angularVelocity*j))+this.m_bias+this.m_gamma*this.m_impulse);this.m_impulse+=q;d=q*this.m_u.x;q=q*this.m_u.y;h.m_linearVelocity.x-=h.m_invMass*d;h.m_linearVelocity.y-=h.m_invMass* +q;h.m_angularVelocity-=h.m_invI*(j*q-o*d);l.m_linearVelocity.x+=l.m_invMass*d;l.m_linearVelocity.y+=l.m_invMass*q;l.m_angularVelocity+=l.m_invI*(n*q-a*d)};U.prototype.SolvePositionConstraints=function(){var d;if(this.m_frequencyHz>0)return true;var h=this.m_bodyA,l=this.m_bodyB;d=h.m_xf.R;var j=this.m_localAnchor1.x-h.m_sweep.localCenter.x,o=this.m_localAnchor1.y-h.m_sweep.localCenter.y,q=d.col1.x*j+d.col2.x*o;o=d.col1.y*j+d.col2.y*o;j=q;d=l.m_xf.R;var n=this.m_localAnchor2.x-l.m_sweep.localCenter.x, +a=this.m_localAnchor2.y-l.m_sweep.localCenter.y;q=d.col1.x*n+d.col2.x*a;a=d.col1.y*n+d.col2.y*a;n=q;q=l.m_sweep.c.x+n-h.m_sweep.c.x-j;var c=l.m_sweep.c.y+a-h.m_sweep.c.y-o;d=Math.sqrt(q*q+c*c);q/=d;c/=d;d=d-this.m_length;d=y.Clamp(d,-F.b2_maxLinearCorrection,F.b2_maxLinearCorrection);var g=-this.m_mass*d;this.m_u.Set(q,c);q=g*this.m_u.x;c=g*this.m_u.y;h.m_sweep.c.x-=h.m_invMass*q;h.m_sweep.c.y-=h.m_invMass*c;h.m_sweep.a-=h.m_invI*(j*c-o*q);l.m_sweep.c.x+=l.m_invMass*q;l.m_sweep.c.y+=l.m_invMass*c; +l.m_sweep.a+=l.m_invI*(n*c-a*q);h.SynchronizeTransform();l.SynchronizeTransform();return y.Abs(d)0)this.m_angularMass=1/this.m_angularMass;if(d.warmStarting){this.m_linearImpulse.x*=d.dtRatio;this.m_linearImpulse.y*=d.dtRatio;this.m_angularImpulse*=d.dtRatio;d=this.m_linearImpulse;j.m_linearVelocity.x-=h*d.x; +j.m_linearVelocity.y-=h*d.y;j.m_angularVelocity-=g*(q*d.y-n*d.x+this.m_angularImpulse);o.m_linearVelocity.x+=l*d.x;o.m_linearVelocity.y+=l*d.y;o.m_angularVelocity+=b*(a*d.y-c*d.x+this.m_angularImpulse)}else{this.m_linearImpulse.SetZero();this.m_angularImpulse=0}};B.prototype.SolveVelocityConstraints=function(d){var h,l=0,j=this.m_bodyA,o=this.m_bodyB,q=j.m_linearVelocity,n=j.m_angularVelocity,a=o.m_linearVelocity,c=o.m_angularVelocity,g=j.m_invMass,b=o.m_invMass,e=j.m_invI,f=o.m_invI;h=j.m_xf.R;var m= +this.m_localAnchorA.x-j.m_sweep.localCenter.x,r=this.m_localAnchorA.y-j.m_sweep.localCenter.y;l=h.col1.x*m+h.col2.x*r;r=h.col1.y*m+h.col2.y*r;m=l;h=o.m_xf.R;var s=this.m_localAnchorB.x-o.m_sweep.localCenter.x,v=this.m_localAnchorB.y-o.m_sweep.localCenter.y;l=h.col1.x*s+h.col2.x*v;v=h.col1.y*s+h.col2.y*v;s=l;h=0;l=-this.m_angularMass*(c-n);var t=this.m_angularImpulse;h=d.dt*this.m_maxTorque;this.m_angularImpulse=y.Clamp(this.m_angularImpulse+l,-h,h);l=this.m_angularImpulse-t;n-=e*l;c+=f*l;h=y.MulMV(this.m_linearMass, +new w(-(a.x-c*v-q.x+n*r),-(a.y+c*s-q.y-n*m)));l=this.m_linearImpulse.Copy();this.m_linearImpulse.Add(h);h=d.dt*this.m_maxForce;if(this.m_linearImpulse.LengthSquared()>h*h){this.m_linearImpulse.Normalize();this.m_linearImpulse.Multiply(h)}h=y.SubtractVV(this.m_linearImpulse,l);q.x-=g*h.x;q.y-=g*h.y;n-=e*(m*h.y-r*h.x);a.x+=b*h.x;a.y+=b*h.y;c+=f*(s*h.y-v*h.x);j.m_angularVelocity=n;o.m_angularVelocity=c};B.prototype.SolvePositionConstraints=function(){return true};Box2D.inherit(Q,Box2D.Dynamics.Joints.b2JointDef); +Q.prototype.__super=Box2D.Dynamics.Joints.b2JointDef.prototype;Q.b2FrictionJointDef=function(){Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this,arguments);this.localAnchorA=new w;this.localAnchorB=new w};Q.prototype.b2FrictionJointDef=function(){this.__super.b2JointDef.call(this);this.type=I.e_frictionJoint;this.maxTorque=this.maxForce=0};Q.prototype.Initialize=function(d,h,l){this.bodyA=d;this.bodyB=h;this.localAnchorA.SetV(this.bodyA.GetLocalPoint(l));this.localAnchorB.SetV(this.bodyB.GetLocalPoint(l))}; +Box2D.inherit(V,Box2D.Dynamics.Joints.b2Joint);V.prototype.__super=Box2D.Dynamics.Joints.b2Joint.prototype;V.b2GearJoint=function(){Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this,arguments);this.m_groundAnchor1=new w;this.m_groundAnchor2=new w;this.m_localAnchor1=new w;this.m_localAnchor2=new w;this.m_J=new L};V.prototype.GetAnchorA=function(){return this.m_bodyA.GetWorldPoint(this.m_localAnchor1)};V.prototype.GetAnchorB=function(){return this.m_bodyB.GetWorldPoint(this.m_localAnchor2)};V.prototype.GetReactionForce= +function(d){if(d===undefined)d=0;return new w(d*this.m_impulse*this.m_J.linearB.x,d*this.m_impulse*this.m_J.linearB.y)};V.prototype.GetReactionTorque=function(d){if(d===undefined)d=0;var h=this.m_bodyB.m_xf.R,l=this.m_localAnchor1.x-this.m_bodyB.m_sweep.localCenter.x,j=this.m_localAnchor1.y-this.m_bodyB.m_sweep.localCenter.y,o=h.col1.x*l+h.col2.x*j;j=h.col1.y*l+h.col2.y*j;l=o;return d*(this.m_impulse*this.m_J.angularB-l*this.m_impulse*this.m_J.linearB.y+j*this.m_impulse*this.m_J.linearB.x)};V.prototype.GetRatio= +function(){return this.m_ratio};V.prototype.SetRatio=function(d){if(d===undefined)d=0;this.m_ratio=d};V.prototype.b2GearJoint=function(d){this.__super.b2Joint.call(this,d);var h=parseInt(d.joint1.m_type),l=parseInt(d.joint2.m_type);this.m_prismatic2=this.m_revolute2=this.m_prismatic1=this.m_revolute1=null;var j=0,o=0;this.m_ground1=d.joint1.GetBodyA();this.m_bodyA=d.joint1.GetBodyB();if(h==I.e_revoluteJoint){this.m_revolute1=d.joint1 instanceof N?d.joint1:null;this.m_groundAnchor1.SetV(this.m_revolute1.m_localAnchor1); +this.m_localAnchor1.SetV(this.m_revolute1.m_localAnchor2);j=this.m_revolute1.GetJointAngle()}else{this.m_prismatic1=d.joint1 instanceof H?d.joint1:null;this.m_groundAnchor1.SetV(this.m_prismatic1.m_localAnchor1);this.m_localAnchor1.SetV(this.m_prismatic1.m_localAnchor2);j=this.m_prismatic1.GetJointTranslation()}this.m_ground2=d.joint2.GetBodyA();this.m_bodyB=d.joint2.GetBodyB();if(l==I.e_revoluteJoint){this.m_revolute2=d.joint2 instanceof N?d.joint2:null;this.m_groundAnchor2.SetV(this.m_revolute2.m_localAnchor1); +this.m_localAnchor2.SetV(this.m_revolute2.m_localAnchor2);o=this.m_revolute2.GetJointAngle()}else{this.m_prismatic2=d.joint2 instanceof H?d.joint2:null;this.m_groundAnchor2.SetV(this.m_prismatic2.m_localAnchor1);this.m_localAnchor2.SetV(this.m_prismatic2.m_localAnchor2);o=this.m_prismatic2.GetJointTranslation()}this.m_ratio=d.ratio;this.m_constant=j+this.m_ratio*o;this.m_impulse=0};V.prototype.InitVelocityConstraints=function(d){var h=this.m_ground1,l=this.m_ground2,j=this.m_bodyA,o=this.m_bodyB, +q=0,n=0,a=0,c=0,g=a=0,b=0;this.m_J.SetZero();if(this.m_revolute1){this.m_J.angularA=-1;b+=j.m_invI}else{h=h.m_xf.R;n=this.m_prismatic1.m_localXAxis1;q=h.col1.x*n.x+h.col2.x*n.y;n=h.col1.y*n.x+h.col2.y*n.y;h=j.m_xf.R;a=this.m_localAnchor1.x-j.m_sweep.localCenter.x;c=this.m_localAnchor1.y-j.m_sweep.localCenter.y;g=h.col1.x*a+h.col2.x*c;c=h.col1.y*a+h.col2.y*c;a=g;a=a*n-c*q;this.m_J.linearA.Set(-q,-n);this.m_J.angularA=-a;b+=j.m_invMass+j.m_invI*a*a}if(this.m_revolute2){this.m_J.angularB=-this.m_ratio; +b+=this.m_ratio*this.m_ratio*o.m_invI}else{h=l.m_xf.R;n=this.m_prismatic2.m_localXAxis1;q=h.col1.x*n.x+h.col2.x*n.y;n=h.col1.y*n.x+h.col2.y*n.y;h=o.m_xf.R;a=this.m_localAnchor2.x-o.m_sweep.localCenter.x;c=this.m_localAnchor2.y-o.m_sweep.localCenter.y;g=h.col1.x*a+h.col2.x*c;c=h.col1.y*a+h.col2.y*c;a=g;a=a*n-c*q;this.m_J.linearB.Set(-this.m_ratio*q,-this.m_ratio*n);this.m_J.angularB=-this.m_ratio*a;b+=this.m_ratio*this.m_ratio*(o.m_invMass+o.m_invI*a*a)}this.m_mass=b>0?1/b:0;if(d.warmStarting){j.m_linearVelocity.x+= +j.m_invMass*this.m_impulse*this.m_J.linearA.x;j.m_linearVelocity.y+=j.m_invMass*this.m_impulse*this.m_J.linearA.y;j.m_angularVelocity+=j.m_invI*this.m_impulse*this.m_J.angularA;o.m_linearVelocity.x+=o.m_invMass*this.m_impulse*this.m_J.linearB.x;o.m_linearVelocity.y+=o.m_invMass*this.m_impulse*this.m_J.linearB.y;o.m_angularVelocity+=o.m_invI*this.m_impulse*this.m_J.angularB}else this.m_impulse=0};V.prototype.SolveVelocityConstraints=function(){var d=this.m_bodyA,h=this.m_bodyB,l=-this.m_mass*this.m_J.Compute(d.m_linearVelocity, +d.m_angularVelocity,h.m_linearVelocity,h.m_angularVelocity);this.m_impulse+=l;d.m_linearVelocity.x+=d.m_invMass*l*this.m_J.linearA.x;d.m_linearVelocity.y+=d.m_invMass*l*this.m_J.linearA.y;d.m_angularVelocity+=d.m_invI*l*this.m_J.angularA;h.m_linearVelocity.x+=h.m_invMass*l*this.m_J.linearB.x;h.m_linearVelocity.y+=h.m_invMass*l*this.m_J.linearB.y;h.m_angularVelocity+=h.m_invI*l*this.m_J.angularB};V.prototype.SolvePositionConstraints=function(){var d=this.m_bodyA,h=this.m_bodyB,l=0,j=0;l=this.m_revolute1? +this.m_revolute1.GetJointAngle():this.m_prismatic1.GetJointTranslation();j=this.m_revolute2?this.m_revolute2.GetJointAngle():this.m_prismatic2.GetJointTranslation();l=-this.m_mass*(this.m_constant-(l+this.m_ratio*j));d.m_sweep.c.x+=d.m_invMass*l*this.m_J.linearA.x;d.m_sweep.c.y+=d.m_invMass*l*this.m_J.linearA.y;d.m_sweep.a+=d.m_invI*l*this.m_J.angularA;h.m_sweep.c.x+=h.m_invMass*l*this.m_J.linearB.x;h.m_sweep.c.y+=h.m_invMass*l*this.m_J.linearB.y;h.m_sweep.a+=h.m_invI*l*this.m_J.angularB;d.SynchronizeTransform(); +h.SynchronizeTransform();return 0Number.MIN_VALUE?1/this.m_motorMass:0;this.m_perp.SetV(y.MulMV(q.R,this.m_localYAxis1));this.m_s1=(j+n)*this.m_perp.y-(o+a)*this.m_perp.x;this.m_s2=c*this.m_perp.y- +g*this.m_perp.x;q=this.m_invMassA;n=this.m_invMassB;a=this.m_invIA;c=this.m_invIB;this.m_K.col1.x=q+n+a*this.m_s1*this.m_s1+c*this.m_s2*this.m_s2;this.m_K.col1.y=a*this.m_s1*this.m_a1+c*this.m_s2*this.m_a2;this.m_K.col2.x=this.m_K.col1.y;this.m_K.col2.y=q+n+a*this.m_a1*this.m_a1+c*this.m_a2*this.m_a2;if(this.m_enableLimit){j=this.m_axis.x*j+this.m_axis.y*o;if(y.Abs(this.m_upperTranslation-this.m_lowerTranslation)<2*F.b2_linearSlop)this.m_limitState=I.e_equalLimits;else if(j<=this.m_lowerTranslation){if(this.m_limitState!= +I.e_atLowerLimit){this.m_limitState=I.e_atLowerLimit;this.m_impulse.y=0}}else if(j>=this.m_upperTranslation){if(this.m_limitState!=I.e_atUpperLimit){this.m_limitState=I.e_atUpperLimit;this.m_impulse.y=0}}else{this.m_limitState=I.e_inactiveLimit;this.m_impulse.y=0}}else this.m_limitState=I.e_inactiveLimit;if(this.m_enableMotor==false)this.m_motorImpulse=0;if(d.warmStarting){this.m_impulse.x*=d.dtRatio;this.m_impulse.y*=d.dtRatio;this.m_motorImpulse*=d.dtRatio;d=this.m_impulse.x*this.m_perp.x+(this.m_motorImpulse+ +this.m_impulse.y)*this.m_axis.x;j=this.m_impulse.x*this.m_perp.y+(this.m_motorImpulse+this.m_impulse.y)*this.m_axis.y;o=this.m_impulse.x*this.m_s1+(this.m_motorImpulse+this.m_impulse.y)*this.m_a1;q=this.m_impulse.x*this.m_s2+(this.m_motorImpulse+this.m_impulse.y)*this.m_a2;h.m_linearVelocity.x-=this.m_invMassA*d;h.m_linearVelocity.y-=this.m_invMassA*j;h.m_angularVelocity-=this.m_invIA*o;l.m_linearVelocity.x+=this.m_invMassB*d;l.m_linearVelocity.y+=this.m_invMassB*j;l.m_angularVelocity+=this.m_invIB* +q}else{this.m_impulse.SetZero();this.m_motorImpulse=0}};k.prototype.SolveVelocityConstraints=function(d){var h=this.m_bodyA,l=this.m_bodyB,j=h.m_linearVelocity,o=h.m_angularVelocity,q=l.m_linearVelocity,n=l.m_angularVelocity,a=0,c=0,g=0,b=0;if(this.m_enableMotor&&this.m_limitState!=I.e_equalLimits){b=this.m_motorMass*(this.m_motorSpeed-(this.m_axis.x*(q.x-j.x)+this.m_axis.y*(q.y-j.y)+this.m_a2*n-this.m_a1*o));a=this.m_motorImpulse;c=d.dt*this.m_maxMotorForce;this.m_motorImpulse=y.Clamp(this.m_motorImpulse+ +b,-c,c);b=this.m_motorImpulse-a;a=b*this.m_axis.x;c=b*this.m_axis.y;g=b*this.m_a1;b=b*this.m_a2;j.x-=this.m_invMassA*a;j.y-=this.m_invMassA*c;o-=this.m_invIA*g;q.x+=this.m_invMassB*a;q.y+=this.m_invMassB*c;n+=this.m_invIB*b}c=this.m_perp.x*(q.x-j.x)+this.m_perp.y*(q.y-j.y)+this.m_s2*n-this.m_s1*o;if(this.m_enableLimit&&this.m_limitState!=I.e_inactiveLimit){g=this.m_axis.x*(q.x-j.x)+this.m_axis.y*(q.y-j.y)+this.m_a2*n-this.m_a1*o;a=this.m_impulse.Copy();d=this.m_K.Solve(new w,-c,-g);this.m_impulse.Add(d); +if(this.m_limitState==I.e_atLowerLimit)this.m_impulse.y=y.Max(this.m_impulse.y,0);else if(this.m_limitState==I.e_atUpperLimit)this.m_impulse.y=y.Min(this.m_impulse.y,0);c=-c-(this.m_impulse.y-a.y)*this.m_K.col2.x;g=0;g=this.m_K.col1.x!=0?c/this.m_K.col1.x+a.x:a.x;this.m_impulse.x=g;d.x=this.m_impulse.x-a.x;d.y=this.m_impulse.y-a.y;a=d.x*this.m_perp.x+d.y*this.m_axis.x;c=d.x*this.m_perp.y+d.y*this.m_axis.y;g=d.x*this.m_s1+d.y*this.m_a1;b=d.x*this.m_s2+d.y*this.m_a2}else{d=0;d=this.m_K.col1.x!=0?-c/ +this.m_K.col1.x:0;this.m_impulse.x+=d;a=d*this.m_perp.x;c=d*this.m_perp.y;g=d*this.m_s1;b=d*this.m_s2}j.x-=this.m_invMassA*a;j.y-=this.m_invMassA*c;o-=this.m_invIA*g;q.x+=this.m_invMassB*a;q.y+=this.m_invMassB*c;n+=this.m_invIB*b;h.m_linearVelocity.SetV(j);h.m_angularVelocity=o;l.m_linearVelocity.SetV(q);l.m_angularVelocity=n};k.prototype.SolvePositionConstraints=function(){var d=this.m_bodyA,h=this.m_bodyB,l=d.m_sweep.c,j=d.m_sweep.a,o=h.m_sweep.c,q=h.m_sweep.a,n,a=0,c=0,g=0,b=0,e=n=0,f=0;c=false; +var m=0,r=G.FromAngle(j);g=G.FromAngle(q);n=r;f=this.m_localAnchor1.x-this.m_localCenterA.x;var s=this.m_localAnchor1.y-this.m_localCenterA.y;a=n.col1.x*f+n.col2.x*s;s=n.col1.y*f+n.col2.y*s;f=a;n=g;g=this.m_localAnchor2.x-this.m_localCenterB.x;b=this.m_localAnchor2.y-this.m_localCenterB.y;a=n.col1.x*g+n.col2.x*b;b=n.col1.y*g+n.col2.y*b;g=a;n=o.x+g-l.x-f;a=o.y+b-l.y-s;if(this.m_enableLimit){this.m_axis=y.MulMV(r,this.m_localXAxis1);this.m_a1=(n+f)*this.m_axis.y-(a+s)*this.m_axis.x;this.m_a2=g*this.m_axis.y- +b*this.m_axis.x;var v=this.m_axis.x*n+this.m_axis.y*a;if(y.Abs(this.m_upperTranslation-this.m_lowerTranslation)<2*F.b2_linearSlop){m=y.Clamp(v,-F.b2_maxLinearCorrection,F.b2_maxLinearCorrection);e=y.Abs(v);c=true}else if(v<=this.m_lowerTranslation){m=y.Clamp(v-this.m_lowerTranslation+F.b2_linearSlop,-F.b2_maxLinearCorrection,0);e=this.m_lowerTranslation-v;c=true}else if(v>=this.m_upperTranslation){m=y.Clamp(v-this.m_upperTranslation+F.b2_linearSlop,0,F.b2_maxLinearCorrection);e=v-this.m_upperTranslation; +c=true}}this.m_perp=y.MulMV(r,this.m_localYAxis1);this.m_s1=(n+f)*this.m_perp.y-(a+s)*this.m_perp.x;this.m_s2=g*this.m_perp.y-b*this.m_perp.x;r=new w;s=this.m_perp.x*n+this.m_perp.y*a;e=y.Max(e,y.Abs(s));f=0;if(c){c=this.m_invMassA;g=this.m_invMassB;b=this.m_invIA;n=this.m_invIB;this.m_K.col1.x=c+g+b*this.m_s1*this.m_s1+n*this.m_s2*this.m_s2;this.m_K.col1.y=b*this.m_s1*this.m_a1+n*this.m_s2*this.m_a2;this.m_K.col2.x=this.m_K.col1.y;this.m_K.col2.y=c+g+b*this.m_a1*this.m_a1+n*this.m_a2*this.m_a2;this.m_K.Solve(r, +-s,-m)}else{c=this.m_invMassA;g=this.m_invMassB;b=this.m_invIA;n=this.m_invIB;m=c+g+b*this.m_s1*this.m_s1+n*this.m_s2*this.m_s2;c=0;c=m!=0?-s/m:0;r.x=c;r.y=0}m=r.x*this.m_perp.x+r.y*this.m_axis.x;c=r.x*this.m_perp.y+r.y*this.m_axis.y;s=r.x*this.m_s1+r.y*this.m_a1;r=r.x*this.m_s2+r.y*this.m_a2;l.x-=this.m_invMassA*m;l.y-=this.m_invMassA*c;j-=this.m_invIA*s;o.x+=this.m_invMassB*m;o.y+=this.m_invMassB*c;q+=this.m_invIB*r;d.m_sweep.a=j;h.m_sweep.a=q;d.SynchronizeTransform();h.SynchronizeTransform();return e<= +F.b2_linearSlop&&f<=F.b2_angularSlop};Box2D.inherit(z,Box2D.Dynamics.Joints.b2JointDef);z.prototype.__super=Box2D.Dynamics.Joints.b2JointDef.prototype;z.b2LineJointDef=function(){Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this,arguments);this.localAnchorA=new w;this.localAnchorB=new w;this.localAxisA=new w};z.prototype.b2LineJointDef=function(){this.__super.b2JointDef.call(this);this.type=I.e_lineJoint;this.localAxisA.Set(1,0);this.enableLimit=false;this.upperTranslation=this.lowerTranslation= +0;this.enableMotor=false;this.motorSpeed=this.maxMotorForce=0};z.prototype.Initialize=function(d,h,l,j){this.bodyA=d;this.bodyB=h;this.localAnchorA=this.bodyA.GetLocalPoint(l);this.localAnchorB=this.bodyB.GetLocalPoint(l);this.localAxisA=this.bodyA.GetLocalVector(j)};Box2D.inherit(u,Box2D.Dynamics.Joints.b2Joint);u.prototype.__super=Box2D.Dynamics.Joints.b2Joint.prototype;u.b2MouseJoint=function(){Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this,arguments);this.K=new G;this.K1=new G;this.K2=new G; +this.m_localAnchor=new w;this.m_target=new w;this.m_impulse=new w;this.m_mass=new G;this.m_C=new w};u.prototype.GetAnchorA=function(){return this.m_target};u.prototype.GetAnchorB=function(){return this.m_bodyB.GetWorldPoint(this.m_localAnchor)};u.prototype.GetReactionForce=function(d){if(d===undefined)d=0;return new w(d*this.m_impulse.x,d*this.m_impulse.y)};u.prototype.GetReactionTorque=function(){return 0};u.prototype.GetTarget=function(){return this.m_target};u.prototype.SetTarget=function(d){this.m_bodyB.IsAwake()== +false&&this.m_bodyB.SetAwake(true);this.m_target=d};u.prototype.GetMaxForce=function(){return this.m_maxForce};u.prototype.SetMaxForce=function(d){if(d===undefined)d=0;this.m_maxForce=d};u.prototype.GetFrequency=function(){return this.m_frequencyHz};u.prototype.SetFrequency=function(d){if(d===undefined)d=0;this.m_frequencyHz=d};u.prototype.GetDampingRatio=function(){return this.m_dampingRatio};u.prototype.SetDampingRatio=function(d){if(d===undefined)d=0;this.m_dampingRatio=d};u.prototype.b2MouseJoint= +function(d){this.__super.b2Joint.call(this,d);this.m_target.SetV(d.target);var h=this.m_target.x-this.m_bodyB.m_xf.position.x,l=this.m_target.y-this.m_bodyB.m_xf.position.y,j=this.m_bodyB.m_xf.R;this.m_localAnchor.x=h*j.col1.x+l*j.col1.y;this.m_localAnchor.y=h*j.col2.x+l*j.col2.y;this.m_maxForce=d.maxForce;this.m_impulse.SetZero();this.m_frequencyHz=d.frequencyHz;this.m_dampingRatio=d.dampingRatio;this.m_gamma=this.m_beta=0};u.prototype.InitVelocityConstraints=function(d){var h=this.m_bodyB,l=h.GetMass(), +j=2*Math.PI*this.m_frequencyHz,o=l*j*j;this.m_gamma=d.dt*(2*l*this.m_dampingRatio*j+d.dt*o);this.m_gamma=this.m_gamma!=0?1/this.m_gamma:0;this.m_beta=d.dt*o*this.m_gamma;o=h.m_xf.R;l=this.m_localAnchor.x-h.m_sweep.localCenter.x;j=this.m_localAnchor.y-h.m_sweep.localCenter.y;var q=o.col1.x*l+o.col2.x*j;j=o.col1.y*l+o.col2.y*j;l=q;o=h.m_invMass;q=h.m_invI;this.K1.col1.x=o;this.K1.col2.x=0;this.K1.col1.y=0;this.K1.col2.y=o;this.K2.col1.x=q*j*j;this.K2.col2.x=-q*l*j;this.K2.col1.y=-q*l*j;this.K2.col2.y= +q*l*l;this.K.SetM(this.K1);this.K.AddM(this.K2);this.K.col1.x+=this.m_gamma;this.K.col2.y+=this.m_gamma;this.K.GetInverse(this.m_mass);this.m_C.x=h.m_sweep.c.x+l-this.m_target.x;this.m_C.y=h.m_sweep.c.y+j-this.m_target.y;h.m_angularVelocity*=0.98;this.m_impulse.x*=d.dtRatio;this.m_impulse.y*=d.dtRatio;h.m_linearVelocity.x+=o*this.m_impulse.x;h.m_linearVelocity.y+=o*this.m_impulse.y;h.m_angularVelocity+=q*(l*this.m_impulse.y-j*this.m_impulse.x)};u.prototype.SolveVelocityConstraints=function(d){var h= +this.m_bodyB,l,j=0,o=0;l=h.m_xf.R;var q=this.m_localAnchor.x-h.m_sweep.localCenter.x,n=this.m_localAnchor.y-h.m_sweep.localCenter.y;j=l.col1.x*q+l.col2.x*n;n=l.col1.y*q+l.col2.y*n;q=j;j=h.m_linearVelocity.x+-h.m_angularVelocity*n;var a=h.m_linearVelocity.y+h.m_angularVelocity*q;l=this.m_mass;j=j+this.m_beta*this.m_C.x+this.m_gamma*this.m_impulse.x;o=a+this.m_beta*this.m_C.y+this.m_gamma*this.m_impulse.y;a=-(l.col1.x*j+l.col2.x*o);o=-(l.col1.y*j+l.col2.y*o);l=this.m_impulse.x;j=this.m_impulse.y;this.m_impulse.x+= +a;this.m_impulse.y+=o;d=d.dt*this.m_maxForce;this.m_impulse.LengthSquared()>d*d&&this.m_impulse.Multiply(d/this.m_impulse.Length());a=this.m_impulse.x-l;o=this.m_impulse.y-j;h.m_linearVelocity.x+=h.m_invMass*a;h.m_linearVelocity.y+=h.m_invMass*o;h.m_angularVelocity+=h.m_invI*(q*o-n*a)};u.prototype.SolvePositionConstraints=function(){return true};Box2D.inherit(D,Box2D.Dynamics.Joints.b2JointDef);D.prototype.__super=Box2D.Dynamics.Joints.b2JointDef.prototype;D.b2MouseJointDef=function(){Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this, +arguments);this.target=new w};D.prototype.b2MouseJointDef=function(){this.__super.b2JointDef.call(this);this.type=I.e_mouseJoint;this.maxForce=0;this.frequencyHz=5;this.dampingRatio=0.7};Box2D.inherit(H,Box2D.Dynamics.Joints.b2Joint);H.prototype.__super=Box2D.Dynamics.Joints.b2Joint.prototype;H.b2PrismaticJoint=function(){Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this,arguments);this.m_localAnchor1=new w;this.m_localAnchor2=new w;this.m_localXAxis1=new w;this.m_localYAxis1=new w;this.m_axis=new w; +this.m_perp=new w;this.m_K=new K;this.m_impulse=new A};H.prototype.GetAnchorA=function(){return this.m_bodyA.GetWorldPoint(this.m_localAnchor1)};H.prototype.GetAnchorB=function(){return this.m_bodyB.GetWorldPoint(this.m_localAnchor2)};H.prototype.GetReactionForce=function(d){if(d===undefined)d=0;return new w(d*(this.m_impulse.x*this.m_perp.x+(this.m_motorImpulse+this.m_impulse.z)*this.m_axis.x),d*(this.m_impulse.x*this.m_perp.y+(this.m_motorImpulse+this.m_impulse.z)*this.m_axis.y))};H.prototype.GetReactionTorque= +function(d){if(d===undefined)d=0;return d*this.m_impulse.y};H.prototype.GetJointTranslation=function(){var d=this.m_bodyA,h=this.m_bodyB,l=d.GetWorldPoint(this.m_localAnchor1),j=h.GetWorldPoint(this.m_localAnchor2);h=j.x-l.x;l=j.y-l.y;d=d.GetWorldVector(this.m_localXAxis1);return d.x*h+d.y*l};H.prototype.GetJointSpeed=function(){var d=this.m_bodyA,h=this.m_bodyB,l;l=d.m_xf.R;var j=this.m_localAnchor1.x-d.m_sweep.localCenter.x,o=this.m_localAnchor1.y-d.m_sweep.localCenter.y,q=l.col1.x*j+l.col2.x*o; +o=l.col1.y*j+l.col2.y*o;j=q;l=h.m_xf.R;var n=this.m_localAnchor2.x-h.m_sweep.localCenter.x,a=this.m_localAnchor2.y-h.m_sweep.localCenter.y;q=l.col1.x*n+l.col2.x*a;a=l.col1.y*n+l.col2.y*a;n=q;l=h.m_sweep.c.x+n-(d.m_sweep.c.x+j);q=h.m_sweep.c.y+a-(d.m_sweep.c.y+o);var c=d.GetWorldVector(this.m_localXAxis1),g=d.m_linearVelocity,b=h.m_linearVelocity;d=d.m_angularVelocity;h=h.m_angularVelocity;return l*-d*c.y+q*d*c.x+(c.x*(b.x+-h*a-g.x- -d*o)+c.y*(b.y+h*n-g.y-d*j))};H.prototype.IsLimitEnabled=function(){return this.m_enableLimit}; +H.prototype.EnableLimit=function(d){this.m_bodyA.SetAwake(true);this.m_bodyB.SetAwake(true);this.m_enableLimit=d};H.prototype.GetLowerLimit=function(){return this.m_lowerTranslation};H.prototype.GetUpperLimit=function(){return this.m_upperTranslation};H.prototype.SetLimits=function(d,h){if(d===undefined)d=0;if(h===undefined)h=0;this.m_bodyA.SetAwake(true);this.m_bodyB.SetAwake(true);this.m_lowerTranslation=d;this.m_upperTranslation=h};H.prototype.IsMotorEnabled=function(){return this.m_enableMotor}; +H.prototype.EnableMotor=function(d){this.m_bodyA.SetAwake(true);this.m_bodyB.SetAwake(true);this.m_enableMotor=d};H.prototype.SetMotorSpeed=function(d){if(d===undefined)d=0;this.m_bodyA.SetAwake(true);this.m_bodyB.SetAwake(true);this.m_motorSpeed=d};H.prototype.GetMotorSpeed=function(){return this.m_motorSpeed};H.prototype.SetMaxMotorForce=function(d){if(d===undefined)d=0;this.m_bodyA.SetAwake(true);this.m_bodyB.SetAwake(true);this.m_maxMotorForce=d};H.prototype.GetMotorForce=function(){return this.m_motorImpulse}; +H.prototype.b2PrismaticJoint=function(d){this.__super.b2Joint.call(this,d);this.m_localAnchor1.SetV(d.localAnchorA);this.m_localAnchor2.SetV(d.localAnchorB);this.m_localXAxis1.SetV(d.localAxisA);this.m_localYAxis1.x=-this.m_localXAxis1.y;this.m_localYAxis1.y=this.m_localXAxis1.x;this.m_refAngle=d.referenceAngle;this.m_impulse.SetZero();this.m_motorImpulse=this.m_motorMass=0;this.m_lowerTranslation=d.lowerTranslation;this.m_upperTranslation=d.upperTranslation;this.m_maxMotorForce=d.maxMotorForce;this.m_motorSpeed= +d.motorSpeed;this.m_enableLimit=d.enableLimit;this.m_enableMotor=d.enableMotor;this.m_limitState=I.e_inactiveLimit;this.m_axis.SetZero();this.m_perp.SetZero()};H.prototype.InitVelocityConstraints=function(d){var h=this.m_bodyA,l=this.m_bodyB,j,o=0;this.m_localCenterA.SetV(h.GetLocalCenter());this.m_localCenterB.SetV(l.GetLocalCenter());var q=h.GetTransform();l.GetTransform();j=h.m_xf.R;var n=this.m_localAnchor1.x-this.m_localCenterA.x,a=this.m_localAnchor1.y-this.m_localCenterA.y;o=j.col1.x*n+j.col2.x* +a;a=j.col1.y*n+j.col2.y*a;n=o;j=l.m_xf.R;var c=this.m_localAnchor2.x-this.m_localCenterB.x,g=this.m_localAnchor2.y-this.m_localCenterB.y;o=j.col1.x*c+j.col2.x*g;g=j.col1.y*c+j.col2.y*g;c=o;j=l.m_sweep.c.x+c-h.m_sweep.c.x-n;o=l.m_sweep.c.y+g-h.m_sweep.c.y-a;this.m_invMassA=h.m_invMass;this.m_invMassB=l.m_invMass;this.m_invIA=h.m_invI;this.m_invIB=l.m_invI;this.m_axis.SetV(y.MulMV(q.R,this.m_localXAxis1));this.m_a1=(j+n)*this.m_axis.y-(o+a)*this.m_axis.x;this.m_a2=c*this.m_axis.y-g*this.m_axis.x;this.m_motorMass= +this.m_invMassA+this.m_invMassB+this.m_invIA*this.m_a1*this.m_a1+this.m_invIB*this.m_a2*this.m_a2;if(this.m_motorMass>Number.MIN_VALUE)this.m_motorMass=1/this.m_motorMass;this.m_perp.SetV(y.MulMV(q.R,this.m_localYAxis1));this.m_s1=(j+n)*this.m_perp.y-(o+a)*this.m_perp.x;this.m_s2=c*this.m_perp.y-g*this.m_perp.x;q=this.m_invMassA;n=this.m_invMassB;a=this.m_invIA;c=this.m_invIB;this.m_K.col1.x=q+n+a*this.m_s1*this.m_s1+c*this.m_s2*this.m_s2;this.m_K.col1.y=a*this.m_s1+c*this.m_s2;this.m_K.col1.z=a* +this.m_s1*this.m_a1+c*this.m_s2*this.m_a2;this.m_K.col2.x=this.m_K.col1.y;this.m_K.col2.y=a+c;this.m_K.col2.z=a*this.m_a1+c*this.m_a2;this.m_K.col3.x=this.m_K.col1.z;this.m_K.col3.y=this.m_K.col2.z;this.m_K.col3.z=q+n+a*this.m_a1*this.m_a1+c*this.m_a2*this.m_a2;if(this.m_enableLimit){j=this.m_axis.x*j+this.m_axis.y*o;if(y.Abs(this.m_upperTranslation-this.m_lowerTranslation)<2*F.b2_linearSlop)this.m_limitState=I.e_equalLimits;else if(j<=this.m_lowerTranslation){if(this.m_limitState!=I.e_atLowerLimit){this.m_limitState= +I.e_atLowerLimit;this.m_impulse.z=0}}else if(j>=this.m_upperTranslation){if(this.m_limitState!=I.e_atUpperLimit){this.m_limitState=I.e_atUpperLimit;this.m_impulse.z=0}}else{this.m_limitState=I.e_inactiveLimit;this.m_impulse.z=0}}else this.m_limitState=I.e_inactiveLimit;if(this.m_enableMotor==false)this.m_motorImpulse=0;if(d.warmStarting){this.m_impulse.x*=d.dtRatio;this.m_impulse.y*=d.dtRatio;this.m_motorImpulse*=d.dtRatio;d=this.m_impulse.x*this.m_perp.x+(this.m_motorImpulse+this.m_impulse.z)*this.m_axis.x; +j=this.m_impulse.x*this.m_perp.y+(this.m_motorImpulse+this.m_impulse.z)*this.m_axis.y;o=this.m_impulse.x*this.m_s1+this.m_impulse.y+(this.m_motorImpulse+this.m_impulse.z)*this.m_a1;q=this.m_impulse.x*this.m_s2+this.m_impulse.y+(this.m_motorImpulse+this.m_impulse.z)*this.m_a2;h.m_linearVelocity.x-=this.m_invMassA*d;h.m_linearVelocity.y-=this.m_invMassA*j;h.m_angularVelocity-=this.m_invIA*o;l.m_linearVelocity.x+=this.m_invMassB*d;l.m_linearVelocity.y+=this.m_invMassB*j;l.m_angularVelocity+=this.m_invIB* +q}else{this.m_impulse.SetZero();this.m_motorImpulse=0}};H.prototype.SolveVelocityConstraints=function(d){var h=this.m_bodyA,l=this.m_bodyB,j=h.m_linearVelocity,o=h.m_angularVelocity,q=l.m_linearVelocity,n=l.m_angularVelocity,a=0,c=0,g=0,b=0;if(this.m_enableMotor&&this.m_limitState!=I.e_equalLimits){b=this.m_motorMass*(this.m_motorSpeed-(this.m_axis.x*(q.x-j.x)+this.m_axis.y*(q.y-j.y)+this.m_a2*n-this.m_a1*o));a=this.m_motorImpulse;d=d.dt*this.m_maxMotorForce;this.m_motorImpulse=y.Clamp(this.m_motorImpulse+ +b,-d,d);b=this.m_motorImpulse-a;a=b*this.m_axis.x;c=b*this.m_axis.y;g=b*this.m_a1;b=b*this.m_a2;j.x-=this.m_invMassA*a;j.y-=this.m_invMassA*c;o-=this.m_invIA*g;q.x+=this.m_invMassB*a;q.y+=this.m_invMassB*c;n+=this.m_invIB*b}g=this.m_perp.x*(q.x-j.x)+this.m_perp.y*(q.y-j.y)+this.m_s2*n-this.m_s1*o;c=n-o;if(this.m_enableLimit&&this.m_limitState!=I.e_inactiveLimit){d=this.m_axis.x*(q.x-j.x)+this.m_axis.y*(q.y-j.y)+this.m_a2*n-this.m_a1*o;a=this.m_impulse.Copy();d=this.m_K.Solve33(new A,-g,-c,-d);this.m_impulse.Add(d); +if(this.m_limitState==I.e_atLowerLimit)this.m_impulse.z=y.Max(this.m_impulse.z,0);else if(this.m_limitState==I.e_atUpperLimit)this.m_impulse.z=y.Min(this.m_impulse.z,0);g=-g-(this.m_impulse.z-a.z)*this.m_K.col3.x;c=-c-(this.m_impulse.z-a.z)*this.m_K.col3.y;c=this.m_K.Solve22(new w,g,c);c.x+=a.x;c.y+=a.y;this.m_impulse.x=c.x;this.m_impulse.y=c.y;d.x=this.m_impulse.x-a.x;d.y=this.m_impulse.y-a.y;d.z=this.m_impulse.z-a.z;a=d.x*this.m_perp.x+d.z*this.m_axis.x;c=d.x*this.m_perp.y+d.z*this.m_axis.y;g=d.x* +this.m_s1+d.y+d.z*this.m_a1;b=d.x*this.m_s2+d.y+d.z*this.m_a2}else{d=this.m_K.Solve22(new w,-g,-c);this.m_impulse.x+=d.x;this.m_impulse.y+=d.y;a=d.x*this.m_perp.x;c=d.x*this.m_perp.y;g=d.x*this.m_s1+d.y;b=d.x*this.m_s2+d.y}j.x-=this.m_invMassA*a;j.y-=this.m_invMassA*c;o-=this.m_invIA*g;q.x+=this.m_invMassB*a;q.y+=this.m_invMassB*c;n+=this.m_invIB*b;h.m_linearVelocity.SetV(j);h.m_angularVelocity=o;l.m_linearVelocity.SetV(q);l.m_angularVelocity=n};H.prototype.SolvePositionConstraints=function(){var d= +this.m_bodyA,h=this.m_bodyB,l=d.m_sweep.c,j=d.m_sweep.a,o=h.m_sweep.c,q=h.m_sweep.a,n,a=0,c=0,g=0,b=a=n=0,e=0;c=false;var f=0,m=G.FromAngle(j),r=G.FromAngle(q);n=m;e=this.m_localAnchor1.x-this.m_localCenterA.x;var s=this.m_localAnchor1.y-this.m_localCenterA.y;a=n.col1.x*e+n.col2.x*s;s=n.col1.y*e+n.col2.y*s;e=a;n=r;r=this.m_localAnchor2.x-this.m_localCenterB.x;g=this.m_localAnchor2.y-this.m_localCenterB.y;a=n.col1.x*r+n.col2.x*g;g=n.col1.y*r+n.col2.y*g;r=a;n=o.x+r-l.x-e;a=o.y+g-l.y-s;if(this.m_enableLimit){this.m_axis= +y.MulMV(m,this.m_localXAxis1);this.m_a1=(n+e)*this.m_axis.y-(a+s)*this.m_axis.x;this.m_a2=r*this.m_axis.y-g*this.m_axis.x;var v=this.m_axis.x*n+this.m_axis.y*a;if(y.Abs(this.m_upperTranslation-this.m_lowerTranslation)<2*F.b2_linearSlop){f=y.Clamp(v,-F.b2_maxLinearCorrection,F.b2_maxLinearCorrection);b=y.Abs(v);c=true}else if(v<=this.m_lowerTranslation){f=y.Clamp(v-this.m_lowerTranslation+F.b2_linearSlop,-F.b2_maxLinearCorrection,0);b=this.m_lowerTranslation-v;c=true}else if(v>=this.m_upperTranslation){f= +y.Clamp(v-this.m_upperTranslation+F.b2_linearSlop,0,F.b2_maxLinearCorrection);b=v-this.m_upperTranslation;c=true}}this.m_perp=y.MulMV(m,this.m_localYAxis1);this.m_s1=(n+e)*this.m_perp.y-(a+s)*this.m_perp.x;this.m_s2=r*this.m_perp.y-g*this.m_perp.x;m=new A;s=this.m_perp.x*n+this.m_perp.y*a;r=q-j-this.m_refAngle;b=y.Max(b,y.Abs(s));e=y.Abs(r);if(c){c=this.m_invMassA;g=this.m_invMassB;n=this.m_invIA;a=this.m_invIB;this.m_K.col1.x=c+g+n*this.m_s1*this.m_s1+a*this.m_s2*this.m_s2;this.m_K.col1.y=n*this.m_s1+ +a*this.m_s2;this.m_K.col1.z=n*this.m_s1*this.m_a1+a*this.m_s2*this.m_a2;this.m_K.col2.x=this.m_K.col1.y;this.m_K.col2.y=n+a;this.m_K.col2.z=n*this.m_a1+a*this.m_a2;this.m_K.col3.x=this.m_K.col1.z;this.m_K.col3.y=this.m_K.col2.z;this.m_K.col3.z=c+g+n*this.m_a1*this.m_a1+a*this.m_a2*this.m_a2;this.m_K.Solve33(m,-s,-r,-f)}else{c=this.m_invMassA;g=this.m_invMassB;n=this.m_invIA;a=this.m_invIB;f=n*this.m_s1+a*this.m_s2;v=n+a;this.m_K.col1.Set(c+g+n*this.m_s1*this.m_s1+a*this.m_s2*this.m_s2,f,0);this.m_K.col2.Set(f, +v,0);f=this.m_K.Solve22(new w,-s,-r);m.x=f.x;m.y=f.y;m.z=0}f=m.x*this.m_perp.x+m.z*this.m_axis.x;c=m.x*this.m_perp.y+m.z*this.m_axis.y;s=m.x*this.m_s1+m.y+m.z*this.m_a1;m=m.x*this.m_s2+m.y+m.z*this.m_a2;l.x-=this.m_invMassA*f;l.y-=this.m_invMassA*c;j-=this.m_invIA*s;o.x+=this.m_invMassB*f;o.y+=this.m_invMassB*c;q+=this.m_invIB*m;d.m_sweep.a=j;h.m_sweep.a=q;d.SynchronizeTransform();h.SynchronizeTransform();return b<=F.b2_linearSlop&&e<=F.b2_angularSlop};Box2D.inherit(O,Box2D.Dynamics.Joints.b2JointDef); +O.prototype.__super=Box2D.Dynamics.Joints.b2JointDef.prototype;O.b2PrismaticJointDef=function(){Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this,arguments);this.localAnchorA=new w;this.localAnchorB=new w;this.localAxisA=new w};O.prototype.b2PrismaticJointDef=function(){this.__super.b2JointDef.call(this);this.type=I.e_prismaticJoint;this.localAxisA.Set(1,0);this.referenceAngle=0;this.enableLimit=false;this.upperTranslation=this.lowerTranslation=0;this.enableMotor=false;this.motorSpeed=this.maxMotorForce= +0};O.prototype.Initialize=function(d,h,l,j){this.bodyA=d;this.bodyB=h;this.localAnchorA=this.bodyA.GetLocalPoint(l);this.localAnchorB=this.bodyB.GetLocalPoint(l);this.localAxisA=this.bodyA.GetLocalVector(j);this.referenceAngle=this.bodyB.GetAngle()-this.bodyA.GetAngle()};Box2D.inherit(E,Box2D.Dynamics.Joints.b2Joint);E.prototype.__super=Box2D.Dynamics.Joints.b2Joint.prototype;E.b2PulleyJoint=function(){Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this,arguments);this.m_groundAnchor1=new w;this.m_groundAnchor2= +new w;this.m_localAnchor1=new w;this.m_localAnchor2=new w;this.m_u1=new w;this.m_u2=new w};E.prototype.GetAnchorA=function(){return this.m_bodyA.GetWorldPoint(this.m_localAnchor1)};E.prototype.GetAnchorB=function(){return this.m_bodyB.GetWorldPoint(this.m_localAnchor2)};E.prototype.GetReactionForce=function(d){if(d===undefined)d=0;return new w(d*this.m_impulse*this.m_u2.x,d*this.m_impulse*this.m_u2.y)};E.prototype.GetReactionTorque=function(){return 0};E.prototype.GetGroundAnchorA=function(){var d= +this.m_ground.m_xf.position.Copy();d.Add(this.m_groundAnchor1);return d};E.prototype.GetGroundAnchorB=function(){var d=this.m_ground.m_xf.position.Copy();d.Add(this.m_groundAnchor2);return d};E.prototype.GetLength1=function(){var d=this.m_bodyA.GetWorldPoint(this.m_localAnchor1),h=d.x-(this.m_ground.m_xf.position.x+this.m_groundAnchor1.x);d=d.y-(this.m_ground.m_xf.position.y+this.m_groundAnchor1.y);return Math.sqrt(h*h+d*d)};E.prototype.GetLength2=function(){var d=this.m_bodyB.GetWorldPoint(this.m_localAnchor2), +h=d.x-(this.m_ground.m_xf.position.x+this.m_groundAnchor2.x);d=d.y-(this.m_ground.m_xf.position.y+this.m_groundAnchor2.y);return Math.sqrt(h*h+d*d)};E.prototype.GetRatio=function(){return this.m_ratio};E.prototype.b2PulleyJoint=function(d){this.__super.b2Joint.call(this,d);this.m_ground=this.m_bodyA.m_world.m_groundBody;this.m_groundAnchor1.x=d.groundAnchorA.x-this.m_ground.m_xf.position.x;this.m_groundAnchor1.y=d.groundAnchorA.y-this.m_ground.m_xf.position.y;this.m_groundAnchor2.x=d.groundAnchorB.x- +this.m_ground.m_xf.position.x;this.m_groundAnchor2.y=d.groundAnchorB.y-this.m_ground.m_xf.position.y;this.m_localAnchor1.SetV(d.localAnchorA);this.m_localAnchor2.SetV(d.localAnchorB);this.m_ratio=d.ratio;this.m_constant=d.lengthA+this.m_ratio*d.lengthB;this.m_maxLength1=y.Min(d.maxLengthA,this.m_constant-this.m_ratio*E.b2_minPulleyLength);this.m_maxLength2=y.Min(d.maxLengthB,(this.m_constant-E.b2_minPulleyLength)/this.m_ratio);this.m_limitImpulse2=this.m_limitImpulse1=this.m_impulse=0};E.prototype.InitVelocityConstraints= +function(d){var h=this.m_bodyA,l=this.m_bodyB,j;j=h.m_xf.R;var o=this.m_localAnchor1.x-h.m_sweep.localCenter.x,q=this.m_localAnchor1.y-h.m_sweep.localCenter.y,n=j.col1.x*o+j.col2.x*q;q=j.col1.y*o+j.col2.y*q;o=n;j=l.m_xf.R;var a=this.m_localAnchor2.x-l.m_sweep.localCenter.x,c=this.m_localAnchor2.y-l.m_sweep.localCenter.y;n=j.col1.x*a+j.col2.x*c;c=j.col1.y*a+j.col2.y*c;a=n;j=l.m_sweep.c.x+a;n=l.m_sweep.c.y+c;var g=this.m_ground.m_xf.position.x+this.m_groundAnchor2.x,b=this.m_ground.m_xf.position.y+ +this.m_groundAnchor2.y;this.m_u1.Set(h.m_sweep.c.x+o-(this.m_ground.m_xf.position.x+this.m_groundAnchor1.x),h.m_sweep.c.y+q-(this.m_ground.m_xf.position.y+this.m_groundAnchor1.y));this.m_u2.Set(j-g,n-b);j=this.m_u1.Length();n=this.m_u2.Length();j>F.b2_linearSlop?this.m_u1.Multiply(1/j):this.m_u1.SetZero();n>F.b2_linearSlop?this.m_u2.Multiply(1/n):this.m_u2.SetZero();if(this.m_constant-j-this.m_ratio*n>0){this.m_state=I.e_inactiveLimit;this.m_impulse=0}else this.m_state=I.e_atUpperLimit;if(jF.b2_linearSlop?this.m_u1.Multiply(1/ +l):this.m_u1.SetZero();e>F.b2_linearSlop?this.m_u2.Multiply(1/e):this.m_u2.SetZero();l=this.m_constant-l-this.m_ratio*e;r=y.Max(r,-l);l=y.Clamp(l+F.b2_linearSlop,-F.b2_maxLinearCorrection,0);m=-this.m_pulleyMass*l;l=-m*this.m_u1.x;e=-m*this.m_u1.y;f=-this.m_ratio*m*this.m_u2.x;m=-this.m_ratio*m*this.m_u2.y;d.m_sweep.c.x+=d.m_invMass*l;d.m_sweep.c.y+=d.m_invMass*e;d.m_sweep.a+=d.m_invI*(a*e-c*l);h.m_sweep.c.x+=h.m_invMass*f;h.m_sweep.c.y+=h.m_invMass*m;h.m_sweep.a+=h.m_invI*(g*m-b*f);d.SynchronizeTransform(); +h.SynchronizeTransform()}if(this.m_limitState1==I.e_atUpperLimit){l=d.m_xf.R;a=this.m_localAnchor1.x-d.m_sweep.localCenter.x;c=this.m_localAnchor1.y-d.m_sweep.localCenter.y;e=l.col1.x*a+l.col2.x*c;c=l.col1.y*a+l.col2.y*c;a=e;l=d.m_sweep.c.x+a;e=d.m_sweep.c.y+c;this.m_u1.Set(l-j,e-o);l=this.m_u1.Length();if(l>F.b2_linearSlop){this.m_u1.x*=1/l;this.m_u1.y*=1/l}else this.m_u1.SetZero();l=this.m_maxLength1-l;r=y.Max(r,-l);l=y.Clamp(l+F.b2_linearSlop,-F.b2_maxLinearCorrection,0);m=-this.m_limitMass1*l; +l=-m*this.m_u1.x;e=-m*this.m_u1.y;d.m_sweep.c.x+=d.m_invMass*l;d.m_sweep.c.y+=d.m_invMass*e;d.m_sweep.a+=d.m_invI*(a*e-c*l);d.SynchronizeTransform()}if(this.m_limitState2==I.e_atUpperLimit){l=h.m_xf.R;g=this.m_localAnchor2.x-h.m_sweep.localCenter.x;b=this.m_localAnchor2.y-h.m_sweep.localCenter.y;e=l.col1.x*g+l.col2.x*b;b=l.col1.y*g+l.col2.y*b;g=e;f=h.m_sweep.c.x+g;m=h.m_sweep.c.y+b;this.m_u2.Set(f-q,m-n);e=this.m_u2.Length();if(e>F.b2_linearSlop){this.m_u2.x*=1/e;this.m_u2.y*=1/e}else this.m_u2.SetZero(); +l=this.m_maxLength2-e;r=y.Max(r,-l);l=y.Clamp(l+F.b2_linearSlop,-F.b2_maxLinearCorrection,0);m=-this.m_limitMass2*l;f=-m*this.m_u2.x;m=-m*this.m_u2.y;h.m_sweep.c.x+=h.m_invMass*f;h.m_sweep.c.y+=h.m_invMass*m;h.m_sweep.a+=h.m_invI*(g*m-b*f);h.SynchronizeTransform()}return r=this.m_upperAngle){if(this.m_limitState!=I.e_atUpperLimit)this.m_impulse.z=0;this.m_limitState= +I.e_atUpperLimit}else{this.m_limitState=I.e_inactiveLimit;this.m_impulse.z=0}}else this.m_limitState=I.e_inactiveLimit;if(d.warmStarting){this.m_impulse.x*=d.dtRatio;this.m_impulse.y*=d.dtRatio;this.m_motorImpulse*=d.dtRatio;d=this.m_impulse.x;e=this.m_impulse.y;h.m_linearVelocity.x-=j*d;h.m_linearVelocity.y-=j*e;h.m_angularVelocity-=g*(q*e-n*d+this.m_motorImpulse+this.m_impulse.z);l.m_linearVelocity.x+=o*d;l.m_linearVelocity.y+=o*e;l.m_angularVelocity+=b*(a*e-c*d+this.m_motorImpulse+this.m_impulse.z)}else{this.m_impulse.SetZero(); +this.m_motorImpulse=0}};N.prototype.SolveVelocityConstraints=function(d){var h=this.m_bodyA,l=this.m_bodyB,j=0,o=j=0,q=0,n=0,a=0,c=h.m_linearVelocity,g=h.m_angularVelocity,b=l.m_linearVelocity,e=l.m_angularVelocity,f=h.m_invMass,m=l.m_invMass,r=h.m_invI,s=l.m_invI;if(this.m_enableMotor&&this.m_limitState!=I.e_equalLimits){o=this.m_motorMass*-(e-g-this.m_motorSpeed);q=this.m_motorImpulse;n=d.dt*this.m_maxMotorTorque;this.m_motorImpulse=y.Clamp(this.m_motorImpulse+o,-n,n);o=this.m_motorImpulse-q;g-= +r*o;e+=s*o}if(this.m_enableLimit&&this.m_limitState!=I.e_inactiveLimit){d=h.m_xf.R;o=this.m_localAnchor1.x-h.m_sweep.localCenter.x;q=this.m_localAnchor1.y-h.m_sweep.localCenter.y;j=d.col1.x*o+d.col2.x*q;q=d.col1.y*o+d.col2.y*q;o=j;d=l.m_xf.R;n=this.m_localAnchor2.x-l.m_sweep.localCenter.x;a=this.m_localAnchor2.y-l.m_sweep.localCenter.y;j=d.col1.x*n+d.col2.x*a;a=d.col1.y*n+d.col2.y*a;n=j;d=b.x+-e*a-c.x- -g*q;var v=b.y+e*n-c.y-g*o;this.m_mass.Solve33(this.impulse3,-d,-v,-(e-g));if(this.m_limitState== +I.e_equalLimits)this.m_impulse.Add(this.impulse3);else if(this.m_limitState==I.e_atLowerLimit){j=this.m_impulse.z+this.impulse3.z;if(j<0){this.m_mass.Solve22(this.reduced,-d,-v);this.impulse3.x=this.reduced.x;this.impulse3.y=this.reduced.y;this.impulse3.z=-this.m_impulse.z;this.m_impulse.x+=this.reduced.x;this.m_impulse.y+=this.reduced.y;this.m_impulse.z=0}}else if(this.m_limitState==I.e_atUpperLimit){j=this.m_impulse.z+this.impulse3.z;if(j>0){this.m_mass.Solve22(this.reduced,-d,-v);this.impulse3.x= +this.reduced.x;this.impulse3.y=this.reduced.y;this.impulse3.z=-this.m_impulse.z;this.m_impulse.x+=this.reduced.x;this.m_impulse.y+=this.reduced.y;this.m_impulse.z=0}}c.x-=f*this.impulse3.x;c.y-=f*this.impulse3.y;g-=r*(o*this.impulse3.y-q*this.impulse3.x+this.impulse3.z);b.x+=m*this.impulse3.x;b.y+=m*this.impulse3.y;e+=s*(n*this.impulse3.y-a*this.impulse3.x+this.impulse3.z)}else{d=h.m_xf.R;o=this.m_localAnchor1.x-h.m_sweep.localCenter.x;q=this.m_localAnchor1.y-h.m_sweep.localCenter.y;j=d.col1.x*o+ +d.col2.x*q;q=d.col1.y*o+d.col2.y*q;o=j;d=l.m_xf.R;n=this.m_localAnchor2.x-l.m_sweep.localCenter.x;a=this.m_localAnchor2.y-l.m_sweep.localCenter.y;j=d.col1.x*n+d.col2.x*a;a=d.col1.y*n+d.col2.y*a;n=j;this.m_mass.Solve22(this.impulse2,-(b.x+-e*a-c.x- -g*q),-(b.y+e*n-c.y-g*o));this.m_impulse.x+=this.impulse2.x;this.m_impulse.y+=this.impulse2.y;c.x-=f*this.impulse2.x;c.y-=f*this.impulse2.y;g-=r*(o*this.impulse2.y-q*this.impulse2.x);b.x+=m*this.impulse2.x;b.y+=m*this.impulse2.y;e+=s*(n*this.impulse2.y- +a*this.impulse2.x)}h.m_linearVelocity.SetV(c);h.m_angularVelocity=g;l.m_linearVelocity.SetV(b);l.m_angularVelocity=e};N.prototype.SolvePositionConstraints=function(){var d=0,h,l=this.m_bodyA,j=this.m_bodyB,o=0,q=h=0,n=0,a=0;if(this.m_enableLimit&&this.m_limitState!=I.e_inactiveLimit){d=j.m_sweep.a-l.m_sweep.a-this.m_referenceAngle;var c=0;if(this.m_limitState==I.e_equalLimits){d=y.Clamp(d-this.m_lowerAngle,-F.b2_maxAngularCorrection,F.b2_maxAngularCorrection);c=-this.m_motorMass*d;o=y.Abs(d)}else if(this.m_limitState== +I.e_atLowerLimit){d=d-this.m_lowerAngle;o=-d;d=y.Clamp(d+F.b2_angularSlop,-F.b2_maxAngularCorrection,0);c=-this.m_motorMass*d}else if(this.m_limitState==I.e_atUpperLimit){o=d=d-this.m_upperAngle;d=y.Clamp(d-F.b2_angularSlop,0,F.b2_maxAngularCorrection);c=-this.m_motorMass*d}l.m_sweep.a-=l.m_invI*c;j.m_sweep.a+=j.m_invI*c;l.SynchronizeTransform();j.SynchronizeTransform()}h=l.m_xf.R;c=this.m_localAnchor1.x-l.m_sweep.localCenter.x;d=this.m_localAnchor1.y-l.m_sweep.localCenter.y;q=h.col1.x*c+h.col2.x* +d;d=h.col1.y*c+h.col2.y*d;c=q;h=j.m_xf.R;var g=this.m_localAnchor2.x-j.m_sweep.localCenter.x,b=this.m_localAnchor2.y-j.m_sweep.localCenter.y;q=h.col1.x*g+h.col2.x*b;b=h.col1.y*g+h.col2.y*b;g=q;n=j.m_sweep.c.x+g-l.m_sweep.c.x-c;a=j.m_sweep.c.y+b-l.m_sweep.c.y-d;var e=n*n+a*a;h=Math.sqrt(e);q=l.m_invMass;var f=j.m_invMass,m=l.m_invI,r=j.m_invI,s=10*F.b2_linearSlop;if(e>s*s){e=1/(q+f);n=e*-n;a=e*-a;l.m_sweep.c.x-=0.5*q*n;l.m_sweep.c.y-=0.5*q*a;j.m_sweep.c.x+=0.5*f*n;j.m_sweep.c.y+=0.5*f*a;n=j.m_sweep.c.x+ +g-l.m_sweep.c.x-c;a=j.m_sweep.c.y+b-l.m_sweep.c.y-d}this.K1.col1.x=q+f;this.K1.col2.x=0;this.K1.col1.y=0;this.K1.col2.y=q+f;this.K2.col1.x=m*d*d;this.K2.col2.x=-m*c*d;this.K2.col1.y=-m*c*d;this.K2.col2.y=m*c*c;this.K3.col1.x=r*b*b;this.K3.col2.x=-r*g*b;this.K3.col1.y=-r*g*b;this.K3.col2.y=r*g*g;this.K.SetM(this.K1);this.K.AddM(this.K2);this.K.AddM(this.K3);this.K.Solve(N.tImpulse,-n,-a);n=N.tImpulse.x;a=N.tImpulse.y;l.m_sweep.c.x-=l.m_invMass*n;l.m_sweep.c.y-=l.m_invMass*a;l.m_sweep.a-=l.m_invI*(c* +a-d*n);j.m_sweep.c.x+=j.m_invMass*n;j.m_sweep.c.y+=j.m_invMass*a;j.m_sweep.a+=j.m_invI*(g*a-b*n);l.SynchronizeTransform();j.SynchronizeTransform();return h<=F.b2_linearSlop&&o<=F.b2_angularSlop};Box2D.postDefs.push(function(){Box2D.Dynamics.Joints.b2RevoluteJoint.tImpulse=new w});Box2D.inherit(S,Box2D.Dynamics.Joints.b2JointDef);S.prototype.__super=Box2D.Dynamics.Joints.b2JointDef.prototype;S.b2RevoluteJointDef=function(){Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this,arguments);this.localAnchorA= +new w;this.localAnchorB=new w};S.prototype.b2RevoluteJointDef=function(){this.__super.b2JointDef.call(this);this.type=I.e_revoluteJoint;this.localAnchorA.Set(0,0);this.localAnchorB.Set(0,0);this.motorSpeed=this.maxMotorTorque=this.upperAngle=this.lowerAngle=this.referenceAngle=0;this.enableMotor=this.enableLimit=false};S.prototype.Initialize=function(d,h,l){this.bodyA=d;this.bodyB=h;this.localAnchorA=this.bodyA.GetLocalPoint(l);this.localAnchorB=this.bodyB.GetLocalPoint(l);this.referenceAngle=this.bodyB.GetAngle()- +this.bodyA.GetAngle()};Box2D.inherit(aa,Box2D.Dynamics.Joints.b2Joint);aa.prototype.__super=Box2D.Dynamics.Joints.b2Joint.prototype;aa.b2WeldJoint=function(){Box2D.Dynamics.Joints.b2Joint.b2Joint.apply(this,arguments);this.m_localAnchorA=new w;this.m_localAnchorB=new w;this.m_impulse=new A;this.m_mass=new K};aa.prototype.GetAnchorA=function(){return this.m_bodyA.GetWorldPoint(this.m_localAnchorA)};aa.prototype.GetAnchorB=function(){return this.m_bodyB.GetWorldPoint(this.m_localAnchorB)};aa.prototype.GetReactionForce= +function(d){if(d===undefined)d=0;return new w(d*this.m_impulse.x,d*this.m_impulse.y)};aa.prototype.GetReactionTorque=function(d){if(d===undefined)d=0;return d*this.m_impulse.z};aa.prototype.b2WeldJoint=function(d){this.__super.b2Joint.call(this,d);this.m_localAnchorA.SetV(d.localAnchorA);this.m_localAnchorB.SetV(d.localAnchorB);this.m_referenceAngle=d.referenceAngle;this.m_impulse.SetZero();this.m_mass=new K};aa.prototype.InitVelocityConstraints=function(d){var h,l=0,j=this.m_bodyA,o=this.m_bodyB; +h=j.m_xf.R;var q=this.m_localAnchorA.x-j.m_sweep.localCenter.x,n=this.m_localAnchorA.y-j.m_sweep.localCenter.y;l=h.col1.x*q+h.col2.x*n;n=h.col1.y*q+h.col2.y*n;q=l;h=o.m_xf.R;var a=this.m_localAnchorB.x-o.m_sweep.localCenter.x,c=this.m_localAnchorB.y-o.m_sweep.localCenter.y;l=h.col1.x*a+h.col2.x*c;c=h.col1.y*a+h.col2.y*c;a=l;h=j.m_invMass;l=o.m_invMass;var g=j.m_invI,b=o.m_invI;this.m_mass.col1.x=h+l+n*n*g+c*c*b;this.m_mass.col2.x=-n*q*g-c*a*b;this.m_mass.col3.x=-n*g-c*b;this.m_mass.col1.y=this.m_mass.col2.x; +this.m_mass.col2.y=h+l+q*q*g+a*a*b;this.m_mass.col3.y=q*g+a*b;this.m_mass.col1.z=this.m_mass.col3.x;this.m_mass.col2.z=this.m_mass.col3.y;this.m_mass.col3.z=g+b;if(d.warmStarting){this.m_impulse.x*=d.dtRatio;this.m_impulse.y*=d.dtRatio;this.m_impulse.z*=d.dtRatio;j.m_linearVelocity.x-=h*this.m_impulse.x;j.m_linearVelocity.y-=h*this.m_impulse.y;j.m_angularVelocity-=g*(q*this.m_impulse.y-n*this.m_impulse.x+this.m_impulse.z);o.m_linearVelocity.x+=l*this.m_impulse.x;o.m_linearVelocity.y+=l*this.m_impulse.y; +o.m_angularVelocity+=b*(a*this.m_impulse.y-c*this.m_impulse.x+this.m_impulse.z)}else this.m_impulse.SetZero()};aa.prototype.SolveVelocityConstraints=function(){var d,h=0,l=this.m_bodyA,j=this.m_bodyB,o=l.m_linearVelocity,q=l.m_angularVelocity,n=j.m_linearVelocity,a=j.m_angularVelocity,c=l.m_invMass,g=j.m_invMass,b=l.m_invI,e=j.m_invI;d=l.m_xf.R;var f=this.m_localAnchorA.x-l.m_sweep.localCenter.x,m=this.m_localAnchorA.y-l.m_sweep.localCenter.y;h=d.col1.x*f+d.col2.x*m;m=d.col1.y*f+d.col2.y*m;f=h;d= +j.m_xf.R;var r=this.m_localAnchorB.x-j.m_sweep.localCenter.x,s=this.m_localAnchorB.y-j.m_sweep.localCenter.y;h=d.col1.x*r+d.col2.x*s;s=d.col1.y*r+d.col2.y*s;r=h;d=n.x-a*s-o.x+q*m;h=n.y+a*r-o.y-q*f;var v=a-q,t=new A;this.m_mass.Solve33(t,-d,-h,-v);this.m_impulse.Add(t);o.x-=c*t.x;o.y-=c*t.y;q-=b*(f*t.y-m*t.x+t.z);n.x+=g*t.x;n.y+=g*t.y;a+=e*(r*t.y-s*t.x+t.z);l.m_angularVelocity=q;j.m_angularVelocity=a};aa.prototype.SolvePositionConstraints=function(){var d,h=0,l=this.m_bodyA,j=this.m_bodyB;d=l.m_xf.R; +var o=this.m_localAnchorA.x-l.m_sweep.localCenter.x,q=this.m_localAnchorA.y-l.m_sweep.localCenter.y;h=d.col1.x*o+d.col2.x*q;q=d.col1.y*o+d.col2.y*q;o=h;d=j.m_xf.R;var n=this.m_localAnchorB.x-j.m_sweep.localCenter.x,a=this.m_localAnchorB.y-j.m_sweep.localCenter.y;h=d.col1.x*n+d.col2.x*a;a=d.col1.y*n+d.col2.y*a;n=h;d=l.m_invMass;h=j.m_invMass;var c=l.m_invI,g=j.m_invI,b=j.m_sweep.c.x+n-l.m_sweep.c.x-o,e=j.m_sweep.c.y+a-l.m_sweep.c.y-q,f=j.m_sweep.a-l.m_sweep.a-this.m_referenceAngle,m=10*F.b2_linearSlop, +r=Math.sqrt(b*b+e*e),s=y.Abs(f);if(r>m){c*=1;g*=1}this.m_mass.col1.x=d+h+q*q*c+a*a*g;this.m_mass.col2.x=-q*o*c-a*n*g;this.m_mass.col3.x=-q*c-a*g;this.m_mass.col1.y=this.m_mass.col2.x;this.m_mass.col2.y=d+h+o*o*c+n*n*g;this.m_mass.col3.y=o*c+n*g;this.m_mass.col1.z=this.m_mass.col3.x;this.m_mass.col2.z=this.m_mass.col3.y;this.m_mass.col3.z=c+g;m=new A;this.m_mass.Solve33(m,-b,-e,-f);l.m_sweep.c.x-=d*m.x;l.m_sweep.c.y-=d*m.y;l.m_sweep.a-=c*(o*m.y-q*m.x+m.z);j.m_sweep.c.x+=h*m.x;j.m_sweep.c.y+=h*m.y; +j.m_sweep.a+=g*(n*m.y-a*m.x+m.z);l.SynchronizeTransform();j.SynchronizeTransform();return r<=F.b2_linearSlop&&s<=F.b2_angularSlop};Box2D.inherit(Z,Box2D.Dynamics.Joints.b2JointDef);Z.prototype.__super=Box2D.Dynamics.Joints.b2JointDef.prototype;Z.b2WeldJointDef=function(){Box2D.Dynamics.Joints.b2JointDef.b2JointDef.apply(this,arguments);this.localAnchorA=new w;this.localAnchorB=new w};Z.prototype.b2WeldJointDef=function(){this.__super.b2JointDef.call(this);this.type=I.e_weldJoint;this.referenceAngle= +0};Z.prototype.Initialize=function(d,h,l){this.bodyA=d;this.bodyB=h;this.localAnchorA.SetV(this.bodyA.GetLocalPoint(l));this.localAnchorB.SetV(this.bodyB.GetLocalPoint(l));this.referenceAngle=this.bodyB.GetAngle()-this.bodyA.GetAngle()}})(); +(function(){var F=Box2D.Dynamics.b2DebugDraw;F.b2DebugDraw=function(){this.m_xformScale=this.m_fillAlpha=this.m_alpha=this.m_lineThickness=this.m_drawScale=1;var G=this;this.m_sprite={graphics:{clear:function(){G.m_ctx.clearRect(0,0,G.m_ctx.canvas.width,G.m_ctx.canvas.height)}}}};F.prototype._color=function(G,K){return"rgba("+((G&16711680)>>16)+","+((G&65280)>>8)+","+(G&255)+","+K+")"};F.prototype.b2DebugDraw=function(){this.m_drawFlags=0};F.prototype.SetFlags=function(G){if(G===undefined)G=0;this.m_drawFlags= +G};F.prototype.GetFlags=function(){return this.m_drawFlags};F.prototype.AppendFlags=function(G){if(G===undefined)G=0;this.m_drawFlags|=G};F.prototype.ClearFlags=function(G){if(G===undefined)G=0;this.m_drawFlags&=~G};F.prototype.SetSprite=function(G){this.m_ctx=G};F.prototype.GetSprite=function(){return this.m_ctx};F.prototype.SetDrawScale=function(G){if(G===undefined)G=0;this.m_drawScale=G};F.prototype.GetDrawScale=function(){return this.m_drawScale};F.prototype.SetLineThickness=function(G){if(G=== +undefined)G=0;this.m_lineThickness=G;this.m_ctx.strokeWidth=G};F.prototype.GetLineThickness=function(){return this.m_lineThickness};F.prototype.SetAlpha=function(G){if(G===undefined)G=0;this.m_alpha=G};F.prototype.GetAlpha=function(){return this.m_alpha};F.prototype.SetFillAlpha=function(G){if(G===undefined)G=0;this.m_fillAlpha=G};F.prototype.GetFillAlpha=function(){return this.m_fillAlpha};F.prototype.SetXFormScale=function(G){if(G===undefined)G=0;this.m_xformScale=G};F.prototype.GetXFormScale=function(){return this.m_xformScale}; +F.prototype.DrawPolygon=function(G,K,y){if(K){var w=this.m_ctx,A=this.m_drawScale;w.beginPath();w.strokeStyle=this._color(y.color,this.m_alpha);w.moveTo(G[0].x*A,G[0].y*A);for(y=1;yp+1E3)l=Math.round(o*1E3/(i-p)),q=Math.min(q,l),r=Math.max(r,l),j.textContent=l+" FPS ("+q+"-"+r+")",a=Math.min(30,30-l/ +100*30),f.appendChild(f.firstChild).style.height=a+"px",p=i,o=0}}}; diff --git a/worms/external/bootstrap.min.js b/worms/external/bootstrap.min.js new file mode 100644 index 0000000..95c5ac5 --- /dev/null +++ b/worms/external/bootstrap.min.js @@ -0,0 +1,6 @@ +/*! +* Bootstrap.js by @fat & @mdo +* Copyright 2012 Twitter, Inc. +* http://www.apache.org/licenses/LICENSE-2.0.txt +*/ +!function(e){"use strict";e(function(){e.support.transition=function(){var e=function(){var e=document.createElement("bootstrap"),t={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},n;for(n in t)if(e.style[n]!==undefined)return t[n]}();return e&&{end:e}}()})}(window.jQuery),!function(e){"use strict";var t='[data-dismiss="alert"]',n=function(n){e(n).on("click",t,this.close)};n.prototype.close=function(t){function s(){i.trigger("closed").remove()}var n=e(this),r=n.attr("data-target"),i;r||(r=n.attr("href"),r=r&&r.replace(/.*(?=#[^\s]*$)/,"")),i=e(r),t&&t.preventDefault(),i.length||(i=n.hasClass("alert")?n:n.parent()),i.trigger(t=e.Event("close"));if(t.isDefaultPrevented())return;i.removeClass("in"),e.support.transition&&i.hasClass("fade")?i.on(e.support.transition.end,s):s()};var r=e.fn.alert;e.fn.alert=function(t){return this.each(function(){var r=e(this),i=r.data("alert");i||r.data("alert",i=new n(this)),typeof t=="string"&&i[t].call(r)})},e.fn.alert.Constructor=n,e.fn.alert.noConflict=function(){return e.fn.alert=r,this},e(document).on("click.alert.data-api",t,n.prototype.close)}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.$element=e(t),this.options=e.extend({},e.fn.button.defaults,n)};t.prototype.setState=function(e){var t="disabled",n=this.$element,r=n.data(),i=n.is("input")?"val":"html";e+="Text",r.resetText||n.data("resetText",n[i]()),n[i](r[e]||this.options[e]),setTimeout(function(){e=="loadingText"?n.addClass(t).attr(t,t):n.removeClass(t).removeAttr(t)},0)},t.prototype.toggle=function(){var e=this.$element.closest('[data-toggle="buttons-radio"]');e&&e.find(".active").removeClass("active"),this.$element.toggleClass("active")};var n=e.fn.button;e.fn.button=function(n){return this.each(function(){var r=e(this),i=r.data("button"),s=typeof n=="object"&&n;i||r.data("button",i=new t(this,s)),n=="toggle"?i.toggle():n&&i.setState(n)})},e.fn.button.defaults={loadingText:"loading..."},e.fn.button.Constructor=t,e.fn.button.noConflict=function(){return e.fn.button=n,this},e(document).on("click.button.data-api","[data-toggle^=button]",function(t){var n=e(t.target);n.hasClass("btn")||(n=n.closest(".btn")),n.button("toggle")})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.$element=e(t),this.$indicators=this.$element.find(".carousel-indicators"),this.options=n,this.options.pause=="hover"&&this.$element.on("mouseenter",e.proxy(this.pause,this)).on("mouseleave",e.proxy(this.cycle,this))};t.prototype={cycle:function(t){return t||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(e.proxy(this.next,this),this.options.interval)),this},getActiveIndex:function(){return this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(),this.$items.index(this.$active)},to:function(t){var n=this.getActiveIndex(),r=this;if(t>this.$items.length-1||t<0)return;return this.sliding?this.$element.one("slid",function(){r.to(t)}):n==t?this.pause().cycle():this.slide(t>n?"next":"prev",e(this.$items[t]))},pause:function(t){return t||(this.paused=!0),this.$element.find(".next, .prev").length&&e.support.transition.end&&(this.$element.trigger(e.support.transition.end),this.cycle(!0)),clearInterval(this.interval),this.interval=null,this},next:function(){if(this.sliding)return;return this.slide("next")},prev:function(){if(this.sliding)return;return this.slide("prev")},slide:function(t,n){var r=this.$element.find(".item.active"),i=n||r[t](),s=this.interval,o=t=="next"?"left":"right",u=t=="next"?"first":"last",a=this,f;this.sliding=!0,s&&this.pause(),i=i.length?i:this.$element.find(".item")[u](),f=e.Event("slide",{relatedTarget:i[0],direction:o});if(i.hasClass("active"))return;this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid",function(){var t=e(a.$indicators.children()[a.getActiveIndex()]);t&&t.addClass("active")}));if(e.support.transition&&this.$element.hasClass("slide")){this.$element.trigger(f);if(f.isDefaultPrevented())return;i.addClass(t),i[0].offsetWidth,r.addClass(o),i.addClass(o),this.$element.one(e.support.transition.end,function(){i.removeClass([t,o].join(" ")).addClass("active"),r.removeClass(["active",o].join(" ")),a.sliding=!1,setTimeout(function(){a.$element.trigger("slid")},0)})}else{this.$element.trigger(f);if(f.isDefaultPrevented())return;r.removeClass("active"),i.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return s&&this.cycle(),this}};var n=e.fn.carousel;e.fn.carousel=function(n){return this.each(function(){var r=e(this),i=r.data("carousel"),s=e.extend({},e.fn.carousel.defaults,typeof n=="object"&&n),o=typeof n=="string"?n:s.slide;i||r.data("carousel",i=new t(this,s)),typeof n=="number"?i.to(n):o?i[o]():s.interval&&i.pause().cycle()})},e.fn.carousel.defaults={interval:5e3,pause:"hover"},e.fn.carousel.Constructor=t,e.fn.carousel.noConflict=function(){return e.fn.carousel=n,this},e(document).on("click.carousel.data-api","[data-slide], [data-slide-to]",function(t){var n=e(this),r,i=e(n.attr("data-target")||(r=n.attr("href"))&&r.replace(/.*(?=#[^\s]+$)/,"")),s=e.extend({},i.data(),n.data()),o;i.carousel(s),(o=n.attr("data-slide-to"))&&i.data("carousel").pause().to(o).cycle(),t.preventDefault()})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.$element=e(t),this.options=e.extend({},e.fn.collapse.defaults,n),this.options.parent&&(this.$parent=e(this.options.parent)),this.options.toggle&&this.toggle()};t.prototype={constructor:t,dimension:function(){var e=this.$element.hasClass("width");return e?"width":"height"},show:function(){var t,n,r,i;if(this.transitioning||this.$element.hasClass("in"))return;t=this.dimension(),n=e.camelCase(["scroll",t].join("-")),r=this.$parent&&this.$parent.find("> .accordion-group > .in");if(r&&r.length){i=r.data("collapse");if(i&&i.transitioning)return;r.collapse("hide"),i||r.data("collapse",null)}this.$element[t](0),this.transition("addClass",e.Event("show"),"shown"),e.support.transition&&this.$element[t](this.$element[0][n])},hide:function(){var t;if(this.transitioning||!this.$element.hasClass("in"))return;t=this.dimension(),this.reset(this.$element[t]()),this.transition("removeClass",e.Event("hide"),"hidden"),this.$element[t](0)},reset:function(e){var t=this.dimension();return this.$element.removeClass("collapse")[t](e||"auto")[0].offsetWidth,this.$element[e!==null?"addClass":"removeClass"]("collapse"),this},transition:function(t,n,r){var i=this,s=function(){n.type=="show"&&i.reset(),i.transitioning=0,i.$element.trigger(r)};this.$element.trigger(n);if(n.isDefaultPrevented())return;this.transitioning=1,this.$element[t]("in"),e.support.transition&&this.$element.hasClass("collapse")?this.$element.one(e.support.transition.end,s):s()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}};var n=e.fn.collapse;e.fn.collapse=function(n){return this.each(function(){var r=e(this),i=r.data("collapse"),s=e.extend({},e.fn.collapse.defaults,r.data(),typeof n=="object"&&n);i||r.data("collapse",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.collapse.defaults={toggle:!0},e.fn.collapse.Constructor=t,e.fn.collapse.noConflict=function(){return e.fn.collapse=n,this},e(document).on("click.collapse.data-api","[data-toggle=collapse]",function(t){var n=e(this),r,i=n.attr("data-target")||t.preventDefault()||(r=n.attr("href"))&&r.replace(/.*(?=#[^\s]+$)/,""),s=e(i).data("collapse")?"toggle":n.data();n[e(i).hasClass("in")?"addClass":"removeClass"]("collapsed"),e(i).collapse(s)})}(window.jQuery),!function(e){"use strict";function r(){e(t).each(function(){i(e(this)).removeClass("open")})}function i(t){var n=t.attr("data-target"),r;n||(n=t.attr("href"),n=n&&/#/.test(n)&&n.replace(/.*(?=#[^\s]*$)/,"")),r=n&&e(n);if(!r||!r.length)r=t.parent();return r}var t="[data-toggle=dropdown]",n=function(t){var n=e(t).on("click.dropdown.data-api",this.toggle);e("html").on("click.dropdown.data-api",function(){n.parent().removeClass("open")})};n.prototype={constructor:n,toggle:function(t){var n=e(this),s,o;if(n.is(".disabled, :disabled"))return;return s=i(n),o=s.hasClass("open"),r(),o||s.toggleClass("open"),n.focus(),!1},keydown:function(n){var r,s,o,u,a,f;if(!/(38|40|27)/.test(n.keyCode))return;r=e(this),n.preventDefault(),n.stopPropagation();if(r.is(".disabled, :disabled"))return;u=i(r),a=u.hasClass("open");if(!a||a&&n.keyCode==27)return n.which==27&&u.find(t).focus(),r.click();s=e("[role=menu] li:not(.divider):visible a",u);if(!s.length)return;f=s.index(s.filter(":focus")),n.keyCode==38&&f>0&&f--,n.keyCode==40&&f').appendTo(document.body),this.$backdrop.click(this.options.backdrop=="static"?e.proxy(this.$element[0].focus,this.$element[0]):e.proxy(this.hide,this)),i&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in");if(!t)return;i?this.$backdrop.one(e.support.transition.end,t):t()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),e.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(e.support.transition.end,t):t()):t&&t()}};var n=e.fn.modal;e.fn.modal=function(n){return this.each(function(){var r=e(this),i=r.data("modal"),s=e.extend({},e.fn.modal.defaults,r.data(),typeof n=="object"&&n);i||r.data("modal",i=new t(this,s)),typeof n=="string"?i[n]():s.show&&i.show()})},e.fn.modal.defaults={backdrop:!0,keyboard:!0,show:!0},e.fn.modal.Constructor=t,e.fn.modal.noConflict=function(){return e.fn.modal=n,this},e(document).on("click.modal.data-api",'[data-toggle="modal"]',function(t){var n=e(this),r=n.attr("href"),i=e(n.attr("data-target")||r&&r.replace(/.*(?=#[^\s]+$)/,"")),s=i.data("modal")?"toggle":e.extend({remote:!/#/.test(r)&&r},i.data(),n.data());t.preventDefault(),i.modal(s).one("hide",function(){n.focus()})})}(window.jQuery),!function(e){"use strict";var t=function(e,t){this.init("tooltip",e,t)};t.prototype={constructor:t,init:function(t,n,r){var i,s,o,u,a;this.type=t,this.$element=e(n),this.options=this.getOptions(r),this.enabled=!0,o=this.options.trigger.split(" ");for(a=o.length;a--;)u=o[a],u=="click"?this.$element.on("click."+this.type,this.options.selector,e.proxy(this.toggle,this)):u!="manual"&&(i=u=="hover"?"mouseenter":"focus",s=u=="hover"?"mouseleave":"blur",this.$element.on(i+"."+this.type,this.options.selector,e.proxy(this.enter,this)),this.$element.on(s+"."+this.type,this.options.selector,e.proxy(this.leave,this)));this.options.selector?this._options=e.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},getOptions:function(t){return t=e.extend({},e.fn[this.type].defaults,this.$element.data(),t),t.delay&&typeof t.delay=="number"&&(t.delay={show:t.delay,hide:t.delay}),t},enter:function(t){var n=e.fn[this.type].defaults,r={},i;this._options&&e.each(this._options,function(e,t){n[e]!=t&&(r[e]=t)},this),i=e(t.currentTarget)[this.type](r).data(this.type);if(!i.options.delay||!i.options.delay.show)return i.show();clearTimeout(this.timeout),i.hoverState="in",this.timeout=setTimeout(function(){i.hoverState=="in"&&i.show()},i.options.delay.show)},leave:function(t){var n=e(t.currentTarget)[this.type](this._options).data(this.type);this.timeout&&clearTimeout(this.timeout);if(!n.options.delay||!n.options.delay.hide)return n.hide();n.hoverState="out",this.timeout=setTimeout(function(){n.hoverState=="out"&&n.hide()},n.options.delay.hide)},show:function(){var t,n,r,i,s,o,u=e.Event("show");if(this.hasContent()&&this.enabled){this.$element.trigger(u);if(u.isDefaultPrevented())return;t=this.tip(),this.setContent(),this.options.animation&&t.addClass("fade"),s=typeof this.options.placement=="function"?this.options.placement.call(this,t[0],this.$element[0]):this.options.placement,t.detach().css({top:0,left:0,display:"block"}),this.options.container?t.appendTo(this.options.container):t.insertAfter(this.$element),n=this.getPosition(),r=t[0].offsetWidth,i=t[0].offsetHeight;switch(s){case"bottom":o={top:n.top+n.height,left:n.left+n.width/2-r/2};break;case"top":o={top:n.top-i,left:n.left+n.width/2-r/2};break;case"left":o={top:n.top+n.height/2-i/2,left:n.left-r};break;case"right":o={top:n.top+n.height/2-i/2,left:n.left+n.width}}this.applyPlacement(o,s),this.$element.trigger("shown")}},applyPlacement:function(e,t){var n=this.tip(),r=n[0].offsetWidth,i=n[0].offsetHeight,s,o,u,a;n.offset(e).addClass(t).addClass("in"),s=n[0].offsetWidth,o=n[0].offsetHeight,t=="top"&&o!=i&&(e.top=e.top+i-o,a=!0),t=="bottom"||t=="top"?(u=0,e.left<0&&(u=e.left*-2,e.left=0,n.offset(e),s=n[0].offsetWidth,o=n[0].offsetHeight),this.replaceArrow(u-r+s,s,"left")):this.replaceArrow(o-i,o,"top"),a&&n.offset(e)},replaceArrow:function(e,t,n){this.arrow().css(n,e?50*(1-e/t)+"%":"")},setContent:function(){var e=this.tip(),t=this.getTitle();e.find(".tooltip-inner")[this.options.html?"html":"text"](t),e.removeClass("fade in top bottom left right")},hide:function(){function i(){var t=setTimeout(function(){n.off(e.support.transition.end).detach()},500);n.one(e.support.transition.end,function(){clearTimeout(t),n.detach()})}var t=this,n=this.tip(),r=e.Event("hide");this.$element.trigger(r);if(r.isDefaultPrevented())return;return n.removeClass("in"),e.support.transition&&this.$tip.hasClass("fade")?i():n.detach(),this.$element.trigger("hidden"),this},fixTitle:function(){var e=this.$element;(e.attr("title")||typeof e.attr("data-original-title")!="string")&&e.attr("data-original-title",e.attr("title")||"").attr("title","")},hasContent:function(){return this.getTitle()},getPosition:function(){var t=this.$element[0];return e.extend({},typeof t.getBoundingClientRect=="function"?t.getBoundingClientRect():{width:t.offsetWidth,height:t.offsetHeight},this.$element.offset())},getTitle:function(){var e,t=this.$element,n=this.options;return e=t.attr("data-original-title")||(typeof n.title=="function"?n.title.call(t[0]):n.title),e},tip:function(){return this.$tip=this.$tip||e(this.options.template)},arrow:function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},validate:function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(t){var n=t?e(t.currentTarget)[this.type](this._options).data(this.type):this;n.tip().hasClass("in")?n.hide():n.show()},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}};var n=e.fn.tooltip;e.fn.tooltip=function(n){return this.each(function(){var r=e(this),i=r.data("tooltip"),s=typeof n=="object"&&n;i||r.data("tooltip",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.tooltip.Constructor=t,e.fn.tooltip.defaults={animation:!0,placement:"top",selector:!1,template:'