Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
HTML
<style type="text/css">
/*
   This file was automatically generated using Doc-O-Matic.
*/

pre {
    margin-top : 0px;
    margin-bottom : 0px;
}

.TableDiv {
    width: 100%;
}

table.Table0 {
    width: 100%;
    font-size: 8pt;
}

table.Table1 {
    width: 100%;
    font-size: 8pt;
}

.Element901 {
    color: #000000;
    margin-left : 0px;
    margin-right : 0px;
    margin-top : 0px;
    margin-bottom : 0px;
    border-left-style : none;
    border-top-style : none;
    padding-right : 0px;
    border-right-width : 1px;
    border-right-color : #AAAEBD;
    border-right-style : solid;
    border-bottom-style : none;
    text-align : left;
    overflow: hidden;
}

.Element900 {
    color: #000000;
    margin-left : 0px;
    margin-right : 0px;
    margin-top : 0px;
    margin-bottom : 0px;
    border-left-style : none;
    border-top-style : none;
    padding-right : 0px;
    border-right-width : 1px;
    border-right-color : #AAAEBD;
    border-right-style : solid;
    border-bottom-style : none;
    text-align : left;
}

a.Element875, a:visited.Element875, a:hover.Element875 {
    color: #000000;
    background-color: #EEEEEE;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    padding-left : 2px;
    border-left-width : 1px;
    border-left-color : #999999;
    border-left-style : solid;
    padding-top : 0px;
    border-top-width : 1px;
    border-top-color : #999999;
    border-top-style : solid;
    padding-right : 2px;
    border-right-width : 1px;
    border-right-color : #999999;
    border-right-style : solid;
    padding-bottom : 0px;
    border-bottom-width : 1px;
    border-bottom-color : #999999;
    border-bottom-style : solid;
    text-align : left;
}

a.Element874, a:visited.Element874, a:hover.Element874 {
    color: #000000;
    background-color: #EEEEEE;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    padding-left : 2px;
    border-left-width : 1px;
    border-left-color : #999999;
    border-left-style : solid;
    padding-top : 1px;
    border-top-width : 1px;
    border-top-color : #999999;
    border-top-style : solid;
    padding-right : 2px;
    border-right-width : 1px;
    border-right-color : #999999;
    border-right-style : solid;
    padding-bottom : 1px;
    border-bottom-width : 1px;
    border-bottom-color : #999999;
    border-bottom-style : solid;
    text-align : left;
}

a:hover.Element862 {
    color: #000000;
    background-color: #EEEEEE;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    padding-left : 2px;
    border-left-width : 1px;
    border-left-color : #999999;
    border-left-style : solid;
    padding-top : 0px;
    border-top-width : 1px;
    border-top-color : #999999;
    border-top-style : solid;
    padding-right : 2px;
    border-right-width : 1px;
    border-right-color : #999999;
    border-right-style : solid;
    padding-bottom : 0px;
    border-bottom-width : 1px;
    border-bottom-color : #999999;
    border-bottom-style : solid;
    text-align : left;
}

a:hover.Element861 {
    color: #000000;
    background-color: #EEEEEE;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: italic;
    text-decoration: none;
    padding-left : 2px;
    border-left-width : 1px;
    border-left-color : #999999;
    border-left-style : solid;
    padding-top : 1px;
    border-top-width : 1px;
    border-top-color : #999999;
    border-top-style : solid;
    padding-right : 2px;
    border-right-width : 1px;
    border-right-color : #999999;
    border-right-style : solid;
    padding-bottom : 1px;
    border-bottom-width : 1px;
    border-bottom-color : #999999;
    border-bottom-style : solid;
    text-align : left;
}

a:hover.Element860 {
    color: #000000;
    background-color: #EEEEEE;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    padding-left : 2px;
    border-left-width : 1px;
    border-left-color : #999999;
    border-left-style : solid;
    padding-top : 1px;
    border-top-width : 1px;
    border-top-color : #999999;
    border-top-style : solid;
    padding-right : 2px;
    border-right-width : 1px;
    border-right-color : #999999;
    border-right-style : solid;
    padding-bottom : 1px;
    border-bottom-width : 1px;
    border-bottom-color : #999999;
    border-bottom-style : solid;
    text-align : left;
}

a:visited.Element862 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

a:visited.Element861 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: italic;
    text-decoration: none;
    text-align : left;
}

a:visited.Element860 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

a.Element862 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

a.Element861 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: italic;
    text-decoration: none;
    text-align : left;
}

a.Element860 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element862 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    margin-right : 0px;
    margin-top : 1px;
    margin-bottom : 1px;
    padding-left : 2px;
    border-left-width : 1px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 0px;
    border-top-width : 1px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 2px;
    border-right-width : 1px;
    border-right-color : #FFFFFF;
    border-right-style : solid;
    padding-bottom : 0px;
    border-bottom-width : 1px;
    border-bottom-color : #FFFFFF;
    border-bottom-style : solid;
    text-indent : 0px;
    text-align : left;
}

.Element861 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: italic;
    text-decoration: none;
    margin-left : 0px;
    margin-right : 0px;
    margin-top : 1px;
    margin-bottom : 1px;
    padding-left : 2px;
    border-left-width : 1px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 1px;
    border-top-width : 1px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 2px;
    border-right-width : 1px;
    border-right-color : #FFFFFF;
    border-right-style : solid;
    padding-bottom : 1px;
    border-bottom-width : 1px;
    border-bottom-color : #FFFFFF;
    border-bottom-style : solid;
    text-indent : 0px;
    text-align : left;
}

.Element860 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    margin-right : 0px;
    margin-top : 1px;
    margin-bottom : 1px;
    padding-left : 2px;
    border-left-width : 1px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 1px;
    border-top-width : 1px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 2px;
    border-right-width : 1px;
    border-right-color : #FFFFFF;
    border-right-style : solid;
    padding-bottom : 1px;
    border-bottom-width : 1px;
    border-bottom-color : #FFFFFF;
    border-bottom-style : solid;
    text-indent : 0px;
    text-align : left;
}

.Element851 {
    color: #000000;
    margin-left : 15px;
    margin-top : 0px;
    margin-bottom : 0px;
    text-align : left;
    white-space: nowrap;
}

.Element850 {
    color: #000000;
    margin-left : 7px;
    margin-top : 10px;
    text-align : left;
}

.Element810 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-top : 3px;
    text-align : left;
}

.Element801 {
    color: #000000;
    background-color: #EBF0FF;
    padding-left : 5px;
    border-left-width : 1px;
    border-left-color : #C8CDDE;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 1px;
    border-top-color : #C8CDDE;
    border-top-style : solid;
    padding-right : 5px;
    border-right-width : 1px;
    border-right-color : #C8CDDE;
    border-right-style : solid;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
    position: absolute;
    z-index: 10;
    visibility: hidden;
}

.Element800 {
    color: #000000;
    background-color: #EBF0FF;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element740 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element731 {
    color: #000000;
    margin-left : 0px;
    margin-right : 0px;
    margin-top : 2px;
    margin-bottom : 3px;
    text-align : left;
}

.Element730 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    margin-right : 0px;
    margin-top : 0px;
    margin-bottom : 3px;
    padding-left : 15px;
    border-left-style : none;
    padding-top : 3px;
    border-top-width : 1px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 15px;
    border-right-style : none;
    border-bottom-style : none;
    text-align : left;
}

.Element721 {
    color: #000000;
    text-align : left;
}

.Element720 {
    color: #000000;
    text-align : left;
}

.Element710 {
    color: #000000;
    text-align : left;
    overflow: hidden;
}

.Element700 {
    color: #000000;
    margin-left : 0px;
    margin-right : 0px;
    margin-top : 0px;
    margin-bottom : 0px;
    text-align : left;
    overflow: hidden;
}

.Element639 {
    color: #000000;
    margin-top : 0px;
    margin-bottom : 0px;
    text-align : left;
}

.Element638 {
    color: #000000;
    margin-top : 0px;
    margin-bottom : 0px;
    text-align : left;
}

.Element637 {
    color: #000000;
    margin-top : 0px;
    margin-bottom : 0px;
    text-align : left;
}

.Element636 {
    color: #000000;
    margin-top : 0px;
    margin-bottom : 0px;
    text-align : left;
}

.Element635 {
    color: #000000;
    margin-top : 0px;
    margin-bottom : 0px;
    text-align : left;
}

.Element634 {
    color: #000000;
    margin-top : 0px;
    margin-bottom : 0px;
    text-align : left;
}

.Element633 {
    color: #000000;
    margin-top : 0px;
    margin-bottom : 0px;
    text-align : left;
}

.Element632 {
    color: #000000;
    margin-top : 0px;
    margin-bottom : 0px;
    text-align : left;
}

.Element631 {
    color: #000000;
    margin-top : 0px;
    margin-bottom : 0px;
    text-align : left;
}

.Element630 {
    color: #000000;
    margin-top : 10px;
    margin-bottom : 10px;
    text-align : left;
}

.Element609 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element608 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element607 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element606 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element605 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element604 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element603 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element602 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element601 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element600 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element315 {
    color: #000000;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : -7px;
    margin-top : 10px;
    margin-bottom : 5px;
    text-align : left;
}

.Element312 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    margin-top : 10px;
    margin-bottom : 10px;
    text-align : left;
}

.Element311 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element310 {
    color: #000000;
    margin-left : 15px;
    margin-top : 0px;
    text-align : left;
}

.Element309 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element308 {
    color: #000000;
    margin-top : 3px;
    text-align : left;
}

.Element307 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element306 {
    color: #000000;
    background-color: #F7F7FF;
    margin-top : 0px;
    margin-bottom : 0px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element305 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : left;
}

.Element304 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element303 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element302 {
    color: #000000;
    background-color: #F7F7FF;
    margin-top : 0px;
    margin-bottom : 0px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element301 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : left;
}

.Element300 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element295 {
    color: #000000;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : -7px;
    margin-top : 10px;
    margin-bottom : 5px;
    text-align : left;
}

.Element292 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    margin-top : 10px;
    margin-bottom : 10px;
    text-align : left;
}

.Element291 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element290 {
    color: #000000;
    margin-left : 15px;
    margin-top : 0px;
    text-align : left;
}

.Element289 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element288 {
    color: #000000;
    margin-top : 3px;
    text-align : left;
}

.Element287 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element286 {
    color: #000000;
    background-color: #F7F7FF;
    margin-top : 0px;
    margin-bottom : 0px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element285 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : left;
}

.Element284 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element283 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element282 {
    color: #000000;
    background-color: #F7F7FF;
    margin-top : 0px;
    margin-bottom : 0px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element281 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : left;
}

.Element280 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element275 {
    color: #000000;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : -7px;
    margin-top : 10px;
    margin-bottom : 5px;
    text-align : left;
}

.Element272 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    margin-top : 10px;
    margin-bottom : 10px;
    text-align : left;
}

.Element271 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element270 {
    color: #000000;
    margin-left : 15px;
    margin-top : 0px;
    text-align : left;
}

.Element269 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element268 {
    color: #000000;
    margin-top : 3px;
    text-align : left;
}

.Element267 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element266 {
    color: #000000;
    background-color: #F7F7FF;
    margin-top : 0px;
    margin-bottom : 0px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element265 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : left;
}

.Element264 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element263 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element262 {
    color: #000000;
    background-color: #F7F7FF;
    margin-top : 0px;
    margin-bottom : 0px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element261 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : left;
}

.Element260 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element255 {
    color: #000000;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : -7px;
    margin-top : 10px;
    margin-bottom : 5px;
    text-align : left;
}

.Element252 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    margin-top : 10px;
    margin-bottom : 10px;
    text-align : left;
}

.Element251 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element250 {
    color: #000000;
    margin-left : 15px;
    margin-top : 0px;
    text-align : left;
}

.Element249 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element248 {
    color: #000000;
    margin-top : 3px;
    text-align : left;
}

.Element247 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element246 {
    color: #000000;
    background-color: #F7F7FF;
    margin-top : 0px;
    margin-bottom : 0px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element245 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : left;
}

.Element244 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element243 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element242 {
    color: #000000;
    background-color: #F7F7FF;
    margin-top : 0px;
    margin-bottom : 0px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element241 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : left;
}

.Element240 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element235 {
    color: #000000;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : -7px;
    margin-top : 10px;
    margin-bottom : 5px;
    text-align : left;
}

.Element232 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    margin-top : 10px;
    margin-bottom : 10px;
    text-align : left;
}

.Element231 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element230 {
    color: #000000;
    margin-left : 15px;
    margin-top : 0px;
    text-align : left;
}

.Element229 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element228 {
    color: #000000;
    margin-top : 3px;
    text-align : left;
}

.Element227 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element226 {
    color: #000000;
    background-color: #F7F7FF;
    margin-top : 0px;
    margin-bottom : 0px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element225 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : left;
}

.Element224 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element223 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element222 {
    color: #000000;
    background-color: #F7F7FF;
    margin-top : 0px;
    margin-bottom : 0px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element221 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : left;
}

.Element220 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element215 {
    color: #000000;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : -7px;
    margin-top : 10px;
    margin-bottom : 5px;
    text-align : left;
}

.Element212 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    margin-top : 10px;
    margin-bottom : 10px;
    text-align : left;
}

.Element211 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element210 {
    color: #000000;
    margin-left : 15px;
    margin-top : 0px;
    text-align : left;
}

.Element209 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element208 {
    color: #000000;
    margin-top : 3px;
    text-align : left;
}

.Element207 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element206 {
    color: #000000;
    background-color: #F7F7FF;
    margin-top : 0px;
    margin-bottom : 0px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element205 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : left;
}

.Element204 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element203 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element202 {
    color: #000000;
    background-color: #F7F7FF;
    margin-top : 0px;
    margin-bottom : 0px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element201 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : left;
}

.Element200 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element190 {
    color: #000000;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 14pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 0px;
    margin-bottom : 9px;
    text-align : left;
}

.Element183 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 9pt;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-top : 10px;
    margin-bottom : 10px;
    border-left-style : none;
    border-top-style : none;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #D4DFFF;
    border-bottom-style : solid;
    text-align : left;
}

.Element182 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    margin-top : 10px;
    margin-bottom : 10px;
    text-align : center;
}

.Element181 {
    color: #000000;
    text-align : left;
}

.Element180 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 0px;
    margin-bottom : 10px;
    text-align : left;
}

.Element170 {
    color: #000066;
    background-color: #EFEFF7;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-top : 3px;
    margin-bottom : 0px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 2px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 2px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : right;
}

.Element161 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : -7px;
    margin-bottom : 12px;
    text-align : left;
}

.Element160 {
    color: #000000;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 14pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 0px;
    margin-bottom : 9px;
    text-align : left;
}

.Element153 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : -7px;
    margin-bottom : 12px;
    text-align : left;
}

.Element152 {
    color: #000000;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 14pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 0px;
    margin-bottom : 9px;
    text-align : left;
}

.Element151 {
    color: #000000;
    margin-left : 15px;
    margin-top : 3px;
    text-align : left;
    white-space: pre;
}

.Element150 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-top : 0px;
    text-align : left;
    white-space: pre;
}

.Element146 {
    font-family: Courier New,Courier,monospace;
    font-size: 8pt;
}

.Element145 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
}

a:visited {
    color: #0000FF;
    font-style: normal;
    text-decoration: underline;
}

a:hover {
    color: #3366FF;
    font-style: normal;
    text-decoration: underline;
}

a {
    color: #0000FF;
    font-style: normal;
    text-decoration: underline;
}

.Element103 {
    color: #000000;
    margin-left : 15px;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
    white-space: pre;
}

.Element102 {
    color: #000000;
    background-color: #DDDDDD;
    font-style: normal;
    text-decoration: none;
    text-align : left;
    white-space: pre;
}

.Element101 {
    color: #000000;
    background-color: #F7F7FF;
    margin-left : 15px;
    margin-top : 0px;
    margin-bottom : 10px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
    white-space: pre;
}

.Element100 {
    color: #000000;
    font-family: Courier New,Courier,monospace;
    font-size: 9pt;
    font-style: normal;
    text-decoration: none;
    text-align : left;
    white-space: pre;
}

.Element99 {
    color: #000066;
    background-color: #EFEFF7;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-top : 10px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 0px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 0px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.a_Element99 {
    color: #000066;
    background-color: #EFEFF7;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
}

.Element97 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 7pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 5px;
    margin-bottom : 0px;
    text-align : left;
}

.Element96 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 3px;
    margin-right : 15px;
    margin-top : 2px;
    margin-bottom : 2px;
    text-align : right;
}

.Element95 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 10px;
    margin-bottom : 10px;
    border-left-style : none;
    padding-top : 5px;
    border-top-width : 1px;
    border-top-color : #C8CDDE;
    border-top-style : solid;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element94 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    margin-right : 0px;
    margin-top : 0px;
    margin-bottom : 0px;
    padding-left : 15px;
    border-left-style : none;
    padding-top : 5px;
    border-top-style : none;
    padding-right : 15px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element93 {
    color: #000000;
    margin-left : 0px;
    margin-right : 15px;
    margin-top : 20px;
    margin-bottom : 0px;
    border-left-style : none;
    padding-top : 10px;
    border-top-width : 1px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    border-right-style : none;
    border-bottom-style : none;
    text-align : left;
    background-image: url("footer-bkg-whitegradient.gif");
    background-repeat: repeat-x;
    background-position: top left;
}

.Element92 {
    color: #000000;
    background-color: #FFFFFF;
    border-left-style : none;
    border-top-style : none;
    border-right-style : none;
    padding-bottom : 0px;
    border-bottom-width : 1px;
    border-bottom-color : #FFFFFF;
    border-bottom-style : solid;
    text-align : left;
    background-image: url("header-bkg-whitegradient.gif");
    background-repeat: repeat-x;
    background-position: bottom left;
}

.Element91 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 7pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 5px;
    margin-bottom : 0px;
    text-align : left;
}

.Element90 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 3px;
    margin-right : 15px;
    margin-top : 2px;
    margin-bottom : 2px;
    text-align : right;
    white-space: nowrap;
}

.Element86 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : justify;
}

.Element85 {
    color: #000000;
    background-color: #F7F7FF;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : justify;
}

.Element84 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : justify;
}

.Element83 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : justify;
}

.Element82 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : right;
}

.Element81 {
    color: #000000;
    background-color: #F7F7FF;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : right;
}

.Element80 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : right;
}

.Element79 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : right;
}

.Element78 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : center;
}

.Element77 {
    color: #000000;
    background-color: #F7F7FF;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : center;
}

.Element76 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : center;
}

.Element75 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : center;
}

.Element68 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    text-align : left;
}

.Element67 {
    color: #000000;
    background-color: #F7F7FF;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element66 {
    color: #000066;
    background-color: #EFEFF7;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    text-align : left;
}

.Element65 {
    color: #000000;
    background-color: #EFEFF7;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element63 {
    color: #000000;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-top : 10px;
    margin-bottom : 10px;
    text-align : left;
}

.Element62 {
    color: #000066;
    background-color: #EFEFF7;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 0px;
    margin-right : 0px;
    margin-top : 10px;
    margin-bottom : 10px;
    padding-left : 15px;
    border-left-width : 1px;
    border-left-color : #C8CDDE;
    border-left-style : solid;
    padding-top : 15px;
    border-top-width : 1px;
    border-top-color : #C8CDDE;
    border-top-style : solid;
    padding-right : 15px;
    border-right-width : 1px;
    border-right-color : #C8CDDE;
    border-right-style : solid;
    padding-bottom : 15px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element61 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
}

.Element58 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 3px;
    margin-bottom : 3px;
    text-align : left;
}

.Element57 {
    color: #000000;
    margin-left : 0px;
    margin-right : 0px;
    margin-top : 0px;
    margin-bottom : 0px;
    text-align : left;
}

.Element56 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-weight: normal;
    font-style: normal;
    text-decoration: none;
    text-align : center;
}

.Element55 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 20pt;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-top : 100px;
    margin-bottom : 100px;
    text-align : center;
}

.Element54 {
    color: #000000;
    background-color: #FFFFFF;
    margin-top : 50px;
    text-align : left;
    background-image: url("CRYENGINE3_bg.jpg");
    background-position: top left;
    background-repeat: no-repeat;
}

.Element50 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 30px;
    margin-top : 3px;
    text-align : left;
}

.Element49 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-top : 3px;
    text-align : left;
}

.Element48 {
    color: #000066;
    background-color: #EFEFF7;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 11pt;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : 7px;
    margin-top : 10px;
    margin-bottom : 3px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
}

.Element40 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : -7px;
    margin-bottom : 12px;
    text-align : left;
}

.Element39 {
    color: #000000;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 14pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 0px;
    margin-bottom : 9px;
    text-align : left;
}

.Element37 {
    color: #000000;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 14pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 0px;
    margin-bottom : 9px;
    text-align : left;
}

.Element35 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : -7px;
    margin-bottom : 12px;
    text-align : left;
}

.Element34 {
    color: #000000;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 14pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 0px;
    margin-bottom : 9px;
    text-align : left;
}

.Element28 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : -7px;
    margin-bottom : 12px;
    text-align : left;
}

.Element27 {
    color: #000000;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 14pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 0px;
    margin-bottom : 9px;
    text-align : left;
}

.Element25 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-top : 3px;
    margin-bottom : 10px;
    text-align : left;
}

.Element15 {
    color: #000000;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-left : -15px;
    margin-top : 10px;
    margin-bottom : 5px;
    text-align : left;
}

.Element14 {
    color: #4E69AB;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 11pt;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    margin-top : 20px;
    margin-bottom : 20px;
    text-align : left;
}

.a_Element14 {
    color: #4E69AB;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 11pt;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
}

.Element13 {
    color: #000000;
    background-color: #F7F7FF;
    margin-left : 15px;
    margin-top : 0px;
    margin-bottom : 3px;
    padding-left : 6px;
    border-left-width : 2px;
    border-left-color : #FFFFFF;
    border-left-style : solid;
    padding-top : 5px;
    border-top-width : 2px;
    border-top-color : #FFFFFF;
    border-top-style : solid;
    padding-right : 6px;
    border-right-style : none;
    padding-bottom : 5px;
    border-bottom-width : 1px;
    border-bottom-color : #C8CDDE;
    border-bottom-style : solid;
    text-align : left;
    white-space: pre;
}

.Element12 {
    color: #000000;
    font-family: Courier New,Courier,monospace;
    font-style: normal;
    text-decoration: none;
    text-align : left;
    white-space: pre;
}

.Element11 {
    color: #000000;
    margin-left : 15px;
    margin-top : 10px;
    text-align : left;
}

.Element10 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-top : 10px;
    margin-bottom : 10px;
    text-align : left;
}

.Element9 {
    color: #000000;
    margin-left : 15px;
    margin-top : 10px;
    text-align : left;
}

.Element8 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-top : 10px;
    text-align : left;
}

.Element7 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : -7px;
    margin-bottom : 12px;
    text-align : left;
}

.Element6 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 14pt;
    font-style: normal;
    text-decoration: none;
    margin-top : 10px;
    border-left-style : none;
    padding-top : 3px;
    border-top-width : 2px;
    border-top-color : #949494;
    border-top-style : solid;
    border-right-style : none;
    border-bottom-style : none;
    text-align : left;
}

.Element5 {
    color: #000000;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 15pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 0px;
    margin-bottom : 9px;
    text-align : left;
}

.Element4 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 7pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 5px;
    margin-bottom : 0px;
    text-align : left;
}

.Element3 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 7pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 15px;
    margin-top : 5px;
    margin-bottom : 0px;
    text-align : left;
}

.Element2 {
    color: #000000;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 8pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 3px;
    margin-right : 3px;
    margin-top : 2px;
    margin-bottom : 2px;
    text-align : center;
    white-space: nowrap;
}

.Element1 {
    color: #8C8C8C;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 7pt;
    font-style: normal;
    text-decoration: none;
    margin-left : 15px;
    margin-right : 3px;
    margin-top : 3px;
    margin-bottom : 0px;
    text-align : left;
}

</style>




<!-- Begin Popups -->

<!-- End Popups -->

<!-- Begin Page Header -->
<div class="Element710" id="areafixed">
<div class="Element94">
<em>You are here:</em> <a href="Common_Ref">Common</a> &gt; <a href="Math_Ref">Math</a> &gt; <a href="Vec2_tpl">Vec2_tpl Structure</a></div>
<div class="Element5">
Vec2_tpl Structure</div>
</div>

<!-- End Page Header -->

<!-- Begin Client Area -->
<div class="Element720" id="areascroll">
<div class="Element721">

<!-- Begin Page Content -->
<div class="Element58">
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">class</span></strong> F&gt;
<strong><span style="color: #871F78">struct</span></strong> <strong><span style="color: #660000">Vec2_tpl</span></strong> {
  F <strong><span style="color: #660000"><a href="Vec2_tpl#003C">x</a></span></strong>, <a href="Vec2_tpl#003D">y</a>;
};</pre></div></div>
<a name="46696C65"></a><div class="Element14">
File</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
Cry_Vector2.h</p></div>
</div>
<div class="Element6">
<a name="003C"></a>Vec2_tpl::x Data Member</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100">F <strong><span style="color: #660000">x</span></strong>;</pre></div></div>
<div class="Element6">
<a name="003D"></a>Vec2_tpl::y Data Member</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100">F <strong><span style="color: #660000">y</span></strong>;</pre></div></div>
<div class="Element6">
<a name="0009"></a>Vec2_tpl::- Operator ()</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a> <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">-</span></strong>() <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<div class="Element6">
<a name="000A"></a>Vec2_tpl::- Operator (Vec2_tpl&lt;F1&gt; &amp;, Vec2_tpl&lt;F2&gt; &amp;)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">class</span></strong> F1,<strong><span style="color: #871F78">class</span></strong> F2&gt; <a href="Vec2_tpl">Vec2_tpl</a>&lt;F1&gt; <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">-</span></strong>(<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F1&gt; &amp; <strong><span style="color: #660000">op1</span></strong>, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F2&gt; &amp; <strong><span style="color: #660000">op2</span></strong>);</pre></div></div>
<div class="Element6">
<a name="0001"></a>Vec2_tpl::! Operator</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">int</span></strong> <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">!</span></strong>() <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<a name="4465736372697074696F6E"></a><div class="Element14">
Description</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
template</p></div>
</div>
<div class="Element6">
<a name="0002"></a>Vec2_tpl::!= Operator</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">bool</span></strong> <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">!=</span></strong>(<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp; <strong><span style="color: #660000">vec</span></strong>);</pre></div></div>
<a name="4465736372697074696F6E"></a><div class="Element14">
Description</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
bool operator==(const <a href="Vec2_tpl">Vec2_tpl</a>&amp;vec) { return <a href="Vec2_tpl#003C">x</a> == vec.<a href="Vec2_tpl#003C">x</a> &amp;&amp; <a href="Vec2_tpl#003D">y</a> == vec.<a href="Vec2_tpl#003D">y</a>;</p></div>
</div>
<div class="Element6">
<a name="0003"></a>Vec2_tpl::* Operator (F)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a> <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">*</span></strong>(F <strong><span style="color: #660000">k</span></strong>) <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<div class="Element6">
<a name="0004"></a>Vec2_tpl::* Operator (F, Vec2_tpl&lt;F&gt; &amp;)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">class</span></strong> F&gt; <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">*</span></strong>(F <strong><span style="color: #660000">op1</span></strong>, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp; <strong><span style="color: #660000">op2</span></strong>);</pre></div></div>
<div class="Element6">
<a name="0005"></a>Vec2_tpl::* Operator (Vec2_tpl&lt;F1&gt; &amp;, Vec2_tpl&lt;F2&gt;&amp;)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">class</span></strong> F1,<strong><span style="color: #871F78">class</span></strong> F2&gt; F1 <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">*</span></strong>(<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F1&gt; &amp; <strong><span style="color: #660000">op1</span></strong>, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F2&gt;&amp; <strong><span style="color: #660000">op2</span></strong>);</pre></div></div>
<a name="4465736372697074696F6E"></a><div class="Element14">
Description</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
dot product</p></div>
</div>
<div class="Element6">
<a name="0006"></a>Vec2_tpl::*= Operator</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a>&amp; <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">*=</span></strong>(F <strong><span style="color: #660000">k</span></strong>);</pre></div></div>
<div class="Element6">
<a name="0007"></a>Vec2_tpl::/ Operator</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a> <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">/</span></strong>(F <strong><span style="color: #660000">k</span></strong>) <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<div class="Element6">
<a name="0008"></a>Vec2_tpl::/= Operator</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a>&amp; <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">/=</span></strong>(F <strong><span style="color: #660000">k</span></strong>);</pre></div></div>
<div class="Element6">
<a name="000B"></a>Vec2_tpl::[] Operator (int)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100">F&amp; <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">[]</span></strong>(<strong><span style="color: #871F78">int</span></strong> <strong><span style="color: #660000">idx</span></strong>);</pre></div></div>
<div class="Element6">
<a name="000C"></a>Vec2_tpl::[] Operator (int)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100">F <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">[]</span></strong>(<strong><span style="color: #871F78">int</span></strong> <strong><span style="color: #660000">idx</span></strong>) <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<div class="Element6">
<a name="000D"></a>Vec2_tpl::^ Operator</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">class</span></strong> F1,<strong><span style="color: #871F78">class</span></strong> F2&gt; F1 <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">^</span></strong>(<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F1&gt; &amp; <strong><span style="color: #660000">op1</span></strong>, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F2&gt;&amp; <strong><span style="color: #660000">op2</span></strong>);</pre></div></div>
<a name="4465736372697074696F6E"></a><div class="Element14">
Description</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
cross product</p></div>
</div>
<div class="Element6">
<a name="000E"></a>Vec2_tpl::| Operator</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">class</span></strong> F1,<strong><span style="color: #871F78">class</span></strong> F2&gt; F1 <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">|</span></strong>(<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F1&gt; &amp; <strong><span style="color: #660000">op1</span></strong>, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F2&gt;&amp; <strong><span style="color: #660000">op2</span></strong>);</pre></div></div>
<a name="4465736372697074696F6E"></a><div class="Element14">
Description</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
dot product</p></div>
</div>
<div class="Element6">
<a name="000F"></a>Vec2_tpl::+ Operator</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">class</span></strong> F1,<strong><span style="color: #871F78">class</span></strong> F2&gt; <a href="Vec2_tpl">Vec2_tpl</a>&lt;F1&gt; <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">+</span></strong>(<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F1&gt; &amp; <strong><span style="color: #660000">op1</span></strong>, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F2&gt; &amp; <strong><span style="color: #660000">op2</span></strong>);</pre></div></div>
<div class="Element6">
<a name="0010"></a>Vec2_tpl::+= Operator</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">class</span></strong> F1,<strong><span style="color: #871F78">class</span></strong> F2&gt; <a href="Vec2_tpl">Vec2_tpl</a>&lt;F1&gt;&amp; <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">+=</span></strong>(<a href="Vec2_tpl">Vec2_tpl</a>&lt;F1&gt; &amp; <strong><span style="color: #660000">op1</span></strong>, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F2&gt; &amp; <strong><span style="color: #660000">op2</span></strong>);</pre></div></div>
<div class="Element6">
<a name="0011"></a>Vec2_tpl::= Operator</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a> &amp; <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">=</span></strong>(<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a> &amp; <strong><span style="color: #660000">src</span></strong>);</pre></div></div>
<div class="Element6">
<a name="0012"></a>Vec2_tpl::-= Operator</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">class</span></strong> F1,<strong><span style="color: #871F78">class</span></strong> F2&gt; <a href="Vec2_tpl">Vec2_tpl</a>&lt;F1&gt;&amp; <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">-=</span></strong>(<a href="Vec2_tpl">Vec2_tpl</a>&lt;F1&gt; &amp; <strong><span style="color: #660000">op1</span></strong>, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F2&gt; &amp; <strong><span style="color: #660000">op2</span></strong>);</pre></div></div>
<div class="Element6">
<a name="0013"></a>Vec2_tpl::== Operator</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">class</span></strong> F&gt; <strong><span style="color: #871F78">bool</span></strong> <strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">==</span></strong>(<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp; <strong><span style="color: #660000">left</span></strong>, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp; <strong><span style="color: #660000">right</span></strong>);</pre></div></div>
<div class="Element6">
<a name="0014"></a>Vec2_tpl::area Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100">F <strong><span style="color: #660000">area</span></strong>() <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<div class="Element6">
<a name="0015"></a>Vec2_tpl::atan2 Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100">F <strong><span style="color: #660000">atan2</span></strong>() <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<div class="Element6">
<a name="0016"></a>Vec2_tpl::clamp_tpl Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;&gt;  <a href="Vec2_tpl#0027">Vec2</a> <strong><span style="color: #660000">clamp_tpl</span></strong>&lt;<a href="Vec2_tpl#0027">Vec2</a>&gt;(<a href="Vec2_tpl#0027">Vec2</a> <strong><span style="color: #660000">X</span></strong>, <a href="Vec2_tpl#0027">Vec2</a> <strong><span style="color: #660000">Min</span></strong>, <a href="Vec2_tpl#0027">Vec2</a> <strong><span style="color: #660000">Max</span></strong>);</pre></div></div>
<div class="Element6">
<a name="0017"></a>Vec2_tpl::F* Operator</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">operator</span></strong> <strong><span style="color: #660000">F*</span></strong>();</pre></div></div>
<div class="Element6">
<a name="0018"></a>Vec2_tpl::flip Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a>&amp; <strong><span style="color: #660000">flip</span></strong>();</pre></div></div>
<div class="Element6">
<a name="001A"></a>Vec2_tpl::GetLength Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100">F <strong><span style="color: #660000">GetLength</span></strong>() <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<div class="Element6">
<a name="001B"></a>Vec2_tpl::GetLength2 Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100">F <strong><span style="color: #660000">GetLength2</span></strong>() <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<div class="Element6">
<a name="001C"></a>Vec2_tpl::GetNormalized Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a> <strong><span style="color: #660000">GetNormalized</span></strong>() <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<div class="Element6">
<a name="001D"></a>Vec2_tpl::GetNormalizedSafe Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a> <strong><span style="color: #660000">GetNormalizedSafe</span></strong>(<strong><span style="color: #871F78">const</span></strong> <strong><span style="color: #871F78">struct</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt;&amp; <strong><span style="color: #660000">safe</span></strong> = <a href="Vec2Constants">Vec2Constants</a>&lt;F&gt;::fVec2_OneX) <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<div class="Element6">
<a name="001E"></a>Vec2_tpl::IsEquivalent Method (Vec2_tpl&lt;F&gt; &amp;, F)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">bool</span></strong> <strong><span style="color: #660000">IsEquivalent</span></strong>(<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp; <strong><span style="color: #660000">v1</span></strong>, F <strong><span style="color: #660000">epsilon</span></strong> = <a href="Math_Macros#002C">VEC_EPSILON</a>) <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<div class="Element6">
<a name="001F"></a>Vec2_tpl::IsEquivalent Method (Vec2_tpl&lt;F&gt;&amp;, Vec2_tpl&lt;F&gt;&amp;, F)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">static</span></strong> <strong><span style="color: #871F78">bool</span></strong> <strong><span style="color: #660000">IsEquivalent</span></strong>(<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt;&amp; <strong><span style="color: #660000">v0</span></strong>, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt;&amp; <strong><span style="color: #660000">v1</span></strong>, F <strong><span style="color: #660000">epsilon</span></strong> = <a href="Math_Macros#002C">VEC_EPSILON</a>);</pre></div></div>
<div class="Element6">
<a name="0020"></a>Vec2_tpl::Normalize Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a>&amp; <strong><span style="color: #660000">Normalize</span></strong>();</pre></div></div>
<a name="4465736372697074696F6E"></a><div class="Element14">
Description</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
The default Normalize function is in fact &quot;safe&quot;. 0 vectors remain unchanged.</p></div>
</div>
<div class="Element6">
<a name="0021"></a>Vec2_tpl::NormalizeSafe Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a>&amp; <strong><span style="color: #660000">NormalizeSafe</span></strong>(<strong><span style="color: #871F78">const</span></strong> <strong><span style="color: #871F78">struct</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt;&amp; <strong><span style="color: #660000">safe</span></strong> = <a href="Vec2Constants">Vec2Constants</a>&lt;F&gt;::fVec2_Zero);</pre></div></div>
<a name="4465736372697074696F6E"></a><div class="Element14">
Description</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
<a href="Vec2_tpl#0020">Normalize</a> if non-0, otherwise <a href="Vec2_tpl#0024">set</a>set to specified &quot;safe&quot; value.</p></div>
</div>
<div class="Element6">
<a name="0022"></a>Vec2_tpl::rot90ccw Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a> <strong><span style="color: #660000">rot90ccw</span></strong>() <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<div class="Element6">
<a name="0023"></a>Vec2_tpl::rot90cw Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a> <strong><span style="color: #660000">rot90cw</span></strong>() <strong><span style="color: #871F78">const</span></strong>;</pre></div></div>
<div class="Element6">
<a name="0024"></a>Vec2_tpl::set Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a>&amp; <strong><span style="color: #660000">set</span></strong>(F <strong><span style="color: #660000">nx</span></strong>, F <strong><span style="color: #660000">ny</span></strong>);</pre></div></div>
<div class="Element6">
<a name="0025"></a>Vec2_tpl::SetLength Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">void</span></strong> <strong><span style="color: #660000">SetLength</span></strong>(F <strong><span style="color: #660000">fLen</span></strong>);</pre></div></div>
<div class="Element6">
<a name="0028"></a>Vec2_tpl::Vec2_tpl Constructor ()</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #660000">Vec2_tpl</span></strong>();</pre></div></div>
<div class="Element6">
<a name="0029"></a>Vec2_tpl::Vec2_tpl Constructor (F, F)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #660000">Vec2_tpl</span></strong>(F <strong><span style="color: #660000">vx</span></strong>, F <strong><span style="color: #660000">vy</span></strong>);</pre></div></div>
<div class="Element6">
<a name="002A"></a>Vec2_tpl::Vec2_tpl Constructor (F1 *)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">class</span></strong> F1&gt; <strong><span style="color: #871F78">explicit</span></strong> <strong><span style="color: #660000">Vec2_tpl</span></strong>(<strong><span style="color: #871F78">const</span></strong> F1 * <strong><span style="color: #660000">psrc</span></strong>);</pre></div></div>
<div class="Element6">
<a name="002C"></a>Vec2_tpl::Vec2_tpl Constructor (Vec2_tpl&lt;F1&gt; &amp;)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">class</span></strong> F1&gt; <strong><span style="color: #660000">Vec2_tpl</span></strong>(<strong><span style="color: #871F78">const</span></strong> Vec2_tpl&lt;F1&gt; &amp; <strong><span style="color: #660000">src</span></strong>);</pre></div></div>
<div class="Element6">
<a name="002E"></a>Vec2_tpl::Vec2_tpl Constructor (Vec3_tpl&lt;F1&gt; &amp;)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">class</span></strong> F1&gt; <strong><span style="color: #871F78">explicit</span></strong> <strong><span style="color: #660000">Vec2_tpl</span></strong>(<strong><span style="color: #871F78">const</span></strong> <a href="Vec3_tpl">Vec3_tpl</a>&lt;F1&gt; &amp; <strong><span style="color: #660000">src</span></strong>);</pre></div></div>
<div class="Element6">
<a name="002D"></a>Vec2_tpl::Vec2_tpl Constructor (Vec3_tpl&lt;F&gt;&amp;)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">explicit</span></strong> <strong><span style="color: #660000">Vec2_tpl</span></strong>(<strong><span style="color: #871F78">const</span></strong> <a href="Vec3_tpl">Vec3_tpl</a>&lt;F&gt;&amp; <strong><span style="color: #660000">v</span></strong>);</pre></div></div>
<div class="Element6">
<a name="002B"></a>Vec2_tpl::Vec2_tpl Constructor (type_zero)</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #660000">Vec2_tpl</span></strong>(<a href="Math_Enums#0015">type_zero</a>);</pre></div></div>
<div class="Element6">
<a name="002F"></a>Vec2_tpl::Vec2Constants&lt;T&gt;::fVec2_One Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">typename</span></strong> T&gt; <a href="Vec2_tpl">Vec2_tpl</a>&lt;T&gt; <strong><span style="color: #660000"><a href="Vec2Constants">Vec2Constants</a>&lt;T&gt;::fVec2_One</span></strong>(1, 1);</pre></div></div>
<div class="Element6">
<a name="0030"></a>Vec2_tpl::Vec2Constants&lt;T&gt;::fVec2_OneX Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">typename</span></strong> T&gt; <a href="Vec2_tpl">Vec2_tpl</a>&lt;T&gt; <strong><span style="color: #660000"><a href="Vec2Constants">Vec2Constants</a>&lt;T&gt;::fVec2_OneX</span></strong>(1, 0);</pre></div></div>
<div class="Element6">
<a name="0031"></a>Vec2_tpl::Vec2Constants&lt;T&gt;::fVec2_OneY Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">typename</span></strong> T&gt; <a href="Vec2_tpl">Vec2_tpl</a>&lt;T&gt; <strong><span style="color: #660000"><a href="Vec2Constants">Vec2Constants</a>&lt;T&gt;::fVec2_OneY</span></strong>(0, 1);</pre></div></div>
<div class="Element6">
<a name="0032"></a>Vec2_tpl::Vec2Constants&lt;T&gt;::fVec2_Zero Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">template</span></strong> &lt;<strong><span style="color: #871F78">typename</span></strong> T&gt; <a href="Vec2_tpl">Vec2_tpl</a>&lt;T&gt; <strong><span style="color: #660000"><a href="Vec2Constants">Vec2Constants</a>&lt;T&gt;::fVec2_Zero</span></strong>(0, 0);</pre></div></div>
<div class="Element6">
<a name="003E"></a>Vec2_tpl::zero Method</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="Vec2_tpl">Vec2_tpl</a>&amp; <strong><span style="color: #660000">zero</span></strong>();</pre></div></div>
<div class="Element6">
<a name="0019"></a>friend bool operator==(const Vec2_tpl&lt;F&gt; &amp;left, const Vec2_tpl&lt;F&gt; &amp;right) { return left.x == right.x &amp;&amp; left.y == right.y; } friend bool operator!=(const Vec2_tpl&lt;F&gt; &amp;left, const Vec2_tpl&lt;F&gt; &amp;right) { return !(left==right); } bool IsZero(F e = (F)0.0) const { return (fabs_tpl(x) &lt;= e) &amp;&amp; (fabs_tpl(y) &lt;= e); } bool IsZeroFast(F e = (F)0.0003) const { return (fabs_tpl(x) + fabs_tpl(y)) &lt;= e; } F Dot(const Vec2_tpl &amp;rhs) const {return x*rhs.x + y*rhs.y;} Vec2_tpl Perp() const {return Vec2_tpl(-y, x);} F Cross (const Vec2_tpl&lt;F&gt; &amp;v) const { return float (x*v.y - y*v.x); } void SetLerp( const Vec2_tpl&lt;F&gt; &amp;p, const Vec2_tpl&lt;F&gt; &amp;q, F t ) { *this = p*(1.0f-t) + q*t;} static Vec2_tpl&lt;F&gt; CreateLerp( const Vec2_tpl&lt;F&gt; &amp;p, const Vec2_tpl&lt;F&gt; &amp;q, F t ) { return p*(1.0f-t) + q*t;} void SetSlerp( const Vec2_tpl&lt;F&gt;&amp; p, const Vec2_tpl&lt;F&gt;&amp; q, F t ) { assert((fabs_tpl(1-(p|p)))&lt;0.005); assert((fabs_tpl(1-(q|q)))&lt;0.005); F cosine = (p|q); if(cosine&gt;=(F)0.99) { SetLerp(p,q,t); this-&gt;Normalize(); } else { F rad = acos_tpl(cosine); F scale_0 = sin_tpl((1-t)*rad); F scale_1 = sin_tpl(t*rad); *this=(p*scale_0 + q*scale_1) / sin_tpl(rad); this-&gt;Normalize(); } } static Vec2_tpl&lt;F&gt; CreateSlerp( const Vec2_tpl&lt;F&gt;&amp; p, const Vec2_tpl&lt;F&gt;&amp; q, F t ) { Vec2_tpl&lt;F&gt; v; v.SetSlerp(p,q,t); return v; } bool IsValid() const { if (!NumberValid(x)) return false; if (!NumberValid(y)) return false; return true; } AUTO_STRUCT_INFO } Friend</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">friend</span></strong> <strong><span style="color: #871F78">bool</span></strong> <strong><span style="color: #871F78">operator</span></strong>==(<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp;left, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp;right) { <strong><span style="color: #871F78">return</span></strong> left.<a href="Vec2_tpl#003C">x</a> == right.<a href="Vec2_tpl#003C">x</a> &amp;&amp; left.<a href="Vec2_tpl#003D">y</a> == right.<a href="Vec2_tpl#003D">y</a>; } <strong><span style="color: #871F78">friend</span></strong> <strong><span style="color: #871F78">bool</span></strong> <strong><span style="color: #871F78">operator</span></strong>!=(<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp;left, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp;right) { <strong><span style="color: #871F78">return</span></strong> !(left==right); } <strong><span style="color: #871F78">bool</span></strong> IsZero(F e = (F)0.0) <strong><span style="color: #871F78">const</span></strong> { <strong><span style="color: #871F78">return</span></strong> (fabs_tpl(<a href="Vec2_tpl#003C">x</a>) &lt;= e) &amp;&amp; (fabs_tpl(<a href="Vec2_tpl#003D">y</a>) &lt;= e); } <strong><span style="color: #871F78">bool</span></strong> IsZeroFast(F e = (F)0.0003) <strong><span style="color: #871F78">const</span></strong> { <strong><span style="color: #871F78">return</span></strong> (fabs_tpl(<a href="Vec2_tpl#003C">x</a>) + fabs_tpl(<a href="Vec2_tpl#003D">y</a>)) &lt;= e; } F Dot(<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a> &amp;rhs) <strong><span style="color: #871F78">const</span></strong> {<strong><span style="color: #871F78">return</span></strong> <a href="Vec2_tpl#003C">x</a>*rhs.<a href="Vec2_tpl#003C">x</a> + <a href="Vec2_tpl#003D">y</a>*rhs.<a href="Vec2_tpl#003D">y</a>;} <a href="Vec2_tpl">Vec2_tpl</a> Perp() <strong><span style="color: #871F78">const</span></strong> {<strong><span style="color: #871F78">return</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>(-<a href="Vec2_tpl#003D">y</a>, <a href="Vec2_tpl#003C">x</a>);} F Cross (<strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp;v) <strong><span style="color: #871F78">const</span></strong> { <strong><span style="color: #871F78">return</span></strong> <strong><span style="color: #871F78">float</span></strong> (<a href="Vec2_tpl#003C">x</a>*v.<a href="Vec2_tpl#003D">y</a> - <a href="Vec2_tpl#003D">y</a>*v.<a href="Vec2_tpl#003C">x</a>); } <strong><span style="color: #871F78">void</span></strong> SetLerp( <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp;p, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp;q, F t ) { *<strong><span style="color: #871F78">this</span></strong> = p*(1.0f-t) + q*t;} <strong><span style="color: #871F78">static</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; CreateLerp( <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp;p, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; &amp;q, F t ) { <strong><span style="color: #871F78">return</span></strong> p*(1.0f-t) + q*t;} <strong><span style="color: #871F78">void</span></strong> SetSlerp( <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt;&amp; p, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt;&amp; q, F t ) { assert((fabs_tpl(1-(p|p)))&lt;0.005); assert((fabs_tpl(1-(q|q)))&lt;0.005); F cosine = (p|q); <strong><span style="color: #871F78">if</span></strong>(cosine&gt;=(F)0.99) { SetLerp(p,q,t); <strong><span style="color: #871F78">this</span></strong>-&gt;<a href="Vec2_tpl#0020">Normalize</a>(); } <strong><span style="color: #871F78">else</span></strong> { F rad = acos_tpl(cosine); F scale_0 = sin_tpl((1-t)*rad); F scale_1 = sin_tpl(t*rad); *<strong><span style="color: #871F78">this</span></strong>=(p*scale_0 + q*scale_1) / sin_tpl(rad); <strong><span style="color: #871F78">this</span></strong>-&gt;<a href="Vec2_tpl#0020">Normalize</a>(); } } <strong><span style="color: #871F78">static</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; CreateSlerp( <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt;&amp; p, <strong><span style="color: #871F78">const</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt;&amp; q, F t ) { <a href="Vec2_tpl">Vec2_tpl</a>&lt;F&gt; v; v.SetSlerp(p,q,t); <strong><span style="color: #871F78">return</span></strong> v; } <strong><span style="color: #871F78">bool</span></strong> IsValid() <strong><span style="color: #871F78">const</span></strong> { <strong><span style="color: #871F78">if</span></strong> (!NumberValid(<a href="Vec2_tpl#003C">x</a>)) <strong><span style="color: #871F78">return</span></strong> <strong><span style="color: #871F78">false</span></strong>; <strong><span style="color: #871F78">if</span></strong> (!NumberValid(<a href="Vec2_tpl#003D">y</a>)) <strong><span style="color: #871F78">return</span></strong> <strong><span style="color: #871F78">false</span></strong>; <strong><span style="color: #871F78">return</span></strong> <strong><span style="color: #871F78">true</span></strong>; } AUTO_STRUCT_INFO };</pre></div></div>
<div class="Element6">
<a name="0026"></a>Vec2_tpl::value_type Nested Type</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">typedef</span></strong> F <strong><span style="color: #660000">value_type</span></strong>;</pre></div></div>
<div class="Element6">
<a name="0027"></a>Vec2_tpl::Vec2 Nested Type</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">typedef</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;f32&gt; <strong><span style="color: #660000">Vec2</span></strong>;</pre></div></div>
<a name="4465736372697074696F6E"></a><div class="Element14">
Description</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
always 32 bit</p></div>
</div>
<div class="Element6">
<a name="0033"></a>Vec2_tpl::Vec2d Nested Type</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">typedef</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;f64&gt; <strong><span style="color: #660000">Vec2d</span></strong>;</pre></div></div>
<a name="4465736372697074696F6E"></a><div class="Element14">
Description</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
always 64 bit</p></div>
</div>
<div class="Element6">
<a name="0034"></a>Vec2_tpl::Vec2i Nested Type</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">typedef</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;<strong><span style="color: #871F78">int</span></strong>&gt; <strong><span style="color: #660000">Vec2i</span></strong>;</pre></div></div>
<div class="Element6">
<a name="0035"></a>Vec2_tpl::Vec2r Nested Type</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">typedef</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;real&gt; <strong><span style="color: #660000">Vec2r</span></strong>;</pre></div></div>
<a name="4465736372697074696F6E"></a><div class="Element14">
Description</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
variable float precision. depending on the target system it can be 32, 64 or 80 bit</p></div>
</div>
<div class="Element6">
<a name="0036"></a>Vec2_tpl::vector2d Nested Type</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">typedef</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;real&gt; <strong><span style="color: #660000">vector2d</span></strong>;</pre></div></div>
<div class="Element6">
<a name="0037"></a>Vec2_tpl::vector2df Nested Type</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">typedef</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;<strong><span style="color: #871F78">float</span></strong>&gt; <strong><span style="color: #660000">vector2df</span></strong>;</pre></div></div>
<div class="Element6">
<a name="0038"></a>Vec2_tpl::vector2di Nested Type</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">typedef</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;<strong><span style="color: #871F78">int</span></strong>&gt; <strong><span style="color: #660000">vector2di</span></strong>;</pre></div></div>
<div class="Element6">
<a name="0039"></a>Vec2_tpl::vector2dui Nested Type</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">typedef</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;<strong><span style="color: #871F78">unsigned</span></strong> <strong><span style="color: #871F78">int</span></strong>&gt; <strong><span style="color: #660000">vector2dui</span></strong>;</pre></div></div>
<div class="Element6">
<a name="003A"></a>Vec2_tpl::vector2f Nested Type</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">typedef</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;<strong><span style="color: #871F78">float</span></strong>&gt; <strong><span style="color: #660000">vector2f</span></strong>;</pre></div></div>
<div class="Element6">
<a name="003B"></a>Vec2_tpl::vector2l Nested Type</div>
<a name="432B2B"></a><div class="Element99">
C++</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #871F78">typedef</span></strong> <a href="Vec2_tpl">Vec2_tpl</a>&lt;<strong><span style="color: #871F78">long</span></strong>&gt; <strong><span style="color: #660000">vector2l</span></strong>;</pre></div></div>
</div>
<!-- End Page Content -->

<!-- Begin Page Footer -->

<!-- End Page Footer -->
</div>
</div>

<!-- End Client Area -->

...